时间:2024-08-07 来源:网络搜集 关于我们 0
上一篇的入门实例中,我们针对一层卷积神经网络设计了一个完全流水化的并行加速器,并获得了不错的加速效果(传送门:3天上手,30天精通!—— 深度学习FPGA加速器设计)。在此基础上,本文对基于FPGA的深度学习加速器设计进行进一步的优化。
在入门实例中,我们完成了仅支持一个很小规模的卷积层的加速器设计,这个设计离实用还有相当远的一段距离。这里面主要涉及两方面的问题:一方面,现阶段实际应用的CNN往往都是由多个卷积层级联而成的,而每一个卷积层所处理的图像通道数、图像大小也各不相同,如何为不同配置的CNN模型设计加速器呢?另一方面,无论我们采用什么FPGA芯片,片上的计算资源(DSP等)和存储资源(BRAM等)都是有限的,而CNN的规模、图像的大小理论上是可以无限增长的,那么如何在资源限制下让加速器实现对大规模CNN模型的支持呢?