时序分析 Timing Analysis
时序分析回答的是:数据能否在规定的时钟边沿前后稳定到达。路径延迟最终来自门延迟与互连延迟,而门延迟可以从 CMOS 的 RC 模型 建立直觉。
一条同步路径
典型寄存器到寄存器路径由发射触发器、组合逻辑和捕获触发器组成。
两类检查
Setup 检查数据是否来得及到达;Hold 检查数据是否不会过早改变。二者使用不同的极值条件。
建立时间与保持时间
忽略 skew 与 jitter 时,建立时间约束可简写为:
保持时间约束可简写为:
| 检查 | 关注路径 | 常用分析角 | 典型修复 |
|---|---|---|---|
| Setup | 最大延迟 | 慢角 | 降频、优化逻辑、流水线 |
| Hold | 最小延迟 | 快角 | 增加延迟单元、调整时钟树 |
验证侧如何观察
在门级仿真中,可以借助 SDF 回标观察延迟行为;在 RTL 验证中,更常见的是检查协议时序和周期级约束。
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
页面导航
- 上一篇:CMOS 基础
- 下一篇:SystemVerilog 基础语法
- 相关笔记:示例项目