RTL样式参数
你访问寄存器传输逻辑(RTL)样式参数HDL代码生成>全局设置>编码风格选项卡中配置参数对话框。
对寄存器使用“rising_edge / falling_edge”风格
指定生成的代码使用硬件描述语言(VHDL)®rising_edge
函数或falling_edge
函数来检测时钟转换。
设置
默认值:从
-
在
-
生成的代码使用的
rising_edge
函数或falling_edge
函数。例如,下面的代码生成的单位延迟块使用
rising_edge
函数来检测积极时钟转换:Unit_Delay1_process:过程(时钟、复位)开始如果重置= ' 1 '然后Unit_Delay1_out1 < =(别人= > ' 0 ');ELSIF rising_edge(时钟),那么如果clk_enable = ' 1 '然后Unit_Delay1_out1 < =签署(x_in);如果;如果;结束过程Unit_Delay1_process;
-
从
-
生成的代码使用
“事件
语法。例如,这个从单位延迟生成的代码块使用
clk 'event clk = ' 1 '
发现积极的时钟转换:Unit_Delay1_process:过程(时钟、复位)开始如果重置= ' 1 '然后Unit_Delay1_out1 < =(别人= > ' 0 ');ELSIF clk 'event clk = ' 1 '如果clk_enable = ' 1 '然后Unit_Delay1_out1 < =签署(x_in);如果;如果;结束过程Unit_Delay1_process;
依赖
启用这个选项当目标语言是硬件描述语言(VHDL)。
命令行信息
属性:UseRisingEdge |
类型:特征向量 |
值:“上” |“关闭” |
默认值:“关闭” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
减少中间信号
指定是否优化debuggability HDL代码或代码覆盖率。
设置
默认值:从
-
在
-
优化代码覆盖率,减少中间的信号。例如,使用此设置从,假设生成的代码是:
7 const3 < = to_signed(24日);subtractor_sub_cast < =调整(const3 8);subtractor_sub_cast_1 < =调整(delayout 8);subtractor_sub_temp < = subtractor_sub_cast - subtractor_sub_cast_1;
与此设置在,高密度脂蛋白编码器™优化输出:
subtractor_sub_temp < = 24(调整(delayout 8));
代码生成器删除中间的信号
const3
,subtractor_sub_cast
,subtractor_sub_cast_1
。 -
从
-
优化代码为debuggability保留中间的信号。
命令行信息
属性:MinimizeIntermediateSignals |
类型:特征向量 |
值:“上” |“关闭” |
默认值:“关闭” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
在硬件描述语言(VHDL)展开为能够生成循环代码
指定是否硬件描述语言(VHDL)为
和生成
循环展开,省略了从硬件描述语言(VHDL)生成代码。
设置
默认值:从
-
在
-
展开和省略
为
和生成
循环从生成的硬件描述语言(VHDL)的代码。(Verilog®代码,循环总是展开。) -
从
-
包括
为
和生成
循环在生成VHDL代码。
命令行信息
属性:LoopUnrolling |
类型:特征向量 |
值:“上” |“关闭” |
默认值:“关闭” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
对于一些仿真软件金宝app®块,默认情况下,生成HDL代码通过使用为能够生成
循环构建硬件描述语言(VHDL)当你设定的目标语言。这些仿真软件金宝app模块有:
使用生成的代码为能够生成
循环有更好的代码可读性,减少代码行数,减少了代码生成时间。例如,考虑为重塑一个二维矩阵生成的VHDL代码到一个一维矩阵。这个例子显示了生成的代码重塑块有或没有为能够生成
循环。
重塑块没有
为能够生成
循环(为硬件描述语言(VHDL)代码生成循环展开启用了):
Reshape_output:过程(In1_signed)开始Reshape_out1 (0) < = In1_signed (0,0);Reshape_out1 (1) < = In1_signed (1,0);Reshape_out1 (2) < = In1_signed (2,0);Reshape_out1 (3) < = In1_signed (3,0);Reshape_out1 (4) < = In1_signed (4 0);Reshape_out1 (5) < = In1_signed (5,0);Reshape_out1 (6) < = In1_signed (6 0);Reshape_out1 (7) < = In1_signed (7,0);Reshape_out1 (8) < = In1_signed (8,0);Reshape_out1 (9) < = In1_signed (9,0); Reshape_out1(10) <= In1_signed(0, 1); ...
重塑块用
为能够生成
循环(为硬件描述语言(VHDL)代码生成循环展开禁用):
Reshape_out1GEN_LABEL1: d1 0到1生成Reshape_out1GEN_LABEL:在0到9生成d0 Reshape_out1 (d0 + (d1 * 10)) < = In1_signed (d0, d1);最终生成;最终生成;
提示
如果您正在使用一个电子设计自动化(EDA)工具,不支持金宝app
生成
循环,选择循环展开选项忽略循环从硬件描述语言(VHDL)生成代码。设置循环展开选项不影响结果从模拟或合成生成VHDL代码。
依赖
启用这个选项当目标语言是硬件描述语言(VHDL)。
从蒙面子系统生成参数化HDL代码
生成子系统的可重用的HDL代码相同的面具可调参数,但是具有不同的值。
设置
默认值:从
-
在
-
为多个蒙面子系统生成一个可重用的HDL文件有不同的掩模参数的值。高密度脂蛋白编码器支金宝app持标量、向量和矩阵作为掩模参数值。高密度脂蛋白编码器检测子系统,面具可调参数,可共享的。
在子系统内部,您可以使用掩模参数只有在表中列出的模块和参数。
块 参数 限制 常数 恒定值在主要对话框中的选项卡 没有一个 获得 获得在主要对话框中的选项卡 参数的数据类型必须为所有获得块是相同的。 -
从
-
生成一个单独的HDL文件为每个蒙面子系统。
命令行信息
属性:MaskParameterAsGeneric |
类型:特征向量 |
值:“上” |“关闭” |
默认值:“关闭” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
限制面具参数值
每个值必须是一个标量、向量或矩阵。
值不能复杂。
不可枚举值数据。
另请参阅
枚举类型编码方案
指定编码方案在生成的HDL代码来表示枚举类型。
设置
默认值:默认的
使用一个默认的
,onehot
,twohot
,或二进制
编码方案生成的HDL代码来表示枚举类型。
-
默认的
-
Verilog代码生成器使用十进制编码,在硬件描述语言(VHDL) VHDL-native枚举类型。这个例子显示了Verilog代码片段的Stateflow编码方案®图表四个州。
参数is_Chart_IN_s_idle = 2 'd0 is_Chart_IN_s_rx = 2 'd1 is_Chart_IN_s_wait_0 = 2 'd2, is_Chart_IN_s_wait_tb = 2 'd3;
-
onehot
-
代码生成器使用一个单点的一个炎热的编码方案
高
代表每一个枚举值。这个例子显示了Verilog代码片段的Stateflow编码方案图表四个州。参数is_Chart_IN_s_idle = 4 'b0001 is_Chart_IN_s_rx = 4 'b0010 is_Chart_IN_s_wait_0 = 4 'b0100 is_Chart_IN_s_wait_tb = 4 'b1000;
64年
枚举值或数字的状态。 -
twohot
-
代码生成器使用一个两位的两个热编码方案
高
代表每一个枚举值。这个例子显示了Verilog代码片段的Stateflow编码方案图表四个州。参数is_Chart_IN_s_idle = 4 'b0011 is_Chart_IN_s_rx = 4 'b0101 is_Chart_IN_s_wait_0 = 4 'b0110 is_Chart_IN_s_wait_tb = 4 'b1001;
-
二进制
-
代码生成器使用二进制编码方案来表示每一个枚举值。这个例子显示了Verilog代码片段的Stateflow编码方案图表四个州。
参数is_Chart_IN_s_idle = 2 'b00 is_Chart_IN_s_rx = 2 'b01 is_Chart_IN_s_wait_0 = 2 'b10, is_Chart_IN_s_wait_tb = 2 'b11;
在硬件描述语言(VHDL),生成的代码使用常数
类型编码默认的枚举值在生成的代码。例如,这个代码片段显示生成的硬件描述语言(VHDL)代码时使用的两个热状态Stateflow编码图表四个州。
包s_pkg常数——两个热编码类型state_type_is_Chart常数IN_s_idle枚举值:std_logic_vector(3报纸0):= " 0011 ";常数IN_s_rx: std_logic_vector(3报纸0):= " 0101 ";常数IN_s_wait_0: std_logic_vector(3报纸0):= " 0110 ";常数IN_s_wait_tb: std_logic_vector(3报纸0):= " 1001 ";s_pkg结束;
命令行信息
属性:EnumEncodingScheme |
类型:特征向量 |
值:“默认” |“onehot” |“twohot” “二元” |
默认值:“默认” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
索引Scalarized端口命名
指定的起始索引scalarized向量港口的名称。例如,看到的数值向量生成港口硬件描述语言(VHDL)的代码。
设置
默认值:从零开始的
-
从零开始的
-
的起始索引scalarized向量港口的名称
0
。例如,如果你有一个输入u
这是一个1 x10
类型的向量uint16
scalarized,生成的HDL代码片段可能看起来像这样的代码:实体子系统端口(u_0: std_logic_vector(15报纸0);——uint16 u_1: std_logic_vector(15报纸0);——uint16 u_2: std_logic_vector(15报纸0);——uint16 u_3: std_logic_vector(15报纸0);——uint16 u_4: std_logic_vector(15报纸0);——uint16 u_5: std_logic_vector(15报纸0);——uint16 u_6: std_logic_vector(15报纸0);——uint16 u_7: std_logic_vector(15报纸0);——uint16 u_8: std_logic_vector(15报纸0);——uint16 u_9: std_logic_vector(15报纸0); -- uint16 ); END Subsystem;
-
从1
-
的起始索引scalarized向量港口的名称
1
。例如,如果你有一个输入u
这是一个1 x10
类型的向量uint16
scalarized,生成的HDL代码片段可能看起来像这样的代码:实体子系统端口(u_1: std_logic_vector(15报纸0);——uint16 u_2: std_logic_vector(15报纸0);——uint16 u_3: std_logic_vector(15报纸0);——uint16 u_4: std_logic_vector(15报纸0);——uint16 u_5: std_logic_vector(15报纸0);——uint16 u_6: std_logic_vector(15报纸0);——uint16 u_7: std_logic_vector(15报纸0);——uint16 u_8: std_logic_vector(15报纸0);——uint16 u_9: std_logic_vector(15报纸0);——uint16 u_10: std_logic_vector(15报纸0); -- uint16 ); END Subsystem;
依赖
这个选项时应用模型配置参数Scalarize港口被设置为在
或DUT的水平
。有关更多信息,请参见Scalarize港口的部分DUT端口配置参数。
命令行信息
属性:ScalarizedPortIndexing |
类型:特征向量 |
值:“从零开始的” |“集中” |
默认值:“从零开始的” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
为总线生成记录类型
生成代码和硬件描述语言(VHDL)构造记录类型为总线信号design-under-test (DUT)接口和不同子系统级接口。有关更多信息,请参见为总线信号生成VHDL代码与记录类型。
设置
默认值:从
-
在
-
为总线信号生成记录类型在你的硬件描述语言(VHDL)的代码。例如,这个代码片段显示了一个子系统的硬件描述语言(VHDL)代码生成
三机一体
和着干活
总线端口定义记录类型。实体子系统端口(std_logic clk:;重置:std_logic;在BusObject_record In1:;——记录{双,双}着干活:BusObject_record——记录{双,双});终端子系统;
BusObject_record
,它由两个总线元素的数据类型双
。包Subsystem_pkg类型BusObject_record记录signal1: std_logic_vector(63报纸0);signal2: std_logic_vector(63报纸0);结束记录BusObject_record;Subsystem_pkg结束;
-
从
-
高密度脂蛋白编码器趋于平缓子系统接口总线端口元素。这个代码片段显示生成的硬件描述语言(VHDL)的代码没有记录类型的子系统:
实体子系统端口(std_logic clk:;重置:std_logic;In1_signal1: std_logic_vector(63报纸0);——双重In1_signal2: std_logic_vector(63报纸0);——双重Out1_signal1: std_logic_vector(63报纸0);——双重Out1_signal2: std_logic_vector(63报纸0)——双);终端子系统;
命令行信息
属性:GenerateRecordType |
类型:特征向量 |
值:“上” |“关闭” |
默认值:“关闭” |
要设置该属性,使用功能hdlset_param
或makehdl
。要查看属性值,可以使用函数hdlget_param
。
依赖
要启用该参数,设置目标语言来硬件描述语言(VHDL)
。