主要内容

开始使用仿真软件HDL Cosim金宝appulation

这个例子将指导您完成的基本步骤为建立高密度脂蛋白在仿真软件验证器使用Cosimulation™应用程序向导®环境。金宝app

Cosimulation向导是一个图形用户界面(GUI),指导您完成的过程设置Cosimulation MATLAB®或仿真软件之间®和硬件描述语言(HDL)模拟器。金宝app

在本例中,您使用仿真软件和一个高密度脂蛋白模拟器验金宝app证提出了余弦滤波器的设计用Verilog编写的。提出了余弦滤波器通常被用作脉冲整形滤波器在数字通信系统中。它不会产生传输干扰(ISI)调制脉冲的输入。

来验证这个提出了余弦滤波器的功能,提供了Simulink仿真testbench。金宝app测试下这个testbench生成输入HDL设计(DUT)和情节输入和输出的波形。

Cosimulation向导提供的Verilog文件提出了余弦滤波器作为输入。它还收集用户输入所需设置cosimulation每一步。最后的例子,Cosimulation向导生成一个模型块,代表了HDL设计仿真软件模型,MATLAB脚本编译HDL设计和MATL金宝appAB脚本启动HDL Cosimulation模拟器。在仿真中,你可以看到这个HDL滤波器的输入和输出波形的仿真软件。金宝app

需求和先决条件

这个例子需要模型和其中一个高密度脂蛋白模拟器金宝app验证寄存器传输级(RTL)设计。

  • Vivado Xilinx®®模拟器

  • ModelSim®或者,从导师图形®®

  • 从节奏Xcelium®®

启动Cosimulation向导

从模型启动Cosimulation向导,选择应用程序仿真软件将来发布并单击金宝app选项卡高密度脂蛋白验证器。这一行动增加了高密度脂蛋白验证器仿真软件将来发布选项卡金宝app。然后,在模式部分中,选择高密度脂蛋白Cosimulation。点击进口高密度脂蛋白文件生成Cosim块部分。

高密度脂蛋白Cosimulation块配置Cosimulation向导

Cosimulation类型页面,请执行以下步骤:

1.)。如果您使用的是ModelSim或,,离开高密度脂蛋白模拟器选择ModelSim

b)。如果您使用Xcelium,改变高密度脂蛋白模拟器选项Xcelium

c)。如果您使用Vivado模拟器,改变高密度脂蛋白模拟器选项Vivado模拟器

2。保留默认选项使用高密度脂蛋白模拟器系统上的可执行文件的路径选择如果HDL模拟器可执行文件出现在你的系统路径。如果这些可执行文件不出现在路径,点击浏览按钮来指定这些可执行文件的位置。

点击下一个继续HDL文件页面。

高密度脂蛋白的文件页面,请执行以下步骤:

  1. 点击添加和选择rcostflt_rtl.vVerilog或rcosflt_rtl.vhd硬件描述语言(VHDL)。

  2. 审查文件列表中的文件与文件类型确定像你所预期的那样。

点击下一个继续到高密度脂蛋白编译页面。

高密度脂蛋白编译Cosimulation向导页面,列表中的默认命令编译命令窗口。你不需要改变这些命令本教程。

当您运行Cosimulation向导使用您自己的代码,你可能会在这个窗口中添加或更改编译命令。

下图显示了ModelSim编译命令。

点击下一个进行高密度脂蛋白模块面板。这将反过来触发编译。MATLAB控制台显示编译日志。如果在编译过程中发生错误,错误出现在状态区域。

模拟选项窗格中,执行以下步骤。

ModelSim或Xcelium

  1. )指定cosimulation HDL模块/实体的名称。从下拉列表中,选择rcosflt_rtl。这个模块是Verilog cosimulation /硬件描述语言(VHDL)模块使用。如果您没有看到rcosflt_rtl下拉列表,可以手工输入文件名称。

  2. b)连接方法中,选择共享内存如果你的防火墙策略不允许TCP / IP套接字通信。

Vivado模拟器

  1. 默认情况下,模块设置的名称rcosflt_rtl。这个模块是Verilog cosimulation /硬件描述语言(VHDL)模块使用。

  2. 调试内部信号高密度脂蛋白时间精度1 ps对于这个示例。

点击下一个进行动态仿真模块的端口窗格。金宝appCosimulation向导在后台启动了高密度脂蛋白模拟器控制台使用指定的HDL模块和模拟选项。向导启动后HDL模拟器,向导填充Verilog /硬件描述语言(VHDL)的输入和输出端口模块rcosflt_rtl并将它们显示在接下来的步骤。

指定端口类型一步,Cosimulation向导显示两个表包含的输入和输出端口rcostflt_rtl,分别。

Cosimulation向导试图确定每个端口的端口类型。如果向导不正确识别一个港口,你可以使用这些表更改端口类型。

  1. 输入端口,您可以选择从时钟,重置,输入,或未使用的。高密度脂蛋白验证器连接只输入端口标记输入在co金宝appsimulation仿真软件。

  2. 高密度脂蛋白验证器连接输出端口标记输出在cosi金宝appmulation与仿真软件。向导和模型忽略这些输出端口金宝app未使用的在cosimulation。

  3. 你可以改变参数信号确定为时钟重置在稍后的一步。

接受缺省端口类型并单击下一个继续到输出端口的详细信息页面。

输出端口的详细信息页面,请执行以下步骤:

  1. 设置的样品时间filter_out1通过反向传播继承。

  2. 你可以看到从Verilog代码Cosimulation向导代表输出sfix34_En29格式。改变以下字段:

  • 数据类型定点

  • 标志签署

  • 部分长度29日

点击下一个进行时钟/重置细节页面。

时钟/重置页面,请执行以下步骤。

ModelSim或Xcelium

  1. 高密度脂蛋白的时间单位ns

  2. 时钟周期设置为20。

  3. 离开或一组活跃的边缘不断上升的

  4. 离开或重设初始值设置为1。

  5. 复位信号持续时间设置为15。

Vivado模拟器

  1. 高密度脂蛋白的时间单位ps

  2. 设置时钟周期为20。

  3. 离开或活跃的边缘不断上升的

  4. 离开或将重设初始值设置为1。

  5. 复位信号持续时间设置为15。

点击下一个开始进行时间对齐页。

开始时间调整页面显示一个时钟和复位信号的波形图。Cosimulation向导显示HDL时候开始Cosimulation红线。的启动时间也是时间仿真软件得到第一个输入样本HDL模拟器。金宝app

开始时间对齐页面,设置对齐。活动我们的时钟是一个前沿的边缘。因此,在时间20 ns ModelSim或Xcelium Vivado模拟器(20 ps),注册了余弦滤波器的输出是稳定的。不存在竞争条件,默认HDL时候开始为这个模拟cosimulation就是我们想要的。你不需要做任何修改开始时间。

点击下一个进行阻止的一代。

生成HDL Cosimulation块之前,您可以选择确定时间表之前完成Cosimulation向导。还可以指导一个时间表后HDL校验计算。时间尺度计算的验证软件连接后发生的所有输入/输出端口产生高密度脂蛋白Cosimulation块并开始仿真。

块一代页面,请执行以下步骤。

ModelSim或Xcelium

离开在仿真开始自动确定时间表选择(默认)。之后,您将有机会查看时间表和变化值计算开始之前模拟。

Vivado模拟器

取消在仿真开始自动确定时间表并设置时间表通过设置在模型对应于1秒金宝app2 e-11年代高密度脂蛋白的模拟器。

点击完成完成向导Cosimulation会话。

创造试验台验证HDL设计

在这个例子中,模型试验台模型金宝apprcosflt_tb已经提供。你点击后完成在Cosimulation向导中,仿真软件插入下列事项的金宝app中心模式画布上:

  • 一个高密度脂蛋白Cosimulation块

  • 一块重新编译HDL设计(包含一个链接到一个脚本通过双击启动块)

  • 一块发射HDL模拟器(包含一个链接到一个脚本,通过双击启动块)(仅在Modelsim和Xcelium)

高密度脂蛋白Cosimulation块位置,这样常数和转换块作为输入排队HDL Cosimulation块和公交线路作为输出。连接块。您的模型现在看起来类似于下图。

运行Cosimulation并验证HDL设计

ModelSim或Xcelium

  1. 启动HDL模拟器通过双击块标记发射HDL模拟器

  2. 高密度脂蛋白模拟器时准备好,回归模型并开始仿真。金宝app

  3. 确定时间表。回想一下,你选择在仿真开始自动确定时间表选择Cosimulation向导的最后一页。当这样做时,高密度脂蛋白验证器启动时间尺度细节的图形界面,而不是开始仿真。高密度脂蛋白模拟器和仿真软件样本金宝appfilter_infilter_out港口在1秒。然而,他们的样品时间的HDL模拟器应该一样的时钟周期(20 ns)。改变的模型样品时间金宝app/ rcosflt_rtl clk1(秒),和新闻输入。然后,向导更新表。下面的图显示了新的时间表:1秒在模型对应于2 e - 008年代的HDL模拟器。金宝app

点击好吧关闭时间尺度细节对话框。重新启动仿真软件金宝app仿真和验证的结果在试验台模型范围。

Vivado模拟器

在仿真软件将来金宝app发布,模拟选项卡上,单击运行开始仿真。HDL模拟没有单独的进程,因为模型块执行一个进程共享DLL。金宝app

显示输入的延迟版本范围提出了余弦滤波器,滤波器的输出。如果你样品该滤波器的输出直接输出,没有inter-symbol-interference发生。

另请参阅