Verilog语法学习之(1)——改写覆盖参数
参考: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

浙公网安备 33010602011771号