【Verilog】常量声明——parameter

1.Verilog常数声明:

parameter xx = yy;

`define XX YY

parameter 作用于声明的那个文件;`define 从编译器读到这条指令开始到编译结束都有效,或者遇到`undef命令使之失效。如果想让parameter或`define作用于整个项目,可以将如下声明写于单独文件,并用`include让每个文件都包含声明文件:

`ifndef xx

`define xx yy // or parameter xx = yy;

`endif

状态机的定义可以用parameter 定义,但是不推荐使用`define 宏定义的方

式,因为'define 宏定义在编译时自动替换整个设计中所定义的宏,而

parameter 仅仅定义模块内部的参数,定义的参数不会与模块外的其他状态机

混淆。

2.parameter 和 localparam

parameter可用作在顶层模块中例化底层模块时传递参数的接口,localparam的作用域仅仅限于当前module,不能作为参数传递的接口。

3. define,是宏定义,全局有效。则在整个工程都是有效

parameter,参数,可以由调用者修改参数值。

localparam,本地参数,调用者不可修改。

你可能感兴趣的:(【Verilog】常量声明——parameter)