CN115514704B - 一种通信芯片及数据交换装置、交换设备 - Google Patents
一种通信芯片及数据交换装置、交换设备 Download PDFInfo
- Publication number
- CN115514704B CN115514704B CN202210843102.4A CN202210843102A CN115514704B CN 115514704 B CN115514704 B CN 115514704B CN 202210843102 A CN202210843102 A CN 202210843102A CN 115514704 B CN115514704 B CN 115514704B
- Authority
- CN
- China
- Prior art keywords
- die
- message
- grain
- network processing
- switching
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 100
- 238000012545 processing Methods 0.000 claims abstract description 165
- 239000013078 crystal Substances 0.000 claims abstract description 59
- 238000000034 method Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 description 41
- 238000010586 diagram Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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/60—Router architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种通信芯片及数据交换装置,涉及通信技术领域,用于降低数据交换网络的功耗、成本和体积。该通信芯片包括:多个交换晶粒、以及与多个交换晶粒直接或间接连接的多个网络处理晶粒;任一网络处理晶粒,用于:通过外部端口接收第一报文,并通过内部端口发送第二报文,第二报文包括第一报文和用于指示第一报文的目的网络处理晶粒的目的信息;任一交换晶粒,用于:接收第二报文,并根据目的信息确定不满足预设条件时,向相连的交换晶粒发送第二报文,或者在确定满足所述预设条件时,向相连的第一网络处理晶粒发送第二报文;第一网络处理晶粒,用于:接收第二报文,并向外部发送第二报文,或者将第二报文发送给其他网络处理晶粒。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种通信芯片及数据交换装置、交换设备。
背景技术
路由器(router)是连接两个或多个网络的硬件设备,在网络间起网关的作用,可以读取数据包中的目的地址并决定如何传送的一种网络设备。路由器可以识别不同的网络协议,并对不同网络协议的数据包的目的地址进行转换,再根据相应的路由算法把数据包按最佳路线传送到指定位置。
目前,如图1所示,路由器包括多个网络处理(network processing,NP)芯片(chip)和多个交换(switching,SW)芯片,该多个NP芯片分别设置在多个线卡(line card,LC)上,该多个交换芯片设置在背板(backplane,BP),该背板上还设置有板级串行(serdes)接口,该多个线卡通过该板级串行接口与该背板上的多个交换芯片连接。其中,该NP芯片可用于接收来自外部网络的数据并将该数据转发给交换芯片,或者接收交换芯片输出的数据并将该数据转发给外部网络。该交换芯片用于接收NP芯片转发的数据,并进行数据交换后将该数据发送给相应的NP芯片。
但是,通过板级串行接口连接上述多个线卡与背板上的多个交换芯片的方式,会造成功耗大、成本高、以及路由器的体积大的问题。
发明内容
本申请提供一种通信芯片及数据交换装置,用于降低数据交换网络的功耗、成本和体积。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种通信芯片,该通信芯片包括:多个交换晶粒和多个网络处理晶粒,该多个交换晶粒中的任一交换晶粒与其它交换晶粒相连以实现分布式交换,该多个网络处理晶粒中的任一网络处理晶粒包括外部端口和内部端口,该内部端口与其他网络处理晶粒相连、或者与其它网络处理晶粒和该多个交换晶粒中的一个交换晶粒均相连。其中,该多个网络处理晶粒中的任一网络处理晶粒,用于:通过该外部端口接收来自该通信芯片外部的第一报文,获取第一报文的目的信息,通过该内部端口发送第二报文,第二报文包括第一报文和该目的信息,该目的信息用于指示第一报文的目的网络处理晶粒,比如,该目的信息为目的地址或目的网络处理晶粒的标识。该多个交换晶粒中的任一交换晶粒,用于:接收第二报文,并根据该目的信息确定不满足预设条件时,向相连的交换晶粒发送第二报文,或者在确定满足该预设条件时,向相连的第一网络处理晶粒发送第二报文。第一网络处理晶粒,用于:接收来自相连的交换晶粒的第二报文,并通过该外部端口向外部发送第二报文,或者,通过该内部端口将第二报文发送给其他网络处理晶粒;其中,该预设条件包括:是该多个交换晶粒中与该目的网络处理晶粒相连的交换晶粒、或者是通过其它网络处理晶粒与该目的网络处理晶粒相连且连接的网络处理晶粒的数量最少的交换晶粒。
上述技术方案中,该通信芯片包括多个交换晶粒和多个网络处理晶粒,该多个交换晶粒和该多个网络处理晶粒在该通信芯片内可实现连接,且该多个网络处理晶粒可用于接收外部的报文或者向外部发送报文,该多个交换晶粒可用于实现报文的分布式交换,从而实现在通信芯片内部的数据交换,与现有技术中通过多个网络处理芯片和多个交换芯片组成的数据交换网络相比,能够大大降低功耗和体积,同时减小采用该通信芯片的设备的散热成本和部署空间,以满足当前对于绿色低碳和可持续发展的需求。
在第一方面的一种可能的实现方式中,该多个交换晶粒包括第一交换晶粒和第二交换晶粒,第二交换晶粒与第一交换晶粒相连,第一交换晶粒与源网络处理晶粒最近,第二交换晶粒与目的网络处理晶粒最近;第一交换晶粒,用于:接收第二报文,并根据该目的信息确定第一交换晶粒不满足该预设条件时,向第二交换晶粒发送第二报文;第二交换晶粒,用于:接收来自第一交换晶粒的第二报文,并根据该目的信息确定第二交换晶粒满足该预设条件时,向第一网络处理晶粒发送第二报文。上述可能的实现方式中,当与报文的源网络处理晶粒最近的第一交换晶粒、和与报文的目的网络处理晶粒最近的第二交换晶粒不相连时,第一交换晶粒在接收到该报文后,可以发送给第二交换晶粒,以使第二交换晶粒将报文交换至目的网络处理晶粒。
在第一方面的一种可能的实现方式中,该多个交换晶粒还包括第三交换晶粒,第三交换晶粒与第二交换晶粒相连,即第一交换晶粒、第二交换晶粒和第三交换晶粒依次相连,第一交换晶粒与源网络处理晶粒最近,第三交换晶粒与目的网络处理晶粒最近;第二交换晶粒,还用于:当确定第二交换晶粒不满足该预设条件时,向第三交换晶粒发送第二报文;第三交换晶粒用于:接收来自第二交换晶粒的第二报文,并根据该目的信息确定第三交换晶粒满足该预设条件时,向第一网络处理晶粒发送第二报文。上述可能的实现方式中,当与报文的源网络处理晶粒最近的第一交换晶粒、和与报文的目的网络处理晶粒最近的第三交换晶粒不相连,且这两个交换晶粒均与第一交换晶粒相连时,第一交换晶粒在接收到该报文后可以发送给第二交换晶粒,第二交换晶粒向第三交换晶粒发送报文,以使第三交换晶粒将报文交换至目的网络处理晶粒。
在第一方面的一种可能的实现方式中,该多个交换晶粒中存在至少两个第二交换晶粒与第一交换晶粒和第三交换晶粒均相连,即第一交换晶粒与源网络处理晶粒最近,第三交换晶粒与目的网络处理晶粒最近,且第一交换晶粒与第三交换晶粒之间存在多个传输路径,每个传输路径对应一个第二交换晶粒。第一交换晶粒,具体用于:在向第二交换晶粒发送第二报文时,向该至少两个第二交换晶粒中的一个发送第二报文。上述可能的实现方式中,当第一交换晶粒与第三交换晶粒之间存在多个传输路径时,第一交换晶粒能够灵活地选择其中的一个第二交换晶粒发送第二报文,从而能够避免因为某些传输路径拥塞而导致报文的传输时延较长的问题。
在第一方面的一种可能的实现方式中,该多个交换晶粒中的任一交换晶粒,还用于:在向第一网络处理晶粒发送第二报文时,向第一网络处理晶粒发送路径指示信息,该路径指示信息用于指示第二报文的发送路径,以控制第二报文在第一网络处理晶粒中的传输;第一网络处理晶粒还用于:接收该路径指示信息,并根据该路径指示信息通过该外部端口向外部发送第二报文,或者,根据该路径指示信息通过该内部端口将第二报文发送给其他网络处理晶粒。上述可能的实现方式中,第一网络处理晶粒在传输第二报文时,该交换晶粒可通过控制第二报文在第一网络处理晶粒中的发送路径,以控制第一网络处理晶粒将该报文转发给目的网络处理晶粒,避免报文的误交换。
在第一方面的一种可能的实现方式中,第一网络处理晶粒包括第一选择开关,第一选择开关包括连接端、第一选择端和第二选择端,第一选择开关的连接端与该多个交换晶粒中的一个相连,第一选择开关的第一选择端与该外部端口相连,第一选择开关的第二选择端与其它网络处理晶粒相连;第一网络处理晶粒还用于:在根据该路径指示信息通过该外部端口向外部发送第二报文时,导通第一选择开关的连接端与第一选择开关的第一选择端;或者,第一网络处理晶粒,还用于:在根据该路径指示信息通过该内部端口将第二报文发送给其他网络处理晶粒时,导通第一选择开关的连接端与第一选择开关的第二选择端。上述可能的实现方式中,该交换晶粒通过控制第一网络处理晶粒中第一选择开关的不同选择端,以控制第一选择开关将该报文转发给该目的网络处理晶粒,以避免报文的误交换。
在第一方面的一种可能的实现方式中,第一选择开关包括至少两个第二选择端,该至少两个第二选择端分别与第一网络处理晶粒的至少两个该内部端口相连,该至少两个内部端口分别与该多个网络处理晶粒中的至少两个相连;第一网络处理晶粒,还用于:在根据该路径指示信息通过该内部端口将第二报文发送给其他网络处理晶粒时,导通第一选择开关的连接端与该路径指示信息指示的发送路径对应的第二选择端。上述可能的实现方式中,交换晶粒通过控制第一网络处理晶粒中第一选择开关的不同选择端,以选择对应的传输路径将该报文转发给目的网络处理晶粒。
在第一方面的一种可能的实现方式中,该目的网络处理晶粒与该多个交换晶粒中的任一交换晶粒不相连,该多个网络处理晶粒中存在至少两个第一网络处理晶粒均与第二交换晶粒和该目的网络处理晶粒相连;第二交换晶粒,还用于:在向第一网络处理晶粒发送第二报文时,向该至少两个第一网络处理晶粒中的一个发送第二报文。上述可能的实现方式中,当第二交换晶粒与目的网络处理晶粒之间存在多条传输路径时,第二交换晶粒能够灵活地选择用于转发第二报文的第一网络处理晶粒,从而能够避免因为某些传输路径拥塞而导致报文的传输时延较长的问题。
在第一方面的一种可能的实现方式中,该多个网络处理晶粒中存在第二网络处理晶粒与该多个交换晶粒中的任一个均不相连;第二网络处理晶粒,具体用于:在通过该外部端口接收第一报文后并通过该内部端口发送第二报文时,通过该内部端口向第三网络处理晶粒发送第二报文,第三网络处理晶粒与该多个交换晶粒中的一个交换晶粒和第二网络处理晶粒均相连;第三网络处理晶粒,用于:接收第二报文,并向该交换晶粒转发第二报文。上述可能的实现方式中,当第二网络处理晶粒与任一交换晶粒不相连时,可以通过第三网络处理晶粒向某一交换晶粒转发第二报文,从而与现有技术相比,无需在背板上设置相应的走线,能够缩短传输路径,从而减小传输该报文和该目的信息的时延和功耗。
在第一方面的一种可能的实现方式中,该多个网络处理晶粒中存在至少两个第三网络处理晶粒;第二网络处理晶粒,具体用于:在通过该内部端口向第三网络处理晶粒发送第二报文时,向该至少两个第三网络处理晶粒中的一个发送第二报文。上述可能的实现方式中,当第二交换晶粒与某一交换晶粒之间存在多条传输路径时,第二交换晶粒能够灵活地选择用于转发第二报文的第三网络处理晶粒,从而能够避免因为某些传输路径拥塞而导致报文的传输时延较长的问题。
在第一方面的一种可能的实现方式中,第二网络处理晶粒还包括第二选择开关,第二选择开关包括连接端和至少两个选择端,第二选择开关的连接端与该外部端口相连,第二选择开关的该至少两个选择端分别与该至少两个第三网络处理晶粒相连;第二网络处理晶粒,还具体用于:导通第二选择开关的连接端与该至少两个选择端中的一个选择端,以从该至少两个第三网络处理晶粒中选择一个发送第二报文。上述可能的实现方式中,第二网络处理晶粒在进行第二报文转发时,可以通过选通第二选择开关的不同选择端,以灵活地选择不同的第三网络处理晶粒向某一交换晶粒转发该报文,从而能够避免因为某些传输路径拥塞而导致报文的传输时延较长的问题。
在第一方面的一种可能的实现方式中,第二网络处理晶粒,还用于:在该目的网络处理晶粒为第二网络处理晶粒时,通过该外部端口发送第一报文。上述可能的实现方式中,第二网络处理晶粒在通过外部端口接收到第一报文时,若第二网络处理晶粒为第一报文的目的网络处理晶粒,则通过该外部端口发送第一报文,从而能够减小第一报文的传输时延。
在第一方面的一种可能的实现方式中,该通信芯片包括多个分组,该多个分组中的任一分组包括该多个网络处理晶粒中的至少一个网络处理晶粒,该多个分组中任意两个分组中的网络处理晶粒不相连;其中,同一分组中的至少一个网络处理晶粒通过该内部端口连接同一该多个交换晶粒中的一个交换晶粒,或通过该内部端口连接同一分组中的相邻网络处理晶粒,也即是,当该多个网络处理晶粒属于多个分组时,该多个分组中的网络处理晶粒不会跨分组相连。上述可能的实现方式中,在不影响该通信芯片的性能的前提下,能够减少该通信芯片中的布线,还可以简化该通信芯片中的传输路由、提高处理效率,进而降低该通信芯片的功耗、体积和成本。
在第一方面的一种可能的实现方式中,该多个交换晶粒和该多个网络处理晶粒位于同一晶元中,也即是,该通信芯片中可以只存在一个晶元,该晶元中包括该多个交换晶粒和该多个网络处理晶粒。上述可能的实现方式,能够提高该多个交换晶粒和该多个网络处理晶粒集成度,从而进一步减小该通信芯片的体积和功耗。
在第一方面的一种可能的实现方式中,该通信芯片还包括:多个存储晶粒,该多个网络处理晶粒中的任意一个网络处理晶粒与该多个存储晶粒中的一个或者多个存储晶粒连接。上述可能的实现方式中,一个网络处理晶粒与一个或者多个存储晶粒耦合,从而在数据交换过程中,该存储晶粒可用于缓存相应的交换报文,从而在一定程度上能够提高该通信芯片的数据交换能力。
第二方面,提供一种数据交换装置,该数据交换装置包括背板、以及设置在该背板上的至少一个通信芯片,该通信芯片为上述第一方面或第一方面的任一种可能的实现方式所提供的通信芯片。
在第二方面的一种可能的实现方式中,该数据交换装置包括交换盒子或交换框。
在第二方面的一种可能的实现方式中,当该数据交换装置包括交换框时,该交换框包括与该至少一个通信芯片对应的至少一个线卡,该至少一个通信芯片分别通过该至少一个线卡设置在该背板上。
第三方面,提供一种交换设备,该交换设备包括上述第二方面或第二方面的任一种可能的实现方式所提供的数据交换装置。
可以理解地,上述提供的任一种数据交换装置和交换设备,其所能达到的有益效果可对应参考上文所提供的通信芯片中的有益效果,此处不再赘述。
附图说明
图1为现有技术提供的一种路由器的结构示意图;
图2为本申请实施例提供的一种数据交换网络的应用示意图;
图3为本申请实施例提供的一种数据交换网络的结构示意图;
图4为本申请实施例提供的一种通信芯片的结构示意图;
图5为本申请实施例提供的另一种通信芯片的结构示意图;
图6为本申请实施例提供的又一种通信芯片的结构示意图;
图7为本申请实施例提供的另一种通信芯片的结构示意图;
图8为本申请实施例提供的一种数据交换的示意图;
图9为本申请实施例提供的另一种数据交换的示意图;
图10为本申请实施例提供的又一种数据交换的示意图;
图11为本申请实施例提供的另一种通信芯片的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c或a、b和c,其中a、b和c可以是单个,也可以是多个。另外,在本申请的实施例中,“第一”、“第二”等字样并不对数量和次序进行限定。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例提供的技术方案可以应用于多种不同的数据交换网络中,该数据交换网络也可以称为数据交换系统,可用于实现同一数据网络中不同设备间的数据交换,也可用于实现不同数据网络的数据交换。其中,该数据交换网络可以为交换机、路由器、或者由多个交换机或路由器组成的交换网络。示例性的,如图2所示,该不同数据网络可以包括局域网和因特网,该局域网和该因特网可以通过路由器进行数据交换,该局域网中可以包括手机、平板电脑和个人计算机等终端设备,该因特网中可以包括一个或者多个服务器。下面对该数据交换网络的结构进行举例说明。
图3为本申请实施例提供的一种m×n(m和n均为大于1的整数)的数据交换网络的结构示意图。该数据交换网络包括m个源节点(source,S)和n个目的节点(destination,D),以及位于该m个源节点S与该n个目的节点之间的至少一个交换节点(switch,SW)。图3中将该m个源节点S表示为S1至Sm,将该n个目的节点D表示为D1至Dn,以该至少一个交换节点SW包括多个交换节点且表示为SW1至SWi为例进行说明。
在该数据交换网络中,该m个源节点S和该n个目的节点D中的每个节点均可以包括一个或者多个端口。对于源节点S来说,该一个或者多个端口为输入端口(input port),该输入端口可用于从该交换系统的外部接收数据包或信元,并发送至该至少一个交换节点SW。该至少一个交换节点SW可用于根据接收到的数据包或信元的目的信息(比如,目的IP地址、目的端口或者目的节点等信息)进行交换,并将交换后的数据包或信元发送给对应的目的节点D。对于目的节点D来说,该一个或者多个端口为输出端口(output port),该输出端口可用于向该交换系统的外部发送已完成交换的数据包或信元。
可选的,该数据交换网络可用于实现可变长数据包(variable-length packet)的交换,也可以用于实现定长的信元(cell)的交换。进一步的,上述源节点S在接收到数据包时,可以保持原来的可变长数据包的格式进行发送,也可以将数据包切分成信元(cell)后发送;若源节点S是按照将数据包切分成信元的形式发送的,则目的节点D可以在接收到所有信元之后,再重组成完整的数据包。
需要说明的是,上述图3中以源节点S和目的节点D是两个独立的节点为例进行说明,在实际应用中,该源节点S和目的节点D也可以为同一节点,同时具有输入端口和输出端口,上述图3并不对本申请实施例构成限制。
在本申请实施例中,上述源节点S、目的节点D和交换节点SW可以是晶粒(die),比如,源节点S和目的节点D可以是网络处理(network processing,NP)晶粒(也可以称为NP晶粒),交换节点SW可以是交换晶粒(也可以称为SW晶粒)。因此,上述数据交换网络可以是一个包括多个NP晶粒和一个或者多个SW晶粒的通信芯片(chip),或者是由多个这样的通信芯片合并封装在一起得到的芯片组。下面对该通信芯片的结构进行详细介绍说明。
图4为本申请实施例提供的一种通信芯片的结构示意图。该通信芯片包括多个SW晶粒10和多个NP晶粒20,该多个SW晶粒10中的任一SW晶粒与其它的SW晶粒相连,该多个NP晶粒20中的任一NP晶粒包括内部端口和外部端口,该内部端口用于与其它NP晶粒连接、或者与其它NP晶粒和一个SW晶粒均相连,该外部端口可用于接收来自外部的报文、或者向外部发送报文。图4中以该多个SW晶粒10包括两个SW晶粒且分别表示为11至12,该多个NP晶粒20包括四个NP晶粒且分别表示为21至24为例进行说明。
其中,上述晶粒也可以称为裸晶或裸片,从而SW晶粒也可以称为SW裸晶或SW裸片,NP晶粒也可以称为NP裸晶或NP裸片。可选的,该多个SW晶粒10和该多个NP晶粒20可以是从晶元(wafer)切割下来的多个独立的晶粒,也可以是位于同一晶元上的多个未切割的晶粒。
另外,对于该多个NP晶粒20中的每个NP晶粒,当该NP晶粒用于通过外部端口接收来自外部的某一报文时,该NP晶粒可以称为该报文的源NP晶粒,当该NP晶粒用于通过外部端口将输出至外部时,该NP晶粒可以称为该报文的目的NP晶粒。其中,同一报文的源NP晶粒和目的NP晶粒可以为同一NP晶粒,也可以为不同的NP晶粒。
该多个NP晶粒20中的任一NP晶粒(也可以称为第二NP晶粒,下文中以第二NP晶粒为NP晶粒21为例),用于:通过外部端口接收来自通信芯片外部的第一报文,获取第一报文的目的信息,并通过内部端口发送第二报文,第二报文包括第一报文和该目的信息,该目的信息用于指示第一报文的目的网络处理晶粒。示例性的,该NP晶粒21包括外部端口(也可以称为输入端口),可用于通过该外部端口接收来自该通信芯片外部的第一报文,并解析第一报文的目的地址或目的端口,以根据该目的地址或目的端口确定该目的信息,该目的信息可以为目的地址或目的端口所对应的目的NP晶粒的标识;该NP晶粒21还可以通过内部端口发送包括第一报文和该目的信息的第二报文。可选的,该多个NP晶粒20中的每个NP晶粒中可以存储有该通信芯片对应的预设路由表,该预设路由表可用于指示该多个NP晶粒20中任意两个NP晶粒之间的路由信息,从而任一NP晶粒在解析得到第一报文的目的地址或目的端口时,可以根据对应的路由信息确定并发送第二报文。
该多个SW晶粒10中的任一SW晶粒,用于:接收第二报文,并根据该目的信息确定不满足预设条件时,向该多个NP晶粒20中的第一NP晶粒(比如,NP晶粒22或NP晶粒23)发送第二报文,或者在确定满足该预设条件时,向相连的SW晶粒发送第二报文。该预设条件包括:是该多个SW晶粒10中与目的NP晶粒相连的SW晶粒,或者是通过其它NP晶粒与目的NP晶粒相连且连接的NP晶粒的数量最少的SW晶粒。可选的,该多个SW晶粒10中的每个SW晶粒中也可以存储有该通信芯片对应的预设路由表,从而任一SW晶粒可以根据该预设路由表确定是否满足该预设条件,并发送第二报文。
可选的,如图4所示,该多个SW晶粒10包括第一SW晶粒11和第二SW晶粒12,第一SW晶粒11和第二SW晶粒12相连。具体的,第一SW晶粒11用于:接收第二报文,并根据该目的信息确定第一SW晶粒11不满足该预设条件时,向第二SW晶粒12发送第二报文;第二SW晶粒12用于:接收来自第一SW晶粒11的第二报文,并根据该目的信息确定第二SW晶粒12满足该预设条件时,向第一NP晶粒22发送第二报文。
其中,该多个SW晶粒10中的每个SW晶粒可以包括多个交换端口,该多个交换端口可以与至少一个NP晶粒相连,或者与至少一个NP晶粒和与其它的一个或者多个SW晶粒相连,每个SW晶粒可以将一个交换端口接收到的报文交换至另一交换端口输出。示例性的,假设第一SW晶粒11包括与NP晶粒21连接的第一交换端口、与NP晶粒22连接的第二交换端口、以及与第二SW晶粒12连接的第三交换端口,则第一SW晶粒11可以执行以下步骤:通过第一交换端口接收来自NP晶粒21的第二报文;根据该目的信息确定SW晶粒11满足该预设条件(比如,NP晶粒22为目的NP晶粒,第一SW晶粒11与NP晶粒22相连)时,将第二报文从第一交换端口交换至第二交换端口,以通过第二交换端口向NP晶粒22发送第二报文;或者,根据该目的信息确定第一SW晶粒11不满足该预设条件(比如,NP晶粒23为目的NP晶粒,第一SW晶粒11通过第二SW晶粒12与NP晶粒23相连)时,将第二报文从第一交换端口交换至第三交换端口,以通过第三交换端口向第二SW晶粒12发送第二报文,以使第二SW晶粒12在确定满足该预设条件时向NP晶粒23发送第二报文。
第一NP晶粒(下文中以NP晶粒23为例)用于:接收来自相连的SW晶粒的第二报文,并通过外部端口向外部发送第二报文,或者,通过内部端口将第二报文发送给NP晶粒。示例性的,第一NP晶粒23在接收到来自交换晶粒12的第二报文时,若第一报文的目的NP晶粒为第一NP晶粒23,第一NP晶粒23通过该外部端口发送第二报文;若第一报文的目的NP晶粒不是第一NP晶粒23,第一NP晶粒23通过内部端口将第二报文发送给其他NP晶粒,比如,第一报文的目的NP晶粒为NP晶粒24,第一NP晶粒23将第二报文发送给该NP晶粒24。
进一步的,结合图4,如图5所示,若第一报文的目的NP晶粒不是第一NP晶粒23,第一报文的目的NP晶粒与该多个SW晶粒10中的任意一个SW晶粒均不相连,且该多个NP晶粒20中存在至少两个第一NP晶粒23(以两个NP晶粒为例且表示为23a和23b)均与第二SW晶粒12和该目的NP晶粒相连,即第二SW晶粒12与该目的NP晶粒之间存在多条传输路径,则第二SW晶粒12具体用于:在向第一NP晶粒22发送第二报文时,可以向至少两个第一NP晶粒23中的一个发送第二报文。比如,目的NP晶粒为NP晶粒24,第二SW晶粒12可以向第一NP晶粒23a发送第二报文,或者第二SW晶粒12向第一NP晶粒23b发送第二报文。
当第二SW晶粒12与第一报文的目的NP晶粒之间存在多条传输路径时,第二SW晶粒12可以按照一定的流量控制策略从该多条传输路径中选择一条传输路径向该目的NP晶粒传输第二报文。比如,该流量控制策略可以包括一条数据流通过一条传输路径传输,或者一条数据流按照负载均衡的方式通过多条传输路径传输等,本申请实施例对此不作具体限制。
类似的,如图5中的(a)所示,若该多个NP晶粒20中的第二NP晶粒21(即源NP晶粒)与该多个SW晶粒10中的任一个SW晶粒均不相连,则第二NP晶粒21具体用于:在通过外部端口接收第一报文后并通过内部端口发送第二报文时,通过内部端口向第三NP晶粒22发送第二报文,第三NP晶粒22与该多个SW晶粒20中的一个(比如,第一SW晶粒11)和第二NP晶粒21均相连。相应的,第三NP晶粒22用于:接收第二报文,并向第一SW晶粒11转发第二报文。
可选的,如图5中的(b)所示,若该多个NP晶粒20中存在至少两个第三NP晶粒22(以两个NP晶粒为例且表示为22a和22b)均与第二NP晶粒21和第一SW晶粒11相连,即第二NP晶粒21和第一SW晶粒11之间存在多条传输路径,则第二NP晶粒21具体用于:在通过内部端口向第三NP晶粒22发送第二报文时,向至少两个第三NP晶粒22中的一个发送第二报文。比如,第二NP晶粒21向第三NP晶粒22a发送第二报文,或者第二NP晶粒21向第三NP晶粒22b发送第二报文。
当第二NP晶粒21和第一SW晶粒11之间存在多条传输路径时,第二NP晶粒21可以按照一定的流量控制策略从该多条传输路径中选择一条传输路径向第一SW晶粒11传输第二报文。比如,该流量控制策略可以包括一条数据流通过一条传输路径传输,或者一条数据流按照负载均衡的方式通过多条传输路径传输等,本申请实施例对此不作具体限制。
进一步的,上述第二SW晶粒12可能满足该预设条件,也可能不满足该预设条件。当第二SW晶粒12满足该预设条件时,第二SW晶粒12可以向连接的第一NP晶粒23发送第二报文。当第二SW晶粒12不满足该预设条件,第二SW晶粒12可以向与第二SW晶粒12连接的其它SW晶粒发送第二报文,以使该其它SW晶粒向连接的第一NP晶粒23发送第二报文。
在一种可能的实施例中,如图6中的(a)所示,该多个SW晶粒10还包括第三SW晶粒13,第三SW晶粒13分别与第二SW晶粒12和第一NP晶粒23相连,则第二SW晶粒12还用于:当确定第二SW晶粒12不满足该预设条件时,向第三SW晶粒13发送第二报文。相应的,第三SW晶粒13用于:接收来自第二SW晶粒12的第二报文,并根据第二报文中的目的信息确定第三SW晶粒13满足该预设条件,向第一NP晶粒23发送第二报文。
可选的,如图6中的(b)所示,该多个SW晶粒10中存在至少两个第二SW晶粒12(以两个SW晶粒为例且表示为12a和12b)与第一SW晶粒11和第三SW晶粒23均相连,即第一SW晶粒11和第三SW晶粒23之间存在多条传输路径,则第一SW晶粒11具体用于:在确定第一SW晶粒11不满足该预设条件,需要向第二SW晶粒12发送第二报文时,可以向至少两个第二SW晶粒12中的一个发送第二报文。比如,第一SW晶粒11向第二SW晶粒12a发送第二报文,或者第一SW晶粒11向第二SW晶粒12b发送第二报文。
可选的,当第一SW晶粒11与第三SW晶粒23之间存在多条传输路径时,第一SW晶粒11可以按照一定的流量控制策略从该多条传输路径中选择一条传输路径向第三SW晶粒23传输第二报文。比如,该流量控制策略可以包括一条数据流通过一条传输路径传输,或者一条数据流按照负载均衡的方式通过多条传输路径传输等,本申请实施例对此不作具体限制。
对于上述任一种可能的实施例,第一NP晶粒23不仅可用于通过外部端口向外部发送第二报文,也可以用于通过内部端口将第二报文发送给其他NP晶粒。为了保证第一NP晶粒23能够正确地传输该第二报文,与第一NP晶粒23相连的SW晶粒(或称为向第一NP晶粒23发送第二报文的SW晶粒)还用于:向第一NP晶粒23发送路径指示信息,该路径指示信息用于指示该第二报文的发送路径。相应的,第一NP晶粒23还用于:接收该路径指示信息,并根据该路径指示信息通过外部端口向外部发送第二报文,或者,根据该路径指示信息通过内部端口将第二报文发送给其他NP晶粒。进一步的,当与第一NP晶粒23相连的SW晶粒与该目的NP晶粒之间的传输路径中存在多个NP晶粒时,该路径指示信息还可用于指示第二报文在该多个NP晶粒中的发送路径,即该多个NP晶粒可根据该路径指示信息对第二报文进行转发,直至将第二报文转发至该目的NP晶粒。
在一种示例中,以图4所示的通信芯片为例,若NP晶粒21为源NP晶粒,NP晶粒21发送的第二报文通过第一SW晶粒11到达第二SW晶粒12,第二SW晶粒12确定满足该预设条件,第二SW晶粒12可以向第一NP晶粒23发送第二报文和该路径指示信息。若目的NP晶粒为第一NP晶粒23,该路径指示信息可用于指示第一NP晶粒23通过外部端口向外部发送第二报文,则第一NP晶粒23在接收到第二报文和该路径指示信息时,通过外部端口向外部发送第二报文。若目的NP晶粒为NP晶粒24,该路径指示信息可用于指示第一NP晶粒23通过内部端口将第二报文转发至NP晶粒24,则第一NP晶粒23在接收到第二报文和该路径指示信息时,根据该路径指示信息将第二报文转发至NP晶粒24。
在另一种示例中,以图6所示的通信芯片为例,若NP晶粒21为源NP晶粒,NP晶粒21发送的第二报文依次通过第一SW晶粒11和第二SW晶粒12到达第三SW晶粒13,第三SW晶粒13确定满足该预设条件,第三SW晶粒13可以向第一NP晶粒23a发送第二报文和路径指示信息。若目的NP晶粒为第一NP晶粒23a,该路径指示信息可用于指示第一NP晶粒23a通过外部端口向外部发送第二报文,则第一NP晶粒23a在接收到第二报文和该路径指示信息时,通过外部端口向外部发送第二报文。若目的NP晶粒为NP晶粒24,该路径指示信息可用于指示第一NP晶粒23a通过内部端口将第二报文转发至NP晶粒24,则第一NP晶粒23a在接收到第二报文和该路径指示信息时,根据该路径指示信息将第二报文转发至NP晶粒24。
下面以图7所示的通信芯片为例,对第一NP晶粒23的具体结构和第一NP晶粒23根据该路径指示信息所执行的操作、以及第二NP晶粒21的具体结构和第二NP晶粒21选择传输路径所执行的操作进行举例说明。如图7所示,该通信芯片可以包括四个SW晶粒且分别表示为11、12a、12b和13,以及12个NP晶粒且分别表示为21、22a、22b、23a、23b、24、25a、25b、26、27a、27b和28。其中,SW晶粒11和SW晶粒13均与SW晶粒12a和SW晶粒12b连接,NP晶粒21分别通过NP晶粒22a和22b与SW晶粒11连接,NP晶粒24分别通过NP晶粒23a和23b与SW晶粒13连接,NP晶粒26分别通过NP晶粒25a和25b与SW晶粒12a连接,NP晶粒28分别通过NP晶粒27a和27b与SW晶粒12b连接。
第一、对第一NP晶粒23的具体结构,以及第一NP晶粒23根据该路径指示信息所执行的操作进行举例说明。
在一种可能的实施例中,如图7所示,以第一NP晶粒23为NP晶粒23a为例,第一NP晶粒23a包括第一选择开关231。其中,第一选择开关231包括连接端Q0、第一选择端Q1和第二选择端Q2,第一选择开关231的连接端Q0与第三SW晶粒13连接,第一选择开关231的第一选择端Q1和第二选择端Q2分别与第一NP晶粒23a的外部端口和该NP晶粒24连接。
具体的,以第三SW晶粒13向第一NP晶粒23a发送第二报文和路径指示信息为例,若该目的NP晶粒为第一NP晶粒23a,该路径指示信息用于指示第一NP晶粒23a通过外部端口向外部发送第二报文时,第一NP晶粒23a可以导通第一选择开关231的连接端Q0与第一选择开关231的第一选择端Q1。若该目的NP晶粒为NP晶粒24,该路径指示信息用于指示第一NP晶粒23a通过内部端口将第二报文转发至该NP晶粒24时,第一NP晶粒23a可以导通第一选择开关231的连接端Q0与第一选择开关231的第二选择端Q2。
可选的,第一选择开关231还可以包括至少两个第二选择端Q2,该至少两个第二选择端Q2分别与第一NP晶粒23a的至少两个内部端口相连,该至少两个内部端口分别与该多个NP晶粒中20的至少两个相连。此时,第一NP晶粒23还用于:在根据该路径指示信息通过内部端口将第二报文转发给其他NP晶粒时,导通第一选择开关221的连接端与该路径指示信息指示的发送路径对应的第二选择端Q2。
第二、对第二NP晶粒21的具体结构和第二NP晶粒21选择传输路径所执行的操作进行举例说明。
在一种可能的实施例中,如图7所示,第二NP晶粒21包括第二选择开关211。其中,第二选择开关211包括连接端P0和至少两个选择端P1至Pi(i为大于1的正整数),第二选择开关211的连接端P0与该NP晶粒21的外部端口连接,第二选择开关211的至少两个选择端P1至Pi分别与至少两个NP晶粒连接。图7中以该至少两个NP晶粒包括两个NP晶粒且分别表示为22a和22b,该至少两个选择端P1至Pi包括两个选择端且分别表示为P1和P2,NP晶粒22a与选择端P1连接,NP晶粒22b与选择端P2连接为例进行说明。
具体的,第二NP晶粒21还用于:控制第二选择开关211的连接端P0与第二选择开关211的至少两个选择端P1至Pi中的一个选择端导通,以实现从上述至少两个NP晶粒中选择一个NP晶粒发送第二报文。示例性的,结合图7,该NP晶粒21可用于控制第二选择开关211的连接端P0与第二选择开关211的选择端P1导通,以从NP晶粒22a和NP晶粒22b中选择NP晶粒22a发送第二报文,即该NP晶粒21选择通过NP晶粒22a向第一SW晶粒11转发该第二报文。
可选的,该NP晶粒21和第一NP晶粒23a除了包括选择开关,还可以包括其他功能单元。示例性的,该NP晶粒21和第一NP晶粒23a还可以包括媒体接入控制(media accesscontrol)汇聚单元(aggregation)、网络处理器(network processor,NP)和流量管理器(traffic manager,TM),媒体接入控制汇聚单元可以简称MAG。其中,MAG可用于感知光信号或电信号,将该光信号或电信号转发为数据帧(即报文),并对该数据帧进行合法性检查。NP的上行处理可以包括报文解析、数据流分析、报文转发、以及将MAC/IP地址映射到TM队列号等;NP的下行处理上可以包括报文封装和出口处理等。TM可用于提供大容量内存、拥塞避免、流量整形、多级流量调度和流量拥塞控制等功能,还用于将TM队列号映射到目的NP晶粒的标识。
类似的,上述图7所示的多个NP晶粒中的任一NP晶粒均可以包括媒体接入控制汇聚单元MAG、网络处理器NP和流量管理器TM。进一步的,当多个NP晶粒中的任一NP晶粒不仅可用于接收外部的报文或向外部转发报文,而且可用于为其他NP晶粒或者SW晶粒转发报文时,上述NP晶粒中还可以包括与第一选择开关231或第二选择开关211类似的选择开关,本申请实施例对此不作具体限制。
此外,该多个NP晶粒20除了包括上述图7所示的4个SW晶粒和12个NP晶粒之外,还可以包括更多数量的SW晶粒和NP晶粒,任一SW晶粒均可以与其它的SW晶粒相连,任一NP晶粒均可以与其它的NP晶粒相连、或者同时与其它的NP晶粒和SW晶粒相连,每个相连NP晶粒均包括选择开关、MAG、NP和TM。
需要说明的是,上述NP晶粒21至NP晶粒24的相关描述,均是以NP晶粒在数据交换中的不同角度为例进行说明的。在该通信芯片中,该多个NP晶粒10中的任一个NP晶粒均有可能执行上述NP晶粒21至NP晶粒24中任意一个NP晶粒的功能,具体与需要交换的报文和该NP晶粒在该通信芯片中的位置(或称为连接关系)有关。
可选的,当上述NP晶粒包括选择开关、媒体接入控制汇聚单元MAG、网络处理器NP和流量管理器TM等多个不同功能单元时,该NP晶粒也可以被拆分成多个不同的晶粒,每个晶粒用于对应上述一个或者多个功能单元。示例性的,每个NP晶粒可以包括两个晶粒,这两个晶粒包括与MAG对应的晶粒,和NP、TM及选择开关对应的晶粒。
本申请实施例中的多个SW晶粒10的结构可以相同,也可以不同;类似的,多个NP晶粒20的结构可以相同,也可以不同。其中,当该多个SW晶粒10的结构相同,或者该多个NP晶粒20的结构相同时,可以通过一次流片或者相同的流片过程得到的完全相同的多个晶粒,通过配置和旋转该多个晶粒即可得到该通信芯片中不同位置上的SW晶粒或者NP晶粒,这样可以大大降低SW晶粒和NP晶粒的开发成本。
进一步的,当第一报文的源NP晶粒和目的NP晶粒为同一NP晶粒时,该源NP晶粒还可以用于通过外部端口发送第一报文。示例性的,以图4至图7中的任一图示所提供的通信芯片中的第二NP晶粒21为例,若第一报文的源NP晶粒和目的NP晶粒均为第二NP晶粒21,则第二NP晶粒21还可用于:在接收到第一报文,且确定该目的NP晶粒为第二NP晶粒21时,通过外部端口发送第一报文。
此外,当第一报文的源NP晶粒和目的NP晶粒为相连的两个NP晶粒时,该源NP晶粒还可以用于通过内部端口向该目的NP晶粒发送第一报文。示例性的,以图5或图6中的第二NP晶粒21和NP晶粒22a为例,第二NP晶粒21还用于:在接收到第一报文,且确定该目的NP晶粒为该NP晶粒22a时,通过内部端口向该NP晶粒22a发送第一报文。
进一步的,该通信芯片还可以包括多个分组,该多个分组中的任一分组包括该多个NP晶粒20中的至少一个NP晶粒,和/或该多个SW晶粒10中的至少一个SW晶粒。在一种可能的实施例中,该多个分组中的任一分组包括该多个SW晶粒10中的至少一个SW晶粒,或者该任一分组包括该多个SW晶粒10中的至少一个SW晶粒和至少一个NP晶粒,该至少一个NP晶粒中的任一NP晶粒通过内部端口与同一分组中的一个SW晶粒相连,或者通过内部端口与同一分组中相邻的NP晶粒相连。
示例性的,以图7所示的通信芯片为例,该通信芯片可以包括4个分组,第1分组中可以包括SW晶粒11、NP晶粒21、NP晶粒22a和NP晶粒22b,第2分组中可以包括SW晶粒12a、NP晶粒26、NP晶粒25a和NP晶粒25b,第3分组中可以包括SW晶粒12b、NP晶粒28、NP晶粒27a和NP晶粒27b,第4分组中可以包括SW晶粒13、NP晶粒24、NP晶粒23a和NP晶粒23b。
可选的,当该多个NP晶粒20中相邻的两个NP晶粒属于不同的分组时,该相邻的两个NP晶粒可以不相连。示例性的,以图7所示的四个分组为例,NP晶粒22a和NP晶粒25a可以不相连,NP晶粒22b和NP晶粒27b可以不相连,NP晶粒25b和NP晶粒23b可以不相连,NP晶粒27a和NP晶粒23a可以不相连。在实际应用中,当该多个NP晶粒20中相邻的两个NP晶粒属于不同的分组时,该相邻的两个NP晶粒也可以相连,上述图7中仅以不同分组中相邻的两个NP晶粒不相连为例进行说明。
在一种可能的实施例中,当源NP晶粒和目的NP晶粒均属于一个分组时,该源NP晶粒接收到的报文可以通过该分组中的NP晶粒和/或SW晶粒传输至目的NP晶粒;当源NP晶粒和目的NP晶粒属于不同的分组时,该源NP晶粒接收到的报文可以通过多个分组中的NP晶粒和/或SW晶粒传输至目的NP晶粒。
为便于理解,下面以图8-图10所示的通信芯片为例,对该通信芯片中不同位置上的NP晶粒的报文对应的交换路径进行举例说明。该不同位置可以包括源NP晶粒和目的NP晶粒属于同一分组和不同分组,源NP晶粒为与SW晶粒直连的NP晶粒(简称直连NP晶粒),源NP晶粒为与SW晶粒不直连的NP晶粒(简称非直连NP晶粒),目的NP晶粒为直连NP晶粒和非直连NP晶粒。图8-图10中以该通信芯片包括4个SW晶粒(表示为SW1至SW4)和12个NP晶粒(分别表示为NP1-NP12),SW1至SW4以及NP1-NP12被划分为四个分组,每个分组包括一个SW晶粒、两个直连NP晶粒和一个非直连NP晶粒为例进行说明。
在一种可能的示例中,如图8所示,对于源NP晶粒和目的NP晶粒均属于同一分组内,且源NP晶粒为直连的NP晶粒(比如,源NP晶粒为SW1直连的NP5)时可能的交换路径进行举例说明。具体的,若目的NP晶粒为直连NP晶粒,比如NP5,则报文对应的交换路径S11为NP5-SW1-NP5,比如NP2,则报文对应的交换路径S12为NP5-SW1-NP2;若目的NP晶粒为非直连NP晶粒,比如NP1,则报文对应的交换路径S13a为NP5-SW1-NP2-NP1,或者交换路径S13b为NP5-SW1-NP5-NP1。对于源NP晶粒和目的NP晶粒均属于同一分组内,且源NP晶粒为非直连的NP晶粒(比如,源NP晶粒为SW3直连的NP9)时可能的交换路径进行举例说明。具体的,若目的NP晶粒为非直连NP晶粒,比如NP9,则报文的交换路径S21a为NP9-NP7-SW3-NP7-NP9,或者交换路径S21b为NP9-NP10-SW3-NP10-NP9,或者交换路径S21c为NP9-NP7-SW3-NP10-NP9或NP9-NP10-SW3-NP7-NP9;若目的NP晶粒为直连NP晶粒,比如NP7,则报文的交换路径S22a为NP9-NP7-SW3-NP7,或者交换路径S22b为NP9-NP10-SW3-NP7。
在另一种可能的示例中,如图9所示,对于源NP晶粒和目的NP晶粒属于不同分组,且源NP晶粒为直连的NP晶粒(比如,源NP晶粒为SW1直连的NP5)时可能的交换路径进行举例说明。具体的,以源NP晶粒和目的NP晶粒所属的两个分组相邻为例,若目的NP晶粒为直连NP晶粒,比如NP3,则报文的交换路径S31为NP5-SW1-SW2-NP3;若目的NP晶粒为非直连NP晶粒,比如NP4,则报文的交换路径S32为NP5-SW1-SW2-NP6/NP3-NP4。以源NP晶粒和目的NP晶粒所属的两个分组不相邻为例,若目的NP晶粒为直连NP晶粒,比如NP8,则报文的交换路径S41为NP5-SW1-SW2/SW3-SW4-NP8;若目的NP晶粒为非直连NP晶粒,比如NP12,则报文的交换路径S42为NP5-SW1-SW2/SW3-SW4-NP8/NP11-NP12。
在又一种可能的示例中,如图10所示,对于源NP晶粒和目的NP晶粒属于不同分组,且源NP晶粒为非直连的NP晶粒(比如,源NP晶粒为NP1)时可能的交换路径进行举例说明。具体的,以源NP晶粒和目的NP晶粒所属的两个分组相邻为例,若目的NP晶粒为直连NP晶粒,比如NP3,则报文的交换路径S51为NP1-NP5/NP2-SW1-SW2-NP3;若目的NP晶粒为非直连NP晶粒,比如NP4,则报文的交换路径S52为NP1-NP5/NP2-SW1-SW2-NP6/NP3-NP4。以源NP晶粒和目的NP晶粒所属的两个分组不相邻为例,若目的NP晶粒为直连NP晶粒,比如NP8,则报文的交换路径S61为NP1-NP5/NP2-SW1-SW2/SW3-SW4-NP8;若目的NP晶粒为非直连NP晶粒,比如NP12,则报文的交换路径S62为NP1-NP5/NP2-SW1-SW2/SW3-SW4-NP8/NP11-NP12。
需要说明的是,上述图8-图10中以源NP晶粒和目的NP晶粒为同一NP晶粒、或者为同一分组内相邻的两个NP晶粒时,对应的交换路径需要经过SW晶粒为例进行说明。可选的,当源NP晶粒和目的NP晶粒为同一NP晶粒、或者为同一分组内相邻的两个NP晶粒时,对应的交换路径也可以不经过SW晶粒,从而直接通过NP晶粒输出。示例性的,以源NP晶粒和目的NP晶粒均为NP4为例,NP4可以在接收到报文并确定该报文的目的NP晶粒为NP4时,将该报文通过对应的外部端口输出。
上述图4-图10仅是示例性的,当该通信芯片用于实现更大容量的数据交换时,该通信芯片还可以包括更多数量的NP晶粒和更多数量的SW晶粒。其中,该多个NP晶粒可用于接收外部的报文,或者向外部发送报文;该多个NP晶粒中的一部分NP晶粒还可以用于为另一部分NP晶粒转发报文,以将源NP晶粒接收到的报文转发至该多个SW晶粒;该多个NP晶粒中的一部分NP晶粒还可以用于为该多个SW晶粒转发报文,以将报文转发至目的NP晶粒。该多个SW晶粒中的每个SW晶粒可用于交换报文,不同的SW晶粒之间还可用于转发报文。此外,当该通信芯片包括更多数量的NP晶粒和更多数量的SW晶粒时,该通信芯片的多个分组中每个分组所包括的晶粒的类型和数量可以相同,也可以不同。
在一种可能的实施例中,如图11所示,该通信芯片可以包括9个SW晶粒(表示为SW1至SW9)和16个NP晶粒(表示为NP1至NP16),每个SW晶粒可以与至少一个NP晶粒相连,每个SW晶粒还可以与至少一个SW晶粒相连,每个NP晶粒可以与一个SW晶粒相连、或者与至少一个NP晶粒相连、或者同时与一个SW晶粒和至少一个NP晶粒相连。在一种示例中,如图11中的(a)所示,该通信芯片可以包括9个分组,其中4个分组中的每个分组可以包括三个NP晶粒和一个SW晶粒,另外4个分组中的每个分组可以包括一个NP晶粒和一个SW晶粒,最后1个分组可以包括一个SW晶粒。或者,在另一种示例中,如图11中的(b)所示,该通信芯片可以包括5个分组,其中4个分组中的每个分组可以包括四个NP晶粒和一个SW晶粒,最后1个分组可以包括一个SW晶粒。
上述图11所示的多个分组仅是示例性的,在实际应用中,该多个分组还可以按照其它方式划分的,本申请实施例对此不作具体限制。另外,图11中的(a)以相邻的两个NP晶粒属于不同分组时,该相邻的两个NP晶粒不相连为例进行说明;图11中的(b)以相邻的两个NP晶粒属于不同分组时,该相邻的两个NP晶粒相连为例进行说明。
进一步的,该通信芯片还可以包括:至少一个存储晶粒,该多个NP晶粒中的任意一个NP晶粒与该至少一个存储晶粒中的一个或者多个存储晶粒连接。可选的,该通信芯片包括多个存储晶粒,该多个存储晶粒与该多个NP晶粒一一对应,即每个NP晶粒与对应的一个存储晶粒连接。可选的,该存储晶粒的存储介质类型包括但不限于:动态随机存取存储器(dynamic random access memory,DRAM)、静态随机存取存储器(static random accessmemory,SRAM)、铁电随机存取存储器(ferroelectric random access memory,FeRAM)或者磁性随机存储器(magnetic random access memory,MRAM)等。
其中,当该至少一个存储晶粒包括多个存储晶粒时,该多个存储晶粒的存储介质类型可以相同或不同;当一个NP晶粒与多个存储晶粒耦合时,该NP晶粒对应耦合的该多个存储晶粒的存储介质类型可以相同或不同,本申请实施例对此不作具体限制。
本申请实施例中通信芯片包括多个SW晶粒和多个NP晶粒,该多个SW晶粒和该多个NP晶粒在该通信芯片内可实现连接,且该多个NP晶粒可用于接收外部的报文或者向外部发送报文,该多个SW晶粒可用于实现报文的分布式交换,从而在该通信芯片内部即可实现数据交换,与现有技术中通过多个NP芯片和多个交换芯片组成的数据交换网络相比,能够大大降低功耗和体积,同时减小采用该通信芯片的设备的散热成本和部署空间,以满足当前对于绿色低碳和可持续发展的需求。
基于此,本申请实施例还提供一种数据交换装置,该数据交换装置包括背板、以及设置在该背板上的至少一个通信芯片,该通信芯片为上文所提的任意一种通信芯片。可选的,该数据交换装置可以为交换盒子;或者,该数据交换装置可以为交换框。其中,当该数据交换装置为交换盒子时,该数据交换装置可以为单设备形态,不支持扩容,从而在该背板上可以不设置背板接口。当该数据交换装置为交换框时,该数据交换装置可以不是单设备形态,支持扩容,从而在该背板上可以设置相应的背板接口。
在一种示例中,当该数据交换装置为交换框时,该交换框包括与该至少一个通信芯片对应的至少一个线卡,该至少一个通信芯片分别通过该至少一个线卡与该背板上的背板接口连接,以将该至少一个通信芯片设置在该背板上。
基于此,本申请实施例还提供一种交换设备,该交换设备可以为路由器或者交换机,该交换设备包括上文所提供的数据交换装置。
需要说明的是,上述关于通信芯片的详细描述均可对应援引到该数据交换装置和该交换设备中的,本申请实施例在此不再赘述。
最后应说明的是:以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (19)
1.一种通信芯片,其特征在于,所述通信芯片包括:多个交换晶粒和多个网络处理晶粒,所述多个交换晶粒中的任一交换晶粒与其它交换晶粒相连,所述多个网络处理晶粒中的任一网络处理晶粒包括外部端口和内部端口,所述内部端口与其他网络处理晶粒相连、或者与其它网络处理晶粒和所述多个交换晶粒中的一个交换晶粒均相连;
所述多个网络处理晶粒中的任一网络处理晶粒,用于:通过所述外部端口接收来自所述通信芯片外部的第一报文,获取所述第一报文的目的信息,通过所述内部端口发送第二报文,所述第二报文包括所述第一报文和所述目的信息,所述目的信息用于指示所述第一报文的目的网络处理晶粒;
所述多个交换晶粒中的任一交换晶粒,用于:接收所述第二报文,并根据所述目的信息确定不满足预设条件时,向相连的交换晶粒发送所述第二报文;或者,在确定满足所述预设条件时,向相连的第一网络处理晶粒发送所述第二报文;
所述第一网络处理晶粒,用于:接收来自相连的交换晶粒的所述第二报文,并通过所述外部端口向外部发送所述第二报文,或者,通过所述内部端口将所述第二报文发送给其他网络处理晶粒;
其中,所述预设条件包括:是所述多个交换晶粒中与所述目的网络处理晶粒相连的交换晶粒、或者是通过其它网络处理晶粒与所述目的网络处理晶粒相连且连接的网络处理晶粒的数量最少的交换晶粒。
2.根据权利要求1所述的通信芯片,其特征在于,所述多个交换晶粒包括第一交换晶粒和第二交换晶粒,所述第二交换晶粒与所述第一交换晶粒相连;
所述第一交换晶粒,用于:接收所述第二报文,并根据所述目的信息确定所述第一交换晶粒不满足所述预设条件时,向所述第二交换晶粒发送所述第二报文;
所述第二交换晶粒,用于:接收来自所述第一交换晶粒的所述第二报文,并根据所述目的信息确定所述第二交换晶粒满足所述预设条件时,向所述第一网络处理晶粒发送所述第二报文。
3.根据权利要求2所述的通信芯片,其特征在于,所述多个交换晶粒还包括第三交换晶粒,所述第三交换晶粒与所述第二交换晶粒相连;
所述第二交换晶粒,还用于:当确定所述第二交换晶粒不满足所述预设条件时,向所述第三交换晶粒发送所述第二报文;
所述第三交换晶粒,用于:接收来自所述第二交换晶粒的所述第二报文,并根据所述目的信息确定所述第三交换晶粒满足所述预设条件时,向所述第一网络处理晶粒发送所述第二报文。
4.根据权利要求3所述的通信芯片,其特征在于,所述多个交换晶粒中存在至少两个所述第二交换晶粒与所述第一交换晶粒和所述第三交换晶粒均相连;
所述第一交换晶粒,具体用于:在向所述第二交换晶粒发送所述第二报文时,向所述至少两个第二交换晶粒中的一个发送所述第二报文。
5.根据权利要求2所述的通信芯片,其特征在于,
所述多个交换晶粒中的任一交换晶粒,还用于:在向所述第一网络处理晶粒发送所述第二报文时,向所述第一网络处理晶粒发送路径指示信息,所述路径指示信息用于指示所述第二报文的发送路径;
所述第一网络处理晶粒,还用于:接收所述路径指示信息,并根据所述路径指示信息通过所述外部端口向外部发送所述第二报文,或者,根据所述路径指示信息通过所述内部端口将所述第二报文发送给其他网络处理晶粒。
6.根据权利要求5所述的通信芯片,其特征在于,所述第一网络处理晶粒包括第一选择开关,所述第一选择开关包括连接端、第一选择端和第二选择端,所述第一选择开关的连接端与所述多个交换晶粒中的一个相连,所述第一选择开关的第一选择端与所述外部端口相连,所述第一选择开关的第二选择端与其它网络处理晶粒相连;
所述第一网络处理晶粒,还用于:在根据所述路径指示信息通过所述外部端口向外部发送所述第二报文时,导通所述第一选择开关的连接端与所述第一选择开关的第一选择端;或者,
所述第一网络处理晶粒,还用于:在根据所述路径指示信息通过所述内部端口将所述第二报文发送给其他网络处理晶粒时,导通所述第一选择开关的连接端与所述第一选择开关的第二选择端。
7.根据权利要求6所述的通信芯片,其特征在于,所述第一选择开关包括至少两个所述第二选择端,所述至少两个所述第二选择端分别与所述第一网络处理晶粒的至少两个所述内部端口相连,所述至少两个内部端口分别与所述多个网络处理晶粒中的至少两个相连;
所述第一网络处理晶粒,还用于:在根据所述路径指示信息通过所述内部端口将所述第二报文发送给其他网络处理晶粒时,导通所述第一选择开关的连接端与所述路径指示信息指示的发送路径对应的所述第二选择端。
8.根据权利要求2-7任一项所述的通信芯片,其特征在于,所述目的网络处理晶粒与所述多个交换晶粒中的任一交换晶粒不相连,所述多个网络处理晶粒中存在至少两个所述第一网络处理晶粒均与所述第二交换晶粒和所述目的网络处理晶粒相连;
所述第二交换晶粒,还用于:在向所述第一网络处理晶粒发送所述第二报文时,向所述至少两个所述第一网络处理晶粒中的一个发送所述第二报文。
9.根据权利要求1所述的通信芯片,其特征在于,所述多个网络处理晶粒中存在第二网络处理晶粒与所述多个交换晶粒中的任一个均不相连;
所述第二网络处理晶粒,具体用于:在通过所述外部端口接收所述第一报文后并通过所述内部端口发送所述第二报文时,通过所述内部端口向第三网络处理晶粒发送所述第二报文,所述第三网络处理晶粒与所述多个交换晶粒中的一个交换晶粒和所述第二网络处理晶粒均相连;
所述第三网络处理晶粒,用于:接收所述第二报文,并向所述交换晶粒转发所述第二报文。
10.根据权利要求9所述的通信芯片,其特征在于,所述多个网络处理晶粒中存在至少两个所述第三网络处理晶粒;
所述第二网络处理晶粒,具体用于:在通过所述内部端口向所述第三网络处理晶粒发送所述第二报文时,向所述至少两个第三网络处理晶粒中的一个发送所述第二报文。
11.根据权利要求10所述的通信芯片,其特征在于,所述第二网络处理晶粒还包括第二选择开关,所述第二选择开关包括连接端和至少两个选择端,所述第二选择开关的连接端与所述外部端口相连,所述第二选择开关的所述至少两个选择端分别与所述至少两个第三网络处理晶粒相连;
所述第二网络处理晶粒,还具体用于:导通所述第二选择开关的连接端与所述至少两个选择端中的一个选择端,以从所述至少两个第三网络处理晶粒中选择一个发送所述第二报文。
12.根据权利要求11所述的通信芯片,其特征在于,
所述第二网络处理晶粒,还用于:在所述目的网络处理晶粒为所述第二网络处理晶粒时,通过所述外部端口发送所述第一报文。
13.根据权利要求1所述的通信芯片,其特征在于,所述通信芯片包括多个分组,所述多个分组中的任一分组包括所述多个网络处理晶粒中的至少一个网络处理晶粒,所述多个分组中任意两个分组中的网络处理晶粒不相连;
其中,同一分组中的至少一个网络处理晶粒通过所述内部端口连接同一所述多个交换晶粒中的一个交换晶粒,或通过所述内部端口连接同一分组中的相邻网络处理晶粒。
14.根据权利要求1所述的通信芯片,其特征在于,所述多个交换晶粒和所述多个网络处理晶粒位于同一晶元中。
15.根据权利要求1所述的通信芯片,其特征在于,所述通信芯片还包括:多个存储晶粒,所述多个网络处理晶粒中的任意一个网络处理晶粒与所述多个存储晶粒中的一个或者多个存储晶粒连接。
16.一种数据交换装置,其特征在于,所述数据交换装置包括背板、以及设置在所述背板上的至少一个通信芯片,所述通信芯片为权利要求1-15任一项所述的通信芯片。
17.根据权利要求16所述的装置,其特征在于,所述数据交换装置包括交换盒子或交换框。
18.根据权利要求17所述的装置,其特征在于,当所述数据交换装置包括交换框时,所述交换框包括与所述至少一个通信芯片对应的至少一个线卡,所述至少一个通信芯片分别通过所述至少一个线卡设置在所述背板上。
19.一种交换设备,其特征在于,所述交换设备包括如权利要求16-18任一项所述的数据交换装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311015754.XA CN117424852A (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置 |
CN202210843102.4A CN115514704B (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置、交换设备 |
PCT/CN2023/095556 WO2024016825A1 (zh) | 2022-07-18 | 2023-05-22 | 一种通信芯片及数据交换装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210843102.4A CN115514704B (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置、交换设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311015754.XA Division CN117424852A (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115514704A CN115514704A (zh) | 2022-12-23 |
CN115514704B true CN115514704B (zh) | 2023-08-22 |
Family
ID=84501756
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210843102.4A Active CN115514704B (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置、交换设备 |
CN202311015754.XA Pending CN117424852A (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311015754.XA Pending CN117424852A (zh) | 2022-07-18 | 2022-07-18 | 一种通信芯片及数据交换装置 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN115514704B (zh) |
WO (1) | WO2024016825A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115529269B (zh) * | 2022-04-29 | 2023-05-16 | 华为技术有限公司 | 一种通信芯片及数据交换装置 |
CN115514704B (zh) * | 2022-07-18 | 2023-08-22 | 华为技术有限公司 | 一种通信芯片及数据交换装置、交换设备 |
CN118733370A (zh) * | 2024-09-02 | 2024-10-01 | 深圳市中兴微电子技术有限公司 | 一种芯粒、芯片及芯片调测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885212A (zh) * | 2012-12-23 | 2015-09-02 | 先进微装置公司 | 利用分区多跳网络的裸片堆叠装置 |
US10708127B1 (en) * | 2017-12-29 | 2020-07-07 | Arista Networks, Inc. | Low-latency network switching device with latency identification and diagnostics |
CN112185440A (zh) * | 2019-07-05 | 2021-01-05 | 爱思开海力士有限公司 | 存储器接口、数据存储设备及其操作方法 |
WO2022041221A1 (zh) * | 2020-08-31 | 2022-03-03 | 华为技术有限公司 | 芯片及芯片封装 |
WO2022041158A1 (zh) * | 2020-08-28 | 2022-03-03 | 华为技术有限公司 | 一种多芯片封装结构、交换机 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6990096B2 (en) * | 2001-06-01 | 2006-01-24 | 4198638 Canada Inc. | Cell-based switch fabric architecture implemented on a single chip |
JP5959948B2 (ja) * | 2012-06-13 | 2016-08-02 | キヤノンマシナリー株式会社 | ウエハリング交換装置およびチップ実装装置 |
KR102229942B1 (ko) * | 2014-07-09 | 2021-03-22 | 삼성전자주식회사 | 멀티 다이들을 갖는 멀티 채널 반도체 장치의 동작 방법 및 그에 따른 반도체 장치 |
US20180048562A1 (en) * | 2016-08-09 | 2018-02-15 | Knuedge Incorporated | Network Processor Inter-Device Packet Source ID Tagging for Domain Security |
US11476211B2 (en) * | 2019-12-19 | 2022-10-18 | Nepes Co., Ltd. | Semiconductor package and manufacturing method thereof |
CN113079090A (zh) * | 2020-01-06 | 2021-07-06 | 华为技术有限公司 | 一种流量传输的方法、节点和系统 |
CN114116595A (zh) * | 2020-08-28 | 2022-03-01 | 华为技术有限公司 | 数据传输的方法和系统 |
CN115514704B (zh) * | 2022-07-18 | 2023-08-22 | 华为技术有限公司 | 一种通信芯片及数据交换装置、交换设备 |
-
2022
- 2022-07-18 CN CN202210843102.4A patent/CN115514704B/zh active Active
- 2022-07-18 CN CN202311015754.XA patent/CN117424852A/zh active Pending
-
2023
- 2023-05-22 WO PCT/CN2023/095556 patent/WO2024016825A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885212A (zh) * | 2012-12-23 | 2015-09-02 | 先进微装置公司 | 利用分区多跳网络的裸片堆叠装置 |
US10708127B1 (en) * | 2017-12-29 | 2020-07-07 | Arista Networks, Inc. | Low-latency network switching device with latency identification and diagnostics |
CN112185440A (zh) * | 2019-07-05 | 2021-01-05 | 爱思开海力士有限公司 | 存储器接口、数据存储设备及其操作方法 |
WO2022041158A1 (zh) * | 2020-08-28 | 2022-03-03 | 华为技术有限公司 | 一种多芯片封装结构、交换机 |
WO2022041221A1 (zh) * | 2020-08-31 | 2022-03-03 | 华为技术有限公司 | 芯片及芯片封装 |
Non-Patent Citations (1)
Title |
---|
A. Shacham等.Photonic Networks-on-Chip for Future Generations of Chip Multiprocessors.IEEE Transactions on Computers.2008,第57卷(第9期),1246-1260. * |
Also Published As
Publication number | Publication date |
---|---|
CN115514704A (zh) | 2022-12-23 |
WO2024016825A1 (zh) | 2024-01-25 |
CN117424852A (zh) | 2024-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115514704B (zh) | 一种通信芯片及数据交换装置、交换设备 | |
CN106998302B (zh) | 一种业务流量的分配方法及装置 | |
US7106735B2 (en) | Multicast packet transfer system in which multicast packet is transmitted as unicast packet between transfer apparatuses | |
US9013994B2 (en) | Distributed chassis architecture having integrated service appliances | |
US5504743A (en) | Message routing | |
CN100591048C (zh) | 网络流量负载均衡的方法以及第三层交换设备 | |
US20060245422A1 (en) | Network fabric access device with multiple system side interfaces | |
JP2014511091A (ja) | Wanipバックボーンのための凝縮されたコアエネルギー効率の高いアーキテクチャ | |
RU2008105890A (ru) | Способ расширения физической области действия сети infiniband | |
US20230275832A1 (en) | Networking processor and network device | |
CN102111327A (zh) | 信元调度方法和系统 | |
CN115529269B (zh) | 一种通信芯片及数据交换装置 | |
CN102307141A (zh) | 报文转发方法和设备 | |
JPH0923233A (ja) | Atm交換機 | |
CN111434079B (zh) | 一种数据通信方法及装置 | |
CN101018187B (zh) | 一种支持以太网业务接入的多链路传输设备 | |
EP4270896A1 (en) | Switching system, switching network and switching node | |
CN101232510A (zh) | 一种多网口设备组播的实现方法及系统 | |
CN111865836B (zh) | 数据通信系统和方法 | |
US7046626B2 (en) | Switching devices | |
US5546386A (en) | Communication installation core asynchronous switching network | |
EP3846399B1 (en) | Spraying for unequal link connections in an internal switch fabric | |
US7602717B1 (en) | Efficient use of multiple port interfaces available on a network device supporting ATM | |
EP1835673B1 (en) | Network fabric access device with multiple system side interfaces | |
US7447206B1 (en) | PVC suited for supporting user applications with changing requirements |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |