一种卷积神经网络硬件加速器及加速方法技术

技术编号:37256875 阅读:27 留言:0更新日期:2023-04-20 23:32
本发明专利技术公开了一种卷积神经网络硬件加速器,包括:存储器以输入通道优先的顺序存储输入特征图数据,特征图输入模块以输入通道优先读取方式读取输入特征图数据,特征图缓存模块:将输入特征图数据以输入通道优先存储的方式进行缓存,卷积核模块以输入通道优先存储的方式存储卷积核数据,计算模块每个时钟周期内依次并行读取M个输入特征图数据和M个卷积核数据,将输入特征图数据和M个卷积核数据进行点对点相乘,将所有点乘结果进行累加后得到卷积结果,将卷积结果并行输出N个输出通道的输出特征图数据;特征图输出模块将输出特征图数据以输出通道优先存储的方式写入存储器中。通过本发明专利技术能够提升硬件加速器卷积运算的计算效率。效率。效率。

【技术实现步骤摘要】
一种卷积神经网络硬件加速器及加速方法


[0001]本专利技术涉及深度学习硬件加速
,尤其涉及一种卷积神经网络硬件加速器及加速方法。

技术介绍

[0002]卷积神经网络是深度学习中最重要的算法之一,其被广泛应用于目标识别、无人驾驶以及人工智能等多个领域。卷积运算是卷积神经网络中计算量最大的部分。由于当前卷积神经网络越来越深,计算量越来越大,每一层算子的数据尺寸多变,因此对于卷积运算的计算效率提升和计算优化成了硬件加速器亟需解决的问题。
[0003]现有技术方案中,卷积计算的通用性不够灵活,无法高效地支持不同尺寸的卷积运算,难以充分利用硬件加速器上的计算资源,存在计算效率不高的技术问题,并且在下一层的卷积计算前需要对前一层的特征图结果进行额外的格式转换,需要耗费额外的处理时间和硬件资源。

技术实现思路

[0004]基于此,本专利技术的目的在于提供一种卷积神经网络硬件加速器及加速方法,能够提升卷积神经网络的整体计算效率,不需要复杂的逻辑即可实现卷积神经网络,降低了硬件资源的消耗。
[0005]为实现上述目的,本专本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种卷积神经网络硬件加速器,其特征在于,所述硬件加速器包括:存储器,用于以输入通道优先的顺序存储输入特征图数据(IC,IH,IW),其中,IC为输入通道数,IH为输入行数,IW为输入列数;特征图输入模块,用于以输入通道优先读取方式从所述存储器中读取输入特征图数据;特征图缓存模块,用于将所述特征图输入模块输出的输入特征图数据以输入通道优先存储的方式进行缓存,并且单个时钟周期内并行写入所述特征图缓存模块的输入特征图数据为M个,M为大于或等于1的整数;卷积核模块,包括N个卷积核缓存模块,N个卷积核缓存模块对应N个输出通道,每一个卷积核缓存模块用于以输入通道优先存储的方式存储卷积核数据(IC,KH,KW),并且单个时钟周期内并行写入所述卷积核缓存模块的卷积核数据为M个,N为大于或等于1的整数,KH为卷积核行数,KW为卷积核列数;计算模块,包括N个计算单元,用于依次从所述特征图缓存模块并行读取M个输入特征图数据,将所述M个输入特征图数据作为一组数据,复制成N组输入特征图数据并行输出至N个计算单元,以及从每一个卷积核缓存模块中并行读取M个卷积核数据,并行输出至对应的计算单元,每一个计算单元将所述M个输入特征图数据和M个卷积核数据进行点对点相乘,每过一个时钟周期用新的一组M个输入特征图数据和M个卷积核数据进行点对点相乘,每个计算单元同时进行M次乘法运算,共需P个时钟周期读取完单次卷积运算所需的全部数据,将所有乘法结果相加得到卷积结果,将N个卷积结果并行地输出至基于输出通道处理的函数模块进行运算,最终输出N个输出通道的输出特征图数据,其中,P=KH*KW*L,数模块进行运算,最终输出N个输出通道的输出特征图数据,其中,P=KH*KW*L,表示向上取整;特征图输出模块,用于将所述N个输出通道的输出特征图数据以输出通道优先存储的方式写入所述存储器中,并当所有输出通道的输出特征图数据存储完成后作为当前层输出特征图数据,并以该当前层输出特征图数据作为下一层卷积运算的输入特征图数据。2.如权利要求1所述的卷积神经网络硬件加速器,其特征在于,所述特征图输入模块以输入通道优先的读取方式从所述存储器中读取输入特征图数据,具体为:先读取同一行列的所有输入通道的输入特征图数据,再读取下一行列的所有输入通道的输入特征图数据,直至所有行所有列的所有输入通道的输入特征数据读取完成。3.如权利要求2所述的卷积神经网络硬件加速器,其特征在于,所述特征图缓存模块将输入特征图数据按输入通道优先的顺序进行缓存具体包括:将同一行列的所有输入通道的数据以M个数据为一组来进行分组,分组数为所有行列的数据总分组数为IH*IW*L,依次将分组后的每组输入特征图数据并行写入所述特征图缓存模块。4.如权利要求3所述的卷积神经网络硬件加速器,其特征在于,所述特征图缓存模块中输入特征图数据的存储地址的特征包括:同一组M个输入特征图数据的存储地址相同;不同行列上的输入特征图数据的存储地址不同;同行相邻列的输入特征图数据的存储地址相连续;相邻行同一列的输入特征图数据的存储地址间隔为L。
5.如权利要求4所述的卷积神经网络硬件加速器,其特征在于,所述卷积核缓存模块将卷积核数据按输入通道优先的顺序进行缓存,具体包括:将同一输出通道的同一行列的所有输入通道的卷积核数据以M个数据为一组来进行分组,分组数为同一输出通道所有行列的数据总分组数为KH*KW*L,依次将分组后的每组卷积核数据并行写入所述卷积核缓存模块。6.如权利要求5所述的卷积神经网络硬件加速器,其特征在于,所述卷积核缓存模块...

【专利技术属性】
技术研发人员:丁昊杰
申请(专利权)人:杭州菲数科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1