一种具有高存储带宽的多裸片存算架构FPGA的制作方法

文档序号:35496849发布日期:2023-09-19 23:32阅读:28来源:国知局
一种具有高存储带宽的多裸片存算架构FPGA的制作方法

本技术涉及fpga,尤其是一种具有高存储带宽的多裸片存算架构fpga。


背景技术:

1、随着物联网、云计算和人工智能等高新技术的发展,依托于硬件平台实现的各类数据密集型应用也急剧增长。fpga(field programmable gate array,可编程阵列逻辑)因具有并行性和可重构性的优势,是目前常用的硬件平台。

2、现有的fpga与大多数传统的硬件平台一样,都采用冯诺依曼架构,fpga内部包含大量的诸如clb、dsp和bram之类的资源模块,这些资源模块之间通过高度可配置的互连线连接起来,形成为fpga中的计算单元和存储单元。bram作为片上重要的存储单元,片上数据主要存储在bram中,而计算时又要将片上数据传输到计算单元中。

3、因此现有的fpga与其他采用冯诺依曼架构的硬件平台一样,在执行各种计算任务的过程中,需要在存储单元和计算单元之间反复传输大量的数据,频繁且大量的数据搬移不仅会消耗大量的布线资源和互连资源,还会导致巨大的延迟和能量损耗,从而限制了fpga的数据处理效率。


技术实现思路

1、本技术人针对上述问题及技术需求,提出了一种具有高存储带宽的多裸片存算架构fpga,本技术的技术方案如下:

2、一种具有高存储带宽的多裸片存算架构fpga,该多裸片存算架构fpga包括基板、层叠设置在基板上的硅连接层、层叠设置在硅连接层上的fpga裸片和存储裸片,硅连接层覆盖所有的fpga裸片和存储裸片;

3、fpga裸片内部包括按照预定结构排列的若干个资源模块以及环于资源模块设置的互连资源,位于同一个子区域内的资源模块通过fpga内部的互连资源相连以实现为一个存算单元,每个存算单元中的本地存储单元用于存储存算单元的指令和数据;

4、fpga裸片中每个存算单元中的本地存储单元的数据读写端口连接到硅连接层,并经由硅连接层内的跨裸片连线连接到存储裸片的数据读写端口形成一条存算读写通道,存储裸片通过存算读写通道对所连接的本地存储单元进行数据读写,各个存算单元基于本地存储单元的指令和数据进行运算。

5、其进一步的技术方案为,不同存算单元中的本地存储单元的数据读写端口经由不同的跨裸片连线连接到存储裸片的数据读写端口以形成多条存算读写通道,存储裸片通过不同的存算读写通道对多个存算单元中的本地存储单元进行并行读写。

6、其进一步的技术方案为,多裸片存算架构fpga还包括与每条存算读写通道对应的dma控制器,dma控制器连接存储裸片的读写控制端口以及对应的本地存储单元的读写控制端口,dma控制器用于控制存储裸片与相应的本地存储单元之间的数据读写。

7、其进一步的技术方案为,dma控制器布设在硅连接层中,并通过硅连接层内的连线分别连接到存储裸片的读写控制引出端以及连接到fpga裸片的读写控制引出端,存储裸片的读写控制端口与读写控制引出端相连,fpga裸片内的本地存储单元的读写控制端口与读写控制引出端相连。

8、其进一步的技术方案为,dma控制器的第一电路结构布设在硅连接层内、第二电路结构布设在fpga裸片内,第二电路结构在fpga裸片内连接至本地存储单元的读写控制端口,第一电路结构通过硅连接层内的连线连接到存储裸片的读写控制引出端,存储裸片的读写控制端口与读写控制引出端相连;第一电路结构连接到fpga裸片的电路连通引出端,fpga裸片的电路连通引出端与fpga裸片内的第二电路结构连接相连形成dma控制器。

9、其进一步的技术方案为,对于每个fpga裸片内的每个存算单元中的本地存储单元:

10、本地存储单元的数据写端口连接fpga裸片的第一连接点引出端,fpga裸片的第一连接点引出端经由硅连接层内的跨裸片连线连接到存储裸片的第二连接点引出端,存储裸片的第二连接点引出端连接到存储裸片的数据读端口;

11、和/或;

12、本地存储单元的读端口连接fpga裸片的第三连接点引出端,fpga裸片的第三连接点引出端经由硅连接层内的跨裸片连线连接到存储裸片的第四连接点引出端,存储裸片的第四连接点引出端连接到存储裸片的写端口。

13、其进一步的技术方案为,本地存储单元的数据写端口通过第一多路选择器分别连接fpga裸片的第一连接点引出端和fpga内部的互连资源;

14、和/或,本地存储单元的数据读端口通过第二多路选择器分别连接fpga裸片的第三连接点引出端6和fpga内部的互连资源。

15、其进一步的技术方案为,多裸片存算架构fpga包括多个fpga裸片,每个fpga裸片内都形成有多个存算单元,且各个fpga裸片内的存算单元中的本地存储单元的数据读写端口分别经由硅连接层内的跨裸片连线,连接到存储裸片的数据读写端口。

16、其进一步的技术方案为,多裸片存算架构fpga内包括多个存储裸片,每个存储裸片的数据读写端口连接一个或多个存算单元的本地存储单元的数据读写端口,同一个存储裸片的数据读写端口所连接的多个本地存储单元属于同一个fpga裸片或属于多个不同的fpga裸片。

17、其进一步的技术方案为,多裸片存算架构fpga内的存储裸片包括dram和/或hbm。

18、本技术的有益技术效果是:

19、本技术公开了一种具有高存储带宽的多裸片存算架构fpga,该多裸片存算架构fpga将fpga裸片和存储裸片封装在一起,fpga裸片内部形成的存算单元,存储裸片可以经由硅连接层连接存算单元进行数据读写,可以实现较大的数据带宽,使得通过多个存算单元实现多核并行的存算运算时可以减少等待数据的时间,提升存算性能,使得多裸片存算架构fpga具有较高的数据处理效率和运算速度。

20、fpga裸片在与存储裸片相连时无需占用管脚,减少了对管脚资源的占用,而且由于fpga裸片的连接点引出端的数量远大于管脚的数量,因此可以增大存储单元并行读写的fpga裸片的数量,进一步增大带宽。

21、该多裸片存算架构fpga还可以内置dma控制器对存储裸片与存算单元之间的数据读写过程进行控制,dma控制器可以布设在硅连接层,减少了对fpga裸片内部资源的占用,使得fpga裸片内的资源可以实现更多数量的存算单元,而且dma控制器布设在硅连接层内更易制作,也降低了实现难度。另外dma控制器还可以部分布设在fpga裸片内,部分布设在硅连接层上共同实现。

22、该多裸片存算架构fpga中位于同一个子区域内的资源模块通过互连资源相连以实现一个存算单元,每个存算单元的处理器和本地存储单元都在同一个子区域内,处理器在执行时只需读写邻近的本地存储单元中的指令和数据,减少了处理器和本地存储单元之间传输数据所消耗的布线资源和互连资源,减少了数据传输延迟和能量损耗,提高了多裸片存算架构fpga的数据处理效率。另外多裸片存算架构fpga可以通过多个存算单元实现多核并行的存算运算,各个存算单元的处理器彼此间不会造成冲突,各个存算单元可以各自全速执行运算,不受存储带宽的影响,可以进一步提升多裸片存算架构fpga整体数据处理效率和运算速度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1