【技术实现步骤摘要】
用于神经网络处理器的计算方法以及神经网络处理器
[0001]本专利技术属于嵌入式
,特别地涉及用于神经网络处理器的计算方法以及神经网络处理器。
技术介绍
[0002]传统嵌入式神经网络处理器(NPU,Neural
‑
network Processing Unit)的乘法累加器(MAC,Multiply Accumulate)在运算时,仅能处理固定尺度(例如16x16)大小对齐的数据。当所需处理数据在输入通道维度上某一维度小于乘法累加器输入通道维度大小对齐量时,将使乘法累加器中的一部分乘累加单元运算无效数据,导致嵌入式神经网络处理器硬件未被完全利用,导致嵌入式神经网络处理器性能表现情况不佳,且带来不必要的功耗开销。
技术实现思路
[0003]本专利技术的目的在于提供用于神经网络处理器的计算方法以及神经网络处理器,用于对嵌入式神经网络处理器中乘法累加器的利用率进行改善提升,优化嵌入式神经网络处理器性能。
[0004]在第一方面,本专利技术的实施例提供一种用于神经网络处理器的计算方法 ...
【技术保护点】
【技术特征摘要】
1.一种用于神经网络处理器的计算方法,其特征在于,包括:获取输入数据,所述输入数据的输入通道维度小于神经网络处理器的乘法累加器的硬件输入通道维度;对所述输入数据在输入通道中的待读取数据进行重组排列,使得在读取所述输入通道的数据时,跳过所述输入通道的无效数据,以连续读取所述输入数据;以及将所述输入通道的读取的所述输入数据和权重数据对应相乘并累加。2.根据权利要求1所述的计算方法,其特征在于,对所述输入数据在输入通道中的待读取数据进行重组排列包括:在高度方向上对所述输入数据的待读取数据进行切分分组,使得读取所述输入通道的数据时,跳过轴向所述输入通道的无效数据,以连续读取高度方向上的所述输入数据。3.根据权利要求1或2所述的计算方法,其特征在于,对所述输入数据在输入通道中的待读取数据进行重组排列包括:在宽度方向上对所述输入数据的待读取数据进行切分分组,使得读取所述输入通道的数据时,跳过横向所述输入通道的无效数据,以连续读取宽度方向上的所述输入数据。4.根据权利要求1所述的计算方法,其特征在于,还包括:获取所述权重数据;以及对所述权重数据进行重组排列,包括:复制所述权重数据,使得各读取的所述输入数据分别对应于一份所述权重数据。5.根据权利要求4所述的计算方法,其特征在于,相同输出通道的各读取的所述输入数据的权重数据相同。6.根据权利要求1所述的计算方法,其特征在于,还包括:获取所述权重数据,所述权重数据包括多份复制数据,各读取的所述输入数据分别对应于一份所述复制数据。7.根据权利要求1所述的计算方法,其特征在于,将所述输入通道的读取的所述输入数据和权重数据对应相乘并累加包括:将所述输入通道的读取的不同的输入数据分别与各自所对应的权重数据依次相乘后累加,以同时输出多个输出通道的输出数据,其中所述输入通道的读取的相同的输入数据与所述输入通道所所对应的权重数据依次相乘后累加形成一个输出通道的输出数据。8.根据权利要求1所述的计算方法,其...
【专利技术属性】
技术研发人员:肖一键,陈原平,曾飞,
申请(专利权)人:瑞芯微电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。