技术深度解析
Gemmini 的架构围绕脉动阵列构建——一个由处理单元(PE)组成的网格,以流水线、数据流的方式执行乘加(MAC)运算。这种设计非常适合矩阵乘法和卷积,因为它最大限度地提高了数据复用率,并降低了对内存带宽的需求。该生成器允许用户指定阵列尺寸(例如 16x16、32x32、64x64)、每个 PE 的数据类型(INT8、FP16、FP32),以及本地暂存器和全局缓冲区的深度。
存储层次: Gemmini 采用多级存储系统:全局 DRAM 接口、共享暂存器(通常为 SRAM)和本地 PE 寄存器。暂存器被划分为多个存储体,以支持并行访问。该生成器还支持分块——将大矩阵分解为适合暂存器大小的块——这对实际性能至关重要。
Chisel 与 RTL 生成: Gemmini 使用 Chisel 编写,后者可编译为 Verilog。这使得设计人员可以在高级别对加速器进行参数化(例如 `val gemmini = GemminiConfig(rows=32, cols=32, dataType=INT8)`),并生成优化的 RTL。该代码库包含完整的测试套件、周期精确的模拟器,以及与 Rocket Chip SoC 生成器的集成脚本。
性能基准测试: 下表将 Gemmini 与其他开源加速器在常见边缘推理任务上的性能进行了比较(数据来自已发表论文和 GitHub 文档):
| 加速器 | 阵列尺寸 | 数据类型 | 吞吐量 (GOPS) @ 1GHz | 功耗 (mW) | 面积 (mm² @ 28nm) |
|---|---|---|---|---|---|
| Gemmini (默认) | 16x16 | INT8 | 512 | 250 | 1.2 |
| Gemmini (大型) | 64x64 | INT8 | 8192 | 1800 | 8.5 |
| NVIDIA NVDLA (小型) | — | INT8 | 1024 | 500 | 2.5 |
| Google Edge TPU (模拟) | 64x64 | INT8 | 4096 | 2000 | 12.0 |
数据要点: Gemmini 的小型配置在单位面积和功耗的吞吐量上具有竞争力,但大型配置呈线性扩展——这是脉动阵列设计的关键优势。然而,NVDLA 针对卷积的专用硬件在某些层类型(例如深度可分离卷积)上,凭借专门的数据流,性能可能优于 Gemmini。
关键开源代码库:
- ucb-bar/gemmini (⭐1,384):主代码库,包含 Chisel 源代码、测试平台以及与 Rocket Chip 的集成。
- ucb-bar/chisel3 (⭐3,800+):用于构建 Gemmini 的硬件构建语言。
- ucb-bar/rocket-chip (⭐3,200+):Gemmini 设计所嵌入的 RISC-V SoC 生成器。
关键参与者与案例研究
UC Berkeley ASPIRE 实验室: 由 Krste Asanović 教授(也是 RISC-V 联合创始人)领导,该实验室在开源硬件项目方面有着悠久的历史。Gemmini 是其最新成果,此前还包括 Rocket Chip 生成器和 BOOM 乱序执行核心。该实验室的策略是提供一个完整的、开源的 AI 加速器,可用于研究和商业原型设计。
SiFive 与 Esperanto Technologies: 这些 RISC-V 芯片初创公司已公开将 Gemmini 作为其 AI 加速器的参考设计。SiFive 的 Intelligence 系列处理器包含可选的 AI 加速模块,其架构概念与 Gemmini 共享。Esperanto 的 ET-SoC-1 是一款用于 AI 推理的千核 RISC-V 芯片,采用了类似的脉动阵列方法,但其实现是专有的。
与专有加速器的比较:
| 特性 | Gemmini | NVIDIA NVDLA | Google TPUv4i |
|---|---|---|---|
| 许可协议 | 开源 (BSD) | 开源 (NVIDIA) | 专有 |
| 可编程性 | 自定义软件栈 (C++/Python) | NVIDIA 编译器工具链 | 通过 XLA 使用 TensorFlow/PyTorch |
| 灵活性 | 参数化 (尺寸、数据类型、内存) | 固定数据流 (针对卷积优化) | 固定脉动阵列 |
| 生态系统 | RISC-V + Chisel | ARM/x86 + Verilog | Google Cloud |
| 成熟度 | 学术 (流片前) | 生产级 (用于 Xavier, Orin) | 生产级 (云端) |
数据要点: 尽管 NVDLA 和 TPU 提供了生产就绪的性能和软件生态系统,但 Gemmini 的开源特性和参数化灵活性使其成为研究人员和初创公司的首选,他们需要为新颖架构(例如稀疏性、混合精度或非传统数据流)定制加速器。
行业影响与市场动态
Gemmini 是开源 AI 硬件这一更广泛趋势的一部分,该趋势正在挑战 NVIDIA、Intel 和 Google 等专有供应商的主导地位。根据行业报告,全球 AI 加速器市场预计将从 2023 年的 102 亿美元增长到 2030 年的 713 亿美元(复合年增长率 32%)。像 Gemmini 这样的开源加速器正在边缘推理领域占据一小部分但不断增长的份额,该领域预计到 2027 年将达到 150 亿美元。
采用驱动因素:
1. RISC-V 生态系统增长: RISC-V ISA 在物联网、汽车和边缘设备中越来越受欢迎。Gemmini 提供