主要内容

HDL端口和标识符属性

自定义端口、标识符和注释

使用HDL端口和标识符属性,您可以在生成的代码中自定义端口、标识符和注释。

属性的名称-值参数指定这些属性generatehdl函数。的名字属性名称和价值对应的值。您可以以任意顺序指定多个名称-值参数Name1, Value1,…,“以”,家

例如:

Fir = dsp。FIRFilter (“结构”"直接形式反对称");generatehdl(杉木、“InputDataType”15) numerictype(16日,“ClockInputPort”“clk_input”);

时钟、输入和输出

全部展开

时钟启用输入端口的名称,指定为“clk_enable”、字符向量或字符串标量。

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

时钟启用输出端口的名称,指定为“ce_out”、字符向量或字符串标量。此属性仅适用于多重速率的过滤器使用单一输入时钟(默认行为ClockInputs).有关示例,请参见多速率过滤器的时钟端口.详情请参见多速率过滤器的代码生成选项

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

时钟输入端口的名称,指定为“时钟”、字符向量或字符串标量。

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

过滤器输入端口的名称,指定为“filter_in”、字符向量或字符串标量。

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

过滤器输入端口的数据类型,指定为以下之一:

  • “std_logic_vector”“签署/无符号”(当目标语言为VHDL时)

  • “线”(当目标语言是Verilog时)

过滤器输出端口的名称,指定为“filter_out”、字符向量或字符串标量。

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

生成的HDL代码中过滤器输出端口的数据类型,指定为以下之一:

  • “与输入数据类型相同”“std_logic_vector”,或“签署/无符号”(当目标语言为VHDL时)

  • “线”(当目标语言是Verilog时)

重置

全部展开

过滤器重置端口的名称,指定为“重置”、字符向量或字符串标量。使用ResetAssertedLevel属性来控制此端口的行为。

如果指定的值是目标语言中的保留字,编码器将添加后缀_rsvd取这个值。属性可以更新后缀值ReservedWordPostfix财产。详情请参见解决HDL保留字冲突

从移位寄存器中抑制重置的生成,指定为“没有”“ShiftRegister”.若要忽略移位寄存器中的重置信号,请将此属性设置为“ShiftRegister”.从移位寄存器禁用复位信号可以导致更有效的FPGA实现。详情请参见抑制复位逻辑的产生

复位输入信号的断言(有效)电平,指定为下列之一:

  • 高电平的-要在滤波器设计中重置寄存器,重置输入信号必须驱动高(1)。

    例如,这段代码检查是否重置在填充delay_pipeline登记。

    Delay_Pipeline_Process: PROCESS (clk, reset) BEGIN IF reset = '1' THEN delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0'));

  • “校验”-要在滤波器设计中重置寄存器,重置输入信号必须驱动低(0)。

    例如,这段代码检查是否重置在填充delay_pipeline登记。

    Delay_Pipeline_Process: PROCESS (clk, reset) BEGIN IF reset = '0' THEN delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0'));

寄存器的重置样式,指定为以下之一:

  • “异步”—编码器采用异步复位。HDL进程块在执行重置之前不检查活动时钟。例如:

    delay_pipeline_process: PROCESS (clk, reset) BEGINIF Reset_Port = '1' THENdelay_pipeline (0 To 50) <= (OTHERS =>(OTHERS => '0'));ELSIF Clock_Port'event AND Clock_Port = '1' THENIF clockkenable_port = '1' THENdelay_pipeline(0) <= signed(Fin_Port);delay_pipeline(1 TO 50) <= delay_pipeline(0 TO 49);如果;如果;END PROCESS delay_pipeline_process;

  • “同步”-编码器使用同步复位风格。在这种情况下,HDL进程块在执行重置之前检查时钟的上升沿。例如:

    delay_pipeline_process: PROCESS (clk, reset) BEGINIF rising_edge(Clock_Port) THENIF Reset_Port = '0' THENdelay_pipeline(0 To 50) <= (OTHERS =>(OTHERS => '0'));ELSIF clockkenable_port = '1' THENdelay_pipeline(0) <= signed(Fin_Port);delay_pipeline(1 TO 50) <= delay_pipeline(0 TO 49);如果;如果;END PROCESS delay_pipeline_process;

标识符和注释

全部展开

块节标签的后缀,指定为“_gen”、字符向量或字符串标量。此属性仅适用于目标语言为VHDL时。编码器将此后缀附加到VHDL的块节标签生成语句。

实例节标签的后缀,指定为“_gen”、字符向量或字符串标量。此属性仅适用于目标语言为VHDL时。编码器将此后缀附加到VHDL的实例节标签生成语句。

输出赋值块标签的后缀,指定为“outputgen”、字符向量或字符串标量。此属性仅适用于目标语言为VHDL时。编码器将此后缀附加到VHDL的输出分配块标签生成语句。

作为HDL时钟进程名的后缀,指定为“_process”、字符向量或字符串标量。编码器使用HDL进程块来修改过滤器中寄存器的内容。块标签由寄存器名和此后缀派生。例如,在下面的块声明中,编码器从寄存器名派生出进程标签delay_pipeline和默认后缀“_process”

delay_pipeline_process: PROCESS (clk, reset) BEGIN

过滤器系数名称的前缀,指定为多项式系数的、字符向量或字符串标量。编码器通过将特定于过滤器的特征附加到该前缀来派生系数名称。

过滤器类型 系数的名字
冷杉 编码器将系数数附加到CoeffPrefix,从1开始。例如,第一个系数的默认值是coeff1
信息检索

编码器将下列字符附加到CoeffPrefix

  1. 下划线(_)

  2. 一个b系数名称(例如,_a2_b1,或_b2

  3. _sectionN,在那里N是节号。

例如,第三部分的第一个分子系数的默认值为coeff_b1_section3

例如:

Firfilt =设计(fdesign.lowpass,“equiripple”...“FilterStructure”“dfsymfir”“SystemObject”,真正的);generatehdl (firfilt“InputDataType”15) numerictype(16日,...“CoefficientSource”“内部”“CoeffPrefix”“mycoeff”);

编码器将默认系数名称前缀替换为自定义值:

ARCHITECTURE rtl OF firfilt IS——本地函数——类型定义Type delay_pipeline_type IS ARRAY (NATURAL range <>) OF signed(15 DOWNTO 0);——sfix16_En15——Constants CONSTANT mycoeff1: signed(15 DOWNTO 0):= to_signed(- 159,16);——sfix16_En16 CONSTANT mycoeff2: signed(15 DOWNTO 0):= to_signed(- 137,16);——sfix16_En16 CONSTANT mycoeff3: signed(15 DOWNTO 0):= to_signed(444, 16);——sfix16_En16 CONSTANT mycoeff4: signed(15 DOWNTO 0):= to_signed(1097, 16);——sfix16_En16…

依赖关系

此属性仅在设置时应用CoefficientSource“内部”

复杂信号名称虚部的后缀,指定为“_im”、字符向量或字符串标量。看到使用复杂数据和系数

复杂信号名称的实部分的后缀,指定为“_re”、字符向量或字符串标量。看到使用复杂数据和系数

用于复制实体或模块名称的后缀,指定为“_block”、字符向量或字符串标量。编码器附加此后缀以解析重复的VHDL实体或Verilog模块名称。例如,如果编码器检测到两个具有名称的实体MyFilt,编码器命名第一个实体MyFilt第二个例子MyFilt_block

组件实例名的前缀,指定为“u_”、字符向量或字符串标量。

VHDL包文件名的后缀,指定为“_pkg”、字符向量或字符串标量。编码器通过将此后缀附加到筛选器名称来派生包名。此选项仅在设计需要包文件时适用。

保留字的后缀,指定为“_rsvd”、字符向量或字符串标量。中的字符向量或字符串标量指定的名称、后缀或标号值名称,值将参数配对到generatehdl.如果指定的值是目标语言中的保留字,则编码器将此后缀附加到该值。例如,如果你打电话generatehdl参数对“名称”,“国防部”时,编码器形成名称mod_rsvd在生成的过滤器代码中。看到保留词表

分割VHDL实体和体系结构代码,指定为“关闭”“上”.当此属性设置为“上”,编码器在两个单独的文件中生成过滤器的VHDL实体和体系结构代码。编码器通过附加后缀从筛选器名称派生文件名_entity而且_arch到基文件名。要指定自定义后缀值,请设置SplitEntityFilePostfix而且SplitArchFilePostfix属性。

VHDL体系结构文件名的后缀,指定为“_arch”、字符向量或字符串标量。

依赖关系

此属性仅在设置时应用SplitEntityArch“上”

VHDL实体文件名的后缀,指定为“_entity”、字符向量或字符串标量。

依赖关系

此属性仅在设置时应用SplitEntityArch“上”

向生成的HDL代码添加用户注释,指定为字符向量或字符串向量。用户注释出现在生成文件顶部的头注释块中,前面是特定于目标语言的前导注释字符。当您在用户注释中包含新行或换行时,编码器会为每一行生成单行注释。例如:

firfilt = dsp.FIRFilter;generatehdl (firfilt“InputDataType”15) numerictype(16日,...“UserComment”这是一条评论线。这是第二条线。”
过滤器的结果标题注释块firfilt如下:
-- ------------------------------------------------------------- -- -- 模块:firfilt——由MATLAB生成(R) 9.1和3.1滤波器设计高密度脂蛋白编码器。—生成于:2016-11-08 15:28:25—这是一条评论行。这是第二条线。-- -- ------------------------------------------------------------- -- ------------------------------------------------------------- -- HDL代码生成选项:- - - - -开发:硬件描述语言(VHDL)——名称:firfilt——InputDataType: numerictype(15) 1, 16日——UserComment:用户数据长度——GenerateHDLTestBench: 47  -- ------------------------------------------------------------- -- HDL实现:完全平行,折叠因素:1  -- ------------------------------------------------------------- -- 过滤器设置:- - - - -离散冷杉过滤器(真实 ) -- ------------------------------- -- 滤波器结构:直接形式冷杉,滤波器长度:2——稳定:是的——线性相位:是的(2型)——算术:固定——分子:s16, 15 - > [1 1 ) -- -------------------------------------------------------------

VHDL矢量信号名称的前缀,指定为“vector_of_”、字符向量或字符串标量。

提示

如果你使用这个函数fdhdltool要生成HDL代码,可以在“生成HDL”对话框中设置相应的属性。

财产 对话框位置

输入数据类型

输出数据类型

时钟使能输出端口

输入端口

输出端口

全局设置选项卡>港口选项卡
附加端口和标识符属性

顶部部分全局设置选项卡,全局设置选项卡>一般选项卡

看看主要的全局设置Tab和港口而且一般的标签全局设置选项卡。

版本历史

R2006a之前介绍

另请参阅

|

主题