CN215769709U - 一种芯片计算器件及计算系统 - Google Patents

一种芯片计算器件及计算系统 Download PDF

Info

Publication number
CN215769709U
CN215769709U CN202122127643.0U CN202122127643U CN215769709U CN 215769709 U CN215769709 U CN 215769709U CN 202122127643 U CN202122127643 U CN 202122127643U CN 215769709 U CN215769709 U CN 215769709U
Authority
CN
China
Prior art keywords
chip
array
array chip
programmable
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202122127643.0U
Other languages
English (en)
Inventor
左丰国
江喜平
郭一欣
周骏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Unilc Semiconductors Co Ltd
Original Assignee
Xian Unilc Semiconductors Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Unilc Semiconductors Co Ltd filed Critical Xian Unilc Semiconductors Co Ltd
Priority to CN202122127643.0U priority Critical patent/CN215769709U/zh
Application granted granted Critical
Publication of CN215769709U publication Critical patent/CN215769709U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Logic Circuits (AREA)

Abstract

本申请公开一种芯片计算器件及计算系统,涉及集成芯片技术领域,能够增大存储访问的带宽,降低存储访问产生的功耗。芯片计算器件,包括:存储阵列芯片,包括存储阵列,所述存储阵列用于存储数据;运算阵列芯片,包括运算阵列,所述运算阵列包括至少一个固定运算单元,所述固定运算单元用于实现固定运算功能;可编程阵列芯片,包括可编程阵列,所述可编程阵列用于动态调度至少一个所述固定运算单元的执行流程,得到目标运算功能;所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的任意两者之间通过三维异质集成层叠连接。

Description

一种芯片计算器件及计算系统
技术领域
本申请涉及集成芯片技术领域,尤其涉及一种芯片计算器件及计算系统。
背景技术
为了让硬件适应快速发展变化的计算网络结构,通过可编程方法重组算力,已经成为本领域中的重要发展方向。
然而,随着机器学习的运算规模增长,现有的可重构算力单元的存储访问容量和带宽急剧增加,存储访问的带宽较窄,且存储访问产生的功耗开销较大,容易形成存储墙。
实用新型内容
本申请实施例提供一种芯片计算器件及计算系统,能够增大存储访问的带宽,降低存储访问产生的功耗。
本申请实施例的第一方面,提供一种芯片计算器件,包括:
存储阵列芯片,包括存储阵列,所述存储阵列用于存储数据;
运算阵列芯片,包括运算阵列,所述运算阵列包括至少一个固定运算单元,所述固定运算单元用于实现固定运算功能;
可编程阵列芯片,包括可编程阵列,所述可编程阵列用于动态调度至少一个所述固定运算单元的执行流程,得到目标运算功能;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的任意两者之间通过三维异质集成层叠连接。
在一些实施方式中,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的一者包括外部全局存储访问接口控制器和外部全局访问总线,所述外部全局存储访问接口控制器与所述外部全局访问总线连接;
所述存储阵列芯片、所述可编程阵列芯片或所述运算阵列芯片包括内部全局访问总线,所述内部全局访问总线用于连接芯片内部的功能阵列;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中相邻的芯片之间设置有三维互连接口;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括内部局部存储访问线,所述内部局部存储访问线分别与所述三维互连接口和所述功能阵列连接。
在一些实施方式中,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括外部存储访问线,所述外部存储访问线分别与所述三维互连接口和所述功能阵列连接。
在一些实施方式中,所述运算阵列芯片内包括计算互连线,所述计算互连线分别连接所述三维互连接口和所述运算阵列。
在一些实施方式中,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括有源层和内部金属层;
所述有源层包括所述功能阵列,和/或,所述外部全局存储访问接口控制器;
所述内部金属层包括所述外部全局访问总线,和/或,内部局部存储访问线,和/或,所述内部全局访问总线,和/或,外部存储访问线,和/或,计算互连线。
在一些实施方式中,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的相邻芯片之间通过三维异质连接结构连接;
所述三维异质连接结构包括所述三维互连接口。
在一些实施方式中,所述可编程阵列芯片包括控制器,所述可编程阵列与所述控制器连接;
所述控制器用于控制所述可编程阵列动态调度至少一个所述固定运算单元的执行流程,得到所述目标运算功能;和/或,
所述控制器用于控制所述可编程阵列基于执行上一个目标运算功能得到的结果数据,执行当前目标运算功能。
在一些实施方式中,所述存储阵列、所述可编程阵列和所述运算阵列中的任意两者设置在同一层芯片上。
在一些实施方式中,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的至少一者包括电平转换电路。
本申请实施例的第二方面,提供一种计算系统,包括:上位系统和如第一方面所述的芯片计算器件;
所述芯片计算器件中设置有外部全局存储访问接口控制器的芯片上设置有对外引出接口;
所述芯片计算器件与所述上位系统通过所述对外引出接口连接。
本申请实施例提供的芯片计算器件及计算系统,可编程阵列用于动态调度至少一个固定运算单元的执行流程,得到目标运算功能,能够通过对常规的固定运算单元的执行流程进行动态调度,以得到多种不同的目标运算功能,使得芯片计算器件的运算功能可重构。存储阵列芯片、可编程阵列芯片和运算阵列芯片中的任意两者之间通过三维异质集成层叠连接,三维异质集成连接能够形成相邻芯片间和跨芯片间的超大局部总线带宽优势,能够增大存储访问的带宽,降低存储访问的功耗。不同于传统的I/0接口,I/0接口为输入输出接口,可编程阵列和运算阵列分别与存储阵列通过三维异质集成层叠连接,可以在芯片计算器件内完成存储访问,可以实现高带宽和低功耗,可以将上位系统的运算负担转移到芯片计算器件中,起到卸载上位系统算力的作用,提高存储访问效率,降低功耗。
附图说明
图1为本申请实施例提供的一种芯片计算器件的结构示意图;
图2为本申请实施例提供的一种芯片计算器件局部截面结构示意图;
图3为本申请实施例提供的一种计算系统的示意性结构框图。
具体实施方式
为了更好的理解本说明书实施例提供的技术方案,下面通过附图以及具体实施例对本说明书实施例的技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书实施例技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“两个以上”包括两个或大于两个的情况。
为了让硬件适应快速发展变化的计算网络结构,通过可编程方法重组算力,已经成为本领域中的重要发展方向。然而,随着机器学习的运算规模增长,现有的可重构算力单元的存储访问容量和带宽急剧增加,存储访问的带宽较窄,且存储访问产生的功耗开销较大,容易形成存储墙。
有鉴于此,本申请实施例提供一种芯片计算器件及计算系统,能够增大存储访问的带宽,降低存储访问产生的功耗。
本申请实施例的第一方面,提供一种芯片计算器件,图1为本申请实施例提供的一种芯片计算器件的结构示意图。如图1所示,本申请实施例提供的芯片计算器件,包括:存储阵列芯片100、可编程阵列芯片200和运算阵列芯片300。存储阵列芯片100包括存储阵列110,存储阵列用于存储数据;运算阵列芯片300,包括运算阵列310,运算阵列310包括至少一个固定运算单元,固定运算单元用于实现固定运算功能;可编程阵列芯片200包括可编程阵列210,可编程阵列210用于动态调度至少一个固定运算单元的执行流程,得到目标运算功能;存储阵列芯片100、可编程阵列芯片200和运算阵列芯片300中的任意两者之间通过三维异质集成层叠连接。
固定运算单元的固定运算功能包含但不仅限于乘加器、乘法器、脉动处理器、哈希计算、编码/解码器、数字信号处理器和机器学习等专用计算电路的任意组合。运算阵列310还可以包括硬核IP,硬核IP可以理解为现有的固化有效运算单元(硬件器件),以增加计算密度,本申请不作具体限定,由此可以适应性的增加有效运算密度,即增加计算器件的密度,进而实现增加运算功能的种类和数量。至少一个硬核IP可以构成一个固定运算单元,本申请不作具体限定。固定运算单元一般是颗粒度相对较小的硬核IP,以便通过可编程阵列芯片200上可编程阵列210组合成具备一定通用性的可重构运算阵列。
可编程阵列210可以采用FPGA(现场可编程逻辑门阵列)或eFPGA(嵌入式现场可编程逻辑门阵列),可以利用其可编程性实现对于固定运算单元的执行流程的动态调度,本申请不作具体限定。可编程阵列210还可以包括其它硬核IP,用于增加可编程阵列210的运算功能,本申请不作具体限定。可编程阵列210通过动态调度至少一个固定运算单元的执行流程得到目标运算功能,目标运算功能可以是一个或者多个固定运算功能按照特定顺序执行的运算功能组合,目标运算功能可以实现更复杂的运算结合的数据处理过程。示例性的,一个目标运算功能可以实现的运算功能是加法→乘法→哈希运算→加密→解密。可编程阵列210通过动态调度固定运算单元得到目标运算功能,指的是可编程阵列210通过调度多种固定运算单元的种类和顺序以及输入到固定运算单元的数据,基于可编程调整,实现符合目标运算功能的可重构运算。可编程阵列210与运算阵列310之间设置互连接口实现跨芯片的三维异质集成层叠连接,实现可编程阵列210对运算阵列310的动态调度,组成可编程运算存储阵列。
示例性的,可编程阵列210可以基于指令序列或者配置文件动态调度固定运算单元的执行流程,指令序列和配置文件可以预先存储在可编程阵列210内或者预先存储在存储阵列110内,能够避免发生外部存储访问,从而可以避免增加外部存储访问产生的功耗。指令序列和配置文件还可以通过上位系统发送到可编程阵列210,能够灵活调整可编程阵列210得到的目标运算功能的种类,本申请均不作具体限定。
示例性的,存储阵列110存储的数据可以包括上位系统下发的目标指令,目标指令中可以带有指令序列;存储阵列110存储的数据可以包括上位系统下发的待处理数据以及待处理数据经过可编程阵列210和运算阵列310处理后得到的结果数据,结果数据还可以作为其它目标运算功能的输入数据,上位系统可以从存储阵列110中读取结果数据,本申请均不作具体限定。
本申请实施例提供的芯片计算器件,可编程阵列210用于动态调度至少一个固定运算单元的执行流程,得到目标运算功能,能够通过对常规的固定运算单元的执行流程进行动态调度,以得到多种不同的目标运算功能,使得芯片计算器件的运算功能可重构。存储阵列芯片100、可编程阵列芯片200和运算阵列芯片300中的任意两者之间通过三维异质集成层叠连接,三维异质集成连接能够形成相邻芯片间和跨芯片间的超大带宽优势,能够增大存储访问的带宽,降低存储访问的功耗。不同于传统的I/0接口,I/0接口为输入输出接口,可编程阵列210和运算阵列310分别与存储阵列110通过三维异质集成直接建立信号的层叠连接,在芯片计算器件内完成存储访问,实现高带宽和低功耗,将上位系统的运算负担转移到芯片计算器件中,起到卸载上位系统算力的作用,避免计算单元通过存储墙访问运算数据,提高存储访问效率,降低功耗。
在一些实施方式中,目标运算功能的数量为至少一个。目标运算功能通过可编程阵列210对至少一个固定运算单元的执行流程进行动态调度得到,目标运算功能的数量越多,计算步骤越多,芯片计算器件的运算和存储访问效率越高,芯片计算器件对上位系统的算力的分担越多,能够提高存储访问效率,降低功耗。
在一些实施方式中,存储阵列芯片、可编程阵列芯片和运算阵列芯片中的一者包括外部全局存储访问接口控制器和外部全局访问总线,外部全局存储访问接口控制器与外部全局访问总线连接;存储阵列芯片、可编程阵列芯片或运算阵列芯片包括内部全局访问总线,内部全局访问总线用于连接芯片内部的功能阵列;存储阵列芯片、可编程阵列芯片和运算阵列芯片中相邻的芯片之间设置有三维互连接口;存储阵列芯片、可编程阵列芯片和运算阵列芯片均包括内部局部存储访问线,内部局部存储访问线分别与三维互连接口和功能阵列连接。功能阵列可以是存储阵列110、可编程阵列210或运算阵列310。存储阵列芯片100、可编程阵列芯片200和运算阵列芯片300中作为与外部通信的芯片可以设置在芯片计算器件的顶层位置,顶层的芯片可以设置外部全局存储访问接口控制器和外部全局访问总线。外部全局存储访问接口控制器用于控制外部全局访问总线与外部器件的连接,实现芯片计算器件与外部器件的数据交互,外部器件可以是上位系统或者其它器件,本申请不作具体限定。内部全局访问总线用于连接芯片内部的功能阵列,内部局部存储访问线分别与三维互连接口和功能阵列连接,顶层的芯片中的外部全局访问总线可以通过三维互连接口和内部局部存储访问线实现跨芯片的数据交互,内部全局访问总线可以实现芯片内功能阵列之间的数据交互。
示例性的,在芯片计算器件与外部器件发生存储访问时,外部全局存储访问接口控制器控制占用外部全局访问总线进行数据传输;在芯片计算器件的内部芯片之间进行存储访问时,外部全局存储访问接口控制器控制占用外部全局访问总线、内部局部存储访问线和内部全局访问总线,内部局部存储访问线用于连接跨芯片的功能阵列,内部全局访问总线用于同一层芯片内的功能阵列之间的连接,进而实现外部全局访问总线与跨芯片的功能阵列的连接,则能够实现芯片计算器件内的相邻芯片间或者跨芯片的数据传输,能够实现外部全局访问总线和内部全局访问总线的分时复用。
在一些实施方式中,存储阵列芯片、可编程阵列芯片和运算阵列芯片均包括外部存储访问线,外部存储访问线分别与三维互连接口和功能阵列连接。外部存储访问线可以通过三维互连接口实现不同芯片之间的功能阵列的连接,外部存储访问线可以分时复用,示例性的,当进行跨芯片的外部数据访问时,利用外部存储访问线与外部存储访问总线实现跨芯片的外部储存访问,当进行跨芯片的内部数据访问时,可以单独利用外部存储访问线实现芯片计算器件内的跨芯片的数据交换。需要说明的是内部全局访问行为和外部全局存储访问接口控制器的行为分别对应芯片计算器件内部计算和上位系统向芯片计算器件载入/读取数据,这两种行为不会同时发生,即可在上位系统向芯片计算器件载入/读取数据以外的时间,使用外部全局访问总线与外部存储访问线连接,实现运算阵列310,和/或,可编程阵列210的跨阵列数据交换。
示例性的,在芯片计算器件与外部器件发生存储访问时,外部全局存储访问接口控制器控制占用外部全局访问总线进行数据传输;在芯片计算器件的内部芯片之间进行存储访问时,外部全局存储访问接口控制器通过内部电路,如多路选择器等,释放对外部全局访问总线的控制,分时复用外部存储访问线与被外部全局存储访问接口控制器释放的外部全局访问总线互连,或者,分时复用内部局部存储访问线与被外部全局存储访问接口控制器释放的外部全局访问总线互连,实现运算阵列310,和/或,可编程阵列210的跨阵列数据交换,即内部全局访问。
在一些实施方式中,运算阵列芯片内包括计算互连线,计算互连线分别连接三维互连接口和运算阵列。可编程阵列芯片也可以包括计算互连线,计算互连线既可以实现运算阵列之间的连接,也可以通过三维互连接口实现可编程阵列与固定运算阵列的连接。
示例性的,存储阵列芯片100可以作为与外部通信的芯片设置在芯片计算器件的顶层,存储阵列芯片100→可编程阵列芯片200→运算阵列芯片300结构的芯片计算器件能够满足多数的存储访问需求,建立内部全局访问总线和外部全局访问总线的资源的可重构分时复用。运算阵列芯片300可以作为与外部通信的芯片设置在芯片计算器件的顶层,运算阵列芯片300→可编程阵列芯片200→存储阵列芯片100结构的芯片计算器件也能够满足多数的存储访问需求。
对于对动态重构频繁,以及对动态重构时间敏感的应用,可以将可编程阵列芯片200作为与外部通信的芯片设置在芯片计算器件的顶层,可以得到可编程阵列芯片200上对外部器件引出I/O密度具有优势,例如可编程阵列芯片200→运算阵列芯片300→存储阵列芯片100和可编程阵列芯片200→存储阵列芯片100→运算阵列芯片300。
对于存储为一次性载入,运行过程中输入/输出少,能从运算阵列芯片300直接实现对外输入/输出的应用,例如数据库检索等,可以将运算阵列芯片300作为与外部通信的芯片设置在芯片计算器件的顶层,例如运算阵列芯片300→存储阵列芯片100→可编程阵列芯片200。
对于运算阵列芯片300到存储阵列芯片100存储访问行为较固定,尤其是跨阵列区域的点到点存储访问较固定的应用,设计运算阵列芯片300紧邻存储阵列芯片100,可以得到存储访问互连的密度优势,如存储阵列芯片100→可编程阵列芯片200→运算阵列芯片300。
示例性的,存储阵列110可以包括SRAM(静态随机存取存储器)、DRAM(动态随机存取存储器)、Flash存储器、FRAM(铁电存储器)、PRAM(相变存储器)、MRAM(磁存储器)和RRA(M变阻存储器)中的一种或者至少两种的组合,还可以根据存储器种类,存储阵列110设置相应的存储控制器,本申请不作具体限定。
示例性的,存储阵列芯片100还可以包括存储器所对应的任何外部全局存储访问接口控制器,如SRAM接口控制器、JEDEC-DRAM接口控制器、Flash接口控制器、AXI(AdvancedeXtensible Interface,一种总线协议)接口控制或其它自定义接口协议控制器等,用于外部器件对存储阵列110的全局存储访问,外部器件可以是上位系统或其它器件,本申请不作具体限定。存储阵列芯片100还可以包括外部全局存储访问接口控制器到存储阵列芯片100的所有存储阵列110的外部全局访问总线,以实现外部全局存储访问,外部全局访问总线的形式包括但不限于NOC AXI AHB等。外部全局存储访问接口控制器到存储阵列芯片100所有存储阵列的外部全局访问总线的互连位宽无需向芯片计算器件内部局部存储访问位宽的总和(通常几万至几十万位宽)靠拢,可以参照现有技术位宽(几十至几千)设计实现,因为通常只有运算(可以是计算过程,也可以是处理过程)的输入和结果数据通过该外部全局访问总线,其存储访问量,对在若干运算步骤中发生的总存储访问量中占比较小。采用三维异质集成的层叠连接,可以使得存储阵列芯片100的跨芯片连接不通过I/O电路,因为现有技术中的I/O电路所提供的驱动、外部电平升压(输出时)、外部电平降压(输入时)、三态控制器、ESD防护和浪涌保护电路等,对于近距离、小负载的同封装内的三维异质集成互连,都可以取消。
运算阵列310,和/或,可编程阵列210与存储阵列110通过三维互连接口,构成可编程运算存储阵列,可以通过内部全局访问总线,和/或,分时复用内部全局访问接口实现可编程运算存储阵列之间的跨区域存储访问;内部全局访问总线的形式包括但不限于NOCAXI AHB等,本申请不作具体限定;内部全局访问总线的总线宽度参照内部局部存储访问接口宽度数设计,但无需达到所有内部局部存储访问接口宽度的总和,因为通常的目标运算功能对应的运算步骤会尽量避免跨可编程运算存储阵列的存储访问,即跨区域存储访问概率相对区域内存储访问的低,内部全局访问总线,和/或,分时复用内部全局访问接口,提供起点和目的地不同的跨可编程运算存储阵列的存储访问的数据通道;能够充分结合跨区域存储访问概率相对区域内存储访问的低的实践应用特征,可利用可编程阵列210内和阵列间的可编程路由网络的动态部分重构特性,在内部全局访问总线基础上,建立一个点对点的内部全局访问总线附加通道(例如增加总线位宽),跨区域存储访问结束后将可编程资源动态回收:即通过硬核IP设计的内部全局访问总线与可重构点对点互连通道的组合,根据运算步骤需求,实现可变位宽的内部全局访问总线。
示例性的,可变位宽的内部全局访问总线,由通过硬核IP设计的内部全局访问总线与可重构点对点互连通道组成,也可以全部由可重构点对点互连通道组成。可以结合应用和架构特征,实现外部全局访问总线和内部全局访问总线的动态重构分时复用,以降低全局互连开销,这些应用和架构特征是:外部全局访问总线和内部全局访问总线可跨芯片转移到其可编程阵列芯片200上,利用可编程阵列210内和阵列间的可编程路由网络的动态部分重构特性,进行动态功能重组;外部全局访问总线和内部全局访问总线都是互连所有可编程运算存储阵列的存储访问的数据通道,两者物理分布相似;结合典型运算应用需求,外部全局访问总线和内部全局访问总线的高负荷占用时间片段不同:前者在运算开始之前和之后密集,后者在运算过程中使用。将外部全局访问总线和内部全局访问总线的部分或全部互连,通过可编程阵列210内和阵列间的可编程路由网络设置实现;结合可编程路由网络的动态重构特征,对合并后的可重构全局总线进行资源管理:当需要外部全局访问总线带宽时,将可重构全局总线资源部分或全部,通过动态重构,切换至外部全局访问总线互连;当需要内部全局访问总线带宽时,将可重构全局总线资源部分或全部,通过动态重构,切换至内部全局访问总线互连。
本申请提供的芯片计算器件,作为与外部通信的芯片可以设置在芯片计算器件的顶层的芯片中,顶层的芯片需要设置外部全局存储访问接口控制器和外部全局访问总线,能够实现外部全局访问总线和内部全局访问总线的分时复用,可以降低芯片计算器件全局互连开销。
在一些实施方式中,存储阵列芯片、可编程阵列芯片和运算阵列芯片均包括有源层和内部金属层;有源层包括功能阵列,和/或,外部全局存储访问接口控制器;内部金属层包括外部全局访问总线,和/或,内部局部存储访问线,和/或,内部全局访问总线,和/或,外部存储访问线,和/或,计算互连线。
存储阵列芯片、可编程阵列芯片和运算阵列芯片中的相邻芯片之间通过三维异质连接结构连接;三维异质连接结构包括三维互连接口。
示例性的,图2为本申请实施例提供的一种芯片计算器件局部截面结构示意图。示例性的,有源层可以是第一有源层150、第二有源层250或第三有源层340;内部金属层可以是第一内部金属层160、第二内部金属层260或第三内部金属层350;顶层金属层可以是第一顶层金属层170、第二顶层金属层270或第三顶层金属层360。三维异质连接结构可以是第一三维异质连接结构130或第二三维异质连接结构230。存储阵列芯片100包括依次设置的第一衬底层140、第一有源层150、第一内部金属层160和第一顶层金属层170;可编程阵列芯片200可以包括依次设置的第二衬底层240、第二有源层250、第二内部金属层260和第二顶层金属层270;运算阵列芯片300可以包括依次设置的第三衬底层330、第三有源层340、第三内部金属层350和第三顶层金属层360。结合图1和图2,存储阵列芯片100与可编程阵列芯片200之间设置有第一三维异质连接结构130,可编程阵列芯片200与运算阵列芯片300之间设置有第二三维异质连接结构230。存储阵列芯片100的第一顶层金属层170与可编程阵列芯片200的第二顶层金属层270相对设置,对应存储阵列芯片100与可编程阵列芯片200是面对面设置;运算阵列芯片300的第三顶层金属层360与可编程阵列芯片200的第二衬底层240相对设置,对应可编程阵列芯片200与运算阵列芯片300是背对面设置,本申请不作具体限定。
需要说明的是,图1所示,存储阵列芯片100还包括第一结构120,可编程阵列芯片200包括第二结构220,运算阵列芯片300包括第三结构320,第一结构120和第二结构220分别对应第一三维异质连接结构130,第二结构220和第三结构320分别对应第二三维异质连接结构230。
图2所示的芯片计算器件中存储阵列芯片100作为顶层芯片,存储阵列芯片100背离可编程阵列芯片200的一侧可以设置有最外层界面层400,最外层界面层400可以保护芯片计算器件并引出芯片计算器件的对外接口(PAD/BUMP)。第一有源层150包括存储阵列110和外部全局存储访问接口控制器151。第一内部金属层160包括多条金属连接线,第一内部金属层160内的金属连接线可以包括外部全局访问总线A、第一内部局部存储访问线B1、第二内部局部存储访问线B2和外部存储访问线C;第一顶层金属层170包括多条第一连接线171;第一三维异质连接结构130包括三维互连接口E,第一内部局部存储访问线B1连接第一连接线171,第一连接线171连接三维互连接口E,通过第一内部局部存储访问线B1和三维互连接口E能够实现存储阵列110和可编程阵列210的连接,利用三维互连接口E和第一内部局部存储访问线B1能够实现跨芯片的功能阵列的连接。第二内部局部存储访问线B2能够将功能芯片内的器件连接起来。外部存储访问线C可以分别连接存储阵列110和全局访问总线A,外部存储访问线C还连接三维互连接口E,则可以利用外部存储访问线C的分时复用,结合外部全局访问总线A实现内部存储访问和外部存储访问的分时进行。第二顶层金属层270可以包括多条第二连接线271;第二内部金属层260可以包括多条金属连接线,第二内部金属层260内的金属连接线可以包括内部全局访问总线D、第一内部局部存储访问线B1、第二内部局部存储访问线B2、外部存储访问线C和第一计算互连线G1,第一内部金属层160内的金属连接线也可以包括内部全局访问总线,第三内部金属层350内的金属连接线也可以包括内部全局访问总线。第二有源层250包括可编程阵列210,内部全局访问总线D可以实现可编程阵列210之间的互连。芯片计算器件还可以包括多个通孔500,通孔500可以贯穿于衬底层和有源层,如图2所示,通孔500可以贯穿第一衬底层140和第一有源层150,通孔500还贯穿第二衬底层240和第二有源层250。通孔500用于将通孔500两端的金属线连接。第三顶层金属层360包括多条第三连接线361;第二三维异质连接结构230包括三维互连接口E,第三有源层340包括运算阵列310,三维互连接口E用于连接运算阵列和可编程阵列210。第三内部金属层350包括第一计算互连线G1和第二计算互连线G2,第一计算互连线G1用于连接三维互连接口E和运算阵列310以实现跨芯片互连,第二计算互连线G2用于连接运算阵列310内的器件或线路。
示例性的,第一内部金属层160内的外部全局访问总线A和外部存储访问线C互连,再经过三维互连接口E和与三维互连接口E连接的第二内部金属层260内的外部存储访问线C,能够实现外部全局访问总线A跨芯片连接到可编程阵列210上。通过存储阵列110,外部全局访问总线A与第一内部金属层160内的第一内部局部存储访问线B1连接,通过三维互连接口E和与三维互连接口E连接的第二内部金属层260内的第一内部局部存储访问线B1,能够实现外部全局访问总线A跨芯片连接到可编程阵列210上,再通过内部全局访问总线D实现不同可编程阵列210之间的连接,最后实现芯片计算器件的外部存储访问或者内部存储访问。第二内部金属层260内的第一计算互连线G1用于连接可编程阵列210和三维互连接口E,通过第二内部金属层260内的第一计算互连线G1、三维互连接口E以及第三内部金属层350内的第一计算互连线G1,可以实现可编程阵列210与运算阵列310的跨芯片连接,最后实现芯片计算器的内部存储访问。第三连接线361可以用于连接三维互连接口E和第一计算互连线G1。
需要说明的是,存储阵列110和可编程阵列210的连接可以是一对一连接、多对一连接或者一对多连接,本申请不作具体限定。图2所示的芯片计算器件的结构只是示意性,不作为本申请的具体限定。
本申请实施例提供的芯片计算器件,作为与外部通信的芯片可以设置在芯片计算器件的顶层位置,顶层的芯片设置有外部全局存储访问接口控制器151和外部全局访问总线芯片计算器件。
在一些实施方式中,存储阵列在可编程阵列芯片上的正投影覆盖可编程阵列。需要说明的是,此处的覆盖可以是全部覆盖,也可以是部分覆盖,本申请不作具体限定。
示例性的,可编程阵列210分散分布在与之对应的存储阵列110的物理位置垂直投影处,并通过三维异质集成建立高带宽互连,即内部局部存储访问线B,通常每组的内部局部存储访问线B的位宽可以为几千至几万,位宽总和为几万至几十万,形成分散分布的存储访问结构的可编程运算存储阵列。
本申请实施例提供的芯片计算器件,可编程阵列210与存储阵列110一一对应连接,一个可编程阵列210与一个存储阵列110可以构成存储阵列,能够增大内部局部存储访问接口的位宽,实现高带宽互连,降低存储访问功耗。
在一些实施方式中,可编程阵列芯片包括控制器,如CPU/MCU等,不作为本申请的具体限定,可编程阵列与控制器连接;控制器用于控制可编程阵列动态调度至少一个固定运算单元的执行流程,得到所述目标运算功能;和/或,控制器用于控制可编程阵列基于执行上一个目标运算功能得到的结果数据,执行当前目标运算功能。需要说明的是可编程阵列可以基于执行上一个目标运算功能得到的结果数据、初始运算数据或者执行其他目标运算功能得到的结果数据,以执行当前目标运算功能,本申请不作具体限定。
示例性的,每个可编程阵列210或者多个可编程阵列210对应设置一个控制器:可编程阵列210的编程结果可以保存在可编程阵列210中的CRAM(config ram)中,CRAM掉电消失的特性,需要通过控制器来实现从可编程阵列210外载入编程文件。控制器还可以负责可编程阵列210的边界扫描,在线数据观测和加载等功能;控制器可支持动态部分可重构功能,以便在执行运算过程中切换部分可编程阵列210的功能:例如一个目标运算功能执行过程结束后,把对应可编程阵列210动态重构成下一目标运算功能,继承执行上一个目标运算功能得到的结果数据(部分或全部存储在对应存储阵列110中),用于实施当前目标运算功能。控制器可以采用CPU等处理器来实现,本申请不作具体限定。
本申请实施例提供的芯片计算器件,通过设置控制器来控制可编程阵列210对于目标运算功能的重构,以及对于目标运算功能的执行。
在一些实施方式中,存储阵列芯片的芯片层数为至少两层;和/或,
可编程阵列芯片的芯片层数为至少两层;和/或
运算阵列芯片的芯片层数为至少两层。
两层存储阵列芯片之间可以通过三维异质连接结构连接,两层可编程阵列芯片之间可以通过三维异质连接结构连接,两层运算阵列芯片之间可以通过三维异质连接结构连接。
本申请实施例提供的芯片计算器件,可以根据预算需求或者存储需求将芯片计算器件设置为多层芯片结构,以满足更多的运算和存储访问需求。具体的,针对存储访问容量的较大需求,可以将存储芯片的层数设置为至少两层;针对运算量的较大需求,可以将运算芯片的层数设置为至少两层;针对目标运算功能种类的较大需求,可以将可编程芯片的层数设置为至少两层。
在一些实施方式中,存储阵列、可编程阵列和运算阵列中的任意两者设置在同一层芯片上。
本申请实施例提供的芯片计算器件,可以将任意两种芯片合并为一层芯片,具体可以满足计算密度需求较小的情形。
在一些实施方式中,存储阵列芯片、可编程阵列芯片和运算阵列芯片中的至少一者包括电平转换电路。
示例性的,当存储阵列芯片100与可编程阵列芯片200和运算阵列芯片300内核电压相同时直接进行三维异质集成的金属互连;当存储阵列芯片100与可编程阵列芯片200和运算阵列芯片300内核电压不同时,需要设计电平转换电路,可以设计在存储阵列芯片100上,通常在三维异质集成键合区域上或附近,本申请不作具体限定。
示例性的,当存储阵列芯片100与可编程阵列芯片200内核电压不同时,在存储阵列芯片100上设置电平转换电路,该电平转换电路也可以结合三维异质集成跨芯片转移到可编程阵列芯片200上,通常在三维异质集成键合区域上或附近;当可编程阵列芯片200与运算阵列芯片300内核电压相同时直接进行三维异质集成的金属互连;当可编程阵列芯片200与运算阵列芯片300内核电压不同时,需要在可编程阵列芯片200上设置电平转换电路,通常在三维异质集成键合区域上或附近。
本申请实施例提供的芯片计算器件,通过设置电平转换电路,可以实现不同芯片之间内核电压不同的情况,依然能够实现跨芯片的存储访问。
在一些实施方式中,存储阵列芯片可以包括存储阵列晶粒和存储阵列晶圆中的至少一种;和/或,
运算阵列芯片可以包括运算阵列晶粒和运算阵列晶圆中的至少一种;和/或,
可编程阵列芯片可以包括可编程阵列晶粒和可编程阵列晶圆中的至少一种。
需要说明的是,芯片可以为晶粒(die或者chip)、晶圆(wafer)中至少一种,但不以此为限,也可以是本领域技术人员所能想到的任何替换。其中,晶圆是指制作硅半导体电路所用的硅晶片,芯片或晶粒是指将上述制作有半导体电路的晶圆进行分割后的硅晶片。本申请的具体实施例中以芯片为例进行介绍。
本申请实施例的第二方面,提供一种算系统,包括:上位系统和如第一方面所述的芯片计算器件;芯片计算器件中设置有外部全局存储访问接口控制器的芯片上设置有对外引出接口;芯片计算器件与上位系统通过所述对外引出接口连接。
示例性的,图3为本申请实施例提供的一种计算系统的示意性结构框图。如图3所示,本申请实施例提供的计算系统,包括:上位系统2000和如第一方面所述的芯片计算器件1000;结合图2,芯片计算器件1000中设置有外部全局存储访问接口控制器151的芯片上设置有对外引出接口F;芯片计算器件1000与上位系统2000通过对外引出接口F连接。如图2所示,对外引出接口F通过硅通孔500与上位系统的连接线连接,对外引出接口F与外部全局存储访问接口控制器151连接。
本申请实施例提供的计算系统,可编程阵列用于动态调度至少一个固定运算单元的执行流程,得到目标运算功能,能够通过对常规的固定运算单元的执行流程进行动态调度,以得到多种不同的目标运算功能,使得芯片计算器件的运算功能可重构。存储阵列芯片、可编程阵列芯片和运算阵列芯片中的任意两者之间通过三维异质集成层叠连接,三维异质集成连接能够形成相邻芯片间和跨芯片间的超大局部总线带宽优势,能够增大存储访问的带宽,降低存储访问的功耗。不同于传统的I/0接口,I/0接口为输入输出接口,可编程阵列和运算阵列分别与存储阵列通过三维异质集成层叠连接,可以在芯片计算器件内完成存储访问,可以实现高带宽和低功耗,可以将上位系统的运算负担转移到芯片计算器件中,起到卸载上位系统算力的作用,提高运算和存储访问效率,降低功耗。
尽管已描述了本说明书的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。
显然,本领域的技术人员可以对本说明书进行各种改动和变型而不脱离本说明书的精神和范围。这样,倘若本说明书的这些修改和变型属于本说明书权利要求及其等同技术的范围之内,则本说明书也意图包含这些改动和变型在内。

Claims (10)

1.一种芯片计算器件,其特征在于,包括:
存储阵列芯片,包括存储阵列,所述存储阵列用于存储数据;
运算阵列芯片,包括运算阵列,所述运算阵列包括至少一个固定运算单元,所述固定运算单元用于实现固定运算功能;
可编程阵列芯片,包括可编程阵列,所述可编程阵列用于动态调度至少一个所述固定运算单元的执行流程,得到目标运算功能;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的任意两者之间通过三维异质集成层叠连接。
2.根据权利要求1所述的芯片计算器件,其特征在于,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的一者包括外部全局存储访问接口控制器和外部全局访问总线,所述外部全局存储访问接口控制器与所述外部全局访问总线连接;
所述存储阵列芯片、所述可编程阵列芯片或所述运算阵列芯片包括内部全局访问总线,所述内部全局访问总线用于连接芯片内部的功能阵列;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中相邻的芯片之间设置有三维互连接口;
所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括内部局部存储访问线,所述内部局部存储访问线分别与所述三维互连接口和所述功能阵列连接。
3.根据权利要求2所述的芯片计算器件,其特征在于,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括外部存储访问线,所述外部存储访问线分别与所述三维互连接口和所述功能阵列连接。
4.根据权利要求3所述的芯片计算器件,其特征在于,所述运算阵列芯片内包括计算互连线,所述计算互连线分别连接所述三维互连接口和所述运算阵列。
5.根据权利要求4所述的芯片计算器件,其特征在于,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片均包括有源层和内部金属层;
所述有源层包括所述功能阵列,和/或,所述外部全局存储访问接口控制器;
所述内部金属层包括所述外部全局访问总线,和/或,内部局部存储访问线,和/或,所述内部全局访问总线,和/或,所述外部存储访问线,和/或,所述计算互连线。
6.根据权利要求2所述的芯片计算器件,其特征在于,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的相邻芯片之间通过三维异质连接结构连接;
所述三维异质连接结构包括所述三维互连接口。
7.根据权利要求1所述的芯片计算器件,其特征在于,所述可编程阵列芯片包括控制器,所述可编程阵列与所述控制器连接;
所述控制器用于控制所述可编程阵列动态调度至少一个所述固定运算单元的执行流程,得到所述目标运算功能;和/或,
所述控制器用于控制所述可编程阵列基于执行上一个目标运算功能得到的结果数据,执行当前目标运算功能。
8.根据权利要求1所述的芯片计算器件,其特征在于,所述存储阵列、所述可编程阵列和所述运算阵列中的任意两者设置在同一层芯片上。
9.根据权利要求1所述的芯片计算器件,其特征在于,所述存储阵列芯片、所述可编程阵列芯片和所述运算阵列芯片中的至少一者包括电平转换电路。
10.一种计算系统,其特征在于,包括:上位系统和如权利要求1-9中任一项所述的芯片计算器件;
所述芯片计算器件中设置有外部全局存储访问接口控制器的芯片上设置有对外引出接口;
所述芯片计算器件与所述上位系统通过所述对外引出接口连接。
CN202122127643.0U 2021-09-03 2021-09-03 一种芯片计算器件及计算系统 Active CN215769709U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202122127643.0U CN215769709U (zh) 2021-09-03 2021-09-03 一种芯片计算器件及计算系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202122127643.0U CN215769709U (zh) 2021-09-03 2021-09-03 一种芯片计算器件及计算系统

Publications (1)

Publication Number Publication Date
CN215769709U true CN215769709U (zh) 2022-02-08

Family

ID=80083952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202122127643.0U Active CN215769709U (zh) 2021-09-03 2021-09-03 一种芯片计算器件及计算系统

Country Status (1)

Country Link
CN (1) CN215769709U (zh)

Similar Documents

Publication Publication Date Title
US10693469B2 (en) Multiplier-accumulator circuit, logic tile architecture for multiply-accumulate, and IC including logic tile array
US7308668B2 (en) Apparatus and method for implementing an integrated circuit IP core library architecture
CN113515240A (zh) 一种芯片计算器件及计算系统
US20100140750A1 (en) Parallel Plane Memory and Processor Coupling in a 3-D Micro-Architectural System
CN112913017A (zh) 具有配置成加快人工神经网络(ann)计算的功能块的3d堆叠集成电路
US10886218B2 (en) Fabric die to fabric die interconnect for modularized integrated circuit devices
EP2645574B1 (en) Integrated circuits with multi-stage logic regions
CN115525592A (zh) 用于集成电路装置的模块化外围片块
US8089299B1 (en) Integrated circuit with through-die via interface for die stacking and cross-track routing
JP7236447B2 (ja) マルチチップ集積回路デバイスにおけるルーティングリソースの選択方法
US8305789B2 (en) Memory/logic conjugate system
CN215769709U (zh) 一种芯片计算器件及计算系统
CN113656345B (zh) 一种计算器件、计算系统及计算方法
WO2011107612A1 (en) Customizable interconnections between electronic circuits
US11211933B2 (en) FPGA chip with distributed multifunctional layer structure
JP5698268B2 (ja) ミラーリングされた相互接続構造を有するプログラマブル集積回路
CN113626373A (zh) 一种集成芯片
US10879903B2 (en) Distributed I/O interfaces in modularized integrated circuit devices
CN113626374A (zh) 一种堆叠芯片
CN113722268A (zh) 一种存算一体的堆叠芯片
CN113793632A (zh) 非易失可编程芯片
WO2022029825A1 (ja) 演算回路及びai処理モジュール
CN104750659A (zh) 一种基于自动布线互连网络的粗粒度可重构阵列电路
CN216118777U (zh) 一种集成芯片
CN113626372B (zh) 一种存算一体的集成芯片

Legal Events

Date Code Title Description
GR01 Patent grant
GR01 Patent grant