有两个脉冲,我要在一个脉冲有上升沿触发的条件下才计数另一个脉冲,用verilog hdl写,有思路就可以,谢谢

如题所述

一:用一个always将信号锁存2次,然后判断这个信号的上升沿
assign RiseEdge = (~RegDelay1) & RegDelay0 ;
具体怎么操作,网上有很多
二:在用一个always,产生一个锁存器,只要有这个上升沿,搞个FLAG置1
三:再用一个always去计数
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-18
always @(posedge clk)
if (a)
buf1<=1;
else
buf1<=0;
always @(a)
if (buf1==0)
cnt++;
大概的思路。。。
写两个always块,其中一个是只要a有变化就触发的,a不是上升就是下降,用buf来判断。。
不知道实例和综合的时候会不会出问题。。。
第2个回答  2013-04-18
上升沿检测电路:
always@(posedge clk) begin
d1 <= in;
d2 <= d1;

end
assign edge=~d2 & d1;
相似回答