跳到正文
cccskills
免费在 GitHub 公开

bb-invoke-netgen

调用 Netgen 1.5.275 做 LVS 对比:综合网表 vs Magic 提取的 SPICE,必须 match 才能 signoff。触发场景:(1) bba-guru-pd extract 后做 LVS;(2) 显式 /bb-invoke-netgen。

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(7)

  • SKILL.md2.7 KB
  • Gotcha/lvs_pitfalls.md3.5 KB
  • Gotcha/netgen_pitfalls.md2.5 KB
  • references/asap7_netgen_setup.md1.5 KB
  • scripts/parse_lvs.py3.7 KB
  • scripts/render_netgen.py3.1 KB
  • scripts/run_netgen.py4.2 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

bb-invoke-netgen

职责

对比 schematic netlist(综合 netlist.v)与 layout netlist(Magic extracted.spice),输出 LVS 报告,必须 match。

  • 调用者:bba-guru-pd
  • 上游:bb-invoke-magic(action=extract)
  • 禁止使用:Task / Agent / Skill

Input Args

argtyperequired说明
schematic_netlistpathtruedesigns/<name>/synth/netlist.v
layout_netlistpathtruedesigns/<name>/pd/extracted.spice
tech_filepathtrueASAP7 netgen setup file(.tcl)
top_modulestringtrue—
design_namestringtrue—
stampstringfalse<auto YYYYMMDD-HHMMSS>

Output Contract

field值
artifact_pathdesigns/<name>/pd/lvs_report.txt
log_pathdesigns/<name>/pd/netgen_<stamp>.log
matchbool("Circuits match uniquely")
discrepancies[{kind, instance, schematic, layout}]
validbool
errorstring|null

4-Phase 执行

Phase 1 — render_netgen_cmd

scripts/render_netgen.py 生成 batch 命令:

netgen -batch lvs \
  "designs/<name>/pd/extracted.spice <top>" \
  "designs/<name>/synth/netlist.v <top>" \
  <tech_file> \
  designs/<name>/pd/lvs_report.txt

Phase 2 — run_netgen

scripts/run_netgen.py:

  1. source ~/wrk/eda_opensources/eda_env.sh
  2. netgen -batch lvs --version 2>&1 | grep "1.5" 否则 VERSION_MISMATCH
  3. timeout 600 netgen -batch lvs <args> > <log> 2>&1
  4. log 追加 exit:<rc>

Phase 3 — parse_lvs

scripts/parse_lvs.py 扫描 lvs_report.txt:

  • 末尾 Circuits match uniquely. → match=true
  • Circuits differ → match=false,提取后续 Net mismatch / Device mismatch 段为 discrepancies

写 lvs_<stamp>.json。

Phase 4 — return

返回 JSON。bba-guru-pd:

  • match=true → 进入 bb-invoke-opensta(mode=post_pd)
  • match=false → 黑盒/命名冲突,开 synth-needs-fix

收敛 / 失败

状态行动
match=true进 post-PD STA
match=false开 synth-needs-fix
VERSION_MISMATCH修 eda_env.sh
Phase 2 timeout(600s)error="LVS_TIMEOUT"

资源索引

  • scripts/render_netgen.py、scripts/run_netgen.py、scripts/parse_lvs.py
  • references/asap7_netgen_setup.md — setup file 与 device map
  • Gotcha/lvs_pitfalls.md — 黑盒、port order、电源 net 命名

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

<一句话说清『这个 skill 做什么 + 何时调用』。把最关键的触发场景放最前面。结尾给 2-3 个用户会说的关键词。>

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

bb-arch

免费

从粗略 idea 设计芯片或功能模块架构,输出专业架构文档到 spec_arch 目录。Trigger: 芯片架构设计, IC架构, 电路模块设计, 硬件架构. Generate IC/Chip architecture specification from rough ideas.

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

基于 AST 检查 CDC/RDC 违例:对比 MAS clock_domains 找跨域信号,检查是否被 2ff-sync CBB 保护。触发场景:(1) bba-guru-synthesis 综合前;(2) 显式 /bb-check-cdc。

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

调用 babel-lsp / verible-verilog-lint 检查 SV 源码。src 必须可综合(零 syntax error),tb 允许 verification constructs。发现 src error 时自动修复重检(max 3 iter)。触发:(1) bba-guru-rtl 生成后;(2) RTL 修复重检;(3) 显式 /bb-check-lint。

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

Babel internal issue protocol — close a handoff after downstream agent picked it up or user signed off. Moves designs/<name>/.handoff/<label>.md to .handoff/closed/ (using mv per CLAUDE.md), appends to handoff_log.jsonl.

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

对抗性代码评审:代码质量 / 可维护性 / 时序风险 / 综合友好度 / MAS 对齐度。默认 ruthless 模式,找 EVERY flaw。触发场景:(1) RTL lint 后;(2) 显式 /bb-code-review。

中文简介正在准备中。当前显示原文说明。

amoslee2026/Babel492026年8月4日 更新

查看 amoslee2026 的全部技能

报告此技能的问题