设计中时钟沿的问题
时间:10-02
整理:3721RD
点击:
请问各位大虾:我设计电路时,是否可以同时使用@(posedge en or posedge clk) 和@(posedge en or negedge clk)?这样用时否会对综合产生影响?
急切盼望指导
急切盼望指导
一般不这么设计呃,你这个就相当于两个时钟信号控制一个进程,好像这么设计编译也不会通过,其实可以只判断时钟clk的边沿,而使能信号en上升沿可以用一个内部寄存器en_reg来判定,就是说用一个时钟节拍暂存一下en信号 en_reg <= en,然后判断这个寄存器和en信号的状态,如果en='1' and en_reg='0' 就表明这个上升沿行为发生
一个进程只能由一个边沿触发
那我一个进程采用时钟的上升沿,另一个进程使用时钟的下降沿行吗,综合的时候会不会有问题呢?
望赐教!谢谢……
这个说法就不对了 兄台~ 可以使用两个不同的信号的边缘触发啊~
同时使用上升沿和下降沿不好吧!
同时使用时钟的上升沿和下降沿岂不是相当于将系统的时钟频率高到了原来的两倍?
不建议设计中使用双边沿触发,第一个双边沿触发频率就是原来的2倍,一些约束可能就有问题 ;第二对于时钟对上升沿jitter的补偿之类的而下降沿没有,所以使用双边沿可能造成问题
没见过这种风格啊,是不是要库的支持呢
既然是设计电路,就是希望最终映射到FPGA内部实现的,FPGA内部的触发器可是不支持这种写法,因此是不能综合的。
在同一个进程中同时使用时钟的上升沿和下降沿,可以综合出DDRIO的硬件,但是这个只在IO上有。
在不同的进程中分别使用同一个时钟的上升沿和下降沿,应该是可以的。只是要做好约束和时序收敛。
