CN101061690A - PCI Express总线中基于性能的分组排序 - Google Patents

PCI Express总线中基于性能的分组排序 Download PDF

Info

Publication number
CN101061690A
CN101061690A CNA2005800394356A CN200580039435A CN101061690A CN 101061690 A CN101061690 A CN 101061690A CN A2005800394356 A CNA2005800394356 A CN A2005800394356A CN 200580039435 A CN200580039435 A CN 200580039435A CN 101061690 A CN101061690 A CN 101061690A
Authority
CN
China
Prior art keywords
performance
grouped data
communication
agreement
rule
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
CNA2005800394356A
Other languages
English (en)
Other versions
CN101061690B (zh
Inventor
卡文·鲁克
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=35883459&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101061690(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN101061690A publication Critical patent/CN101061690A/zh
Application granted granted Critical
Publication of CN101061690B publication Critical patent/CN101061690B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种被实现用于分组数据通信控制的通信装置。根据本发明的示例实施例,例如PCI Express类型装置的通信装置(100)执行分离的仲裁功能(112、116、117、118)以对分组数据进行排序。一个仲裁功能(112)根据协议标准对分组数据进行排序(例如以PCI Express系统实现时要满足PCI Express标准)。其它仲裁功能(116、117、118)根据性能标准对分组数据进行排序,同时保持与协议标准的兼容。

Description

PCI Express总线中基于性能的分组排序
技术领域
本发明大体上涉及信息传递,更具体地涉及包括多个分组流的合并的信息的传递。
背景技术
针对多种目的,利用多种不同类型的设备和系统执行多种不同类型的电子通信。一种类型的电子通信系统包括与两个或多个不同组件之间基于分组的通信有关的通信。例如,计算机典型地包括通过总线与外设进行通信的中央处理单元(CPU)。指令和其它信息在CPU与外设之间的通信总线或其它链路上传递,而且通常使用分组数据流。
在典型的基于分组的高性能系统中,实现分组排序规则以确保精确的数据传输,并满足其它期望的性能特性。这些规则通常与具体的协议相关,这些规则的实施对于系统的连续且可靠的操作是重要的。
基于分组的系统的操作所面临的一个挑战涉及对多个分组流的处理。典型地,采用基于分组的通信的系统采用其上传递多个分组流的数据路径。当同时传送多个分组流时,这些分组流通常在数据路径中的特定点处合并,由此而沿着该数据路径传递。在数据路径中两个或更多个分组流合并的点将会是性能瓶颈。例如,合并分组流典型地涉及传递流的信道的使用。通常,当以多个信道实现时,将会出现数据冲突。另外,当被处理的数据量较大时,以及当对通信进行协调时需要遵循特定协议时,使用这种信道时的协调变得具有挑战性。
上文讨论的挑战与包括分组通信的多种通信方法有关。一种类型的基于分组的通信方法包括使用PCI(外围组件互连)系统。PCI是微处理器与附加设备之间的互连系统,其中扩展槽距离较近以便进行高速操作。使用PCI,计算机可以支持新的PCI卡,同时继续支持作为较早标准的工业标准结构(ISA)扩展卡。PCI被设计为独立于微处理器的设计,并与微处理器的时钟速度同步。PCI使用有源路径(在多站式总线上)来传输地址和数据信号,在一个时钟周期中发送地址,并且在下一个时钟周期中发送数据。PCI总线可以组装有适配器,其中所述适配器要求对彼此和/或系统存储器的快速访问,而且能够由主机处理器以接近于处理器的全部原始总线速度的速度来访问。利用突发传输来实现PCI总线上的读取和写入传输,即在第一周期中以发送地址而开始,并在特定数目的连续周期中发送数据序列。在起始器与目标设备之间协商突发脉冲的长度,并且该长度可以具有任意的长度。PCI类型的结构得到广泛使用,现在安装在多数桌面计算机上。
PCI Express结构展现出与PCI结构的相似性,具有某些改变。PCIExpress结构采用开关替代了PCI结构中的多站式总线,所述开关提供了输入-输出(I/O)总线的扇出(fan-out)。开关的扇出能力便于一系列的插入式高性能I/O的连接。所述开关是逻辑元件,可以在还包含主桥的组件中实现。PCI开关在逻辑上可以被看作是例如PCI-PCI桥的集合,其中一个桥是上游桥,经过其下游侧将专用本地总线与包括额外的PCI-PCI桥的组的上游侧相连。
在PCI Express类型的系统中传递的分组流通常如上文所述而合并,这会成为系统中的性能考虑。合并执行的速度和精度对PCIExpress类型的系统的操作产生影响。此外,分组流的处理必须与和PCIExpress相关的协议(或无论哪一个所实现的系统协议或标准)兼容。利用PCI Express系统,这些协议典型地规定了在合并分组流时应当使用的具体排序规则,以便遵守该协议(或标准)。与这些类型的协议兼容、同时实现期望的性能(例如相对低的等待时间和相对高的带宽)是一种挑战。
这些和其它限制提出了对基于分组的通信的实施方式的挑战,其中所述基于分组的通信具有多种通信方法,包括PCI Express通信方法。
发明内容
本发明的多个方面包括针对多个计算机电路和系统的通信方法,例如包括分组类型的通信,例如PCI型系统和其它。本发明以多个实施方式和应用为例,下文对其中的一些进行概括。
根据本发明的示例实施例,使用基于规则和基于性能的排序方法来处理基于分组的数据。根据分组和基于规则的处理而传送分组流。
在本发明的另一个示例实施例中,在采用基于规则的处理方法的系统中,基于协议规则的分组排序与基于性能的分组排序是分开地实现的。例如,当系统是PCI Express系统时,实现协议和其它规则以便对分组进行排序(以及处理)。基于性能的分组排序与基于规则的排序分开进行,同时满足PCI Express(或其它)系统所采用的协议和其它规则。
一种通信装置包括适于执行仲裁方案的分组处理器,其中所述仲裁方案用于针对基于协议和基于性能的排序的分离的信令方法。例如当合并或传送分组流时,实现所述分组处理器。在某些实例中,所述分组处理器使用仲裁方案来管理不同信道上的分组流通信以及任意相关的分组数据合并。
在一个实施方式中,所述分组处理器适于和特定的基于协议的系统一同使用,例如PCI Express类型的系统。所述分组处理器被编程用于:根据与基于协议的系统相关的协议,执行用于处理分组数据的仲裁方案,同时分开地执行基于性能的处理方法。例如,当传送多个数据流时,执行基于优先级或其它特性的通信方法以管理(例如选择)根据协议而处理分组的顺序。此外,在满足协议要求的同时,所述分组处理器还管理处理分组的顺序以满足特定性能标准,同时仍满足所述协议要求。
本发明的上述概述并不意欲描述本发明的每一个示出的实施例或每一个实施方式。下文的附图和详细描述更加具体地说明了这些实施例。
附图说明
结合附图,考虑下文对本发明多个实施例的详细描述,本发明将会得到更加完整的理解,其中:
图1A是根据本发明示例实施例的用于通信的装置,所述通信涉及在基于分组的系统中进行分组处理;
图1B是根据本发明另一个示例实施例的用于通信的装置,所述通信涉及在基于分组的系统中进行分组处理;
图2是根据本发明另一个示例实施例的方法流程图,所述方法用于在基于分组的系统中进行分组处理;
图3示出了根据本发明另一个示例实施例的分组通信接口300。
具体实施方式
虽然本发明可以经受多种修改和备选形式,作为示例在附图中示出了本发明的详细说明,并对其进行详细描述。然而应当理解的是,其意图并不是把本发明限制为所述具体实施例。相反,本发明将会覆盖落入本发明范围中的所有修改、等同物和备选,其中本发明的范围由所附权利要求限定。
本发明可以应用于涉及电子通信的多种电路和方法,尤其是涉及基于分组的信息的通信。虽然本发明不必限于这种应用,通过对这个环境中的示例进行讨论,可以获得对本发明各个方面的最佳理解。
根据本发明的示例实施例,一种通信方法包括在基于协议的系统中处理分组数据。根据分组仲裁方法对分组数据(包括例如来自源缓冲器组或目的缓冲器组的多个分组类型)进行排序,所述分组仲裁方法包括实施指定协议的排序规则,还包括以便于和该协议兼容的方式实施性能规则。在这点上,相对于用于具体通信方法的协议,能够实现由性能驱动的处理方法(例如独立地)。
在一个实施方式中,根据协议对分组数据流进行布置并在公共通信链路上传递。根据所述协议,对流中的分组数据相对于其它分组数据进行排序,从而在公共通信链路上传递。然后根据一个或多个基于性能的规则,对已排序的分组数据进一步进行排序,同时保持与对分组数据进行排序所根据的协议的兼容。
在一些应用中,在链路的接收端,对沿着分组通信链路(例如,如上所述)在排序装置中传递的分组数据进行排序。分组接收仲裁方法应用特殊协议的排序规则,而且还包括应用性能规则。例如,一旦如上文所述对分组数据进行了排序并将其沿着通信链路进行传递,那么通信链路接收点处的分组仲裁功能处理分组以向接收功能传递。
在一个实施方式中,不同的分组类型存储在接收点处分立的信道缓冲器中,每一个信道缓冲器都与特定的分组类型相关。协议仲裁功能为每一个缓冲器、或能够按照协议排序规则进行数据传输的多个缓冲器产生“有效”信号。然后,性能仲裁功能根据性能规则从这些“有效”信道中选择信道,以沿着该信道传递至接收功能。在一些应用中,单一的通信接口/链路装置既实现了上述仲裁方法,即对沿着链路传递的分组数据进行排序,还实现了分组接收仲裁功能(即该组合执行发送和接收功能两者)。
在另一个实施方式中,使用多个通信信道来传递分组数据流。协议和性能规则用于根据多种特性,例如目的地、源以及和分组数据有关的时戳特性,而选择传递分组数据的信道。在满足协议的同时,通过从这些被指示为有效的信道中选择信道(根据协议规则)而提高性能,从所选信道有效地针对具体应用而传递分组数据。另外,还以某种方式执行对信道上数据传递的管理,以减小或消除信道间的数据冲突。
在本发明的另一个示例实施例中,利用分立的协议功能和性能功能而实现基于协议的分组处理仲裁方法。所述协议功能产生特定通信链路上的分组流通信的控制(即信号),所述控制便于流的合并以及其它通信功能。性能功能还产生用于分组流通信的控制,所述控制便于特定的基于性能的功能,同时与所述协议功能控制一同保持与基于协议的规则的兼容。在这点上,由性能功能产生的控制便于对性能规则(方法)进行调整,而且不会冒违反协议的风险(例如一个块能够执行协议规则,而这些协议规则由具有不同性能要求的多个接口块重复使用)。这些控制被实现用于通信控制,例如用于控制通信链路中特定点处的分组数据合并。此外,所述控制可以选择性地(例如分开地)用于实现协议兼容和与性能有关的目标。
在一些实施方式中,协议功能适于和不同的性能功能一同实现,便于多种不同的基于性能的处理方法。例如,不同类型的数据或不同的数据通信装置和应用经常从不同类型的与性能有关的通信方法中获益。不同类型的分组数据(例如滞后请求、非滞后请求和完成)可以在信源与目的地之间传递。在这点上,性能功能与协议功能的分离能够使不同的基于性能的规则(功能)和公共协议功能以及公共分组处理仲裁器一同实现。此外,不同的性能功能可以和用于对特定分组流或多个流进行处理的具体协议功能一同实现。
在本发明的另一个示例实施例中,一种通信系统包括:与多个组件相连的通信链路;以及链路控制器(例如仲裁器),被配置用于控制通信链路上和/或多个组件之间的分组流通信。例如,使用软件方法来实现链路控制器,所述软件方法包括使用分离的协议和性能功能而产生控制的协议和性能仲裁器。所述协议功能根据系统通信协议而产生用于对分组流进行处理的控制信号。所述性能功能(或多个功能)产生控制信号,所述控制信号用于实现与分组流处理相关的、基于性能的特定条件。
在一个实施方式中,所述通信链路是被配置用于根据特定调整后的标准而操作的标准链路,所述标准具有特定的通信协议要求。所述协议功能根据协议而控制分组流的通信。此外,所述链路控制器实现了一个或多个性能功能和协议功能,同时保持与调整后的标准兼容。这个方法便于针对特定通信方法而定制性能功能,而不需把这些性能功能与协议功能进行整合。
在另一个实施方式中,根据PCI Express标准(上文所述)来配置通信链路,并利用PCI Express链路(例如总线或开关)来实现通信链路。根据PCI Express标准(或有关的/派生的标准)来实现PCI Express总线和通信系统的各个方面。协议功能被配置为与PCI Express协议兼容,并由分离的仲裁器与一个或多个性能功能一同实现。协议仲裁器使用PCI Express协议功能来控制分组数据流中分组数据的合并和有关排序,以遵守PCI Express标准。此外,性能仲裁器根据所选择的性能协议而控制分组数据的排序,同时遵守基于协议的排序所依据的PCIExpress协议。
关于与“PCI Express”应用一同实现和/或与“PCI Express”兼容而实现的上述功能(以及这里的其它功能),可以参考“PCI ExpressBase Specification Revision 1.0a”、2003年4月,它可以从PCI-SIG(PCI-专业组)of Portland,Oregon得到。与该PCI Express BaseSpecification兼容的方法可以被看作是“PCI Express-兼容”。
现在转向附图,图1A示出了根据本发明另一个示例实施例的PCIExpress分组通信接口100。PCI Express分组通信接口100包括分组源110和分组宿114功能,它们控制PCI Express链路130上传递的分组数据的呈现。分组源110和分组宿114分别实现分离的协议和性能仲裁器112和116,从而分别根据PCI Express和性能协议,对分组数据进行排序。
在输入信道120、122、124和126中的一个或多个信道上接收分组数据流。分组源110实现协议仲裁器112,以实施PCI Express BaseSpecification所规定的排序规则并,呈现(例如分配)“有效”信号,所述“有效”信号指示P/NP/CPL分组信道(信道120、122、124和126之一)具有满足PCI Express协议排序要求的有效分组。当排序规则允许一个信道中的分组向另一个信道传递分组时,利用同时发生的“有效”指示而指示多个信道可用。分组宿114实现性能仲裁器116,以选择从哪个有效信道接收分组。
取决于应用,源110和宿114使用多种方法中的一个或多个方法来实现仲裁器。在一些实施方式中,与性能仲裁器116一同,或作为性能仲裁器116的备选,选择性地实现例如仲裁器117和118的额外的性能仲裁器,每一个仲裁器的配置都针对与所选择的性能有关的通信特性而实现。
在另一个实施方式中,宿114实现性能仲裁器116,以使用每一个分组所提供的时戳信息而选择具有最早分组的信道(即在满足PCIExpress协议的有效分组之中)。就是说,在源110标记为有效的信道120、122、124和126中(根据协议仲裁器112所执行的PCI Express标准),宿114检查被指示具有有效分组的每一个信道上可用的分组数据的时戳。利用这种方法,不仅遵守了PCI Express协议,而且还确保首先传递最早的分组(从时戳上来看)。在这点上,这个方法可以和先来先服务(FCFS)分组处理一同使用。
在另一个实施方式中,通过宿114使用性能仲裁器116并基于具体分组通信的特性,为多个(有效)信道之一赋予优先级,从而实现了仲裁方案。例如,可以相对于以下一项或多项来赋予优先级:分组目的地(例如通过PCI Express链路130相连的设备)、分组源(输入信道上的设备)或信道缓冲器中的分组个数(例如相对于其它信道缓冲器队列的信道队列)。可以实现这些基于性能的优先级方案,而不必对源110使用协议仲裁器112所实现的协议排序规则进行改变或冒违反该规则的风险。
图1B是根据本发明另一个示例实施例的用于通信的装置105,所述通信涉及在基于分组的系统的接收端进行分组处理。图1B可以按照与图1A类似的方式而实现。图1V具有协议仲裁器152和性能仲裁器156-158,它们分别对分组数据执行协议排序和性能排序。
根据分组类型,在缓冲器172-178中对通过PCI Express链路接收到的输入分组数据170进行设置(例如每一个缓冲器存储特定分组类型)。虽然示出了4个缓冲器172-178,装置105可以实现大量的缓冲器和/或缓冲器类型,以满足具体的应用需求。
控制器150实现协议仲裁器152,它通过把缓冲器172-178中的一个或多个缓冲器分配为“有效”缓冲器而对分组进行排序。然后,控制器150实现一个或多个性能仲裁器156-158,以便从表示为“有效”的缓冲器172-178中选择一个或多个缓冲器,从其中把分组传递到接收功能。尽管图1B中没有示出,协议仲裁器152和性能仲裁器156-158可以被实现为分别与源块和宿块(例如图1A中的110和114)、而不是与控制器150进行通信。
在一个实施方式中,图1A和1B分别所示的装置100和105在公共通信链路上实现,图1A中的链路130和图1B中的链路170是同一个链路。在这点上,装置100是公共链路的发送部分,而装置105是公共链路的接收部分。示出了实现协议和性能仲裁器的每一个发送和接收部分,使用不同的协议和/或性能规则选择性地实现所述仲裁器。
在另一个实施方式中,图1A和1B分别所示的装置100和105实现为单一的通信装置,该装置具有双向PCI Express发射机/接收机功能。
图2是根据本发明另一个示例实施例的方法流程图,所述方法用于在基于分组的系统中进行分组处理。在块210处,从多个分组数据流(一个或多个信道上)中接收用于在基于协议的通信链路上传递的分组数据。例如,相对于其它数据流,同时接收每一个数据流中的一部分或全部,以及例如在多个信道上接收数据。在块220处,使用正在传送分组数据的特定系统的通信协议(或多个协议),产生用于在通信链路上传送分组数据的排序方案。例如,当使用PCI Express系统时,在块220处,将PCI Express通信协议(例如与分组排序优先级有关)用于对分组数据进行排序。排序方案分配用于传递每一个分组的具体顺序,从而在块230处,把具有准备传输(根据通信协议)的分组的每一个通信信道或多个信道标识为有效信道。
在块240处,在已经对分组数据进行排序、并且已经标识出一个或多个有效通信信道之后,调用(执行)基于性能的规则,重新分配用于传递分组数据的排序和/或通信信道,同时保持与块220和230处使用的协议的兼容。例如,性能协议可以实现例如目的地、源和/或时戳特性的特定分组特性,从而对在通信链路(例如开关、总线或仿真链路)上传递的分组进行排序。一个或多个重要性分级可以被分配给特定的分组特性,而且当对所传递的分组进行排序时,所述重要性分级用于对单独分组相对于其它分组的重要性进行衡量。
使用所产生的排序方案以及被标识有效的通信信道,根据基于性能的协议而产生基于性能的排序方案和信道选择。这些基于性能的协议可以独立于通信协议的实施方式而实现,从而在块240处可以针对不同的数据和/或通信方法而实现不同类型的基于性能的协议,同时使用公共通信协议。
一旦在块240处对分组数据进行排序并选择特定的通信信道后,在块250处,根据基于性能的排序方案和信道选择,在一个或多个通信链路(例如PCI Express链路)上传递分组数据。根据基于通信协议的排序方案执行这个分组数据的传递,因而便于和该通信协议兼容。
图3示出了根据本发明另一个示例实施例的用于通信的装置300,所述通信涉及在基于分组的系统中进行分组处理。分组处理装置310包括由控制器316(例如使用分离的协议和性能仲裁器)分别用于对通信链路330上的分组数据进行排序和传送的协议和性能功能312和314。分组处理装置310与主CPU320、存储器350以及一个或多个组件352(例如显示器或磁盘驱动器)相连。
链路330与开关332相连,而开关332又与包括设备340、342、344和346的多个设备相连。链路330和开关332可以一同实现,和/或利用通信协议(例如与PCI Express协议)来仿真。
当要通过通信链路330传递来自信源(例如来自存储器350)的分组数据时,控制器316通过协议仲裁方案实现协议功能,根据预定的协议规则对数据进行排序。然后,控制器316还通过与协议仲裁方案分离的性能仲裁方案来实现性能功能314,根据基于性能的规则进一步对数据进行排序。然后将根据协议功能排序并通过性能功能314进一步增强的数据传递给设备340-346中的一个或多个设备。
取决于应用,以多种方式来实现装置300。例如,当利用通用桌面/移动PCI Express计算方法来实现时,装置300提供I/O(输入/输出)互连功能,例如包括存储器和I/O桥以及PCI Express通信链路控制和/或仿真。当利用基于PCI Express的服务器/工作站或网络系统来实现时,装置300包括芯片组的实施方式,所述芯片组具有面向CPU组件、存储器组件和其它组件的通信链路,以及基于PCI Express的链路和相应的PCI Express通信链路控制和/或仿真。
上文所述以及附图所示的多个实施例仅提供作为演示,不应被解释为对本发明做出限制。基于上文的讨论和示出,本领域的技术人员可以容易地理解,可以对本发明做出多种修改和改变,不需要严格遵照这里示出和说明的典型实施例和应用。例如,使用相似的方法,可以实施除了PCI Express之外的协议。另外,一个或多个上述示例实施例和实施方式可以由多个PCI Express设备和其它方法来实现,包括芯片和印刷电路板(PCB)。上述示例实施例和实施方式还可以与多个电路、设备、系统和方法进行集成,包括与存储器、显示器、网络和移动通信一同使用的设备和方法。此外,在PCI和PCI Express类型应用的背景中所讨论的多个实施例可以使用多个设备和通信方法来实现,包括不一定用于PCI或PCI Express的设备和方法。这些方法与本发明的多个示例实施例一同实现。这些修改和改变不会背离所附权利要求中提出的本发明的真实精神和范围。

Claims (19)

1.一种用于对基于规则的系统中基于分组的通信进行管理的方法,所述方法包括:
根据遵从基于规则的系统的规则的协议,产生基于协议的排序配置(220),用于传递分组数据;
根据基于性能的规则和所产生的基于协议的排序配置,产生基于性能的通信顺序(240),用于传递分组数据;以及
根据基于性能的通信顺序,传递分组数据(250)。
2.根据权利要求1所述的方法,其中根据遵从基于规则的系统的规则的协议、产生基于协议的排序配置(220)、用于传递分组数据包括:使用第一仲裁器产生基于协议的排序配置;而且根据基于性能的规则和所产生的基于协议的排序配置、产生基于性能的通信顺序、用于传递分组数据包括:使用第二仲裁器产生基于性能的通信顺序。
3.根据权利要求1所述的方法,还包括:
接收所传送的分组数据;
根据遵从基于规则的系统的规则的协议,产生基于接收协议的排序配置,用于把所传送的分组数据传递给接收功能;
根据基于性能的规则和所产生的基于接收协议的排序配置,产生基于接收性能的通信顺序,用于把所传送的分组数据传递给接收功能;以及
根据所产生的基于接收性能的通信顺序,把所传送的分组数据传递给接收功能。
4.根据权利要求3所述的方法,其中根据遵从基于规则的系统的规则的协议、产生基于接收协议的排序配置、用于把所传送的分组数据传递给接收功能包括:使用第一接收仲裁器产生基于协议的排序配置;而且根据基于性能的规则和所产生的基于接收协议的排序配置、产生基于接收性能的通信顺序、用于把所传送的分组数据传递给接收功能包括:使用分离的第二接收仲裁器产生基于性能的通信顺序。
5.根据权利要求4所述的方法,其中产生基于协议的排序配置和基于性能的通信顺序以传递分组包括:使用被配置为执行协议和基于性能的规则的发射机;根据基于性能的通信顺序而传送分组数据包括:把分组数据传送至被配置为执行接收协议和基于接收性能的规则的接收机;而且产生基于接收协议的排序配置和基于接收性能的通信顺序包括:使用所述接收机。
6.根据权利要求5所述的方法,其中使用发射机和使用接收机包括:使用被配置有所述发射机和接收机的功能的集成通信装置。
7.根据权利要求1所述的方法,其中产生基于协议的排序配置包括:识别能够传送分组数据的输入信道;而且产生基于性能的通信顺序包括:从已识别的输入信道中选择至少一个信道来传送分组数据。
8.一种和基于协议的通信方法一同使用的通信装置,其中所述通信方法包括通信协议,所述通信装置包括:
通信链路(130),被配置且设置用于传送分组数据;
协议仲裁器功能(112),被配置且设置用于根据通信协议向分组数据分配通信优先级;
性能仲裁器功能(116、117、118),被配置且设置用于根据通信优先级和性能规则对通信链路上传送的分组数据进行排序;以及
控制器(114),被配置且设置用于根据分组数据排序而控制通信链路上的分组数据传递。
9.根据权利要求8所述的装置,其中所述协议仲裁器和所述性能仲裁器是分开实现的功能。
10.根据权利要求8所述的装置,还包括:承载分组数据的分组数据信道;其中,协议仲裁器功能被配置且设置用于:通过根据通信协议而选择有效的通信信道,向分组数据分配通信优先级;而且,通过根据性能规则从传送分组数据的有效信道中选择至少一个通信信道,性能仲裁器功能根据通信优先级和性能规则对在通信链路上传送的分组数据进行排序。
11.根据权利要求8所述的装置,其中性能仲裁器功能被配置且设置用于根据基于以下至少一项的性能规则,对通信链路上传送的分组数据进行排序:时戳、分组数据的源、分组数据的目的地以及可用于分组传送的特定信道的队列中的分组个数。
12.根据权利要求8所述的装置,其中性能仲裁器功能包括多个性能仲裁器功能,每一个功能被配置为:根据不同的基于性能的规则,产生基于性能的通信顺序。
13.根据权利要求8所述的装置,其中所述通信链路是PCI Express链路。
14.根据权利要求13所述的装置,其中所述通信链路是PCIExpress开关。
15.根据权利要求8所述的装置,其中所述通信链路是基于内部CPU的链路。
16.根据权利要求8所述的装置,其中所述通信链路是网络链路。
17.根据权利要求8所述的装置,还包括:
与通信链路相连的接收机,被配置且设置用于根据分组数据排序而接收通信链路上传递的分组数据;
接收协议仲裁器功能,被配置且设置用于根据通信协议向已接收的分组数据分配接收通信优先级;
接收性能仲裁器功能,被配置且设置用于根据接收通信优先级和基于性能的规则,对已接收的分组数据进行排序;以及
接收控制器,被配置且设置用于根据已接收分组数据的排序而控制把已接收分组数据传递给接收功能。
18.根据权利要求17所述的装置,其中所述接收机包括缓冲器,所述缓冲器被配置且设置用于存储来自通信链路的分组数据,每一个缓冲器存储特定类型的分组数据,而且所述接收控制器控制把已接收分组数据从缓冲器传递给接收功能。
19.根据权利要求18所述的装置,其中所述接收协议仲裁器被配置且设置用于:通过分配可以传送分组数据的有效缓冲器,根据通信协议向已接收的分组数据分配接收通信优先级;而且所述接收性能仲裁器功能被配置且设置用于:通过根据基于性能的规则选择可以传送分组数据的有效缓冲器之一,根据接收通信优先级和基于性能的协议,对已接收的分组数据进行排序。
CN2005800394356A 2004-11-18 2005-11-18 PCI Express总线中基于性能的分组排序 Expired - Fee Related CN101061690B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US62920604P 2004-11-18 2004-11-18
US60/629,206 2004-11-18
PCT/IB2005/053821 WO2006054266A1 (en) 2004-11-18 2005-11-18 Performance based packet ordering in a pci express bus

Publications (2)

Publication Number Publication Date
CN101061690A true CN101061690A (zh) 2007-10-24
CN101061690B CN101061690B (zh) 2011-04-13

Family

ID=35883459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800394356A Expired - Fee Related CN101061690B (zh) 2004-11-18 2005-11-18 PCI Express总线中基于性能的分组排序

Country Status (6)

Country Link
US (1) US7917680B2 (zh)
EP (1) EP1815663B1 (zh)
JP (1) JP2008521326A (zh)
KR (1) KR20070086352A (zh)
CN (1) CN101061690B (zh)
WO (1) WO2006054266A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602007008582D1 (de) * 2006-09-06 2010-09-30 Thomson Licensing Einrichtung zum verarbeiten eines stroms von datenwörtern
US7966440B2 (en) * 2007-05-14 2011-06-21 Ricoh Company, Limted Image processing controller and image forming apparatus
US8832331B2 (en) 2011-08-29 2014-09-09 Ati Technologies Ulc Data modification for device communication channel packets
US20130124764A1 (en) * 2011-11-11 2013-05-16 Lantiq Deutschland Gmbh Method of transaction and event ordering within the interconnect
CN104486097A (zh) * 2014-11-24 2015-04-01 大连梯耐德网络技术有限公司 基于广电网络的综合数据采集系统和方法
US10009291B1 (en) * 2015-12-21 2018-06-26 Amazon Technologies, Inc. Programmable switching fabric for dynamic path selection
US10341259B1 (en) 2016-05-31 2019-07-02 Amazon Technologies, Inc. Packet forwarding using programmable feature prioritization
CN108418776B (zh) * 2017-02-09 2021-08-20 上海诺基亚贝尔股份有限公司 用于提供安全业务的方法和设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6577596B1 (en) * 1999-11-30 2003-06-10 Telefonaktiebolaget Ln Ericsson (Publ) Method and apparatus for packet delay reduction using scheduling and header compression
US6941407B2 (en) * 2002-09-27 2005-09-06 Hewlett-Packard Development Company, L.P. Method and apparatus for ordering interconnect transactions in a computer system
CN1531282A (zh) 2003-03-12 2004-09-22 ���µ�����ҵ��ʽ���� 分组中继装置

Also Published As

Publication number Publication date
KR20070086352A (ko) 2007-08-27
US7917680B2 (en) 2011-03-29
US20090144478A1 (en) 2009-06-04
WO2006054266A1 (en) 2006-05-26
CN101061690B (zh) 2011-04-13
EP1815663A1 (en) 2007-08-08
EP1815663B1 (en) 2013-06-26
JP2008521326A (ja) 2008-06-19

Similar Documents

Publication Publication Date Title
CN101061690B (zh) PCI Express总线中基于性能的分组排序
US8051212B2 (en) Network interface adapter with shared data send resources
US6922408B2 (en) Packet communication buffering with dynamic flow control
CN113711173A (zh) 促进网络接口控制器(nic)中的数据请求管理的系统和方法
US8085801B2 (en) Resource arbitration
EP1706824B1 (en) Method and apparatus for shared i/o in a load/store fabric
EP2333671B1 (en) Inter-die interconnection interface
US20070098012A1 (en) Method and apparatus for shared i/o in a load/store fabric
CN1647054A (zh) 网络设备驱动体系结构
CN1608256A (zh) 使用多个消息组的计算机系统中的代理之间的通信消息请求事务类型
US20100057953A1 (en) Data processing system
CN1627728A (zh) 在计算机服务器中共享以太网适配器的方法和装置
CN101311915A (zh) 用于动态重分派虚拟通道资源的方法和系统
CN1879368A (zh) 利用有序的加锁机制来维护诸如分组之类的项目的次序
US7428239B1 (en) Apparatus and method for priority queuing with segmented buffers
CN1826768A (zh) 利用动态资源分配进行的大规模排队的可扩展方法
CN1324499C (zh) 处理不期望的完成分组和具有非成功完成状态的完成分组的方法
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
CN1622069A (zh) 实现多个主动装置对单一总线上从动装置进行存取的设备
CN1568462A (zh) 计算机系统的输入/输出节点
CN101309257A (zh) 一种基于内部集成电路总线的单板通信方法及系统
US20040017813A1 (en) Transmitting data from a plurality of virtual channels via a multiple processor device
US20170004104A1 (en) Usb switch and control method thereof
CN1252964C (zh) 帧管理方法及其交换器与网络架构
CN101044727A (zh) 使用直插式信用扩充器与主机总线适配器的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: NXP CO., LTD.

Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V.

Effective date: 20080404

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20080404

Address after: Holland Ian Deho Finn

Applicant after: Koninkl Philips Electronics NV

Address before: Holland Ian Deho Finn

Applicant before: Koninklijke Philips Electronics N.V.

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: 20110413

Termination date: 20151118

EXPY Termination of patent right or utility model