《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于UML & SystemC的GPU幾何管線光柵化硬件建模
基于UML & SystemC的GPU幾何管線光柵化硬件建模
2019年電子技術應用第1期
陳 佳1,田 澤1,2,吳曉成1,樓曉強1
1.中航工業西安航空計算技術研究所,陜西 西安710068; 2.集成電路與微系統設計航空科技重點實驗室,陜西 西安710068
摘要: 架構與算法是決定GPU性能的重要因素,需要盡可能早地對其進行評估和驗證。提出基于統一建模語言(Unified Modeling Language,UML)的模型,詳述了針對GPU幾何管線架構和線圖元光柵化算法建模的過程及方法,并采用SystemC語言實現了事務級建模(Transaction-level Modeling,TLM)模型和仿真。驗證了架構和算法的正確性以及模型的有效性和可行性,為RTL設計提供了參考依據。
關鍵詞: UML TLM SystemC 建模仿真
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.181691
中文引用格式: 陳佳,田澤,吳曉成,等. 基于UML & SystemC的GPU幾何管線光柵化硬件建模[J].電子技術應用,2019,45(1):23-26.
英文引用格式: Chen Jia,Tian Ze,Wu Xiaocheng,et al. Hardware modeling of GPU geometric pipeline rasterization based on UML & SystemC[J]. Application of Electronic Technique,2019,45(1):23-26.
Hardware modeling of GPU geometric pipeline rasterization based on UML & SystemC
Chen Jia1,Tian Ze1,2,Wu Xiaocheng1,Lou Xiaoqiang1
1.AVIC Computing Technique Research Institute,Xi′an 710068,China; 2.Aviation Key Laboratory of Science and Technology on Integrated Circuit and Micro-System Design,Xi′an 710068,China
Abstract: Architecture and algorithm determine the performance of GPU, and they need be verified as soon as possible. The paper brings forward a method of modeling based on UML(Unified Modeling Language), and describes the process of modeling GPU geometry engine unit architecture and line primitive rasterization algorithm in detail. Model and simulation are implemented in SystemC language. The model verifies the correctness of architecture and algorithm, and its own effectiveness and feasibility, provides reference to RTL design.
Key words : UML;TLM;SystemC;model simulation

0 引言

    隨著微電子技術的快速發展以及人們對顯卡的要求越來越高,應用于圖形處理的計算機從圖形工作站逐漸發展到單芯片圖形處理器芯片(GPU)直到現在可編程大規模并行處理器,集成電路的規模及復雜度成倍增加。

    在GPU的設計與開發中,需要在RTL設計之前盡可能早地對架構和算法進行驗證,為RTL設計提供參考依據。雖然RTL模型會提供更為精確的時間信息用于分析,但是開發比事務級建模(Transaction-Level Modeling,TLM)要困難,當進行結構優化時,帶有物理細節的模型要比TLM更難以更改。

    GPU畫圖的核心是幾何管線及光柵化,畫圖的基本圖元是點、線、三角形,本文搭建的GPU模型將幾何管線及光柵化封裝為幾何引擎單元,針對幾何引擎的架構以及線圖元光柵化的算法搭建了基于統一建模語言(Unified Modeling Language,UML)的模型,并采用SystemC語言實現了TLM模型和仿真,通過模型畫出的圖像證明架構和算法的正確性,以及模型的有效性和可行性。

1 UML建模語言

    UML是一種定義良好、易于表達、功能強大且普遍適用的建模語言,UML適用于以面向對象技術來描述任何類型的系統,而且適用于系統開發的不同階段,從需求規格描述直至系統完成后的測試和維護。在UML中,從任何一個角度對系統所做的抽象都可能需要用幾種模型圖來描述,而這些來自不同角度的模型圖最終組成了系統的完整模型。

2 TLM模型

    本文搭建的模型屬于TLM模型,TLM從更高的層次描述系統的行為,當要建模的目標系統十分復雜時,利用TLM快速建模,使得設計者在做RTL設計前就對目標系統有更清楚的理解,有利于硬件體系結構的性能分析和行為分析、軟硬件劃分和協同設計,并且事務級模型可帶有時間信息可以做周期性能分析,能夠提供非??焖俚挠布抡嫠俣龋蔷_到周期的模型。

3 UML建模

    本文針對GPU的幾何引擎單元搭建UML模型,整個開發過程以系統的建模行為為驅動,在進行建模之前,應當分析系統需求,根據建模的不同階段,按照顆粒度從大到小,將單元的架構和算法一層層進行梳理。建模的方法和過程主要包括以下視圖。

3.1 類圖

    在面向對象的建模技術中,類、對象和它們之間的關系是最基本的建模元素。類圖描述了系統中的類及相互之間的各種關系,其本質反映了系統中包含的各種對象的類型以及對象間的各種靜態關系。

    本文搭建的幾何引擎單元(GEU)是GPU系統的子模塊,其接口輸入是染色器輸出控制單元(OCU),輸出是任務調度單元(JSU)、深度緩沖區(ZCACHE)和寄存器接口(SPMU)。染色器輸出控制單元將頂點數據發送給幾何引擎單元,幾何引擎單元處理完成后形成片元數據并輸出給任務調度單元,任務調度單元按照數據屬性類型封裝發送給下級單元,同時通過深度緩沖區接口將深度信息寫入深度緩沖區用來進行深度測試,以及通過寄存器接口更新寄存器以備后面單元計算使用。圖1就是幾何引擎單元的類圖,也稱為接口圖。

wdz2-t1.gif

3.2 結構圖

    結構圖顯示類元內部結構,包括此模塊與系統其他部分的交互點,也顯示類里各模塊的關系,這些模塊一起執行類的行為。用結構圖搭建幾何引擎單元的架構,可以清晰地展現出單元內部的組成部分,以及單元內部的數據通路。幾何引擎單元的架構根據圖形學的幾何管線和光柵化原理由以下7個模塊組成,分別是圖元組裝、平面剪裁、投影變換、三維剪裁、視窗變換、背面消隱以及光柵化單元,其結構圖建模如圖2所示。

wdz2-t2.gif

3.3 行為圖

    行為圖是對類的一種補充描述,描述了對象之間動態的交互關系,展示了此類對象所具有的可能的狀態以及某些事件發生時其狀態的轉移情況。對于計算機圖形學算法的理解首先要求具有較好的數學基礎、良好的空間思維和非常清晰的思路。從結構圖可以看出光柵化是幾何引擎單元的最后一步,由應用程序指定的頂點按照結構圖的流程執行到光柵化,完成了一系列空間轉換后,由頂點繪制成圖元就是光柵化單元所要做的事情。

    光柵化的算法是整個模型最復雜的算法,行為圖可以準確有條理地描述算法的思路和實現,邏輯性地表達出算法的細節及其數據流和控制流。本文重點針對線圖元光柵化算法,采用行為圖搭建了其模型,圖3是線圖元光柵化算法總體流程,其細節在每個子模塊的內部詳細描述。

wdz2-t3.gif

    本文從GPU的整體架構出發層次性地搭建模型,首先針對幾何引擎單元的外部互聯建模類圖,再根據原理細化單元內部結構圖,最后詳解線圖元光柵化的算法行為圖,準確描述出基于UML的模型搭建方法和過程。

4 SystemC建模及仿真

    本文采用SystemC語言實現了TLM模型以及仿真,SystemC是針對系統級和事務級設計流程的軟/硬件建模和仿真平臺,它在C++的基礎上擴充了硬件庫和仿真內核,具備硬件描述語言的基本特性。SystemC提供了支持硬件描述的類庫和解釋硬件描述的調度器,并從C++繼承了對軟件的描述能力,是一種可描述硬件和軟件的建模語言[1-2]。SystemC的最大特點在于可支持軟/硬件的協同設計和仿真,且較硬件描述語言有著極高的仿真速度。TLM將模型間的通信細節與函數單元或通信架構的細節分離出來,通信機制被建模成信道,并且以SystemC接口類的形式向模塊呈現[3-4]。

    根據UML建模的過程,本文通過SystemC語言將模型實現并仿真。

4.1 根據UML類圖建模

    SystemC支持對模塊的定義,模塊實際上是一個類,內部包括了輸入/輸出端口、內部信號以及方法/線程[5]。SystemC定義的模塊可對應RTL代碼中的module。

    在完成各個模塊的定義和描述后,就需要對模塊進行端口綁定,以實現完整的功能架構。例如圖1中的任務調度單元和幾何引擎單元,任務調度單元通過端口向幾何引擎單元傳輸頂點屬性,則定義一個接口。同時分別在任務調度單元和幾何引擎單元定義此接口類型的端口,并在幾何引擎單元內部實現該接口函數。

    幾何引擎單元模塊的內部定義如下:

    wdz2-4.1-x1.gif

    wdz2-4.1-x2.gif

4.2 根據UML結構圖建模

    幾何引擎單元類G3D_GEU 內部例化7個子模塊:

    G3D_GEU_PAU  *pau;

    G3D_GEU_PCU  *pcu;

    G3D_GEU_PTU  *ptu;

    G3D_GEU_TDU  *tdu;    

    G3D_GEU_VTU  *vtu;

    G3D_GEU_BCU  *bcu;

    G3D_GEU_PRU  *pru;

4.3 根據UML的行為圖建模

    模塊內部的算法細節采用線程實現,線程則會在每個時鐘變化沿(可以是上升沿,下降沿,或者上升下降沿)被執行,并且引入了時序,可用于模型的時序性能分析[6]。一個模塊內部可以擁有多個線程,在光柵化模塊中就分別有實現點圖元、線圖元、三角形圖元光柵化的線程,本文以線圖元的線程為例描述建模方法。

    wdz2-4.3-x1.gif

    wdz2-4.3-x2.gif

4.4 模型仿真

    在完成SystemC建模后,需要對模型進行仿真調試。SystemC庫自帶仿真內核,用于調度事件與線程的執行順序。與Verilog和VHDL類似,SystemC的仿真內核支持delta cycle、支持立即事件觸發和延遲事件觸發。SystemC的仿真內核按照一定的規則對所有的線程進行調度與執行[7-8]。完成對模型的仿真調試后,模型可以作為RTL仿真的參考模型,與RTL進行聯合仿真,這是下一步的工作。

    本文搭建的GPU模型實現了OpenGL2.0標準,針對線圖元光柵化算法及幾何引擎單元架構做的仿真驗證實例圖如下,圖4和圖5分別是模型和Mesa啟用了點畫模式的線圖元。Mesa是國際官方組織發布的實現OpenGL應用程序接口純軟模型,不依賴于任何硬件。

wdz2-t4.gif

wdz2-t5.gif

    本文模型(圖4)設置的分辨率是2 048×1 536,Mesa(圖5)設置的分辨率是1 024×768,因此從兩個模型結果對比,圖4基本上是圖5密集度的兩倍,但是兩幅圖的點畫效果是一致的,說明幾何引擎的架構與線圖元光柵化算法正確。

5 結論

    本文基于UML視圖搭建了GPU幾何管線光柵化的模型,并通過SystemC語言進行了仿真驗證,快速地驗證系統架構和算法,為RTL設計提供參考依據;同時為RTL設計建立早期的驗證平臺,縮短驗證時間;并且可以作為RTL驗證平臺的參考模型,提高驗證的正確性和完整性;加速了GPU的軟硬件協同設計。

參考文獻

[1] SWAN S.An introduction to system level modeling in SystemC 2.0.cadence design systems[Z].2001.

[2] IEEE 1666-2011,IEEE standard for standard systemc language reference manual[S].2011.

[3] Open SystemC Initiative,SystemC 2.0 User’s Guide[Z].

[4] 張俊新.基于SystemC的事物級建模研究[D].武漢:武漢大學,2004.

[5] 王忠海,葉以正,喻明艷.使用SystemC 2.0進行SoC設計建模仿真[J].計算機仿真,2005,22(5):78-81.

[6] 唐進.SystemC架起了橋梁[J].中國集成電路,2005(5):44-46.

[7] 石柯.基于SystemC的嵌入式系統軟硬件協同設計[J].計算機應用研究,2002,19(6):117-119.

[8] 李揮,陳曦.SystemC電子系統設計[M].北京:科學出版社,2010.



作者信息:

陳  佳1,田  澤1,2,吳曉成1,樓曉強1

(1.中航工業西安航空計算技術研究所,陜西 西安710068;

2.集成電路與微系統設計航空科技重點實驗室,陜西 西安710068)

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲专区一区| 国产综合久久久久影院| 亚洲视频成人| 亚洲黄色成人| 中文国产亚洲喷潮| 欧美伊久线香蕉线新在线| 国产农村妇女毛片精品久久莱园子| 激情亚洲一区二区三区四区| 久久se精品一区精品二区| 久久久久国产免费免费| 免费成年人欧美视频| 欧美视频在线观看免费| 欧美国产一区二区三区激情无套| 欧美日韩激情网| 亚洲免费久久| 欧美午夜片欧美片在线观看| 亚洲激情在线播放| 在线看片一区| 久久精品国产一区二区电影| 亚洲福利视频在线| 欧美有码在线视频| 久久久一本精品99久久精品66| 亚洲影视在线播放| 一区二区激情| 亚洲欧洲综合另类在线| 麻豆免费精品视频| 日韩一二三在线视频播| 亚洲美女av电影| 99国内精品久久| 欧美96在线丨欧| 性欧美video另类hd性玩具| 欧美顶级大胆免费视频| 久久福利影视| 国内精品国语自产拍在线观看| 午夜国产不卡在线观看视频| 99精品国产福利在线观看免费| 欧美另类视频在线| 国产综合精品一区| 亚洲人成网站在线观看播放| 国产精品视屏| 国内精品**久久毛片app| 亚洲欧美日韩在线| 在线欧美亚洲| 一区福利视频| 亚洲精品免费在线| 欧美激情精品久久久六区热门| 久热精品在线| 亚洲一区视频在线观看视频| 欧美激情视频一区二区三区不卡| 欧美私人网站| 欧美精品在线免费播放| 免费不卡在线观看| 亚洲人体大胆视频| 免费视频亚洲| 国产精品日韩一区二区| 欧美日韩天天操| 亚洲美女尤物影院| 欧美精品七区| 在线性视频日韩欧美| 毛片精品免费在线观看| 亚洲综合日韩中文字幕v在线| 亚洲区第一页| 欧美久久精品午夜青青大伊人| 久久国产天堂福利天堂| 国产精品日韩精品| 99视频一区二区三区| 日韩视频中午一区| 国产精品美女主播| 欧美亚洲尤物久久| 国产精品欧美日韩一区二区| 国产亚洲毛片在线| 欧美成人四级电影| 国产精品福利久久久| 国产视频精品va久久久久久| 亚洲国产cao| 黄色成人精品网站| 亚洲免费精品| 亚洲丰满在线| 亚洲精品小视频在线观看| 亚洲一区二区免费| 国产欧美一区二区白浆黑人| 欧美一区二区三区免费视| 欧美精品在线观看91| 久久久久88色偷偷免费| 激情另类综合| 亚洲免费av观看| 日韩亚洲一区二区| 宅男在线国产精品| 欧美一激情一区二区三区| 欧美日韩国产在线| 亚洲综合第一| 国产麻豆一精品一av一免费| 亚洲国产精品毛片| 国产在线拍偷自揄拍精品| 亚洲综合导航| 麻豆国产精品777777在线| 影音先锋亚洲电影| 亚洲黄色成人久久久| 在线亚洲+欧美+日本专区| 欧美日韩精品综合在线| 夜夜爽99久久国产综合精品女不卡| 午夜在线电影亚洲一区| 久久人91精品久久久久久不卡| 麻豆91精品| 久久久久国产精品www| 国产拍揄自揄精品视频麻豆| 激情久久久久久久| 国产自产精品| 国产一区高清视频| 免费观看日韩av| 国产精品美女www爽爽爽| 国产专区欧美专区| 欧美电影电视剧在线观看| 日韩视频免费观看| 国产精品国产自产拍高清av王其| 久久riav二区三区| 亚洲欧美变态国产另类| 欧美成年网站| 欧美中文在线视频| 亚洲日本无吗高清不卡| 久久久国产精品一区二区中文| 国产精品久久久久毛片大屁完整版| 国产日韩一级二级三级| 亚洲精品欧美极品| 欧美日韩视频在线一区二区| 亚洲视频www| 亚洲欧美成人在线| 国产午夜精品在线观看| 欧美涩涩网站| 亚洲一区二区三区视频播放| 尤物九九久久国产精品的特点| 亚洲欧美日韩国产中文在线| 亚洲私人影吧| 欧美精品播放| 亚洲美女视频在线观看| 99www免费人成精品| 亚洲一区免费看| 尤物视频一区二区| 99精品热6080yy久久| 欧美在线啊v一区| 午夜精品偷拍| 久久精品视频在线播放| 国产精品主播| 国产欧美一区二区色老头| 国产精品video| 欧美精品一区二区三区蜜桃| 黑丝一区二区三区| 欧美精品在线视频| 夜夜爽99久久国产综合精品女不卡| 国产美女精品人人做人人爽| 亚洲欧美成aⅴ人在线观看| 久久综合九色九九| 国内外成人在线| 亚洲第一免费播放区| 国产精品九色蝌蚪自拍| 国产精品伦一区| av成人动漫| 亚洲精品国产精品乱码不99按摩| 国产自产高清不卡| 欧美顶级艳妇交换群宴| 亚洲高清视频的网址| 欧美成人国产一区二区| 亚洲欧美日韩另类精品一区二区三区| 欧美日韩一区二区视频在线观看| 国产精品毛片va一区二区三区| 国内精品久久久久国产盗摄免费观看完整版| 亚洲春色另类小说| 欧美亚洲一区二区在线观看| 国产精品欧美久久久久无广告| 一区二区三区无毛| 国产精品高清在线| 亚洲破处大片| 国产亚洲va综合人人澡精品| 国产精品有限公司| 亚洲人成网站999久久久综合| 欧美96在线丨欧| 欧美一区二区三区四区在线| 奶水喷射视频一区| 亚洲国产精品久久久久| 香蕉亚洲视频| 亚洲午夜久久久久久久久电影院| 欧美韩国一区| 韩国成人福利片在线播放| 国产欧美在线播放| 欧美日韩三级视频| 亚洲国产日韩欧美综合久久| 亚洲天堂成人在线视频| 在线播放中文字幕一区| 亚洲国语精品自产拍在线观看| 在线欧美不卡| 国产精品久久久久久久第一福利| 亚洲成人在线网| 亚洲伊人一本大道中文字幕| 欧美亚洲综合在线| 欧美chengren| 欧美精品一区二区三区高清aⅴ| 欧美日韩一区综合| 欧美一区二区三区视频免费| 99在线热播精品免费99热| 亚洲欧美在线免费观看| 国产精品免费区二区三区观看| 国产揄拍国内精品对白| 欧美激情视频给我| 久久综合九色| 在线观看久久av| 欧美日韩国产不卡在线看| 亚洲曰本av电影| 国产欧美一区二区精品性色| 午夜精品av| 国产一区二区高清不卡| 国内精品久久久久国产盗摄免费观看完整版| 久久青草福利网站| 欧美视频二区36p| 国产精品视频免费在线观看| 欧美一区2区视频在线观看| 国产精品美女久久久久久2018| 欧美精品在线视频| 欧美α欧美αv大片| 国产日韩一区二区三区在线| 亚洲激情欧美激情| 99精品视频一区| 亚洲人久久久| 亚洲高清视频一区二区| 亚洲欧美日韩天堂| 亚洲第一精品久久忘忧草社区| 欧美三级中文字幕在线观看| 韩日视频一区| 欧美成年人视频| 亚洲午夜精品福利| 亚洲欧美日韩在线| 欧美激情偷拍| 亚洲在线视频| 亚洲嫩草精品久久| 国产精品日韩欧美一区二区三区| 黄色成人av| 亚洲看片免费| 亚洲国内欧美| 欧美日韩一区在线观看| 欧美精品一区在线发布| 在线观看成人网| 国产麻豆成人精品| 亚洲免费视频在线观看| 亚洲精品在线视频| 一区二区三区日韩精品| 国产欧美精品一区| 欧美日韩在线观看一区二区三区| 99riav1国产精品视频| 午夜精品999| 禁断一区二区三区在线| 免费美女久久99| 亚洲国产成人av好男人在线观看| 国产精品性做久久久久久| 国产精品国产三级国产专播精品人| 激情综合视频| 亚洲黄色一区| 国产一区二区你懂的| 欧美在线网站| 国产精品成人一区| 欧美成人免费在线视频| 久久综合伊人77777蜜臀| 欧美日韩精品免费观看| 亚洲国产一成人久久精品| 欧美猛交免费看| 欧美日韩中文字幕综合视频| 久久久久久久久久久久久久一区| 国产色爱av资源综合区| 乱人伦精品视频在线观看| 国产视频丨精品|在线观看| 亚洲精品影视在线观看| 免费91麻豆精品国产自产在线观看| 老鸭窝91久久精品色噜噜导演| 亚洲性色视频| 欧美激情中文不卡| 亚洲精品中文字| 羞羞视频在线观看欧美| 激情五月综合色婷婷一区二区| 欧美在线视频二区| 欧美丰满少妇xxxbbb| 亚洲激情婷婷| 免费国产一区二区| 国产欧美日韩一区二区三区| 亚洲高清二区| 中日韩高清电影网| 亚洲综合清纯丝袜自拍| 亚洲激情一区二区三区| 欧美精品午夜| 国产亚洲欧美一区二区三区| 美女主播一区| 亚洲欧洲三级电影| 国产欧美 在线欧美| 国产精品一区二区在线观看网站| 91久久视频| 国产欧美一区视频| 两个人的视频www国产精品| 久久激情视频| 久久精品视频播放| 日韩手机在线导航| 久久国产主播精品| 欧美性开放视频| 亚洲精品一品区二品区三品区| 国产欧美日韩精品专区| 一区二区三区视频免费在线观看| 亚洲精品久久久久久久久| 欧美女同在线视频| 欧美福利视频在线| 狠狠干狠狠久久| 欧美自拍丝袜亚洲| 国产亚洲成av人在线观看导航| 夜夜嗨av一区二区三区中文字幕| 99亚洲精品| 亚洲电影下载| 免费观看日韩av| 欧美无乱码久久久免费午夜一区| 国内揄拍国内精品久久| 亚洲欧美日韩直播| 麻豆91精品| 国产精品剧情在线亚洲| 亚洲国产成人久久综合一区| 亚洲美女av黄| 性欧美大战久久久久久久久| 另类专区欧美制服同性| 欧美激情中文字幕在线| 亚洲永久视频| 毛片基地黄久久久久久天堂| 99re热这里只有精品免费视频| 欧美日韩精品一二三区| 亚洲天堂av综合网| 国产色综合网|