时序面试问题
时间:03-14
整理:3721RD
点击:
set_mutlicycle_path 中 setup和hold需要分开设置,默认情况下hold检查沿为setup检查沿的前一个有效时钟沿,但是实际hold需要检查launch
沿,因此如setup设为5,则hold应设置为4
沿,因此如setup设为5,则hold应设置为4
一点不够形象,简单的说setup是检查该时序单元采集前一个周期来的数据需要的最小时间,而hold是指采集到本周期的数据后还需要继续保持的时间,那么从底层电路去分析为什么需要setup和hold时间呢?我们知道触发器由两级latch组成,每一个latch前有一个时钟控制的传输门,如果是上升沿DFF,第一个latch是低电平,而第二个就是高电平,在低电平期间第一个latch打开,数据进入并锁定,在上升沿之前,数据需要进入第一个latch锁定,并在上升沿由第一个latch传送到第二个latch,这就是setup 时间,即数据进入第一个latch并锁定需要的时间,hold时间是指数据从第一级到第二级latch反馈稳定的时间,也就是数据在第二级锁定需要的时间。
谢谢你的补充,不过我讨论的是综合时的时序约束问题哦