以C語言與IP為基礎的新一代高效率設計方法

2016-03-25
作者 Judith Cheng

有別於將絕大部分精力集中於設計流程後段的傳統RTL式設計,透過C語言和IP為���礎設計可縮短驗證、建置和設計收斂的開發週期,使設計人員能集中精力開發差異化邏輯。

Vivado設計套件為新一代C/C++語言和IP設計提供超高設計效率方法。全新的HLx設計套件包含高階系統、設計和WebPACK版本。當設計人員將全新的UltraFast高效率設計方法指南與這些工具一起使用,可較傳統的設計方法提升10至15倍效率。

有別於將絕大部分精力集中於設計流程後段的傳統RTL式設計,透過C語言和IP為基礎設計可縮短驗證、建置和設計收斂的開發週期,使設計人員能集中精力開發差異化邏輯。該流程包括:
‧快速生成平台連接設計及必要的軟體堆疊;
‧使用高階設計快速開發差異化邏輯,並支持優化設計重用;
‧相較於RTL,透過高階語言大幅縮短驗證時間。

客戶使用高層次抽象化時,可快速讓整體設計更好,同時在效能、功耗和使用率獲得一致或更好的結果品質(QoR)。

UltraFast高效率設計方法指南

在傳統設計開發過程中,首先要由經驗豐富的系統架構師評估將如何運用新技術實現他們的設計,以及獲得高階模型格式的系統連接需求和附加價值差異化邏輯,並依序由RTL設計實現這些要求。

RTL設計週期通常包含對每個模組及整體設計進行反覆的驗證和設計收斂運算。採用此方法的結果,將因差異化邏輯中的任何變化都可能導致IO介面(如DDR記憶體、乙太網、PCIe等)無法滿足時序要求,而使平台連接設計不穩定。此外,RTL驗證週期不允許在硬體啟動之前進行全面的功能測試。

高階設計方法則截然不同,其允許設計人員花更多時間和精力設計附加邏輯,並花較少的時間進行調整。該設計流程與RTL設計流程相比,可將設計週期縮短15倍。該高階方法主要特徵如下:

‧平台開發與差異化邏輯分離,可讓設計人員專注於實現企業的高價值功能。
‧利用具開發板感知功能的Vivado IP整合器(IPI)以及Vivado IP系統,快速完成平台連接設計的配置、生成和收斂。
‧相較於傳統RTL,以C語言為基礎模擬的差異化邏輯可大幅縮短模擬時間。
‧利用Vivado HLS和C/C++函式庫進行高階合成,並透過IPI執行從C語言到晶片的快速建置與系統整合。

UltraFast高效率設計方法指南中的所有步驟,皆可使用互動式執行或命令列腳本執行。所有人工交互的結果都可儲存至腳本,使整個流程從設計模擬到FPGA程式設計都可實現完全自動化。此種高度自動化的設計流程可生成FPGA位元流,並在RTL設計模擬完成前,於開發板上對設計進行測試。

當衍生設計開發時,可大幅提升生產力。調整不同元件、時脈速率或設計配置如同編輯C參數或Vivado HLS選項一樣簡單。此外,工具會自動選擇可滿足新產品所要求的新微架構。

[20160325 Xilinx AN01P1]UltraFast高效率設計方法

HLx不僅能加速創新、設計修改和重用,亦提供具軟體可程式設計的自訂平台之相應方法,以補充賽靈思SDx系列軟體定義環境。

以C語言為基礎的設計和加速重用

典型的系統設計從系統軟體模型開始。無論娛樂、遊戲、通訊還是醫療領域,絕大部分產品皆從軟體模型或原型設計開始,而該模型隨後會分配到硬體和嵌入式軟體中,並由硬體設計團隊選擇一個滿足系統要求的RTL微架構。

可編程設計元件(如FPGA)的最大優勢是能夠創新自訂硬體,並針對任何特定應用進行優化功能。因此,最終產品的效能功耗比相較於分散式處理器系統上運作的純軟體程式要高出幾個層級。

Vivado高階合成(HLS)編譯器提供一個類似適用於處理器編譯器的程式設計環境。主要區別在於Vivado HLS可將C代碼編譯到優化的RTL微架構中,而處理器編譯器所產生的彙編碼則需在固定GHz速率的處理器架構上執行。

系統架構師、軟體工程師或硬體工程師可使用Vivado HLS針對傳輸量、功耗和延遲來客製化優化的硬體。如此能為計算、存儲或網路在內的任何應用實現最佳的高效能、低功耗或低成本系統。

Vivado HLS在依設計需求探索多種微架構之後,將C/C++規範直接整合為VHDL或Verilog RTL,進而加速設計建置與驗證。 在該層次執行模擬功能,相較於VHDL或Verilog模擬速度高出數個量級。例如,影音動態估計演算法,在將C輸入到Vivado HLS即可能在10秒內執行10幀影音資料,而對應的RTL模型在處理同樣的10幀影音時則需約兩天的時間才能完成。

[20160325 Xilinx AN01P2]傳統RTL設計流程

結合Vivado IP整合器,Vivado HLS能讓設計人員和系統架構師更快速、可靠地交付高品質的設計。

[20160325 Xilinx AN01P3]
Vivado HLx設計流程

Vivado HLS提供更快的IP創新途徑:

‧抽象的演算法描述、資料類型說明(整數、定點或浮點)和介面(FIFO、AXI4、AXI4-Lite、AXI4-Stream);
‧指令導向的架構感知型合成技術能快速交付設計方案,並在效能、功耗和面積利用率領先手動編碼RTL方案;
‧ 利用C/C++測試平台模擬、自動化的VHDL或Verilog模擬與測試平台加速驗證;
‧支援多種語言(C、C++、OpenCL、SystemC),並擁有業界最廣的語言涵蓋範圍;
‧自動使用賽靈思晶片上記憶體層級、數位訊號處理運算元素以及浮點函式庫。

下一頁繼續:特定領域軟體函式庫

{pagination}

特定領域軟體函式庫

支援的函式庫包含Math、DSP、影音以及針對高效能和低功耗的線性函式庫。為了處理複雜的內核(如FFT和濾波器),HLS透過整合優化的LogiCORE? IP FFT和FIR編譯器,以獲得最高品質的結果。為了實現特定領域的加速,賽靈思聯盟成員亦提供OpenCV、BLAS、機器學習等多種函式庫。

完整IP子系統重用

賽靈思與其聯盟合作夥伴擁有豐富的智慧財產權(IP)庫,有助於將產品快速推向市場。IP經過嚴格的測試與驗證,以確保能一次性成功。除了簡易的核庫外,賽靈思亦提供可提升生產效率的解決方案。

賽靈思的全新LogiCORE IP子系統是一種可高度配置,並為特定市場量身訂做的建構單元,其整合多個不同的IP核心包括資料移動器、軟體驅動程式、設計範例和多種測試平台。Vivado設計套件提供用於乙太網路、PCIe、HDMI、影音處理、圖像感測器處理和OTN開發的最新IP子系統。例如AXI-4 PCIe子系統利用PCIe、DMA、AXI-4互連等多個IP核心,並提供在處理器系統中使用必要的軟體堆疊。

所有IP子系統都採用AMBA AXI4互連協議、IEEE P1735加密和XDC設計約束等業界標準,使用戶和賽靈思聯盟成員所提供的封裝IP進行互通,從而加速整合。

整合自動化

業界首款隨插即用型系統整合設計環境——Vivado設計套件,利用Vivado IP整合器,打破RTL設計生產效率記錄。

Vivado IP整合器能生成到開發板介面的自訂連接,進而實現快速平台創新,其還能將高度並存的C/C++生成函數彙編到一個平台上。

Vivado IP整合器提供以Tcl為基礎的圖形化自動建構校正設計開發流程。該流程提供具有元件和平台感知的互動環境,支援主要介面的智慧自動化連接、一鍵式子系統生成、即時DRC、以及介面更換通知,同時還具備強大的除錯功能。

設計人員在構建功能間的連接時需處理「介面」而非「訊號」級抽象,因此能大大地提高生產效率;儘管IPI採用業界標準 AXI4,但也支援其他介面,並讓使用者定義自己的自訂介面,以提升其靈活性。

[20160325 Xilinx AN01P4]
Vivado IP整合器

藉由開放式業界IP標準,Vivado設計套件使協力廠商能夠向開發人員提供其IP系列,如此開發人員即能利用Vivado IPI將IP進行整合。用戶亦可將Vivado HLS或DSP的系統產生器(System Generator)與Vivado IP整合器結合使用,並將個人的RTL或C/C++/SystemC和MATLAB/Simulink演算法加入到IP Catalog中。

加速收斂

Vivado設計套件藉由每日交付更多設計結果,及幫助減少所需設計的反覆運算次數,加速建置過程。共用的可擴展數據模型在編譯時間與記憶體空間佔用都是無可匹敵的,並且能針對功耗、時序和資源利用率等關鍵設計指標進行早期分析。藉由這些設計指標,可在設計流程的早期階段對設計和工具設置進行修改,而修改得越早,反覆運算速度將更快,對系統效能的影響也將增加。

使用高階設計方法,能夠在C/C++層面將反覆運算層級加高,實現更快速且具影響力的反覆運算,其影響和必要性遠大於最終的佈局與佈線收斂反覆運算。

平台創新與重用

Vivado設計套件不僅具元件感知,更具備目標平台感知,並支援Zynq SoC和MPSoC,以及ASIC級FPGA和3D IC開發板與套件。由於具備目標平台感知,Vivado能配置和使用特定開發板的設計規則檢查,以確保快速建構可用系統。

[20160325 Xilinx AN01P5]
目標平台感知

例如,選擇Zynq-7000 All Programmable SoC ZC702評估套件,並在IPI中例化一個Zynq處理系統,Vivado便可為處理系統預先配置正確的周邊設備、驅動程式和記憶體映射,以支援該基板。平台設計人員現在可針對雙核心ARM處理系統和高效能FPGA邏輯更快地識別、重用和整合軟硬體IP。

使用者可簡單的透過一系列對話方塊指定處理系統與邏輯之間的介面。介面可自動生成,並針對效能或面積進行優化,而使用者可利用Vivado HLS添加自訂的演算法,或使用Vivado IP Catalog完成設計。

總結

快速開發複雜的智慧系統所需之自動化程度須高於RTL設計。Vivado設計套件HLx 版本具備獨有的優勢,能夠使其完成該任務。

最新Vivado HLx版本能實現新一代平台設計自動化,利用C/C++程式設計差異化邏輯,進行圖形化系統組裝,並提供一款全新超高生產效率的設計方法。該方法在「UltraFast 高效率設計方法指南(UG1197)」中進行介紹,且經證明相較於RTL方法,可使設計創新與驗證速度加快15倍。

HLx更進一步改善賽靈思專為軟體和系統工程師量身訂做的SDx開發環境(SDSoC、SDAccel和SDNet)。HLx方法可實現平台設計的自動化創新,而SDx系列開發環境能透過C、C++、OpenCL或用於資料封包處理的新興P4語言,針對此類平台進行軟體定義程式設計。

HLx和SDx代表賽靈思軟體編程解決方案的新時代,使用者可藉由Zynq SoC、MPSoC、ASIC級FPGA和3D IC等All Programmable元件的終端產品來優化客製化硬體,並為更具智慧且互聯互通的差異化系統提供強大支援。

活動簡介
未來寬能隙半導體元件會在哪些應用成為主流?元件供應商又會開發出哪些新的應用寬能隙元件的電路架構,以協助電力系統開發商進一步簡化設計複雜度、提升系統整體效率?TechTaipei「寬能隙元件市場與技術發展研討會」將邀請寬能隙半導體的關鍵供應商一一為與會者解惑。
贊助廠商
訂閱EETT電子報