資料介紹
高性能計算正經歷著根本性的變化。能耗和散熱的需求也逐漸成為限制了大型數據中心的不斷擴張的瓶頸。這些變化推動著高性能計算不斷發展新的計算技術。可編程邏輯陣列技術是一項能夠在提高性能的同時降低能耗技術。但是FPGA開發面臨多重挑戰,在硬件上開發并行的應用程序,超過了許多現有開發人員的知識,因而我們需要更加方便地編程工具來挖掘FPGA 的高性能計算潛力。高級綜合是項將高級語言的描述轉換成硬件結構的行為描述的技術。
本文提出了基于數據驅動的應用類IP 核高級綜合的設計方法。課題從實際出發,設計一個可以實現的系統框架,而且要保證這個系統不僅使用方便,還能夠生成出高性能的加密硬件代碼。根據用戶的模塊化描述,生成軟件流程圖。將加密算法實現成為FPGA 可重構的參數化IP 核,構建參數化的IP 核庫。通過搜索算法,根據軟件流程圖和IP 核庫,生成并優化硬件節點圖。最后,根據硬件節點圖,生成Verilog 代碼。
本文構建了高效的IP 核庫,IP 核的表示和實現是可重構加速器的硬件實現基礎。我們利用數據結構來描述這些硬件IP 核的屬性和計算行為,為生成硬件流程圖的搜索算法提供了IP 核。本文將典型的密碼算法通過硬件實現,并由此構建了面向密碼應用的高性能加密模板庫。另外,還針對程序的循環、分支和其他結構,設計了相應的參數化模塊。
本文研究了面向硬件結構的數據流圖優化算法。根據前端生成的數據流圖,利用硬件模塊綁定算法生成硬件流圖。面向基于模塊的硬件流圖,本文主要通過重用模塊,以減少流水線的資源消耗;采用了公共子表達式消除,來優化分支結構;采用資源最佳算法來實現設計空間的探索。
最后通過構建FPGA 原型系統,驗證了本文提出的高級綜合框架。針對目標FPGA 芯片對硬件系統的總體結構進行了設計。目標系統中高級綜合生成的硬件代碼與頂層控制模塊一起集成到FPGA 中,構成完整的FPGA 實現。最后對多個應用程序的高級綜合進行了示例,并進行性能實現對比,實驗結果顯示本文的高級綜合框架及優化算法有著良好的效果。
高性能計算正經歷著根本性的變化。新推出的通用處理器往往提供更多的核而不是更快的頻率。開發人員再也不能依賴提高處理器頻率來提升現有的串行程序的性能。能耗和散熱的需求也逐漸成為限制大型數據中心不斷擴張的瓶頸。這些變化推動著高性能計算不斷發展新的計算技術。
可編程邏輯陣列技術是一項能夠在提高性能的同時降低能耗的技術。FPGA(Field Programmable Gate-Array,現場可編程門陣列)通過多種途徑開發程序的并行性,大大提高了性能表現,并能夠降低能耗,從而直接地降低了計算成本。但是FPGA 開發面臨多重挑戰,在硬件上開發并行的應用程序,超過了許多現有開發人員的知識,因而需要更加方便地編程工具來挖掘FPGA 的高性能計算潛力。
高級綜合是一項將高級語言的描述轉換成硬件結構的行為描述的技術。它允許開發人員可以側重于抽象的功能設計和結構描述。高級綜合技術可以顯著提高開發人員的設計效率,縮短了產品的開發周期,提高模塊重用。
FPGA 是高度可重構的芯片。它由可編程邏輯塊和互聯模板組成。邏輯塊可以通過編程形成任意的算術運算數字電路,任意地聯接。FPGA 通過多種途徑開發程序的并行性,從而大大地提高了性能表現。其中,多個邏輯塊能夠組成眾多的專門處理單元(PE)來開發數據級和任務級并行。此外,PE 還可以通過深度流水線的方法來開發流水線型并行。例如,通過Celoxica[2]描述的FPGA 實現方法,以1/10甚至1/100 于CPU 的頻率,達到了20~300 倍的加速比。
FPGA 的能耗很低。通常情況下,FPGA 開發板能耗的峰值小于30W,這只有當前商用處理器的1/4~1/10 左右。降低能耗能直接降低計算成本,并且能夠在一個數據中心部署更多的計算節點。然而,這些性能的改善以及能耗的降低都取決于計算節點中的FPGA 可重構芯片。因而高性能應用的開發人員必須能夠方便地編程來挖掘這種潛力。
高效利用FPGA 的芯片資源面臨諸多挑戰。FPGA 可重構硬件具有大量的硬件資源,而且隨著技術的不斷發展,單片FPGA 芯片集成的器件數量急劇增長,如何充分發揮這些硬件的能力也成為一個重要的問題。設計完成的特定算法加速器,往往具有極強的針對性,只能在特定應用中使用。所設計實現的算法加速器,并沒有考慮到硬件資源重用等問題,每個FPGA 僅負責一個特定的算法加速,不利于降低系統成本、能耗,也不利于系統可靠性的提高。此外,高性能可重構計算需求日新月異,對系統性能、可靠性、能耗等方面的約束不斷變化,僅采用一些簡單的手工設計方法,已經不能應對這些約束變化。這給高性能計算系統的開發、維護、再開發帶來了一系列的難題。
硬件描述語言對面向應用開發的人員來說是個門檻。應用開發人員運用C 語言或matlab 等高級語言編程,通常對硬件描述語言比較陌生。相反,FPGA 使用硬件描述語言(HDL),例如Verilog 和VHDL,這與C 語言的差距不單單是語法上的。雖然FPGA 能夠帶來諸多的好處,但是學習編程所需要花費的努力,使得利用這項技術非常困難。
硬件并行開發的思路不同。FPGA 開發人員需要跳出原有的編程模式,去理解如時鐘管理,狀態機,流水線以及設備專門存儲等硬件設計。雖然Verilog 語言也提供了許多高層次的語言抽象,但是基于FPGA 的硬件系統的并行程序開發設計與基于通用處理器或GPU 等的并行程序設計有這本質的不同。由于FPGA 通常使用硬件描述語言進行設計,例如VHDL 或者Verilog 等,這樣的設計不同于常規的使用C 語言或者Matlab 進行設計,這也導致了較長的開發設計周期。
一些研究人員試圖通過提供程序員類C 語言的開發環境,在付出的努力和性能表現之間取得平衡。但這些項目都提供了特有的指令與方法,要求現有的程序根據其開發環境,進行大量改寫。盡管程序員能夠通過努力得到良好的性能提升,但是重寫代碼工作量大,依然是進行FPGA 開發的一個很大障礙。
高級綜合是指將寄存器傳輸級(RTL 級)以上的描述語言,例如C 語言等等,自動生成轉換成FPGA 的硬件代碼實現。我們的目標是通過提供開發者熟悉便捷的開發環境,降低FPGA 的使用難度,從而促進FPGA 在高性能計算領域的應用。我們研究的設想假定開發者按照一條簡單熟悉的路徑去加速應用,而不用放棄他們原有的編程模型和代碼風格。只需較少地改動C 源程序,就能夠達到相當的加速比。對于有相當硬件開發經驗的專家,高級綜合同時提供了類似C 語言的規范,從而可以得到更高的性能提升。但針對一些應用程序即使經過了調整,高級綜合編譯器還是不能與基于硬件描述語言的開發過程取得同樣的加速比。然而,他們兩者的目標是不一樣的。
- 基于GPRS無線遠程監控系統的關鍵技術研究
- 步進電機驅動器的關鍵技術研究
- 世界智能車輛的關鍵共性技術研究現狀 20次下載
- 可見光通信及其關鍵技術研究學習資料pdf下載 6次下載
- 具有反饋調節功能的電動汽車無線充電關鍵技術研究 4次下載
- 具有反饋調節功能的電動汽車無線充電關鍵技術研究 0次下載
- 微波煤脫硫關鍵技術研究 12次下載
- 微波煤脫硫的關鍵技術研究 17次下載
- 無線傳感器網絡關鍵技術研究綜述_曹鵬飛 0次下載
- 智能電網關鍵技術研究展望 15次下載
- 高速數控加工的前瞻控制理論及關鍵技術研究 14次下載
- 線性調頻基帶數字產生的關鍵技術研究 5次下載
- 基于IPSec的VPN網關關鍵技術研究 10次下載
- 混頻器設計中的關鍵技術研究 23次下載
- RFID關鍵技術研究與實現
- 儲能BMS的關鍵技術是什么 413次閱讀
- 5G通信FBAR濾波器鍍膜關鍵技術研究 639次閱讀
- 量子計算關鍵技術研究進展 1349次閱讀
- 智能汽車預期功能安全保障關鍵技術的應用研究及未來展望 1223次閱讀
- WCDMA系統中關鍵技術的分析及應用解決方案 3142次閱讀
- 模擬開關的關鍵技術特性和應用 5474次閱讀
- 淺析光子雷達及其關鍵技術的發展趨勢 1.2w次閱讀
- 仿人機器人關鍵技術研究 5377次閱讀
- ptn技術要素及關鍵技術 5794次閱讀
- 面向5G的承載網的需求和挑戰以及其關鍵技術 4258次閱讀
- ofdm關鍵技術及應用 2w次閱讀
- 淺談微波線性功放的技術研究 1626次閱讀
- 彩色視頻增強算法關鍵技術FPGA實現 2320次閱讀
- 云計算關鍵技術與研究問題 994次閱讀
- 淺談智能電網狀態檢測中的關鍵技術 1479次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多