從數學家天馬行空的想法和極為復雜的算法到RTL代碼往往需要耗費大量的時間和人力,資源相對不足的公司可能因此而放棄一個很好的項目。針對這個問題,Synopsys公司近日推出Synphony HLS(High Level Synthesis)解決方案。Synopsys公司系統與高層次設計產品部門市場主管Chris Eddington先生向記者介紹,該解決方案實現了從M語言到優化RTL的自動流程,與傳統RTL流程相比,能夠為通信和多媒體應用提供高達10倍速的更高的設計和驗證能力。Synphony HLS為ASIC和FPGA的應用、架構和快速原型生成最優化的RTL。此外,通過在虛擬平臺中為系統驗證和早期軟件開發生成C模型,Synphony HLS補充了基于C/C++的程序流。
從M語言和高級IP到優化RTL的自動流程
由于Mathworks的MATLAB環境能夠在極高的抽象層級上進行簡潔的行為表達,現已被廣泛地用于算法探索和設計。在這種環境下開發的M語言模型通常在RTL下被進行重新編碼和重新驗證,有些情況下用C/C++進行實施和驗證。與效率低下和容易出錯的人工重新編碼流程不同,Synphony HLS直接從高層次的M語言編碼和Synphony HLS優化的IP模型庫中創建可執行的RTL和C模型。通過采用獨特的約束驅動的定點傳播功能,設計師們可以快速和直觀地從高層次浮點M碼的可綜合子集中獲得定點模型。然后由Synphony HLS引擎合成已從架構上進行了優化的RTL,以滿足面積、速度和功耗目標。
Chris告訴記者,他們的客戶Toyon研究公司的算法開發師Richard Cagley博士表示:“Synphony HLS解決方案將顯著地改變FPGA和ASIC在系統驗證和嵌入式軟件開發中的應用方式。傳統的HLS方法繼續承擔著重要的硬件工程資源,將我的算法翻譯成RTL,在FPGA和ASIC芯片上進行運行。Synphony HLS使我能夠用MATLAB進行高層級仿真和產品編碼,這意味著我現在僅用幾小時或幾天的時間就能夠直接從仿真到達硬件,而不用數月或數年的時間。這對基于我們算法的生產力、生產進度和產品質量有廣泛的影響。”
來自單一模型的高層次綜合
Synphony HLS引擎能夠為ASIC、FPGA、快速原型或虛擬平臺綜合優化的架構,同時通過各級別的實施流程保持驗證的連貫性??紤]到用戶指定的目標和架構限制,通過在語言和模型邊界(包括M語言和IP模塊)以及整個設計層次上應用排線、編制和約束優化,HLS引擎能夠在多層級上進行自動優化。
挑戰DSP
與DSP芯片不一樣,這里所指的DSP是指協助芯片設計公司,把進行數字信號處理的復雜數學和邏輯公式寫入到ASIC或者FPGA中,從硬件上完成數字信號處理。Chris表示,借助于Synphony HLS中的M-synthesis技術、C-model生成器、IP模型庫和用于ASIC和FPGA的Synphony HLS引擎,工程師可以隨心所欲地將復雜的算法集成到硬件里,省去了復雜硬件編程等系列問題,這樣比在已有的DSP芯片上使用軟件編程方式實現數字信號處理速度快很多。不可否認,這是對DSP芯片廠商的一個挑戰。
Synopsys副總裁兼Synplicity事業部總經理Gary Meyers表示:“迄今為止,還沒有一種能夠在抽象層級上自動獲取連貫驗證流程的方法,也沒有用非常流行的M語言實現具備優化輸出的實現流程。有了Synphony HLS,我們能夠為系統和軟件驗證提供一種比競爭對手更快和更可靠的方法。結合Synopsys技術領先的系統原型和硬件輔助驗證解決方案,設計團隊們能夠更加經濟和更加可靠地設計和驗證他們復雜的芯片和軟件。”