CN103380598A - 用于使用分级环网的低时延互连网络的方法和设备 - Google Patents
用于使用分级环网的低时延互连网络的方法和设备 Download PDFInfo
- Publication number
- CN103380598A CN103380598A CN2012800072564A CN201280007256A CN103380598A CN 103380598 A CN103380598 A CN 103380598A CN 2012800072564 A CN2012800072564 A CN 2012800072564A CN 201280007256 A CN201280007256 A CN 201280007256A CN 103380598 A CN103380598 A CN 103380598A
- Authority
- CN
- China
- Prior art keywords
- router
- network
- loop network
- overall
- local
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4637—Interconnected ring systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
一种包含芯片的设备,所述芯片包含;全局环形网络,所述全局环形网络包含配置在单向环形网络内的多个全局路由器;以及多个本地环形网络,所述本地环形网络直接连接到所述全局环形网络。一种方法,包含:将第一微片从第一路由器传输到第二路由器,其中,第一环形网络包含所述第一路由器和所述第二路由器;以及将第二微片从所述第一路由器传输到第三路由器,其中第二环形网络包含所述第一路由器和所述第三路由器,其中所述第一环形网络和所述第二环形网络彼此是分级关系,并且其中芯片包含所述第一环形网络和所述第二环形网络。
Description
相关申请案的交叉参考
本发明要求2011年12月31日由拉海特·桑加穆·拉马努加穆(RohitSunkam Ramanujam)等人递交的发明名称为“用于使用分级环网的低时延互连网络的方法和设备(Method and Apparatus for Low-Latency InterconnectionNetworks Using Hierarchical Rings)”的第13/341,949号美国非临时专利申请案的在先申请优先权,以及2011年2月2日由拉海特·桑加穆·拉马努加穆(Rohit Sunkam Ramanujam)等人递交的发明名称为“用于使用分级环网的低时延互连网络的方法和设备(Method and Apparatus for Low-LatencyInterconnection Networks Using Hierarchical Rings)”的第61/438,869号美国临时专利申请案的在先申请优先权,这些在先申请的内容以全文引入的方式并入本文本中。
关于由联邦政府资助的研发的声明
不适用。
缩微胶片附录参考
不适用。
背景技术
当晶体管和其它组件的大小变得更小且制造技术不断改进时,越来越多的功能性被安置在单个集成电路或芯片上。术语片上系统(system on achip;SoC)一般是指将计算机或其它复杂的电子系统的所有功能性集成到单个芯片上。SoC可包含一个或多个存储器、处理器或输入/输出端口,以上各者都被集成到单个芯片中。使SoC的各个组件进行通信的一种方法是使用片上网络(on-chip network,有时称作network-on-chip)。片上网络意图取代在复杂系统中的电子组件之间进行通信的传统方法,例如,传统总线和纵横制互连。
已针对片上网络考虑了多种拓扑,且由于可采用的路由器相对较简单,因此有时使用环形拓扑。例如,在单向环形网络中,每个路由器包含两个端口:一个输入端口,用以接收来自第一邻近路由器的数据;以及一个输出端口,用以将数据传输到第二邻近路由器。这些路由器占用的面积较小,消耗的功率较小,且与较高基数的片上路由器,例如,网状网络中的路由器相比,可在较高频率下进行计时。例如,路由器的面积和功率消耗可随端口数量呈二次曲线增加,因此,与单向环形网络中使用的相对简单的路由器相比,较高基数的路由器使用的功率大很多,占用的面积大很多。然而,环形网络不能很好地随路由器数目的增加而增大。这是因为平均包带宽和最坏情况的包带宽随着路由器的数量线性增加,而平分带宽保持为常量,减少了每个路由器的吞吐量。网络时延对许多要求超低时延通信且在严格控制功率预算的情况下进行操作的SoC应用来说可能至关重要。
发明内容
本文中揭示了一种包含芯片的设备,所述芯片包含:一个全局环形网络,所述全局环形网络包含配置在单向环形网络内的多个全局路由器;以及多个本地环形网络,所述本地环形网络直接连接到所述全局环形网络。
本文还揭示了一种方法,所述方法包含:将第一微片从第一路由器传输到第二路由器,其中,第一环形网络包含所述第一路由器和所述第二路由器;以及将第二微片从所述第一路由器传输到第三路由器,其中第二环形网络包含所述第一路由器和所述第三路由器,其中芯片包含所述第一环形网络和所述第二环形网络。
本文还揭示了一种包含芯片的设备,所述芯片包含:一个全局环形网络,所述全局环形网络包含配置在单向环形网络内的多个全局路由器;一个中间环形网络,所述中间环形网络包含配置在单向环形网络内的多个中间路由器,其中所述中间环形网络直接连接到所述全局环形网络上;以及多个本地环形网络,所述本地环形网络直接连接到所述中间环形网络上。
从结合附图和所附权利要求书进行的以下详细描述将更清楚地理解这些和其它特征。
附图说明
为了更全面地了解本发明,现参考以下结合附图和具体实施方式进行的简要描述,其中相同参考标号表示相同部分。
图1是片上系统的一个实施例的示意图。
图2是环形网络的一个实施例的示意图。
图3是分级环网的一个实施例的示意图。
图4是分级环网的另一个实施例的示意图。
图5为本地路由器的微片路由方法的一个实施例的流程图。
图6为中间路由器的微片路由方法的一个实施例的流程图。
图7为全局路由器的微片路由方法的一个实施例的流程图。
具体实施方式
首先应理解,尽管下文提供一个或多个实施例的说明性实施方案,但可使用任何数目的技术,不管是当前已知还是现有的,来实施所揭示的系统和/或方法。本发明决不应限于下文所说明的说明性实施方案、图式和技术,包含本文所说明并描述的示范性设计和实施方案,而是可在所附权利要求书的范围以及其均等物的完整范围内修改。
本文所揭示的是利用了环形网络的某些优势的拓扑,包括使用简单的双端口路由器,而同时相比环形网络实现更低的时延。所述拓扑可称为分级环形网络,并且可描述为包含多个通过全局环形网络进行互连的本地环形网络。全局环形网络可以包含全局路由器,并且本地环网可以包含本地路由器。相比传统环形网络,分级环形网络缩短了平均包时延和最坏情况的包时延,同时仍使用简单的两端路由器连接相邻站点,由此缩短了设计时间和路由时延,同时提高了系统性能。以下描述分级环形网络的各种实施例。
片上网络用于提供位于单芯片上的各种组件之间的通信能力。图1为具有片上网络112的片上系统(SoC)100的一个实施例的示意图。具体而言,SoC100包含片上网络112,所述片上网络包含多个路由器114,所述路由器也称为节点。片上网络112可以用于通过路由器114提供组件118、120、122和124之间的通信能力,其中片上网络112和组件118、120、122和124位于单芯片110上。尽管图1图示了四个组件118、120、122和124,但是应了解,片上网络112可以连接任意数量和/或类型的组件118、120、122和124。
路由器114可以为促进片上网络112内微片的路由的任意装置。如果组件118、120、122和124未将传入的包(例如,互联网协议(IP)包或以太网帧)分裂成称作流量控制数字的信息单元或微片,那么至少一些路由器114可以进行此操作。另外,如果组件118、120、122和124未将所述微片重新组装进传出的包中,那么至少一些路由器114可以进行此操作。此外,路由器114进行微片路由,其中所述路由器接收微片并决定在多个虚拟信道中的哪条信道上传输微片。路由器114可以用同样的方式进行包路由,其中所述路由器接收微片,并且决定在多个虚拟信道中的哪条信道上传输微片。作为所述路由的部分,路由器114可以对争取公用资源(例如,链路116上的虚拟信道)的两个微片或多个微片进行仲裁。为执行这些各种功能,每个路由器114可以包括一个处理器,所述处理器与一个存储器进行通信,例如只读存储器(ROM)、随机存取存储器(RAM)或其他任意类型的存储器。每个处理器可以是通用处理器或可以是专用处理器。或者,至少一些路由器114可实施成没有本地存储器,但是可以访问外部存储器,所述外部存储器位于SoC100的另一部分,且可能由其他路由器114共享。最后,至少一些路由器114可实施成没有本地存储器,并且无法访问存储器。
如上文所述,可以分割进入片上网络的包而形成微片,这些包例如是以太网包或IP包。进入片上网络的微片也可以称作为被注入片上网络。将图1作为示范性示例进行参考,例如组件122的组件可以将一个包传输给相应路由器114。路由器114可以用于接收所述包,并且将所述包分割成较小的信息单元。或者,一个组件,例如122,可以将一个包分割成较小的单元。每个信息单元都可以放置在一个微片中。微片可以有不同类型,例如头微片、体微片和尾微片。分割成较小单元的包可以分布在一个头微片、一个或多个体微片以及一个尾微片上,并且,这些微片经路由和/或在芯片110上经处理时保持指定的顺序(例如,头尾片在先,随后是体微片,随后是尾微片)。头微片可用以在片上网络上为包的相应一系列微片获取资源,尾微片可用以释放资源。头微片也可以包含所述包的报头(例如所述包的目的地址、源地址等),并且包含一些包有效负载,而体微片和尾微片通常不包含任何所述包的报头。在所述包的报头特别长的情况下,所述包的报头可包含在头微片和一些体微片中,但是不包含在其余的体微片或尾微片中。向微片指配信息的任何方案在本申请案的范围之内。此外,除微片以外或者替代微片而传输和接收包的片上网络也在本申请案的范围之内。为方便起见,本申请案的剩余部分处理微片,但是本申请案也适用于包或是网络所利用的任何其他信息单元。
链路116可以是在路由器114和/或组件118、120、122和124之间运载微片的任何装置。链路116通常为电链路,但可以是光链路或无线链路。至少一些链路116可以划分为多个虚拟信道,例如通过将可用链路116资源(例如时间和/或频率)分割成运载微片的多个间隙(例如,时隙和/或频隙)。尽管片上网络的链路可能通常是双向的,但是本文所示的方法和系统可适用于具有单向链路的环形网络。
组件118、120、122和124可以是处理所述微片的任意类型的装置。一般而言,组件118、120、122和124可以是执行某种比所述路由器所执行的功能更为专业化的功能的装置。例如,组件118、120、122和124可包括存储器、处理器、例如入口或出口的输入/输出(I/O)装置,或是任何其他电子组件。虽然路由器114可包含处理器和/或存储器,但组件118、120、122和124内的处理器和/或存储器的容量和/或吞吐量通常显著超过路由器114的容量和/或吞吐量,因此由路由器114执行组件118、120、122和124所执行的功能是不可能的,或者是不现实的。在组件118、120、122和124中的一个组件为入口的情况下,如果路由器114未将协议层移出传入的包(例如IP包或以太网帧)以及/或者将所述传入的包分裂成微片,那么可由所述一个组件进行此操作。在组件118、120、122和124中的一个组件为出口的情况下,如果路由器114未将微片重新组装进传出的包(例如IP包或以太网帧),以及/或者将协议层添加进所述传出的包,那么可由所述一个组件进行此操作。
如图1中所示,路由器114和链路116可布置在环形拓扑中,所述环形拓扑也可称作环形网络。环形网络可指特定的网络拓扑,在所述网络拓扑中,每个路由器连接至刚好两个其它路由器。环形网络通常可为圆形或环形。尽管图1图示为四个路由器114,但片上网络112可包含环形网络形式的任意数量的路由器114和链路116。由于片上网络在性能和复杂性上通常具有严格的约束,因而本文所揭示的方法和系统不是仅仅适用于片上网络,而是所述的方法和系统特别适用于片上网络。
图2所示为具有三十二个路由器的环形网络200的示意图,所述环形网络是片上网络的一部分。所述环形网络包含多个路由器,其中具有代表性的一个路由器标记为210。如图2所示,路由器210有一个输入端口和一个输出端口,分别与一条输入链路和一条输出链路相对应。其余的三十一个路由器具有相似的结构。如果环形网络200实施在片上网络中,那么多个路由器中的每个路由器与芯片上的一个组件配对,例如存储器或处理器,在这样的情况下,至少有一个额外输入端口和一个额外输出端口用以与所述相应组件进行通信。尽管图示为三十二个路由器,但是环形网络可以包含任意数量的路由器。
在具有三十二个路由器的单向环形网络中,最长时延是三十一个路由器跳数。即,微片必须移动最多三十一条链路到达目的地。一些微片会注入到距离其目的路由器较近的环形网络200,例如只需要一跳,而其他微片会注入到距离目的路由器相对较远的环形网络200,例如有三十一跳的距离。一般而言,具有三十二个路由器的单向环形网络的平均时延约为十五个路由器跳数。
需要在不显著提高复杂性的情况下显著缩短环形网络200的时延。图3所示为可以实现这些目标的一个拓扑,所述图为分级环形网络300的示意图。分级环形网络300包含本地路由器和全局路由器。图3中每个圆圈表示一个路由器,所述路由器可以是本地路由器,或者是全局路由器,但不能两者都是。片上网络可以包含分级环形网络300。
本地路由器可以是与传统环形网络,例如图2中的环形网络200,所用的路由器具有相似的结构和功能性的路由器。对于本地环网,本地路由器可以只包含一个输入端口和一个输出端口。同样,对于环网外的组件,本地路由器只有一个输入端口和一个输出端口。例如,如果分级环网300作为片上网络的一部分进行实施,则每个本地路由器可以耦合到芯片上的一个组件,例如存储器或处理器,在这样的情况下,只有一个输入端口和一个输出端口用以与相应的环网外的组件进行通信。本地路由器可通过其输入端口从另一个本地路由器、全局路由器或是环网外的组件上接收微片,并且可通过其输出端口将微片传输给另一个本地路由器、全局路由器或是环网外的组件。图3所示为本地路由器的实例,即路由器330、332、334和336。总体而言,图3中有三十二个本地路由器。
全局路由器可以是包含两个输入端口和两个输出端口的路由器。具体而言,全局路由器可以只有一个用以从另一个全局路由器接收微片的输入端口,一个用以从本地路由器接收微片的输入端口,一个用以将微片传输到另一个全局路由器的输出端口,以及一个用以将微片传输到一个本地路由器的输出端口。由于全局路由器可以不与环网外的组件耦合,例如芯片上的存储器或处理器,因此可以没有用以连接到环网外的组件的输入端口或输出端口。图3所示为全局路由器的实例,即路由器310、312、314、316、318、320、322和324。如图3所示,所述全局路由器可以在全局环网中互相连接。即,所述全局环网包含所有全局路由器——全局路由器310、312、314、316、318、320、322和324。全局路由器可以与本地路由器和中间路由器(将在下文论述)进行区分,其中全局路由器所归属的全局环网是网络中最内部的环网(例如,分级环形拓扑中没有级别更高的环网)。每个全局路由器可互相连接在另外两个全局路由器之间。例如,全局路由器312位于全局路由器310和314之间。可以采用全局路由器来路由本地路由器的群集间的业务,其中,一个群集可包含多个本地路由器。一个全局路由器与其相应本地路由器群集可形成一个环网,称为本地环网。此类本地环网的实例表示为350、352、354、356、358、360、362和364。分级环形网络通常可以包含一个全局环形网络,以及延伸出所述全局环形网络的多个本地环形网络。
相比于图2中的环形网络200,图3中的分级环形网络300包含三十二个本地路由器,所述路由器与环形网络200中的三十二个路由器数量相等,结构类似。然而,分级环形网络300相比于环形网络200增加了八个全局路由器。由全局路由器和分级拓扑所引入的复杂性有适度增加,这样换来的结果是,分级环形网络300中的时延相比于环形网络200显著缩短。最长时延从环形网络200中的三十一跳减少到分级环形网络300中的仅仅十五跳,缩短约52%。此外,平均时延从大约十五跳减少到大约九跳,缩短约40%。
尽管图3图示为所述三十二个路由器划分成八个群集,每个群集中有四个本地路由器,但是群集可以为任意数量,其中本地路由器和全局路由器可以为任意数量以及/或者任意配置,这也在本申请案的范围之内。例如,所述三十二个本地路由器可以改为划分为四个群集,每个群集中有八个本地路由器。在这种情况下,只需要四个全局路由器。需注意的是这样相对于八个全局路由器降低了复杂性,结果就是最长时延和平均时延相比分级环网300会增加。
此外,分级环网可以包含任意数量的本地路由器。例如,分级环网可以包含128个本地路由器。并且,这些路由器可以,例如,划分为八个群集,每个群集中有十六个本地路由器,在所述情况下,可以使用八个全局路由器将所述群集互相连接。每个群集也没有必要包含有同样数量的本地路由器。在上文128个本地路由器的实例中,例如,可以是:两个群集,每个群集中有八个本地路由器;以及七个群集,每个群集中有十六个本地路由器。
图3中所示的分级环网300可以视为一个两级分级环网,其中第一级包含一个全局环网,第二级包含多个本地环网。这些概念可以扩展为任意数量的级别,并且图4图示了具有三级环网的分级环网400的实例。分级环网400包含一个全局环网,所述全局环网可以视为第一级环网,包含全局路由器410、412、414和416。这个全局环网将四个中间环网470、472、474以及476互相连接,每个所述中间环网包含四个中间路由器,以及一个全局路由器。例如,中间环网470包含中间路由器420、422、424和426以及全局路由器412。所述四个中间环网470、472、474和476中的每个中间环网可视为第二级环网。本地环网有十六个,可视为第三级环网。在分级环网400中,每个所述中间环网将四个本地环网互相连接。图4中本地环网的实例表示为450。本地环网450包含在本地环网中互相连接的四个本地路由器430、432、434和436以及一个中间路由器422。图4中的分级环网400上有六十四个本地路由器、十六个中间路由器和四个全局路由器。以二十个额外的路由器(十六个中间路由器和四个全局路由器)为代价,分级环网400的最长时延和平均时延相比具有六十四个路由器的传统环形网络得到缩短。片上网络可以包含分级环网400。
通常而言,可以向分级环网引入中间环网,以将分级环网从两级环网扩展成三级或三级以上环网。中间环网包含中间路由器,并且中间路由器可以是具有两个输入端口和两个输出端口的路由器。具体而言,中间路由器可以只有一个用以从邻近的中间路由器接收微片的输入端口,一个用以从邻近的本地路由器接收微片的输入端口,一个根据具体情况用以向邻近的中间路由器或邻近的全局路由器传输微片的输出端口,以及一个用以向邻近的本地路由器传输微片的输出端口。由于中间路由器可以不与环网外的组件耦合,例如芯片上的存储器或处理器,因此可以没有用以连接到环网外的组件的输入端口或输出端口。图4图示了中间路由器的实例,即路由器420、422、424和426。如图4所示,所述中间路由器可以在中间环网内互相连接。
分级环网400只是包括六十四个本地路由器的分级环网的多种可能的配置中的一种。每一种配置都在本申请案的范围之内,并且,具有不同数量和/或配置的本地路由器、中间路由器和全局路由器的配置也在本申请案的范围之内。
因为路由器可以与多个环网互相连接,所以分级环网可以获得新的路由方法。例如,图4中的全局路由器412是两个环网的组成部分,这两个环网是包含全局路由器410、412、414和416的全局环网,以及包含中间路由器420、422、424和426以及全局路由器412的中间环网。图5、图6和图7分别是本地路由器、中间路由器和全局路由器的微片路由方法的实施例。本地路由器和全局路由器可以存在于具有两级或两级以上环网的分级网络中,并且中间路由器可以存在于具有三级或三级以上环网的分级网络中。图5、图6和图7的步骤可以分别实施在分级环形网络,例如图4中的分级环形网络400,中的本地路由器、中间路由器和全局路由器上。
图5为本地路由器的微片路由方法500的一个实施例的流程图。步骤510中,在一个本地路由器上接收微片,所述路由器必定位于一个本地环形网络上。可以从另一个本地路由器或片上网络上的环网外的组件上接收所述微片。接下来在确定块512内做出决定,即所述微片是否去往所述本地路由器,并将所述本地路由器作为其在分级网络中的最终目的地。如果是,那么方法前进到步骤516,其中将所述微片移出所述网络。通过提取所述微片中的信息,并将所述信息传输到片上网络中的环网外的组件上,可以将所述微片移出片上网络的网络。如果所述微片不是去往所述本地路由器,那么所述方法前进到步骤514,其中所述微片经传输到所述本地环形网络的下一个路由器。所述下一个路由器可以是一个全局路由器,一个中间路由器或另一个本地路由器,这取决于所述分级网络的配置以及所述本地路由器在所述网络中的位置。
图6是中间路由器的微片路由方法600的一个实施例的流程图,所述中间路由器必定位于中间环形网络中。步骤610中,在一个中间路由器上接收微片。可以从另一个中间路由器、一个全局路由器或一个本地路由器上接收所述微片,这取决于配置。接下来在确定块612内做出决定,即所述微片是否去往连接到所述中间路由器的本地环网。如果是,方法前进到步骤616,其中所述微片经传输到所述本地环网中的邻近的本地路由器上。如果所述微片不是去往连接到所述中间路由器的本地环网,那么所述方法前进到步骤614,其中所述微片经传输到所述中间环形网络的下一个路由器。所述下一个路由器可以是一个全局路由器,另一个中间路由器或一个本地路由器,这取决于所述分级网络的配置以及所述中间路由器在所述网络中的位置。
图7为全局路由器的微片路由方法700的一个实施例的流程图。步骤710中,在一个全局路由器上接收微片。可以从另一个全局路由器、一个中间路由器或一个本地路由器上接收所述微片,这取决于分级网络的配置以及所述全局路由器在所述网络中的位置。接下来在确定块712内做出决定,即所述微片是否去往由所述全局路由器提供服务的本地环网中的一个。以图4中的分级环网400为例,全局路由器412将决定微片是否去往四个本地环网中的任意一个,所述本地环网包括由全局路由器412提供服务的本地环网450。如果是,方法前进到步骤716,其中所述微片经传输到邻近的中间路由器。如果所述微片不是去往由所述全局路由器提供服务的本地环网中的一个,那么所述方法前进到步骤714,其中所述微片经传输到所述全局环形网络的下一个路由器。返回图4以其为例,全局路由器412将所述微片传输到全局路由器414。
图5、图6和图7的步骤可以用以在分级环形网络,例如图4中的分级环形网络400中,将微片从源路由到目的地。微片可以通过执行图5中的步骤进入网络以及离开网络,并且微片可以通过执行图5、图6和图7中的步骤导航所述网络。在两级网络中可以没有中间节点,例如图3中的分级环形网络300,在这样的情况下,可以不执行图6中用于中间路由器的步骤,并且图5和图7中的步骤将稍作修改,以考虑到以下事实:全局路由器可以直接连接到本地路由器,而非中间路由器,以及可以直接连接到其他全局路由器。
本文所揭示的分级环形网络的实施例是利用单向链路的实例。例如,图3和图4中的分级网络300和400的实施例分别仅利用单向链路。使用单向链路较为有利的一个原因是这满足了对于路由器的复杂性的限制。然而,分级环网也可以提高一些复杂性为代价而使用双向链路。随着时钟速度持续增加,以及晶体管尺寸持续减小,所提高的复杂性不会成为实施的阻碍。
揭示至少一个实施例,且所属领域的技术人员对所述实施例和/或所述实施例的特征的变化、组合和/或修改在本发明的范围内。因组合、整合和/或省略所述实施例的特征而产生的替代实施例也在本发明的范围内。在明确陈述数值范围或限制的情况下,应将此些表达范围或限制理解为包含属于明确陈述的范围或限制内的类似量值的重复范围或限制(例如,从约1到约10包含2、3、4等;大于0.10包含0.11、0.12、0.13等)。举例来说,每当揭示具有下限Rl和上限Ru的数值范围时,具体是揭示属于所述范围的任何数字。具体而言,特别揭示所述范围内的以下数字:R=Rl+k*(Ru-Rl),其中k是从1%到100%以1%增量递增的变量,即,k是1%、2%、3%、4%、5%、……50%、51%、52%、……95%、96%、97%、98%、99%或100%。此外,还特定揭示由如上文所定义的两个R数字定义的任何数值范围。相对于权利要求的任一元素使用术语“任选地”意味着所述元素是需要的,或者所述元素是不需要的,两种替代方案均在所述权利要求的范围内。使用例如包括、包含和具有等较广术语应被理解为提供对例如由……组成、基本上由……组成以及大体上由……组成等较窄术语的支持。因此,保护范围不受上文所述的描述限制,而是由所附权利要求书界定,所述范围包含权利要求书的标的物的所有等效物。每一和每条权利要求作为进一步揭示内容并入说明书中,且权利要求书是本发明的实施例。所述揭示内容中的参考的论述并不是承认其为现有技术,尤其是具有在本申请案的在先申请优先权日期之后的公开日期的任何参考。本发明中所引用的所有专利、专利申请案和公开案的揭示内容特此以引用的方式并入本文中,其提供补充本发明的示范性、程序性或其它细节。
虽然本发明中已提供若干实施例,但应理解,在不脱离本发明的精神或范围的情况下,所揭示的系统和方法可以许多其它具体形式来实施。本发明实例视作说明性而非限定性,且本发明并不限于本文本所给出的细节。例如,各种元件或部件可在另一系统中组合或合并,或者某些特征可忽略或不实施。
此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可与其他系统、模块、技术或方法进行组合或合并。展示或论述为彼此耦接或直接耦接或通信的其他项也可以电气方式、机械方式或其他方式通过一些接口、装置或中间部件来间接耦接或通信。改变、替代和更改的其它实例可由所属领域的技术人员确定,且可在不脱离本文所揭示的精神和范围的情况下作出。
Claims (20)
1.一种设备,其包含:
芯片,所述芯片包含:
全局环形网络,所述全局环形网络包含配置在单向环形网络内的多个全局路由器;以及
多个直接连接到所述全局环形网络的本地环形网络。
2.根据权利要求1所述的设备,其中每个所述本地环形网络包含单向环形网络,所述单向环形网络包含多个本地路由器,以及所述多个全局路由器中的一个全局路由器。
3.根据权利要求2所述的设备,其中所述多个全局路由器中的每个全局路由器仅与一个本地环形网络以一一对应的方式配对,并且其中所述本地环形网络全都不彼此直接连接。
4.根据权利要求3所述的设备,其中所述本地环形网络中的每个所述本地路由器针对其本地环形网络包含仅仅一个输入端口和仅仅一个输出端口,并且其中所述多个全局路由器中的每个全局路由器针对所述全局环形网络包含仅仅一个输入端口和仅仅一个输出端口,并且其中每个所述全局路由器针对其配对的本地环形网络包含仅仅一个输入端口和仅仅一个输出端口。
5.根据权利要求4所述的设备,其中所述多个全局路由器中的每个全局路由器用于接收微片,决定所述微片是否去往所述全局环形网络或所述本地环形网络中的其中一个,并且基于所述决定为所述微片选择一条路线。
6.根据权利要求5所述的设备,其中所述芯片进一步包含存储器和处理器,其中所述本地环形网络的其中一个本地环形网络中的第一本地路由器用于从所述存储器接收数据,并且其中所述本地环形网络的其中一个本地环形网络中的第二本地路由器用于从所述处理器接收数据。
7.一种方法,其包含:
将第一微片从第一路由器传输到第二路由器,其中第一环形网络包含所述第一路由器和所述第二路由器;以及
将第二微片从所述第一路由器传输到第三路由器,其中第二环形网络包含所述第一路由器和所述第三路由器,
其中所述第一环形网络和所述第二环形网络互相为分级关系,以及
其中芯片包含所述第一环形网络和所述第二环形网络。
8.根据权利要求7所述的方法,其中所述第一路由器直接连接到所述第二路由器,并且其中所述第一路由器直接连接到所述第三路由器。
9.根据权利要求8所述的方法,其中传输所述第一微片是对决定所述第一微片不是去往所述第二环形网络做出响应。
10.根据权利要求9所述的方法,其中所述第一路由器是全局路由器,其中所述第二路由器是全局路由器,并且其中所述第三路由器是本地路由器。
11.根据权利要求10所述的方法,其进一步包含从所述第一环形网络中的第四路由器接收所述第一微片,其中所述第一环形网络是第一全局环形网络,并且所述第二环形网络是本地环形网络。
12.根据权利要求11所述的方法,其中所述第四路由器直接连接到第二全局环形网络。
13.根据权利要求12所述的方法,其中所述芯片进一步包含存储器和处理器,并且其中所述方法进一步包含:
由所述第三路由器从所述存储器接收数据;以及
由所述第二环形网络中的本地路由器从所述处理器接收数据。
14.一种设备,其包含:
芯片,所述芯片包含:
全局环形网络,所述全局环形网络包含配置在单向环形网络内的多个全局路由器;
中间环形网络,所述中间环形网络包含配置在单向环形网络内的多个中间路由器,其中所述中间环形网络直接连接到所述全局环形网络;以及
多个本地环形网络,所述多个本地环形网络直接连接到所述中间环形网络。
15.根据权利要求14所述的设备,其中每个所述本地环形网络包含单向环形网络,所述单向环形网络包含多个本地路由器和所述中间路由器中的仅仅一个中间路由器,并且其中所述全局环形网络、所述中间环形网络和所述本地环形网络互相为分级关系。
16.根据权利要求15所述的设备,其中每个所述本地路由器针对其本地环形网络包含仅仅一个输入端口和仅仅一个输出端口,其中所述全局路由器中的一个全局路由器针对所述全局环形网络包含仅仅一个输入端口和仅仅一个输出端口,并且其中所述全局路由器中的所述一个全局路由器针对所述中间环形网络包含仅仅一个输入端口和仅仅一个输出端口。
17.根据权利要求16所述的设备,其中每个中间路由器仅与一个本地环形网络以一一对应的方式配对,并且其中所述本地环形网络全都不彼此直接连接。
18.根据权利要求17所述的设备,其中每个所述中间路由器针对所述中间环形网络包含仅仅一个输入端口和仅仅一个输出端口,并且其中每个所述中间路由器针对其相应的本地环网包含仅仅一个输入端口和一个输出端口。
19.根据权利要求18所述的设备,其中每个所述中间路由器用于接收微片,决定所述微片是否去往所述本地环形网络中的一个或所述中间环形网络,并且基于所述决定为所述微片选择一条路线。
20.根据权利要求19所述的设备,其中所述芯片进一步包含一个存储器和一个处理器,其中所述本地环形网络的其中一个本地环形网络中的第一本地路由器用于从所述存储器接收数据,并且其中所述本地环形网络的其中一个本地环形网络中的第二本地路由器用于从所述处理器接收数据。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161438869P | 2011-02-02 | 2011-02-02 | |
US61/438,869 | 2011-02-02 | ||
US13/341,949 | 2011-12-31 | ||
US13/341,949 US20120195321A1 (en) | 2011-02-02 | 2011-12-31 | Method and Apparatus for Low-Latency Interconnection Networks Using Hierarchical Rings |
PCT/CN2012/070848 WO2012103814A1 (en) | 2011-02-02 | 2012-02-02 | Method and apparatus for low-latency interconnection networks using hierarchical rings |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103380598A true CN103380598A (zh) | 2013-10-30 |
Family
ID=46577327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012800072564A Pending CN103380598A (zh) | 2011-02-02 | 2012-02-02 | 用于使用分级环网的低时延互连网络的方法和设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20120195321A1 (zh) |
EP (1) | EP2663924A4 (zh) |
CN (1) | CN103380598A (zh) |
WO (1) | WO2012103814A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018171299A1 (zh) * | 2017-03-23 | 2018-09-27 | 华为技术有限公司 | 片上网络及对冲挂死解除方法 |
CN108880754A (zh) * | 2018-06-25 | 2018-11-23 | 西安电子科技大学 | 基于分级冗余机制的低时延信令、数据无线传输方法 |
CN111475250A (zh) * | 2019-01-24 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种云环境下的网络优化方法和装置 |
CN111935035A (zh) * | 2015-05-22 | 2020-11-13 | 格雷研究有限公司 | 用于现场可编程门阵列的定向二维路由器和互连网络、该路由器和网络的其他电路和应用 |
US11223573B2 (en) | 2017-04-04 | 2022-01-11 | Gray Research LLC | Shortcut routing on segmented directional torus interconnection networks |
US11677662B2 (en) | 2015-05-22 | 2023-06-13 | Gray Research LLC | FPGA-efficient directional two-dimensional router |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9152595B2 (en) * | 2012-10-18 | 2015-10-06 | Qualcomm Incorporated | Processor-based system hybrid ring bus interconnects, and related devices, processor-based systems, and methods |
US9774498B2 (en) * | 2012-12-21 | 2017-09-26 | Netspeed Systems | Hierarchical asymmetric mesh with virtual routers |
US20140201326A1 (en) | 2013-01-16 | 2014-07-17 | Marvell World Trade Ltd. | Interconnected ring network in a multi-processor system |
US9471726B2 (en) | 2013-07-25 | 2016-10-18 | Netspeed Systems | System level simulation in network on chip architecture |
US9699079B2 (en) | 2013-12-30 | 2017-07-04 | Netspeed Systems | Streaming bridge design with host interfaces and network on chip (NoC) layers |
US10110700B2 (en) | 2014-03-31 | 2018-10-23 | Oracle International Corporation | Multiple on-die communication networks |
US9571341B1 (en) | 2014-10-01 | 2017-02-14 | Netspeed Systems | Clock gating for system-on-chip elements |
KR20160086133A (ko) * | 2015-01-09 | 2016-07-19 | 삼성전자주식회사 | 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템 |
US9660942B2 (en) | 2015-02-03 | 2017-05-23 | Netspeed Systems | Automatic buffer sizing for optimal network-on-chip design |
US10348563B2 (en) | 2015-02-18 | 2019-07-09 | Netspeed Systems, Inc. | System-on-chip (SoC) optimization through transformation and generation of a network-on-chip (NoC) topology |
US10455018B2 (en) * | 2015-04-21 | 2019-10-22 | Microsoft Technology Licensing, Llc | Distributed processing of shared content |
US9864728B2 (en) | 2015-05-29 | 2018-01-09 | Netspeed Systems, Inc. | Automatic generation of physically aware aggregation/distribution networks |
US9825809B2 (en) | 2015-05-29 | 2017-11-21 | Netspeed Systems | Dynamically configuring store-and-forward channels and cut-through channels in a network-on-chip |
US10218580B2 (en) | 2015-06-18 | 2019-02-26 | Netspeed Systems | Generating physically aware network-on-chip design from a physical system-on-chip specification |
US10452124B2 (en) | 2016-09-12 | 2019-10-22 | Netspeed Systems, Inc. | Systems and methods for facilitating low power on a network-on-chip |
US20180159786A1 (en) | 2016-12-02 | 2018-06-07 | Netspeed Systems, Inc. | Interface virtualization and fast path for network on chip |
US10313269B2 (en) | 2016-12-26 | 2019-06-04 | Netspeed Systems, Inc. | System and method for network on chip construction through machine learning |
US10063496B2 (en) | 2017-01-10 | 2018-08-28 | Netspeed Systems Inc. | Buffer sizing of a NoC through machine learning |
US10084725B2 (en) | 2017-01-11 | 2018-09-25 | Netspeed Systems, Inc. | Extracting features from a NoC for machine learning construction |
US10469337B2 (en) | 2017-02-01 | 2019-11-05 | Netspeed Systems, Inc. | Cost management against requirements for the generation of a NoC |
US10298485B2 (en) | 2017-02-06 | 2019-05-21 | Netspeed Systems, Inc. | Systems and methods for NoC construction |
US10896476B2 (en) | 2018-02-22 | 2021-01-19 | Netspeed Systems, Inc. | Repository of integration description of hardware intellectual property for NoC construction and SoC integration |
US10983910B2 (en) | 2018-02-22 | 2021-04-20 | Netspeed Systems, Inc. | Bandwidth weighting mechanism based network-on-chip (NoC) configuration |
US10547514B2 (en) | 2018-02-22 | 2020-01-28 | Netspeed Systems, Inc. | Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation |
US11144457B2 (en) | 2018-02-22 | 2021-10-12 | Netspeed Systems, Inc. | Enhanced page locality in network-on-chip (NoC) architectures |
US11176302B2 (en) | 2018-02-23 | 2021-11-16 | Netspeed Systems, Inc. | System on chip (SoC) builder |
US11023377B2 (en) | 2018-02-23 | 2021-06-01 | Netspeed Systems, Inc. | Application mapping on hardened network-on-chip (NoC) of field-programmable gate array (FPGA) |
US10691632B1 (en) * | 2019-03-14 | 2020-06-23 | DeGirum Corporation | Permutated ring network interconnected computing architecture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1610500A1 (en) * | 2004-06-24 | 2005-12-28 | STMicroelectronics S.A. | On chip packet-switched communication system |
CN101420380A (zh) * | 2008-11-28 | 2009-04-29 | 西安邮电学院 | 一种双层双环型片上网络拓扑结构 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5444701A (en) * | 1992-10-29 | 1995-08-22 | International Business Machines Corporation | Method of packet routing in torus networks with two buffers per edge |
EP1324543A1 (en) * | 2001-12-26 | 2003-07-02 | Alcatel | Method to protect RPR networks of extended topology, in particular RPR ring to ring and meshed backbone networks |
US6965560B2 (en) * | 2002-07-10 | 2005-11-15 | I/O Controls Corporation | Multi-tier, hierarchical fiber optic control network |
US7965725B2 (en) * | 2005-05-31 | 2011-06-21 | Stmicroelectronics, Inc. | Hyper-ring-on-chip (HyRoC) architecture |
KR100730279B1 (ko) * | 2005-12-16 | 2007-06-19 | 삼성전자주식회사 | 스타 토로스 토폴로지를 이용하여 칩 상의 디바이스를연결한 컴퓨터 칩 |
US8531943B2 (en) * | 2008-10-29 | 2013-09-10 | Adapteva Incorporated | Mesh network |
US9037688B2 (en) * | 2011-12-27 | 2015-05-19 | Intel Mobile Communications GmbH | System having trace resources |
-
2011
- 2011-12-31 US US13/341,949 patent/US20120195321A1/en not_active Abandoned
-
2012
- 2012-02-02 CN CN2012800072564A patent/CN103380598A/zh active Pending
- 2012-02-02 WO PCT/CN2012/070848 patent/WO2012103814A1/en active Application Filing
- 2012-02-02 EP EP12742208.7A patent/EP2663924A4/en not_active Ceased
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1610500A1 (en) * | 2004-06-24 | 2005-12-28 | STMicroelectronics S.A. | On chip packet-switched communication system |
CN101420380A (zh) * | 2008-11-28 | 2009-04-29 | 西安邮电学院 | 一种双层双环型片上网络拓扑结构 |
Non-Patent Citations (6)
Title |
---|
D.N.JAYASIMHA,ET AL.: "On-Chip Interconnection Networks: Why They are Different and How to Compare Them", 《INTEL CORPORATION》 * |
D.N.JAYASIMHA,ET AL.: "On-Chip Interconnection Networks: Why They are Different and How to Compare Them", 《INTEL CORPORATION》, 31 December 2006 (2006-12-31) * |
GOVINDAN RAVINDRAN.ET AL.: "On Topology and Bisection Bandwidth of Hierarchical-ring Networks for Shared-memoryMultiprocessors", 《HIGH PERFORMANCE COMPUTING》 * |
MOHAMMAD AL-ROUSAN.ET AL.: "The Two-Processor Reliability of Hierarchical Large-scale Ring-Based Networks", 《PROCEEDINGS OF THE 29TH ANNUAL HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES - 1996》 * |
V. CARL HAMACHER.ET AL.: "Hierarchical Ring Network Configuration and Performance Modeling", 《IEEE TRANSACTIONS ON COMPUTERS》 * |
V. CARL HAMACHER.ET AL.: "Performance and Configuration of Hierarchical Ring Networks for Multiprocessors", 《PROCEEDINGS OF THE 1997 INTERNATIONAL CONFERENCE》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111935035A (zh) * | 2015-05-22 | 2020-11-13 | 格雷研究有限公司 | 用于现场可编程门阵列的定向二维路由器和互连网络、该路由器和网络的其他电路和应用 |
CN111935035B (zh) * | 2015-05-22 | 2022-11-15 | 格雷研究有限公司 | 片上网络系统 |
US11677662B2 (en) | 2015-05-22 | 2023-06-13 | Gray Research LLC | FPGA-efficient directional two-dimensional router |
WO2018171299A1 (zh) * | 2017-03-23 | 2018-09-27 | 华为技术有限公司 | 片上网络及对冲挂死解除方法 |
CN108632172A (zh) * | 2017-03-23 | 2018-10-09 | 华为技术有限公司 | 片上网络及对冲挂死解除方法 |
CN108632172B (zh) * | 2017-03-23 | 2020-08-25 | 华为技术有限公司 | 片上网络及对冲挂死解除方法 |
US11223573B2 (en) | 2017-04-04 | 2022-01-11 | Gray Research LLC | Shortcut routing on segmented directional torus interconnection networks |
US11973697B2 (en) | 2017-04-04 | 2024-04-30 | Gray Research LLC | Composing diverse remote cores and FPGAs |
CN108880754A (zh) * | 2018-06-25 | 2018-11-23 | 西安电子科技大学 | 基于分级冗余机制的低时延信令、数据无线传输方法 |
CN108880754B (zh) * | 2018-06-25 | 2020-04-10 | 西安电子科技大学 | 基于分级冗余机制的低时延信令、数据无线传输方法 |
CN111475250A (zh) * | 2019-01-24 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种云环境下的网络优化方法和装置 |
CN111475250B (zh) * | 2019-01-24 | 2023-05-26 | 阿里巴巴集团控股有限公司 | 一种云环境下的网络优化方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2663924A1 (en) | 2013-11-20 |
EP2663924A4 (en) | 2013-12-04 |
WO2012103814A9 (en) | 2012-11-22 |
WO2012103814A1 (en) | 2012-08-09 |
US20120195321A1 (en) | 2012-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103380598A (zh) | 用于使用分级环网的低时延互连网络的方法和设备 | |
CN103380597A (zh) | 用于在片上环形网络中减少时延的非对称环形网拓扑 | |
US11750531B2 (en) | FPGA-based virtual fabric for data center computing | |
CN101223745A (zh) | 用于通信资源分配的电子设备和方法 | |
US20100161793A1 (en) | Method for composing on-chip network topology | |
US20080310458A1 (en) | Electronic Device and Method of Communication Resource Allocation | |
US7684328B2 (en) | Data transfer network | |
US9164944B2 (en) | Semiconductor system, relay apparatus, and chip circuit | |
Lit et al. | Comparative performance evaluation of routing algorithm and topology size for wireless network-on-chip | |
US9042397B2 (en) | Method and apparatus for achieving fairness in interconnect using age-based arbitration and timestamping | |
CN106911521B (zh) | 基于多环的光片上网络拓扑结构设计方法 | |
CN101227297B (zh) | 用于设计片上网络的一种服务质量保证方法 | |
US20140032731A1 (en) | Recursive, All-to-All Network Topologies | |
CN103546397A (zh) | 支持乱序的自路由Omega网络结构 | |
Wettin et al. | Design space exploration for reliable mm-wave wireless NoC architectures | |
US20100158052A1 (en) | Electronic device and method for synchronizing a communication | |
Ansari et al. | A Journey from Computer Networks to Networks-on-Chip | |
Ghosal et al. | A novel routing algorithm for on-chip communication in NoC on diametrical 2D mesh interconnection architecture | |
AU2002368461A1 (en) | Method and device for designing a data network | |
Sethi et al. | Bio-inspired NoC fault tolerant techniques using guaranteed throughput and best effort services | |
Priyadharshini et al. | Cognitive radio based vehicular sensor network using optimal tree routing protocol | |
US20140133483A1 (en) | Distributed Switch Architecture Using Permutation Switching | |
Mnejja et al. | Implementing on-chip wireless communication in multi-stage interconnection NoCs | |
Lee et al. | BusMesh NoC: A novel NoC architecture comprised of bus-based connection and global mesh routers | |
CN103270490A (zh) | 把外部网络协处理器连接到网络处理器分组解析器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131030 |
|
RJ01 | Rejection of invention patent application after publication |