You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

单核Rocket-Chip的Gemmini加速器配置是否适配Arty-Z720运行LeNet-5?

Arty-Z720搭载Gemmini运行LeNet-5的配置分析

一、当前配置的资源适配性

你的ArtyGemminiConfig和artyConfig在资源层面适配Arty-Z720开发板:

  • 单核Huge Rocket Core + 64位系统总线:Arty-Z720的FPGA资源(218K LUT、109K FF、4.9MB BRAM)完全支撑该配置,不会出现资源溢出。
  • 8×8 systolic array + 1 tile:小规模计算阵列对FPGA逻辑资源占用极低,不会成为瓶颈。
  • 32KB SP(存储池)+16KB ACC(累加器):总容量48KB,远低于Arty-Z720的BRAM总容量,存储资源充足。
  • 64位DMA总线、8个并发内存请求:符合Arty-Z720的外设总线带宽能力。

二、功能层面的关键问题

当前配置无法直接运行LeNet-5,核心缺失两个LeNet-5必需的模块:

  • has_max_pool = false:LeNet-5包含2层Max Pooling操作,关闭该选项会导致硬件不支持池化计算,推理时直接报错。
  • has_nonlinear_activations = false:LeNet-5依赖ReLU非线性激活函数实现特征提取,关闭后无法完成网络的核心计算逻辑。

三、修改建议

只需调整artyConfig中的两个参数,即可适配LeNet-5推理:

val artyConfig = defaultConfig.copy(
    meshRows = 8, meshColumns = 8,
    tileRows = 1, tileColumns = 1,

    sp_capacity = CapacityInKilobytes(32),
    acc_capacity = CapacityInKilobytes(16),

    dataflow = Dataflow.WS,

    dma_buswidth = 64,
    max_in_flight_mem_reqs = 8,

    has_training_convs = false, // 保持关闭,LeNet-5仅需推理,无需训练相关逻辑
    has_max_pool = true,        // 打开Max Pooling支持
    has_nonlinear_activations = true, // 打开非线性激活支持

    spatialArrayOutputType = SInt(32.W),
  )

val customConfig = artyConfig

额外优化点(非必需):

  • 若想进一步节省资源,可将spatialArrayOutputType改为SInt(8.W)或UInt(8.W):LeNet-5推理用8位定点数即可满足精度要求,能大幅降低逻辑资源占用。

四、总结

调整上述两个参数后,你的配置完全可以在Arty-Z720上完成LeNet-5的FPGA演示,资源和功能层面均能匹配需求。

内容的提问来源于stack exchange,提问作者NauQ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 07:43:17