请问负的hold时间和建立时间一般由什么引起的?
1. 到底是那些原因引起了setup和hold time是负的呢?
2. 负的话对设计有什么影响么?
3.一般的设计建立时间和保持时间是不是都为正呀?
请问负的hold时间和建立时间一般由什么引起的?
Unless you are using 90nm or deeper, typically setup and hold time should
be positive. Some high-speed cells, for example scanable flipflops, can
be built to have negative setup and hold margins. It is to satisfy timing
requirements easily.
The latest version of primetime and VCS are able to handle negative values,
hence it is not a problem for netlist simulation.
是不是和电路前面的延迟时间有关啊
不太明白
问题不清楚啊
NVIDIA面试官问我同一个问题:有没有负的建立时间setup time 和hold time ?这又代表了什么含义
负的setup 和 hold time 还是比较好理解的。
讨论一下setup time violation 的形成---因为信号比clock 后到达DFF,或者说到达的时间太晚了,这个时候这个DFF就没有办法采样到这个信号,于是就出现了slak。
假设你对一个DFF做优化,你会怎么做?---打包这个DFF,假设为DFFA。在DFFA中把clock加delay,再连接到原DFF。这样你的信号就可以走的慢一点,慢到比clock还慢都没有问题---而这个时候setup time 就被你给优化到负的值了。同样的可以解释负的hold time。
学习!
可以看看timing那本书,很好的!这个论坛就能够下载!
学习了。
学习一下~
实际上综合的时候对时钟网络也进行了优化的话,时钟网络中被自动的插入了大量的buffer,这样就产生了负的setup and hold time
建立时间是正的,保持时间是负的,好像是的
7楼解释的不错,
另外现在有些lib的holdtime本来就是负的,楼下继续解释哈
negative value in setup or hold time doesn't mean the dealy is
"negative". It is for timing check only.
The value depends on how do you characterize and make your cell timing
model.
"For user, you dont need to care".
7楼正解
在学习一下
看看。
