在verilog模块化设计中,有时候需要在顶层对底层定义的参数做修改,这就涉及到一个参数在模块间传递的问题,一般方法有2种。
假设: 顶层模块定义: mod_top(rst,clk,data);
底层模块定义: mod(rst,clk,data);
底层参数定义: parameter FREQ = 1000;
模块例化名: U1
目的: 通过顶层传递一个新的参数给底层来改变FREQ的值。
方法1: defparam定义法
在verilog模块化设计中,有时候需要在顶层对底层定义的参数做修改,这就涉及到一个参数在模块间传递的问题,一般方法有2种。
假设: 顶层模块定义: mod_top(rst,clk,data);
底层模块定义: mod(rst,clk,data);
底层参数定义: parameter FREQ = 1000;
模块例化名: U1
目的: 通过顶层传递一个新的参数给底层来改变FREQ的值。
方法1: defparam定义法