[发明专利]用于人工智能设备的核心计算单元处理器及加速处理方法有效
申请号: | 201810863952.4 | 申请日: | 2018-08-01 |
公开(公告)号: | CN110796244B | 公开(公告)日: | 2022-11-08 |
发明(设计)人: | 李云鹏;倪岭;邹云晓;邵平平;郑金山 | 申请(专利权)人: | 上海天数智芯半导体有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 南京钟山专利代理有限公司 32252 | 代理人: | 戴朝荣 |
地址: | 201100 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 人工智能 设备 核心 计算 单元 处理器 加速 处理 方法 | ||
1.一种用于人工智能设备的核心计算单元处理器,设有多个神经元,其特征在于,所述神经元由多个乘加器组组成,所述乘加器组包括多个乘加器单元,所述乘加器单元具有累加、最大值和最小值的操作功能,各神经元内的乘加器组数量相同,各乘加器组内的乘加器单元数量相同,一个神经元内的乘加器组共享相同的输入激活数据,一个神经元内的乘加器组处理不同的内核权重数据,但不同神经元内相同位序的乘加器组处理同一内核权重数据,各个乘加器组之间没有数据转换;
所述乘加器单元的输入端与权重寄存器、输入激活寄存器分别连接,乘加器单元内设有乘加器MAC、多个目标寄存器和与多个导出寄存器;所述目标寄存器与乘加器MAC连接,用于存储权重与输入激活数据的计算结果;所述导出寄存器与目标寄存器连接,且与目标寄存器一一对应,用于计算结果的导出。
2.根据权利要求1所述的一种用于人工智能设备的核心计算单元处理器,其特征在于,包括4个神经元,所述神经元由8个乘加器组组成,所述乘加器组包括4个乘加器单元。
3.根据权利要求2所述的一种用于人工智能设备的核心计算单元处理器,其特征在于,所述乘加器单元内设有4个导出寄存器和4个目标寄存器。
4.根据权利要求2所述的一种用于人工智能设备的核心计算单元处理器,其特征在于,所述处理器包括一缓存器L1,所述缓存器L1用于存储外部模块派发的输入激活数据和权重数据,所述输入激活寄存器、权重寄存器从所述缓存器L1中调用数据。
5.根据权利要求4所述的一种用于人工智能设备的核心计算单元处理器,其特征在于,所述外部模块为波张量分派器。
6.一种基于处理器的人工智能设备核心计算单元加速处理方法,所述处理器为一种用于人工智能设备的核心计算单元处理器,其特征在于:
所述处理器设有多个神经元,所述神经元由多个乘加器组组成,所述乘加器组包括多个乘加器单元,所述乘加器单元具有累加、最大值和最小值的操作功能,各神经元内的乘加器组数量相同,各乘加器组内的乘加器单元数量相同,一个神经元内的乘加器组共享相同的输入激活数据,一个神经元内的乘加器组处理不同的内核权重数据,但不同神经元内相同位序的乘加器组处理同一内核权重数据,各个乘加器组之间没有数据转换;
所述方法包括以下步骤:
所述乘加器单元处理的数据包括非零的权重数据及其在内核中的位置指数、非零的输入激活数据及其在特征图中的位置指数,不同的内核权重数据被分别映射到一个神经元中不同的乘加器组上,并播送到其它神经元内对应的乘加器组中;一个神经元内的乘加器组处理共享相同的输入激活数据,具有相同特征维度,但来自不同输入通道的输入激活数据在同一个乘加器组中进行累加处理,所述特征维度为输入激活数据在特征图上的位置。
7.根据权利要求6所述的人工智能设备核心计算单元加速处理方法,其特征在于,在所述乘加器单元中,权重数据乘以输入激活数据的结果会被累加或与前一个结果进行比较,以得到最大或最小的结果并存储在目标寄存器中。
8.根据权利要求6所述的人工智能设备核心计算单元加速处理方法,其特征在于,所述处理器设有4个神经元,所述神经元由8个乘加器组MAC4组成,所述MAC4包括4个乘加器单元,乘加器单元内设有乘加器MAC、4个目标寄存器与4个导出寄存器,目标寄存器与导出寄存器一一对应,所述乘加器MAC的输入端与权重寄存器、输入激活寄存器分别连接;所述目标寄存器与乘加器MAC的输出端连接,用于存储权重与输入激活数据的计算结果;所述导出寄存器与目标寄存器连接,用于计算结果的导出。
9.根据权利要求7所述的人工智能设备核心计算单元加速处理方法,其特征在于,其3x3内核的权重数据与输入激活数据匹配算法,包括:
设一个乘加器组MAC4包括4个相同的乘加器单元MACn,对于一个有16个目的地的波张量,则每个乘加器单元MACn可处理其中的4个,所以一个乘加器单元MACn包括4个目标寄存器OAmn,n和m为0到3中的一个自然数,即每个乘加器组内分别设有一个4行4列的目标寄存器阵列,m和n分别表述每个目标寄存器在该阵列中的行和列;
权重数据及其在内核中的位置指数(i,j)会被一个乘加器组MAC4接收,所述乘加器组MAC4也将接收放在一个6x6特征图数组中的输入激活数据与它们在数组中的位置指数(s,t),所述i和j分别表示3x3内核数组的某一行和列,所述s和t分别表示6x6特征图数组的某一行和列,i、j为0到2中的一个自然数;s、t为0到5中的一个自然数;
对于每个权重数组元素W(i,j),位置满足条件0=(s-i)=3和0=(t-j)=3的所有输入激活数据,都和所述W(i,j)一起发送给MAC(t-j),它们相乘,其结果通过目标寄存器(s-j)处理,这种处理根据用户需求是累加、最大值或最小值,t-j、s-j为0到3中的一个自然数,s-j表示目标寄存器的行坐标,t-j表示目标寄存器所在列坐标,或者说MACn的n值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海天数智芯半导体有限公司,未经上海天数智芯半导体有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810863952.4/1.html,转载请声明来源钻瓜专利网。