如何使用开源 EDA 工具 + 开源 PDK 进行芯片设计?

你可以使用完全开源的 EDA 工具和开源 PDK(Process Design Kit)来完成从 RTL 设计到流片的完整芯片设计流程。

  • 开源 EDA 工具:用于 RTL 设计、仿真、综合、布局布线、物理验证等。
  • 开源 PDK:提供特定工艺节点的标准单元库、DRC/LVS 规则、寄生参数等,用于流片。

1. 什么是开源 PDK?

📌 PDK(Process Design Kit,工艺设计套件) 是芯片制造商提供的一套规则和库文件,描述了制造工艺(如 130nm, 65nm, 22nm)。

  • PDK 包括:
    • 标准单元库(Standard Cell Library)
    • DRC(设计规则检查)规则
    • LVS(版图与原理图匹配检查)规则
    • 寄生参数(RC Extraction)
    • SPICE 模型(HSPICE、Ngspice 用于仿真)
    • GDSII 文件(版图)

📌 开源 PDK

开源 PDK 工艺节点 提供商 适用流片
SkyWater 130nm (Sky130) 130nm Google + SkyWater OpenMPW(免费流片)
Google GF180 180nm GlobalFoundries 研究、FPGA 设计
TSMC 90nm (非完全开源) 90nm TSMC 商业流片
Intel 22nm PDK 22nm Intel 研究用途

📌 Sky130 是目前最成熟的开源 PDK,支持免费流片!


2. 开源 EDA 工具 + 开源 PDK 的完整芯片设计流程

💡 你可以使用以下工具链,结合开源 PDK(Sky130)完成芯片设计。

设计阶段 商业 EDA 工具(Synopsys/Cadence) 开源替代方案
RTL 设计(Verilog/VHDL) VCS, ModelSim Icarus Verilog (iverilog), Verilator
代码检查(Lint) SpyGlass Verilator, Yosys
形式验证(Formal Verification) Synopsys FM Yosys + SymbiYosys
逻辑综合(Synthesis) Design Compiler Yosys, OpenROAD
静态时序分析(STA) PrimeTime OpenSTA
布局布线(P&R) ICC, Innovus OpenROAD + Sky130
物理验证(DRC/LVS) Calibre, IC Validator Magic VLSI, Netgen
SPICE 级仿真 HSPICE Ngspice, Xyce + Sky130 PDK
FPGA/原型验证 ProtoCompiler LiteX, SymbiFlow
GDSII 生成(流片) IC Compiler KLayout + Sky130

📌 你可以使用 SkyWater 130nm PDK(Sky130)在 Google OpenMPW 项目中进行免费流片!


3. 使用 Sky130 开源 PDK 进行芯片设计

💡 SkyWater 130nm PDK(Sky130)是 Google 和 SkyWater Foundry 共同开源的 PDK,支持免费流片。
📌 获取 Sky130 PDK

git clone https://github.com/google/skywater-pdk.git
cd skywater-pdk

📌 安装标准单元库

cd libraries/sky130_fd_sc_hd/latest
make

这样你就可以使用 Sky130 的标准单元库进行芯片设计!


4. 开源芯片设计工具链

🔥 完整开源工具链(从 RTL 到 GDSII)

# 1. 编写 RTL 代码(Verilog)
vim mychip.v

# 2. 代码检查
verilator --lint-only mychip.v  # 检查 Verilog 代码

# 3. 逻辑综合(使用 Sky130 PDK)
yosys -p "read_verilog mychip.v; synth -top mychip; dfflibmap -liberty sky130_fd_sc_hd.lib; write_verilog mychip_netlist.v"

# 4. 静态时序分析
opensta -f mychip.sdc  # 使用 OpenSTA 进行 STA

# 5. 布局布线(P&R)
openroad -script mychip.tcl  # 布局布线(使用 OpenROAD + Sky130 PDK)

# 6. 物理验证(DRC/LVS)
magic mychip.gds  # DRC 检查
netgen -batch lvs "mychip.spice" "mychip.gds" sky130A_setup.tcl  # LVS 比对

# 7. 生成 GDSII 进行流片
klayout mychip.gds  # 生成流片所需的 GDSII 文件

📌 这样你就可以用开源工具+开源 PDK 进行完整的芯片设计!


5. 如何进行免费流片(OpenMPW)

Google 通过 OpenMPW(Open Multi-Project Wafer)计划,提供免费流片机会。
📌 申请 OpenMPW 流片

  1. 完成芯片设计
  2. 上传 GDSII 到 Efabless
  3. 提交流片申请

📌 OpenMPW 官网:https://developers.google.com/silicon/openmpw
📌 Efabless 流片入口:https://efabless.com/open_shuttle_program

🚀 如果你的芯片符合 OpenMPW 规则,你可以免费流片!


6. 结论

你可以使用完全开源的 EDA 工具和开源 PDK(Sky130)完成芯片设计,并申请免费流片!

  • 开源 EDA 工具 → Yosys, OpenROAD, Magic, OpenSTA
  • 开源 PDK → SkyWater 130nm(Sky130)
  • 免费流片 → Google OpenMPW 计划

🔥 现在,任何人都可以使用开源工具进行芯片设计并免费流片! 🎯

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐