FPGA · Research Prototype

FPGA 图像超分辨率加速器

面向图像超分辨率网络的 FPGA 数据流加速原型,重点记录带宽、缓存和流水线设计问题。

FPGAVivadoAXIHLSCNN
目录项目背景目标与约束系统架构算法设计硬件架构数据通路存储结构定点化方案RTL 实现验证方法综合或实现结果遇到的问题最终结论后续计划

项目背景

图像超分辨率网络包含卷积、非线性和上采样等计算。FPGA 适合探索流式数据通路和片上缓存复用。本项目页面当前用于记录研究原型,不包含未经确认的性能数据。

目标与约束

  • 建立可复现的 FPGA 加速器实验结构。
  • 明确 AXI 数据搬运、片上缓存和计算阵列之间的边界。
  • 保留与软件参考模型对拍的验证路径。
  • 待补充具体板卡、频率、资源和性能报告。

系统架构

PS / Host
 └─ AXI DMA
     ├─ Input Buffer
     ├─ Convolution Pipeline
     ├─ Upsample Stage
     └─ Output Buffer

算法设计

第一阶段只考虑小型卷积网络,重点观察特征图尺寸、通道数和分块策略对带宽的影响。

硬件架构

计算阵列采用可参数化乘加结构。是否使用 HLS 或手写 RTL 将根据模块复杂度逐步确定。

数据通路

输入数据以行缓存方式进入窗口生成模块,再送入卷积流水线。输出 buffer 用于吸收计算和 AXI 写回之间的速率差。

存储结构

存储用途状态
Line Buffer输入窗口复用待细化
Weight Buffer权重分块缓存待细化
Output Buffer写回缓冲待细化

定点化方案

计划以 8 bit 激活和权重作为初始研究点,累加位宽根据层参数单独分析。

RTL 实现

当前保留模块划分草案,后续补充接口定义和 testbench。

验证方法

使用 Python 参考模型输出测试向量,RTL/HLS 仿真结果与参考模型逐像素对比。

综合或实现结果

待补充。未确认的资源、频率和吞吐数据不会写入本页。

遇到的问题

初步关注边界填充、AXI burst 对齐、流水线暂停和输出重排。

最终结论

本项目目前是研究原型记录,尚未形成正式结论。

后续计划

完善网络结构、板卡约束、自动化仿真和结果报告模板。

FPGA 神经网络加速器的数据流设计

梳理 FPGA 上神经网络加速器的数据复用、流水线、片上缓存和 AXI 传输组织方式。

从算法模型到可综合 RTL 的完整流程

记录神经网络算子从 Python 模型、定点化、接口定义到可综合 RTL 的工程拆解方法。