用于存储器内计算的可缩放阵列架构制造技术

技术编号:35891465 阅读:12 留言:0更新日期:2022-12-10 10:22
各种实施例包括系统、方法、架构、机制和设备,用于经由通过可配置芯片上网络互连的可配置存储器内计算(IMC)核心的阵列提供可编程或预编程的IMC操作来支持映射到其上的应用的可缩放执行和数据流。缩放执行和数据流。缩放执行和数据流。

【技术实现步骤摘要】
【国外来华专利技术】用于存储器内计算的可缩放阵列架构
[0001]政府支持
[0002]本专利技术是在政府支持下在美国国防部授予的合约号NRO000

19

C

0014下作出的。政府拥有本专利技术的某些权利。
[0003]相关申请的交叉参考
[0004]本申请要求2020年2月5日提交的第62/970,309号美国临时专利申请的权益,该申请以全文引用的方式并入本文中。


[0005]本公开大体上涉及存储器内计算和矩阵

向量相乘的领域。

技术介绍

[0006]本章节旨在向读者介绍可与下文描述和/或要求保护的本专利技术的各个方面相关的技术的各个方面。此论述被认为有助于向读者提供背景信息以便于更好地理解本专利技术的各个方面。因此,应理解,这些陈述应鉴于此来阅读,而不是作为对现有技术的认可。
[0007]基于神经网络(NN)的深度学习推断部署在各种各样的应用中。此由认知任务的突破性表现促动。然而,其导致NN的复杂性(层、通道的数目)和变异性(网络架构、内部变量/表示)增加,从而迫使需要经由可灵活编程的架构进行硬件加速来实现能量效率和处理量。
[0008]NN中的主导操作为矩阵

向量相乘(MVM),通常涉及高维度矩阵。这使架构中的数据存储和移动成为主要挑战。然而,MVM还产生结构化数据流,从而促使其中相应地显式地布置硬件的加速器架构成为二维阵列。此些架构称为空间架构,常常采用脉动阵列,其中处理引擎(PE)执行简单的运算(乘法、加法)且将输出传递到邻近的PE以供进一步处理。已经报告基于映射MVM计算和数据流以及为不同计算优化(例如,稀疏性、模型压缩)提供支持的不同方式的许多变型。
[0009]最近获得关注的替代性架构方法为存储器内计算(IMC)。IMC也可视为空间架构,但其中PE为存储器位单元。IMC通常采用模拟运算,以适配受约束位单元电路中的计算功能性(即,为了面积效率)以及以最大能量效率执行计算。基于IMC的NN加速器的新近论证已经同时实现比经优化数字加速器大致高10
×
的能量效率(TOPS/W)和高10
×
的计算密度(TOPS/mm2)。
[0010]虽然此些增益使IMC具有吸引力,但新近论证还暴露了主要由模拟非理想因素(变化、非线性)引起的若干重要挑战。第一,大多数论证限于小规模(小于128Kb)。第二,未论证先进CMOS节点的使用,其中模拟非理想因素预期恶化。第三,归因于指定此模拟运算的函数抽象化的难度,较大计算系统(架构和软件堆栈)中的集成受到限制。
[0011]已经开始一些新近工作来探索系统集成。举例来说,开发ISA并提供到领域特定语言的界面;然而,应用映射局限于小推断模型和硬件架构(单个存储体)。同时,开发IMC操作的功能规范;然而,为了支持具有减小的并行性的IMC的数字形式而避免了许多行上的高度并行IMC所必需的模拟运算。因此,模拟非理想因素很大程度上阻止了IMC在切实可行的NN
的按比例放大的架构中利用的全部可能性。

技术实现思路

[0012]通过系统、方法、架构、机制或设备来解决现有技术中的各种缺陷,所述系统、方法、架构、机制或设备实现经由通过可配置芯片上网络互连的可配置IMC核心的阵列提供可编程或预编程存储器内计算(IMC)操作以支持映射到其上的应用的可缩放执行和数据流。
[0013]举例来说,各种实施例提供一种集成式存储器内计算(IMC)架构,其可配置以支持映射到其上的应用的可缩放执行和数据流,所述IMC架构实施于半导体衬底上且包括例如存储器内计算单元(CIMU)等可配置IMC核心的阵列,包括IMC硬件和任选地例如数字计算硬件、缓冲器、控制块、配置寄存器、数/模转换器(DAC)、模/数转换器(ADC)等其它硬件,如在下文将更详细地描述。
[0014]可配置IMC核心/CIMU的阵列经由包含CIMU间网络部分的芯片上网络或芯片上网络互连,且被配置成经由安置在其间的相应可配置CIMU间网络部分向/从CIMU阵列内或外的其它CIMU或其它结构传送输入数据和计算数据(例如,神经网络实施例中的激活),且经由安置在其间的相应可配置操作数加载网络部分向/从CIMU阵列内或外的其它CIMU或其它结构传送操作数数据(例如,神经网络实施例中的权重)。
[0015]一般来说,IMC核心/CIMU中的每一个包括可配置输入缓冲器,用于从CIMU间网络接收计算数据且将所接收的计算数据组成输入向量以供由CIMU进行矩阵向量相乘(MVM)处理来借此生成输出向量。
[0016]一些实施例包括一种具有基于阵列的架构的神经网络(NN)加速器,其中多个存储器内计算单元(CIMU)经排列且使用非常灵活的芯片上网络互连,其中一个CIMU的输出可连接到或流向另一CIMU或多个其它CIMU的输入,许多CIMU的输出可连接到一个CIMU的输入,且一个CIMU的输出可连接到另一CIMU的输出,等等。芯片上网络可被实施为单个芯片上网络、多个芯片上网络部分,或芯片上和芯片外网络部分的组合。
[0017]一个实施例提供一种可配置成支持映射到其上的应用的可缩放执行和数据流的集成式存储器内计算(IMC)架构,所述架构包括:多个可配置存储器内计算单元(CIMU),其形成CIMU的阵列;以及可配置芯片上网络,用于将输入数据传送到CIMU的阵列,在CIMU之间传送计算数据,以及从CIMU的阵列传送输出数据。
[0018]一个实施例提供一种将应用映射到集成式IMC架构的可配置存储器内计算(IMC)硬件的计算机实施的方法,所述IMC硬件包括:多个可配置存储器内计算单元(CIMU),其形成CIMU的阵列;以及可配置芯片上网络,其用于将输入数据传送到CIMU的阵列,在CIMU之间传送计算数据,以及从CIMU的阵列传送输出数据,所述方法包括:根据应用计算使用IMC硬件的并行性和管线化分配IMC硬件,以生成被配置成提供高处理量应用计算的IMC硬件分配;以趋向于使生成输出数据的IMC硬件和处理所生成输出数据的IMC硬件之间的距离最小化的方式限定所分配IMC硬件到CIMU的阵列中的位置的放置;以及配置芯片上网络以在IMC硬件之间路由数据。应用可包括NN。可根据贯穿本申请论述的映射技术实施各个步骤。
[0019]将在随后的描述内容中部分阐述本专利技术的额外目标、优点和新颖特征,且所属领域的技术人员在参阅以下内容后将显而易见这些额外目标、优点和新颖特征,或这些额外目标、优点和新颖特征可通过本专利技术的实践而习得。本专利技术的目标和优点可以借助于所附
权利要求书中特别指出的工具和组合实现和达成。
附图说明
[0020]并入在本说明书中且构成本说明书的一部分的附图示出本专利技术的实施例,且与上文所给出的本专利技术的大体描述及下文所给出的实施例的详细描述一起用以阐释本专利技术的原理,其中:
[0021]图1A

1B描绘有助于理解本专利技术的实施例的常规存储器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种可配置以支持映射到其上的应用的可缩放执行和数据流的集成式存储器内计算(IMC)架构,其包括:多个可配置存储器内计算单元(CIMU),其形成CIMU的阵列;以及可配置芯片上网络,其用于将输入数据传送到所述CIMU的阵列,在CIMU之间传送计算数据,以及从所述CIMU的阵列传送输出数据。2.根据权利要求1所述的集成式IMC架构,其中:每一CIMU包括输入缓冲器,用于从所述芯片上网络接收计算数据,以及将所接收计算数据构成为输入向量以供由所述CIMU进行矩阵向量相乘(MVM)处理以借此生成包括输出向量的计算数据。3.根据权利要求2所述的集成式IMC架构,其中每一CIMU与快捷缓冲器相关联,用于从所述芯片上网络接收计算数据,将时间延迟施加到所接收计算数据,以及根据数据流映射朝向下一CIMU或输出转发经延迟计算数据,使得维持跨多个CIMU的数据流对准。4.根据权利要求2所述的集成式IMC架构,其中每一CIMU包含被配置成用于处理从相应输入缓冲器和快捷缓冲器中的至少一个接收的输入数据的并行计算硬件。5.根据权利要求3所述的集成式IMC架构,其中所述CIMU的阵列中的所述多个CIMU中的每一个的所述输入缓冲器和快捷缓冲器中的至少一个根据支持像素层级管线化的数据流映射配置以提供管线时延匹配。6.根据权利要求3所述的集成式IMC架构,其中由CIMU的快捷缓冲器施加的所述时间延迟包括绝对时间延迟、预定时间延迟、相对于输入计算数据的大小确定的时间延迟、相对于所述CIMU的预期计算时间确定的时间延迟、从数据流控制器接收的控制信号、从另一CIMU接收的控制信号,以及由所述CIMU响应于所述CIMU内发生某一事件而生成的控制信号中的至少一个。7.根据权利要求3所述的集成式IMC架构,其中至少一些所述输入缓冲器可被配置成将时间延迟施加到从所述芯片上网络或从快捷缓冲器接收的计算数据。8.根据权利要求7所述的集成式IMC架构,其中由CIMU的输入缓冲器施加的所述时间延迟包括绝对时间延迟、预定时间延迟、相对于输入计算数据的大小确定的时间延迟、相对于所述CIMU的预期计算时间确定的时间延迟、从数据流控制器接收的控制信号、从另一CIMU接收的控制信号,以及由所述CIMU响应于所述CIMU内发生某一事件而生成的控制信号中的至少一个。9.根据权利要求8所述的集成式IMC架构,其中所述CIMU的至少一子集与芯片上网络部分相关联,所述芯片上网络部分包含根据映射到所述IMC上的应用的数据流配置的操作数加载网络部分。10.根据权利要求9所述的集成式IMC架构,其中映射到所述IMC上的所述应用包括映射到所述IMC上的神经网络(NN),使得给定层处执行的经配置CIMU的并行输出计算数据提供到下一层处执行的经配置CIMU,所述并行输出计算数据形成相应NN特征映射像素。11.根据权利要求10所述的集成式IMC架构,其中所述输入缓冲器被配置成用于根据选定跨度将输入NN特征映射数据传递到所述CIMU内的并行计算硬件。12.根据权利要求11所述的集成式IMC架构,其中所述NN包括卷积神经网络(CNN),且所述输入线缓冲器用于缓冲对应于所述CNN内核的大小的输入特征映射的若干行。
13.根据权利要求2所述的集成式IMC架构,其中每一CIMU包括存储器内计算(IMC)存储体,所述存储器内计算(IMC)存储体被配置成根据位并行位串行(BPBS)计算过程执行矩阵向量相乘(MVM),其中使用具有列加权过程继之以结果累加过程的迭代桶形移位执行单个位计算。14.根据权利要求2所述的集成式IMC架构,其中每一CIMU包括存储器内计算(IMC)存储体,所述存储器内计算(IMC)存储体被配置成根据位并行位串行(BPBS)计算过程执行矩阵向量相乘(MVM),其中使用具有列加权过程继之以结果累加过程的迭代列合并执行单个位计算。...

【专利技术属性】
技术研发人员:贾红阳M
申请(专利权)人:普林斯顿大学理事会
类型:发明
国别省市:

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

1
相关领域技术