在时序路径中插入buffer的效果,菜鸟觉得有点小矛盾
然而,我们又知道在时序路径中“断点插buffer”,目的是加快该路径上的信号传输速度。
那么,在时序路径中插入buffer到底是减缓了数据传输呢还是加快了呢?我都搞糊涂了。
看情况的 如果这个地方有transition 比较大 插buff会改善transition 所以delay 变小,如果插之前之后都不存在transition问题 那么就是增加delay
去搜索以前的帖子
Thanks very much !
我也是菜鸟 看以前帖子 看到过你同样的提问我看帖研究 自己理解的就是
当你需要减小delay 的时候选择合适的buffer 这个buffer 能够减小 transition time和增加 load 能力来减小delay
而加入buffer 本身所带来的delay 远远小于插入这个buffer 所减小的delay
同样加入buffer 本身所带来的delay 远远大于插入这个buffer 所减小的delay的时候这个buffer 就起到增加delay的作用
不知道是不是这样理解
我的问题是
就以两个触发器 之间fix setup 或fix hold 时插buffer
到底buffer 增加 或减小的是 哪一个cell 的delay或者说是 net的delay在或者说是别的
共同学习
学习一下
我是这样理解的,出入buffer既可以用来增加走线延时也可以增加延时,具体看你怎么插入。比方说要减少一条走线的延时,我们是将走线等分成N份,也就是等间距插入buffer,这样延迟就会减小N倍(忽略buffer延迟的话)。要是想增加走线延时,将插入的多个buffer插在一起,也就是它们靠的很近,而且要插在走线的两端处(root 或者sink)。因为走线的延迟是和其长度的平方成正比的嘛
个人感觉,修setup还是hold应该还是看插入cell的特性,和不同path能够调节的余量,例如修setup,一般插入驱动大的buffer,inv来修,但是如果本身path上的tran,cap,noise,cell大小类型 都已经很理想,再插入buffer基本上没什么setup收益,反而可能会因为本身的cell delay带来额外的延时,这时可能就不是在data path上插buffer能搞得定的了。hold的话一般在有setup余量情况下,去插入驱动小的size小的buffer,inv,delay cell,去调节。依靠本身的delay 和带来的tran,cap等影响。一般这些cell驱动很差所以要放在靠近输出端,减小tran violation的可能
学习了
学习学习ing
您好前辈,比如想修hold一般就是在reg前插buffer,所以要靠近reg的输入端,而不是输出端。
您说的输出端是指在data path上的两个组合逻辑之间插buffer,要把buffer插在前级cell的输出端吗?一般用X几的cell?先进工艺,貌似也不建议用太小驱动的buffer
当然是加快。 buffer的数学意义是,把比如2阶的delay分割成了线性delay。