具有可配置流水线的神经网络加速器制造技术

技术编号:37141325 阅读:33 留言:0更新日期:2023-04-06 21:46
具有可配置流水线的神经网络加速器。公开一种包括可配置硬件流水线的神经网络加速器。所述神经网络加速器包括多个硬件处理单元以及交叉开关,所述交叉开关被配置为从多个可选流水线中选择性地由所述硬件处理单元中的一个或多个硬件处理单元形成流水线,以处理到所述神经网络加速器的输入数据。每个硬件处理单元包括用以加速对数据执行一个或多个神经网络运算的硬件,并且所述多个硬件处理单元包括被配置为加速对数据执行卷积运算的卷积处理单元。单元。单元。

【技术实现步骤摘要】
具有可配置流水线的神经网络加速器


[0001]本申请是针对神经网络加速器。

技术介绍

[0002]深度神经网络(DNN)是人工神经网络的一种形式,包括可用于机器学习应用程序的多个互连层。特别地,DNN可用于信号处理应用程序,包括但不限于图像处理和计算机视觉应用程序。图1示出了包括多个层102、104、106的示例性DNN 100。每一层102、104、106接收输入数据,并且根据层来处理输入数据以产生输出数据。输出数据要么作为输入数据提供给另一层,要么作为DNN的最终输出数据输出。例如,在图1的DNN100中,第一层102接收到DNN 100的原始输入数据108,并且根据第一层102处理输入数据以产生输出数据110。第一层102的输出数据110成为第二层104的输入数据,并且第二层104根据第二层104处理输入数据110以产生输出数据112。第二层104的输出数据112成为第三层106的输入数据,并且第三层106根据第三层106处理输入数据112以产生输出数据114。然后,第三层106的输出数据114作为DNN的最终输出数据输出。在DNN用于分本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种神经网络加速器(300),所述神经网络加速器包括:多个硬件处理单元(302,304,306,308,310,312,314,316),每个硬件处理单元包括用以加速对数据执行一个或多个神经网络运算的硬件,所述多个硬件处理单元包括被配置为加速对数据执行卷积运算的卷积处理单元(302);和交叉开关(320),所述交叉开关耦合到所述多个硬件处理单元(302,304,306,308,310,312,314,316)中的每个硬件处理单元,所述交叉开关(320)被配置为从多个可选流水线中选择性地由所述多个硬件处理单元中的所述硬件处理单元中的一个或多个硬件处理单元形成流水线,以处理到所述神经网络加速器(300)的输入数据。2.如权利要求1所述的神经网络加速器(300),其中所述多个可选流水线中的至少两个可选流水线包括所述多个硬件处理单元中以不同顺序的同一组两个或更多个硬件处理单元。3.如权利要求1所述的神经网络加速器(300),其中所述神经网络加速器被配置为在所述神经网络加速器(300)的多个硬件传递过程中处理神经网络,其中,在所述神经网络加速器的硬件传递过程中,所述神经网络加速器(300)被配置为将输入数据加载到所述神经网络加速器(300)中,并且经由所述多个可选流水线中的流水线处理所述输入数据。4.如权利要求3所述的神经网络加速器(300),其中所述交叉开关(320)被配置为在硬件传递过程中接收标识所述多个可选流水线中的哪个流水线将在所述硬件传递过程中形成的信息。5.如权利要求4所述的神经网络加速器(300),其中所述交叉开关(320)包括多个输入端口和多个输出端口,并且所述标识所述多个可选流水线中的哪个流水线将在硬件传递过程中形成的信息标识所述交叉开关(320)的哪个输入端口将连接到所述交叉开关(320)的哪个输出端口。6.如权利要求4所述的神经网络加速器(300),其中所述交叉开关(320)包括多个输入端口和多个输出端口,所述标识所述多个可选流水线中的哪个流水线将在硬件传递过程中形成的信息标识形成所述流水线的所述多个硬件处理单元中的所述硬件处理单元以及所述硬件处理单元在所述流水线中的顺序,并且所述交叉开关(320)被配置为基于所述信息动态地确定所述交叉开关(320)的哪些输入端口将连接到所述交叉开关(320)的哪些输出端口。7.如权利要求1至权利要求6中任一权利要求所述的神经网络加速器(300),所述神经网络加速器还包括数据输入单元(324,326),所述数据输入单元能够配置为接收到所述神经网络加速器(300)的所述输入数据,并且将接收到的输入数据输出到所述数据输入单元(324,326)的输出端口;其中所述数据输入单元(324,326)的所述输出端口耦合到所述交叉开关(320),并且所述交叉开关(320)被配置为选择性地将所述数据输入单元(324,326)的所述输出端口连接到所述多个硬件处理单元(302,304,306,308,310)中的硬件处理单元的输入端口。8.如权利要求7所述的神经网络加速器(300),其中所述数据输入单元(324)的第二输出端口耦合到所述卷积处理单元(302)的输入端口,并且所述数据输入单元(324)被配置为选择性地将接收到的数据输出到以下中的一者:所述数据输入单元(324)的所述输出端口和所述数据输入单元(324)的所述第二输出端口。
9.如权利要求7所述的神经网络加速器(300),所述神经网络加速器还包括第二数据输入单元(326),所述第二数据输入单元能够配置为接收到所述神经网络加速器(300)的所述输入数据,并且将接收到的输入数据输出到所述第二输入数据单元(326)的输出端口;其中所述第二数据输入单元(326)的所述输出端口耦合到所述交叉开关(320),并且所述交叉开关(320)被配置为选择性地将所述第二数据输入单元(326)的所述输出端口连接到所述多个硬件处理单元中的一个硬件处理单元的硬件处理单元的输入端口。10.如权利要求9所述的神经网络加速器(300),其中所述多个硬件处理单元包括逐元素运算处理单元(306),所述逐元素运算处理单元被配置为加速对一组数据执行一个或多个逐元素运算,所述逐元素运算处理单元(306)能够配置为使用辅助输入数据执行所述一个或多个逐元素运算;并且所述第二数据输入单元(326)能够配置为接收以下中的一者:到所述神经网络加速器(300)的所述输入数据和所述辅助输入数据。11.如权利要求1至权利要求6中任一权利要求所述的神经网络加速器(300),其中所述多个硬件处理单元包括被配置为加速将激活函数应用...

【专利技术属性】
技术研发人员:J
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:

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

1