编码器支持生成Sim金宝appulink金宝app®高密度脂蛋白Cosimulation块。您可以使用生成的HDL Cosimulation块来使用Simulink与HDL模拟器共同模拟您的滤波器设计。金宝app要使用此功能,您必须拥有HDL Verifier™许可证。
生成的HDL Cosimulation块配置为符合代码生成所选择的过滤器的端口和数据类型接口。通过将一个HDL Cosimulation块连接到一个Simulink模型来代替滤波器,您金宝app可以用所需的HDL模拟器来模拟您的设计。
生成HDL Cosimulation块:
选择试验台窗格在“生成HDL”对话框中。
选择COSIMULATION块选择。
选择此选项时,编码器会生成并打开一个Simulink模型,该模型包含每个支持的HDL模拟器的HDL Cosimulation金宝app块。金宝app
如果要仅生成HDL Cosimulation块(不生成HDL测试台代码),请清除HDL测试工作台。
下图显示了两者HDL测试工作台和COSIMULATION块选中。
在“生成HDL”对话框中,单击产生生成HDL和测试台代码。
除了通常的代码文件,编码器生成一个Simulink模型,其中包含一个HDL Cosimulation块,用于由HDL 金宝appverification支持的每个HDL模拟器。金宝app
生成的模型是未命名的,仅存在于内存中。如果希望保留模型和块以供将来会话使用,请确保将其保存到目标文件夹中。
要配置HDL Cosimulation块参数,如定时、延迟和数据类型,请参见定义HDL Cosimulation块接口(高密度脂蛋白校验)。
选择命令行:使用generatehdl
功能与属性GenerateCosimBlock
生成HDL Cosimulation块。
笔记
要使用此功能,您必须具有HDL验证程序许可证。
该编码器生成一个Simulink模型,它运行金宝app过滤器设计的Simulink仿真,以及使用HDL模拟器的设计的辅助。该模型将Simulink滤波器的输出与HDL仿真结果进行了比较。金宝app
生成的模型包括:
一种在Simulink子系统中实现了滤波器设计的行为模型。金宝app子系统使用诸如加法器和延迟之类的基本块实现过滤器设计。
相应的HDL协同仿真模块。编码器配置此块以使用Simulink与以下任意一种一起模拟滤波器设计:金宝app
导师图形®ModelSim®
抑扬顿挫的®
测试输入数据,由您指定的测试台刺激计算得出。编码人员将测试数据存储在模型工作区变量中inputdata
。一种来自工作区块路由测试数据到滤波器子系统和HDL协同仿真块。
一种范围块,让您观察和比较测试输入信号与输出筛选块和HDL Cosimulation。范围还显示了这两个输出之间的差异(错误)。
生成辅助模型需要注册输入和/或输出(参见限制)。在生成模型之前,请确保您的模型符合此要求,如下所示:
选择全局设置窗格生成HDL对话框。
在全局设置窗格中,单击港口标签。出现端口选项。
选择以下两个选项:
添加输入寄存器
添加输出寄存器
要生成模型:
在“生成HDL”对话框中,根据您的设计配置其他代码生成和测试台阶参数。
选择试验台窗格的生成HDL对话框。
选择用品用作:选择。选择此选项将启用相邻的下拉菜单,您可以在其中进行选择导师图形ModelSim
或抑扬顿挫的
。
使用下拉菜单,选择您想在生成的模型中使用哪种类型的HDL Cosimulation块。选择导师图形ModelSim
(默认)或抑扬顿挫的
。
如下图所示,协同仿真模型类型为导师图形ModelSim
,刺激信号为白噪声反应。
在“生成HDL”对话框中,单击产生生成HDL和测试台代码。
除了通常的代码文件之外,编码器还生成并打开Simulink模型。金宝app下图显示了从上一步中所示的编码器配置生成的模型。
生成的模型是未命名的,仅存在于内存中。如果希望保留模型和块以供将来会话使用,请确保将其保存到目标文件夹中。
要配置HDL Cosimulation块参数,如定时、延迟和数据类型,请参见定义HDL Cosimulation块接口(高密度脂蛋白校验)。
生成的模型包含以下块:
测试刺激
: 这来自工作区在模型工作区变量中阻塞路由测试数据inputdata
到过滤子系统和高密度脂蛋白Cosimulation块。
筛选
:该子系统实现了过滤器的行为模型设计。
高密度脂蛋白Cosimulation
:此块共同模拟生成的HDL代码。表HDL协同仿真块设置介绍编码器如何配置Cosimulation块参数。
重置延迟
:指定的TCL命令高密度脂蛋白Cosimulation
阻塞应用复位信号。复位高在0 ns和低在22 ns(在第三上升时钟边缘之前)。Simu金宝applink模拟从0、10、20 ns开始输入。的重置延迟
块添加了一个延迟,这样当第一个样本准备好后,复位被应用的RTL模拟可用。
高密度脂蛋白延迟
:这个延迟表示RTL模拟和Simulink行为块之间的延迟的区别。金宝app
错误
的输出之间的差值筛选
块和高密度脂蛋白Cosimulation
堵塞。
ABS.
:错误计算的绝对值。
错误边缘:
:误差绝对值与试验台误差裕度值(见为优化的过滤代码设置误差范围)。
范围
:显示输入信号,从输出筛选
块和高密度脂蛋白Cosimulation
块,两者之间的差异(如果存在一个)。
启动HDL模拟器
按钮:启动你的HDL协同仿真软件。
HDL协同仿真块设置
窗格 | 设置 |
---|---|
港口 |
端口名称:与为筛选器生成的代码中的名称相同。 输入/输出数据类型: 输入样本时间: 输出采样时间:与Simulink固定步长相同。金宝app |
时钟 |
时钟端口名称:与筛选器生成的代码中的名称相同。 主动时钟边缘: 期间:与Simulink采样时间相同。金宝app |
时间尺度 |
在Simulink中,1金宝app秒对应于HDL模拟器中的1个勾号 |
联系 |
连接模式: 连接方法: |
Tcl (模拟预算命令) |
Force / HLP / CLK_ENABLE 1;Force / HLP / RESET 1 0 NS,0 22 NS;放了-----------------------------------------跑“运行Simulink Cosim金宝appulation块”。;置于[时钟格式[时钟秒]] |
Tcl (模拟后命令) |
Force / HLP / RESET 1放置[时钟格式[时钟秒]] |
生成的模型设置。生成的模型具有以下非默认设置:
解算器:离散(没有连续的状态)
。
解算器类型:固定步骤
。
停止时间:Ts * stimlen.
,在那里TS.
Simulin金宝appk的采样时间和刺激
刺激长度是刺激长度。
采样时间颜色:启用
端口数据类型:启用
硬件实现: ASIC / FPGA
一个运行时不会遇到错误的协同仿真要求生成的HDL代码的输出与时钟同步。在生成代码之前,确保选择了以下两个选项:
添加输入寄存器
添加输出寄存器
如果不选择这些选项中的任何一个,则该编码器将终止具有错误的模型生成。但是,完成测试台代码生成。
当目标语言是Verilog时,编码器不金宝app支持生成Cosimulation模型,并且生成Double类型的数据。
使用generatehdl
函数,传入属性的下列值之一GenerateCosimModel.
。
generatehdl(filtsysobj,“InputDataType”15) numerictype(16日,......“GenerateCosimModel”那“尖锐”);
generatehdl(filtsysobj,“InputDataType”15) numerictype(16日,......“GenerateCosimModel”那'modelsim');