資料介紹
高性能計(jì)算正經(jīng)歷著根本性的變化。能耗和散熱的需求也逐漸成為限制了大型數(shù)據(jù)中心的不斷擴(kuò)張的瓶頸。這些變化推動(dòng)著高性能計(jì)算不斷發(fā)展新的計(jì)算技術(shù)。可編程邏輯陣列技術(shù)是一項(xiàng)能夠在提高性能的同時(shí)降低能耗技術(shù)。但是FPGA開發(fā)面臨多重挑戰(zhàn),在硬件上開發(fā)并行的應(yīng)用程序,超過了許多現(xiàn)有開發(fā)人員的知識(shí),因而我們需要更加方便地編程工具來挖掘FPGA 的高性能計(jì)算潛力。高級(jí)綜合是項(xiàng)將高級(jí)語言的描述轉(zhuǎn)換成硬件結(jié)構(gòu)的行為描述的技術(shù)。
本文提出了基于數(shù)據(jù)驅(qū)動(dòng)的應(yīng)用類IP 核高級(jí)綜合的設(shè)計(jì)方法。課題從實(shí)際出發(fā),設(shè)計(jì)一個(gè)可以實(shí)現(xiàn)的系統(tǒng)框架,而且要保證這個(gè)系統(tǒng)不僅使用方便,還能夠生成出高性能的加密硬件代碼。根據(jù)用戶的模塊化描述,生成軟件流程圖。將加密算法實(shí)現(xiàn)成為FPGA 可重構(gòu)的參數(shù)化IP 核,構(gòu)建參數(shù)化的IP 核庫。通過搜索算法,根據(jù)軟件流程圖和IP 核庫,生成并優(yōu)化硬件節(jié)點(diǎn)圖。最后,根據(jù)硬件節(jié)點(diǎn)圖,生成Verilog 代碼。
本文構(gòu)建了高效的IP 核庫,IP 核的表示和實(shí)現(xiàn)是可重構(gòu)加速器的硬件實(shí)現(xiàn)基礎(chǔ)。我們利用數(shù)據(jù)結(jié)構(gòu)來描述這些硬件IP 核的屬性和計(jì)算行為,為生成硬件流程圖的搜索算法提供了IP 核。本文將典型的密碼算法通過硬件實(shí)現(xiàn),并由此構(gòu)建了面向密碼應(yīng)用的高性能加密模板庫。另外,還針對(duì)程序的循環(huán)、分支和其他結(jié)構(gòu),設(shè)計(jì)了相應(yīng)的參數(shù)化模塊。
本文研究了面向硬件結(jié)構(gòu)的數(shù)據(jù)流圖優(yōu)化算法。根據(jù)前端生成的數(shù)據(jù)流圖,利用硬件模塊綁定算法生成硬件流圖。面向基于模塊的硬件流圖,本文主要通過重用模塊,以減少流水線的資源消耗;采用了公共子表達(dá)式消除,來優(yōu)化分支結(jié)構(gòu);采用資源最佳算法來實(shí)現(xiàn)設(shè)計(jì)空間的探索。
最后通過構(gòu)建FPGA 原型系統(tǒng),驗(yàn)證了本文提出的高級(jí)綜合框架。針對(duì)目標(biāo)FPGA 芯片對(duì)硬件系統(tǒng)的總體結(jié)構(gòu)進(jìn)行了設(shè)計(jì)。目標(biāo)系統(tǒng)中高級(jí)綜合生成的硬件代碼與頂層控制模塊一起集成到FPGA 中,構(gòu)成完整的FPGA 實(shí)現(xiàn)。最后對(duì)多個(gè)應(yīng)用程序的高級(jí)綜合進(jìn)行了示例,并進(jìn)行性能實(shí)現(xiàn)對(duì)比,實(shí)驗(yàn)結(jié)果顯示本文的高級(jí)綜合框架及優(yōu)化算法有著良好的效果。
高性能計(jì)算正經(jīng)歷著根本性的變化。新推出的通用處理器往往提供更多的核而不是更快的頻率。開發(fā)人員再也不能依賴提高處理器頻率來提升現(xiàn)有的串行程序的性能。能耗和散熱的需求也逐漸成為限制大型數(shù)據(jù)中心不斷擴(kuò)張的瓶頸。這些變化推動(dòng)著高性能計(jì)算不斷發(fā)展新的計(jì)算技術(shù)。
可編程邏輯陣列技術(shù)是一項(xiàng)能夠在提高性能的同時(shí)降低能耗的技術(shù)。FPGA(Field Programmable Gate-Array,現(xiàn)場可編程門陣列)通過多種途徑開發(fā)程序的并行性,大大提高了性能表現(xiàn),并能夠降低能耗,從而直接地降低了計(jì)算成本。但是FPGA 開發(fā)面臨多重挑戰(zhàn),在硬件上開發(fā)并行的應(yīng)用程序,超過了許多現(xiàn)有開發(fā)人員的知識(shí),因而需要更加方便地編程工具來挖掘FPGA 的高性能計(jì)算潛力。
高級(jí)綜合是一項(xiàng)將高級(jí)語言的描述轉(zhuǎn)換成硬件結(jié)構(gòu)的行為描述的技術(shù)。它允許開發(fā)人員可以側(cè)重于抽象的功能設(shè)計(jì)和結(jié)構(gòu)描述。高級(jí)綜合技術(shù)可以顯著提高開發(fā)人員的設(shè)計(jì)效率,縮短了產(chǎn)品的開發(fā)周期,提高模塊重用。
FPGA 是高度可重構(gòu)的芯片。它由可編程邏輯塊和互聯(lián)模板組成。邏輯塊可以通過編程形成任意的算術(shù)運(yùn)算數(shù)字電路,任意地聯(lián)接。FPGA 通過多種途徑開發(fā)程序的并行性,從而大大地提高了性能表現(xiàn)。其中,多個(gè)邏輯塊能夠組成眾多的專門處理單元(PE)來開發(fā)數(shù)據(jù)級(jí)和任務(wù)級(jí)并行。此外,PE 還可以通過深度流水線的方法來開發(fā)流水線型并行。例如,通過Celoxica[2]描述的FPGA 實(shí)現(xiàn)方法,以1/10甚至1/100 于CPU 的頻率,達(dá)到了20~300 倍的加速比。
FPGA 的能耗很低。通常情況下,F(xiàn)PGA 開發(fā)板能耗的峰值小于30W,這只有當(dāng)前商用處理器的1/4~1/10 左右。降低能耗能直接降低計(jì)算成本,并且能夠在一個(gè)數(shù)據(jù)中心部署更多的計(jì)算節(jié)點(diǎn)。然而,這些性能的改善以及能耗的降低都取決于計(jì)算節(jié)點(diǎn)中的FPGA 可重構(gòu)芯片。因而高性能應(yīng)用的開發(fā)人員必須能夠方便地編程來挖掘這種潛力。
高效利用FPGA 的芯片資源面臨諸多挑戰(zhàn)。FPGA 可重構(gòu)硬件具有大量的硬件資源,而且隨著技術(shù)的不斷發(fā)展,單片F(xiàn)PGA 芯片集成的器件數(shù)量急劇增長,如何充分發(fā)揮這些硬件的能力也成為一個(gè)重要的問題。設(shè)計(jì)完成的特定算法加速器,往往具有極強(qiáng)的針對(duì)性,只能在特定應(yīng)用中使用。所設(shè)計(jì)實(shí)現(xiàn)的算法加速器,并沒有考慮到硬件資源重用等問題,每個(gè)FPGA 僅負(fù)責(zé)一個(gè)特定的算法加速,不利于降低系統(tǒng)成本、能耗,也不利于系統(tǒng)可靠性的提高。此外,高性能可重構(gòu)計(jì)算需求日新月異,對(duì)系統(tǒng)性能、可靠性、能耗等方面的約束不斷變化,僅采用一些簡單的手工設(shè)計(jì)方法,已經(jīng)不能應(yīng)對(duì)這些約束變化。這給高性能計(jì)算系統(tǒng)的開發(fā)、維護(hù)、再開發(fā)帶來了一系列的難題。
硬件描述語言對(duì)面向應(yīng)用開發(fā)的人員來說是個(gè)門檻。應(yīng)用開發(fā)人員運(yùn)用C 語言或matlab 等高級(jí)語言編程,通常對(duì)硬件描述語言比較陌生。相反,F(xiàn)PGA 使用硬件描述語言(HDL),例如Verilog 和VHDL,這與C 語言的差距不單單是語法上的。雖然FPGA 能夠帶來諸多的好處,但是學(xué)習(xí)編程所需要花費(fèi)的努力,使得利用這項(xiàng)技術(shù)非常困難。
硬件并行開發(fā)的思路不同。FPGA 開發(fā)人員需要跳出原有的編程模式,去理解如時(shí)鐘管理,狀態(tài)機(jī),流水線以及設(shè)備專門存儲(chǔ)等硬件設(shè)計(jì)。雖然Verilog 語言也提供了許多高層次的語言抽象,但是基于FPGA 的硬件系統(tǒng)的并行程序開發(fā)設(shè)計(jì)與基于通用處理器或GPU 等的并行程序設(shè)計(jì)有這本質(zhì)的不同。由于FPGA 通常使用硬件描述語言進(jìn)行設(shè)計(jì),例如VHDL 或者Verilog 等,這樣的設(shè)計(jì)不同于常規(guī)的使用C 語言或者M(jìn)atlab 進(jìn)行設(shè)計(jì),這也導(dǎo)致了較長的開發(fā)設(shè)計(jì)周期。
一些研究人員試圖通過提供程序員類C 語言的開發(fā)環(huán)境,在付出的努力和性能表現(xiàn)之間取得平衡。但這些項(xiàng)目都提供了特有的指令與方法,要求現(xiàn)有的程序根據(jù)其開發(fā)環(huán)境,進(jìn)行大量改寫。盡管程序員能夠通過努力得到良好的性能提升,但是重寫代碼工作量大,依然是進(jìn)行FPGA 開發(fā)的一個(gè)很大障礙。
高級(jí)綜合是指將寄存器傳輸級(jí)(RTL 級(jí))以上的描述語言,例如C 語言等等,自動(dòng)生成轉(zhuǎn)換成FPGA 的硬件代碼實(shí)現(xiàn)。我們的目標(biāo)是通過提供開發(fā)者熟悉便捷的開發(fā)環(huán)境,降低FPGA 的使用難度,從而促進(jìn)FPGA 在高性能計(jì)算領(lǐng)域的應(yīng)用。我們研究的設(shè)想假定開發(fā)者按照一條簡單熟悉的路徑去加速應(yīng)用,而不用放棄他們原有的編程模型和代碼風(fēng)格。只需較少地改動(dòng)C 源程序,就能夠達(dá)到相當(dāng)?shù)募铀俦?。?duì)于有相當(dāng)硬件開發(fā)經(jīng)驗(yàn)的專家,高級(jí)綜合同時(shí)提供了類似C 語言的規(guī)范,從而可以得到更高的性能提升。但針對(duì)一些應(yīng)用程序即使經(jīng)過了調(diào)整,高級(jí)綜合編譯器還是不能與基于硬件描述語言的開發(fā)過程取得同樣的加速比。然而,他們兩者的目標(biāo)是不一樣的。
- 基于GPRS無線遠(yuǎn)程監(jiān)控系統(tǒng)的關(guān)鍵技術(shù)研究
- 步進(jìn)電機(jī)驅(qū)動(dòng)器的關(guān)鍵技術(shù)研究
- 世界智能車輛的關(guān)鍵共性技術(shù)研究現(xiàn)狀 20次下載
- 可見光通信及其關(guān)鍵技術(shù)研究學(xué)習(xí)資料pdf下載 6次下載
- 具有反饋調(diào)節(jié)功能的電動(dòng)汽車無線充電關(guān)鍵技術(shù)研究 4次下載
- 具有反饋調(diào)節(jié)功能的電動(dòng)汽車無線充電關(guān)鍵技術(shù)研究 0次下載
- 微波煤脫硫關(guān)鍵技術(shù)研究 12次下載
- 微波煤脫硫的關(guān)鍵技術(shù)研究 17次下載
- 無線傳感器網(wǎng)絡(luò)關(guān)鍵技術(shù)研究綜述_曹鵬飛 0次下載
- 智能電網(wǎng)關(guān)鍵技術(shù)研究展望 15次下載
- 高速數(shù)控加工的前瞻控制理論及關(guān)鍵技術(shù)研究 14次下載
- 線性調(diào)頻基帶數(shù)字產(chǎn)生的關(guān)鍵技術(shù)研究 5次下載
- 基于IPSec的VPN網(wǎng)關(guān)關(guān)鍵技術(shù)研究 10次下載
- 混頻器設(shè)計(jì)中的關(guān)鍵技術(shù)研究 23次下載
- RFID關(guān)鍵技術(shù)研究與實(shí)現(xiàn)
- 儲(chǔ)能BMS的關(guān)鍵技術(shù)是什么 813次閱讀
- 5G通信FBAR濾波器鍍膜關(guān)鍵技術(shù)研究 846次閱讀
- 量子計(jì)算關(guān)鍵技術(shù)研究進(jìn)展 1714次閱讀
- 智能汽車預(yù)期功能安全保障關(guān)鍵技術(shù)的應(yīng)用研究及未來展望 1558次閱讀
- WCDMA系統(tǒng)中關(guān)鍵技術(shù)的分析及應(yīng)用解決方案 3444次閱讀
- 模擬開關(guān)的關(guān)鍵技術(shù)特性和應(yīng)用 5984次閱讀
- 淺析光子雷達(dá)及其關(guān)鍵技術(shù)的發(fā)展趨勢 1.2w次閱讀
- 仿人機(jī)器人關(guān)鍵技術(shù)研究 5507次閱讀
- ptn技術(shù)要素及關(guān)鍵技術(shù) 6044次閱讀
- 面向5G的承載網(wǎng)的需求和挑戰(zhàn)以及其關(guān)鍵技術(shù) 4455次閱讀
- ofdm關(guān)鍵技術(shù)及應(yīng)用 2w次閱讀
- 淺談微波線性功放的技術(shù)研究 1775次閱讀
- 彩色視頻增強(qiáng)算法關(guān)鍵技術(shù)FPGA實(shí)現(xiàn) 2490次閱讀
- 云計(jì)算關(guān)鍵技術(shù)與研究問題 1050次閱讀
- 淺談智能電網(wǎng)狀態(tài)檢測中的關(guān)鍵技術(shù) 1603次閱讀
下載排行
本周
- 1常用電子元器件集錦
- 1.72 MB | 24471次下載 | 免費(fèi)
- 2EMC電路設(shè)計(jì)工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
- 3低壓降肖特基整流管SR340L數(shù)據(jù)手冊
- 0.78 MB | 1次下載 | 免費(fèi)
- 4CPCI6310型復(fù)合視頻采集板資料
- 0.04 MB | 1次下載 | 免費(fèi)
- 5HT8 半橋電磁爐MCU應(yīng)用須知
- 1.91 MB | 次下載 | 免費(fèi)
- 6快恢復(fù)二極管1F1 THRU 1F7數(shù)據(jù)手冊
- 0.95 MB | 次下載 | 免費(fèi)
- 7高效率整流二極管HER601 THRU HER608數(shù)據(jù)手冊
- 0.53 MB | 次下載 | 免費(fèi)
- 8橫河WT5000高精度功率分析儀產(chǎn)品資料_中文說明書_科瑞杰
- 1.60 MB | 次下載 | 免費(fèi)
本月
- 1常用電子元器件集錦
- 1.72 MB | 24471次下載 | 免費(fèi)
- 2三相逆變主電路的原理圖和PCB資料合集免費(fèi)下載
- 27.35 MB | 111次下載 | 1 積分
- 3運(yùn)算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費(fèi)
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 11次下載 | 5 積分
- 5TL494工業(yè)用開關(guān)電源原理圖資料
- 0.22 MB | 10次下載 | 1 積分
- 6常用電子元器件介紹
- 3.21 MB | 8次下載 | 免費(fèi)
- 7QW2893應(yīng)急燈專用檢測芯片
- 590.40 KB | 4次下載 | 免費(fèi)
- 8EMC電路設(shè)計(jì)工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183344次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評(píng)論