基于Simulink模型的HDL代码生成和FPGA合成金宝app
这个例子展示了如何为一个简单的计数器模型生成HDL代码,并在Xilinx上合成生成的代码®FPGA通过Simulink实现金宝app®HDL工作流顾问。要创建此模型,请参见创建hdl兼容的Simulink模型金宝app。
中不可用HDL工作流指导器金宝app仿真软件在线™。
金宝appSimulink HDL工作流顾问
HDL工作流顾问指导您为Simulink子系统和FPGA设计过程生成HDL代码,例如:金宝app
检查模型的HDL代码生成兼容性,并自动修复不兼容的设置。
生成HDL代码,一个测试台,以及脚本来构建和运行代码和测试台。
生成协同仿真或SystemVerilog DPI测试台和代码覆盖(需要HDL验证器™)。
通过集成第三方合成工具进行合成和定时分析。
用关键路径信息和合成过程中获得的其他信息对模型进行反向注释。
完成自动化工作流程为选定的FPGA开发目标设备和金宝app仿真软件实时™FPGA I/O工作流程,包括FPGA在环仿真。
简单计数器模型
打开这个模型可以看到一个简单的计数器。该模型从零开始计数到一个阈值,然后返回到零。阈值设置为15
。要更改阈值,请将输入的值更改为count_threshold
端口。Enable信号指定计数器是向上计数还是保持先前的值。的值1
表示计数器持续向上计数。
设置刀具路径
要在目标平台上合成您的设计,在打开HDL Workflow Advisor并运行工作流之前,请设置合成工具的路径。本例使用Xilinx Vivado®,所以您必须已经安装了Xilinx Vivado。要设置刀具路径,请使用hdlsetuptoolpath
函数指向已安装的Xilinx Vivado 2020.2可执行文件。
hdlsetuptoolpath (“ToolName”,“Xilinx Vivado”,“路径”,…“C: \ Xilinx \ Vivado \ 2020.2 \ bin \ vivado.bat ');
hdlsetuptoolpath
。要了解最新支持的工具,请参见金宝app支持HDL语言和支持的第三金宝app方工具和硬件。
如果您想生成HDL代码,但不合成您的设计,则不必设置工具路径。
打开HDL工作流顾问
要从Simulink模型启动HDL工作流顾问,金宝app
在应用程序选项卡上,选择高密度脂蛋白编码器。
在您的模型中选择DUT子系统,
HDL_DUT
,并确保此名称出现在代码选项HDL代码选项卡。要记住选择,请固定此选项。点击工作流的顾问。
当您打开HDL工作流顾问时,代码生成器可能会警告项目文件夹不兼容。要打开Advisor,请选择删除并继续。
HDL工作流顾问在左侧窗格中按文件夹分组显示一组任务。展开文件夹将显示每个文件夹中的可用任务。选择任务或文件夹将在右侧窗格中显示有关该任务或文件夹的信息。右窗格具有简单的控件,用于将任务运行到代码或测试台生成的几个参数和选项,并包含状态消息和其他任务结果的显示区域。
要了解每个任务的详细信息,请右键单击该任务,然后选择这是什么?。
看到开始使用HDL工作流顾问。
生成HDL代码
在设定目标>设置目标设备和合成工具一步,合成工具中,选择
Xilinx Vivado
并选择运行此任务。另请参阅HDL工作流顾问中的工作流。生成HDL代码,但不合成代码,留下合成工具设置为没有指定合成工具
。在设定目标频率方法指定希望设计实现的目标频率目标频率参数。对于本例,设置目标频率(兆赫)来
200
。要检查模型的代码生成兼容性,请运行为HDL代码生成准备模型文件夹中。右键单击检查采样次数任务和选择运行到选定任务。如果运行任务产生警告,请选择修改所有,并重新运行任务。
中的任务可修改代码生成设置代码生成选项。例如,要自定义目标HDL语言和目标代码生成文件夹,请使用设置基本选项的任务。修改完成后,单击应用。
要生成代码,右键单击生成RTL代码和测试台任务和选择运行到选定任务。
执行FPGA合成和分析
在FPGA合成与分析>进行合成和P/R>运行实现任务,明确跳过此任务并点击应用。然后,右键单击此任务并选择运行到选定任务。
该任务显示设计和数据路径延迟所消耗的资源量。余量是组合路径所需时间与到达时间之间的差值。在这种情况下,slack为正值,这意味着数据到达的时间比要求的时间早得多。
右键单击用综合结果注释模型并选择运行到选定任务。如果你选择
英特尔Quartus Pro
或Microchip Libero SoC
随着合成工具,用综合结果注释模型任务不可用。要查看关键路径,请运行合成工作流,然后打开计时报告。
查看模型中带注释的关键路径。
关键路径是输入和输出之间具有最大延迟的组合路径。计数器模型的关键路径延迟为2.77 ns
。中报告的数据路径延迟运行实现任务不仅仅是关键路径,因为它考虑了目标FPGA上的路由延迟。为了节省资源,优化关键路径,并改善目标FPGA上设计的时序,请使用HDL Coder™中的速度和面积优化。要了解更多信息,请参见HDL编码器的速度和面积优化。
用脚本在命令行运行工作流
在MATLAB中运行HDL工作流®命令提示符,将Workflow Advisor设置导出到脚本。要导出到脚本,在HDL工作流顾问窗口中,选择文件>导出到脚本。在“导出工作流配置”对话框中输入文件名,保存脚本。看到用脚本运行HDL Workflow。
另请参阅
hdladvisor
|hdlsetuptoolpath
|makehdl