河北网站seo,seo网站推广方式,晨阳seo顾问,wordpress空白页面模板下载创建HDL兼容的Simulink模型 一、使用Balnk DUT模板二、从HDL Coder库中选择模块三、为DUT开发算法/功能四、为设计创建Testbench五、仿真验证设计功能六、Simulink模型生成HDL代码 这个例子说明了如何创建一个用于生成HDL代码的Simulink模型。要创建兼容HDL代码生成的MATLAB算法… 创建HDL兼容的Simulink模型 一、使用Balnk DUT模板二、从HDL Coder库中选择模块三、为DUT开发算法/功能四、为设计创建Testbench五、仿真验证设计功能六、Simulink模型生成HDL代码 这个例子说明了如何创建一个用于生成HDL代码的Simulink模型。要创建兼容HDL代码生成的MATLAB算法请参见“Guidelines for Writing MATLAB Code to Generate Efficient HDL and HLS Code”。
该模型是一种简单的计数器算法它向上计数并在达到您指定的上限后包装回零。
一、使用Balnk DUT模板
要创建一个与HDL兼容的Simulink模型请使用Blank DUT模板。使用hdlsetup函数对模板进行预配置以便生成HDL代码。 1、在MATLAB工具栏上单击Simulink按钮。 2、在Simulink开始页中导航到HDL Coder部分然后选择Blank DUT模板。 3、用文件名hdlcoder_simple_up_counter.slx保存模型到可写的工作文件夹中。 Blank DUT模板有一个HDL_DUT子系统对应于为其生成HDL代码的测试下设计DUT。为了验证DUT的功能该模板包含一个位于HDL_DUT子系统之外的Create HDL-Compatible Simulink Model 3-5测试台该测试台为DUT提供输入并记录输出值。
二、从HDL Coder库中选择模块
要设计计数器算法请使用HDL Coder库中的块。这个库中的块是为生成HDL代码而预先配置的。要过滤Simulink库浏览器以显示支持HDL代码生成的块库 1、在Apps选项卡上选择HDL Coder。 2、从HDL Code选项卡中选择HDL Block PropertiesOpen HDL Block Library。 或者在命令行输入hdllib
hdllibHDL Coder库中的块可与Simulink一起使用。如果没有HDL Coder则可以在模型中对块进行仿真但不能生成HDL代码。 你可以在这些块库中找到额外的支持HDL的块
DSP System T oolbox HDL SupportCommunications T oolbox HDL SupportVision HDL T oolboxWireless HDL T oolbox
若要将库浏览器恢复为默认视图请在库浏览器中单击返回按钮。或者在命令行输入
hdllib(off)三、为DUT开发算法/功能
1、双击HDL_DUT子系统。将块从HDL Coder库拖到模型中。 该表列出了要添加到模型中用于设计计数器的块。要了解块的作用并指定其块参数请双击该块。 2、将输入端口In1和In2分别重命名为count_threshold和Enable。将模块放入模型中并连接它们。 Enable信号指定计数器是否从前一个值向上计数。当Enable信号为逻辑高时计数器从0开始计数到count_threshold值。当out的值等于count_threshold值时计数器将返回零并且再次开始计数。当使能信号变为逻辑低时计数器保持先前的值。
四、为设计创建Testbench
导航到模型的顶层并更改输入设置。
常量块输入到count_threshold该输入指示计数器计数的最大值。这个例子展示了如何设计一个4位向上计数器。设置常量值为15(2^4 - 1)并设置输出数据类型为uint8。然后这个常量块的输出数据类型与HDL_DUT子系统中常量块的输出数据类型相匹配。自由计数器模块输入到 Enable移除自由计数器模块。将此块替换为值为1的常量块输出数据类型设置为布尔采样时间设置为1。 前一节展示了hdlcoder_simple_up_counter。您按照上面描述的步骤创建的SLX模型。要在MATLAB中打开模型请单击“打开模型”按钮。
五、仿真验证设计功能
将模型的停止时间设置为50。通过单击仿真按钮模拟您的模型。要查看模拟结果请打开模型顶层的Scope块。 仿真结果显示使能信号产生一个常数1。输出信号从0计数到15包装回0然后再次计数。
六、Simulink模型生成HDL代码
在生成HDL代码之前您可以验证模型设置是否与HDL代码生成兼容。本例中使用的计数器模型与HDL代码生成兼容。要验证和更新HDL兼容性的模型请使用HDL Code Advisor。
本章节内容在下篇文章中进行详细说明Matlab Simulink HDL Coder开发流程二—从Simulink模型生成HDL代码
参考文档Matlab Simulink HDL Coder官方使用文档说明