Verilog中参数化信号复位置0的写法
当前面有对某信号位宽进行参数化设定: parameter ADDR_WIDTH = 3
,然后后面又需要对该信号初始化时,可以这么写:
always @(posedge sys_clk or negedge sys_rst_n) begin
if(!sys_rst_n)
wr_ptr <= {ADDR_WIDTH{1'b0}};
else if(wr_en && !full)
wr_ptr <= wr_ptr + 1'b1;
else
wr_ptr <= wr_ptr;
end
or
always @(posedge sys_clk or negedge sys_rst_n) begin
if(!sys_rst_n)
wr_ptr <= 'b0;
else if(wr_en && !full)
wr_ptr <= wr_ptr + 1'b1;
else
wr_ptr <= wr_ptr;
end
这两种写法都ok