verilog 上下边沿同时触发 可综合代码实现

2024-11-20 06:26:57
推荐回答(3个)
回答1:

从语法上看,一个触发器在两个process 里面赋值是不可综合的
其次,在FPGA里面,有双沿触发的触发器吗?没有吧,所以即使可以综合,最后map的时候也会报错。
要么用沿检测实现,但是这时就不能叫“上下沿都触发了”。

回答2:

这个active_row_en很有问题它可能会有很多的毛刺,并非是真正的上沿和下降沿,再一个如此设计会导致触发器所用时钟彼此不一致,应该用系统的时钟做一个上升沿检测和一个下降沿检测!

回答3:

active_row[cnt1]不可以在两个always块中都赋值,会报错的。
你可以试试不加posedge和nededge ,就是 always @(active_row_en),这样只要active_row_en值变化就触发。