从模型或子系统生成HDL测试台
生成硬件描述语言(VHDL)®一个子系统的DUT和测试台。
用makehdl
为子系统生成VHDL代码symmetric_fir
.
makehdl(“sfir_fixed / symmetric_fir”)
###为'sfir_fixed / symmetric_fir'生成hdl。###开始HDL检查。### HDL检查'sfir_fixed'完成0个错误,0个警告和0条消息。###开始VHDL代码生成'sfir_fixed'。###在sfir_fixed / symmetric_fir上工作为hdlsrc \ sfir_fixed \ symmetric_fir.vhd ### HDL代码生成完成。
后makehdl
完成后,使用makehdltb
为同一子系统生成VHDL测试台。
makehdltb (“sfir_fixed / symmetric_fir”)
###开始生成测试台为“sfir固定/对称fir”生成HDL测试台开始模拟模型“gm_sfir_fixed”…###收集数据…####生成测试台:hdlsrc\sfir\u固定\对称\u fir\u tb.vhd####创建刺激向量…##HDL测试台生成完成。
hdlsrc
文件夹中。
生成Verilog®一个子系统的DUT和测试台。
用makehdl
为子系统生成Verilog代码symmetric_fir
.
makehdl(“sfir_fixed / symmetric_fir”,“目标语言”,“Verilog”)
###为“sfir固定/对称fir”生成HDL开始HDL检查HDL检查“sfir_fixed”是否包含0个错误、0个警告和0条消息开始生成“sfir_fixed”的Verilog代码将sfir固定/对称fir作为hdlsrc\sfir固定\对称fir.v####HDL代码生成完成。
后makehdl
完成后,使用makehdltb
为相同的子系统生成Verilog测试台。
makehdltb (“sfir_fixed / symmetric_fir”,“目标语言”,“Verilog”)
###开始生成TestBench。###为'sfir_fixed/symmetric_fir'生成HDL TestBench。###开始模拟模型'gm_sfir_fixed'…# # #收集数据……###生成测试台:hdlsrc\sfir_fixed\symmetric_fir_tb。v ###创建刺激向量…### HDL TestBench生成完成。
hdlsrc \ sfir_fixed.
文件夹中。
为子系统生成SystemVerilog DPI测试台。
如果生成或模拟默认HDL测试台需要很长时间,请考虑此选项。DPI测试台的生成可能比默认版本更快,因为它不运行Simulink金宝app®模拟创建测试台数据。使用大型数据集模拟DPI测试台比默认版本更快,因为它不将输入或预期数据存储在单独的文件中。有关使用此特性的需求,请参阅GenerateSVDPITestBench
财产。
用makehdl
为子系统生成Verilog代码symmetric_fir
.
makehdl(“sfir_fixed / symmetric_fir”,“目标语言”,“Verilog”)
###为“sfir固定/对称fir”生成HDL开始HDL检查HDL检查“sfir_fixed”是否包含0个错误、0个警告和0条消息开始生成“sfir_fixed”的Verilog代码将sfir固定/对称fir作为hdlsrc\sfir固定\对称fir.v####HDL代码生成完成。
生成代码后,使用makehdltb
为同一子系统生成测试台。指定HDL模拟器,以便编码器可以生成脚本来构建和运行生成的SystemVerilog和C代码。禁用默认测试台的生成。
makehdltb (“sfir_fixed / symmetric_fir”,“目标语言”,“Verilog”,...“GenerateSVDPITestBench”,“ModelSim”,“GenerateHDLTestBench”,“关闭”)
###开始使用SystemVerilog DPI testbench检查模型兼容性### #完成使用SystemVerilog DPI testbench检查模型兼容性### ##### ## Starting SystemVerilog DPI Component Generation ### ## generate DPI H Wrapper gm_sfir_fixed_ref_dpi. H ### ### # generate DPI C Wrapper gm_sfir_fixed_ref_dpi. C ### ### ##生成SystemVerilog模块gm_sfir_fixed_ref_dpi. C ### ###C:\matlab\toolbox\hdlverifier\dpigenerator\rtw\hdlverifier_dpitb_template. txt文件。### ###在symmetric_fir_dpi_tb上工作,作为hdlsrc\sfir_fixed\symmetric_fir_dpi_tb.sv. vgt ### ##使用make来构建DPI共享库###为ModelSim/QuestaSim生成SystemVerilog DPI仿真脚本### HDL TestBench生成完成。
hdlsrc \ sfir_fixed.
文件夹中。
DUT.
—DUT子系统或模型引用名称DUT子系统或模型引用名称,指定为具有完整分层路径的字符向量。
例子:“modelname / subsysTarget”
例子:'modelname/subsysA/subsysB/subsysTarget'
指定可选的逗号分隔的字符对名称、值
参数。的名字
是参数名和价值
是相应的价值。的名字
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“开发”、“Verilog”
“GenerateHDLTestBench”
—生成HDL测试平台“开”
(默认)|“关闭”
编码器通过运行Simulink模拟来捕获DUT的输入向量和预期输出数据,从而生成HDL测试台。有关详细金宝app信息,请参阅高密度脂蛋白试验台.
“GenerateSVDPITestBench”
—生成SystemVerilog DPI测试台“没有”
(默认)|“ModelSim”
|“尖锐”
|“风投”
|'Vivado Simulator'
当您设置此属性时,编码器将为您的整个Simulink模型(包括DUT和数据源)生成一个直接编程接口(DPI)组件。金宝app您的整个模型必须支持C代码生成金宝app金宝app仿真软件编码器™.编码器生成一个SystemVerilog测试台,该测试台将DPI组件的输出与DUT的HDL实现的输出进行比较。编码器还构建共享库,并为您选择的模拟器生成模拟脚本。
如果默认HDL测试台需要很长时间才能生成或模拟,请考虑使用此选项。DPI测试台的生成有时比默认版本快,因为它没有运行完整的Simulink模拟来创建测试台数据。使用大数据集模拟DPI测试台比默认版本更快,因为它不会将输入或预期数据存储在单独的文件中。有关示例,请参见金宝app生成SystemVerilog DPI测试台.
要使用此功能,您必须拥有HDL验证器™和金宝app仿真软件编码器执照。要使用生成的VHDL代码运行SystemVerilog测试台,您必须拥有HDL模拟器的混合语言模拟许可证。
限制
当您为顶级Simulink模型生成HDL代码时金宝app,不支持此测试台。金宝app您的DUT子系统必须满足以下条件:
DUT的输入和输出数据类型不能大于64位。
DUT的输入输出端口不能使用枚举数据类型。
输入和输出端口不能是单精度或双精度数据类型。
DUT不能有多个时钟。你必须设置时钟输入代码生成选项单
.
使用触发信号作为时钟不得选择。
如果DUT使用矢量端口,则必须使用标定矢量端口使界面变平。
'generatecosimblock'
—生成HDL Cosimulation块“关闭”
(默认)|“开”
生成一个HDL Cosimulation.块,以便使用HDL模拟器在Simulink中模拟DUT。金宝app
有关更多信息,请参阅Cosimulation模型.
'generatecosimmodel'
—生成HDL Cosimulation模型“ModelSim”
(默认)|“尖锐”
|“没有”
生成包含HDL Cosimulation.块用于指定的HDL模拟器。
有关更多信息,请参阅Cosimulation模型.
“HDLCO去平均值”
—在生成的测试台上启用代码覆盖率“关闭”
(默认)|“开”
在生成的构建和运行脚本中包含代码覆盖开关。这些交换机打开生成的测试台的代码覆盖范围。指定您的HDL模拟器SimulationTool
财产。编码器为您指定的模拟器生成构建和运行脚本。
有关更多信息,请参阅HDL代码覆盖率.
“模拟工具”
—您将在其中运行生成的测试台的HDL模拟器“ModelSim”
(默认)|“尖锐”
|“风投”
|“Vivado”
|'风俗'
此属性应用于生成的测试工作台。“风投”
和“Vivado”
仅支持S金宝appystemVerilog DPI测试台。当您选择'风俗'
,工具使用自定义脚本设置。参见“脚本生成”属性。
有关更多信息,请参阅仿真工具.
'forceclock'
—强制时钟输入“开”
(默认)|“关闭”
指定生成的测试台驱动基于的时钟启用输入Clocklowtime.
和ClockHighTime
.
有关更多信息,请参阅力的时钟.
'Clockhightime'
—钟的时候时钟周期内的时钟高位时间,以纳秒为单位。
有关更多信息,请参阅时钟高时间(ns).
“ClockLowTime”
—时钟低时间在一个时钟周期内的时钟低时间,以纳秒为单位。
有关更多信息,请参阅时钟低位时间(ns).
'feCeclockable'
—强制时钟使能输入“开”
(默认)|“关闭”
指定生成的测试台驱动时钟启用输入。
有关更多信息,请参阅强制时钟使能.
'testbenchclockenabledelay'
—复位和时钟使能之间的时钟周期DEASERION复位的时钟周期数和时钟使能的断言,指定为正整数。
有关更多信息,请参阅时钟使能延迟(时钟周期)
'forcereset'
—强制复位输入“开”
(默认)|“关闭”
指定生成的测试台驱动重置输入。
有关更多信息,请参阅力重置.
“ResetLength”
—复位断言时间长度断言重置的时间长度,指定为时钟周期数。
有关更多信息,请参阅复位长度(以时钟周期计).
“HoldInputDataBetweenSamples”
—为信号保存有效数据“开”
(默认)|“关闭”
保持有效数据之间的采样信号在较慢的速率。
有关更多信息,请参阅在样本之间保持输入数据.
“等待时间”
—保持输入和强制重置的时间保持输入和强制重置的时间,以纳秒为单位指定。
有关更多信息,请参阅保持时间(ns).
'忽略'
—时钟启用后检查输出数据之前的等待时间在开始输出数据检查之前断言时钟启用后的时间,以采样数指定。
有关更多信息,请参阅忽略输出数据检查(样本数量).
“InitializeTestBenchInputs”
—初始化测试台输入“关闭”
(默认)|“开”
将测试台输入初始化为零。有关更多信息,请参阅初始化测试台输入.
“TestBenchDataPostFix”
—测试台数据文件名的后缀'_数据'
(默认)|特征向量测试台数据文件名称的后缀,指定为字符向量。
有关更多信息,请参阅测试台数据文件名称postfix.
“TestBenchPostFix”
—测试台名称的后缀'_tb'
(默认)|特征向量测试台名称的后缀,指定为字符向量。
有关更多信息,请参阅测试台名称后缀.
“TestBenchReferencePostFix”
—试验台参考信号的后缀“\u ref”
(默认)|特征向量测试台参考信号名称的后缀,指定为字符向量。
有关更多信息,请参阅测试台参考后缀.
“MultifileTestBench”
—生成多个测试台文件“关闭”
(默认)|“开”
将生成的测试台划分为辅助函数、数据和HDL测试台文件。
有关更多信息,请参阅多文件试验台.
“UseFileIOInTestBench”
—使用文件I / O读取/写入测试台数据“开”
(默认)|“关闭”
有关更多信息,请参阅使用文件I / O读取/写入测试台数据.
“FPToleranceStrategy”
—浮点容错策略“亲戚”
(默认)|'ULP'
基于相对误差或ULP的浮点公差检查。有关更多信息,请参阅基于dsp的浮点容差校验.
“FPToleranceValue”
—浮点容错策略“亲戚”
(默认)|'ULP'
浮点公差值取决于FPToleranceStrategy
指定。有关更多信息,请参阅公差值.
'ClockInputs'
—单个或多个时钟输入'单身的'
(默认)|“多重”
指定是否在HDL代码中生成单个或多个时钟输入。有关更多信息,请参阅时钟输入.
“ResetAssertedLevel”
—断言(激活)重置级别高电平的
(默认)|'活跃低'
指定是否使用用于复位输入信号的有效高或有效低的置位电平。有关更多信息,请参阅重置断言水平.
“ClockEnableInputPort”
—时钟启用输入端口名称“clk_enable”
(默认)|特征向量将时钟启用输入端口名称指定为字符向量。有关详细信息,请参阅时钟使能输入端口.
“ClockEnableOutputPort”
—时钟使能输出端口名称“切出”
(默认)|特征向量时钟启用输出端口名称,指定为字符向量。
有关更多信息,请参阅使能输出端口.
“ClockInputPort”
—时钟输入端口名称'clk'
(默认)|特征向量将时钟输入端口名称指定为字符向量。有关更多信息,请参阅时钟输入端口.
'resetInputport'
—重置输入端口名“重置”
(默认)|特征向量重置输入端口名,指定为字符向量。
有关更多信息,请参阅复位输入端口.
“VerilogFileExtension”
—Verilog文件扩展名'.v'
(默认)|特征向量指定生成的Verilog文件的文件扩展名。有关更多信息,请参阅Verilog文件扩展名.
“VHDLFileExtension”
—VHDL文件扩展名“.vhd”
(默认)|特征向量指定生成的VHDL文件的文件名扩展名。有关更多信息,请参阅VHDL文件扩展名.
“VHDLArchitectureName”
—VHDL体系结构名称'RTL'
(默认)|特征向量有关更多信息,请参阅VHDL体系结构名称.
“VHDLLibraryName”
—硬件描述语言(VHDL)库名称'工作'
(默认)|特征向量有关更多信息,请参阅硬件描述语言(VHDL)库名称.
“SplitEntityFilePostfix”
—VHDL实体文件名的后缀"实体"
(默认)|特征向量有关更多信息,请参阅分割实体文件后缀.
“SplitArchFilePostfix”
—VHDL架构文件名的Postfix“_arch”
(默认)|特征向量有关更多信息,请参阅分割拱形文件后缀.
“PackagePostfix”
—包文件名的后缀“_pkg”
(默认)|特征向量将包文件名的后缀指定为字符向量。有关更多信息,请参阅包后缀.
“后缀”
—复信号虚部的后缀'_我是'
(默认)|特征向量有关更多信息,请参阅复虚部后缀在复杂信号后缀参数.
'complextrealpostfix'
—复数信号名称虚部的后缀“_re”
(默认)|特征向量有关更多信息,请参阅复数实部后缀在复杂信号后缀参数.
“EnablePrefix”
—内部启用信号的前缀'eNB'
(默认)|特征向量内部时钟启用和控制流启用信号的前缀,指定为字符向量。有关详细信息,请参阅时钟启用设置和参数.
“SplitEntityArch”
—将VHDL实体和体系结构拆分为单独的文件“关闭”
(默认)|“开”
有关更多信息,请参阅拆分实体和体系结构.
'uterverilogtimescale'
—生成“时间尺度
编译指令“开”
(默认)|“关闭”
有关更多信息,请参阅使用Verilog`时间尺度指令.
'Datecomment'
—在标题中包含时间戳“开”
(默认)|“关闭”
有关更多信息,请参阅发出标题中的时间/日期邮票在RTL注释参数.
“InlineConfigurations”
—包括硬件描述语言(VHDL)配置“开”
(默认)|“关闭”
有关更多信息,请参阅嵌入式硬件描述语言(VHDL)配置.
'scalarizeports'
—将传染媒介端口达到标量港口“关闭”
(默认)|“开”
|“dutlevel”
有关更多信息,请参阅标定港口.
“HDLCompileInit”
—编译脚本初始化文本'vlib%s\n'
(默认)|特征向量有关更多信息,请参阅编译初始化.
“HDLCompileTerm”
—编译脚本终止文本''
(默认)|特征向量有关更多信息,请参阅编译终止.
“HDLCompileFilePostfix”
—编译脚本文件名的后缀“_compile.do”
(默认)|特征向量有关更多信息,请参阅编译文件postfix..
“HDLCompileVerilogCmd”
—Verilog编译命令'虚拟日志%s%s\n'
(默认)|特征向量Verilog编译命令,指定为字符向量。的simulatorflags.
名称-值对指定第一个参数,模块名指定第二个参数。
有关更多信息,请参阅Verilog的编译命令.
“HDLCompileVHDLCmd”
—硬件描述语言(VHDL)编译命令“威科姆公司% s % s \ n”
(默认)|特征向量VHDL编译命令,指定为字符向量。的simulatorflags.
名称-值对指定第一个参数,实体名称指定第二个参数。
有关更多信息,请参阅编译VHDL命令.
“HDLSimCmd”
—HDL仿真命令'vsim -voptargs = + ACC%s。%s \ n'
(默认)|特征向量HDL仿真命令,指定为字符向量。
有关更多信息,请参阅模拟命令.
“HDLSimInit”
—HDL仿真脚本初始化名称['onbreak resume\n','onerror resume\n']
(默认)|特征向量HDL模拟脚本的初始化,指定为字符向量。
有关更多信息,请参阅仿真初始化.
“HDLSimTerm”
—HDL模拟脚本终止名'奔跑 - 所有'
(默认)|特征向量HDL模拟命令的终止名,指定为字符向量。
有关更多信息,请参阅仿真终止.
“HDLSimFilePostfix”
—为HDL模拟脚本的后记“"模拟做"
(默认)|特征向量有关更多信息,请参阅模拟文件后缀.
'hdlsimviewwavecmd'
—HDL模拟波形查看命令'添加波SIM:%s \ n'
(默认)|特征向量波形查看命令,指定为字符向量。隐式参数为DUT顶级输入,输出和输出参考信号添加了信号路径。
有关更多信息,请参阅模拟波形查看命令.
您有一个连接到MATLAB-Befehl entspricht:
Führen Sie den Befehl durch Eingabe in das MATLAB-Befehlsfenster aus。Webbrowser unterstützen keine MATLAB-Befehle。
您还可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家/地区网站未针对您所在地的访问进行优化。