Vivado開發套件設計指南(1)——入門簡介

1 簡介

Vivado™設計套件是一種新的以IP和系統爲中心的設計環境,可加速未來十年全可編程設備的設計生產力。該套件採用一種基於下一代C/C++和基於IP的設計方式,爲超高生產率提供了一種新方法。新的HLx版本包括HL System Edition,HL Design Edition和HL WebPACK™Edition。 與新的UltraFast™高級生產力設計方法指南相結合,用戶可以實現比傳統方法高10-15倍的生產率。

全可編程器件超越了可編程邏輯和I/O,它集成了3D堆疊硅互連技術、軟件可編程ARM®處理系統、可編程模擬混合信號(AMS)和大量知識產權(IP)內核的各種組合。 這些新一代器件使設計人員能夠超越可編程邏輯到可編程系統集成,將更多系統功能集成到更少的部件中,提高系統性能,降低系統功耗並降低BOM成本。

Vivado™設計套件在過去4年內從頭開始構建,可以解決可編程系統集成和實施中的關鍵設計瓶頸,與競爭開發環境相比,可實現高達4倍的生產力優勢。 對於傳統的以邏輯爲中心的FPGA,它還可以更輕鬆地創建設計,更快地滿足時序要求,並自動化(無需指定),這會是開發者們偏愛的一種設計流程。

用一句話說,Vivado™設計套件利用了一種新的技巧使得開發者能更快地完成硬件上的設計,包括了FPGA電路設計和ARM程序設計,通過ARM與FPGA的配合使用使得開發者能更直觀更簡單地操作硬件。

本系列博文着眼於這一新的技巧,爲剛入門的朋友們指明道路,從完整的大框架設計流程到每一個細節處的處理和優化,筆者都儘可能多地去提及,把踩過的坑都與各位分享,希望各位能少走彎路,不僅避開傳統純RTL級設計這一複雜的流程,更節省在新型設計方法中踩坑脫坑的時間。

2 加速高層次設計

傳統的設計開發流程一般是,經驗豐富的系統架構師估計如何在新技術中實現其設計,同時捕獲系統連接要求和增值分配邏輯。反過來,RTL設計實現了這些要求。 RTL設計週期通常包括每個塊的驗證和設計閉環迭代,乃至整個綜合的設計。作爲該方法的結果,平臺連接設計永遠不會穩定,因爲差異化邏輯中的任何變化都可能導致IO接口(例如DDR存儲器,以太網,PCIe等等)不滿足時序要求。此外,RTL驗證週期不再允許在硬件啓動之前進行詳盡的功能測試。其設計流程大致如下圖所示。
傳統RTL設計流程圖
首先根據功能需求構建框架,將各功能模塊化,接着定義模塊之間的數據接口,最後利用一個時序模塊控制各個功能模塊的工作與空閒狀態,最後再到硬件上佈線。每一個模塊都需要利用VHDL-Verilog模塊設計,對於一些複雜的算法,RTL級別的設計相當複雜,代碼量龐大,之後進行反覆RTL仿真驗證和修改,最後做完硬件上的佈局後再做整體系統的驗證。可以說,一個有複雜功能的系統,需要大量的人力和時間,而高層次設計方法則大大縮短了這一耗費。

高層次設計方法(HLx)將開發工作放在首位,使設計人員可以花更多的時間設計增值邏輯,減少在使得模塊正常工作上反覆嘗試的時間。與RTL設計流程相比,此流程可將設計週期縮短15倍。這種高級方法的主要特徵是:

  • 指令驅動型架構感知綜合可提供最優的 QoR;
  • 在競爭對手還在手動開發 RTL 的時候快速實現 QoR;
  • 使用 C/C++ 測試平臺仿真、自動 VHDL 或 Verilog 仿真和測試平臺生成加速驗證;
  • 自動使用 Xilinx 片上存儲器、DSP 元素和浮點庫;

使用高層次設計的流程大致如下圖所示。
高層次設計流程圖
開發者從C/C++或者SystemC語言入手,靈活運用HLS提供的各種庫函數,然後再C層級上做驗證,之後綜合成VHDL或者Verilog語言,並封裝成IP核,該過程相較於RTL級別功能塊的直接VHDL-Verilog構建要省時的多。然後在Vivado軟件上利用可視化人機交互佈線工具快速完成IP核之間的連接。最終利用ARM核控制通過AXI協議等控制IP核之間的協調工作。整體過程的閉環迭代驗證速度更快,準確性更高。

3 加速IP集成

Vivado® Design Suite 可提供業界首款即插即用型 IP 集成設計環境並具有IP 集成器特性,從而解決了 RTL 設計生產力問題。

Vivado IP Integrator 可提供基於 Tcl、設計期正確的圖形化設計開發流程。IPI 特性可提供具有器件和平臺意識的互動環境,能支持關鍵 IP 接口的智能自動連接、一鍵式 IP 子系統生成、實時 DRC 和接口修改傳遞等功能,此外還提供強大的調試功能。在 IP 之間建立連接時,設計人員工作在“接口”而不是“信號”的抽象層面上,從而大幅提升了生產力。 這通常採用業界標準的 AXI4 接口,不過 IP 集成器也支持數十個其它接口。

設計團隊在接口層面上工作,能快速組裝複雜系統,充分利用 Vivado HLSSystem GeneratorXilinx SmartCore™LogiCORE™ IP 創建的 IP、聯盟成員 IP 和自己的 IP。通過利用 Vivado IPIHLS 的完美組合,客戶能將開發成本相對於採用 RTL 方式而言節約高達 15 倍。

Vivado IP 集成器的優勢包括:

  • 在 Vivado 集成型設計環境中的緊密集成
    • IP Integrator 層次化子系統在整個設計中的無縫整合
    • 快速捕獲與支持重複使用的 IP Integrator 設計封裝
    • 支持圖形和基於 Tcl 的設計流程設計
    • 快速仿真與多設計視窗間的交叉探測
  • 支持所有設計域
    • 支持處理器或無處理器設計
    • 算法集成 (Vivado HLS 和 System Generator) 和 RTL-level IP
    • 融 DSP、視、模擬、嵌入式、連接功能和邏輯爲一體
  • 注重設計生產力
    • 可在設計裝配過程中,通過複雜接口層面連接實現 DRC
    • 常見設計錯誤的識別和糾正
    • 互聯 IP 的自動 IP 參數傳遞
    • 系統級優化
    • 自動設計輔助

Vivado IP 集成器的例圖如下所示:
在這裏插入圖片描述
對於用戶自定義IP核的集成過程大致爲:首先在IP Catalog中加入自定義IP核,然後在Block Design中將IP核導入,然後添加ZYNQ處理系統,之後對簡單的應用可以自動連線,自動引出必要端口,然後對設計創建HDL Wrapper並生成輸出的硬件,最後驗證硬件並導出bit文件,即完成硬件電路上的集成,剩下的工作就是在ZYNQ上做程序設計了。

4 加速設計驗證

Vivado® Design Suite 可爲單個業界一流集成設計環境 (IDE) 中所包含的第三方仿真器提供設計入口、時序分析、硬件調試以及仿真等一系列功能。對於所有所支持的仿真器而言,該流程都可滿足集成型及企業驗證需求。

Vivado 可爲全面集成型 Vivado 仿真器以及第三方 HDL 仿真器實現行爲、後期綜合與後期實現功能或時序仿真。設計週期早期階段多花點時間在仿真上,有助於提早識別問題,相對於在流程後期階段多用時間而言,可顯著減少轉換時間。

爲幫助在用戶驗證環境中實現高靈活性,Vivado 不僅提供對集成環境的支持,而且還提供各種腳本與外部驗證設置聯用。
在這裏插入圖片描述
Vivado 集成設計環境 (IDE) 有助於用戶使用各種仿真集探索多種仿真策略。仿真集不僅允許用戶在 Vivado IDE 下管理驗證流程,而且還可根據驗證需求創建不同的仿真流程。

5 總結

Vivado® Design Suite HLx 版本可爲設計團隊提供實現基於 C 的設計、重用優化、IP 子系統重複、集成自動化以及設計收斂加速所需的工具和方法。與 UltraFast™ 高層次生產力設計方法指南相結合,這種特殊組合經過驗證,不僅可幫助設計人員以高層次抽象形式開展工作,同時還可促進重複使用,從而可加速生產力。

依據筆者的經驗,簡單系統的設計流程大致如下:首先在Vivado HLS軟件上設計需要的IP核,然後在Vivado軟件上添加IP核以及ZYNQ處理系統,完成相應的電路連接,最後在SDK軟件上設計程序操作FPGA的電路,實現我們想要的功能。

6 參考文章

[1]: wp416-Vivado Design Suite

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章