专利汇可以提供一种面向边缘计算的卷积神经网络处理器专利检索,专利查询,专利分析的服务。并且一种面向边缘计算的 卷积神经网络 处理器,提出一种简易的针对卷积神经网络的控制指令,可以实现卷积层、 池化 层、ReLU激活函数以及全连接层等卷积神经网络基本运算,并通过指令的组合排序,实现 加速 器面向卷积神经网络的的适用性。加速器实现一种高效的脉动计算阵列,可以实现在数据读取过程中,最大限度增加数据的重用性,减少脉动计算阵列对数据缓存单元的 访问 次数。加速器同时支持16位定点数和8位定点数两种数据 精度 的计算,并可以实现同一个网络不同层混合精度的计算,极大降低加速器功耗。本 发明 的加速器保证了最少的数据在缓存部分的调度次数,降低功耗,同时,卷积层计算和全连接层计算共用同一个脉动计算阵列,极大提高了资源利用率。,下面是一种面向边缘计算的卷积神经网络处理器专利的具体信息内容。
1.一种面向边缘计算的卷积神经网络处理器,其特征在于,包括有:
指令缓存单元(1),用于存储面向卷积神经网络的指令集;
译码器(2),用于从指令缓存单元(1)读取指令,并根据指令类型,读取指令类型对应长度的参数,根据参数类型输出相应类型的启动信号;
控制单元(3),接收译码器(2)输出的启动信号,并根据启动信号的类型,启动相应类型的控制子单元输出控制信号;
输入特征图缓存单元(4),保存有卷积计算过程中所需要的输入特征图数据,根据所接收的控制单元(3)输出的控制信号,输出相应的输入特征图数据;
中间结果缓存单元(5),保存有计算过程中所产生的中间数据,根据所接收的控制单元(3)输出的控制信号,进行读取和输出相应的中间数据;
权重缓存单元(6),保存有卷积计算过程中所需要的权重数据,根据所接收的控制单元(3)输出的控制信号,输出相应的权重数据;
处理单元(7),根据所接收的控制单元(3)输出的控制信号,从输入特征图缓存单元(4)接收输入特征图数据,从中间结果缓存单元(5)接收中间数据,以及从权重缓存单元(6)接收权重数据,并对输入特征图数据、中间数据以及权重数据进行相应的处理,并将处理后的输入特征图数据存入输入特征图缓存单元(4),将处理后的中间数据存入中间结果缓存单元(5)。
2.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的指令缓存单元(1)中存储的面向卷积神经网络的指令集包括:
卷积计算指令参数,包括指令类型参数,输入特征图大小参数,权重大小参数,填充大小参数,跨步大小参数,乘加单元使用数参数,输入特征图缓存单元首地址参数,中间结果缓存单元首地址参数,并且,前6个参数均为8bit,后2个参数为16bit;
全连接计算指令参数,包括指令类型参数,输入特征图大小参数,权重大小参数,乘加单元使用数参数,输入特征图缓存单元首地址参数,中间结果缓存单元首地址参数,并且,前4个参数均为8bit,后2个参数为16bit;
池化计算指令参数,包括指令类型参数,池化类型参数,输入特征图大小参数,权重大小参数,跨步大小参数,输入特征图缓存单元首地址参数,中间结果缓存单元首地址参数,并且,前5个参数均为8bit,后2个参数为16bit。
3.根据权利要求2所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的面向卷积神经网络的指令集是以二进制格式保存到指令缓存单元(1)中;所述的指令缓存单元(1)是大小为64KB,位宽为8bit的静态随机存取存储器,具有8bit输入接口、8bit输出接口、16bit地址接口、1bit时钟信号、1bit读写信号与1bit开始信号。
4.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的译码器(2)开始运行时,译码器(2)首先从指令缓存单元读取指令,并根据指令类型,读取指令类型对应长度的参数,并给控制单元(3)中相应指令的控制子单元一个开始信号,当相应运算完成后,译码器(2)接收到一个结束信号,译码器(2)再从指令缓存单元(1)中读取下一条指令及相应参数,直到全部指令运行完成。
5.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的控制单元(3)包括有:
输入特征图控制子单元(3.1),接收来自译码器(2)的输入特征图控制子单元开始信号,用来控制输入特征图缓存单元(4)中数据的读取写入顺序,向输入特征图缓存单元(4)输出1bit使能信号、1bit读写信号和16bit输入特征图地址信号;
输入特征图地址的计算公式为:
Addr_c=Addr_a+Row×N+Col (1)
其中,Addr_c表示输入特征图地址;Addr_a表示来自指令缓存单元(1)的指令参数中的输入特征图缓存单元首地址;N表示来自指令缓存单元(1)的指令参数中的输入特征图大小;Row表示行位置寄存器;Col表示列位置寄存器;
权重控制子单元(3.2),接收来自译码器(2)的权重控制子单元开始信号,输出1bit使能信号、1bit读写信号和16bit权重地址到权重缓存单元(6),用来控制权重缓存单元(6)中数据的读取顺序,在开始信号中,权重地址在每个周期内加1;
脉动计算阵列控制子单元(3.3),接收来自译码器(2)的脉动计算阵列控制子单元开始信号,输出3个1bit信号,分别为输入特征图移位寄存器组开始信号,权重移位寄存器组开始信号,脉动计算阵列开始信号,用来控制处理单元(7)中的数据移位过程和脉动计算过程;
激活函数控制子单元(3.4),接收来自译码器(2)的激活函数控制子单元开始信号,输出1个1bit信号,用来控制处理单元(7)中的激活函数计算;
池化控制子单元(3.5),接收来自译码器的(2)的池化子单元开始信号,输出1个1bit,用来控制处理单元(7)中池化计算;
中间结果控制子单元(3.6),接收来自译码器的(2)的中间结果控制子单元开始信号,用来控制处理单元(7)中的中间结果缓存数据的读取写入顺序;中间结果控制子单元(3.6)的中间结果地址计算公式如下:
Addr_w=Addr_i+Row×M+Col (2)
M=(N+2×P-K)/(S+1) (3)
其中,Addr_w表示中间结果地址;Addr_i表示中间结果首地址;M为一个参数;N表示来自指令参数中的输入特征图大小;K表示来自指令参数中的权重大小;P表示来自指令参数中的填充大小;S表示来自指令参数中的跨步大小;Row表示行位置寄存器;Col表示列位置寄存器。
6.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的输入特征图缓存单元(4)在运行过程中,输出给处理单元(7)所需要的输入特征图数据,并保存处理单元(7)中的激活函数计算结果;所述的输入特征图缓存单元(4)还通过数据总线(8)连接外部存储单元(9)进行数据交换。
7.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的中间结果缓存单元(5),在运行过程中,向处理单元(7)中输入池化计算所需的数据,并且保存处理单元(7)中激活函数计算结果;所述的中间结果缓存单元(5)还通过数据总线(8)连接外部存储单元(9)进行数据交换,将计算需要的中间结果传入中间结果缓存单元(5),所述的中间结果缓存单元(5)是大小为64KB,位宽为8bit的静态随机存取存储器(SRAM),接口有8bit输入接口、8bit输出接口、16bit地址接口、1bit时钟信号接口、1bit读写信号接口与1bit开始信号接口。
8.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的权重缓存单元(6),用于向处理单元(7)输入需要的权重数据;所述的权重缓存单元(6)还通过数据总线(8)连接外部存储单元(9)进行数据交换,所述的权重缓存单元(6)是大小为
64KB,位宽为8bit的静态随机存取存储器,接口有8bit输入接口、8bit输出接口、16bit地址接口、1bit时钟信号接口、1bit读写信号与1bit开始信号接口。
9.根据权利要求1所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,所述的处理单元(7),包括有:
(1)移位寄存器组(7.1),根据控制单元(3)中的脉动计算阵列控制子单元(3.3)的控制指令,实现输入特征图数据与权重数据的串行输入和并行输出;移位寄存器组(7.1)包括有
1个8bit输入,200bit输出的输入特征图移位寄存器组(7.1.1),以及一个8bit输入,48bit输出的权重移位寄存器组(7.1.2);
(2)脉动计算阵列(7.2),根据控制单元(3)中的脉动计算阵列控制子单元(3.3)的控制指令,接收移位寄存器组(7.1)中的输入特征图移位寄存器组输出的输入特征图和权重移位寄存器组输出的权重数据做内积计算;脉动计算阵列(7.2)是由150个乘加计算单元(7.2.1)按照6×25的方式排列为一个矩阵,每行25个,共6行;其中,每行的乘加计算单元(7.2.1)依次串接,每行的首个乘加计算单元(7.2.1)的输入连接权重移位寄存器组(7.1.2),最后一个乘加计算单元(7.2.1)连接激活函数计算单元(7.3);每列的乘加计算单元(7.2.1)依次串接,每列的首个乘加计算单元(7.2.1)的输入连接输入特征图移位寄存器组(7.1.1);
(3)激活函数计算单元(7.3),用于实现卷积神经网络的Relu激活函数计算,包括有:一个比较器(7.3.1)、一个16bit零值寄存器(7.3.2)和一个多路选择器(7.3.3),其中,所述比较器(7.3.1)的一个输入端分别连接脉动计算阵列(7.2)和池化计算单元(7.4)的输出端,另一个输入端连接零值寄存器(7.3.2)的输出端,所述多路选择器(7.3.3)的输入端分别连接接脉动计算阵列(7.2)和池化计算单元(7.4)的输出端、零值寄存器(7.3.2)的输出端以及比较器(7.3.1)的输出端,所述多路选择器(7.3.3)的输出端连接分别连接输入特征图缓存单元(4)和中间结果缓存单元(5)的输入端,其中,所述比较器(7.3.1)和多路选择器(7.3.3)的控制信号输入端连接控制单元(3)中的激活函数控制子单元(3.4),根据激活函数控制子单元(3.4)的控制指令进行卷积神经网络的Relu激活函数计算,计算过程中,比较器(7.3.1)判断特征图缓存单元(4)和中间结果缓存单元(5)输入的数据是否小于零,是则多路选择器(7.3.3)将零值寄存器(7.3.2)的输出作为输出,否则,多路选择器(7.3.3)直接将特征图缓存单元(4)和中间结果缓存单元(5)的输入作为输出;
(4)池化计算单元(7.4),用于进行平均值池化和最大值池化计算,包括有一个比较器(7.4.1)、一个乘法器(7.4.3)、一个加法器(7.4.4)、一个用于保存中间结果的32bit结果寄存器(7.4.2)和一个用于保存平均值常数的16bit平均值常数寄存器(7.4.5);其中,结果寄存器(7.4.2)控制信号输入端连接控制单元(3)中的池化控制子单元(3.5),比较器(7.4.1)的一个输入端连接中间结果缓存单元(5)的输出端,另一个输入端连接结果寄存器(7.4.2)的一个输出端,比较器(7.4.1)的输出端连接结果寄存器(7.4.2)的一个输入端,所述乘法器(7.4.3)分别连接中间结果缓存单元(5)的输出端和平均值常数寄存器(7.4.5)的输出端,所述加法器(7.4.4)的输入端分别连接乘法器(7.4.3)的输出端以及结果寄存器(7.4.2)的一个输出端,所述结果寄存器(7.4.2)的另一输入端连接加法器(7.4.4)的输出端,结果寄存器(7.4.2)的最终输出端连接激活函数计算单元(7.3)的输入端;结果寄存器(7.4.2)根据池化控制子单元(3.5)池化指令中的池化类型参数,进行平均值计算或最大值比较。
10.根据权利要求9所述的一种面向边缘计算的卷积神经网络处理器,其特征在于,每一个所述的乘加计算单元(7.2.1)都包括有一个8bit的输入特征图寄存器(a)、一个16bit的中间结果寄存器(b)、一个8bit的权重寄存器(c)、一个乘法器(d)和一个加法器(e),其中,所述的输入特征图寄存器(a)的输入端与同一列前一个乘加计算单元(7.2.1)中的输入特征图寄存器(a)的输出端连接,所述的权重寄存器(c)的输入端与同一行前一个乘加计算单元(7.2.1)中的权重寄存器(c)的输出端连接,所述中间结果寄存器(b)的输入端与同一行前一个乘加计算单元(7.2.1)中的中间结果寄存器(b)的输出端连接,所述输入特征图寄存器(a)输出的数据与所述权重寄存器(c)输数的据通过乘法器(d)相乘后的结果再与中间结果寄存器(b)输出的数据通过加法器(e)相加后输出到下一个乘加计算单元(7.2.1)的中间结果寄存器(b),所述输入特征图寄存器(a)的输出还连接同一列下一个乘加计算单元(7.2.1)中的输入特征图寄存器(a)的输入端,所述权重寄存器(c)的输出端还连接同一行下一个乘加计算单元(7.2.1)中的权重寄存器(c)的输入端。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
家用电器运行模式管理机构 | 2020-05-08 | 986 |
一种基于双路多向概率映射的调制方法及装置 | 2020-05-08 | 516 |
具有以太网总线系统的车辆和用于运行这样的总线系统的方法 | 2020-05-11 | 829 |
神经网络处理器、芯片和电子设备 | 2020-05-12 | 977 |
一种数据处理的方法及装置 | 2020-05-11 | 802 |
基于PC/104总线与FPGA产生SVPWM的装置及方法 | 2020-05-08 | 717 |
一种基于FPGA的PCIe转三总线接口及方法 | 2020-05-08 | 310 |
多参数现场采集系统 | 2020-05-08 | 906 |
一种监狱工作区域人员身份辨识系统及方法 | 2020-05-11 | 433 |
一种中频宽带多相滤波装置 | 2020-05-08 | 592 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。