结合尽力服务和无争用的保证吞吐量的数据调度转让专利

申请号 : CN200380106595.9

文献号 : CN1729658B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : E·里克马

申请人 : NXP股份有限公司

摘要 :

一种数据交换设备具有针对所准许的吞吐量(GT)和尽力服务(BE)数据的输入、输出、相互连接输入和输出的数据开关、用于控制(GT)数据调度的(GT)控制装置和用于控制(BE)数据调度的(BE)控制装置。(GT)和(BE)控制装置被设置用于结合的控制,以致(BE)数据调度基于无争用的(GT)调度。

权利要求 :

1.一种数据交换设备,其包含:

保证吞吐量数据的输入数据流;

尽力服务数据的输入数据流;

针对保证吞吐量数据和尽力服务数据的数据开关输入端;

数据开关输出端;

用于相互连接数据开关输入端和数据开关输出端的数据开关;

结合控制装置,用于控制输入数据流到数据开关的数据调度,以致尽力服务数据调度基于无争用的保证吞吐量调度,所述结合控制装置包括:保证吞吐量控制装置,用于控制保证吞吐量数据调度,使其采用一个步骤来调度保证吞吐量数据,其中所述一个步骤包含至少一个数据开关输入端的预约和至少一个数据开关输出端的预约中的至少一个;

用于控制尽力服务数据调度的尽力服务控制装置;以及至少一个保证吞吐量输入缓冲器,其通过结合控制装置有选择地耦合至至少一个数据开关输入端,其中该至少一个保证吞吐量输入缓冲器是一个深度。

2.根据权利要求1所述的数据交换设备,其中所述数据交换设备具有同一个输出缓冲器,其既用于收集保证吞吐量数据又用于收集尽力服务数据。

3.一种数据交换方法,包括:

采用一个步骤来调度保证吞吐量数据,其中所述一个步骤包括输入端和/或输出端的预约;以及调度尽力服务数据来进行交换,其中,尽力服务数据调度基于无争用的保证吞吐量数据调度。

4.根据权利要求3所述的方法,其特征在于,尽力服务数据调度在保证吞吐量数据调度之后被执行。

5.根据权利要求3所述的方法,其中尽力服务数据调度一次或多次采用三个步骤,该三个步骤包含以下步骤:请求、准许和接受。

6.根据权利要求5所述的方法,其中,对于所述尽力服务数据调度的争用解决方案基于双向图匹配。

说明书 :

本发明涉及一种数据交换设备,该数据交换设备包含针对保证吞吐量和尽力服务数据的输入、输出、相互连接输入和输出的数据开关、被耦合用于控制保证吞吐量的数据调度的保证吞吐量的控制装置和被耦合用于控制尽力服务数据调度的尽力服务控制装置。

本发明也涉及一种数据交换方法。

这样的数据交换设备和方法从US-2001/0033581 A1中已知。该已知的数据交换设备包含高达四个服务质量级别中的数据的输入缓冲器。例如存在输入缓冲器,其属于所谓的保证带宽(也称为保证吞吐量(GT))级别和尽力服务(BE)级别。该已知的设备进一步包含也独立针对每个级别的输出缓冲器、针对每个级别的相互连接输入和输出缓冲器的数据开关、和用于分别控制输入数据包的GT和BE数据调度的GT数据控制装置和BE数据控制装置。已知设备的实施例中,该控制装置除引导读取顺序控制的优先级控制形式外还引导至少针对属于GT级别的数据的争用控制。在详细的也打算用于实现争用控制的实施例中,在GT数据调度之后执行BE数据调度,由此BE数据调度基于输入线和输出线,该输入线和输出线不是由保证带宽级别的数据包的调度来选择的。已知数据交换设备和方法的缺点是,多个级别、优先级、独立针对每个级别的输入以及输出缓冲器给软件和处理器控制的硬件大量的负担,该软件和硬件是用于控制、避免争用和调度各种级别的数据必需的。

本发明的目标是提供简化的数据交换设备和方法,其减轻所需软件和硬件的负担。

另外,根据本发明的交换设备的特征在于,保证吞吐量和尽力服务控制装置被设置为结合的控制,以致尽力服务数据调度基于无争用的保证吞吐量调度。

根据本发明的交换设备和方法的优点在于,从作为尽力服务数据调度的基础的无争用的保证吞吐量的数据调度开始,发现保证吞吐量的数据调度简单地形成尽力服务数据调度的边界条件。这样结合保证吞吐量和尽力服务调度。边界情况因此仅仅包含输入和输出线的一个步骤预约。这节省了数据交换设备中的硬件和软件以及控制的负担,但也缩短了等待时间,该等待时间被定义为数据包在数据交换设备中花费的时间。此外没有、更高或更低的软优先级必须被定义和处理,该软优先级甚至节省根据本发明的数据交换设备中的更多软件、硬件和相关控制。

在根据本发明的数据交换设备的实施例中,该数据交换设备具有针对至少一个数据开关输入的至少一个保证吞吐量的输入缓冲器。

该实施例提供关于每个数据开关输入保证吞吐量的输入缓冲器的数量的特定选择的提高的灵活性。

在根据本发明的数据交换设备的进一步的实施例中,至少一个保证吞吐量的输入缓冲器是一个深度(deep)。

保证吞吐量的数据调度可以被看作为固定的边界条件,其对于尽力服务调度具有绝对的优先,而不需额外的等待。事实上,保证吞吐量的数据交换具有外围电路的性质。

在根据本发明的数据交换设备的进一步的实施例中,该数据交换设备可以具有同一个输出缓冲器,其不仅用于收集保证吞吐量而且用于收集尽力服务数据。

有利地,针对保证吞吐量和尽力服务的相关数据均不需要独立的输入缓冲器和输出缓冲器,虽然两种类型的数据是通过数据开关独立路由的。

在根据本发明的方法的进一步的实施例中,尽力服务调度在保证吞吐量的调度之后执行。

保证吞吐量和尽力服务的调度是顺序执行的。

有利地在根据本发明的方法的仍进一步的实施例中,该保证吞吐量的数据调度仅仅采用一个步骤。这一步骤甚至可以简单包括该数据开关的输入和输出的预约。

在根据本发明方法的另一个进一步的实施例中,该尽力服务数据调度一次或多次采用三个步骤,其包含步骤:请求、准许和接受。

这组三个步骤,如果重复一次或多次可以导致提高的数据调度。

如果对于所述尽力服务数据调度的争用解决方案基于例如双向图匹配,则这是进一步有利的。

目前,根据本发明的数据交换设备和方法结合其另外优点被进一步阐述,同时参考附图,其中借助相同的参考标记来表示相似的部件。在附图中:

图1(a)示出根据本发明的数据交换设备的相关部分的示意图;

图1(b)以示范性的所谓双向图示出应用在图1(a)的数据交换设备中的数据开关的输入和输出之间的关系;以及

图2(a)、2(b)、2(c)和2(d)示出图1(b)的示范性的双向图的各种阶段。

在当前的片上系统和片上网络架构中,存在管理设计包含数亿个半导体部件的芯片的复杂性的挑战。主要因为费用和带宽原因,线路和总线不再适于处理在那些架构中所需的动态通信。类似例如保证业务或尽力服务(BE)业务的通信业务通过诸如图1(a)中所示的数据交换设备1提供相互连接。保证业务的实例是以下缩写为GT的保证吞吐量(也称为保证带宽)。GT业务需要针对最坏情况通信情形的资源预约,而BE业务可以被用于最小临界数据通信,但不根据吞吐量提供保证。在另一方面,BE数据通信可以具有比由所保证的业务提供的平均通信性能更好的平均通信性能。GT和BT业务都在目前灵活的数据交换设备1中需要。

如图1(a)中所示,数据交换设备1包含输入缓冲器2和3、和输出缓冲器4。输入缓冲器2打算用于GT数据而输入缓冲器3打算用于BE数据。在(未示出的)设备中,输入数据可被分为GT和BE数据。该输入缓冲器2和3被耦合在示意性示出的多路分解器(示为DEMUX)和多路复用器(示为MUX)之间。该数据交换设备1进一步包含相互连接输入缓冲器2、3和输出缓冲器4的数据开关5(也叫做例如纵横开关、路由器开关或交换矩阵)。另外,该数据交换设备1包含调度控制装置6(示为CONTROL),其被耦合到所述输入缓冲器2、3和输出缓冲器4以及数据开关5。该调度控制装置的一部分是GT控制装置6-1,用于控制数据开关5的GT数据调度;而该调度控制装置的另一部分是BE控制装置6-2,用于控制数据开关5的BE数据调度。每次该调度导致输入缓冲器2、3或者输出缓冲器4上的争用的缺少。争用指的是时机,其中多个数据项同时请求数据开关5的相同输入I1...I4(=输入争用)或者相同输出01...04(=输出争用)。

GT调度的起始点是这样的,以致预先假定GT数据交换调度自身没有争用。因为该调度通常包含三个阶段或步骤(其将稍后被阐述),那就是请求、准许和接受步骤,所以优点可通过这三个步骤减小为一个GT预约步骤的事实取自无争用的GT调度,该GT预约步骤优先于这三个BE调度步骤。因而由BE调度跟随的GT调度有利地仅仅一起采用四个步骤。特别是,GT控制装置6-1和BE控制装置6-2被设置用于结合的控制,以致BE数据调度基于无争用的GT调度。这均节约硬件和软件调度控制。由于GT是无争用的,在输出01...04和输出缓冲器处,这些针对GT和BE的输出缓冲器4也可以是同一个输出缓冲器4。该GT输入缓冲器可以被选择为仅仅一个深度,该深度再次节约硬件和软件调度控制,而且还最小化GT数据的等待时间。

一个例子将解释GT和BE的结合的或缠绕的调度。假定出于这个简单例子的目的如由图1(a)和1(b)示例的那样,路由器开关5的数量是四,即该开关具有四个输入(编号为I1...I4)和四个输出(编号为01...04)。该调度是这样的,以致GT控制装置6-1首先预约假设为输入I3和输出01之间的GT连接,如图2(a)中所示。由交叉的BE输入缓冲器3指示的情况将导致针对如图1(b)中示出的BE调度的所谓双向图,该情况意味着该缓冲器3填满数据,如在图1(a)中示意性示出的。例如输入缓冲器3中的3、2意味从输入I3到输出02的数据连接是想要的。在输入I1侧,三个BE输入缓冲器3将请求与输出01、02和03的数据通信。输入I2没有显示任何请求。输入I3将请求到输出02和04的数据通信,而输入I4仅仅请求数据传输到输出04。由于无争用的GT调度连接(由带圆圈的1指示),从输入I3到任何输出的任何BE请求被禁止。这意味在请求步骤中从输入I3到输出02和04的BE请求正被忽略,这简化BE调度,因为很小数量的输入必须在BE请求阶段期间考虑。下一个步骤是准许步骤,其中首先从输出01到任何输入的任何BE准许是禁止的,这再次简化进一步的BE调度,因为很小数量的输出必须在BE准许阶段期间针对BE调度被考虑。然后,下个步骤是BE接受步骤,其中借助实例接受输出02和输入I1之间的数据连接。以下,实际的GT和BE数据通信可以被实现。三个一组的步骤请求、准许和接受的可以被重复一次或多次,以便进一步提高调度。