多核处理器核间互联的方法

文档序号:7551081阅读:645来源:国知局
专利名称:多核处理器核间互联的方法
技术领域
本发明涉及一种多核处理器的内核之间的芯片级互连的方法。
背景技术
随着半导体工艺技术的快速发展,微处理器(MCU)、数字信号处理器(DSP)、可编程门阵列(FPGA)的性能都有了大幅度的提高,使得超大规模的复杂运算在实践中得以更广泛的应用。但单个处理器还是不能满足日益增长的应用需求。如果把多个处理器互联成处理器阵列进行多核协作并行计算,则可以成倍提高系统的数据处理能力,所以多核互连技术的研究已经成为新兴的热点问题。处理器之间互连的方式有很多种,在不同的应用场合可以进行不同的选择。传统上使用并行总线传输技术。这种技术结构复杂,因为受到信号偏移的影响,通过提高时钟频率提高传输效率的方法局限性很大。例如下述论文:
Partha Pratim Pandej Cfistian Grecuj Michael Jonej et al.Performance evaluation and design tradeoffs for network on-chipinterconnect architectures[ J].1EEE Transaction computers , 2005, 54( 8):1025- 1040.如果采用拓宽总线的方法来提升传输速率,也因为同样的原因会降低系统的最高频率,同时过宽的总线也会占据更多芯片管脚和电路板面积,从而增加了设备的开销,同时降低了可提供的连接数目。而且由于增加节点数会增大电容,在多点接入的共享总线中还将造成耗电巨大,在所需的频率下,需增大电压才能驱动总线。另外,传统的互连结构还有诸如安全性差、容错性差等一系列问题。因此高带宽的多处理器核间互联技术已经成为一个普遍关注的技术。

参考现有的专利文献,在现有技术中,大部分是用于系统级之间的连接,如专利号为03116475.7的发明专利《多处理器单片机通讯系统》中包含一台与计算机主机相连的主处理器,其分别通过N个双向总线接口芯片与N个从处理器相接,N个从处理器分别通过N个分通讯接口芯片与N个被控设备相连。这是系统层级的连接,不适合于芯片级的设计。还有的技术方案采用传统的控制总线方法,如在专利号为200610086481.8的发明专利《实现处理器之间进行通讯的装置和方法》中采用的方法是在多处理器通信单元中,各个处理器通过控制总线访问该多处理器通信单元,通过该多处理器通信单元进行各处理器之间的通讯。利用该发明可以实现处理器之间进行快速、及时的通讯。这种方法适用于特定的核和总线之间的通讯,对于多核网络的应用效果并不理想。还有的虽然效果很好,但是实现方法比较复杂,花费的代价大,如专利号为96114553.6的发明专利《用于多节点虫孔网络的自适应动态信息路由选择系统》中,利用自适应动态路由选择方案,将报文从一个节点传递到另一节点。该路由选择方案包括每个节点上的两级多路由路由选择表来确保报文的有效传递,自适应动态路由的算法要求具有较强的技术基础。
另外还可参考如下专利文件:申请号为201010264091.1的发明专利《提高片上多处理器通信速度的方法》以及申请号为201010267931.X的发明专利《一种多处理器系统及其同步引擎》。故现有技术有的不适用于芯片级的互连,有的实现困难,不易于集成。

发明内容
本发明的目的是提供一种适用于多核处理器核间的芯片级互联的方法。为达到上述目的,本发明采用的技术方案是:
一种多核处理器核间互联的方法,用于实现多核处理器的内核之间的芯片级的互联,所述的多核处理器包括m块芯片,每块所述的芯片上包括η个所述的内核,其中m、η均为整数,该方法在所述的芯片之间基于RapidIO物理层协议形成一 mXn的mesh互联拓扑结构,所述的互联拓扑结构包括与所述的芯片一一对应连接的RapidIO核、与各个所述的RapidIO核相连接的网络接口开关,所述的芯片之间通过所述的RapidIO核和所述的网络接口开关形成串行总线。优选的,所述的网络接口开关与路由相连接,所述的网络接口开关包括输入控制模块、输入缓冲器、数据包解包模块、输出控制模块、输出缓冲器、数据包打包模块;所述的输入控制模块分别与所述的路由、所述的输入缓冲器、所述的RapidIO核相连接,所述的输入缓冲器的输入端与所述的路由相连接,所述的输入缓冲器的输出端与所述的数据包解包模块的输入端相连接,所述的数据包解包模块的输出端与所述的RapidIO核相连接;所述的输出控制模块分别与所述的路由、所述的输出缓冲器、所述的RapidIO核相连接,所述的数据包打包模块的输入端与所述的RapidIO核相连接,所述的数据包打包模块的输出端与所述的输出缓冲器的输入端相连接,所述的输出缓冲器的输出端与所述的路由相连接。优选的,所述的网络接口开关还包括多个高速缓存。优选的,所述的芯片上包括多核DSP系统形成的片上网络,其包括多个DSP内核。优选的,所述的DSP内核之间采用并行总线连接。优选的,所述的网络接口开关上连接有控制所述的芯片功能的控制器。优选的,所述的网络接口开关上连接有FPGA模块。优选的,所述的网络接口开关上设置有存储器接口。由于上述技术方案运用,本发明与现有技术相比具有下列优点:本发明的多核处理器核间互联的方法实现方便,易于芯片级的集成且使用效果较理想。


附图1为本发明的多核处理器核间互联的方法的互联结构示意图。附图2为本发明的多核处理器核间互联的方法的网络接口开关的结构示意图。
具体实施例方式下面结合附图所示的实施例对本发明作进一步描述。实施例一:参见附图1所示。多核处理器是指一个芯片内含有两个或者两个以上的“执行内核”。多核处理器在进行体系结构的技术研究时,比起单核处理器来讲,更要面临更多的挑战,诸如核间通讯、存储器体系、低功耗、软硬件协调等。如何实现多核内核之间相互协作和通信,确保提高处理速度、提高芯片处理器性能就是核间通讯结构研究的主要内容,也是学术界关注的重点。NoC (Network on_Chip)的出现给进入深亚微米的SoC带来了持续发展的后劲。NoC是更高层次、更大规模的片上系统,是片上的网络系统。NoC技术的核心思想是将计算机网络技术移植到芯片设计中来,彻底解决多CPU的体系结构问题。由于网络结构本质就是多CPU系统,因此基于网络的体系结构是多CPU系统最有前途的解决方案之一。RapidIO是基于包交换的互联网络技术,比较适用于片上网络系统。RapidIO网络主要由终端器件和交换器件组成,终端器件是数据包的源或目的地,不同的终端器件以器件识别号(ID)来区分。RapidIO支持8bits或16 bits器件ID,因此一个RapidIO网络最多可容纳256或65536个终端器件。与以太网类似,RapidIO也支持广播或组播,每个终端器件除了独有的器件ID外,还可配置广播或组播ID。交换器件根据包的目地器件ID进行包的转发,交换器件本身没有器件ID。RapidIO协议由包和控制符号组成。包提供终端节点设备间进行逻辑事务处理的接口 ;控制符号为事务处理提供物理层的控制,它用于包应答、流量控制和基于硬件的基础错误恢复等。包格式由三层协议规范的域组成,这些域信息保证了信息可靠的传输。正是由于RapidIO所具有的特点,采用RapidIO构成的片上网络的结构适合于多核系统核间通讯的互联。本发明将RapidIO技术与NOC (network on chip)技术相结合,通过增加网络接口开关,提出了一种核间高速通讯的互联结构。因此,本发明采用的技术方案为:一种多核处理器核间互联的方法,用于实现多核处理器的内核之间的芯片级的互联。多核处理器包括m块芯片,每块芯片上包括η个内核,其中m、η均为整数。例如,芯片上包括多核DSP系统形成的片上网络,其包括多个DSP内核,片上网络内部的协议可以自行定义,例如DSP内核之间采用并行总线连接。该方法在芯片之间基于RapidIO物理层协议形成一 mXn的mesh互联拓扑结构,互联拓扑结构包括与芯片一一对应连接的RapidIO核、与各个RapidIO核相连接的网络接口开关,芯片之间通过RapidIO核和网络接口开关形成串行总线。参见附图2所示,网络接口开关与路由相连接,网络接口开关包括输入控制模块、输入缓冲器、数据包解包模块、输出控制模块、输出缓冲器、数据包打包模块;输入控制模块分别与路由、输入缓冲器、RapidIO核相连接,输入缓冲器的输入端与路由相连接,输入缓冲器的输出端与数据包解包模块的输入端相连接,数据包解包模块的输出端与RapidIO核相连接;输出控制模块分别与路由、输出缓冲器、RapidIO核相连接,数据包打包模块的输入端与RapidIO核相连接,数据包打包模块的输出端与输出缓冲器的输入端相连接,输出缓冲器的输出端与路由相连接。网络接口开关还包括多个高速缓存。网络接口开关上连接有控制芯片功能的控制器以及FPGA模块,并设置有存储器接口。越来越多的高速信号处理系统采用多DSP核进行数据的运算,用上述可扩展的网络接口开关与RapidIO结构构建互联是非常新颖有效的一种方式。这样的设计并非把单个芯片作为RapidIO拓扑结构的一个节点,而是把整个片上网络作为RapidIO拓扑结构的一个节点,在电路内部集成RapidIO协议的同时,设计一个网络接口开关,实现与路由的快速通讯。利用这种设计,在片上网络内部的协议完全自己定义,不仅能利用RapidIO接口对基于片上网络架构的多核DSP系统做片外扩展,通过网络接口开关还能使片上网络的拓扑结构不依赖于RapidIO而独立设计。因为在RapidIO的拓扑结构中,数据交换的单元是交换开关,而本设计中数据交换由独立于RapidIO协议的路由来完成的。如果需要兼容其他的总线协议,只需要更改网络接口开关的设计即可,极大的简化了工作量。为了实现多核DSP之间的数据通讯,设计网络接口开关,为了提高RapidIO IP的传输速率,合理分配高速传输的资源,这种网络接口必须能够解析来自片上网络的数据包并转换成RapidIO IP核所需要的数据格式,或者接收来自RapidIO IP核的数据,并按照网络协议组装成数据包在网络上发送,实现片上网络同片外DSP核的通信。网络接口开关要支持不同时钟域的数据传输,满足片上网络全局异步、局部同步的时钟要求,还需要能够检测来自网络数据包的错误,保证可靠传输。使用基于信用量的流控机制,防止缓冲器溢出造成数据丢失。在另外一个重要的方面,即在流量控制方面,在网络接口开关中,输入缓冲器和输出缓冲器可以设计成异步的先进先出队列,网络发送方通过对接收方缓冲器剩余空间的计数,判断接收方缓冲器是否为满,决定是否继续发送数据,从而实现流量控制,同时异步FIFO起到分割时钟域的作用。网络接口使用多个高速缓存,提高网络的吞吐率。附图1所示为四核的RapidIO互联结构,四个DSP通过串行RapidIO和网络接口开关互相连接起来,在几个DSP内部利用串行RapidIO协议,数据通过网络接口开关在几个DSP之间高速运转。另外,还可以通过外部的控制器来实现控制这几个DSP的一些功能,可根据需要给每个DSP分配不同的算法模块,对多个DSP进行负载均衡,从而去实现更高的运算效率。上述采用通过网络接口开关的RapidIO互联的设计,在系统中处理器核与网络的通讯可以通过简单的握手协议来完成的,因此网络与各个处理器的电气参数、时钟信号都可以相对独立的处理,容易控制。此外由于有了网络接口开关,网络与处理器间也可以使用异步通讯,这就不需要系统时钟的全局同步,避免了庞大时钟树所带来的时钟和面积问题,而局部时钟线的大量采用可以大大降低系统功耗。本发明的设计通过增加网络接口开关,采用全局异步局部同步的方式解决了整个芯片全局同步面临的问题,这是多核系统中数据高速传输的难点,该方法有很好的可重用性和可扩展性,平均通信带宽较高。上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
权利要求
1.一种多核处理器核间互联的方法,用于实现多核处理器的内核之间的芯片级的互联,所述的多核处理器包括m块芯片,每块所述的芯片上包括η个所述的内核,其中m、η均为整数,其特征在于:该方法在所述的芯片之间基于RapidIO物理层协议形成一 mXn的mesh互联拓扑结构,所述的互联拓扑结构包括与所述的芯片--对应连接的RapidIO核、与各个所述的RapidIO核相连接的网络接口开关,所述的芯片之间通过所述的RapidIO核和所述的网络接口开关形成串行总线。
2.根据权利要求1所述的多核处理器核间互联的方法,其特征在于:所述的网络接口开关与路由相连接,所述的网络接口开关包括输入控制模块、输入缓冲器、数据包解包模块、输出控制模块、输出缓冲器、数据包打包模块;所述的输入控制模块分别与所述的路由、所述的输入缓冲器、所述的RapidIO核相连接,所述的输入缓冲器的输入端与所述的路由相连接,所述的输入缓冲器的输出端与所述的数据包解包模块的输入端相连接,所述的数据包解包模块的输出端与所述的RapidIO核相连接;所述的输出控制模块分别与所述的路由、所述的输出缓冲器、所述的RapidIO核相连接,所述的数据包打包模块的输入端与所述的RapidIO核相连接,所述的数据包打包模块的输出端与所述的输出缓冲器的输入端相连接,所述的输出缓冲器的输出端与所述的路由相连接。
3.根据权利要求2所述的多核处理器核间互联的方法,其特征在于:所述的网络接口开关还包括多个高速缓存。
4.根据权利要求1所述的多核处理器核间互联的方法,其特征在于:所述的芯片上包括多核DSP系统形成的片上网络,其包括多个DSP内核。
5.根据权利要求4所述的多核处理器核间互联的方法,其特征在于:所述的DSP内核之间采用并行总线连接。
6.根据权利要求1所述的多核处理器核间互联的方法,其特征在于:所述的网络接口开关上连接有控制所述的芯片功能的控制器。
7.根据权利要求1所述的多核处理器核间互联的方法,其特征在于:所述的网络接口开关上连接有FPGA模块。
8.根据权利要求1所述的多核处理器核间互联的方法,其特征在于:所述的网络接口开关上设置有存储器接口。
全文摘要
本发明涉及一种多核处理器核间互联的方法,用于实现多核处理器的内核之间的芯片级的互联,多核处理器包括m块芯片,每块芯片上包括n个内核,其中m、n均为整数,该方法在芯片之间基于RapidIO物理层协议形成一m×n的mesh互联拓扑结构,互联拓扑结构包括与芯片一一对应连接的RapidIO核、与各个RapidIO核相连接的网络接口开关,芯片之间通过RapidIO核和网络接口开关形成串行总线。本发明的多核处理器核间互联的方法实现方便,易于芯片级的集成且使用效果较理想。
文档编号H04L12/861GK103106173SQ201310027650
公开日2013年5月15日 申请日期2013年1月25日 优先权日2013年1月25日
发明者汪健, 王少轩, 张磊, 赵忠惠, 陈亚宁, 王宁 申请人:中国兵器工业集团第二一四研究所苏州研发中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1