大家都知道Synopsys搞了个业界公认的signoff工具primetime,IC码农们都用他来检查setup/hold/min_pulse/min_period等违例,这些个检查都是在有SI影响的前提下进行的,可能过于悲观。那么,如何最大程度的使工具减少不必要的SI悲观度呢?这个小编在这给几个常用的方法:
1 设physical_exclusive, 这个是大家最常用的,比如两种功能时钟不会同时出现,那么物理上是没必要让Aggressor 和victim上同时出现这两个时钟的arrival window的
2 设timing_enable_auto_mux_clock_exclusivity, 这个变量能够让工具在分析时自动去推断mux后面的点如何处理 I0/I1 的时钟关系,当然它会在特定的条件下才成立,比如select不为静止,两端入口必须为时钟,clock不能定义在mux output等等
3 Set_case_analysis static, 这个是当你知道某一类信号为静止的时候,比如特殊场景的IO和测试信号,选通信号等可以设置,这样他就不会作为aggressor 去干扰别人了
4 还有一些设置包括all_path_edge的边沿分析timing window 法,hyperscale去除子模块和顶层差异化防止子模块过修法,下次慢慢道来