Responsive image
博碩士論文 etd-0811117-172407 詳細資訊
Title page for etd-0811117-172407
論文名稱
Title
支援三維繪圖處理器之曲面細分單元設計
Design of Tessellation Unit for 3D Graphic Processor
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
70
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2017-07-18
繳交日期
Date of Submission
2017-09-11
關鍵字
Keywords
基元組合單元、OpenGL 4.x、曲面細分單元、細分基元生成器、曲面細分
tessellation, tessellation primitive generation, OpenGL 4.x, tessellation unit, primitive assembly unit
統計
Statistics
本論文已被瀏覽 5712 次,被下載 47
The thesis/dissertation has been browsed 5712 times, has been downloaded 47 times.
中文摘要
曲面細分著色器是最先進的圖學標準應用編程介面(如OpenGL 4.x和DirextX 11)支援的高階圖學渲染功能之一。它提供了將patch的頂點資訊細分成較小的基元的編程能力。而細分過程在圖學管線中可以分為三個階段:Tessellation Control Shader (TCS),Tessellation Primitive Generation (TPG)和Tessellation Evaluation Shader (TES)。本論文提出了一個有效率的曲面細分單元設計來實現TPG的固定功能和一個可以將由曲面細分所產生的頂點組合成一堆三角形的基元組合單元。TPG分為兩個階段來實現,其中一個為建立階段,用於計算新的同心內三角形的頂點和邊緣的細分向量;另一個為生成階段,使用從前一個階段獲得的細分向量來生成三角形邊緣上的頂點。為了避免硬體成本高的除法器單元,將儲存在查找表中預先計算的倒數分子做相乘以取代所需的除法運算。我們提出的TPG實現的一個特點是利用從最外面的三角形patch創建的所有同心內三角形的三個頂點的總和與減少三分之一所產生的內三角形所需的加減運算次數是一樣的。整個TPG單元只需要兩組加法器和一組乘法器。其硬體合成數據結果為使用了約25K個邏輯閘,並且在90nm技術下能運行到166.7MHz。本論文提出的基元組合單元會將兩個連續的同心內三角形的區域分成六組扇形三角形來組合三角形。
Abstract
Tessellation shader is one of the advanced graphics rendering functions supported in state-of-the-art graphics standard applications programming interfaces such as OpenGL 4.x and DirextX 11. It provides the programming capability to divide the patches of vertex data into smaller primitives. The tessellation procedure in the graphics pipeline can be divided into three stages: tessellation control shader(TCS), tessellation primitive generation(TPG) and tessellation evaluation shader(TES). This thesis proposes an efficient design of tessellation unit to realize the fixed functions of TPG and the primitive assembly unit(PAU) that can assemble the vertices generated by tessellation into a bunch of triangles. TPG is realized by two-stage pipeline, which includes a setup stage to calculate the vertices of new concentric inner triangles and the edge’s subdivision vector followed by the other stage to serially generate the vertices on the triangle’s edges based on the vectors obtained from the preceding stage. To avoid the expensive divider unit, the required division operation is substituted by multiplying the pre-computed reciprocal factor stored in on-chip look-up tables. One of the salient features of our proposed TPG implementation is to reduce the number of addition/subtraction operations required for generating inner triangles by two thirds by exploring the feature that the sum of three vertices of all concentric inner triangles will be the same. The entire TPG unit only requires two pairs of adders and one pair of multipliers. Its overall gate count is about 25K, and it can run up to 166.7 MHz under 90nm technology. The PAU proposed in this thesis will assemble triangles by dividing the regions of two successive concentric inner triangles into six groups of triangle fans.
目次 Table of Contents
論文審定書 i
摘要 ii
Abstract iii
目錄 iv
圖目錄 vi
方程式索引 ix
CHAPTER 1 概論 1
1.1 研究動機 1
1.2 論文大綱 2
CHAPTER 2 研究背景與相關研究 3
2.1 三維繪圖管線流程 3
2.2 三維繪圖處理器背景 6
2.3 曲面細分(TESSELLATION) 10
2.3.1 曲面細分介紹 10
2.3.1.1 Tessellation Control Shader 11
2.3.1.2 Tessellation Evaluation Shader 12
2.3.1.3 Tessellation Primitive Generator 13
2.3.2 曲面細分相關研究 14
CHAPTER 3 曲面細分架構設計 18
3.1 曲面細分流程 18
3.2 曲面細分單元硬體架構 19
3.2.1 控制單元介紹 20
3.2.1.1 三角形(Triangle) 20
3.2.1.2 四邊形(Quad) 25
3.2.1.3 等值線(Isolines) 29
3.3 唯讀記憶體(ROM) 30
3.4 曲面細分單元排程器 31
3.5 基元組合單元(PRIMITIVE ASSEMBLY UNIT) 33
3.5.1 三角形(Triangle) 33
3.5.2 四邊形(Quad) 37
CHAPTER 4 曲面細分單元與三維繪圖處理器之整合 41
4.1曲面細分單元與三維繪圖處理器整合架構 41
4.2三維繪圖處理器修改與設計 43
4.2.1 處理器上層流程控制 43
4.2.2 排程器資料流程 45
CHAPTER 5 結果分析 52
5.1 硬體使用率 52
5.2 硬體成本 54
5.3 效能速度 55
CHAPTER 6 結論與未來目標 57
6.1 結論 57
6.2 未來目標 57
參考文獻 59
參考文獻 References
[1] http://www.khronos.org/opengles/1_X/.
[2] https://www.khronos.org/registry/OpenGL/specs/gl/glspec40.core.pdf.
[3] 楊賀鈞, ”基於SIMT架構之多核繪圖處理器之設計與實作,” 國立中山大學碩士論文, July. 2014.
[4] http://www.khronos.org/opengles/2_X/.
[5] 徐肇謚, ”多執行緒SIMD統一圖形處理器的設計與實作,” 國立中山大學碩士論文, Jul. 2013.
[6] 林仕明, ”低成本三維立體圖形呈像引擎設計,” 國立中山大學碩士論文, Feb. 2011.
[7] David Wolff, “OpenGL 4.0 Shading Langugage Cookbook,” July. 2011.
[8] Dave Shreiner, Graham Sellers, John Kessenich, and Bill Licea-Kane, “OpenGL Programming Guide:The Official Guide to Learning OpenGL, Version 4.3,” March. 2013.
[9] E. Catmull, and J. Clark, “Recursively Generated B-spline Surfaces on Arbitrary Topological Meshes,” Computer-Aided Design 10, pp. 350-355, Nov 1978.
[10] M. Bunnell, “Adaptive Tessellation of Subdivision Surfaces with Displacement Mapping,” GPU Gems 2, Addison-Wesley, Chapter 7, pp. 109-122, April 2005.
[11] J. Stam, “Exact Evaluation of Catmull-Clark Subdivision Surfaces at Arbitrary Parameter Values,” Computer Graphics, pp. 395-404, July 1998.
[12] C. Loop, and S. Shaefer, “Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches,” ACM Transactions on Graphics, Vol 27, no. 1, March 2008.
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:自定論文開放時間 user define
開放時間 Available:
校內 Campus: 已公開 available
校外 Off-campus: 已公開 available


紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code