同时执行长短期记忆胞计算的神经网络单元制造技术

技术编号:14768040 阅读:75 留言:0更新日期:2017-03-08 12:21
一输出缓冲器用以装载N个文字,分配至N/J个互斥的输出缓冲文字群组。N个处理单元分配至N/J个互斥的处理单元群组。各个处理单元包括一累加器与一算术单元,算术单元对包括累加器输出在内的输入执行运算以产生一第一结果累加至累加器。多个启动函数单元选择性地对于累加器输出执行启动函数以产生结果提供至N个输出缓冲文字。处理单元群组中的四个处理单元与多个启动函数单元中的至少其中之一分别计算长短期记忆胞的输入闸,遗忘闸,输出闸与候选状态,以写入相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。

【技术实现步骤摘要】

本专利技术涉及一种处理器,特别涉及一种提升人工神经网络的运算效能与效率的处理器。本申请案主张下列的美国临时申请案的国际优先权。这些优先权案的全文并入本案以供参考。本申请案关联于下列同时提出申请的美国申请案。这些关联申请案的全文并入本案以供参考。
技术介绍
近年来,人工神经网络(artificialneuralnetworks,ANN)重新吸引了人们的注意。这些研究通常被称为深度学习(deeplearning)、计算机学习(computerlearning)等类似术语。通用处理器运算能力的提升也推升了人们在数十年后的现在对于人工神经网络的兴趣。人工神经网络近期的应用包括语言与影像辨识等。对于提升人工神经网络的运算效能与效率的需求似乎正在增加。
技术实现思路
有鉴于此,本专利技术提供一种装置,此装置包括一输出缓冲器,一个由N个处理单元构成的阵列与多个启动函数单元。其中,输出缓冲器用以装载N个文字,N个文字分配至N/J个互斥的输出缓冲文字群组内,输出缓冲文字群组具有N个文字中的J个文字,J大于3,N至少是J的十六倍。阵列内的N个处理单元分配至N/J个互斥的处理单元群组,处理单元群组具有N个处理单元中的J个处理单元,各个处理单元群组对应N/J个输出缓冲文字群组的其中之一。各个处理单元包括一累加器与一算术单元,其中,累加器具有一输出,算术单元对输入执行运算以产生一第一结果累加至累加器,此输入包括累加器输出。多个启动函数单元选择性地对于累加器的输出执行一启动函数以产生结果提供至N个输出缓冲文字。其中,对于具有J个处理单元的N/J个处理单元群组中的各个处理单元群组而言,处理单元群组的J个处理单元中的第一,第二,第三与第四处理单元与多个启动函数单元中的至少一个启动函数单元分别计算一长短期记忆胞的一输入闸,一遗忘闸,一输出闸与一候选状态,以写入相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。本专利技术还提供一种运作一装置的方法。此装置具有一输出缓冲器,一个由N个处理单元构成的阵列与多个启动函数单元。其中,输出缓冲器用以装载N个文字,N个文字分配至N/J个互斥的输出缓冲文字群组内,输出缓冲文字群组具有N个文字中的J个文字,J大于3,N至少是J的十六倍。N个处理单元分配至N/J个互斥的处理单元群组,处理单元群组具有N个处理单元中的J个处理单元,各个处理单元群组对应N/J个输出缓冲文字群组的其中之一。各个处理单元包括一累加器与一算术单元,累加器具有一输出,算术单元对输入执行运算以产生一第一结果累加至累加器,此输入包括累加器输出。多个启动函数单元选择性地对于累加器的输出执行一启动函数以产生结果提供至N个输出缓冲文字。此方法包括:对于具有J个处理单元的N/J个处理单元群组中的各个处理单元群组:利用处理单元群组的J个处理单元中的第一,第二,第三与第四处理单元与多个启动函数单元中的至少一个启动函数单元分别计算一长短期记忆胞的一输入闸,一遗忘闸,一输出闸与一候选状态,以写入相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。本专利技术提供一种编码于至少一非瞬时计算机可使用媒体以供一计算机装置使用的一计算机程序产品。此计算机程序产品包括内含于媒体的计算机可使用程序代码,用以描述一装置。此计算机可使用程序代码包括第一程序代码,第二程序代码与第三程序代码。第一程序代码用以描述一输出缓冲器,此输出缓冲器用以装载N个文字,N个文字分配至N/J个互斥的输出缓冲文字群组内,输出缓冲文字群组具有N个文字中的J个文字,J大于3,N至少是J的十六倍。第二程序代码用以描述一个由N个处理单元构成的阵列,N个处理单元分配至N/J个互斥的处理单元群组,处理单元群组具有N个处理单元中的J个处理单元,各个处理单元群组对应N/J个输出缓冲文字群组的其中之一,各个处理单元包括一累加器与一算术单元,累加器具有一输出,算术单元对输入执行运算以产生一第一结果累加至累加器,此输入包括累加器输出。第三程序代码用以描述多个启动函数单元,多个启动函数单元选择性地对于该累加器的输出执行一启动函数以产生结果提供至N个输出缓冲文字。其中,对于具有J个处理单元的N/J个处理单元群组中的各个处理单元群组而言:处理单元群组的J个处理单元中的第一,第二,第三与第四处理单元与多个启动函数单元中的至少一个启动函数单元分别计算一长短期记忆胞的一输入闸,一遗忘闸,一输出闸与一候选状态,以写入相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。本专利技术所采用的具体实施例,将通过以下的实施例及图式作进一步的说明。附图说明图1为显示包含神经网络单元(neuralnetworkunit,NNU)的处理器的方块示意图。图2为显示图1的神经处理单元(neuralprocessingunit,NPU)的方块示意图。图3为方块图,显示利用图1的神经网络单元的N个神经处理单元的N个多任务缓存器,对于由图1的数据随机存取存储器取得的一列数据文字执行如同N个文字的旋转器(rotator)或称循环移位器(circularshifter)的运作。图4为表格,显示一个储存于图1的神经网络单元的程序存储器并由该神经网络单元执行的程序。图5为显示神经网络单元执行图4的程序的时序图。图6A为显示图1的神经网络单元执行图4的程序的方块示意图。图6B为流程图,显示图1的处理器执行架构程序,以利用神经网络单元执行关联于人工神经网络的隐藏层的神经元的典型乘法累加启动函数运算的运作,如同由图4的程序执行的运作。图7为显示图1的神经处理单元的另一实施例的方块示意图。图8为显示图1的神经处理单元的又一实施例的方块示意图。图9为表格,显示一个储存于图1的神经网络单元的程序存储器并由该神经网络单元执行的程序。图10为显示神经网络单元执行图9的程序的时序图。图11为显示图1的神经网络单元的一实施例的方块示意图。在图11的实施例中,一个神经元分成两部分,即启动函数单元部分与算术逻辑单元部分(此部分还包含移位缓存器部分),而各个启动函数单元部分由多个算术逻辑单元部分共享。图12为显示图11的神经网络单元执行图4的程序的时序图。图13为显示图11的神经网络单元执行图4的程序的时序图。图14为方块示意图,显示移动至神经网络(MTNN)架构指令以及其对应于图1的神经网络单元的部分的运作。图15为方块示意图,显示移动至神经网络(MTNN)架构指令以及其对应于图1的神经网络单元的部分的运作。图16为显示图1的数据随机存取存储器的一实施例的方块示意图。图17为显示图1的权重随机存取存储器与缓冲器的一实施例的方块示意图。图18为显示图1的可动态配置的神经处理单元的方块示意图。图19为方块示意图,显示依据图18的实施例,利用图1的神经网络单元的N个神经处理单元的2N个多任务缓存器,对于由图1的数据随机存取存储器取得的一列数据文字执行如同旋转器(rotator)的运作。图20为表格,显示一个储存于图1的神经网络单元的程序存储器并由该神经网络单元执行的程序,而此神经网络单元具有如图18的实施例所示的神经处理单元。图21为显示神经网络单元执行图20的程序的时序图,此神经网络单元具有如图18所示的神经处理单元执行于窄配置。图22为显示图1的本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201610864446.html" title="同时执行长短期记忆胞计算的神经网络单元原文来自X技术">同时执行长短期记忆胞计算的神经网络单元</a>

【技术保护点】
一种装置,其特征在于,包括:一输出缓冲器,用以装载N个文字,该N个文字分配至N/J个互斥的输出缓冲文字群组内,该输出缓冲文字群组具有该N个文字中的J个文字,J大于3,N至少是J的十六倍;一个由N个处理单元构成的阵列,该N个处理单元分配至N/J个互斥的处理单元群组,该处理单元群组具有该N个处理单元中的J个处理单元,各该处理单元群组对应该N/J个输出缓冲文字群组的其中之一,各该处理单元包括一累加器与一算术单元,该累加器具有一输出,该算术单元对输入执行运算以产生一第一结果累加至该累加器,该输入包括该累加器输出;以及多个启动函数单元,选择性地对于该累加器的该输出执行一启动函数以产生结果提供至该N个输出缓冲文字;其中,对于该具有J个处理单元的N/J个处理单元群组中的各该处理单元群组而言:该处理单元群组的该J个处理单元中的第一,第二,第三与第四处理单元与该多个启动函数单元中的至少一个启动函数单元分别计算一长短期记忆胞的一输入闸,一遗忘闸,一输出闸与一候选状态,以写入该相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。

【技术特征摘要】
2015.10.08 US 62/239,254;2015.12.02 US 62/262,104;1.一种装置,其特征在于,包括:一输出缓冲器,用以装载N个文字,该N个文字分配至N/J个互斥的输出缓冲文字群组内,该输出缓冲文字群组具有该N个文字中的J个文字,J大于3,N至少是J的十六倍;一个由N个处理单元构成的阵列,该N个处理单元分配至N/J个互斥的处理单元群组,该处理单元群组具有该N个处理单元中的J个处理单元,各该处理单元群组对应该N/J个输出缓冲文字群组的其中之一,各该处理单元包括一累加器与一算术单元,该累加器具有一输出,该算术单元对输入执行运算以产生一第一结果累加至该累加器,该输入包括该累加器输出;以及多个启动函数单元,选择性地对于该累加器的该输出执行一启动函数以产生结果提供至该N个输出缓冲文字;其中,对于该具有J个处理单元的N/J个处理单元群组中的各该处理单元群组而言:该处理单元群组的该J个处理单元中的第一,第二,第三与第四处理单元与该多个启动函数单元中的至少一个启动函数单元分别计算一长短期记忆胞的一输入闸,一遗忘闸,一输出闸与一候选状态,以写入该相对应输出缓冲文字群组中的相对应第一,第二,第三与第四文字。2.根据权利要求1所述的装置,其特征在于,该输出缓冲器包括一屏蔽输入,用以控制该N个文字的其中之一维持其原本数值或是利用该多个启动函数单元的其中之一透过对该输出缓冲文字的该相对应处理单元的该累加器输出执行一启动函数所产生的该结果进行更新。3.根据权利要求2所述的装置,其特征在于,对于各该输出缓冲文字群组,该屏蔽输入控制该输出缓冲文字群组的该J个文字中的第一,第二,第三与第四文字,以计算出来的该输入闸,该遗忘闸,该输出闸与该候选状态进行更新。4.根据权利要求3所述的装置,其特征在于,该屏蔽输入控制该输出缓冲文字群组的该J个文字中的该第一,第二与第三文字,在不同于更新该J个文字的该第一,第二与第三文字的时间内,以该输入闸,该遗忘闸,与该输出闸进行更新。5.根据权利要求3所述的装置,其特征在于,对于该具有J个处理单元的N/J个处理单元群组中的各该处理单元群组,该J个处理单元的其中之一与该多个启动函数单元的其中之一利用分别接收自该输出缓冲文字群组的该J个文字中的该第二,第三与第四文字的该输入闸,该遗忘闸与该候选状态,以及该长短期记忆胞的一当前状态,计算该长短期记忆胞的一新状态。6.根据权利要求5所述的装置,其特征在于,还包括:一随机存取存储器,该J个处理单元的该其中之一从该随机存取存储器读取该长短期记忆胞的该当前状态,并且该输出缓冲器将该长短期记忆胞的该新状态写入该随机存取存储器作为该长短期记忆胞在下一个时间步骤中的一当前状态。7.根据权利要求5所述的装置,其特征在于,对于该具有J个处理单元的N/J个处理单元群组中的各该处理单元群组,该J个处理单元的其中之一与该多个启动函数单元的其中之一:计算该长短期记忆胞的该新状态的一启动函数;以及利用该输出闸与该长短期记忆胞的该新状态的该启动函数计算该长短期记忆胞的一新输出。8.根据权利要求7所述的装置,其特征在于,还包括:一随机存取存储器,该J个处理单元从该随机存取存储器读取该长短期记忆胞的一当前输出,并且该输出缓冲器将该长短期记忆胞的该新输出写入该随机存取存储器。9.根据权利要求1所述的装置,其特征在于,该处理单元群组的该J个处理单元中的该第一,第二,第三与第四处理单元同时计算相对应的该第一结果以累加至其相对应的累加器,以及该多个启动函数单元中的至少一个该启动函数单元对该相对应第一结果执行一启动函数以计算该相对应输入闸,遗忘闸,输出闸与候选状态。10.根据权利要求9所述的装置,其特征在于,该多个启动函数单元包括N个启动函数单元,对应于该N个处理单元;该N个启动函数单元同时从该相对应的处理单元接收该累加器输出并计算该输入闸,该遗忘闸,该输出闸与该候选状态。11.根据权利要求9所述的装置,其特征在于,该多个启动函数单元的数量少于N并由该N个处理单元共享。12.根据权利要求1所述的装置,其特征在于,该多个启动函数单元包括硬件查找表。13.根据权利要求1所述的装置,其特征在于,该J个处理单元中的该第一,第二,第三与第四处理单元与该多个启动函数单元中的至少一个该启动函数单元,利用该长短期记忆胞的一输出与相对应权重以及利用该长短期记忆胞的一输入与相对应权重,分别计算该输入闸,遗忘闸,输出闸与候选状态。14.根据权利要求13所述的装置,其特征在于,各该处理单元群组的该J个处理单元中的该第一,第二,第三与第四处理单元从该输出缓冲器读取该当前输出。15.根据权利要求13所述的装置,其特征在于,还包括:一随机存取存储器,各该处理单元群组的该J个处理单元中的该第一,第二,第三与第四处理单元将该输入从该随机存取存储器读入该长短期记忆胞。16.根据权利要求13所述的该装置,其特征在于,还包括:一随机存取存储器,各该处理单元群组的该J个处理单元中的该第一,第二,第三与第四处理单元从该随机存取存储器读取该权重。17.根据权利要求1所述的装置,其特征在于,各该处理单元包括:第一与第二多任务缓...

【专利技术属性】
技术研发人员:G·葛兰·亨利泰瑞·派克斯凯尔·T·奥布莱恩
申请(专利权)人:上海兆芯集成电路有限公司
类型:发明
国别省市:上海;31

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

1