CN102497411B - 面向密集运算的层次化异构多核片上网络架构 - Google Patents

面向密集运算的层次化异构多核片上网络架构 Download PDF

Info

Publication number
CN102497411B
CN102497411B CN201110405806.5A CN201110405806A CN102497411B CN 102497411 B CN102497411 B CN 102497411B CN 201110405806 A CN201110405806 A CN 201110405806A CN 102497411 B CN102497411 B CN 102497411B
Authority
CN
China
Prior art keywords
bunch
computing
transposition
network
memory cell
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
CN201110405806.5A
Other languages
English (en)
Other versions
CN102497411A (zh
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.)
Nanjing University
Original Assignee
Nanjing University
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 Nanjing University filed Critical Nanjing University
Priority to CN201110405806.5A priority Critical patent/CN102497411B/zh
Publication of CN102497411A publication Critical patent/CN102497411A/zh
Application granted granted Critical
Publication of CN102497411B publication Critical patent/CN102497411B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

本发明公开了一种面向密集运算的层次化异构多核片上网络架构,该架构顶层采用二维网格片上网络集成运算簇、转置簇、通信接口以及全局共享存储单元;底层在运算簇和转置簇内部采用总线架构;运算簇内部总线上集成运算单元,集成直接内存存取、网络接口和簇内共享存储单元;转置簇内部总线上集成处理器核、直接内存存取、网络接口和簇内共享存储单元。本发明支持多组全局共享存储单元,彼此之间相互独立,且每个全局共享存储单元通过多个网络接口集成到片上网络;簇内共享存储单元分布在运算簇和转置簇中,运算簇内共享存储单元分为若干相互独立的组。本发明通过层次化多级架构和多通道访存能够有效提高系统的通信性能、数据处理能力和访存带宽。

Description

面向密集运算的层次化异构多核片上网络架构
技术领域
本发明涉及一种面向密集运算的层次化异构多核片上网络(Network on chip,NoC)架构及其层次化存储方案,具体地说是一种能够改善NoC的通信能力、并提高其整体数据处理能力和访存带宽的异构多核系统架构及层次化存储方案。
背景技术
随着半导体工艺技术的快速发展,单芯片的集成度越来越高,多核已经成为近期芯片产业研究的热点和未来主要的发展方向。按照不同的片上互连方式,多核的体系架构可以分为基于总线的互连和基于网络的互连。前者是现有的总线体系架构的扩展,通过多总线和层次化总线等技术集成多个处理器核;而后者是近年来提出来的崭新概念,采用分组路由的方式进行多处理器核之间的通讯,克服了基于总线的体系架构的各种瓶颈问题,这种片内多处理器核通讯的体系称为片上网络(Network on Chip,NoC)。
NoC的核心思想是数据处理单元与通信架构相互分离,而其通信部分则借鉴了计算机网络技术,并将其移植到集成电路设计中来,这样便可以从体系结构上解决片上通信的瓶颈问题。图1为NoC结构示意图。以二维网格架构为例,NoC的基本结构由资源节点(Resource)、路由节点(Router)、通道(Channel)、网络接口(Network Interface,NI)和本地功能单元组成,而路由节点本身则由若干对输入/输出通道组成。近年来,各研究小组先后提出了各种NoC拓扑架构,如蜂窝架构、二维折叠环架构等等。
由NoC拓扑结构的几何特点,不难看出,在处理器核数众多且通信较为频繁的情况下,NoC架构相较于传统总线架构,优势极为明显,它能够提供一种多点并发通信的机制,各核之间通信能力得以大幅提高;除了通信能力上的需求,实际的应用也对系统的数据处理能力和访存带宽有很高的需求,例如一些运算密集的应用,它们往往要处理大批量数据的高精度复杂运算并进行频繁的数据传输,为了适应这种需求,不仅要在系统中集成多种高性能的专用计算单元,还要设计实现高效通讯网络和存储架构。基于以上的分析可知,现有的片上网络架构并不能很好地满足实际应用的需求。
发明内容
本发明的目的是提供一种面向密集运算的层次化异构多核片上网络架构,该架构可以有效地提高系统的通信性能、数据处理能力和访存带宽,更好地满足实际应用的需求。
本发明的目的是通过以下技术方案来实现的:
一种面向密集运算的层次化异构多核片上网络架构,其特征在于:该架构顶层采用二维网格片上网络集成一组运算簇、转置簇、通信接口以及全局共享存储单元;底层在运算簇和转置簇内部采用总线架构;在运算簇内部总线上集成一组运算单元、运算簇内直接内存存取、运算簇内网络接口和运算簇内共享存储单元,所述运算单元包括运算簇内处理器核、协处理器和FFT加速单元,运算簇内处理器核通过运算簇内总线与运算簇内共享存储单元连接,FFT加速单元和运算簇内直接内存存取均与运算簇内共享存储单元连接,运算簇内网络接口与运算簇内直接内存存取连接;在转置簇内部总线上集成转置簇内处理器核、转置簇内直接内存存取、转置簇内网络接口和转置簇内共享存储单元,转置簇内直接内存存取与转置簇内共享存储单元连接,转置簇内网络接口与转置簇内直接内存存取连接;在每个网络节点上挂接有一个转置簇或运算簇;片上网络与外部的通信通过通信接口完成。
本发明中,与层次化架构相应地存储子系统也分为两级:簇内共享存储单元和全局共享存储单元。一组全局共享存储单元彼此之间相互独立,且每个全局共享存储单元通过多个网络接口集成到片上网络;运算簇内共享存储单元划分为相互独立的存储组,单个存储组通过簇内共享存储器地址转换与运算簇内部总线、协处理器、FFT加速单元和运算簇内直接内存存取连接。片上网络上可以挂接不定数量的转置簇和运算簇,而每个网络节点最多挂接一个转置簇或运算簇。
运算簇内共享存储单元被该簇内的处理器核、协处理器和FFT加速单元和直接内存存取访问;转置簇内共享存储单元被该簇内直接内存存取访问;全局共享存储单元被集成在片上网络上的所有运算簇和转置簇访问。在运算簇内部总线和转置簇内部总线上均集成有程序存储器、堆栈存储器、中断控制器和寄存器组。
片上网络使用网络包交换协议,运算簇和转置簇内部采用总线协议;网络包交换协议与总线协议之间通过网络接口相互转换。
本发明的顶层是片上网络架构,采用二维网格的拓扑结构。在二维网格的每个节点放置一个路由器(Router,R)模块,每个路由器模块拥有五个方向的通道,四个用来与其他路由器模块互连构成片上网络,一个用于与本地功能单元通讯。本发明中的本地功能单元包含四种类型,分别是运算簇、转置簇、全局共享存储单元和通信接口。
在实际应用中常常涉及到矩阵运算,因此本发明设计了运算簇和转置簇,分别承担数据运算和矩阵转置任务。这两类簇由若干运算单元、通信单元及簇内总线组成。运算簇内的主要单元包括运算簇内处理器核、协处理器、FFT加速单元、运算簇内直接内存存取、运算簇内网络接口和运算簇内共享存储单元。其中运算簇内处理器核用于簇内各个单元的协同控制,同时也具有一定的数据计算能力;协处理器专用于大批量数据的浮点运算,运算类型包含加法、减法、乘法、除法、三角函数运算等;FFT加速单元采用配置寄存器的方式,可以完成多种数据长度的FFT和反FFT运算;为了方便进行批量数据的计算,运算簇内共享存储单元划分为若干个独立的存储组,运算簇内的功能单元可以同时访问运算簇内共享存储单元的多个存储组,访问的途径包括运算簇内总线和专用的存储接口;运算簇内网络接口用于本簇与片上网络之间的通信,并通过运算簇内直接内存存取访问运算簇内共享存储单元。转置簇结构与运算簇基本一致,簇内的主要功能单元包括转置簇内处理器核、转置簇内直接内存存取、转置簇内网络接口和转置簇内共享存储单元,各个单元与运算簇的对应单元功能相同。
为了提高系统的访存带宽,本发明采用层次化的存储方案,将存储单元分为全局共享存储单元和簇内共享存储单元。在系统中集成多个全局共享存储单元可以提高系统的存储空间,由于这些存储单元彼此之间互相独立,可以单独访问,访存速度也大幅度提高。每个全局共享存储单元通过多个路由器和网络接口挂载到片上网络,可以被系统内所有的簇通过其中任意一个路由器和网络接口访问,从而进一步提高访存带宽。簇内共享存储单元能被本簇内的单元访问,其他簇没有访问权限。簇内共享存储单元和全局共享存储单元可以通过簇内的网络接口进行数据交换,数据交换的过程由簇内的处理器核控制。
本发明的有益效果是: 
第一,将通信最为密集的各种功能单元集合为一个簇,采用簇内总线以及专用的存储接口可保证簇内数据传输的速度;将互相通信比较密集的各个簇和全局共享存储单元挂载到片上网络上,利用网络进行通信;簇或单元访问该全局共享存储单元时可以选取距离较近的接口,这样可以充分发挥片上网络的并行通信性能。
第二,运算簇和转置簇作为各种运算单元和通信单元的集合体,具有很强的数据处理能力;每个片上网络上集成簇的数量可以根据实际需求来配置,而且簇本身的功能也是可以配置的,通过增加或减少相应的数据处理单元,可以实现具有不同数据处理能力的簇,这样既能保证满足实际应用的需求,也具有一定的灵活性。
综上所述,本发明可以有效地提高系统的通信性能、数据处理能力和访存带宽,有着良好的实际应用价值。
附图说明
图1为现有的二维网格片上网络结构示意图; 
图2是本发明的层次化异构多核架构示意图;
图3是本发明的运算簇架构示意图;
图4是本发明的转置簇架构示意图;
图5是应用演示系统示意图;
图6是应用演示系统中三级流水任务映射示意图。
具体实施方式
下面结合附图和具体实施方式,对本发明进行详细的说明。
如图2所示的层次化异构多核架构是本发明的一种实例,该片上网络的大小为4×4,顶层二维网格片上网络集成了4个运算簇、1个转置簇、3组全局共享存储单元和3个通信接口。底层在运算簇和转置簇内部采用总线架构。
运算簇的具体结构如图3所示,除了总线、处理器核、协处理器核、FFT加速单元、直接内存存取(DMA)、网络接口和簇内共享存储单元,4个存储组(Memory1、Memory2、Memory3和Memory4),还包括了程序存储器、堆栈存储器、中断控制器、寄存器组和簇内共享存储器地址转换单元。程序存储器、堆栈存储器和中断控制器作为处理器核的重要外设组件,分别用于存储嵌入式程序、程序运行时的堆栈和中断控制;寄存器组用于暂时存放配置数据,配置数据由处理器核写入,用于控制FFT加速单元、直接内存存取单元和网络接口;直接内存存取为网络接口提供簇内共享存储单元的访问通道;Memory1、Memory2、Memory3和Memory4分别代表簇内共享存储单元的一个组,4组存储器组共用一个存储器地址转换单元,对这些存储单元的访问必须经过该地址转换单元。
转置簇的具体结构如图4所示,主要包含总线、处理器核、直接内存存取(DMA)、网络接口、簇内共享存储单元、程序存储器、堆栈存储器、中断控制器和寄存器组。由于转置簇并不进行复杂的数据运算,簇内运算单元仅有一个处理器核,该核主要的工作是控制转置的流程,相应地簇内共享存储单元也仅有一组。其余单元的的功能与运算簇类似。
为验证系统的通信能力以及数据处理能力,设计了一款集成了四个4×4片上网络的NoC原型演示系统,该系统由2台带1G网络接口的PC、集成4片FPGA以及数组片外存储芯片的开发板组成,其整体结构如图5所示。
该演示系统的主要功能是:在每片FPGA内实现一个二维网格片上网络,4个片上网络组成全互连的网络系统,该网络系统通过两个千兆网口分别与两台PC相连。在实际的运行中,演示系统中的一台PC作为数据发送端,以以太网包的形式发送批量数据至其中一个片上网络,片上网络系统将这些数据进行流水化处理,并将结果重新封装成以太网包,发送至另一台PC。
上述演示系统采用全互连架构集成四片异构多核FPGA,为保证每两片FPGA之间都能快速的通信,每个FPGA配置3个通信接口,分别与其他的FPGA芯片相连,其连接方式如图5所示。这样共计实现了6个网络间的通道,保证了多核系统片间通信的能力。
该异构多核FPGA芯片内部采用本发明所述架构,如图2所示顶层采用4×4二维网格结构,各网络节点采用专门针对片上网络通信特点而设计的包-电路交换路由器,可以保证各簇之间大量数据的快速传输。为保证系统的数据处理能力,片上网络上集成了4个运算簇和1个转置簇;同时为了能够缓存足够多的数据,片上网络上还集成了3组全局共享存储单元(采用DDR                                                
Figure 2011104058065100002DEST_PATH_IMAGE001
实现,每个存储单元通过4个接口链接到片上网络上);另外还有1个Flash接口,用于存放嵌入式程序。
该网络系统的底层为采用总线架构的簇,依照其功能分为运算簇和转置簇,其结构分别如图3和图4所示。两种簇都采用AHB总线架构,处理器核采用ARM核,其余单元依照其功能为本系统专门设计。运算簇内共享存储单元深度为50K,划分为3个16K和1个2K的组,该存储单元利用FPGA内部的存储资源来实现;转置簇内共享存储单元深度为1M,采用片外的SRAM芯片实现。簇内共享存储单元配置了专用直接内存存取通道,通过网络接口直接与网络互连,不需要通过总线就可以与网络进行数据交换,进一步提高了簇内数据的共享能力。
该层次化异构多核NoC系统最终在Xilinx公司的XC6VLX550T FPGA上实现。为验证该系统的通信能力和数据处理能力,采用汇编语言和C语言分别对系统内的所有处理器核编程,设计实现了一种RD实时成像算法。该算法包含多个子任务,分别涉及到大规模矩阵的转置、矩阵中一行或一列元素的FFT运算、矩阵元素的累加、所有矩阵元素与常数相乘、求矩阵元素的正弦或余弦等运算。具体的并行编程方式为,将算法中多个子任务划分为3个流水级,然后做并行化拆分,分别映射到4个FPGA中的各个运算簇内,最后根据映射的任务对簇内的ARM核和协处理器进行编程,不同簇的任务通过簇间控制包进行同步。3级流水的任务映射方式如图6所示。这些预先编写好的程序通过编译生成相应的可执行文件,存放在片外的Flash芯片,在系统上电运行时通过Flash接口加载到对应的簇内。
演示系统的PC1中存放着原始数据,每16M数据为一组,在系统运行时该PC将数据划分为等长的以太网包发送到片上网络中,然后片上网络以3级流水线的形式顺次处理16M的原始数据,以每幅间隔22s的速度输出大小为2048*4096的图像,图像在演示系统中的PC2上显示。
本发明将通信最为密集的各种功能单元集合为一个簇,采用簇内总线以及专用的存储接口可保证簇内数据传输的速度;将互相通信比较密集的各个簇和全局共享存储单元挂载到片上网络上,利用网络进行通信;簇或单元访问该全局共享存储单元时可以选取距离较近的接口,可以充分发挥片上网络的通信性能。运算簇和转置上簇作为各种运算单元和通信单元的集合体,具有很强的数据处理能力;每个片上网络上集成簇的数量可以根据实际需求来配置,而且簇本身的功能也是可以配置的,通过增加或减少相应的数据处理单元,可以实现具有不同数据处理能力的簇,这样既能保证满足实际应用的需求,也具有一定的灵活性。本发明通过层次化多级架构和多通道访存有效地提高了系统的通信性能、数据处理能力和访存带宽。

Claims (4)

1.一种面向密集运算的层次化异构多核片上网络架构,其特征在于:该架构顶层采用二维网格片上网络集成一组运算簇、转置簇、通信接口以及全局共享存储单元;底层在运算簇和转置簇内部采用总线架构;在运算簇内部总线上集成一组运算单元、运算簇内直接内存存取、运算簇内网络接口和运算簇内共享存储单元,所述运算单元包括运算簇内处理器核、协处理器和FFT加速单元,运算簇内处理器核通过运算簇内总线与运算簇内共享存储单元连接,FFT加速单元和运算簇内直接内存存取均与运算簇内共享存储单元连接,运算簇内网络接口与运算簇内直接内存存取连接;在转置簇内部总线上集成转置簇内处理器核、转置簇内直接内存存取、转置簇内网络接口和转置簇内共享存储单元,转置簇内直接内存存取与转置簇内共享存储单元连接,转置簇内网络接口与转置簇内直接内存存取连接;在每个网络节点上挂接有一个转置簇或运算簇;片上网络与外部的通信通过通信接口完成;一组全局共享存储单元彼此之间相互独立,且每个全局共享存储单元通过多个网络接口集成到片上网络;运算簇内共享存储单元划分为相互独立的存储组,单个存储组通过簇内共享存储器地址转换与运算簇内部总线、协处理器、FFT加速单元和运算簇内直接内存存取连接。
2.根据权利要求1所述的面向密集运算的层次化异构多核片上网络架构,其特征在于:运算簇内共享存储单元被该簇内的运算簇内处理器核、协处理器和FFT加速单元和运算簇内直接内存存取访问;转置簇内共享存储单元被该簇内的转置簇内直接内存存取访问;全局共享存储单元被集成在片上网络上的所有运算簇和转置簇访问。
3.根据权利要求1所述的面向密集运算的层次化异构多核片上网络架构,其特征在于:片上网络使用网络包交换协议,运算簇和转置簇内部采用总线协议;网络包交换协议与总线协议之间通过网络接口相互转换。
4.根据权利要求1所述的面向密集运算的层次化异构多核片上网络架构,其特征在于:在运算簇内部总线和转置簇内部总线上均集成有程序存储器、堆栈存储器、中断控制器和寄存器组。
CN201110405806.5A 2011-12-08 2011-12-08 面向密集运算的层次化异构多核片上网络架构 Active CN102497411B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110405806.5A CN102497411B (zh) 2011-12-08 2011-12-08 面向密集运算的层次化异构多核片上网络架构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110405806.5A CN102497411B (zh) 2011-12-08 2011-12-08 面向密集运算的层次化异构多核片上网络架构

Publications (2)

Publication Number Publication Date
CN102497411A CN102497411A (zh) 2012-06-13
CN102497411B true CN102497411B (zh) 2014-01-15

Family

ID=46189196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110405806.5A Active CN102497411B (zh) 2011-12-08 2011-12-08 面向密集运算的层次化异构多核片上网络架构

Country Status (1)

Country Link
CN (1) CN102497411B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425620B (zh) * 2013-08-20 2018-01-12 复旦大学 基于多令牌环的加速器与处理器的耦合结构
CN103986664B (zh) * 2014-05-15 2017-06-27 厦门大学 一种用于片上网络的混合互连Mesh拓扑结构及其路由算法
CN109656853A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 一种数据传输系统及方法
CN109325494B (zh) * 2018-08-27 2021-09-17 腾讯科技(深圳)有限公司 图片处理方法、任务数据处理方法和装置
CN109542830B (zh) * 2018-11-21 2022-03-01 北京灵汐科技有限公司 一种数据处理系统及数据处理方法
CN110191069B (zh) * 2019-05-31 2021-04-06 西安理工大学 一种带有多条通道的环形片上网络
CN110297802A (zh) * 2019-06-09 2019-10-01 苏州长江睿芯电子科技有限公司 一种新型处理器之间互联结构
CN111427836B (zh) * 2020-06-11 2020-11-13 杭州万高科技股份有限公司 一种总线资源配置调整的异构多核处理器
CN111427837B (zh) * 2020-06-11 2020-11-13 杭州万高科技股份有限公司 一种总线设备连接调整的异构多核处理器
CN112181493B (zh) * 2020-09-24 2022-09-13 成都海光集成电路设计有限公司 寄存器网络架构和寄存器访问方法
CN113297097B (zh) * 2021-05-27 2022-09-02 中国电子科技集团公司第五十八研究所 一种面向封装级多处理器的混合地址编程方法
CN113923157A (zh) * 2021-10-14 2022-01-11 芯盟科技有限公司 一种基于片上网络的多核系统和处理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101447986A (zh) * 2007-11-27 2009-06-03 国际商业机器公司 具有分区的片上网络及其处理方法
CN102075578A (zh) * 2011-01-19 2011-05-25 南京大学 基于分布式存储单元的层次化片上网络架构

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101447986A (zh) * 2007-11-27 2009-06-03 国际商业机器公司 具有分区的片上网络及其处理方法
CN102075578A (zh) * 2011-01-19 2011-05-25 南京大学 基于分布式存储单元的层次化片上网络架构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曹祥等.面向层次化NoC的混合并行编程模型.《计算机工程》.2010,第36卷(第13期),278-280. *

Also Published As

Publication number Publication date
CN102497411A (zh) 2012-06-13

Similar Documents

Publication Publication Date Title
CN102497411B (zh) 面向密集运算的层次化异构多核片上网络架构
Shao et al. Simba: Scaling deep-learning inference with multi-chip-module-based architecture
Nabavinejad et al. An overview of efficient interconnection networks for deep neural network accelerators
Flich et al. Designing network on-chip architectures in the nanoscale era
CN111433758B (zh) 可编程运算与控制芯片、设计方法及其装置
Durand et al. Euroserver: Energy efficient node for european micro-servers
US11182221B1 (en) Inter-node buffer-based streaming for reconfigurable processor-as-a-service (RPaaS)
CN112463719A (zh) 一种基于粗粒度可重构阵列实现的存内计算方法
Yoo et al. Mobile 3D graphics SoC: From algorithm to chip
CN113874834A (zh) 用于异构可编程设备的硬件-软件设计过程中的流程收敛
CN113874867A (zh) 用于异构可编程设备的高级综合硬件-软件设计流程
US11182264B1 (en) Intra-node buffer-based streaming for reconfigurable processor-as-a-service (RPaaS)
CN101441616B (zh) 基于寄存器文件的快速数据交换结构及其管理方法
Chen et al. Towards efficient allocation of graph convolutional networks on hybrid computation-in-memory architecture
CN102075578A (zh) 基于分布式存储单元的层次化片上网络架构
Sievers et al. Evaluation of interconnect fabrics for an embedded MPSoC in 28 nm FD-SOI
Ouyang et al. MMNNN: A tree-based Multicast Mechanism for NoC-based deep Neural Network accelerators
Ye On-chip multiprocessor communication network design and analysis
Sievers et al. Comparison of shared and private l1 data memories for an embedded mpsoc in 28nm fd-soi
CN105373492A (zh) 一种面向任务流的基于寄存器文件的快速数据交换结构
Balkan et al. An area-efficient high-throughput hybrid interconnection network for single-chip parallel processing
Hou et al. An FPGA-based multi-core system for synthetic aperture radar data processing
Gao et al. Impact of reconfigurable hardware on accelerating mpi_reduce
Mamidala et al. Optimizing mpi collectives using efficient intra-node communication techniques over the blue gene/p supercomputer
Li et al. An efficient multicast router using shared-buffer with packet merging for dataflow architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant