时序分析 Timing Analysis

时序分析回答的是:数据能否在规定的时钟边沿前后稳定到达。路径延迟最终来自门延迟与互连延迟,而门延迟可以从 CMOS 的 RC 模型 建立直觉。

一条同步路径

典型寄存器到寄存器路径由发射触发器、组合逻辑和捕获触发器组成。

两类检查

Setup 检查数据是否来得及到达;Hold 检查数据是否不会过早改变。二者使用不同的极值条件。

建立时间与保持时间

忽略 skew 与 jitter 时,建立时间约束可简写为:

保持时间约束可简写为:

检查关注路径常用分析角典型修复
Setup最大延迟慢角降频、优化逻辑、流水线
Hold最小延迟快角增加延迟单元、调整时钟树

验证侧如何观察

在门级仿真中,可以借助 SDF 回标观察延迟行为;在 RTL 验证中,更常见的是检查协议时序和周期级约束。

latency_property.sv
property req_to_gnt;
  @(posedge clk) disable iff (!rst_n)
    req |-> ##[1:3] gnt;
endproperty
 
assert property (req_to_gnt);

这里的 ##[1:3] 是周期范围,不等同于物理设计里的纳秒级路径延迟。更多语法见 断言小例子

复习任务

  • 区分 setup violation 与 hold violation
  • 加入 clock skew 重新推导约束
  • 梳理 false path 和 multicycle path

页面导航