# 阶段五：物理实现与功耗（19–22）

现有 Genus 结果没有读取 LEF，没有布局布线、寄生提取或多角 setup/hold 验证。以下讲义包含计算题和物理实验步骤；物理实验只有在配套、可用且获授权的数据具备后执行。tutorial.lib 的逻辑综合结果不能拼接成真实工艺实现结论。

## 19：实现输入与 floorplan

### 目标和讲解

逻辑网表说明连什么；物理数据说明单元多大、引脚在哪里、可以怎么布线；时序和 RC 数据说明这些连接在各条件下的代价。

| 输入 | 用途 | 缺失的影响 |
|---|---|---|
| 映射网表 | 逻辑连接与单元实例 | 无实现对象 |
| Liberty 角集合 | 单元时序与功耗 | 无可靠角分析 |
| 技术 LEF | 金属层、过孔、布线规则等抽象 | 无合理的布线技术定义 |
| 单元 LEF | 尺寸、引脚与阻挡 | 无可放置的物理单元 |
| 工艺 RC 数据 | 互连寄生模型 | 布线延迟缺乏依据 |
| SDC 与 MMMC 设置 | 时钟、接口及分析场景 | 可能分析错误问题 |
| tap/endcap/电源规则等 | 工艺实现要求 | 无法满足相应物理要求 |

floorplan 定义核心区、端口、宏单元、电源结构和可用空间。利用率提高会减少面积，但可能增加拥塞、绕线、buffer 和修复难度。模拟宏单元周围的数字活动、引脚位置、供电与衬底耦合也需要统筹。

计算题：假设单元面积合计 10000 μm²，目标初始利用率 60%，则简单核心面积估算为 16666.7 μm²，正方形边长约 129.1 μm。它未包括电源、宏单元、阻挡、CTS/修复新增单元和规则开销。当前教学库的 440.500 未确认可换算为真实 μm²，不代入真实芯片尺寸结论。

### 练习与验收

先列出实际可用输入与来源，再决定能否运行 Innovus。若具备数据，在独立 batch job 中导入、floorplan、放置，并保存工具版本、场景及结构检查。若不具备，提交计算与缺失数据表，物理实验保持“未执行”。

## 20：CTS、skew 与 jitter

### 目标和讲解

理想时钟模型省略了分布网络。CTS 使用时钟单元建立实际网络，控制到各 CK 引脚的插入延迟、偏斜、slew、负载与其他目标。CTS 后通常需要相应的 propagated-clock 分析，避免沿用与物理时钟矛盾的理想假设。

skew 是不同接收点的相对到达差；jitter 是边沿随时间的变化。工具 uncertainty 的组成应按阶段定义，不能把 CTS 已分析的确定偏斜再次全部作为同样的裕量重复扣除，也不能把 jitter 全删掉。

正 skew 在简化模型中帮助 setup、损害 hold。例子：某路径原 setup slack=0.10 ns、hold slack=0.06 ns；只有相对 skew 增加 0.08 ns、其他保持不变，新的 setup=0.18 ns、hold=−0.02 ns。

门控时钟用于减少无效切换，但直接 `clk & enable` 可能在时钟高电平期间改变输出，产生窄脉冲。工艺门控单元和正确的控制时序用于避免该风险。第 01 课使用寄存器使能学习保持/更新，不直接引入自制门控时钟。

### 练习与验收

用公式解释 CTS 为什么可能让 setup 好了但 hold 坏了。具备数据时检查 CK 路径、skew、slew、门控检查及 min/max timing；不只看总线上的“时钟看起来是 50 MHz”。

## 21：布线、寄生与修复

### 目标和讲解

放置改变距离，布线决定真实连接，提取获得 R/C。路径延迟可能由逻辑级数、驱动能力、高扇出、长线、拥塞绕行或耦合共同决定。

setup 修复前先看 cell/net delay 比例：逻辑太深可重构或流水化；长线可调整布局与引脚；高扇出可缓冲或复制驱动逻辑；更大单元需评估前级负载与功耗。流水化改变延迟和协议，要回到规格与验证。

hold 修复常在必要的数据路径加延迟或调整相对时钟到达，具体位置与角须由实现工具分析。降低主时钟频率通常不直接解决 hold。插入延迟还可能恶化 setup，所有修复需复查两类分析。

计算题：t_cq,max=0.10 ns、cell delay=0.60 ns、原 wire delay=0.10 ns，setup=0.10 ns、uncertainty=0.10 ns、T=1.0 ns、skew=0，原 slack=0。布线后 wire delay=0.35 ns，新 slack=−0.25 ns。说明逻辑网表不变仍会出现违例。

### 练习与验收

给一条假想负 slack 路径写修复优先级，指出每个选项的代价。具备数据时比较放置前/后、CTS 后、布线后的同类报告，确认分析角与时钟模型一致，再解释差异。修复后需重新检查功能、max/min timing 和必要的结构/物理检查。

## 22：功耗活动与模拟电路邻居

### 目标和讲解

CMOS 动态功耗近似 `P=α×C×V²×f`，本课 α 定义为每时钟周期的平均 0→1 充电次数。若使用另一种统计翻转次数的定义，需要对应调整系数。还有内部功耗、短路分量和漏电，不能只算负载电容。

假设等效 C=10 pF、V=1 V、f=50 MHz、α=0.1，则负载动态功耗近似 50 μW。将 α 降到 0.01，近似降到 5 μW；不代表总模块功耗同比下降，因为时钟树和其他单元仍可能切换。

综合功耗需要代表性活动、库数据和分析场景。没有活动文件时的默认 toggle 假设可能偏离 SPI 长时间空闲的实际应用。内部组合毛刺、输入变化和时钟本身都可能贡献功耗。

对模拟电路还要评估：数字更新的供电电流瞬态、地弹、耦合、配置输出毛刺、启动顺序和敏感采样窗口。safe_update 只约束更新时机；噪声幅度、模拟稳定时间和供电完整性需要相应的电路/版图证据。

### 练习与验收

分别定义 idle、连续 SPI、频繁配置提交三种活动场景。估算负载动态功耗并解释假设，再给模拟接口写一张稳定时间/允许噪声/更新窗口需求表。具备授权库和活动分析条件时才给出工具功耗结果，并列明遗漏项。

## 阶段验收

通过所有计算和数据依赖检查即可完成理论部分。物理实验验收必须有真实导入、放置、CTS、布线、寄生和角分析证据；数据缺失时明确标为未完成，不用教学估算代替。答案见 [19–22 参考](07_answers.md)。
