刚做的那次"配保存白名单"教会我¶
读者:想知道一次真实操作长什么样的人。 前置:读过 tutorial-first-sim.md。 读完能做什么:自己独立再配一次白名单,并算出批跑前该做哪些判断。 环境锚点:Virtuoso IC617 + ADE-XL,test
pll45/pll_top/1,Slurm 集群;操作日期 2026-10-12。
三十秒版¶
我给已有的 PLL test 配了 4 路保存白名单(/VCTL、/REF、/VCOCK、/FB),
重跑 1 µs 后单点体积从 8.5 MB 降到 0.27 MB(约 31×);
据此把 200 点批跑的容量外推为约 5.3 GB,存储风险解除。
全景图与产出物¶
- 准备:确认 test 能跑、知道结果会落哪 → 产出:一个可复跑的 test。
- 配置:Save Options 选
selected+ Outputs Setup 勾 4 路 → 产出:落盘的outputs文件与网表save行。 - 执行:退出 Virtuoso 落盘 → 重跑 1 µs → 产出:新的
Interactive.<N>目录。 - 判读:读体积、与无白名单对照 → 产出:单点/目录两个体积数字。
- 记录:把口径写进档案 → 产出:本文与 howto-adexl.md。
动作分类表¶
| 阶段 | 动作 | 类别 | 为什么干 |
|---|---|---|---|
| 准备 | 确认结果落点 | 准备 | 不知道东西写哪,后面没法判读 |
| 准备 | 列出顶层 net 名 | 定义 | 白名单只能选顶层 net |
| 配置 | Save Options 选 selected |
配置 | 定"只存点名的",是全存的开关 |
| 配置 | Outputs Setup 勾 4 路 Save |
配置 | 填"名单",决定存哪几路 |
| 配置 | 退出 Virtuoso 并保存 ADE XL | 记录 | 不退出,改动不落盘 |
| 执行 | 重跑 1 µs | 执行 | 拿一组可比对的体积 |
| 判读 | 读单点体积并外推 | 判读 | 决定 200 点批跑安不安全 |
| 记录 | 写入口径 | 记录 | 下次不必重推 |
逐动作五问¶
选 4 路白名单¶
- 干什么:只保存
/VCTL、/REF、/VCOCK、/FB四路。 - 为什么要干:不选就全存,200 点批跑会撑满共享盘。
- 属于哪类:配置(决定算/存什么,没动电路)。
- 在哪做:ADE-XL 的 Outputs Setup 表,右键
Add Signal,勾Save列。 - 看到什么算对:
test_states/.../outputs里出现 4 组tmpN->signal+save = 't。 - 牵扯哪个知识点:保存白名单、Plot 与 Save 的区别(见 glossary.md)。
在 Save Options 里选 selected¶
- 干什么:把"存哪些"的规矩设为"只存名单里的"。
- 为什么要干:规矩若是
all,名单勾了也白勾;名单若是空,selected会退化成全存。 - 属于哪类:配置。
- 在哪做:Outputs Setup 表右键 →
Save/Spec Option...。 - 看到什么算对:网表出现
saveOptions options save=selected。 - 牵扯哪个知识点:两层分工(规矩 in 对话框、名单 in 表格),见 concept.md。
退出 Virtuoso 才落盘¶
- 干什么:让 setup 改动真正写进
data.sdb。 - 为什么要干:进程开着时
data.sdb被锁,改动只在内存里。 - 属于哪类:记录(留痕)。
- 在哪做:正常退出 Virtuoso;弹窗里"原理图"选不保存、"ADE XL"选保存。
- 看到什么算对:
data.sdb的 mtime/体积变化,outputs内容更新。 - 牵扯哪个知识点:
data.sdb与cdslck(见 incident.md)。
读体积并外推¶
- 干什么:把"这次多大"换算成"200 点批跑多大"。
- 为什么要干:直接批跑可能撑满盘,返工代价高。
- 属于哪类:判读。
- 在哪做:
du -sh <Interactive.N>,与上一轮无白名单的数字对照。 - 看到什么算对:单点降到百 KB 级(对照无白名单的 8.5 MB)。
- 牵扯哪个知识点:体积三因子(见 concept.md)。
知识点雷达¶
- HPC:Slurm 派发(一点一作业)、
squeue看NODELIST是否铺开、Lustre 容量预算。 - EDA:ADE-XL 的保存两层分工、
PlotvsSave、顶层 net 与层次化命名、落盘锁。 厚解释见 concept.md 与 glossary.md。
坑位复盘¶
| 卡在哪 | 为什么 | 下次 |
|---|---|---|
div8 在信号列表里是灰的,选不了 |
想存的是子层次内部节点,而工具只让你选顶层 net | 找 div8 在顶层的连接网名:XDIV (VCOCK GND FB VDD) div8 → 用 FB |
差点点了 Save All |
它看着像"保存",其实是全局入口,会把所有信号都存上 | 白名单只走 Add Signal + 勾 Save |
| 改了设置重跑却没生效 | 没退出 Virtuoso,改动没落盘 | 改完一律退出,且退出时选保存 ADE XL |
| 一度把"还在跑"当成"已完成" | 体积只有在运行结束后才稳定 | 先等进程结束、体积连续两次不变,再读数字 |
塌缩路径(下次独立做)¶
- 确认 test 能跑,列出要保存的顶层 net(带前导
/)。 - Outputs Setup:
Add Signal逐路加 + 勾Save;Save/Spec Option...里选selected。 - 退出 Virtuoso(原理图不保存、ADE XL 保存)。
- 重跑一个短点,
du -sh读单点体积,×点数×时长比外推总量。 - 总量 ≤ 目标余量的 50% 才允许批跑。
自测¶
- 下一步做什么:配完白名单、退出 Virtuoso 后,你要先核对哪个文件确认生效?
- 为什么这么做:为什么名单为空时
selected反而会撑爆盘? - 判断正常与否:单点 1 µs 结果是 8.5 MB,正常吗?接下来你该查什么?
来源:
/home/rain/Documents/eda_tools_ins/design/docs/kb/walkthrough-whitelist.md| 最后更新:2026-10-13 00:47(由build/sync.py同步,请勿在站点侧修改)