被指定的寄存器在综合中不会被优化掉
时间:10-02
整理:3721RD
点击:
在DC综合时,一个寄存器被优化掉了,导致后仿真时,有几个信号都是黄色的。但可以通过set compile_seqmap_propagete_constants false 这个命令保证被指定的寄存器在综合中不会被优化掉。但是有这个必要吗?我可不可不要管被优化掉的寄存器呢
为什么这个寄存器被综合掉?
我遇到的情况中寄存器被综合掉是由于寄存器没有被使用到,如果你遇到的也是这种情况,那么为什么要用一个没有使用到的寄存器来控制后面的逻辑呢?
因为这个是8bit reg 寄存器的最低位,因为一直为0,所以被优化掉了
可以不管,仿真信号是黄的说明信号不存在,没有驱动
一般来说这种优化不影响逻辑功能
如果你能确认逻辑功能正确,就不用管,管了反而站更多的面积并影响性能
呵呵,谢谢楼上的回复,给力呀
综合后要做个formality,就可以确定前后逻辑功能是否正确了。
楼上说的对,综合后一定要做形式验证,首先要保证DC后的logic function正确
DC工具在optimization logic时,remove/increase一些Cell,很正常,也可以暴露出RTL编写过程中的一些问题
应该是没有用到,就给优化掉了
laikankan
受教了,谢谢
学习了!