set_clock_balance_points \
-delay 20 \ # 目标延迟值:希望这些 end_pins 的延迟为 20ps
-balance_points end_pins \ # 平衡对象:时钟树的末端引脚(如寄存器的 CK、ICG 的 CP 或 EN 端)
-clock xx \ # 指定要平衡的时钟(如 CLK_CORE)
-offset 0 # 偏移量:在目标延迟上额外增加 0ps
参数 含义
-delay 20 设置目标延迟(单位通常是 ps)。所有被指定的 end_pins 都会尽量被调整到 delay + offset 的延迟值。
-balance_points end_pins 指定对时钟的末端引脚进行平衡。end_pins 是关键关键字,通常指寄存器的 CK 引脚或 ICG 的 CP 引脚。
-clock xx 指定针对哪个时钟进行操作。
-offset 0 在目标延迟值上增加一个偏移。如果 -delay 20,-offset 10,则目标延迟为 30ps。
命令 作用
set_clock_latency 直接指定延迟值(不优化)
set_clock_balance_points 指导 CTS 工具优化,使延迟满足设定值
set_clock_delay 设置时钟路径上的固定延迟增量
set_clock_balance_points 是一个 ICC2/PrimeTime 中用于手动微调时钟树延迟的命令,常用于修复 reg2icg 路径违例。通过增加 ICG 的时钟延迟,为数据信号留出更多时间。使用时要先分析违例,再精准设置,避免造成新的时序问题。