gateGPT:把 Transformer 塞进 FPGA 芯片,8 万赫兹下每秒生成 5 万 token
📅 2026年06月19日 · 技术
我们习惯了 Transformer 跑在显卡上、跑在云端的大集群里。那如果把一个 GPT 模型完全用硬件描述语言写出来,烧进一块十几年前的 FPGA 芯片里,会怎样?开源项目 gateGPT 就做了这么一件硬核又浪漫的事:它在 Xilinx Virtex-5 这块老牌 FPGA 上,从零实现了一个能真正生成文本的 Transformer。
在芯片上跑 GPT 是什么概念
gateGPT 的灵感来自 Karpathy 的 microGPT——一个字符级别的小型 GPT。作者把这套模型用 Verilog 硬件描述语言重写,让一个完整的 Transformer Block(RMSNorm → 多头因果注意力 → MLP)在纯硬件电路上运行,全程使用 Q5.11 定点数运算,不依赖任何 GPU 或 CPU。训练目标是生成人名,最终结果会直接显示在开发板的字符液晶屏上。
更有意思的是它的性能:在 80MHz 的主频下,这块芯片大约能以 每秒 5 万 token 的速度生成文本。相比第一个能跑通的版本,吞吐量提升了 28 倍,而且输出结果与 Python 参考实现做到比特级精确一致。
几个让人眼前一亮的设计
- 微码 ROM 控制的数据通路:它没有用一大坨手写状态机,而是用一段微指令 ROM 来编码 Transformer 的执行调度,由一个微程序计数器逐条取出宏操作、启动对应的数据通路单元。
- 增量解码 + 持久 KV 缓存:每生成一个新 token,只计算它对应的 K/V,再对缓存好的上下文做注意力,而不是每次都重算整个窗口——这正是大模型推理加速的核心思路,在硬件上被原汁原味地复刻了。
- 模块化执行单元:嵌入、归一化、矩阵向量乘、注意力、向量运算、采样器各自独立,按微码调度轮流激活,共享一块双端口 RAM 既做工作集又做 KV 缓存。
- 旋钮即参数:板子上的旋转编码器可以实时调节生成速度和采样温度,真正做到了"硬件交互"。
为什么值得一看
gateGPT 的价值不在于它能取代 GPU,而在于它把"Transformer 到底是怎么算的"这件事彻底摊开在了门电路层面。对想理解大模型推理底层原理、或者对芯片设计、AI 硬件加速感兴趣的开发者来说,这是一个极佳的学习样本——RTL、定点数规格、微码指令集和训练权重全部开源,每一份都是作者原创。从软件模型到硅片逻辑,gateGPT 串起了完整的链路。
参考来源
🔧 在线开发者工具 — JSON格式化 · Base64 · UUID生成 · 正则测试 等80+免费工具
🔧 在线开发者工具 — JSON格式化 · Base64 · UUID生成 · 正则测试 等80+免费工具