1,异步复位的实现:
`timescale 1ns/1ns
module d1(
input c,
input d,
input r,
output q);
reg a;
assign q = a;
always @(posedge c or posedge r)
if(r)
a <= 0;
else
a <= d;
endmodule
2,同步复位的实现
`timescale 1ns/1ns
module d2(
input c,
input d,
input r,
output q);
reg a;
assign q = a;
always @(posedge c)
if(r)
a <= 0;
else
a <= d;
endmodule
3,总结:
a,其实就是复位信号要不要写到always的敏感表里面的问题了。
b,在Virtex的器件中FDC异步触发器【D Flip-Flop with Asynchronous Clear】,FDR同步触发器【D Flip-Flop with Synchronous Reset】,上面的代码用Synplify或ISE综合一下就可以看出来。
本文介绍了在Verilog中实现异步复位与同步复位的方法,并通过具体代码示例进行说明。异步复位将复位信号置于always块的敏感列表中,而同步复位则不这样做。此外,文章还提到了在Virtex器件中使用的异步和同步触发器。
2813

被折叠的 条评论
为什么被折叠?



