您的位置:首页 > 其它

Verilog语法学习之(1)——改写覆盖参数

2012-11-29 23:59 323 查看
 

参考:Verilog HDL数字设计与综合(第二版) Samir Palnitkar

Section 9.2 改写(覆盖)参数

传递的参数是子模块中定义的parameter。
传递的方法:
1、module_name #( parameter1, parameter2) inst_name( port_map);
2、module_name #( .parameter_name(para_value), .parameter_name(para_value)) inst_name (port map);

建议使用第二种命名的参数传递,减少产生错误的机会!

Example:

//带参数的模块
module bus_master;
...
parameter delay1 = 2;
parameter dealy2 = 3;
parameter delay3 = 7;
...
endmodule;

//顶层模块
module top;

...
bus_master #(4, 5, 6) b1();    //b1: delay1 = 4, delay2=5, delay3=6;
bus_master #(9,4) b2;    //b2: delay1=9, delay2=4, delay3=7(未修改)
bus_master #(.delay1(4), delay3(9)) b3; //b3:delay1=4, delay2=3(未修改), delay3=9
...
endmodule
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: