System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于NoC高效互联的存算FPGA制造技术_技高网
当前位置: 首页 > 专利查询>浙江大学专利>正文

一种基于NoC高效互联的存算FPGA制造技术

技术编号:41514834 阅读:8 留言:0更新日期:2024-05-30 14:52
本发明专利技术提供了一种基于NoC高效互联的存算FPGA,包括一层NoC互联结构和一层FPGA互联结构;所述FPGA互联结构包括逻辑块、开关块、连接块和输入输出块;所述逻辑块间通过连接块连接,相邻两个所述连接块之间通过开关块连接;位于所述存算FPGA互联结构最外围的连接块均与所述输入输出块相连接;所述逻辑块为可配置逻辑块、块随机存取存储器、乘法器和存内计算核;所述NoC互联结构包括若干异步路由,每个异步路由与四个分别位于自身东、南、西、北的异步路由直接建立通讯,异步路由与本地的所述存内计算核进行双向数据传输;异步路由通过连接块与连接在所述可配置逻辑块上的连接块相连,异步路由通过连接块与连接在所述块随机存取存储器上的连接块相连。

【技术实现步骤摘要】

本专利技术属于片上网络路由和存储器内计算,具体涉及一种基于noc(network on chip,片上网络)高效互联的存算fpga(field programmable gatearray,现场可编程门阵列)。


技术介绍

1、随着处理器和存储器的工艺提升差的变大,冯诺依曼架构下的访存功耗墙问题日益突出,数据迁移需要的功耗在整个计算中的占比随着工艺节点的提升而“水涨船高”,冯诺依曼架构下存储器和计算单元之间固有相互分离已成为后摩尔时代提高芯片算力最大制约。如何通过硬件体系架构的创新,突破冯诺依曼架构的“存储墙”、“功耗墙”的瓶颈,已成为高算力芯片架构创新和发展的重要方向。

2、为了解决冯诺依曼架构的瓶颈问题,工业界和学术界开始从聚焦计算向聚焦存储转变。存算一体(computing-in-memory,cim)技术利用高度并行计算机制来减少不必要的数据搬移,在物理空间上大幅度缩短了数据和计算之间的距离,是突破冯诺依曼架构的内存墙和功耗墙的最有前景的技术之一。相较于冯诺依曼架构而言,存储器内计算利用存储器和处理器的高度集成不仅解决了两者之间速度失调的问题,还解决了总线带宽限制和延时问题,可以大幅度提升处理速度并降低功耗。

3、但是现有存算一体技术无法同时兼顾高密度和高可靠性的需求,另一方面,无论深度学习加速器还是存算一体芯片技术,都往往只能满足单一的应用场景,无法满足对日新月异的、复杂多元的计算场景,新算子的计算必须通过异构集成的中央处理器(centralprocessing unit,cpu)等模块来实现,导致计算效率低下。将存算一体与现场可编程逻辑门阵列(field programmable gate array,fpga)可重构技术进行结合,既可以突破传统计算芯片的访存瓶颈,实现量级的效能提升,而且通过对fpga进行硬件编程从而实现对日新月异的复杂多元场景的支持。


技术实现思路

1、为解决现有技术中的问题,本专利技术提出了一种基于noc高效互联的存算fpga,包括两层互联结构,所述两层互联结构为一层noc互联结构和一层fpga互联结构;

2、所述fpga互联结构包括多个逻辑块、多个开关块、多个连接块和多个输入输出块;所述逻辑块间通过连接块连接,连接块用于传递二进制信号,相邻两个所述连接块之间通过开关块连接,开关块控制连接块之间的连通;位于所述fpga互联结构最外围的连接块均与所述输入输出块相连接,输入输出块控制所述存算fpga的输入和输出;所述逻辑块为可配置逻辑块、块随机存取存储器、乘法器和存内计算核;

3、所述noc互联结构包括若干异步路由,每个异步路由分别与其东、南、西、北方向的四个异步路由直接建立通讯,且同一时刻两个异步路由间只能进行单向通信,异步路由与本地的所述存内计算核进行双向数据传输;异步路由通过连接块、开关块与连接在所述可配置逻辑块上的连接块相连,异步路由通过连接块、开关块与连接在所述块随机存取存储器上的连接块相连;

4、其中,所述存算fpga的输入为网络的权重和输入激活,输出为最终计算结果。

5、进一步地,所述fpga互联结构中还包括若干个非易失性可配置逻辑块和多个可变电阻式存储器,所述非易失性可配置逻辑块通过所述可变电阻式存储器与连接块相连。

6、进一步地,所述非易失性可配置逻辑块包括一个全交叉开关矩阵和若干基本逻辑单元,所述全交叉开关矩阵的输入包括所述非易失性可配置逻辑块的输入和所述若干基本逻辑单元的输出,所述全交叉开关矩阵的输出端分别与基本逻辑单元的输入端相连,且全部基本逻辑单元的输出反馈给所述全交叉开关矩阵,作为所述交叉开关矩阵的部分输入,所述基本逻辑单元包括一个非易失性查找表、一个寄存器和一个选择器,所述基本逻辑单元的输入为所述非易失性查找表的输入,所述非易失性查找表的输出端分别与所述寄存器的输入端和所述选择器的输入端相连,所述寄存器的输出也作为所述选择器的输入,所述选择器的输出端与位于所述非易失性可配置逻辑块外部的可变电阻式存储器的输入端相连。

7、进一步地,所述非易失性查找表内含有若干条控制信息,每条控制信息均通过位于所述非易失性可配置逻辑块外部的一个可变电阻式存储器与连接块连接,不同的控制信息通过不同的所述可变电阻式存储器与同一连接块连接,所述可变电阻式存储器为控制信息与外部连接块的连接开关。

8、进一步地,所述存内计算核包括存算阵列、本地缓存和控制器;所述存算阵列用于矩阵乘法的计算,所述本地缓存用于暂存所述存算阵列计算得到的结果和所述异步路由传输入的数据,所述控制器用于生成各种控制信号并输出给所述存算阵列和所述本地缓存,所述存内计算核的输出结果暂存在本地缓存中,待存算阵列计算结束后,所述存内计算核的最终输出结果传输回与之相连的异步路由中。

9、本专利技术还提供了一种基于所述的存算fpga的工作方法,网络的权重通过输入输出块从外部的动态随机存取存储器进入到所述存算fpga上,并暂存在所述块随机存取存储器中;而后通过fpga互联结构经过连接块和开关块送入到各个异步路由中,并存储在所述异步路由本地的所述存内计算核的存算阵列里;

10、输入激活按照输入的顺序依次通过输入输出块从外部的动态随机存取存储器进入到所述存算fpga上,并暂存在所述块随机存取存储器中;通过fpga互联结构,输入激活从所述块随机存取存储器中输出,经过连接块和开关块送入到对应的异步路由中,并存储在所述异步路由本地的所述存内计算核的本地缓存中;

11、所述输入激活和所述网络的权重在都送入到存内计算核后开始进行矩阵向量积计算,所述存内计算核计算得到部分和;输入激活与部分和分别沿着不同方向通过noc互联结构进行传递,输入激活传递到下一个异步路由时,作为所述下一个异步路由的输入进行数据复用;而部分和传递到下一个异步路由时,与所述下一个异步路由产生的部分和进行累加操作,所述累加操作通过fpga互联结构连接到附近的可配置逻辑单元上来实现;部分和一边一直向同一个方向传递,一边进行累加,经过若干次累加之后得到最终的计算结果,存储在所述块随机存取存储器中;当一次计算全部完成之后,输出结果通过所述块随机存取存储器输出,经过连接块、开关块从输入输出块输出结果到片外动态随机存取存储器中。

12、与现有技术相比,本专利技术所具有的有益效果有:

13、(1)本专利技术采用了一种高效互联的存算fpga,因此克服了传统asic的应用场景单一,无法面对复杂多远的计算场景的问题,利用fpga高度可编程的特性,可以针对多种算法场景实现计算加速。

14、(2)本专利技术采用了存算一体技术,因此克服了传统冯诺依曼架构计算和存储分离的问题,从而能有效降低数据搬移功耗和传输延迟,大幅度系统的计算能效。

15、(3)本专利技术采用了一种基于noc的互联技术,因此克服了传统处理器片上通信低效的问题,从而能有效降低通信延迟,提高片上带宽,对多处理器体系结构的复杂性能有效降低。

本文档来自技高网...

【技术保护点】

1.一种基于NoC高效互联的存算FPGA,其特征在于,包括两层互联结构,所述两层互联结构为一层NoC互联结构和一层FPGA互联结构;

2.根据权利要求1所述的基于NoC高效互联的存算FPGA,其特征在于,所述FPGA互联结构中还包括若干个非易失性可配置逻辑块和多个可变电阻式存储器,所述非易失性可配置逻辑块通过所述可变电阻式存储器与连接块相连。

3.根据权利要求2所述的基于NoC高效互联的存算FPGA,其特征在于,所述非易失性可配置逻辑块包括一个全交叉开关矩阵和若干基本逻辑单元,所述全交叉开关矩阵的输入包括所述非易失性可配置逻辑块的输入和所述若干基本逻辑单元的输出,所述全交叉开关矩阵的输出端分别与基本逻辑单元的输入端相连,且全部基本逻辑单元的输出反馈给所述全交叉开关矩阵,作为所述交叉开关矩阵的部分输入,所述基本逻辑单元包括一个非易失性查找表、一个寄存器和一个选择器,所述基本逻辑单元的输入为所述非易失性查找表的输入,所述非易失性查找表的输出端分别与所述寄存器的输入端和所述选择器的输入端相连,所述寄存器的输出也作为所述选择器的输入,所述选择器的输出端与位于所述非易失性可配置逻辑块外部的可变电阻式存储器的输入端相连。

4.根据权利要求3所述的基于NoC高效互联的存算FPGA,其特征在于,所述非易失性查找表内含有若干条控制信息,每条控制信息均通过位于所述非易失性可配置逻辑块外部的一个可变电阻式存储器与连接块连接,不同的控制信息通过不同的所述可变电阻式存储器与同一连接块连接,所述可变电阻式存储器为控制信息与外部连接块的连接开关。

5.根据权利要求2所述的基于NoC高效互联的存算FPGA,其特征在于,所述存内计算核包括存算阵列、本地缓存和控制器;所述存算阵列用于矩阵乘法的计算,所述本地缓存用于暂存所述存算阵列计算得到的结果和所述异步路由传输入的数据,所述控制器用于生成各种控制信号并输出给所述存算阵列和所述本地缓存,所述存内计算核的输出结果暂存在本地缓存中,待存算阵列计算结束后,所述存内计算核的最终输出结果传输回与之相连的异步路由中。

6.根据权利要求1所述的基于NoC高效互联的存算FPGA架构,其特征在于,所述可配置逻辑块包括一个全交叉开关矩阵和若干基本逻辑单元,所述基本逻辑单元包括一个查找表、一个寄存器和一个选择器;所述全交叉开关矩阵的输入包括所述可配置逻辑块的输入和所述若干基本逻辑单元的输出,所述全交叉开关矩阵的输出端分别与基本逻辑单元的输入端相连,且全部基本逻辑单元的输出反馈给所述全交叉开关矩阵,作为所述交叉开关矩阵的部分输入,所述基本逻辑单元的输入为所述查找表的输入,所述查找表的输出端分别与所述寄存器的输入端和所述选择器的输入端相连,所述寄存器的输出也作为所述选择器的输入,所述选择器的输出即为所述基本逻辑单元的输出,也是所述可配置逻辑块的输出,所述可配置逻辑块的输出端与外部连接块的输入端连接。

7.一种基于权利要求5所述的存算FPGA的工作方法,其特征在于,网络的权重通过输入输出块从外部的动态随机存取存储器进入到所述存算FPGA上,并暂存在所述块随机存取存储器中;而后通过FPGA互联结构经过连接块和开关块送入到各个异步路由中,并存储在所述异步路由本地的所述存内计算核的存算阵列里;

...

【技术特征摘要】

1.一种基于noc高效互联的存算fpga,其特征在于,包括两层互联结构,所述两层互联结构为一层noc互联结构和一层fpga互联结构;

2.根据权利要求1所述的基于noc高效互联的存算fpga,其特征在于,所述fpga互联结构中还包括若干个非易失性可配置逻辑块和多个可变电阻式存储器,所述非易失性可配置逻辑块通过所述可变电阻式存储器与连接块相连。

3.根据权利要求2所述的基于noc高效互联的存算fpga,其特征在于,所述非易失性可配置逻辑块包括一个全交叉开关矩阵和若干基本逻辑单元,所述全交叉开关矩阵的输入包括所述非易失性可配置逻辑块的输入和所述若干基本逻辑单元的输出,所述全交叉开关矩阵的输出端分别与基本逻辑单元的输入端相连,且全部基本逻辑单元的输出反馈给所述全交叉开关矩阵,作为所述交叉开关矩阵的部分输入,所述基本逻辑单元包括一个非易失性查找表、一个寄存器和一个选择器,所述基本逻辑单元的输入为所述非易失性查找表的输入,所述非易失性查找表的输出端分别与所述寄存器的输入端和所述选择器的输入端相连,所述寄存器的输出也作为所述选择器的输入,所述选择器的输出端与位于所述非易失性可配置逻辑块外部的可变电阻式存储器的输入端相连。

4.根据权利要求3所述的基于noc高效互联的存算fpga,其特征在于,所述非易失性查找表内含有若干条控制信息,每条控制信息均通过位于所述非易失性可配置逻辑块外部的一个可变电阻式存储器与连接块连接,不同的控制信息通过不同的所述可变电阻式存储器与同一连接块连接,所述可变电阻式存储器为控制信息与外部连接块的连接开关。

5.根据权...

【专利技术属性】
技术研发人员:黄科杰李永根沈海斌
申请(专利权)人:浙江大学
类型:发明
国别省市:

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

1