set_ideal_network 和 set_dont_touch_network

set_ideal_network 把整条network mark 成ideal 属性的 , ideal 属性的network tool 计算延时为0 可以穿过buffer inv 等一个输入一个输出的 combinational cell 会停留在 reg 的CK 端口(无法穿过sequential arc)

set_dont_touch_network 阻止工具给整个network sizeup/sizedown 或者insert buffer 。 但是整条network 有延时 可以穿过buffer inv 等一个输入一个输出的 combinational cell 会停留在 reg 的CK 端口(无法穿过sequential arc)

set_dont_touch_network 和 set_idel_network 在穿过 多输入的combination cell 有区别。
如图
如果A pin 有set_dont_touch_network 属性 B pin 没有 A set_dont_touch_network 可以穿过C 使得C 后面都是set_dont_touch_network 属性

如果A pin 有set_ideal_network 属性 B pin 没有 A 不可以穿过C C 后面都将是非ideal 的。

所以常说set_dont_touch_network 会乱穿。

但是当使用-no_propagate option 后这两个命令都不会穿过cell

2 个赞