Timing eco 中 setup hold 互卡的小tip

timing eco 中出现setup hold 互卡的情况。 导致的因素很多,解法也很多。这里只说一下刚刚我解setup 互卡的做法。

某一条path worst corner setup 100ps best corner hold -40ps ,加着timing derate 我稍微给setup data path 垫一个cell 进去就导致setup 坏了但是 hold好了。 setup hold 互卡。

我不想动clocktree 这样影响太大,也不想insert cell ,我只想在data path上通过size cell 来解决。

如图 setup 约束了最大延时 hold 约束了path 最小延时, 只有delay timing window处于这两个之间才能保证 setup hold 都正常。 除此之外timing derate , clock skew , cell late early delay 差 等都会吃这个timing window 。 最后的timing window 可能很小就是绿色部分。

我要在cell late early delay 上扣资源。 hvt rvt lvt ulvt 中 hvt 的late early delay 差别最大。 ulvt delay 差别最小

transition 越大同一个cell 算出的 delay early late 差别越大。

所以我可以在data path 上size up cell 和 change lvt ulvt 来拉近late early delay 的差别。 从而拉大这个setup hold 互卡的timing window .

从而解掉这个timing issue。 用leckage power和 面积来换时序。
注意点: eco 过程中时刻要注意transition 的变动。

2 个赞