CN108541365A - 用于交换机中拥塞信息的分发的设备和方法 - Google Patents

用于交换机中拥塞信息的分发的设备和方法 Download PDF

Info

Publication number
CN108541365A
CN108541365A CN201580085548.3A CN201580085548A CN108541365A CN 108541365 A CN108541365 A CN 108541365A CN 201580085548 A CN201580085548 A CN 201580085548A CN 108541365 A CN108541365 A CN 108541365A
Authority
CN
China
Prior art keywords
port
congestion information
bus
row
congestion
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.)
Granted
Application number
CN201580085548.3A
Other languages
English (en)
Other versions
CN108541365B (zh
Inventor
A.S.郑
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN108541365A publication Critical patent/CN108541365A/zh
Application granted granted Critical
Publication of CN108541365B publication Critical patent/CN108541365B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Bus Control (AREA)

Abstract

提供了与在交换机中分发拥塞信息关联的设备和方法。在实施例中,交换机包含布置在多个行和多个列中的多个端口。交换机进一步包含多个菊花链总线,各个菊花链总线采用菊花链将相应行的端口相互耦合。交换机进一步包含多个列总线,各个列总线将多个端口中的单个端口耦合到相应列的其它端口。相应行的各个端口经由相应菊花链总线接收来自行的其它端口的拥塞信息,并且经由相应列总线向相应列的其它端口传递拥塞信息。其它实施例可以被描述和/或要求。

Description

用于交换机中拥塞信息的分发的设备和方法
技术领域
本公开涉及联网领域。更具体地说,本公开涉及在交换机中分发拥塞信息。
背景技术
本文中提供的背景描述是为了概括地呈现本公开的上下文。除非本文中另有指示,否则,此部分中描述的材料不是本申请的权利要求的现有技术,并且未由于包含在本部分中而被承认是现有技术。
交换机一般包含多个端口,其中各个端口具有输入端口和输出端口。在输入端口接收的自适应数据分组可被路由到多个输出端口之一。基于多个输出端口的拥塞级别,可确定选择的输出端口。
附图说明
结合附图,通过下面的详细描述,将容易理解实施例。为有助于此描述,相似的参考标号指示相似的结构元素。在附图的图中,以示例方式而不是以限制方式图示了实施例。
图1图示了根据各种实施例,带有本公开的拥塞信息分发技术的交换机的框图。
图2图示了根据各种实施例,带有拥塞管理逻辑的交换机的端口的框图。
图3图示了根据各种实施例,在交换机的第一方向总线上的示例信号。
图4图示了根据各种实施例,在交换机的第二方向总线上的示例信号。
图5图示了根据各种实施例,在交换机的列总线上的示例信号。
图6图示了根据各种实施例,用于在交换机中分发拥塞信息的过程。
图7图示了根据各种实施例,适合于用于实践本公开的各种方面的示例计算系统。
图8图示了根据各种实施例,适合于用于实践本公开的各种方面的计算机可读介质。
具体实施方式
本文中提供了与在交换机中分发拥塞信息关联的设备和方法。在实施例中,交换机可包含布置在多个行和多个列中(例如,在片矩阵(tile-matrix)配置中)的多个端口。交换机可进一步包含多个菊花链总线,其中各个菊花链总线采用菊花链将相应行的端口相互耦合。交换机可进一步包含多个列总线,其中各个列总线将多个端口的单个端口耦合到相应列的其它端口。在各种实施例中,相应行的各个端口可经由相应菊花链总线来接收来自行的其它端口的拥塞信息,并且可经由相应列总线向相应列的其它端口传递拥塞信息。所描述的拥塞信息分发方案可提供用于交换机的每个端口的高效机制(在必需的传送线和等待时间方面),以接收与交换机的所有其它端口关联的拥塞信息。
在下面的详细描述中,对形成本文一部分的附图进行参考,其中通篇相似的标号指示相似的部分,并且其中通过图示的方式示出了可实践的实施例。要理解的是,在不脱离本公开的范畴的情况下,可利用其它实施例,并且可进行结构或逻辑上的更改。因此,下面的详细描述不要从限制意义采用,并且实施例的范畴由随附权利要求及其等效物所定义。
随附的描述中公开了本公开的方面。在不离开本公开的精神和范畴的情况下,可设计本公开的备选实施例及其等效物。应注意的是,下面公开的相似元素由图中的相似标号所指示。
各种操作可进而以对理解所要求的主题最有帮助的方式而被描述为多个离散动作或操作。然而,描述的顺序不应直译为暗示这些操作一定是顺序相关的。具体而言,可不以呈现的顺序来执行这些操作。操作可以与所述实施例不同的顺序来执行。可执行各种另外的操作,和/或可在另外的实施例中忽略所述操作。
为便于理解本公开,短语“A和/或B”意味着(A)、(B)或(A和B)。为便于理解本公开,短语“A、B和/或C”意味着(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。
描述可使用短语“在一实施例中”或“在实施例中”,其可各自指相同或不同实施例中的一个或多个。此外,如相对于本公开的实施例使用的术语“包括”、“包含”、“具有”及诸如此类是同义的。
在本文中使用时,术语“逻辑”可指的是以下组件的一部分或者包含其:执行一个或多个软件或固件程序的专用集成电路(ASIC)、电子电路、处理器(共享、专用或群组)和/或存储器(共享、专用或群组)、组合的逻辑电路、和/或提供所描述的功能性的其它适合组件。
图1图示了根据各种实施例,具有本公开的拥塞信息分发技术的交换机100。如所示,交换机100可包含布置在多个行和多个列中的多个端口102a-p。虽然在图1中示出了16个端口102a-p,但交换机100可包含任何适合数量的端口102a-p。例如,在一个实施例中,交换机100可包含64个端口102a-p。交换机100可将在单个端口102a-p接收的数据(例如,数据分组)路由到其它端口102a-p之一。在一些实施例中,交换机可以有能力从任何端口102a-p向其它端口102a-p中的任何端口路由数据。此外,相应行的各个端口可配置成经由菊花链总线高效接收来自行的其它端口的拥塞信息,并且向相应列的其它端口传递拥塞信息,下面将更完整描述。
在一些实施例中,交换机100可被耦合到多个节点(例如,处理器(未示出)),并且可用于在多个节点之间路由数据。在一些实施例中,多个交换机(例如,交换机100)可被相互耦合以形成构造(fabric)或网络,以便在多个处理器之间路由数据。构造或网络的多个交换机可被互连以在两个节点/处理器之间提供多个路由路径。
图2图示了根据各种实施例的端口200。端口200可对应于在各种实施例中的端口102a-p。端口200可包含输入端口202、输出端口204和拥塞管理逻辑206。输入端口202可包含输入队列208和路由选择逻辑210。输出端口204可包含输出队列212。
在各种实施例中,端口200的输入端口202可接收进入数据分组。输入端口202可进一步接收与数据分组关联的目的地本地标识符(DLID)。DLID可标识端口200要将数据分组路由到的目的地节点(例如,耦合到构造或网络的处理器之一)。在一些实施例中,DLID可被包含在数据分组中(例如,在数据分组的报头中)。
在各种实施例中,数据分组可以是要由交换机100自适应地路由的自适应数据分组。对于自适应数据分组,相应端口102a-p的多个输出端口204可以可用于将自适应数据分组路由到目的地节点。接收自适应数据分组的端口102a-p可选择要将自适应数据分组路由到的目的地端口102a-p。自适应数据分组不同于确定性数据分组,对于确定性数据分组,要将确定性数据分组路由到的目的地端口是预确定的,并且不可由交换机100改变。在实施例中,数据分组可包含指示符(例如,比特)以指示数据分组是自适应数据分组还是确定性数据分组。
在各种实施例中,端口200可基于与候选目的地端口关联的拥塞信息,来确定要将自适应数据分组路由到的目的地端口。拥塞管理逻辑206可接收指示与交换机的其它端口关联的相应拥塞级别的拥塞信息。例如,端口200的拥塞级别可基于输出端口204和/或输出队列212的拥塞(在输出队列中等待输出的数据分组的数量)。拥塞管理逻辑206可接收拥塞信息,和/或根据本文中描述的拥塞信息分发方案向其它端口分发其自己的拥塞信息。
在各种实施例中,路由选择逻辑210可确定可用于向目的地节点发送数据分组的一组候选输出端口。路由选择逻辑210可基于与候选输出端口关联的拥塞信息,来选择候选输出端口之一作为目的地端口。输入端口202可在输入队列208中缓冲数据分组,并且向目的地端口发送数据分组。数据分组可经由将交换机的端口相互耦合的数据总线(图1或图2中未示出),从输入端口202被路由到目的地端口。例如,数据总线可包含将相同行的端口相互耦合的行数据总线和将相同列的端口相互耦合的列数据总线。
目的地端口可接收数据分组,并且在目的地端口的输出队列208中缓冲数据分组。目的地端口的输出端口204可从输出队列212输出数据分组(例如,到目的地节点或耦合在交换机100与目的地端口之间的另一交换机)。
参考回图1,在各种实施例中,交换机100可包含采用菊花链将相同行的端口102a-p相互耦合的多个菊花链总线104a-d。例如,菊花链总线104a可采用菊花链将端口102a-d相互耦合。菊花链总线104a-d可用于将行的端口102a-p的拥塞信息分发到行的其它端口102a-p。在一些实施例中,各个菊花链总线104a-d可包含第一方向总线106a-d和第二方向总线108a-d。第一方向总线106a-d可在相应行中在第一方向中携带拥塞信息,并且第二方向总线108a-d可在相应行中在第二方向中(与第一方向相反)携带拥塞信息。
交换机100可进一步包含多个列总线110。各个列总线110可将单个端口102a-p耦合到相应列的所有其它端口102a-p。列总线110可以是“点对点”总线,其直接将该单个端口102a-p耦合到相应列的每个其它端口102a-p(例如,在不通过另一端口来路由的情况下)。在一些实施例中,列总线110可包含将该单个端口102a-p耦合到相应列的每个其它端口102a-p的单独传送线。在其它实施例中,如下面进一步所讨论的,列总线可以是菊花链总线以便采用菊花链将列的端口相互耦合。
在各种实施例中,相应行的各个端口102a-p可经由相应菊花链总线104a-d来接收来自行的其它端口102a-p的拥塞信息,并且可经由相应列总线110向相应列的其它端口传递行的拥塞信息。例如,端口102b可经由菊花链总线104a接收与端口102a、102c和102d关联的拥塞信息。端口102b可经由对应列总线110向端口102f、102j和102n发送端口102a、102b、102c和102d的拥塞信息。
在各种实施例中,第一方向总线106a-d、第二方向总线108a-d和/或列总线110可各自包含多个传送线以携带相应比特,其指示关联端口102a-p的拥塞级别。例如,在一些实施例中,端口102a-p的拥塞级别可由4个比特表示,并且第一方向总线106a-d、第二方向总线108a-d和列总线110可包含4个拥塞传送线以携带用于指示拥塞级别的相应比特。在其它实施例中,第一方向总线106a-d、第二方向总线108a-d和/或列总线110可包含多于或少于4个拥塞传送线。在一些实施例中,由多个比特指示的一个值可指示关联端口102a-p是在错误状态中,并且不能被用作用于输出数据的目的地端口。
在各种实施例中,第一方向总线106a-d、第二方向总线108a-d和/或列总线110可进一步包含用于携带成帧信号的成帧传送线。成帧信号可包含周期性脉冲以指示传送周期的开始(例如,行传送周期或列传送周期)。
在各种实施例中,在行传送周期的第一时钟周期期间,行中的第一端口(例如,端口102a)可在第一方向总线(例如,第一方向总线106a)上向行中的第二端口(例如,端口102b)传递拥塞信息。第一端口可还在第一时钟周期期间在第一方向总线上生成成帧脉冲。对于行中的第一端口,第一时钟周期可指在其中端口插入成帧脉冲的时钟周期,并且对于行中除第一端口外的端口,第一时钟周期可指在其中端口接收成帧脉冲的时钟周期。
第二端口可经由第一方向总线向行中的第三端口(例如,端口102c)传递成帧脉冲和用于第一端口的拥塞信息。第二端口可在第二时钟周期期间在第一方向总线上插入其自己的拥塞信息,第三端口可在第三时钟周期期间在第一方向总线上插入其拥塞信息,并以此类推。
类似的过程可在第二方向总线(例如,第二方向总线108a)上进行以在行上的第二方向中传递拥塞信息。在此情况下,行的最后端口(例如,端口102d)可生成用于第二方向总线的成帧脉冲。
图3和4分别图示了在包含行中的8个端口(P0-P7)的交换机(例如,交换机100)的第一方向总线和第二方向总线上的示例信号。例如,端口P0-P7可在行中按顺序排序,其中P0是最左的端口,并且P7是最右的端口。图3和4中的信号通过参考端口P4来示出。端口P0-P7可对应于图1中示出的行的端口(例如,端口102a-d、端口102e-h、端口102i-l和/或端口102m-p)。
参照图3,如所示的,端口P4可分别在时钟周期0-3期间在第一方向总线上接收端口P0-P3的拥塞级别。端口P4可另外在时钟周期0期间接收成帧脉冲。端口P4可在时钟周期4期间在第一方向总线上插入其自己的拥塞级别。从端口P4的角度而言,时钟周期5和6可以是空值。
下一传送周期可在时钟周期7开始。在时钟周期7中可传送成帧脉冲以指示下一传送周期的开始。端口P4可在时间周期7-10中分别接收端口P0-P3的更新的拥塞级别。端口P4可在时钟周期11中传送其更新的拥塞级别。
参照图4,如所示的,端口P4可分别在时钟周期0、1和2中在第二方向总线上接收端口P7、P6和P5的拥塞级别。端口P4可在时钟周期0期间接收成帧脉冲。端口P4可在时钟周期3期间在第二方向总线上插入其自己的拥塞级别。
图5图示了在包含行中的8个端口(P0-P7)的交换机(例如,交换机100)的列总线上的示例信号。端口P0-P7可对应于图1中示出的行的端口(例如,端口102a-d、端口102e-h、端口102i-l和/或端口102m-p)。信号可提供端口经由列总线被传送到相应列的所有其它端口。列总线可包含一个或多个拥塞级别传送线和成帧传送线。端口可(例如,在时钟周期0中)在成帧传送线上传送成帧信号(包含成帧脉冲)以指示传送周期的开始。端口可在一个或多个拥塞级别传送线上在传送周期的相应时钟周期中传送行中每个端口的拥塞级别(包含其自己的拥塞级别)。每个端口可接收来自其列中所有其它端口的类似传送,其指示相应列的端口的拥塞级别。来自列中其它端口的传送可经由列总线的单独传送线同时被传送。
例如,端口102c(对应于包含端口102a-d的行的P2)可经由相应列总线110向端口102c的列中的其它端口(例如,向端口102g、102k和102o)发送图5中示出的拥塞级别信号,以指示端口102a-d的拥塞级别。另外,端口102c可接收来自端口102g用于指示端口102e-h的拥塞级别的拥塞级别信号,来自端口102k用于指示端口102i-l的拥塞级别的拥塞级别信号,和来自端口102o用于指示端口102m-p的拥塞级别的拥塞级别信号。端口102c可经由列总线110的单独传送线同时接收来自端口102g、102k和102o的拥塞级别信号。以此方式,端口102c可高效地接收对于其它行的端口102e-p的拥塞信息。
另外,对于带有n列的交换机(例如,每行包含n个端口),每个端口可每n-1个时钟周期接收对于其行中每个端口的更新的拥塞信息,并且可每n个时钟周期接收对于其它行中每个端口的更新的拥塞信息。例如,对于带有8列的交换机,每个端口可每7个时钟周期接收对于其行中每个端口的更新的拥塞信息,并且可每8个时钟周期接收对于其它行中每个端口的更新的拥塞信息。在一些实施例中,交换机可包含与列的数量相同数量的行。在其它实施例中,交换机可包含与列的数量不同数量的行。
在各种实施例中,与要求每个端口与每个其它端口单独耦合的分发方案相比,本文中描述的拥塞信息分发方案可要求更少的传送线,同时仍使每个端口能以低等待时间和高频率来接收对于每个其它端口的拥塞信息。此外,本文中描述的拥塞信息分发方案不要求中央化拥塞管理器从每个端口收集信息并且随后向所有其它端口广播它。此类中央化拥塞管理器可从行和列布局要求端口的重新布置。
虽然参照包含点对点列总线的交换机描述了图5的实施例,但在其它实施例中,列总线可包含采用菊花链将列的端口相互耦合的菊花链总线。端口可使用与如本文中描述的用于在菊花链总线104a-d上向行的其它端口发送拥塞信息的技术类似的技术,向列中的其它端口发送对于相应行的拥塞信息。例如,列中的第一端口可在菊花链列总线上发送对于第一行的所有端口的拥塞信息。类似于图5中示出的拥塞级别信号,可按序列顺序发送对于第一行的各个端口的拥塞信息。第一端口可还生成并且在菊花链列总线上发送成帧信号。列中的第二端口可经由菊花链列总线向列中的第三端口传递从列中的第一端口接收的拥塞信息,并且可随后插入对于第二行中所有端口的拥塞信息。相比点对点列总线,菊花链列总线的使用可要求更少的传送线,但也可能增大在对于其它行的端口的拥塞信息的更新之间的时间期。
图6图示了根据各种实施例,用于在交换机(例如,交换机100)中分发拥塞信息的方法600。方法600可由交换机的第一端口(例如,端口102a-p和/或端口200)来执行。第一端口可以不是行中的第一个端口。例如,第一端口可以被耦合在行中的第二端口与第三端口之间。在一些实施例中,第一端口可包含上面存储有指令的一个或多个非暂态计算机可读介质或具有其访问权,所述指令在被执行时,促使第一端口执行方法600。
在框602,方法600可包含经由将行的多个端口(包含第一端口)相互耦合的菊花链总线,通过第一端口接收来自行的第二端口的第一拥塞信息,其中第一拥塞信息指示第二端口的拥塞级别。例如,拥塞信息可包含在相应传送线上用于指示第二端口的拥塞级别的多个比特。在一些实施例中,可在菊花链总线的方向总线(例如,第一或第二方向总线)上接收第一拥塞信息。
在框604,方法600可包含在第一时钟周期期间,通过第一端口经由菊花链总线向行的第三端口传递第一拥塞信息。
在框606,方法600可包含在第一时钟周期后的第二时钟周期期间,通过第一端口经由菊花链总线向第三端口传递第二拥塞信息,其中第二拥塞信息指示第一端口的拥塞级别。
在一些实施例中,第一端口可经由菊花链总线(例如,经由菊花链总线的第一和/或第二方向总线)接收来自行的所有其它端口的拥塞信息,并且方法600可进一步包含通过第一端口向第一端口所属的交换机的列的所有其它端口发送对于行的所有其它端口的拥塞信息。
尽管本文中参照接收对于行的其它端口的拥塞信息并随后向列的其它端口发送拥塞信息的端口而描述了拥塞分发技术,但将明白的是,行和列的定向可调换以便端口接收对于列的其它端口的拥塞信息并随后向行的其它端口分发拥塞信息。相应地,术语“行”和“列”无意分别限于水平定向和垂直定向。相反,行和列指通常相互正交的一系列端口的布置。
此外,尽管参照拥塞信息的分发描述了本公开的分发技术,但将明白的是,技术可用于向交换机的其它端口分发与各个端口关联的任何适合类型的端口信息。
图7图示了可适合于用于实践本公开的选择的方面的示例计算系统700(下文称为“系统700”)。如所示的,系统700可包含多个计算机701和耦合到计算机的构造或网络720。构造或网络720可包含相互耦合以在计算机701之间(例如,在计算机701的处理器702之间)路由数据的多个交换机730。交换机730的一个或多个可对应于本文中描述的交换机100和/或可执行本文中描述的方法600。
计算机701可被耦合到多个交换机730以在两个计算机701之间提供多个路由路径。虽然图7中只示出两个计算机701,但将领会的是,构造或网络720和/或交换机730可用于在包括多于两个计算机701的任何适合数量的计算机701之间路由数据。每个交换机730可包含拥塞管理逻辑740以执行本文中描述的拥塞信息分发过程的一个或多个方面。在一些实施例中,拥塞管理逻辑740可被包含在如更早所述的交换机730的各个端口中。
在一些实施例中,交换机730可被耦合到计算机701的通信接口710。备选地或另外地,交换机730可被耦合到单个计算机701的多个处理器702以在处理器702之间路由数据。在一些实施例中,交换机730可被包含在带有一个或多个处理器的相同封装中(例如,在芯片上系统(SoC)中)。
各个计算机701可包含一个或多个处理器或处理器核702、以及系统存储器704。为便于理解本申请,包含权利要求,除非上下文另有明确要求,否则,可将术语“处理器”和“处理器核”视为同义。另外,计算机701可包含海量存储装置706(诸如软盘、硬盘驱动器、紧致盘只读存储器(CD-ROM)等等)、输入/输出装置708(诸如显示器、键盘、光标控制等等)及通信接口710(诸如网络接口卡、调制解调器等等)。元素可经由可表示一个或多个总线的系统总线712被相互耦合。在多个总线的情况中,它们可通过一个或更多个总线桥(未示出)被桥接。这些元素中的每个可执行其在技术领域中所熟知的常规功能。在一些实施例中,计算机701可以是固定装置、移动装置或服务器。
如本领域技术人员将领会的,本公开可被实施为方法或计算机程序产品。相应地,除如更早所述在硬件中实施外,本公开还可采用完全软件实施例(包含固件、驻留软件、微代码等)或组合可全部通称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。此外,本公开可采用在任何有形或非暂态表达介质中实施的计算机程序产品的形式,所述介质具有在介质中实施的计算机可用程序代码。图8图示了可适合于用于存储指令的示例计算机可读非暂态存储介质,所述指令促使设备响应于由设备执行指令而实践本公开的选择的方面。如所示的,非暂态计算机可读存储介质802可包含多个编程指令804。编程指令804可配置成响应于编程指令的执行,使例如交换机100或交换机730的装置能执行本文中描述的拥塞信息分发过程(例如,相对于图1-5所描述的拥塞信息分发过程或图6的方法600)。在备选实施例中,编程指令804可转而被部署在多个计算机可读非暂态存储介质802上。在备选实施例中,编程指令804可被部署在诸如信号的计算机可读暂态存储介质802上。
可利用一个或多个计算机可用或计算机可读介质的任何组合。计算机可用或计算机可读介质例如可以是但不限于电子、磁、光、电磁、红外、或半导体系统、设备、装置、或传播介质。计算机可读介质的更具体示例(非穷尽列表)将包含如下:具有一个或多个导线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪速存储器)、光纤、便携式紧致盘只读存储器(CD-ROM)、光存储装置、诸如支持因特网或内联网的那些介质的传送介质或磁存储装置。注意,计算机可用或计算机可读介质甚至可以是其上打印了程序的纸张或另一适合介质,因为能够以电子方式经由例如纸张或其它介质的光扫描来获取程序,随后如果需要,则对其进行编译,解译,或否则以适合的方式进行处理,并且随后存储在计算机存储器中。在本文档的上下文中,计算机可用或计算机可读介质可以是能够含有、存储、传递、传播或传输程序以供指令执行系统、设备或装置使用或与其结合使用的任何介质。计算机可用介质可包含在基带中或者作为载波的一部分、其中实施有计算机可用程序代码的传播数据信号。可使用任何适当的介质来传送计算机可用程序代码,所述介质包含但不限于无线、有线、光纤线缆、RF等。
用于实行本公开的操作的计算机程序代码可以一种或多种编程语言的任何组合来编写,所述编程语言包含诸如Java、Smalltalk、C++或诸如此类的面向对象的编程语言以及诸如“C”编程语言或类似编程语言的常规规程编程语言。程序代码可作为独立软件包而部分在用户的计算机上、完全在用户的计算机上、部分在用户的计算机上并且部分在远程计算机上、或者完全在远程计算机上执行。在后一情形中,可通过包含局域网(LAN)或广域网(WAN)的任何类型的网络来将远程计算机连接到用户的计算机,或者可形成到外部计算机的连接(例如,通过使用因特网服务提供商的因特网)。
本公开参照根据本公开的实施例的方法、设备(系统)和计算机程序产品的流程图图示和/或框图来描述。将理解的是,流程图图示和/或框图中的每个框、以及流程图图示和/或框图中框的组合可通过计算机程序指令被实现。这些计算机程序指令可被提供到通用计算机、专用计算机和/或其它可编程数据处理设备的处理器以生产机器,使得经由计算机或其它可编程数据处理设备的处理器来执行的所述指令创建用于实现流程图和/或框图(一个或多个)框中指定的功能/动作的部件。
这些计算机程序指令也可被存储在能引导计算机或其它可编程数据处理设备以具体方式来运作的计算机可读介质中,使得存储在计算机可读介质中的指令生产包含指令部件的制品,所述指令部件实现在流程图和/或框图(一个或多个)框中指定的功能/动作。
计算机程序指令也可被加载到计算机或其它可编程数据处理设备上,以促使一系列操作步骤在计算机或其它可编程设备上执行,从而产生计算机实现的过程,使得在计算机或其它可编程设备上执行的指令提供用于实现流程图和/或框图(一个或多个)框中指定的功能/动作的过程。
下面提供各种实施例的一些非限制性示例。
示例1是一种交换机,包括:布置在多个行和多个列中的多个端口;多个菊花链总线,其中各个菊花链总线采用菊花链将相应行的所述端口相互耦合;以及多个列总线,其中各个列总线将所述多个端口中的单个端口耦合到所述相应列的其它端口;其中相应行的所述各个端口将经由所述相应菊花链总线接收与所述行的其它端口关联的拥塞信息,并且经由所述相应列总线向所述相应列的其它端口传递与所述行的其它端口关联的所述拥塞信息。
示例2是根据示例1所述的交换机,其中所述列总线包含单独传送线以将所述多个端口的所述单个端口耦合到所述相应列的每个其它端口。
示例3是根据示例1所述的交换机,其中所述多个行的第一行的第一端口将:经由所述多个菊花链总线的第一菊花链总线,接收来自所述第一行的第二端口的第一拥塞信息,所述第一拥塞信息用于指示所述第二端口的拥塞级别;以及经由所述第一菊花链总线向所述第一行的第三端口传递第二拥塞信息,所述第二拥塞信息包含第一拥塞信息和用于指示所述第一端口的拥塞级别的拥塞信息。
示例4是根据示例3所述的交换机,其中所述第一拥塞信息包含在所述菊花链总线的相应传送线上的第一多个比特,所述第一多个比特用于指示所述第二端口的所述拥塞级别,并且其中为向所述第三端口传递所述第二拥塞信息,所述第一端口将:在第一时钟周期期间在所述相应传送线上向所述第三端口传递所述第一多个比特;以及在所述第一时钟周期后的第二时钟周期期间,在所述相应传送线上向所述第三端口传递第二多个比特,所述第二多个比特用于指示所述第一端口的所述拥塞级别。
示例5是根据示例4所述的交换机,其中所述菊花链总线进一步包含成帧传送线以向所述第一行的所述端口传递成帧信号。
示例6是根据示例4所述的交换机,其中所述第一多个比特是4比特。
示例7是根据示例1到6中任一项所述的交换机,其中各个端口包含输出端口以及输入端口。所述输入端口包含路由选择逻辑以:接收具有用于指示所述数据分组的目的地的目的地本地标识符(DLID)的数据分组;确定与通过其所述数据分组能够到达所述目的地的所述交换机的其它端口关联的多个候选输出端口;以及基于从所述候选输出端口接收的拥塞信息,从所述多个候选输出端口选择目的地输出端口。
示例8是根据示例1到6中任一项所述的交换机,其中所述多个菊花链总线的各个菊花链总线包含用于在所述相应行中的第一方向中传递拥塞信息的第一方向总线和在所述相应行中的第二方向中传递拥塞信息的第二方向总线。
示例9是根据示例1到6中任一项所述的交换机,其中所述多个列由n个列组成,并且其中各个端口将每n-1个时钟周期接收对于相同行的另一端口的更新的拥塞信息,并且每n个时钟周期接收对于相同列的另一端口的更新的拥塞信息。
示例10是根据示例1所述的交换机,其中所述列总线包含菊花链总线以便采用菊花链来耦合列的端口。
示例11是一种用于在交换机中分发拥塞信息的方法,所述方法包括:经由将包含第一端口的行的多个端口相互耦合的菊花链总线,通过所述交换机的所述第一端口接收来自所述行的第二端口的第一拥塞信息,其中所述第一拥塞信息指示所述第二端口的拥塞级别;在第一时钟周期期间,通过所述第一端口经由所述菊花链总线向所述行的第三端口传递所述第一拥塞信息;以及在所述第一时钟周期后的第二时钟周期期间,通过所述第一端口经由所述菊花链总线向所述第三端口传递第二拥塞信息,其中所述第二拥塞信息指示所述第一端口的拥塞级别。
示例12是根据示例11所述的方法,其中所述接收来自所述第二端口的所述第一拥塞信息包含经由所述菊花链总线的第一方向总线来接收所述第一拥塞信息,并且其中所述方法进一步包含:经由所述菊花链总线的第二方向总线,通过所述第一端口接收来自所述第三端口、指示所述第三端口的拥塞级别的第三拥塞信息;在第三时钟周期期间,通过所述第一端口经由所述第二方向总线向所述第二端口传递所述第三拥塞信息;以及在所述第三时钟周期后的第四时钟周期期间,通过所述第一端口经由所述第二方向总线向所述第二端口传递所述第二拥塞信息。
示例13是根据示例11所述的方法,其中所述接收来自所述第二端口的拥塞信息包含在所述菊花链总线的相应传送线上接收多个比特,其中所述多个比特指示所述第二端口的所述拥塞级别。
示例14是根据示例13所述的方法,其中所述第二端口在所述行的一端,并且其中所述方法进一步包括通过所述第二端口生成所述菊花链总线的成帧传送线上的成帧信号以指示传送周期的开始。
示例15是根据示例11所述的方法,其中所述接收来自所述第二端口的所述第一拥塞信息进一步包含经由所述菊花链总线通过所述第一端口接收来自所述行的所有其它端口的拥塞信息;以及通过所述第一端口向所述第一端口所属的所述交换机的列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息。
示例16是根据示例15所述的方法,其中所述向所述列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息包含:经由将所述第一端口耦合到所述列的所述其它端口的各个端口的单独传送线,向所述列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息。
示例17是一种计算系统,包括:多个处理器;以及交换机,耦合到所述多个处理器以在所述多个处理器之间路由数据。所述交换机包括:布置在多个行和多个列中的多个端口,包含在第一行和第一列中的第一端口;多个菊花链总线,将所述多个行的相应行的所述端口相互耦合,其中各个菊花链总线包含第一方向总线和第二方向总线;以及多个列总线,其中各个列总线将所述多个端口的单个端口耦合到所述相应列的其它端口;其中所述第一端口将:经由所述第一行的所述第一方向总线,接收来自在第一方向中与所述第一端口相邻的第二端口,与在来自所述第一端口的所述第一方向中部署的所述第一行的其它端口关联的第一拥塞信息;以及经由所述第一行的所述第二方向总线,接收来自在第二方向中与所述第一端口相邻的第三端口,与在来自所述第一端口的所述第二方向中部署的所述第一行的其它端口关联的第二拥塞信息。
示例18是根据示例17所述的系统,其中所述第一端口将经由所述第一列的所述列总线向所述第一列的其它端口传递所述第一拥塞信息、所述第二拥塞信息和与所述第一端口关联的第三拥塞信息。
示例19是根据示例18所述的系统,其中所述列总线包含多个点对点传送线以向所述第一列的相应其它端口传递所述第一拥塞信息、所述第二拥塞信息和所述第三拥塞信息。
示例20是根据示例17所述的系统,其中所述第一端口将经由所述第一行的所述第一方向总线向所述第三端口传递所述第一拥塞信息和与所述第一端口关联的第三拥塞信息。
示例21是根据示例20所述的系统,其中所述第一拥塞信息包含在所述第一方向总线的相应传送线上的第一多个比特,所述第一多个比特用于指示所述第二端口的拥塞级别,其中所述第三拥塞信息包含第二多个比特,所述第二多个比特用于指示所述第一端口的拥塞级别,并且其中为向所述第三端口传递所述第一拥塞信息和所述第三拥塞信息,所述第一端口将:在第一时钟周期期间在所述第一方向总线的所述相应传送线上向所述第三端口传递所述第一多个比特;以及在第一时钟周期后的第二时钟周期期间在所述相应传送线上向所述第三端口传递所述第二多个比特。
示例22是根据示例21所述的系统,其中所述第一多个比特是4比特。
示例23是根据示例17所述的系统,其中所述交换机包含64个端口。
示例24是根据示例17到23中任一项所述的系统,进一步包括构造或网络,所述构造或网络包含与多个其它交换机耦合的所述交换机以在所述多个处理器之间路由数据。
图中的流程图和框图图示了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能性和操作。在此方面,流程图或框图中的每个框可表示代码的一部分、段、或模块,其包括用于实现指定逻辑的功能的一个或多个可执行指令。还应注意的是,在一些备选实现中,框中所示的功能可不以图中所示的顺序进行。例如,取决于所涉及的功能性,连续示出的两个框实际上可基本同时被执行,或者框可有时以相反的顺序被执行。还将注意到的是,框图和/或流程图图示的每个框和框图和/或流程图图示中框的组合能通过执行指定功能或动作的基于专用硬件的系统,或通过专用硬件和计算机指令的组合来实现。
本文中使用的术语只为了描述具体实施例,并无意于限制本公开。当在本文中使用时,除非上下文另有明确指示,否则,单数形式“一”、“一个”和“该”还旨在包括复数形式。将进一步理解,在本说明书中使用时,术语“包括”和/或“包含”规定了存在所陈述的特征、整数、步骤、操作、元素和/或组件,但是不排除存在或添加一个或多个其它特征、整数、步骤、操作、元素、组件和/或它们的组。
实施例可被实现为计算机过程、计算系统或实现为诸如计算机可读介质的计算机程序产品的制品。计算机程序产品可以是计算机系统可读并且对计算机程序指令进行编码以便执行计算机过程的计算机存储介质。
随附权利要求中的对应结构、材料、动作、和所有部件或步骤加功能元素的等效物旨在包含用于连同所特定要求的其他要求的元素来执行功能的任何结构、材料或动作。本公开的描述已被呈现以用于说明和描述的目的,但无意于是穷尽的或者限于采用所公开的形式的公开。在不脱离本公开的范畴和精神的情况下,许多修改和变化对于本领域技术人员而言将是显而易见的。为最好地解释本公开和实际应用的原理,并为使本领域其他技术人员能够针对带有如适于所设想的具体用途的各种修改的实施例来理解本公开,选取并描述了所述实施例。
本领域技术人员将明白,在不脱离本公开的精神或范畴的情况下,能够在公开的装置和关联方法的所公开实施例中进行各种修改和变化。因此,打算的是,假如修改和变化是在任何权利要求及其等效物的范畴内,则本公开将涵盖上面公开的实施例的修改和变化。

Claims (24)

1.一种交换机,包括:
布置在多个行和多个列中的多个端口;
多个菊花链总线,其中各个菊花链总线采用菊花链将相应行的所述端口相互耦合;以及
多个列总线,其中各个列总线将所述多个端口中的单个端口耦合到所述相应列的其它端口;
其中相应行的所述各个端口将经由所述相应菊花链总线接收与所述行的其它端口关联的拥塞信息,并且经由所述相应列总线向所述相应列的其它端口传递与所述行的其它端口关联的所述拥塞信息。
2.根据权利要求1所述的交换机,其中所述列总线包含单独传送线以将所述多个端口的所述单个端口耦合到所述相应列的每个其它端口。
3. 根据权利要求1所述的交换机,其中所述多个行的第一行的第一端口将:
经由所述多个菊花链总线的第一菊花链总线,接收来自所述第一行的第二端口的第一拥塞信息,所述第一拥塞信息用于指示所述第二端口的拥塞级别;以及
经由所述第一菊花链总线向所述第一行的第三端口传递第二拥塞信息,所述第二拥塞信息包含第一拥塞信息和用于指示所述第一端口的拥塞级别的拥塞信息。
4. 根据权利要求3所述的交换机,其中所述第一拥塞信息包含在所述菊花链总线的相应传送线上的第一多个比特,所述第一多个比特用于指示所述第二端口的所述拥塞级别,并且其中为向所述第三端口传递所述第二拥塞信息,所述第一端口将:
在第一时钟周期期间在所述相应传送线上向所述第三端口传递所述第一多个比特;以及
在所述第一时钟周期后的第二时钟周期期间,在所述相应传送线上向所述第三端口传递第二多个比特,所述第二多个比特用于指示所述第一端口的所述拥塞级别。
5.根据权利要求4所述的交换机,其中所述菊花链总线进一步包含成帧传送线以向所述第一行的所述端口传递成帧信号。
6.根据权利要求4所述的交换机,其中所述第一多个比特是4比特。
7. 根据权利要求1到6中任一项所述的交换机,其中各个端口包含:
输出端口;以及
输入端口,包含路由选择逻辑以:
接收具有用于指示所述数据分组的目的地的目的地本地标识符(DLID)的数据分组;
确定与通过其所述数据分组能够到达所述目的地的所述交换机的其它端口关联的多个候选输出端口;以及
基于从所述候选输出端口接收的拥塞信息,从所述多个候选输出端口选择目的地输出端口。
8.根据权利要求1到6中任一项所述的交换机,其中所述多个菊花链总线的各个菊花链总线包含用于在所述相应行中的第一方向中传递拥塞信息的第一方向总线和在所述相应行中的第二方向中传递拥塞信息的第二方向总线。
9.根据权利要求1到6中任一项所述的交换机,其中所述多个列由n个列组成,并且其中各个端口将每n-1个时钟周期接收与相同行的另一端口关联的更新的拥塞信息,并且每n个时钟周期接收与相同列的另一端口关联的更新的拥塞信息。
10.根据权利要求1所述的交换机,其中所述列总线包含菊花链总线以便采用菊花链来耦合列的端口。
11.一种用于在交换机中分发拥塞信息的方法,所述方法包括:
经由将包含第一端口的行的多个端口相互耦合的菊花链总线,通过所述交换机的所述第一端口接收来自所述行的第二端口的第一拥塞信息,其中所述第一拥塞信息指示所述第二端口的拥塞级别;
在第一时钟周期期间,通过所述第一端口经由所述菊花链总线向所述行的第三端口传递所述第一拥塞信息;以及
在所述第一时钟周期后的第二时钟周期期间,通过所述第一端口经由所述菊花链总线向所述第三端口传递第二拥塞信息,其中所述第二拥塞信息指示所述第一端口的拥塞级别。
12.根据权利要求11所述的方法,其中所述接收来自所述第二端口的所述第一拥塞信息包含经由所述菊花链总线的第一方向总线来接收所述第一拥塞信息,并且其中所述方法进一步包含:
经由所述菊花链总线的第二方向总线,通过所述第一端口接收来自所述第三端口、指示所述第三端口的拥塞级别的第三拥塞信息;
在第三时钟周期期间,通过所述第一端口经由所述第二方向总线向所述第二端口传递所述第三拥塞信息;以及
在所述第三时钟周期后的第四时钟周期期间,通过所述第一端口经由所述第二方向总线向所述第二端口传递所述第二拥塞信息。
13.根据权利要求11所述的方法,其中所述接收来自所述第二端口的拥塞信息包含在所述菊花链总线的相应传送线上接收多个比特,其中所述多个比特指示所述第二端口的所述拥塞级别。
14. 根据权利要求13所述的方法,其中所述第二端口在所述行的一端,并且其中所述方法进一步包括通过所述第二端口生成所述菊花链总线的成帧传送线上的成帧信号以指示传送周期的开始。
15.根据权利要求11所述的方法,其中所述接收来自所述第二端口的所述第一拥塞信息进一步包含经由所述菊花链总线通过所述第一端口接收来自所述行的所有其它端口的拥塞信息;以及
通过所述第一端口向所述第一端口所属的所述交换机的列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息。
16.根据权利要求15所述的方法,其中所述向所述列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息包含:经由将所述第一端口耦合到所述列的所述其它端口的各个端口的单独传送线,向所述列的所有其它端口发送来自所述行的所有其它端口的所述拥塞信息。
17. 一种计算系统,包括:
多个处理器;以及
交换机,耦合到所述多个处理器以在所述多个处理器之间路由数据,所述交换机包括:
布置在多个行和多个列中的多个端口,包含在第一行和第一列中的第一端口;
多个菊花链总线,将所述多个行的相应行的所述端口相互耦合,其中各个菊花链总线包含第一方向总线和第二方向总线;以及
多个列总线,其中各个列总线将所述多个端口的单个端口耦合到所述相应列的其它端口;
其中所述第一端口将:
经由所述第一行的所述第一方向总线,接收来自在第一方向中与所述第一端口相邻的第二端口,与在来自所述第一端口的所述第一方向中部署的所述第一行的其它端口关联的第一拥塞信息;以及
经由所述第一行的所述第二方向总线,接收来自在第二方向中与所述第一端口相邻的第三端口,与在来自所述第一端口的所述第二方向中部署的所述第一行的其它端口关联的第二拥塞信息。
18.根据权利要求17所述的系统,其中所述第一端口将经由所述第一列的所述列总线向所述第一列的其它端口传递所述第一拥塞信息、所述第二拥塞信息和与所述第一端口关联的第三拥塞信息。
19.根据权利要求18所述的系统,其中所述列总线包含多个点对点传送线以向所述第一列的相应其它端口传递所述第一拥塞信息、所述第二拥塞信息和所述第三拥塞信息。
20.根据权利要求17所述的系统,其中所述第一端口将经由所述第一行的所述第一方向总线向所述第三端口传递所述第一拥塞信息和与所述第一端口关联的第三拥塞信息。
21. 根据权利要求20所述的系统,其中所述第一拥塞信息包含在所述第一方向总线的相应传送线上的第一多个比特,所述第一多个比特用于指示所述第二端口的拥塞级别,其中所述第三拥塞信息包含第二多个比特,所述第二多个比特用于指示所述第一端口的拥塞级别,并且其中为向所述第三端口传递所述第一拥塞信息和所述第三拥塞信息,所述第一端口将:
在第一时钟周期期间在所述第一方向总线的所述相应传送线上向所述第三端口传递所述第一多个比特;以及
在第一时钟周期后的第二时钟周期期间在所述相应传送线上向所述第三端口传递所述第二多个比特。
22.根据权利要求21所述的系统,其中所述第一多个比特是4比特。
23.根据权利要求17所述的系统,其中所述交换机包含64个端口。
24.根据权利要求17到23中任一项所述的系统,进一步包括构造或网络,所述构造或网络包含与多个其它交换机耦合的所述交换机以在所述多个处理器之间路由数据。
CN201580085548.3A 2015-12-23 2015-12-23 用于交换机中拥塞信息的分发的设备和方法 Active CN108541365B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2015/000257 WO2017111780A1 (en) 2015-12-23 2015-12-23 Apparatus and method for distribution of congestion information in a switch

Publications (2)

Publication Number Publication Date
CN108541365A true CN108541365A (zh) 2018-09-14
CN108541365B CN108541365B (zh) 2021-07-13

Family

ID=59090990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580085548.3A Active CN108541365B (zh) 2015-12-23 2015-12-23 用于交换机中拥塞信息的分发的设备和方法

Country Status (3)

Country Link
US (1) US10728178B2 (zh)
CN (1) CN108541365B (zh)
WO (1) WO2017111780A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113505094A (zh) * 2021-09-06 2021-10-15 上海类比半导体技术有限公司 Mcu、主机与多个mcu传输数据的方法
WO2022193844A1 (zh) * 2021-03-15 2022-09-22 华为技术有限公司 集成电路、芯片和电子设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10778568B2 (en) * 2017-12-05 2020-09-15 Mellanox Technologies, Ltd. Switch-enhanced short loop congestion notification for TCP

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4665518A (en) * 1984-02-13 1987-05-12 Fmc Corporation Synchronous/asynchronous communication system
CN102057360A (zh) * 2008-11-19 2011-05-11 Lsi股份有限公司 使用自定时的时分复用总线的互连
US20140219097A1 (en) * 2009-02-17 2014-08-07 The Board Of Regents Of The University Of Texas System Method and apparatus for congestion-aware routing in a computer interconnection network

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108444A1 (en) * 2003-11-19 2005-05-19 Flauaus Gary R. Method of detecting and monitoring fabric congestion
US7830905B2 (en) * 2007-04-20 2010-11-09 Cray Inc. Speculative forwarding in a high-radix router
US8155608B2 (en) * 2009-07-24 2012-04-10 Futurewei Technologies, Inc. System and method for enhanced parallel receiving interworking in a wireless communications system
WO2011108174A1 (ja) * 2010-03-05 2011-09-09 パナソニック株式会社 中継器
US20140021909A1 (en) * 2012-07-19 2014-01-23 Barnesandnoble.Com Llc Charging case for electronic devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4665518A (en) * 1984-02-13 1987-05-12 Fmc Corporation Synchronous/asynchronous communication system
CN102057360A (zh) * 2008-11-19 2011-05-11 Lsi股份有限公司 使用自定时的时分复用总线的互连
US20140219097A1 (en) * 2009-02-17 2014-08-07 The Board Of Regents Of The University Of Texas System Method and apparatus for congestion-aware routing in a computer interconnection network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022193844A1 (zh) * 2021-03-15 2022-09-22 华为技术有限公司 集成电路、芯片和电子设备
CN113505094A (zh) * 2021-09-06 2021-10-15 上海类比半导体技术有限公司 Mcu、主机与多个mcu传输数据的方法
CN113505094B (zh) * 2021-09-06 2022-01-25 上海类比半导体技术有限公司 Mcu、主机与多个mcu传输数据的方法

Also Published As

Publication number Publication date
CN108541365B (zh) 2021-07-13
US10728178B2 (en) 2020-07-28
WO2017111780A1 (en) 2017-06-29
US20180375801A1 (en) 2018-12-27

Similar Documents

Publication Publication Date Title
CN105900080B (zh) 用于经由芯片内和芯片间跳跃总线在片上系统之内和之间传送信息的方法和装置
CN107040326B (zh) 用于百亿亿次级结构的时间同步的方法、装置和系统
US8819616B2 (en) Asymmetric mesh NoC topologies
US10031878B2 (en) Configurable mesh data bus in an island-based network flow processor
US9237095B2 (en) Island-based network flow processor integrated circuit
CN109408257A (zh) 用于片上网络noc的数据传输方法、装置及电子设备
CN108541365A (zh) 用于交换机中拥塞信息的分发的设备和方法
GB2366026A (en) Hardware controller
US20130215792A1 (en) Configurable Mesh Control Bus In An Island-Based Network Flow Processor
US20130219094A1 (en) Commonality of Memory Island Interface and Structure
CN105224501B (zh) 改进圆环面网络及其确定数据包传输路径的方法和装置
US9069649B2 (en) Distributed credit FIFO link of a configurable mesh data bus
US8929376B2 (en) Flow control using a local event ring in an island-based network flow processor
CN116915708A (zh) 路由数据包的方法、处理器及可读存储介质
CN107276920A (zh) 一种应用于混合三维片上网络的分布式流控系统及机制
CN205827367U (zh) 数据处理装置和服务器
US8559436B2 (en) Processing resource management in an island-based network flow processor
JP2004031898A (ja) デカルト座標を使用する、コアの間の通信のためのハブ/ルータ
CN109039846A (zh) 环形互联总线的避免死锁的方法、系统和跨环装置
Lee et al. Design of a feasible on-chip interconnection network for a chip multiprocessor (cmp)
US9774498B2 (en) Hierarchical asymmetric mesh with virtual routers
CN109791534A (zh) 可切换拓扑机器
Baby et al. Network on chip simulator: Design, implementation and comparison of Mesh, Torus and RiCoBiT topologies
US20130219102A1 (en) Local Event Ring In An Island-Based Network Flow Processor
Momeni et al. A low latency routing algorithm for irregular mesh network-on-chip

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