1.parameter方法
首先有这样一个模块
module half_adder(co,sum,a,b);
output co,sum;
input a,b;
parameter and_delay = ;
parameter xor_delay = ;
and #and_delay u1(co,a,b);
xor #xor_delay u2(sum,a,b);
endmodule
1.1 defparam方法(Altera)
module top (...);
input....;
output....;
defparam u_halfadder.and_dealy = 10,u_halfadder.xor_dealy = 10;
half_adder u_halfadder(...);
endmodule
1.2 例化时代入(Xilinx)
module top (...);
input....;
output....;
half_adder #( , 20) u_halfadder (...);
endmodule
2.include方法
M95XXX_Parameters.v 参数定义文件
ref.https://www.cnblogs.com/undermyownmoon/p/7628731.html
`define MEM_ADDR_BITS 11 //memory address bits
`define PAGE_ADDR_BITS 6 //page address bits
M95xxx_Driver.v 驱动文件
`include "M95XXX_Parameters.v"
reg[`MEM_ADDR_BITS-1:0] memory_address;
reg[`PAGE_ADDR_BITS-1:0] page_address;