生成SystemVerilog DPI组件
步骤1。选择目标
打开你的模型,和应用程序选项卡上,单击高密度脂蛋白验证器。然后,在高密度脂蛋白验证器选项卡上,单击C代码设置。的配置参数对话框打开时的代码生成窗格。
在系统目标文件下,目标选择,点击浏览。选择
systemverilog_dpi_grt.tlc
从列表中。另外,如果你有一个嵌入式编码器®许可证,您可以选择目标
systemverilog_dpi_ert.tlc
。这个目标使您能够访问其额外的代码生成选项代码生成面板模型的配置参数对话框。如果你是生成一个跨平台组件,您必须选择
systemverilog_dpi_ert.tlc
为系统目标文件参数。
步骤2。选择工具链
仍在代码生成窗格中,选择一个工具链。生成共享库主机的操作系统一样,从列表中选择一个编译器的编译器或选择安装自动定位安装工具链
。使用编译器中包含的HDL模拟器,或者生成不同的操作系统的一个组件,或者生成一个高密度脂蛋白模拟器项目而不是一个共享库,选择一个高密度脂蛋白模拟器和目标操作系统。
您可以添加额外的编译标记。下构建配置中,选择指定
。显示当前的旗帜,点击显示设置。
步骤3。使测试点访问(可选)
完成这一步如果你指定的内部信号模型作为测试点,想访问它们在生成的DPI组件。
在左侧窗格中,选择代码生成>接口。
在生成C API部分,验证信号复选框被选中。
选择代码生成>SystemVerilog DPI。
为生成访问函数测试点中,选择
每个测试点一个函数
或一个函数的所有测试点
。
步骤4。配置SystemVerilog生成选项
在左侧窗格中,选择代码生成>SystemVerilog DPI。
选择报告运行时错误出口从仿真软件运行时错误万博1manbetx®你的高密度脂蛋白的模拟。并不是所有的仿真万博1manbetx软件模块提供运行时错误检查。您可以通过添加一个添加运行时检查断言阻止你的仿真软件模型。万博1manbetx
选择生成测试工作台生成一个试验台。试验台检查生成的C组件对数据向量模型子系统。万博1manbetx
在SystemVerilog港口部分,设置这些参数。
选择SystemVerilog数据类型。(可选)
集连接来
端口列表
或接口
。集复合数据类型来
结构
。这个选项创建SystemVerilog结构体
数据类型为任何nonvirtual巴士或复杂数据类型。另外,选择夷为平地
创建扁平的港口。选择Scalarize矩阵和向量的港口创建多个SystemVerilog标量港口从模型向量或数组。万博1manbetx清除此选项保存数组接口。
如果你的设计是顺序和注册,集组件模板类型来
顺序
。如果您的模型是纯粹的组合(没有时钟延迟),集组件模板类型来组合
。
提示
当使用HDL编码器™代码生成,匹配生成的接口通过选择以下选项:
集端口数据类型来
逻辑向量
。集复合数据类型来
夷为平地
。选择Scalarize矩阵和向量的港口。
点击好吧接受这些设置和关闭配置参数对话框。
第5步。生成SystemVerilog DPI组件
在你的模型中,右键单击您想要的小块包含子系统生成的组件。选择代码>C / c++代码>构建这个子系统。
点击构建在对话框中。
SystemVerilog组件生成
,在那里子系统
_build /子系统
_dpi.sv子系统
的名字是生成子系统的DPI组件。这个构建也导致生成的包文件命名
,其中包括所有组件的函数声明。子系统
_build /子系统
_dpi_pkg.sv
如果你建立主机组件,您现在可以使用组件。将构建组件复制到另一台机器上使用相同的操作系统,复制这些文件:
共享库,
子系统
所以
,或子系统
_win64.dll
SystemVerilog包装器生成,
子系统
_dpi.sv
生成SystemVerilog包文件,
子系统
_dpi_pkg.sv
生成的试验台文件夹,
dpi_tb
(可选)
将组件移植到另一台机器上使用不同的操作系统,按照说明生成跨平台DPI组件。