本文へ移動
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(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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 命名

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

<一句话说清『这个 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 のスキルをすべて見る

このスキルの問題を報告する