IC数字后端 | innovus如何控制tie cell的fanout和net length

在 innovus 里面,有时候我们需要控制 tie cell 的 fanout 和 net length,来避免 tie cell 可能出现 max transition 或者 max fanout 的违例,一般来说,只要 fanout 小于 8 就很少会出现max transition 或者 max fanout 的违例,当然有一些公司会有自己一些比较严格的要求,比如只要求 tie cell 的 fanout 只能是 1,或者他驱动的 net length 不能超过 50um,这个时候我们就需要在 flow 里面增加一些约束来满足这个要求。同时如果有这种要求的情况,我们就不能让前端在综合的时候就插入 tie cell,需要把综合阶段的 tie cell 设置成 dont use,这个留给我们后端自己插就可以,如果前端已经在网表里面插入了 tie cell,那么就需要在我们插 tie cell 之前,用deleteTieHiLo 把设计里面的 tie cell 都删除掉,不然网表里面自带的 tie cell,innovus 是不会去按照我们的要求重新优化的。

而如果想要控制 tie cell 的 fanout,我们只需要增加 setTieHiLoMode -maxFanout 选项去指定需要的数值即可,比如想要控制 fanout 为 1,那么就设置 setTieHiLoMode -maxFanout 1 就可以,后面加 tie cell 的时候就会按照你的这个约束去加。

同时如果我们想要控制 tie cell 的 net length 为 50um,我们可以增加 setTieHiLoMode -maxDistance 50 来实现,工具就会在需要加 tie cell 的 cell 附近 50um 内加 tie cell,如果即想指定 net length 也想指定 fanout,只需要把上面两个选项加在一起,在 addTieHiLo 完成设置即可,工具就会按照我们设置的要求实现我们加 tie cell 的要求。

有关实操细节可以关注“吾爱IC社区”或者联系微信号:ic-backend2018咨询
IC数字后端 | innovus如何控制tie cell的fanout和net length_第1张图片

你可能感兴趣的:(后端,fpga开发,硬件工程)