HDLCoder详细教程程序.docx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
生成代码前准备工作在从模型生成HDL代码前,你应该作如下工作:在生成代码前,用hdlsetup功能(详见?Initializing Model Parameters with hdlsetup)来对你要生成HDL代码的模型进行设置。用hdllib功能来创建目前支持HDL代码生成的模块库(详见?Show Blocks Supported for HDL Code Generation)通过用这个库里的模块来构建模型,你的模型就会兼容HDL。支持的模块集合在今后的版本会改变,所以你每次安装新版本的本产品时应该重建支持的模块库。用?Run Compatibility Checker选项(详见?Selecting and Checking a Subsystem for HDL Compatibility)来检查你模型或者DUT的HDL兼容性并生成HDL Code Check Report。你也可以调用chekhdl函数(见checkhdl)来运行兼容性检查器。练习简介HDL Coder支持生成代码,用户可以选择以下环境:MATLAB命令窗口支持用makehdl,makehdltb和其他函数生成代码Simulink GUI (配置参数对话框和/或模型浏览器)提供模型仿真参数/代码生成参数和函数的集成视图这个实践练习通过在以上两种环境使用中相同的模型,介绍HDL代码的生成和仿真机制。在这一系列步骤中,你将:构建一个简单模型用于生成代码从模型中的子系统生成代码生成适用于Mentor Graphics ModelSim仿真器的VHDL测试台来实现模型的仿真在仿真器中编译和执行模型和测试台用同样的模型生成并仿真Verilog代码检查模型和HDL Coder的兼容性stir_fixed模型这些练习用sfir_fixed模型作为HDL代码生成源。该模型模拟一对称有限脉冲响应滤波器算法,通过定点数计算实现。该模型里的模块支持HDL代码生成,并且模型参数已进行配置以适于代码生成。想了解更多关于模型准备以进行代码生成,参考Prepare Simulink Model For HDL Code Generation.下图为模型的顶层级别描述。该模型采用了任务分解,有助于HDL设计:用于执行滤波算法的symmetric_fir子系统是被测器件。一个HDL实体将从这个子系统被创建、测试,最终综合。驱动该子系统的顶层模型元件是测试台。顶层模型生成symmetric_fir子系统的16位定点输入信号。Signal From Workspace模块生成一个用于滤波器的测试输入(激励)信号。四个常数模块提供滤波器系数。Scope模块仅用来仿真,这些虚拟的模块不会生成HDL代码。下图描述了symmetric_fir子系统。定点数数据类型在子系统里传递。输入继承了被送过来的信号的数据类型。在需要的地方,给定输入的数据类型并采取操作后,模块的内部规则决定了输出的数据类型。滤波器在y_out管脚输出一个定点数结果,并在delayed_x_out复制其输入(在经过若干个延迟阶段后)。在接下来的例程里,你将会生成将symmetric_fir当成一个实体实现的VHDL代码。然后你会从顶层级别模型生成一个测试台。这个测试台用从Signal From Workspace产生的激励数据驱动生成的实体完成指定的时钟步数。用HDL Workflow Advisor生成代码(该法不能生成测试台代码)这个例程展示了如何用HDL Workflow Advisor从Simulink模型生成HDL代码。本例程中的模型,stir_fixed已经被准备好用于代码生成。本例程采用Xilinx ISE综合工具,我们假设你的工具路径已设置好。你也可以用Altera Quartus II来进行本例程。创建工作文件夹并复制模型用HDL Workflow Advisor生成代码执行FPGA综合和分析创建工作文件夹并复制模型启动MATLAB创建一名为sl_hdlcoder_work的文件夹。比如:sl_hdlcoder_work文件夹将被用于保存例程中模型的拷贝和HDL Coder生成的文件夹及代码。这个文件夹的位置不重要,但是不能在MATLAB的文件夹树下。将sl_hdlcoder_work文件夹设置为工作文件夹。比如:打开sfir_fixed模型。将sfir_fixed复制到sl_hdlcoder_work文件夹下。用HDL Workflow Advisor生成代码右键点击symmetric_fir子系统,选择HDL Code HDL Workflow Advisor。在步骤Set Target Set Target Device and Synthesis Tool, 在Synthesis tool选择Xi

文档评论(0)

502992 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档