HDL Coder 利用 MATLAB 函數(shù)、Simulink 模型和 Stateflow 圖生成可移植、可綜合的 Verilog 和 VHDL 代碼。生成的 HDL 代碼可用于 FPGA 編程或 ASIC 原型開發(fā)和設(shè)計(jì)。
HDL Coder 提供了一個(gè) Workflow Advisor,可以自動(dòng)執(zhí)行 Xilinx 和 Altera FPGA 編程。您可以控制 HDL 架構(gòu)和實(shí)施、突出顯示關(guān)鍵路徑,并估算硬件資源利用率。HDL Coder 在 Simulink 模型與生成的 Verilog 和 VHDL 代碼之間提供了可追溯性,使高完整性應(yīng)用程序的代碼驗(yàn)證遵守 DO-254 和其他標(biāo)準(zhǔn)。
主要特性
獨(dú)立于目標(biāo)的、可綜合的 VHDL 和 Verilog 代碼
代碼生成支持MATLAB 函數(shù)、系統(tǒng)對(duì)象以及 Simulink 模塊
使用 Stateflow 實(shí)施 Mealy 和 Moore 有限狀態(tài)機(jī)以及控制邏輯
用于 Xilinx 和 Altera 應(yīng)用程序面板編程的 Workflow Advisor
資源共享和重定時(shí),用以平衡面積速度
符合 DO-254 的代碼到模型和模型到代碼可追溯性
舊有代碼集成
使用 HDL Coder 從 MATLAB 或 Simulink 生成 HDL 代碼。您可以使用 MATLAB 函數(shù)、Simulink 模型或?qū)烧呓Y(jié)合使用來生成可綜合的 VHDL 和 Verilog 代碼。
主要功能
1.生成HDL代碼
使用 HDL Coder,只需幾個(gè)步驟便可為 FPGA 和 ASIC 實(shí)施生成可綜合的 HDL 代碼:
將 MATLAB 代碼、Simulink 模塊和 Stateflow 圖組合使用,進(jìn)行設(shè)計(jì)建模。
優(yōu)化模型以滿足面積速度設(shè)計(jì)目標(biāo)。
使用為 MATLAB 和 Simulink 集成的 HDL Workflow Advisor 生成 HDL 代碼。
使用 HDL Verifier 驗(yàn)證生成的代碼。
2.優(yōu)化 HDL 代碼
在 MATLAB 或 Simulink 中,通過采用分布式流水線、流式處理和資源共享,可以優(yōu)化 HDL 代碼以實(shí)現(xiàn)速度面積目標(biāo)。在 MATLAB 中,您可以使用高級(jí)循環(huán)優(yōu)化,如循環(huán)流和循環(huán)展開,用于包含 for 循環(huán)或矩陣運(yùn)算的 MATLAB 設(shè)計(jì)。您可以將 MATLAB 代碼中的持續(xù)陣列或矩陣變量映射到 Block RAM。在 Simulink 中,您可以實(shí)施信號(hào)處理和多媒體應(yīng)用中常用的多聲道設(shè)計(jì)和序列化技術(shù)。
適用于 MATLAB 的 HDL Workflow Advisor 提供了多個(gè)優(yōu)化選項(xiàng),如 RAM 映射、流水線、資源共享和循環(huán)展開
面積速度優(yōu)化。用一個(gè)乘法器取代四個(gè)乘法器,降低了設(shè)計(jì)面積成本,數(shù)據(jù)率提升4倍。
3. FPGA 設(shè)計(jì)自動(dòng)化
HDL 中的 HDL Workflow Advisor 可以自動(dòng)執(zhí)行將 MATLAB 算法和 Simulink 模型實(shí)施到 Xilinx 和 Altera FPGA 的工作流程。HDL Workflow Advisor 集成了 FPGA 設(shè)計(jì)流程的所有步驟,包括:
檢查 Simulink 模型的 HDL 代碼生成兼容性
生成 HDL 代碼、HDL 測(cè)試工作臺(tái)和協(xié)同仿真模型
通過與 Xilinx ISE 和 Altera Quartus II 集成,執(zhí)行合成和時(shí)序分析
估算設(shè)計(jì)中的資源使用
使用關(guān)鍵路徑時(shí)序回注 Simulink 模型
使用關(guān)鍵路徑時(shí)序回注 Simulink 模型。HDL Workflow Advisor 會(huì)在 Simulink 中突出顯示關(guān)鍵路徑時(shí)序,以幫助識(shí)別速度瓶頸并提高設(shè)計(jì)性能。
您可以查看合成后時(shí)序報(bào)告并回注 Simulink 模型,以識(shí)別時(shí)序約束瓶頸。與合成工具的這一集成實(shí)現(xiàn)了快速設(shè)計(jì)迭代,并顯著縮短了 FPGA 設(shè)計(jì)周期時(shí)間。
4.驗(yàn)證 HDL 代碼
HDL Coder 可以生成 VHDL 和 Verilog 測(cè)試工作臺(tái)以快速驗(yàn)證生成的 HDL 代碼。您可以使用各種選項(xiàng)自定義 HDL 測(cè)試工作臺(tái),測(cè)試HDL 代碼。您還可以生成腳本文件,在 HDL 仿真器中自動(dòng)處理代碼編譯和仿真。
HDL Coder 與 HDL Verifier 配套使用,可以自動(dòng)生成兩類協(xié)同仿真模型:
HDL 協(xié)同仿真模型,用于使用 Simulink 和 HDL 仿真器(如 Cadence Incisive 或 Mentor Graphics ModelSim 和 Questa)執(zhí)行 HDL 協(xié)同仿真
FPGA 在環(huán) (FIL) 協(xié)同仿真模型,用于使用 Simulink 和 FPGA 板驗(yàn)證設(shè)計(jì)
自動(dòng)生成 FPGA 在環(huán) (FIL) 模型,用于視頻銳化。FIL 仿真可以在硬件上高效地執(zhí)行設(shè)計(jì)空間探查。
5. 記錄和追蹤HDL 代碼
HDL Coder 會(huì)將生成的代碼記錄在 HTML 報(bào)告中,該報(bào)告包括帶超鏈接 的HDL 代碼和生成的 HDL 文件表。通過 HDL 代碼中的超鏈接,可以導(dǎo)航到與代碼對(duì)應(yīng)的 MATLAB 算法或 Simulink 模塊。
為滿足 DO-254 等標(biāo)準(zhǔn)對(duì)高完整性應(yīng)用程序的代碼可追溯性要求,HDL Coder 讓您能夠執(zhí)行以下操作:
從生成的 HDL 代碼導(dǎo)航到 MATLAB 代碼
在 Simulink 模塊與生成的 HDL 代碼之間導(dǎo)航,實(shí)現(xiàn)雙向追蹤
插入用戶注釋和描述,增加代碼可讀性
MATLAB 中的代碼生成報(bào)告,使您可以從生成的 VHDL 和 Verilog 代碼導(dǎo)航到 MATLAB 代碼。
將 Simulink Verification and Validation 與 HDL Coder 搭配使用,可以將系統(tǒng)需求作為注釋嵌入到從 Simulink 或 Stateflow 生成的 HDL 代碼中。這樣,您便可以使整個(gè)工作流程完全透明,包括從系統(tǒng)需求到生成的 HDL 代碼。
Simulink 中的 HDL 代碼生成報(bào)告,使您可以在模型與生成的 HDL 代碼之間導(dǎo)航。
6.HDL 編碼標(biāo)準(zhǔn)
用于工業(yè) FPGA 和 ASIC 應(yīng)用(如航空航天工業(yè)中的 DO-254)的開發(fā)過程可能建議使用特定的 RTL 編碼指南。HDL Coder 旨在生成滿足通用行業(yè)編碼指南(如 RMM 和 STARC)的 VHDL 和 Verilog 代碼。HDL Coder 還可生成報(bào)告,幫助您確定 Simulink 模型和 MATLAB 代碼中不合適的結(jié)構(gòu),這樣您可以調(diào)整您的模型,使生成的 RTL 符合這些編碼指南。
HDL Coder 還可以生成第三方 lint 工具腳本,用于檢查您生成的 HDL 代碼。HDL Coder 自動(dòng)生成的代碼可通過多種行業(yè)標(biāo)準(zhǔn)的 lint 工具的檢查,例如Atrenta SpyGlass, Real Intent Ascent Lint, Synopsys Leda, 和 Mentor Graphics HDL Designer。HDL Coder 可生成允許與任何 lint 工具集成的自定義腳本。
使用 HDL Coder 生成的代碼遵循 RTL 編碼原則,通過:
避免 FSM 狀態(tài)可訪問性和編碼問題
避免仿真和綜合語義之間的差異
避免在實(shí)現(xiàn)代價(jià)高昂的操作
避免下游工具流問題
遵循命名規(guī)則和RTL編碼習(xí)慣
強(qiáng) RTL 建模的清晰度并降低復(fù)雜性
增強(qiáng)對(duì)時(shí)鐘資源(時(shí)鐘、啟用、復(fù)位)和控制信號(hào)的檢查
支持代碼的可測(cè)性和可追溯性
-
編碼
+關(guān)注
關(guān)注
6文章
915瀏覽量
54651 -
代碼
+關(guān)注
關(guān)注
30文章
4670瀏覽量
67759 -
腳本
+關(guān)注
關(guān)注
1文章
382瀏覽量
14760
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論