由于PT时序分析时对一些既有SDN又有RDN的寄存器,总是会分析RDN与SDN的时序关系,导致出现违例。我在综合时使用set_dont_use语句指定了不再使用同时具有SDN与RDN的寄存器。根据以前的设计,我认为这些代码会被综合成只有SDN的寄存器,结果出现问题了。
在插入DFT时报告warning:target liabary contains no replacement for register…… 然后根据报告的寄存器观察DC综合的图形,发现确实该寄存器没有匹配的器件。然而这些寄存器正是之前set_dont_use涉及到的寄存器。
为什么会出现这种情况呢?是set_dont_use使用方式不对?还是应该添加其他的约束呢?