请教寄存器复位reset值的问题
时间:12-12
整理:3721RD
点击:
asic中给寄存器赋的reset初值有没有什么讲究?
比如下面代码中,dout的复位值是否一定要做成全0?
还是随便置成什么数值都可以呢?
always@(posedge clk or negedge rst_n)
if(!rst_n) dout <= 4'd0;//必须全0值?还是4'b1001之类的也可以?
else dout <= din+4'd1;
比如下面代码中,dout的复位值是否一定要做成全0?
还是随便置成什么数值都可以呢?
always@(posedge clk or negedge rst_n)
if(!rst_n) dout <= 4'd0;//必须全0值?还是4'b1001之类的也可以?
else dout <= din+4'd1;
随便
感觉“随便”的话是不是有点不符合“复位”的真谛啊?
另,以前用fpga的时候,
遇到过counter复位到全0值就能工作、复位到非全0值就乱蹦的情况,
当时一直也没搞懂是哪里弄错了 >_<
仿真跑跑一般能跑出来