处芯积律 UPF 功耗意图实践(UPF)
围绕低功耗设计中的 UPF 意图描述与验证,训练功耗域建模与场景化分析能力。
/project/upf_netlist_soc/
UPF 项目训练低功耗中的功耗意图描述与验证:电源域、隔离单元、开关控制须与 RTL 行为、场景脚本一致。目标是建立功能仿真通过之外的第二视角——功耗策略是否在场景中生效并可审计。
导读:这是什么 · 能学什么 · 怎么学
一、这是什么项目?
实践在个人副本中进行,只读母本路径见本页命令区;常与 netlist、UPF、TB 结合的仿真流。
需同时维护功能波形心智与功耗域状态心智;二者不一致时优先查约束与场景顺序。
下图将功能路径与功耗意图层并置;具体域名以工程 UPF 为准。
二、能学到什么?
按功耗架构 / UPF 约束 / 场景化验证拆解。
功耗架构认知
- 电源域划分 rationale:为何如此切域、上下游供电关系。
- 常开逻辑与可关断逻辑边界;复位域与供电域交叉处。
- 低功耗场景与功能场景的包含关系。
UPF 与 RTL 对齐
- supply_net、power_switch、isolation、level_shifter 等与 RTL 端口映射。
- 工具报错或 waive 必须能指回具体约束行。
- 增量修改 UPF 的影响面清单与必跑场景。
场景化验证
- 定义活动、待机、掉电、唤醒等场景及期望域状态。
- 波形:电源 good、iso、switch 控制与功能信号的先后。
- 报告:结论与场景卡一一对应,避免口头记忆。
三、怎么学?
推荐意图图 → 场景表 → 逐场景仿真 → 报告对照 → 约束修正。
- 先手绘电源域拓扑,再打开 UPF 对照。
- 每场景只改变一类供电条件以便归因。
- 建立场景结果卡:激励摘要、期望域状态、波形要点、工具结论。
- 约束修改必须 diff 留痕并与回归记录绑定。
分周节奏(可按个人情况伸缩)
- 第 1 周 拓扑 + UPF 通读 + 默认场景 baseline。
- 第 2 周 逐场景扩展与报告解读;至少一次异常定位。
- 第 3 周(可选) 约束收敛与 waive 登记。
功能 RTL 与功耗意图(示意)
双层视图:功能连接与供电/隔离意图;具体 net 名以设计为准。
映射关系必须以工具报告核对,勿凭直觉。
典型功能块说明
下表按教学视角归纳常见职责与设计/验证关注点;具体层次名、信号名与协议细节以你手中的 RTL、顶层例化与课程讲义为准。
电源域与供电网络
职责概要:定义逻辑在何种供电下合法工作。
设计侧:primary 与备份 supply、合并拆分策略。
验证侧:域切换无非法状态传播。
开关与隔离
职责概要:关断与信号完整性保护。
设计侧:iso 与 switch 顺序;毛刺控制。
验证侧:波形控制沿与功能信号满足窗口要求。
场景与激励
职责概要:TB 驱动的功耗场景序列。
设计侧:场景间隔与复位重叠。
验证侧:场景末域状态与报告一致。
工具报告
职责概要:Lint、断言、功耗报告字段。
设计侧:hard fail 与可 waive 项区分。
验证侧:字段可指回 UPF 或 RTL。
项目核心内容(完整范围)
- UPF 结构与功耗域划分;隔离、开关与场景映射。
- 功能与功耗双视角验证;报告解读与约束迭代。
关键难点与常见卡点
- 抽象概念多,易停留在术语背诵。
- 功能通过不等于功耗策略正确。
- 约束与报告字段对应需反复训练。
模块级深度讲解(做什么、看什么、怎么验)
域拓扑与供电关系
重点:谁供谁、开关顺序、常开域。
验收:手绘拓扑与 UPF 一致通过核对。
隔离与保持策略
重点:iso 类型、使能极性、时序窗口。
验收:场景波形与策略表一致。
场景脚本与 TB
重点:激励序列与期望域状态。
验收:场景卡与仿真打印一致。
工具报告字段
重点:关键字段与约束行映射。
验收:报告项可指回 UPF 行号。
分阶段执行方案(讲义级节奏)
四段:拓扑与场景清单 baseline → 逐场景结果卡(强调单变量与报告字段)→ 约束迭代与 waiver 治理 → 可选答辩叙事打包。请把每张「场景结果卡」当作最小交付单元;没有卡片的结论在复盘时一律视为无效记忆。
本阶段目标:形成团队可讨论的 **单一「意图真源」**:手绘或工具导出的拓扑与 UPF 中的 `power_domain`/supply net 命名一一可对;同时列出首轮要跑的 **场景清单与期望域状态表**。
与导读的衔接:导读「先拓扑再场景」;避免一上来改约束却不理解供电关系。
讲义节奏(参考):建议 5~8 天:2~3 天读 UPF + 对照 RTL,2 天场景表,2 天 baseline 仿真。
任务分解:
- 白纸上画 **域拓扑**:谁从属于谁、常开域、可关断域、保留域(retention);标 primary/backup supply。
- 打开 UPF:对每个 `create_power_domain` / supply set 记录「对应 RTL 层次」与「可疑遗漏」。
- 列出 **首批场景**:例如上电默认、活跃、浅睡、深睡、唤醒;每行列「激励摘要」「期望 PD 状态」「期望iso 行为」。
- 跑讲义 **默认 baseline 场景**(或最小安全集),保存功能 log 与(若启用)功耗/低功耗断言结果。
- 建立 **diff 心智**:RTL 功能正确并不自动意味 UPF 与场景一致——本阶段只记录 gap,不急改。
- 标注工具链版本与读入 UPF 的命令行(后续回归要比对)。
- 门禁:拓扑图未经第二人交叉检查(可自查隔天再看一遍)不得批量改约束。
建议产出(物证):
- 拓扑图(手写或导出)
- 场景表 v1
- baseline 仿真日志
- UPF 阅读笔记(页码/行号)
过关标准:每张场景表含可执行的期望列;baseline 跑通且无未解释的硬错误。
本阶段目标:每个计划场景产出一张 **「结果卡」**:激励 → 域状态演化 → 波形要点 → 工具报告摘录 → 结论(Pass/偏差/待查)。
与导读的衔接:导读「双视角验证」「一次只改一类供电条件」;训练读报告而不是背定义。
讲义节奏(参考):建议 10~18 天:按场景难度分批;复杂场景单独留整天;每天最多深挖 1~2 个场景以免混淆。
任务分解:
- 严格执行 **单变量原则**:同一轮仿真只改变一类供电/使能条件,其余保持 baseline。
- 对每个场景截取 **最短有效波形窗口**:iso 使能前后各若干周期,标注 supply 开关顺序。
- 同步保存工具侧输出:功耗/CLP/coverage 等(以课程指定工具为准)中的关键字段。
- 对偏差分两类:**工具/约束类** vs **RTL/时序窗口类**;先查 UPF 行号再怀疑电路。
- 维护 **异常 backlog**:每条含复现命令、截图编号、下一步实验(禁止只写「待查」)。
- 阶段性 peer 自查:能否不看笔记口述「隔离单元在场景中为何必须如此配置」。
- 可选:整理「术语→UPF 关键字→报告字段」三联表,减轻后续查阅成本。
建议产出(物证):
- 场景结果卡夹(每场景一页)
- 波形片段索引
- 异常 backlog
过关标准:计划内场景均有结果卡;偏差均有归类或登记为已知限制。
本阶段目标:对确认的错误类偏差实施 **可追溯** 的 UPF 或 RTL 修正(依课程授权);每次修改附带前后对照回归表与 waiver 条目。
与导读的衔接:closing_summary「能力证据」;模拟企业签核前的迭代节奏。
讲义节奏(参考):建议 7~14 天:一批修改一批回归;禁止同一天混多类架构级改动。
任务分解:
- 每次修改填写「动机—影响域—预期副作用」三行说明,附 UPF diff。
- 回归矩阵至少两列:**修改前快照** vs **修改后**;扩展场景选与改动相关的最小集合。
- 对工具报警做 triage:**hard fail** 与 **可 waive** 分流;可 waive 项必须写明业务理由与复审条件。
- 建立 **waiver 登记表**:编号、约束行、场景、批准人(自学可写「自批」)、计划复查版本。
- 重大修改后跑一次「宽场景」或讲义规定的 signoff 子集,防止修复引入退化。
- 收尾:输出「遗留风险清单」——哪些是刻意保留的技术债。
建议产出(物证):
- 约束/RTL diff 集合
- 前后对照回归表
- waiver 登记
- 遗留风险清单
过关标准:每个 hard 问题闭环或等价替代方案;waiver 可审计。
本阶段目标:把零散场景抬升到「我能向签核或面试官解释功耗策略为何成立」。
与导读的衔接:与 LPWR、低功耗岗位面试问题衔接。
讲义节奏(参考):3~5 天。
任务分解:
- 选 3 张最漂亮的结果卡做成「答辩三幕剧」:上电稳态、关断切换、唤醒恢复。
- 写 5 个自问自答:iso 延迟从哪来、为何需要 level shifter、错误关断会怎样被工具抓住。
建议产出(物证):
- 答辩摘要
- QA 五条
过关标准:20 分钟可讲完故事且能指回 UPF 行号与结果卡。
避坑手册
- 只背术语,不做场景验证,无法发现真实问题。
- 功能通过就认为低功耗策略正确。
- 报告不做对照分析,难以指导约束优化。
完成标准(你做到这些才算真正做完)
- 形成可执行的功耗场景验证表。
- 完成至少 1 次约束修正并验证生效。
- 输出低功耗问题定位清单与经验总结。
答辩与简历:低功耗验证叙事
突出双视角与工具证据。
能力证据
- 域拓扑与 UPF 一致性说明。
- 场景结果卡 + 至少一次约束修正与回归对比。
差异化价值
- 签核与量产阶段功耗问题高发;你能读报告、敢文档化 waive。
衔接
- 与 LPWR 等综合项目衔接;与后端、供电协同沟通基础。
建议产出(可用于复盘/求职)
- 核心功耗场景的验证记录与结果解释。
- UPF 关键约束与问题定位清单。
典型实验任务清单(1-2-3 步)
- 确认功耗域与 UPF 约束的基本结构和目标场景。
- 逐个执行功耗开关/隔离相关实验并观察结果。
- 总结约束生效情况与异常原因,形成低功耗调试清单。
快速开练命令
cd /home/USER/soc3_practice
cp -a /project/upf_netlist_soc/ ./upf_my
cd ./upf_my && ls -la
建议前置基础
建议具备 SoC 集成基础,并了解时钟/电源门控基本概念。