发布网友 发布时间:2024-10-24 09:44
共3个回答
热心网友 时间:2024-11-09 17:15
一:用一个always将信号锁存2次,然后判断这个信号的上升沿
assign RiseEdge = (~RegDelay1) & RegDelay0 ;
具体怎么操作,网上有很多
二:在用一个always,产生一个锁存器,只要有这个上升沿,搞个FLAG置1
三:再用一个always去计数
热心网友 时间:2024-11-09 17:12
always @(posedge clk)
if (a)
buf1<=1;
else
buf1<=0;
always @(a)
if (buf1==0)
cnt++;
大概的思路。。。
写两个always块,其中一个是只要a有变化就触发的,a不是上升就是下降,用buf来判断。。
不知道实例和综合的时候会不会出问题。。。
热心网友 时间:2024-11-09 17:09
上升沿检测电路:
always@(posedge clk) begin
d1 <= in;
d2 <= d1;
end
assign edge=~d2 & d1;