综合约束命令group_path的理解

定义

设计的时序路径分组,叫做path groups。
默认,每个时钟域对应一个path group。

特点

  • DC综合时序优化,每个path group,先优化关键路径(即最差的时序路径),然后才会优化接下来最差的时序路径。
  • 关键路径找不到优化解决方案,就会报告时序违反;也就是说关键路径没有达到时序满足,不会优化其它违反的时序路径。

意义

利用group_path命令,可以控制时序优化的目标范围。

比如最开始不确定input_delay的需求,可以设置input-to-register paths为一个单独的path group;从而使得DC综合工具可以时序优化register-to-register paths。下例,是把input_delay/output_delay/reg-to-reg分成三组。

The command for grouping paths is group_path. For example,
dc_shell> create_clock -name CLK -period 1.67 [get_ports CLK
dc_shell> group_path -name INREG -from [all_inputs]
dc_shell> group_path -name REGOUT -to [all_outputs]
dc_shell> group_path -name INOUT -from [all_inputs] -to [all_outputs]

这样设置约束后,所有的input-to-register pathsregister-to-output paths时序发生违反,都不会影响register-to-register paths的路径时序优化。
这里写图片描述

相关命令

  • report_timing,会分成相应的path group进行报告。
  • report_path_group,会报告当前的path group。
  • remove_path_group,会移除指定的path group。
  • group_path可以设置权重,-weight,以达到重点优化指定的path group。默认权重都是1。
  • group_path可以设置优先级,-priority,目的是有重合的path,根据priority决定隶属。如果不设置,按顺序靠前的path不会被后面的path所覆盖。

参考文档

  • tcoug.pdf ,Synopsys Timing Constraints and Optimization User Guide

猜你喜欢

转载自blog.csdn.net/u011729865/article/details/79350388