我了解always @(posedge clk)
在verilog中是触发器。
input ld;
reg ld_r;
always @(posedge clk) ld_r <= #1 ld;
#1
上面的代码做什么?我在AES的verilog代码中找到了它。我在下面添加了一个代码片段:
always @(posedge clk)
if(!rst) dcnt <= #1 4'h0;
else
if(ld) dcnt <= #1 4'hb;
else
if(|dcnt) dcnt <= #1 dcnt - 4'h1;
always @(posedge clk) done <= #1 !(|dcnt[3:1]) & dcnt[0] & !ld;
always @(posedge clk) if(ld) text_in_r <= #1 text_in;
always @(posedge clk) ld_r <= #1 ld;
由于您提到always @(posedge clk)
推断触发器,因此我假设您有兴趣了解#1
硬件中的综合内容。答案是:什么都没有。
这些延迟在综合中将被忽略,因此,如果在设计代码中使用它们,则会冒仿真与硬件不匹配的风险。
这是一篇描述您为什么要添加延迟的论文:http : //sunburst-design.com/papers/CummingsSNUG2002Boston_NBAwithDelays.pdf
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句