硬软体共流设计流程环境.docx
- 文档编号:11272890
- 上传时间:2023-05-30
- 格式:DOCX
- 页数:8
- 大小:17.12KB
硬软体共流设计流程环境.docx
《硬软体共流设计流程环境.docx》由会员分享,可在线阅读,更多相关《硬软体共流设计流程环境.docx(8页珍藏版)》请在冰点文库上搜索。
硬软体共流设计流程环境
逢甲大學
資訊工程研究所
碩士論文
硬軟體共流設計流程環境
AnImplementationof
Hardware/Software
CodesignFlowEnvironment
指導教授:
劉嘉政
研究生:
林玉田
中華民國八十七年六月
摘要
傳統的計算系統其硬體架構是固定的,軟體程式則是具有變異性;對於可重組計算系統的設計則採用兩者的特點,在此系統下硬體電路是可變的,而且是受到軟體程式的控制,根據軟體程式的需求改變硬體電路的功能,如此系統可以得到軟體具彈性的優點與硬體電路執行效能的長處。
本篇論文是針對可重組計算系統的研發,發展一個設計流程,此設計流程的建立可以使得程式經過此流程的適當處理,可在可重組計算系統下執行,提高整體程式執行效能,此流程稱為硬軟體共流設計流程。
本論文建立之於可重組計算系統下的硬軟體共流設計環境,是從一般C語言軟體程式的輸入,以加入”剖析標籤”的方式,蒐集特定的分析參數:
包括基本程式段(BasicUnit)執行耗費時間及其轉換為硬體電路的複雜度及所需規劃的時間、利用圖型模型來分析資料輸入輸出所需耗費的時間、和使用區域規劃的可程式化硬體元件的硬體資源使用率,藉由分析可變的加權參數式選擇”可硬體化的程式段”,經過程式的分析後加以分割和再合成,及經過重複的再選擇,藉以得到系統的最佳加速比。
Abstract
Areconfigurablecomputing(RC)systemcombinesthetraditionalcomputingsystemwithprogrammablehardwaredevices.TheRCsystemexploreshardware/softwaresolutionsforspecificapplicationneeds.Theprogrammablehardwaredevicesismodifiedatruntime(orcompiletime)tomeettheneedsofanapplication.Thussystemcouldgainthebenefitsofbothflexibilityofsoftwareandefficiencyofhardware.Inthisthesis,wedevelopadesignflowenvironmentfordesigningprogramwhichtransfersoriginalprograminordertorunundertheRCsystemandincreasetheprogramexecutionperformance.Thisdesignflowiscalled“hardware/softwarecodesign”flow.
Inourdesignflowenvironment,weadopttheClanguageprogramasinputsource.Inprofilingphase,weinsert“profilingtags”tocollectprogrambehaviordata.Thosebehaviordatacontainstherunningtimeofbasicblocks,thecorrespondingcircuitcomplexityofbasicblocksandthedatatransfertimebetweenthebasicblocks.Inpartitioningphase,wechoosethe“hardwarecandidates”byanalyzingtheprogrambehaviordataundercertaincriterions.Inregardtotheselectionhardwarecandidates,thesystemrepeatprogrampartitionandcosynthesisprocessesinordertofindoutthesystembestspeedup.
目錄
摘要..............................................................................................................I
第1章緒論...................................................................................................1
1.1緣起..................................................................................................1
1.2可重組計算系統(ReconfigurableComputingSystem).....................4
第2章可重組硬體元件(ReconfigurableHardwareDevice)......................6
2.1可程式化邏輯陣列(FieldProgrammableGateArray)(FPGA)..........6
2.2可程式化邏輯陣列規劃方式.............................................................9
2.3可程式化邏輯陣列的用途...............................................................13
2.4可程式化邏輯陣列硬體架構的限制.................................................17
2.5可重組處理單元邏輯陣列................................................................17
(ReconfigurableProcessUnitFPGA)(RPUFPGA)
第3章硬軟體共流設計流程.......................................................................24
3.1傳統硬軟體共流設計流程................................................................26
3.2相關研究.........................................................................................30
第4章可重組計算系統之硬軟體共流設計流程...........................................32
4.1硬體化程式段選擇..........................................................................33
4.1.1執行時間剖析.........................................................................33
4.1.2參數剖析................................................................................35
4.2硬體元件建立.................................................................................38
4.2.1硬體物件................................................................................39
4.2.2設計流程................................................................................40
4.3輸入輸出函數撰寫..........................................................................45
4.4程式合成........................................................................................48
4.5程式合成模擬.................................................................................50
4.5.1系統硬體架構.........................................................................51
4.5.2執行效能評估.........................................................................54
第5章結論與未來展望................................................................................61
5.1可重組計算系統之硬軟共流設計流程之改進..................................61
5.2操作環境建立.................................................................................63
5.3未來改進方向.................................................................................65
參考文獻........................................................................................................66
附錄:
範例四程式(PatternMatching樣式比對)
(A).原始程式(PatternMatching採用Boyer-MooreAlgorithm).......................69
(B).選取硬體化部份.......................................................................................70
(C).轉成之硬體電路
(I).LolaHDLSourceCode.........................................................................70
(II).Layout.................................................................................................74
(D).合成之新程式...........................................................................................74
圖目錄
圖1.1傳統硬軟體共流設計流程....................................................................3
圖1.2可重組計算系統雛型架構....................................................................3
圖1.3可重組計算系統之硬軟體共流設計流程..............................................4
圖2.1可程式化邏輯陣列基本邏輯元件架構..................................................7
圖2.2可程式化邏輯陣列基本架構................................................................8
圖2.3可程式化邏輯陣列基本組織型態.........................................................9
圖2.4可程式化邏輯陣列靜態硬體規劃方式................................................11
圖2.5動態硬體規劃....................................................................................11
圖2.6全域性動態硬體規劃方式..................................................................12
圖2.7全域性動態規劃電路轉換圖..............................................................12
圖2.8部份區域性動態硬體規劃..................................................................13
圖2.9部份區域性動態規劃電路轉換圖.......................................................13
圖2.10標準的ASIC設計流程......................................................................15
圖2.11標準的FPGA設計流程.....................................................................16
圖2.12可重組處理單元邏輯陣列基本元件....................................................19
圖2.13可重組處理單元邏輯陣列4-by-4Blocks...........................................19
圖2.14可重組處理單元邏輯陣列16-by-16Blocks.........................................20
圖2.15可重組處理單元邏輯陣列存取方式....................................................22
圖2.164Bits加法電路...............................................................................22
圖2.17RPUFPGA最佳的電路規劃..........................................................23
圖3.1可重組計算系統的程式架構圖...........................................................25
圖3.2硬軟體共流設計與可重組計算系統....................................................25
圖3.3硬軟體共流設計程式架構....................................................................26
圖3.4傳統硬軟體共流設計流程..................................................................27
圖3.5程式行為剖析....................................................................................28
圖3.6二元合成...........................................................................................29
圖3.7多元合成...........................................................................................30
圖4.1執行時間剖析....................................................................................34
圖4.2硬體與軟體間的輸入輸出傳遞...........................................................35
圖4.3硬體程式段圖形模型.........................................................................36
圖4.4硬軟體共流設計流程所採用的輔助設計工具.....................................38
圖4.5硬體物件設計流程.............................................................................40
圖4.6輔助工具設計流程.............................................................................41
圖4.7以VHDL為基礎的設計流程..............................................................42
圖4.8以Lola為基礎的設計流程.................................................................43
圖4.9程式合成...........................................................................................49
圖4.10同步模式可重組計算系統硬體架構....................................................51
圖4.11非同步模式可重組硬體架構...............................................................52
圖5.1理想中的可重組計算系統之硬軟體共流設計流程..............................62
圖5.2雛型系統執行程序.............................................................................63
圖5.3雛型系統啟動畫面.............................................................................63
圖5.4雛型系統硬體化程式段選擇畫面.......................................................64
圖5.5雛型系統程式合成畫面......................................................................64
表目錄
表2.1硬體元件間的差異性...........................................................................21
表4.1範例一硬體化程式段執行效能評估......................................................55
表4.2範例二硬體化程式段執行效能評估......................................................56
表4.3硬體化程式段選擇權重評估................................................................57
表4.4(a)範例四硬體化程式段執行效能評估(比較樣式個數為12)..................59
表4.4(b)範例四硬體化程式段執行效能評估(比較樣式個數為12)..................59
表4.5(a)範例四硬體化程式段執行效能評估(比較樣式個數為6)..................59
表4.5(b)範例四硬體化程式段執行效能評估(比較樣式個數為6)..................59
表4.6(a)範例四硬體化程式段執行效能評估(比較樣式個數為3)..................59
表4.6(b)範例四硬體化程式段執行效能評估(比較樣式個數為3)..................60
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软体 设计 流程 环境
![提示](https://static.bingdoc.com/images/bang_tan.gif)