提前一个flop的clock,又不影响其他flop的clock balance 请教怎样处理
时间:10-02
整理:3721RD
点击:
后端新手,遇到了这样一个问题 非常苦恼 请教各位大牛
因为有一个setup violation,所以希望将这个violation的前一级时钟提前0.5ns,这样这一级的周期就相当于长了0.5ns,造成的hold violation再去修补。 但是在实际中我用了disconnect_net 和connect_net将希望提前的clock对应的net连接到了clock tree的较前部分的一个buf上,这个buffer以前只有一个驱动一个负载,现在变成两个负载了。它的延时和原来后一级buffer的延时也都减小了,造成了很多clock 不balance了。刚刚接触这个不是很懂,希望大家指点一下。谢谢了
因为有一个setup violation,所以希望将这个violation的前一级时钟提前0.5ns,这样这一级的周期就相当于长了0.5ns,造成的hold violation再去修补。 但是在实际中我用了disconnect_net 和connect_net将希望提前的clock对应的net连接到了clock tree的较前部分的一个buf上,这个buffer以前只有一个驱动一个负载,现在变成两个负载了。它的延时和原来后一级buffer的延时也都减小了,造成了很多clock 不balance了。刚刚接触这个不是很懂,希望大家指点一下。谢谢了
自己顶一下 先 省的沉了
提前0。5ns,好大阿。你要的效果不就是增大skew么
macro model is a perfect option
是想借前一级的时间
想借用,就要首先看看前一级是否允许你借那么多时间。
不到万不得已,不要使用这个方法,一般做到顺序是
1)检查前级是否有0.5ns的setup余量
2)分析clock tree,从哪一级可以减少0.5ns
3)那一级CTS buffer的物理位置,是否与FF足够近
4)比较远时,要从CTS的再前1或2级开始,为那个FF,做一个单独的clock tree
5)自己做的clock tree的第一个buf要尽量贴在它的driver附件,而且要选input pin load小的buf
陈小编回答的真细
为这个FF单独build一条buffer tree
陈总 透彻啊
远的也可以用multi driver 试试
小编,请教下怎么单独做tree?我觉得还不如直接设个float pin再重新做cts。
请问怎么单独个一个FF做buffertree啊。谢谢