CN1741430B - 用于防止时隙环网络中匮乏的方法和设备 - Google Patents

用于防止时隙环网络中匮乏的方法和设备 Download PDF

Info

Publication number
CN1741430B
CN1741430B CN200510099434.2A CN200510099434A CN1741430B CN 1741430 B CN1741430 B CN 1741430B CN 200510099434 A CN200510099434 A CN 200510099434A CN 1741430 B CN1741430 B CN 1741430B
Authority
CN
China
Prior art keywords
time slot
node
reservation
ring
deficient
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.)
Expired - Fee Related
Application number
CN200510099434.2A
Other languages
English (en)
Other versions
CN1741430A (zh
Inventor
M·马蒂娜
G·克里索斯
Y·蔡
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 CN1741430A publication Critical patent/CN1741430A/zh
Application granted granted Critical
Publication of CN1741430B publication Critical patent/CN1741430B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/43Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/11Identifying congestion
    • 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/13Flow control; Congestion control in a LAN segment, e.g. ring or bus

Landscapes

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

Abstract

用于防止时隙环网络中匮乏的方法和设备。实施例可包括传送位的环互连和耦合到环互连的节点,位之一是时隙预约位,各节点包括匮乏检测元件和预约时隙供将来使用的时隙预约元件。在另外的实施例中,各节点也可包括跟踪该节点预约的时隙的位置的时隙跟踪元件。

Description

用于防止时隙环网络中匮乏的方法和设备
技术领域
一般来说,本发明的实施例涉及网络中的数据流控制,具体地说,涉及防止时隙环网络中的匮乏。
背景技术
网络是链接在一起的两个或两个以上节点的组合。网络中的流控制机构控制数据包从源节点到目的节点的传送。网络的一种类型是时隙环网络,其中存在绕圆形(或环)拓扑中的传输媒体旋转的固定数目的时间间隙(“时隙”)。传输媒体在这些时隙内把数据包从源节点运送到目的节点。如果时隙未运送有效数据包,则可称为“可用的”,如果它正在运送有效数据包,则可称为“忙”。若目的节点从时隙中取出数据包之后,该时隙变得可用,使得环上的另一个节点能够将数据包注入该时隙,则时隙环网络被说成呈现“空间再用”的特性。
在时隙环网络中,已经在环上的业务比正进入环的业务具有优先级。如果网络上的节点之一n由于环连续忙于运送数据包经过该节点n而重复未能将数据包注入环,则可将时隙环网络称为处于“匮乏”情况中。这种情况会无限期地持续,甚至可能阻止遭受匮乏的节点向前进行。
已在局域网(“LAN”)中使用的具有空间再用的时隙环网络实现了集中于维持公平的匮乏管理技术。这类公平方案确保为环网上的节点分配等量的环带宽。
发明内容
根据本发明的一个方面,提供一种网络,包括:传送多个位的环互连,其中位之一是时隙预约位;以及耦合到环互连的多个节点,其中各节点包括匮乏检测元件,所述匮乏检测元件包括计数器以记录所述节点不成功地尝试将数据包调度到环互连上的时隙的数量,其中如果所述计数器表明已进行了阈值数量的不成功尝试,则所述节点处于匮乏状态;和时隙预约元件,如果所述节点处于匮乏状态,则所述时隙预约元件预约环互连上的时隙以供节点将来使用。
在本发明的一个实施例中,各节点还包括跟踪时隙预约元件预约的时隙的位置的时隙跟踪元件。
在本发明的一个实施例中,时隙跟踪元件包括循环移位寄存器。
在本发明的一个实施例中,环互连包括多条线路,其中线路之一专用于传送时隙预约位。
在本发明的一个实施例中,环互连传送多个时隙内的多个位,其中时隙预约元件包括为时隙设置时隙预约位的逻辑。
根据本发明的另一方面,提供一种节点,包括:匮乏计数器,所述匮乏计数器记录将数据包调度到时隙环网络中的环互连中的时隙中的不成功尝试的次数;时隙预约元件,如果所述匮乏计数器表明已进行了阈值数量的不成功尝试,则所述时隙预约元件预约环互连中的时隙以供节点将来使用;以及时隙跟踪元件,所述时隙跟踪元件确定环互连中的时隙是否是预约的时隙。
在本发明的一个实施例中,如果节点成功地将数据包调度到时隙中,则复位匮乏计数器。
在本发明的一个实施例中,时隙跟踪元件包括循环移位寄存器。
在本发明的一个实施例中,节点还包括调度元件,如果另外的节点预约了时隙,则所述调度元件防止所述节点将数据包调度到时隙环网络中的所述时隙中。
根据本发明的另一方面,提供一种数据传输系统,包括:传送多个数据包的环互连,其中各数据包在具有时隙预约位的时隙中传送;以及耦合到环互连的多个节点,其中所述节点中至少一个包括匮乏检测元件,所述匮乏检测元件包括计数器以记录所述节点不成功地尝试将数据包调度到环互连上的时隙的数量,其中如果所述计数器表明已进行了阈值数量的不成功尝试,则所述节点处于匮乏状态;以及时隙预约元件,如果所述节点处于匮乏状态,则所述时隙预约元件预约时隙以供所述节点将来使用。
在本发明的一个实施例中,至少一个节点还包括跟踪预约的时隙的位置的循环移位寄存器。
在本发明的一个实施例中,所述系统在单个半导体芯片上实现。
在本发明的一个实施例中,所述节点中至少一个还包括处理器。
根据本发明的另一方面,提供一种数据传输方法,包括:在节点上确定,阈值数量的将数据包调度到时隙环网络中的时隙中的尝试由于所述时隙忙而不成功;预约时隙环网络中的时隙以供节点将来使用;以及将来自所述节点的数据包调度到所预约的时隙中。
在本发明的一个实施例中,确定阈值数量的调度数据包的尝试不成功包括将计数器存储的值与阈值数量进行比较,其中所述方法还包括如果调度数据包的尝试是成功的,则复位所述计数器。
在本发明的一个实施例中,预约所述时隙环网络中的时隙包括设置所述时隙内的时隙预约位。
在本发明的一个实施例中,预约所述时隙环网络中的时隙还包括跟踪所预约的时隙的位置。
根据本发明的另一方面,提供一种数据传输系统,包括:传送多个数据包的环互连,其中各数据包在多个时隙中的一个中传送;以及耦合到所述环互连的多个节点,如果阈值数量的调度数据包的尝试由于时隙忙而不成功,则各节点预约所述时隙之一以供所述节点将来使用。
在本发明的一个实施例中,各节点是处理器。
在本发明的一个实施例中,所述系统还包括耦合到所述节点之一的总线。
在本发明的一个实施例中,所述系统还包括耦合到所述总线的非易失性存储器。
在本发明的一个实施例中,所述系统还包括耦合到所述总线的外围设备。
根据本发明的另一方面,提供单个单片集成电路处理装置,包括:环互连结构;多个处理节点,所述多个处理节点中的每一个耦合到所述环互连结构,所述多个处理节点中的每一个具有环接口部分,以便提供所述处理节点到所述环互连结构的接入。
在本发明的一个实施例中,所述多个处理节点是多个同质的处理器核心。
在本发明的一个实施例中,所述多个处理节点是多个异质的处理器核心。
在本发明的一个实施例中,各环接口部分包括预约所述环互连结构上的时隙的时隙预约元件。
在本发明的一个实施例中,各环接口部分还包括匮乏检测元件。
在本发明的一个实施例中,所述多个处理节点包括高速缓存和多个处理器核心。
在本发明的一个实施例中,所述多个处理节点还包括图形处理节点。
附图说明
图1是依照本发明的实施例的时隙环网络的框图。
图2是表示依照本发明的实施例的环互连的更详细视图的框图。
图3是依照本发明的实施例的节点的框图。
图4是说明本发明的一个实施例的操作的流程图。
图5是说明本发明的一个实施例的操作的框图。
图6是实现本发明的一个实施例的系统的框图。
具体实施方式
本发明的实施例提供用于防止时隙环网络中匮乏的方法和设备。在一些实施例中,网络保证阻止节点将数据包注入环的时间不超过T个周期,其中T是设计的参数。在一些实施例中,如果节点由于不能将数据包注入网络而确定它处于匮乏状态,则该节点可预约网络上的时隙供将来使用。
图1是依照本发明的实施例的时隙环网络100的框图。图1显示在各种接入点或站点耦合到环互连110的多个节点130-160。术语“耦合”可包括直接连接和/或间接连接的项目。在其它实施例中,时隙环网络可具有或多或少的节点,节点的数量取决于设计实现。在一个实施例中,信息(例如,数据)包可沿顺时针或逆时针方向在环互连110上的节点130-160之间传播。虽然图1中示为椭圆形,但是环互连通常是不规则形状的。
图1中,数据包在一组时间间隙(“时隙”)111-114内在环互连110上传播。在其它实施例中,时隙环网络可具有或多或少的时隙,时隙的数量取决于设计实现。时隙的数量可等于或不等于网络中节点的数量。例如在系统时钟的控制下,各时隙可围绕环互连循环。例如,时隙113可通过节点150传播,然后通过节点160,然后通过节点130,然后通过节点140,然后再次通过节点150,然后再次通过节点160,然后再次通过节点130,等等。在图1所示的实施例中,各时隙沿顺时针方向传播,但在其它实施例中,时隙也可沿逆时针方向传播。如图1所示,时隙113当前位于节点150的位置。
时隙环网络上的各节点130-160通常可以既是源节点又是目的节点。在操作中,源节点(例如节点150)可在经过该节点的特定时隙(例如时隙113)内将数据包注入(即,“调度”)到网络上。该数据包则在该时隙内沿环互连110传播到目的节点(例如节点160),目的节点则可从环互连中接收数据包。
例如,各节点130-160可以是高速缓存体、存储接口、全局相干引擎接口、输入/输出接口、处理器核心、图形协处理器或任何其它逻辑块、核心、协处理器、功能单元等等,它们被设计成包括用于在时隙环网络上通信的接口(例如,在一些实施例中,任何数据包处理装置)。在一个实施例中,可在诸如处理器芯片的单个半导体芯片上实现时隙环网络100,并且节点130-160可为基于该单芯片的组件。在一个实施例中,可通过在逻辑上将单个大的共享高速缓存分成子集来将节点130-160实现为高速缓存体节点。在这个实施例中,各高速缓存体节点可包括单个高速缓存中地址空间的一部分,并且可独立服务于对单个高速缓存中地址空间部分的块请求(读、写、使无效等),各高速缓存体节点在互连110上具有其自己的接入点或站点。在其它实施例中,时隙环网络100也可为另外的配置,例如,诸如局域网(LAN)或广域网(WAN)的计算机网络。
在图1,环五连110可包括多个单向导线(图2所示)。在一个实施例中,第一组单向导线可在顺时针方向传送数据包并且第二组可在逆时针方向传送数据包。各组单向导线可为专用的(例如,发送地址命令)或通用的(例如,支持诸如地址请求、数据、高速缓存相干协议消息等的多个数据包类型)。或者,各组单向导线可被指定为传送单个数据包类型。或者,环互连110可包括能够在两个方向上传送数据包的多个双向导线。在这个实施例中,网络可包括将各导线切换到所期望方向的切换逻辑,以便在特定事务处理期间传送数据包。
环互连110可采用各种速率传送数据包。例如,环互连110可采用每个时钟周期一个或多个节点或者每两个或两个以上时钟周期一个节点的速率传送数据包。很多因素可决定传输速率,包括业务量、时钟速率、节点间的距离等。通常,节点等待将数据包调度到环互连110上,直到已经在环互连110上节点位置的任何数据包通过节点。
在一个实施例中,环互连在各时隙中发送多个位,并且在各时隙中的位之一是时隙预约位,它在时隙112中表示为时隙预约位123。
在一个实施例中,各节点130-160可包含匮乏检测元件(134、144、154、164)并且可包含时隙预约元件(136、146、156、166),这些在下面会详细描述。在其它实施例中,仅有一个时隙或时隙的子集可具有时隙预约位。
图2是表示依照本发明一个实施例的更详细的环互连视图的框图。图2示出图1的环互连110、时隙112和时隙113。图2把环互连110表示为包括多条线路,其中的线路201-204在图2示出。环互连可传送多个位,这些位可在时隙内传送。虽然图2中仅示出4条线路,但是环互连110可具有或多或少的线路,例如可具有512条线路。在图2所示的实施例中,线路204专用于传送时隙预约位,时隙预约位在时隙112中示为时隙预约位123。在其它实施例中,时隙预约位可在不是专用于该目的的线路上传送。在一个实施例中,可在具有时隙预约位的环互连110中的时隙内传送各数据包。如果预约了时隙供节点将来使用,则可设置时隙预约位,如果没有预约时隙,则可复位时隙预约位。
图3是依照本发明的实施例的节点150的框图。如图1和3所示,节点150可具有匮乏检测元件154和时隙预约元件156。如图3所示,节点150也可具有时隙跟踪元件158和调度元件153。如果为时隙设置了预约位并且如果那个节点没有预约时隙(即,因为另外的节点预约了该时隙),则调度元件153可防止那个节点将数据包调度到环网络中的时隙中。可将匮乏检测元件154、时隙预约元件156、时隙跟踪元件158和调度元件153实现为软件指令、硬件组件或二者的某种组合。
当时隙到达节点150时,如果时隙忙于传送目的地是另一节点的数据包,则节点150将数据包调度到时隙中的尝试可被认为是不成功的。在一个实施例中,匮乏检测元件154可包括计数器,该计数器计算节点150将数据包调度到环互连110中的时隙中的不成功尝试的次数。在一个实施例中,可将匮乏计数器初始化为某一值T,该值可以是匮乏阈值并表示在声明节点是匮乏之前会允许节点尝试调度到环上的次数。在一个实施例中,每次不成功的调度尝试导致匮乏计数器递减,并且每次成功调度到环上导致匮乏计数器复位到值T。如果并且当计数器达到0,则可认为节点处于匮乏状态。例如阈值可以等于128。
在一个实施例中,如果匮乏检测元件154确定已经进行了阈值数量的将数据包调度到环互连110上的不成功尝试,则时隙预约元件156预约环互连110上的时隙。例如,时隙预约元件156可包括逻辑,用于为到达的还没有设置其时隙预约位的第一时隙(例如时隙113)设置时隙预约位,因此预约该时隙供节点150将来使用。在一个实施例中,时隙跟踪元件158可确定环互连中的时隙是否是节点150已预约的时隙。例如,时隙跟踪元件158可包括循环移位寄存器,该寄存器通过将标记(即,值“1”)注入移位寄存器并且每当一周(即,每当时隙围绕环旋转)移动一位位置来跟踪节点150预约的时隙位置。在一个实施例中,移位寄存器等于环上站点的数量。在这个实例中,如果标记值在移位寄存器中环绕移位到对应于节点位置的点,则环互连上的当前时隙是预约的时隙。可以理解,跟踪、匮乏检测和时隙预约并不局限于本文所描述的机制。例如,跟踪可包括用于在网络中跟踪时隙的任何合适的机制。
在一个实施例中,时隙预约位防止任何节点(除将时隙预约位设置于时隙中的节点之外)将新数据包注入时隙,即使时隙是可用的。因此,在这个实施例中,由节点n设置在时隙s上的时隙预约位确保在时隙s的目的地d接收其中的数据包之后,节点d和节点n之间没有其它节点a会使用时隙s,即使时隙s是可用的。在这个实施例中,当时隙s再次到达n时,保证时隙s是可用的,因此节点n会将其数据包注入并清空时隙预约位。
图4是说明本发明的一个实施例的操作的流程图。例如,该方法可实现在如参照上面图1-3所描述的网络中。在图4示出的实例中,节点(例如节点150)可尝试将数据包调度到时隙环网络中的环互连中。根据本方法,节点可尝试将数据包调度到当前在该节点位置的(例如在环互连110上的)时隙中(401)。例如,节点150可尝试将数据包调度到时隙113中。
如果节点确定(402)时隙未忙于运送另一节点的数据包(例如,使用传统方法进行这种判定),则节点内的调度元件可确定(403)是否任何其它的节点已预约了该时隙供将来使用。例如,如果对该时隙设置环互连110上的时隙预约位,并且如果该节点没有设置那个位(即,如果它由另一节点设置),则节点可确定时隙已被预约。节点通过使用如上所述的时隙跟踪元件可跟踪哪个(如果有)时隙已被预约。如果时隙没被任何节点预约,则节点可将数据包调度到时隙中(404)并且可将诸如匮乏检测计数器的匮乏检测元件复位到阈值T(405)。因此,如果调度数据包的尝试是成功的,则可复位计数器。类似地,如果时隙已被当前尝试调度数据包的节点预约,则该节点可将数据包调度到预约的时隙中(404)并且可复位匮乏检测元件(405)。
如果节点确定(402)时隙忙于为另一节点运送数据包,则节点可确定该时隙是否已被预约(406),例如是否另一节点已设置了时隙预约位。在该实施例中,如果时隙的预约位已被设置,则节点不能设置该时隙上的预约位。如果时隙已被预约,则在示出的实施例中节点可等待下一个时隙(409),如下所述。如果时隙还没被预约,则节点可递减匮乏检测计数器(407)。如果节点确定(408)即使递减之后匮乏检测计数器还没有到达零,则节点会等待下一个时隙(例如时隙114)围绕环互连移位到该节点的位置(409)。在下一个时隙到达该位置之后,节点可尝试将数据包调度到那个时隙(401)并会重复该过程。
如果节点确定(408)递减之后匮乏检测计数器达到零,在这样的情况下可认为节点处于匮乏状态,因为阈值数量的将数据包调度到时隙环网络中时隙内的尝试是不成功的,则节点中的时隙预约元件可通过设置该时隙中的时隙预约位来预约该时隙供节点将来使用(410)。例如,时隙预约元件156可设置时隙预约位123。另外,时隙跟踪元件可记录已预约的时隙的位置,使得该时隙可被跟踪(411)。例如,时隙跟踪元件158可将时隙的位置记录为循环移位寄存器中的条目。在该实例中,每次环互连上的新时隙旋转经过该节点时,节点可将循环移位寄存器中的值移位。节点则可等待围绕环互连旋转到该节点位置的下一个节点(409),并且可尝试将数据包调度到该时隙(401)。
在一个实施例中,时隙的时隙预约位只能由设置该时隙预约位的节点清空。在这个实施例中,当具有其预约位设置的时隙到达已设置该预约位的节点时,该节点可将数据包调度到时隙(如果它具有等待要调度的数据包,如上参照403-405所述)并且可清空预约位,使得时隙可由另外的节点使用。在一个实施例中,已经为时隙s设置了时隙预约位的节点不调度到可用时隙t中,而是等待它预约的时隙(时隙s)到达。当s到达时,节点调度(如在正常情况下)并清空预约位。在另一个实施例中,节点会调度到第一个可用时隙中,但是当预约时隙到达该节点时会清空先前设置的时隙预约位。
在一个实施例中,在任何给定时间节点仅能具有单个预约的时隙。在备选实施例中,节点可预约多个时隙。在该备选实施例中,预约计数器可用于防止所有节点同时预约的总数量超出环上时隙的数量。
图5是说明本发明的一个实施例的操作的框图。图5包含图1的时隙环网络100的另一个实施例。在图5中,网络100包括互连110和如图1所示的节点130、140、150、160。另外,图5中的网络100也包含附加节点170、180、190和195。在图5中,互连110具有8个时隙(111、112、113、114、115、116、117和118)。在其它实施例中,网络100可包含或多或少的节点和/或时隙。
在一些实施例中,网络100可为多核心处理器,并且各节点可以是处理器的子组件。在一个实施例中,各节点可以是能够执行程序的处理器核心。在一个实施例中,所有的核心可为同质的(即,具有大致相同的处理功能和吞吐量),而在其它实施例中,核心可为异质的并且具有实质上不同的功能和/或吞吐量。
在图5,所有时隙当前在运送如下数据包:时隙111运送目的地为节点140的数据包611;时隙112运送目的地为节点195的数据包612;时隙113运送目的地为节点190的数据包613;时隙114运送目的地为节点160的数据包611;时隙115运送目的地为节点180的数据包615;时隙116运送目的地为节点150的数据包616;时隙117运送目的地为节点140的数据包617;时隙118运送目的地为节点140的数据包618。各时隙(111-118)也具有时隙预约位(分别为601-608)。其中,时隙111、112和114的时隙预约位被设置。
假设节点130已达到其匮乏阈值,因为T个时隙已到达节点130,但是这T个时隙的每一个均在为另外的节点运送数据包。还假设节点130已在时隙114(它现在向节点160运送数据包)上设置了时隙预约位。在节点160从时隙114中接收数据包之后,节点170、180、190和195都不能使用时隙(因为已设置了时隙预约位)并且节点130能够将其匮乏资源的数据包放入空时隙114中。
图6是实现本发明的一个实施例的系统的框图。在图6中,计算机系统600可包括一个或多个多处理器601-610,多处理器601-610耦合到处理器总线620,从而可耦合到系统逻辑630。一个或多个多处理器601-610中的每一个可以是N位处理器,并且可包括解码器和一个或多个N位寄存器。依照本发明的一个实施例,一个或多个多处理器601-610中的每一个可包括双向和/或单向的环互连(未示出)以便耦合到N位处理器、解码器和一个或多个N位寄存器。可调节互连和节点以防止如上所述的匮乏。
系统逻辑630可通过总线650耦合到系统存储器640,并且通过外围总线660耦合到非易失性存储器670和一个或多个外围设备680-689。外围总线660可表示例如1998年12月18日公开的修订版2.2的PCI特殊兴趣组(SIG)PCI局部总线规范的一个或多个外围部件互连(PCI)总线、工业标准结构(ISA)总线、BCPR Services Inc.1992年公开的版本为3.12,1992的EISA规范的扩展ISA(EISA)总线、1998年9月23日公开的版本为1.1的USB规范的通用串行总线(USB)和可比的外围总线。非易失性存储器670可为诸如只读存储器(ROM)或闪速存储器的静态存储器件。外围设备680-689可包括例如键盘;鼠标或其它定点装置;诸如硬盘驱动器、小型盘(CD)驱动器、光盘和数字视盘(DVD)驱动器之类的大容量存储装置;显示器等。在某些实施例中,可采用点到点的链接以耦合这些各种组件。例如,各处理器可具有多个端口,每个端口可连接到另外组件或总线代理上的单个其它端口。
可使用任何类型的计算机、例如根据实施例的讲述编程的通用微处理器实现本发明的实施例。本发明的实施例因此还包括机器可读媒体,机器可读媒体可包括用于对处理器编程以执行根据本发明实施例的方法的指令。该媒体可包括但不限于包括软盘、光盘和CD-ROM在内的任何类型的盘。
可以理解,可通过软件、硬件或它们的组合来实现本发明实施例的方法。也可以理解,用于实现本发明实施例的软件结构可采用任何期望的形式、例如单个或多个程序。
可以理解,所讨论的实例仅用于说明的目的,并不是要把配置限制在示出的配置。例如,环互连110可包括能够在单向或双向方向上传送数据包的一个或多个环结构。另外,在任何时间在两个节点之间可定位不止一个环时隙。相反地,在任何时间在两个环时隙之间可定位不止一个节点。取决于应用,数据包传送速率不需要限制在每时钟周期一个节点,但是可包括每个时钟周期多个节点或每多个时钟周期一个节点。
上面是某些实施例的详细描述。当然权利要求的范围也要涵盖除上面描述的那些内容及其等效物以外的其它实施例。

Claims (22)

1.一种网络,包括:
传送多个位的环互连,其中所述位之一是时隙预约位;以及
耦合到所述环互连的多个节点,其中各节点包括:
匮乏检测元件,所述匮乏检测元件包括计数器以记录所述节点不成功地尝试将数据包调度到环互连上的时隙的数量,其中如果所述计数器表明已进行了阈值数量的不成功尝试,则所述节点处于匮乏状态;以及
时隙预约元件,如果所述节点处于匮乏状态,则所述时隙预约元件预约所述环互连上的时隙以供所述节点将来使用。
2.如权利要求1所述的网络,其特征在于,各节点还包括跟踪所述时隙预约元件预约的时隙的位置的时隙跟踪元件。
3.如权利要求2所述的网络,其特征在于,所述时隙跟踪元件包括循环移位寄存器。
4.如权利要求1所述的网络,其特征在于,所述环互连包括多条线路,其中所述线路之一专用于传送所述时隙预约位。
5.如权利要求1所述的网络,其特征在于,所述环互连传送多个时隙内的多个位,其中所述时隙预约元件包括为时隙设置时隙预约位的逻辑。
6.一种节点,包括:
匮乏计数器,所述匮乏计数器记录将数据包调度到时隙环网络中的环互连中的时隙中的不成功尝试的次数;
时隙预约元件,如果所述匮乏计数器表明已进行了阈值数量的不成功尝试,则所述时隙预约元件预约所述环互连中的时隙以供所述节点将来使用;以及
时隙跟踪元件,所述时隙跟踪元件确定所述环互连中的时隙是否是预约的时隙。
7.如权利要求6所述的节点,其特征在于,如果所述节点成功地将数据包调度到时隙中,则复位所述匮乏计数器。
8.如权利要求6所述的节点,其特征在于,所述时隙跟踪元件包括循环移位寄存器。
9.如权利要求6所述的节点,其特征在于,所述节点还包括调度元件,如果另外的节点预约了时隙,则所述调度元件防止所述节点将数据包调度到所述时隙环网络中的所述时隙中。
10.一种数据传输系统,包括:
传送多个数据包的环互连,其中各数据包在具有时隙预约位的时隙中传送;以及
耦合到所述环互连的多个节点,其中所述节点中至少一个包括:
匮乏检测元件,所述匮乏检测元件包括计数器以记录所述节点不成功地尝试将数据包调度到环互连上的时隙的数量,其中如果所述计数器表明已进行了阈值数量的不成功尝试,则所述节点处于匮乏状态;以及
时隙预约元件,如果所述节点处于匮乏状态,则所述时隙预约元件预约时隙以供所述节点将来使用。
11.如权利要求10所述的数据传输系统,其特征在于,至少一个节点还包括跟踪预约的时隙的位置的循环移位寄存器。
12.如权利要求11所述的数据传输系统,其特征在于,所述系统在单个半导体芯片上实现。
13.如权利要求12所述的数据传输系统,其特征在于,所述节点中至少一个还包括处理器。
14.一种数据传输方法,包括:
在节点上确定,阈值数量的将数据包调度到时隙环网络中的时隙中的尝试由于所述时隙忙而不成功;
预约所述时隙环网络中的时隙以供所述节点将来使用;以及
将来自所述节点的数据包调度到所预约的时隙中。
15.如权利要求14所述的数据传输方法,其特征在于,确定阈值数量的调度数据包的尝试不成功包括将计数器存储的值与阈值数量进行比较,其中所述方法还包括如果调度数据包的尝试是成功的,则复位所述计数器。
16.如权利要求14所述的数据传输方法,其特征在于,预约所述时隙环网络中的时隙包括设置所述时隙内的时隙预约位。
17.如权利要求16所述的数据传输方法,其特征在于,预约所述时隙环网络中的时隙还包括跟踪所预约的时隙的位置。
18.一种数据传输系统,包括:
传送多个数据包的环互连,其中各数据包在多个时隙中的一个中传送;以及
耦合到所述环互连的多个节点,如果阈值数量的调度数据包的尝试由于时隙忙而不成功,则各节点预约所述时隙之一以供所述节点将来使用。
19.如权利要求18所述的数据传输系统,其特征在于,各节点是处理器。
20.如权利要求19所述的数据传输系统,其特征在于,所述系统还包括耦合到所述节点之一的总线。
21.如权利要求20所述的数据传输系统,其特征在于,所述系统还包括耦合到所述总线的非易失性存储器。
22.如权利要求20所述的数据传输系统,其特征在于,所述系统还包括耦合到所述总线的外围设备。
CN200510099434.2A 2004-08-25 2005-08-25 用于防止时隙环网络中匮乏的方法和设备 Expired - Fee Related CN1741430B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/924819 2004-08-25
US10/924,819 US7733898B2 (en) 2004-08-25 2004-08-25 Method and apparatus for preventing starvation in a slotted-ring network

Publications (2)

Publication Number Publication Date
CN1741430A CN1741430A (zh) 2006-03-01
CN1741430B true CN1741430B (zh) 2011-06-22

Family

ID=35942976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200510099434.2A Expired - Fee Related CN1741430B (zh) 2004-08-25 2005-08-25 用于防止时隙环网络中匮乏的方法和设备

Country Status (2)

Country Link
US (1) US7733898B2 (zh)
CN (1) CN1741430B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7760669B2 (en) * 2006-06-27 2010-07-20 International Business Machines Corporation Method and apparatus for preventing starvation in a slotted ring data communications network
US7826399B2 (en) * 2006-06-27 2010-11-02 International Business Machines Corporation Structure for preventing starvation in a slotted ring data communications network
CN101459566B (zh) * 2007-12-14 2011-04-20 华为技术有限公司 一种时隙环网的时隙调度方法和网络设备
US8693319B2 (en) * 2008-09-25 2014-04-08 Intel Corporation Scheme for avoiding deadlock in multi-ring interconnect, with additional application to congestion control
WO2010087308A1 (ja) * 2009-02-02 2010-08-05 日本電気株式会社 通信ネットワーク管理システム、方法、プログラム、及び管理計算機
EP2266810B1 (de) 2009-06-25 2013-10-16 Bayer Intellectual Property GmbH Verfahren und Herstellung einer bedruckten dreidimensional gekrümmten Kunststoffscheibe
US8850095B2 (en) * 2011-02-08 2014-09-30 International Business Machines Corporation Livelock prevention mechanism in a ring shaped interconnect utilizing round robin sampling
US9143984B2 (en) 2012-04-13 2015-09-22 Intel Corporation Mapping of enhanced physical downlink control channels in a wireless communication network
US20140082215A1 (en) * 2012-09-19 2014-03-20 Arm Limited Arbitrating between data paths in a bufferless free flowing interconnect
US8982695B2 (en) * 2012-09-29 2015-03-17 Intel Corporation Anti-starvation and bounce-reduction mechanism for a two-dimensional bufferless interconnect
US10949200B2 (en) * 2013-06-16 2021-03-16 President And Fellows Of Harvard College Methods and apparatus for executing data-dependent threads in parallel
US11671382B2 (en) * 2016-06-17 2023-06-06 Intel Corporation Technologies for coordinating access to data packets in a memory
CN108347366A (zh) * 2017-01-23 2018-07-31 华为技术有限公司 一种网络中控制数据传输的方法及装置
CN108400921B (zh) * 2017-02-04 2021-02-26 华为技术有限公司 一种非缓冲环状网络
US20210119812A1 (en) * 2020-12-23 2021-04-22 Intel Corporation Time-based multi-dimensional key recreation mechanism using puf technologies
US20230068740A1 (en) * 2021-08-30 2023-03-02 International Business Machines Corporation Reservation mechanic for nodes with phase constraints

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208805A (en) * 1989-12-27 1993-05-04 Kabushiki Kaisha Toshiba Method for controlling the communication priority of communication packets and exchange employing the method
US5465250A (en) * 1993-06-24 1995-11-07 National Semiconductor Corporation Hybrid loopback for FDDI-II slave stations
US5631906A (en) * 1993-03-11 1997-05-20 Liu; Zheng Medium access control protocol for single bus fair access local area network
US5878265A (en) * 1997-07-14 1999-03-02 Advanced Micro Devices, Inc. Data transfer network on a chip utilizing polygonal hub topology

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100269106B1 (ko) * 1996-03-21 2000-11-01 윤종용 멀티프로세서 그래픽스 시스템
GB0025297D0 (en) * 2000-10-14 2000-11-29 Ibm A network interface device
US6651158B2 (en) * 2001-06-22 2003-11-18 Intel Corporation Determination of approaching instruction starvation of threads based on a plurality of conditions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208805A (en) * 1989-12-27 1993-05-04 Kabushiki Kaisha Toshiba Method for controlling the communication priority of communication packets and exchange employing the method
US5631906A (en) * 1993-03-11 1997-05-20 Liu; Zheng Medium access control protocol for single bus fair access local area network
US5465250A (en) * 1993-06-24 1995-11-07 National Semiconductor Corporation Hybrid loopback for FDDI-II slave stations
US5878265A (en) * 1997-07-14 1999-03-02 Advanced Micro Devices, Inc. Data transfer network on a chip utilizing polygonal hub topology

Also Published As

Publication number Publication date
CN1741430A (zh) 2006-03-01
US20060045120A1 (en) 2006-03-02
US7733898B2 (en) 2010-06-08

Similar Documents

Publication Publication Date Title
CN1741430B (zh) 用于防止时隙环网络中匮乏的方法和设备
US10838787B2 (en) Processing system with interspersed processors with multi-layer interconnect
US5020020A (en) Computer interconnect system with transmit-abort function
US5187780A (en) Dual-path computer interconnect system with zone manager for packet memory
US5193149A (en) Dual-path computer interconnect system with four-ported packet memory control
EP0650117B1 (en) Counterflow pipeline
US4933933A (en) Torus routing chip
KR900006791B1 (ko) 패킷 스위치식 다중포트 메모리 n×m 스위치 노드 및 처리 방법
US7882278B2 (en) Utilizing programmable channels for allocation of buffer space and transaction control in data communications
US4482996A (en) Five port module as a node in an asynchronous speed independent network of concurrent processors
JPS58501742A (ja) デ−タ転送ネットワ−クのための直接メモリアクセス論理システム
US20050265238A1 (en) Flow control method and apparatus for single packet arrival on a bidirectional ring interconnect
EP0405208B1 (en) Multistage network with distributed pipelined control
JPH0720102B2 (ja) 衝突クロスバー交換機及びその動作方法
EP0104801B1 (en) Four way arbiter switch for a five port module as a node in an asynchronous speed independent network of concurrent processors
CN1957564B (zh) 环形互连上的分组的同步无缓冲流控制的方法和装置
US4484325A (en) Four way selector switch for a five port module as a node asynchronous speed independent network of concurrent processors
US6912608B2 (en) Methods and apparatus for pipelined bus
Kang et al. A fast, simple router for the Data-Intensive Architecture (DIVA) system
Ezz-Eldin et al. Network on Chip Aspects
JPS61294554A (ja) デ−タ伝送装置
BG60792B1 (bg) мултикомпютърна система

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110622

CF01 Termination of patent right due to non-payment of annual fee