The invention provides a convolution hardware structure suitable for the configurable precision of the deep learning hardware accelerator, which includes: the output end of the first mapping module and the second mapping module are respectively connected with the input end of the first addition array and the second addition array, the output end of the first addition array and the second addition array are connected with the input end of a plurality of unsigned multiplication units, and a plurality of unsigned multiplication units The output end of the multiplication unit is connected with the input end of the partial product shift add array, the output end of the partial product shift add array is connected with the input end of the third mapping module, and the output end of the third mapping module is connected with the input end of the third adding array; the first mapping module, the second mapping module and the third mapping module select the signal path according to the accuracy. The invention can dynamically switch the calculation accuracy, and the calculation ability of the corresponding neural network can meet the requirements of most applications. The pipeline structure is adopted, and the addition array and the partial product shift plus array on the data path are reused at the same time, which can not only achieve the fast working frequency, but also save the hardware area.
【技术实现步骤摘要】
适用于深度学习硬件加速器的可配置精度的卷积硬件结构
本专利技术涉及电子电路
,具体地,涉及适用于深度学习硬件加速器的可配置精度的卷积硬件结构。
技术介绍
深度学习是机器学习中一个非常接近人工智能的领域,它的目的在于建立一个神经网络以模拟人脑的学习和分析的过程。深度学习的主要思想就是堆叠多个层,将低层的输出作为更高一层的输入,含多隐层的多层感知器就是一种深度学习结构的体现。通过这样的方式,深度学习能够通过组合低层特征来形成更为抽象的高层表示属性,从而发现数据的分布式特征表示。而如何使深度学习运行更高效是摆在不少工程师面前的难题。业内最常用的方案有两种:硬件加速和软件(代码)加速。前者主要是提升算力,尤其是CPU和GPU的算力,例如公开号为CN108108813A的专利技术专利“一种大类别深度学习GPU并行加速的方法”。计算能力越好,这些简单的矩阵运算自然就越快。后者主要有两种路径,一是利用诸如二值网络模型等小网络模型来实现差与大网络差不多的效果,二是使用矩阵运算加速的库。对于硬件加速而言,深度学习神经网络的核心运算是卷积,卷积核由乘法和加法组成。随着神经网络算法的发展,计算所需要的精度已经从32bit下降到16bit,一些特殊的网络还可以使用8bit精度的卷积核。在卷积核的设计上,已有的方案集中在单精度的16bit运算和8bit运算。目前的技术方案虽然可以提高运算速度,但是运算精度单一,无法适配复杂多样的网络,且计算能力固定,也无法满足日益发展的神经网络对算力的需求。专利技 ...
【技术保护点】
1.一种适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,包括:第一重映射模块、第二重映射模块、第三重映射模块、第一加法阵列、第二加法阵列、第三加法阵列、多个无符号乘法单元和部分积移位相加阵列;/n所述第一重映射模块和所述第二重映射模块的输出端分别连接所述第一加法阵列和所述第二加法阵列的输入端,所述第一加法阵列和所述第二加法阵列的输出端连接所述多个无符号乘法单元的输入端,所述多个无符号乘法单元的输出端连接所述部分积移位相加阵列的输入端,所述部分积移位相加阵列的输出端连接所述第三重映射模块的输入端,所述第三重映射模块的输出端连接所述第三加法阵列的输入端;/n其中所述第一重映射模块、所述第二重映射模块和所述第三重映射模块根据精度选择信号选择数据通路。/n
【技术特征摘要】
1.一种适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,包括:第一重映射模块、第二重映射模块、第三重映射模块、第一加法阵列、第二加法阵列、第三加法阵列、多个无符号乘法单元和部分积移位相加阵列;
所述第一重映射模块和所述第二重映射模块的输出端分别连接所述第一加法阵列和所述第二加法阵列的输入端,所述第一加法阵列和所述第二加法阵列的输出端连接所述多个无符号乘法单元的输入端,所述多个无符号乘法单元的输出端连接所述部分积移位相加阵列的输入端,所述部分积移位相加阵列的输出端连接所述第三重映射模块的输入端,所述第三重映射模块的输出端连接所述第三加法阵列的输入端;
其中所述第一重映射模块、所述第二重映射模块和所述第三重映射模块根据精度选择信号选择数据通路。
2.根据权利要求1所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述第一重映射模块、所述第二重映射模块和所述第三重映射模块根据精度选择信号对输入信号进行相应的变换。
3.根据权利要求1所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述第一加法阵列、所述第二加法阵列和所述第三加法阵列能够对输入数据进行补码;
所述第一加法阵列和所述第二加法阵列分别包括16个加法器构成的加法阵列;所述第三加法阵列包括32个加法器构成的加法阵列。
4.根据权利要求3所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述多个无符号乘法单元包括16个4bit精度的无符号乘法单元。
5.根据权利要求4所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述部分积移位相加阵列包括四级部分积移位相加阵列,所述四级部分积移位相加阵列包括:
8个S4A8单元:将两两4bit精度的无符号乘法单元的输出做移位相加,得到8个8bitx4bit的输出;
4个S4A12单元:将两两S4A8单元的输出做移位相加,得到4个8bitx8bit的输出;
2个S8A16单元:将两两S4A12单元的输出做移位相加,得到2个16bitx8bit的输出;
1个S8A24单元:将两个S8A16单元的输出做移位相加,得到1个16bitx16bit的输出。
6.根据权利要求4所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述无符号乘法单元的实现方式包括:Array乘法器或基于华莱士树的乘法器。
7.根据权利要求4所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述无符号乘法单元的最小精度为4bit。
8.根据权利要求5所述的适用于深度学习硬件加速器的可配置精度的卷积硬件结构,其特征在于,所述精度选择信号包括CP[4:0];
当CP[0]为1,表示当前精度为16bitx16bit;
当CP[1]为1,表示当前精度为16bitx8bit;
当CP[2]为1,表示当前精度为8bitx8bit;
当CP[3]...
【专利技术属性】
技术研发人员:沈松剑,沈沙,李毅,
申请(专利权)人:上海酷芯微电子有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。