目录

Babel:开源EDA工具链驱动的AI原生Chiplet设计流程

Babel:开源EDA工具链驱动的AI原生Chiplet设计流程

Babel 是一个 AI 原生 Chiplet 设计流程,基于开源 EDA 工具链,用 5-agent 流水线处理从产品需求到 GDSII 的完整设计。2026-05-22创建,20星。

核心判断

Babel 的核心创新不是 EDA 工具本身(Yosys/Magic 这些都是成熟工具),而是把 AI coding agent(Claude Code)引入芯片设计流程:让 agent 以 issue handoff 的方式协作,每个 agent 专注特定设计阶段,用 labeled issue 做状态机驱动。这本质上是把"设计师 → RTL → 验证 → 综合 → PD"的人工流程 AI 化。

Agent 流水线架构

用户需求 → [bba-architect] → bba-guru-rtl → bba-guru-verification → bba-guru-synthesis → bba-guru-pd → signoff
              ↑_________________________*-needs-fix 回流__________________________|
Agent触发方式职责
/bba-architect新设计想法 / arch-needs-fixPRD → arch_spec → MAS,架构设计流程负责人
/bba-guru-rtlready-for-rtl / rtl-needs-fixMAS → lint-clean SystemVerilog,RTL生成专家
/bba-guru-verificationready-for-verification100% 覆盖率验证,验证专家
/bba-guru-synthesisready-for-synth / synth-needs-fixSDC + CDC + 并行综合 → timing closure
/bba-guru-pdready-for-pd / pd-reworkFloorplan → Place → Route → DRC/LVS → GDSII

Issue Handoff 协议

Agent 间通过 labeled issue 协作:

Label含义
ready-for-rtlMAS 完成,等待 RTL 生成
ready-for-verificationRTL lint-clean,等待验证
ready-for-synth100% 覆盖率通过,等待综合
ready-for-pdTiming closed,等待物理设计
signoffGDSII 完成,用户审核
arch-needs-fixMAS 问题,回流 architect
rtl-needs-fixRTL 问题,回流 rtl guru
synth-needs-fix综合问题,回流 synthesis guru
escalate-user超出迭代限制,需用户决策

迭代限制

Agent单阶段迭代限制全局限制
architect10
rtllint 3 次10
verificationcoverage 8 次10
synthesistiming 6 次10
pdtotal 8 次 (DRC 3 / LVS 2 / STA 3)10

超限自动触发 escalate-user,停止并等待用户决策。

Skill 体系

类别Skill用途
EDA 工具/bb-invoke-yosys并行综合 (LLM驱动5-Phase)
/bb-invoke-verilator仿真 + 覆盖率收集
/bb-invoke-opensta静态时序分析
/bb-invoke-magicPlacement + DRC
/bb-invoke-netgenLVS 网表比对
/bb-invoke-qrouter详细布线
/bb-invoke-klayoutGDSII 导出/验证
/bb-invoke-abc逻辑优化
质量检查/bb-check-lintverible lint (含修复迭代)
/bb-check-cdcCDC + RDC 检查
/bb-spec-reviewMAS 对抗评审
/bb-code-reviewRTL 代码审查
流程生成/bb-rtl-coderMAS → SV 代码生成
/bb-create-sdcMAS → SDC 约束
/bb-generate-tb测试平台生成
/bb-create-verif-plan验证计划
/bb-create-floorplanFloorplan TCL
质量门控/bb-gate-rtl-qualityRTL 交付检查
/bb-gate-test-quality验证交付检查
/bb-gate-synth-quality综合交付检查
/bb-gate-pd-qualityPD 交付检查

设计产物目录结构

designs/<name>/
├── idea/
│   └── parsed_idea.json      # 解析后的设计需求
├── PRD.md                    # 产品需求文档
├── arch_spec/
│   ├── arch_doc.md           # 架构文档
│   ├── data_flow.md          # 数据流
│   └── workflow.md           # 工作流
├── mas/
│   ├── mas.json              # 微架构规范 (schema-valid)
│   ├── fsm/                  # FSM 定义
│   ├── datapath/             # 数据通路
│   └── verif_plan_seed.md    # 验证计划种子
├── rtl/
│   ├── *.sv                  # SystemVerilog 源码
│   ├── file_list.f           # 拓扑排序文件列表
│   └── rtl_artifact.json     # RTL 交付产物
├── tb/
│   ├── *.sv / *.py           # 测试平台 / cocotb
├── verif/
│   ├── verification_plan.md  # 完整验证计划
│   └── test_cases.md         # 测试用例列表
├── sim_results/
│   ├── *.log / *.vcd         # 仿真结果
├── coverage.json             # 覆盖率数据
├── test_report.json          # 验证报告
├── constraints/
│   └ *.sdc                   # 时序约束
├── synth_parallel/
│   ├── synthesis_summary.json # 并行综合结果
│   └ <module>/netlist.v      # 网表
├── synth_report.json         # 综合报告
├── pd/
│   ├── floorplan.def         # Floorplan
│   ├── placed.def / routed.def
│   ├── drc_report.txt / lvs_report.txt
│   └── timing_signoff.json   # Post-PD STA
├── gdsii/
│   └ *.gds                   # 最终布局
├── pd_report.json            # PD 交付报告
├── .handoff/
│   ├── ready-for-*.md        # 各阶段 handoff
│   ├── fix_iter.json         # 修复迭代计数
│   └── global_fix_iter.json  # 全局计数
└── ADR/
    └ *.md                    # 架构决策记录

技术栈

工具版本用途
Yosys0.35RTL 综合
ABClatest逻辑优化
OpenSTA2.2.0静态时序分析
Magic8.3.641Layout/DRC/LVS
Netgen1.5LVS 网表比对
QRouter1.4详细布线
KLayout0.30.8GDSII 查看/DRC

快速开始

# 1. 在 Claude Code 中描述设计需求
claude-code

# 2. 描述设计需求
> 设计一个 AI 推理处理器 主频1Ghz,能运行主流大模型,使用 ASAP7 PDK

# 3. 或显式触发 architect
> /bba-architect

# 4. architect 依次生成 PRD → arch_spec → MAS
#    每阶段完成后暂停,等待用户确认

# 5. 确认后继续,直到 ready-for-rtl 开启

# 6. 触发 RTL 生成
> /bba-guru-rtl

# 7. 依次触发后续阶段...

环境设置

source ~/wrk/eda_opensources/eda_env.sh

结论

Babel 把 Claude Code agent 引入芯片设计流程,用 labeled issue 做状态机,每个阶段有明确的质量门控和迭代限制。它的价值在于把 AI coding agent 的能力迁移到硬件设计领域,而不是重新发明 EDA 工具。