CN1741430B - 用于防止时隙环网络中匮乏的方法和设备 - Google Patents
用于防止时隙环网络中匮乏的方法和设备 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 235000003642 hunger Nutrition 0.000 title abstract 3
- 230000037351 starvation Effects 0.000 title abstract 3
- 230000002950 deficient Effects 0.000 claims description 50
- 230000005540 biological transmission Effects 0.000 claims description 22
- 239000000700 radioactive tracer Substances 0.000 claims description 17
- 239000004065 semiconductor Substances 0.000 claims description 3
- 238000001514 detection method Methods 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 11
- 230000032258 transport Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 6
- 239000004020 conductor Substances 0.000 description 5
- 230000000644 propagated effect Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/43—Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/13—Flow 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所述的数据传输系统,其特征在于,所述系统还包括耦合到所述总线的外围设备。
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)
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)
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)
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 |
-
2004
- 2004-08-25 US US10/924,819 patent/US7733898B2/en not_active Expired - Fee Related
-
2005
- 2005-08-25 CN CN200510099434.2A patent/CN1741430B/zh not_active Expired - Fee Related
Patent Citations (4)
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 |