首页 › weekly › 用代码造硬件:7个开源EDA宝藏

用代码造硬件:7个开源EDA宝藏

本期发掘思路

前几轮我们挖了不少 AI 工具、自托管服务和小众效率软件,这一轮换个完全不同的赛道:开源硬件工具链。这批项目的共同气质是「把硬件设计变成软件工程」——电路用代码写、PCB 用 React 画、芯片用开源流程流片、FPGA 用命令行烧录。它们不像 Web 工具那样即装即用,但每一个都切中了硬件工程师最痛的点,而且商业化路径清晰(硬件本身就是付费闭环)。其中包含两个 Star 不高的深水区精品,属于典型「知道的人都说好」的类型。


1. atopile — 用 Python 风格语言「编译」出电路板

仓库: atopile/atopile | Star 约 4k+(截至撰写时,以仓库页面为准) | 持续活跃更新

一句话定位:把电路设计从「拉原理图」变成「写代码、跑构建」,让硬件可以像软件一样做版本管理、代码评审和 CI。

痛点与核心玩法:传统 EDA 工具里,电路是二进制工程文件,diff 不了、review 不了、自动化不了。atopile 自创了 .ato 语言,用类似 Python 的语法描述元器件和连接关系:

resistor_1 = new Resistor
resistor_1.value = 10kohm
led = new LED
resistor_1.p1 ~ led.cathode

ato build 之后,编译器会做电气规则检查、选型计算(比如自动根据 LED 电流算限流电阻),并生成可导入 KiCad 做布局布线的工程。组件参数不再是手填的魔法数字,而是带物理单位的表达式,约束写错编译直接报错——这正是硬件界梦寐以求的「类型系统」。

上手难度:⭐⭐⭐(需要懂基本电路,但工具链本身一条命令装好)

适用人群:有软件背景转硬件的工程师、想要硬件设计资产化的团队。它是 YC 孵化项目,商业化方向明确:设计即代码之后,天然可以接元器件供应链、按构建结果报价打样——这是硬件领域少有的「开源工具 + 闭环生意」样本。


2. tscircuit — 用 React 写 PCB

仓库: tscircuit/tscircuit | Star 约 3k 级别(快速增长中,以仓库页面为准) | 持续活跃更新

一句话定位:用 React 组件的思路描述电路——每个元器件是一个 JSX 标签,编译输出原理图和 PCB。

核心玩法:

export default () => (
  <board width="20mm" height="20mm">
    <chip name="mcu" footprint="qfn32" />
    <resistor name="r1" resistance="10k" pcbX={-4} />
    <trace from=".mcu > .VCC" to=".r1 > .pin1" />
  </board>
)

组件可以复用、可以发布到 npm(把一块电源模块做成 <PowerSupply /> 给全公司用),官方提供在线 REPL、自动布线(集成 freerouting)和渲染预览。它最激进的一点是:电路设计第一次拥有了前端工程化的全部红利——npm 生态、组件库、storybook 式预览、CI 自动出图。

和 atopile 相比两者理念相近但路线不同:atopile 走自研 DSL + 传统 EDA 流程,tscircuit 直接把 React 变成 EDA。谁赢不好说,但两条路都在验证同一个判断:硬件设计的下一代交互形态是代码。

上手难度:⭐⭐⭐(会 React 就能上手,但布线仍需人工兜底)

适用人群:前端/全栈工程师做硬件项目、团队沉淀可复用电路组件库。


3. gerbolyze — 把任意矢量图直接「印」进 PCB(小而美)

仓库: jaseg/gerbolyze | Star 约 1k 以内(典型小众精品,以仓库页面为准) | 社区维护

一句话定位:把 SVG 矢量图和位图直接合成到 Gerber 制造文件里,让 PCB 丝印层变成画布。

它解决什么:想在板子上放一个复杂 logo、二维码甚至照片?KiCad 自带工具做不了高复杂度图形,第三方插件普遍只支持简单轮廓。gerbolyze 的思路非常「Unix」:它不碰你的 EDA 工程,而是作为流程末端的一步,直接把 SVG 图形(走矢量转多边形)或图片(自动抖动处理成黑白网点)写入 Gerber 的丝印/阻焊层。配合 Inkscape 扩展使用,所见即所得地排版,最后一条命令导出。

实际效果是各种黑科技 PCB 艺术品背后的工具:艺术电路板名片、带渐变照片丝印的徽章、会议纪念板。硬件年会(如 Supercon)上大量作品用它产出。

上手难度:⭐⭐(会 KiCad 出 Gerber 就能用,纯流程性工具)

适用人群:PCB 艺术创作者、做周边和徽章的硬件团队、想在产品板子上放品牌图形的厂商。它不赚钱但极适合引流——用 gerbolyze 做一批高颜值板子发社交网络,是最便宜的硬件品牌营销。


4. KiKit — KiCad 自动拼板与自动化流水线(小而美)

仓库: yaqwsx/KiKit | Star 约 1.5k 级别(以仓库页面为准) | 跟随 KiCad 版本持续更新

一句话定位:KiCad 的自动化瑞士军刀:一键拼板(panelization)、批量制造文件导出、CI 里自动出板。

痛点与核心功能:打样厂按板子尺寸收费,小板拼成一块大板能省一半钱,但 KiCad 官方一直没有好用的拼板功能。KiKit 补上了这一块:

它同时提供 CLI 和 Python API,二次开发空间大。

上手难度:⭐⭐(装好即用,文档质量在 KiCad 生态里属上乘)

适用人群:所有 KiCad 用户的省钱工具;变现场景也很直接——小批量硬件创业公司用拼板把打样成本压到三分之一,仅这一项就值回票价。


5. librelane — 从 Verilog 到 GDS 的全开源流片流程(硬核深水区)

仓库: librelane/librelane | Star 约 1k 以内(以仓库页面为准) | 活跃维护

一句话定位:开源数字芯片设计自动化(EDA)流程:输入 RTL 代码,输出可以送代工厂的 GDS 版图。

为什么值得知道:它就是知名的 OpenLane 2——原维护方 Efabless 于 2025 年停止运营后(据社区公告),核心开发者将其延续为社区驱动的 librelane。整个流程基于 Python 配置化:综合(Yosys)、布图、布局、时钟树、布线、签核(OpenROAD 全家桶)被拆成一个个可组合的 step,每一步可替换、可传参、可跳过,失败自动定位到具体 step 重跑。支持 SkyWater sky130 和 IHP 的开源 130nm PDK,也就是说,个人用开源工具链从 RTL 一路走到可制造 GDS,成本几乎只有流片费(借助 openMPW/shuttle 计划甚至可以免费)。

这是「芯片 DIY」运动的基础设施:Google 借 Efabless 免费流片计划培养出的整代开源芯片开发者,用的就是这条流程。

上手难度:⭐⭐⭐⭐⭐(需要数字后端知识,但配置文件层面的入门 demo 一晚上能跑通)

适用人群:芯片方向的研究者、想定制 ASIC 的公司(传感器、加密芯片等小芯片完全可以开源流程流片)。商业上,围绕它的咨询服务和 IP 定制是真实存在的市场。


6. openFPGALoader — 一条命令烧遍所有 FPGA 的通用烧录器(小而美)

仓库: trabucayre/openFPGALoader | Star 约 1.5k 级别(以仓库页面为准) | 持续更新

一句话定位:通用 FPGA 配置工具:一个二进制,支持几十家厂商、上百块板卡的比特流下载与 Flash 烧写。

它解决什么:FPGA 世界的烧录工具是碎片化重灾区——Xilinx 要 Vivado(几个 GB)、Altera 要 Quartus、Lattice/Gowin 各有自家工具,每家的命令行还互不兼容。openFPGALoader 用一个开源实现统一了入口:支持 Xilinx、Intel/Altera、Lattice、Gowin、Efinix、Anlogic 等主流家族,兼容 FTDI、CMSIS-DAP、iCEBreaker、Diligent 等一堆调试探针和开发板,既能直接配置 FPGA(掉电即失),也能烧写外部 SPI Flash(上电自加载)。CI 场景尤其香:Docker 里一条 openFPGALoader -b tangnano9k bitstream.fs 就完成部署,不用装任何厂商 IDE。

上手难度:⭐⭐(用法就是一条命令,难点只在装驱动)

适用人群:FPGA 学习者、RISC-V 软核玩家、需要自动化烧产的硬件产线。配合 SipeTang 等国产平价 FPGA 板,是搭建低成本 FPGA 实验室的标准件。


7. Renode — 给嵌入式系统造「数字孪生」的开源模拟器

仓库: renode/renode | Star 约 2k+(以仓库页面为准) | Antmicro 持续投入

一句话定位:全系统嵌入式模拟器:在没有真实硬件的情况下,跑起「多核 MCU + 外设 + 传感器 + 网络」组成的完整系统。

核心能力:和 QEMU 侧重 Linux/SoC 不同,Renode 主打 IoT/嵌入式场景——可以在一台 PC 上模拟由多个异构节点(ARM Cortex-M、RISC-V、SPARC 等)组成的网络,每个节点跑自己的固件,节点间通过模拟的无线/总线互连。外设用 Python 脚本描述,缺什么模拟什么。对工程化最有价值的是它内建 Robot Framework 集成:固件测试可以在 CI 里跑,不需要人守着开发板——这是嵌入式团队做「固件单元测试/回归测试」最现实的路径。GDB 调试、指令级追踪、多节点协作调试一应俱全。

上手难度:⭐⭐⭐(模拟单板容易,搭复杂多节点系统需要读文档)

适用人群:嵌入式固件团队(尤其想上 CI/CD 的)、安全研究员(固件分析免买板子)、RISC-V 生态开发者。Antmicro 自身靠模拟服务盈利,也证明了这类工具的商业化路径。


本期横向对比

仓库 类型 Star 量级 上手难度 适用场景
atopile 电路即代码 DSL 约 4k+ ⭐⭐⭐ 硬件设计工程化
tscircuit React 电路框架 约 3k ⭐⭐⭐ 前端工程师做硬件
gerbolyze PCB 艺术合成 <1k ⭐⭐ PCB 艺术品/品牌板
KiKit KiCad 拼板自动化 约 1.5k ⭐⭐ 打样省钱/CI 出板
librelane 开源 ASIC 流程 <1k ⭐⭐⭐⭐⭐ RTL 到 GDS 流片
openFPGALoader FPGA 通用烧录 约 1.5k ⭐⭐ FPGA 开发/产线
Renode 嵌入式全系统模拟 约 2k+ ⭐⭐⭐ 固件 CI/安全研究

注:Star 数为撰写时的大致量级,精确数字以各仓库页面实时数据为准。

本期仓库象限图

quadrantChart
    title 开源硬件工具链象限:上手难度 vs 热度与商业潜力
    x-axis 上手容易 --> 上手困难
    y-axis 小众 --> 热门/商业价值高
    quadrant-1 明星项目
    quadrant-2 硬核明日之星
    quadrant-3 顺手好工具
    quadrant-4 深水区瑰宝
    atopile: [0.4, 0.85]
    tscircuit: [0.42, 0.78]
    KiKit: [0.2, 0.6]
    gerbolyze: [0.15, 0.35]
    openFPGALoader: [0.25, 0.5]
    Renode: [0.5, 0.62]
    librelane: [0.9, 0.55]

本期之最

一点观察

这一轮项目的共同信号是:硬件设计的「软件化」已经从口号进入工具落地期。atopile 和 tscircuit 在抢「下一代 EDA 交互形态」的定义权,librelane 和开源 PDK 把流片门槛从百万美元压到几千美元,而 KiKit、openFPGALoader、gerbolyze 这类单点工具则在把长尾流程补齐。对个人开发者,现在是用几千元预算完成「写 Verilog → 综合 → 流片 → 拿到芯片」全流程的历史窗口期。

参考来源

  1. atopile/atopile - GitHub — 电路即代码 DSL 项目主页
  2. tscircuit/tscircuit - GitHub — React 电子设计框架项目主页
  3. jaseg/gerbolyze - GitHub — SVG/位图合成进 Gerber 的工具主页
  4. yaqwsx/KiKit - GitHub — KiCad 拼板与自动化工具主页
  5. librelane/librelane - GitHub — 前身为 OpenLane 2 的开源 RTL-to-GDS 流程主页
  6. trabucayre/openFPGALoader - GitHub — 通用 FPGA 烧录工具主页
  7. renode/renode - GitHub — Antmicro 开源嵌入式全系统模拟器主页

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入