CN1320469C - 多功能处理机计算机系统中的连接线用转接输入/输出节点 - Google Patents

多功能处理机计算机系统中的连接线用转接输入/输出节点 Download PDF

Info

Publication number
CN1320469C
CN1320469C CNB028234421A CN02823442A CN1320469C CN 1320469 C CN1320469 C CN 1320469C CN B028234421 A CNB028234421 A CN B028234421A CN 02823442 A CN02823442 A CN 02823442A CN 1320469 C CN1320469 C CN 1320469C
Authority
CN
China
Prior art keywords
packet
upstream
bus
processor
transaction
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 - Lifetime
Application number
CNB028234421A
Other languages
English (en)
Other versions
CN1592895A (zh
Inventor
D·E·久利克
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of CN1592895A publication Critical patent/CN1592895A/zh
Application granted granted Critical
Publication of CN1320469C publication Critical patent/CN1320469C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • G06F13/40Bus structure
    • 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
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种在多处理器计算机系统中连接线用的交换输入输出节点。输入输出节点交换器包括执行于集成电路芯片上的桥接单元和分组总线交换器单元。桥接单元可接收多个从外围总线来的外围信息事项,并可发送多个对应于该多个外围信息事项的上游分组事项。分组总线交换器可接收于内部点至点分组总线链路上的上游分组事项,并可判定各上游分组事项的目的地。分组总线交换器可进一步路由传输选择的其中一个上游分组事项至耦接到第一点对点分组总线链路的第一处理器接口,并响应于判定各上游分组事项的目的地,而路由传输其它的上游分组事项至耦接到第二点对点分组总线链路的第二处理器接口。

Description

多功能处理机计算机系统中的连接线用转接输入/输出节点
技术领域
本发明是关于多处理器计算机系统输入输出节点,尤是关于交换输入输出节点。
背景技术
美国专利第6,085,276号案揭露一种多处理器计算机系统,包括具有一区域性9端口(port)交换器的节点,与处理器模块、内存模块、以及输入/输出(I/O)处理器(IOP)模块耦合,该IOP模块用以透过耦接的I/O总线控制外部装置与多处理器节点之间的数据传输。该等接介模块藉由对应数量的双向时脉递送的数据链路,连接至该区域交换器。区域交换器包括四分交换器地址(Quad Switch Address;QSA)控制芯片与四分交换器资料(Quad Switch Data;QSD)分切芯片。QSA芯片包括用以控制处理器模块、IOP模块、以及内存之间地址途径的仲裁器。另外,QSA芯片提供控制给QSD芯片,以控制透过区域交换器的资料流。虚拟信道用来传送包括多个事项的信息,各事项是分派至数个不同虚拟信道。使用虚拟信道能有助于维持数据一致性。
使用多个处理单元的计算机系统具有经济上的性能调整能力,该能力超越了现用的单一处理器基础系统者。在多处理环境内,对于使用单一的处理器并不集中所有的处理,该等处理任务可划分成由分离的处理器来处理的群组。整个处理负担因此分布于几个处理器之间,而此分布的任务可同时并行执行。操作系统软件将程序代码的各不同部分分成独立的可执行序,而一般对各执行序指定优先等级。
个人计算机(PC)和其它型式的计算机系统都已设计成共享总线系统用于处理内存。一个或更多个处理器以及一个或更多个输入/输出(I/O)装置可经由共享总线耦接至内存。输入/输出装置经由输入/输出桥接器可耦接到共享总线,该输入/输出桥接器处理共享总线和输入/输出装置之间的信息转换,虽然处理器一般直接耦接到共享总线或经由划分等级的高速缓存耦接到共享总线。以下配合着第1图先前技艺的描述而说明一种典型的多处理器计算机系统。
兹参照第1图,显示多处理器计算机系统的一个实施例的方块图。多处理器计算机系统包括处理器单元100A至100B、经由系统总线105耦接到处理器单元100A至100B的系统控制器110、和经由内存总线125耦接到系统控制器110的系统内存120。此外,系统控制器110经由输入/输出总线135耦接到输入/输出集线器(hub)130。
第1图的多处理器计算机系统有点如对称的形式,即所有的处理单元100A至100B可以共享相同的内存空间(即,系统内存120),并使用相同的地址写映来存取内存空间。多处理器系统更可由所有的处理单元100A至100B均等的共享存取输入/输出集线器130而呈现对称的形式。
一般而言,单一复制的操作系统软件和单一复制的各使用者应用档案可以于系统内存120内存取。各处理单元100A至100B可以由这些单一复制的操作系统软件和使用者应用档案而执行。虽然处理核心(图中未显示)可以同时执行码,但是应注意者于一指定的时间仅有处理单元100A至100B其中之一假定为系统总线105的主控者。因此,在系统控制器110内的总线仲裁机构可以提供处理单元100A至100B的同时发生总线请求时的仲裁,并根据预定的仲裁算法而允许处理单元100A至100B的其中一个为主控者。已知有许多种不同的仲裁技术。
除了任何由于系统总线仲裁而呈现的限制外,于上述第1图的计算机系统中所使用的共享总线(例如,系统总线105)可以忍受譬如限制频宽的缺点。当额外的处理器附加到共享总线时,多个附加物会表现出高电容性负载于在总线上驱动讯号的装置,而此多个附加点表现出对于高频的相当复杂的传输线模式。因此,也许会降低操作频率。
欲克服共享总线的一些缺点,一些计算机系统于装置和节点之间可以使用分组式通讯。于如此系统中,可藉由交换分组信息而使各节点之间可以彼此通讯。一般而言,″节点″为一个装置,基于互联机而能够参与信息事项(transaction,下文中简称″事项″)。举例而言,互联机可以是分组式的,而节点可以组构用来接收和发送分组。一般而言,″分组″为二个节点之间的通讯,此二个节点为:发送分组的起始或″来源″节点,和接收分组的目的地或″目标″节点。当分组到达目标节点时,目标节点接收由分组传送来的信息,并在内部处理此信息。位于来源和目标节点之间的通讯路径上的节点,可以将分组从来源节点转送或传送至目标节点。
兹参照第2图,显示具有交换至单一上游分组总线链路的多个下游分组总线链路的多处理器计算机系统。多处理器计算机系统200包括处理器201A和由系统总线202连接的处理器201B。处理器201B由分组总线链路205连接至输入/输出节点交换器210。输入/输出节点交换器210进一步经由第二分组总线链路215连接至输入/输出节点220。再者,输入/输出节点交换器210经由分组总线链路225连接至额外的输入/输出节点230。
应注意者处理器201A和处理器201B可与第1图的处理器101A和101B有实质相同的操作方法。然而,于第2图中的输入/输出连接方式不同。输入/输出节点交换器210可提供用来直接从处理器201A或201B通讯至输入/输出节点220或230其中之一的交换机构。于此种系统型式中,处理器201B包含主桥接器(图中未显示)可方便与输入/输出节点220或230的通讯。此外,处理器201A可经由处理器201B而与输入/输出节点220或230通讯。以此方式连接的系统,由于于第2图中使用了分组总线,虽然其仍有缺点,但是较第1图所示的多处理系统提供了较佳的多处理解决方式。举例而言,事项发出于或目标至处理器201A也许先要通过处理器201B,如此则可能招受耗费等待时间的代价。
发明内容
本发明揭示了于多处理器计算机系统中用于连接线的交换输入/输出(I/O)节点的各不同实施例。于一个实施例中,用于多处理器计算机系统的输入/输出节点交换器包括执行于集成电路芯片上的桥接单元。该桥接单元可耦接以从譬如PCI总线的外围总线接收多个外围事项(peripharal transaction),并可组构以传送对应于多个外围事项的多个上游分组事项(upstream packet transaction)。该输入/输出节点交换器亦包括执行于集成电路芯片的分组总线交换器单元,该分组总线交换器单元可耦接以接收于内部点对点分组总线链路的多个上游分组事项,并可组构以判定各多个上游分组事项的目的地。分组总线交换器单元可进一步组构以路由传输该多个上游分组事项中选择的其中数个至耦接于第一点至点分组总线链路的第一处理器接口,并响应于判定的各该多个上游分组事项的目的地,而路由传输其它的多个上游分组事项至耦接于第二点至点分组总线链路的第二处理器接口。
于一个特定的实施方式中,输入/输出节点交换器更进一步包括执行于集成电路芯片的第一收发器单元和第二收发器单元。该第一收发器单元可耦接以接收该多个上游分组事项的该选择的其中数个,并发送该选择的数个分组事项于第一点至点分组总线链路上。该第二收发器单元可耦接以接收该多个上游分组事项的选择的另外其中数个,并发送该选择的另外数个分组事项于第二点至点分组总线链路上。各点至点分组总线链路可以是超传输(HyperTransportTM)总线链路。
于一个特定的实施方式中,分组总线交换器单元可以组构成使用可编程查用表来判定各多个上游分组事项的目的地。
于另一个特定的实施方式中,分组总线交换器单元可以组构成使用对应于上游装置的有效的缓冲器空间计数,来判定各多个上游分组事项的目的地,该上游装置譬如为耦接至第一和第二外部分组总线链路的处理器。
又于另一个特定的实施方式中,分组总线交换器单元可以组构成译码关联于各多个上游分组事项的地址。于更进一步特定的实施方式中,分组总线交换器单元可以组构成依于地址而阻挡多个上游分组事项的额外的其中一个事项。
附图说明
第1图为使用共享总线的多处理器计算机系统的一个实施例的方块图。
第2图为具有交换至单一上游分组总线链路的多个下游分组总线链路的多处理器计算机系统的一个实施例的方块图。
第3图为具有多个上游分组总线链路的多处理器计算机系统的一个实施例的方块图。
第4图为输入/输出节点交换器的一个实施例的方块图。
第5图为输入/输出节点交换器的另一个实施例的方块图。
具体实施方式
虽然本发明可容易作各种的修饰和替代形式,然已用参考图式举例说明的方式而详细说明了本发明的特定实施例。然而,应嘹解到此处特定实施例的说明并不欲作为限制本发明为所揭示的特定形式,反的,本发明将涵盖所有落于所附权利要求书内所界定的本发明的精神和范围内的修饰、等效和替换。
兹参照第3图,显示具有多个上游分组总线链路的多处理器计算机系统的方块图。多处理器计算机系统300包括分别透过一对的输入/输出分组总线链路315A和315B耦接到输入/输出节点交换器装置310的处理器301A至301D。处理器301A至301D经由各自相干的分组总线链路305A至305D而耦接在一起。输入/输出节点交换器310显示连接至外围总线340和输入/输出链路345。输入/输出节点交换器装置310经由输入/输出分组总线链路325进一步耦接至输入/输出节点320。输入/输出节点320耦接至另一个输入/输出分组总线链路330,该输入/输出分组总线链路330可连接至另一个输入/输出节点(图中未显示)。值得注意的是考虑到于其它实施例中可包括与多处理器计算机系统300中所示组件不同的组构。举例而言,考虑到于其它实施例中,其它数目的处理器可透过额外的输入/输出分组总线链路(图中未显示)连接到输入/输出节点交换器310。此外,输入/输出链路345可连接到如多处理器计算机系统300的一些或不同网络内的装置。
于所示实施例中,相干分组总线305的各链路实施为各组的单向线路(例如,线路305B用来发送分组从处理器301A至处理器301B,而线路305C用来发送分组从处理器301B至处理器301C)。其它各组的线路305A和305D用来发送分组于其它处理器之间,如第3图中所示。相干分组接口305对于处理节点(″相干链路″)之间的通讯可操作于高速缓存相干方式。再者,输入/输出分组总线315可操作于非相干方式用于输入/输出节点之间通讯和输入/输出节点与譬如处理器301A(″非相干链路″)的处理器之间的通讯。非相干链路亦可执行作为各组的单向线路(例如,线路315A用来发送分组从处理器301A至输入/输出节点交换器310而线路315B用来发送分组从处理器301B至输入/输出节点交换器310)。经由相干链路的二个或多个节点的互联机可称的为″相干结构″。相似地,经由非相干链路的二个或多个节点的互联机可称的为″非相干结构″。值得注意的是,从一个处理器传送至另一个处理器的分组可通过一个或多个媒介节点。举例而言,由处理器301A传送至处理器301C的分组可通过处理器301B或处理器301D其中一个,如第3图中所示。可以使用任何适当的路由演算。如由围绕处理器301C至301D的虚线所表示,多处理器计算机系统300的其它实施例可包括较第3图中所示者更多或较少的处理器。
于所示实施例中,各处理器301A至301D为譬如AthlonTM微处理器的x86处理器架构处理器的例子。然而考虑到可以使用其它适当的处理器。此外,输入/输出分组总线链路315A至315B和325为高速点至点分组接口的范例链路,并可与HyperTransportTM技术兼容。再者,输入/输出链路345为譬如以太网或InfinibandTM连接线的范例连接线。举例而言,外围总线340为譬如外围组件互连(Peripheral ComponentInterconnect,PCI)总线,或延长外围组件互连(PCI-X)总线的任何适当的外围总线。
于譬如多处理器计算机系统300的多处理器计算机系统中,单一复制的操作系统软件和单一复制的各使用者应用档案可以储存在系统内存内(图中未显示)。各处理器301A至301D可以由这些单一复制的操作系统和使用者应用档案而执行,并可同时执行程序代码。
于所示实施例中,处理器301A至301B可以各包括主桥接器(图中未显示),分别包含连接至输入/输出分组总线链路305A和305B的接口。虽然考虑到于其它实施例中处理器301C和301D亦可以包括主桥接器,并连接至额外的输入/输出分组总线链路。将于下配合第4和第5图所示而作更详细的说明,输入/输出节点交换器310可以从下游来源接收多个分组事项,并路由传输这些事项至多个上游目的地,譬如处理器301A至301B。如此处所使用的术语″上游″意谓着参考事项流向譬如处理器301A的处理器,或在处理器内的主桥接器的方向。术语″下游″意谓着参考事项流向离开处理器,或在处理器内的主桥接器的方向。
一般而言,分组为二个节点之间的通讯(发送分组的起始节点和接收分组的目的地节点)。该起始节点和目的地节点可以与事项的来源和目标节点不同,该分组为事项的一部分,或其中一节点可以是来源节点或目标节点其中之一。控制分组为关于此事项的分组载送控制信息。某些控制分组指定随后的资料分组。资料分组载送对应于事项和对应于特定控制分组的资料。于一个实施例中,控制分组可以包括指令分组、信息分组和响应分组。值得注意的是于其它的实施例考虑到包括其它型式的分组。
举例而言,输入/输出节点交换器310可从譬如外围总线340、网络链路345和输入/输出分组总线325的多个下游来源接收上游分组事项。分组事项各可以一般包括在其内具有编码地址的头部。输入/输出节点交换器310可译码分组事项的各目的地地址,并依于译码的地址路由传输这些事项。输入/输出节点交换器310亦可接收从处理器301A至301D发源出的下游分组事项。输入/输出节点交换器310可再译码各分组事项的目的地地址,并由此路由发送分组事项。
兹参照第4图,显示输入/输出节点交换器的一个实施例的方块图。输入/输出节点交换器400包括一对分别耦接到输入/输出分组总线链路上的上游收发器410和420。举例而言,输入/输出分组总线链路401和402可以耦接至譬如第1图的处理器301A至301B的上游装置。第4图的收发器410和420亦分别经由内部分组总线链路415和425耦接至分组总线交换器430。分组总线交换器430经由内部分组总线链路435耦接至接口总线440。接口总线440经由内部分组总线链路445耦接至下游收发器480。收发器480耦接至输入/输出分组总线链路485,该输入/输出分组总线链路485可以连接至另一个输入/输出节点或其它的装置(图中未显示)。接口总线440亦耦接至输入/输出接口470,和耦接至外围接口450和460。外围接口450和460分别耦接至外围总线455和465。输入/输出接口470耦接至输入/输出链路475。值得注意的是虽然本实施例说明为连接至二个输入/输出分组总线链路的二个上游收发器,但是考虑到其它实施例中可以包含其它适当数目的耦接到其它适当数目的上游输入/输出分组总线链路的上游收发器。
应注意者输入/输出接口470可以是积体输入/输出控制器,并且亦可包括执行特殊输入/输出装置的电路,举例而言,譬如是GigabitEthernetTM控制器或InfinibandTM埠控制器。于此等实施例中,输入/输出链路475可以是一种譬如以太网或InfinibandTM连接的连接范例。外围总线455和465为任何适当外围总线,举例而言,譬如外围组件互连(PCI)总线,或延长外围组件互连(PCI-X)总线的任何适当的外围总线。
收发器410和420可组构成分别在输入/输出分组总线链路401和402上接收下游分组事项和发送上游分组事项。收发器410和420可包括接收和发送缓冲器电路(图中未显示)用来储存处理中的分组事项。收发器410和420亦可包括输入/输出驱动器电路(图中未显示)用来依于输入/输出分组总线链路401和402而发送分组事项。
分组交换器单元430可组构成依于内部分组总线链路435而接收上游分组事项,译码各事项的地址,并判定如果有的话则那一个上游路径路由传输各事项。将于下作更详细说明的,若指定的事项包含不相关于分组总线交换器430的其中一个上游内部分组总线链路的地址,则分组事项可下游发送回。或可取而代的,分组事项可上游发送而无关于是否地址是对应于任何的分组总线交换器430的上游内部分组总线链路。
接口总线440可包括须作各内部分组总线链路435和445、外围接口450和460、和输入/输出接口470互连的内部分组总线架构和电路(图中未显示)。举例而言,接口总线440可包括用于内部分组总线链路435、输入/输出接口470、外围接口450和460、和用于内部分组总线链路445的接口端口(图中未显示)。各接口端口可包括能够请求具有匹配特定的滤波器地址的指定的分组事项的地址滤波器。因此,接口总线440可组构成提供各外围接口、输入/输出接口和内部分组总线链路445之间的同等讯务支持。举例而言,指向外围接口460的分组事项藉由外围接口450上游发送至接口总线440。分组事项头部可由连接到接口总线440的各接口端口译码。经译码的地址仅匹配外围接口460的地址滤波器,并因此由外围接口460所请求使用。
由指定接口上游发送的分组事项可不匹配接口端口中的任何地址滤波器。于此情况中,分组总线交换器430可引发未经请求的分组事项下游回送到事项的来源者。此外,错误信息可伴随着事项指示该事项包含未存在的地址。
于一个替代实施例中,用于内部分组总线链路435的接口端口可不具有地址滤波器。于此种情况,分组总线交换器430可经由上游分组总线链路415和425的其中一个而上游发送所有的未经请求的分组事项。
分组总线交换器430可判定那一个上游分组总线链路发送特定的事项。判定可依于几个因素。于一个例子中,若上游事项是反应于先前的从譬如第1图的处理器301A至301D来的下游请求,则该反应可具有对应于请求的处理器的地址。分组总线交换器430可路由传输上游事项至正确的处理器。
于另一个范例中,上游事项是来自譬如PCI-X装置的主输入/输出,该PCI-X装置执行内存读取,分组总线交换器430可决定那一个处理器执行路由传输请求到何处。因此,分组总线交换器430可包括可程序的储存电路(图中未显示),该可程序的储存电路可储存检查表或储存可辨识那一个处理器将操作特定型式的事项的相似的数据结构。于此情况,操作系统可判定此种表的内容,并且使得一个或多个处理器执行指令来程序制作分组总线交换器430。因此,当由分组总线交换器430接收主输入/输出事项时,该表可由分组总线交换器430使用以判定分组事项将由那个处理器路由传输。
于检查表中的信息变得错误或非为现在所使用的情况时,依照操作系统,上游分组事项可送至错误的处理器。不正确地路由传输分组事项最终仍可到达其欲到达的目的地。然而,因为事项可首先经由另一个处理器路由传输,因此可能会发生延迟。欲妨止进一步不正确的路由传输,接收的处理器可起始错误信息。错误信息可通知操作系统检查表需要更新。然后操作系统可依照其自己的优先权规划而排程检查表更新。
或者,分组总线交换器430可组构来决定各处理器的输入/输出负载,并路由传输事项至判定有最小输入/输出负载的处理器。分组总线交换器430可藉由检核在特定的处理器主桥接器或其它的接收逻辑的接收缓冲器内储存空间的有效性而判定处理器的输入/输出负载。然后分组总线交换器430可路由传输分组事项至具有最有效接收缓冲器空间的处理器。
分组总线交换器430亦可组构以接收由内部分组总线链路415和425来的下游分组事项。可同时由内部分组总线链路415和425接收事项。此外,分组总线交换器430可具有处理中的事项,该事项等待下游处理过程。因此,分组总线交换器430可包括仲裁电路(图中未显示)于下游内部分组总线链路接口,该分组总线链路接口可使用一个或多个譬如循环趋近的共享仲裁技术,例如事项之间的仲裁。
兹参照第5图,显示输入/输出节点交换器的一个替代实施例的方块图。输入/输出节点交换器输入/输出分组总线链路外围总线分组总线路收发器内部分组总线链路包括一对分别耦接到分组总线路5501和502的输入/输出上游收发器510和520。举例而言,输入/输分组总线链路501和502可耦接到譬如第1图的处理器301A至301B的上游装置。第5图的收发器510和520分别经由内部分组总线链路515和525耦接至分组总线交换器530。分组总线交换器530由内部分组总线链路535耦接至接口总线540。分组总线交换器530亦经由内部分组总线链路545耦接至下游收发器580。收发器580耦接到输入/输出分组总线链路585,该总线链路585可连接到另外一个输入/输出节点或其它的装置(图中未显示)。接口总线540耦接到输入/输出接口570,和耦接到外围接口550和560。外围接口550和560分别耦接到外围总线555和565。输入/输出接口570耦接到输入/输出链路575。值得注意的是虽然本实施例描述二个连接到二个输入/输出分组总线链路的上游收发器,但是考量到其它的实施例中可以包括其它适当数目的耦接到其它适当数目的上游输入/输出分组总线链路的上游收发器。
收发器510和520包括相似于第4图中所示实施例的特征,并实质上以相同的方法操作。因此,对于收发器510和520的操作描述,参照上述收发器410和420结合第4图的描述。
值得注意的是输入/输出接口570,举例而言,可以是积体输入/输出控制器,并可包括执行特定输入/输出装置的电路,譬如是GigabitEthernetTM控制器或InfinibandTM埠控制器。于此实施例中,输入/输出链路575可以是譬如以太网或InfinibandTM连接的范例连接。外围总线555和565为任何适当外围总线,譬如外围组件互连(PCI)总线,或延长外围组件互连(PCI-X)总线的任何适当的外围总线的例子。
分组交换器单元530可依于内部分组总线链路535组构来接收上游分组事项,译码各事项的地址,并如果有任何一个的话,则判定那个上游路径将路由传输各事项。如下文中将详细说明的,若指定的事项包含不相关于分组总线交换器530其中一个上游内部分组总线链路的地址,则分组事项可上游传送。
接口总线540可包括须与各内部分组总线链路535和545、外围接口555和565以及输入/输出接口570互接的内部分组总线架构和电路(图中未显示)。举例而言,接口总线540可包括接口端口(图中未显示)用于内部分组总线链路535、输入/输出接口570和外围接口550和560。各接口端口可包括地址滤波器,该地址滤波器能够要求具有匹配特定滤波器的地址的指定的分组事项。因此,接口总线540可建构以提供各外围接口和输入/输出接口570之间同等的讯务支持。举例而言,针对外围接口560的分组事项藉由外围接口550上游传输至接口总线540。可藉由连接至接口总线540的各接口端口译码分组事项头部。译码的地址匹配外围接口560的地址滤波器,并因此由外围接口560所请求。然而,如下将进一步说明的,标的于输入/输出节点或经由内部分组总线链路545连接到收发器580的其它装置的分组事项可首先予上游路由传输。
由指定的接口上游发送的分组事项可不匹配在接口端口中的任何的地址滤波器。于如此情况,分组总线交换器530可经由上游分组总线链路515和525其中任一而发送所有的未经要求的上游分组事项。因此,标的于输入/输出节点的分组事项或经由内部分组总线链路545连接到收发器580的其它装置的分组事项可首先藉由总线交换器530路由传输到关联于第3图的处理器301A至301B其中一个的主桥接器。主桥接器可随后下游发送分组回到第5图的分组总线交换器530,此处分组事项可路由传输到输入/输出节点或连接到收发器580的其它装置。
于一个替代实施例中,当未经要求分组事项的目的地地址为相关于输入/输出节点或经由内部分组总线链路545连接到收发器580的其它装置时,分组总线交换器530可认知未经要求分组事项的目的地地址。因此,可进一步建构分组总线交换器以允许此种型式的同等支持。
分组总线交换器530可判定那一个上游分组总线链路以如第4图的分组总线交换器430实质相同的方法发送特定的事项。因此对于第5图的分组总线交换器530的其余操作说明,可参照第4图的分组总线交换器430的说明。
一旦完全了解上述揭示的说明后,对于此技艺方面的一般技术人员而言将了解本发明可作许多的变更和修饰。下附的权利要求书将解释为包含所有的此等变更和修饰。
工业上的应用
本发明可大致应用于多处理器计算机系统输出入节点。

Claims (8)

1.一种用于多处理计算机系统的输入/输出节点交换器(400),该输入/输出节点交换器包括:
桥接单元(450,460),该桥接单元执行于集成电路芯片上,该集成电路芯片组构以从外围总线(455)(465)接收多个外围事项,并可组构以传送对应于该多个外围事项的多个上游分组事项;
分组总线交换器单元(430),该分组总线交换器单元执行于该集成电路芯片上,该集成电路芯片组构以于内部点至点分组总线链路(435)上接收该多个上游分组事项,并可组构以判定各该多个上游分组事项的目的地;
其中该分组总线交换器单元(430)可进一步组构以路由传输该多个上游分组事项中选择的其中数个至耦接于第一点至点分组总线链路(401)的第一处理器接口,并响应于判定的各该多个上游分组事项的该目的地,而路由传输其它的该多个上游分组事项至耦接于第二点至点分组总线链路(402)的第二处理器接口;
其中该第一与第二点至点分组总线链路(401,402)为符合超传输的链路,各包括第一组单向线路与第二组单向线路,其中各该第与第二组单向线路配置成运送包括控制分组与数据分组的分组,以及其中该控制分组包括命令分组、信息分组、与响应分组;以及
其中该分组总线交换器单元(430)可进一步组构以基于事项种类或耦接至第一点至点分组总线链路以及第二点至点分组总线链路的上游装置的输入/输出负载,来决定各该多个上游分组事项的目的地。
2.如权利要求1所述的输入/输出节点交换器,进一步包括第一收发器单元(410),该第一收发器单元组构以接收该多个上游分组事项的该选择的其中数个,并发送该多个上游分组事项的该选择的其中数个分组事项于该第一点至点分组总线链路(401)上。
3.如权利要求2所述的输入/输出节点交换器,进一步包括第二收发器单元(420),该第二收发器单元组构以接收该其它的该多个上游分组事项,并发送该其它的该多个上游分组事项于该第二点至点分组总线链路(402)上。
4.如权利要求1、2、或3所述的输入/输出节点交换器,其中该分组总线交换器单元(430)进一步组构以接收由该第一处理器接口发送的第一多个下游分组事项,和由该第二处理器接口发送的第二多个下游分组事项。
5.如权利要求1、2、或3所述的输入/输出节点交换器,其中该分组总线交换器单元进一步组构以使用可编程查用表来判定各多个上游分组事项的该目的地。
6.如权利要求1、2、或3所述的输入/输出节点交换器,其中该分组总线交换器单元(430)进一步组构以使用对应于耦接至该第一和该第二点至点分组总线链路的上游装置的有效的缓冲器空间计数,来判定各该多个上游分组事项的该目的地。
7.一种多处理器计算机系统(300),包括:
第一处理器(301A)和第二处理器(301B),各组构以执行程序化的指令;以及
如权利要求1所述的输入/输出节点交换器(310),耦接至该第一处理器(301A)和第二处理器(301B)。
8.如权利要求7所述的计算机系统,其中该分组总线交换器单元(430)进一步配置以译码关联于各该多个上游分组事项的地址。
CNB028234421A 2001-11-30 2002-09-12 多功能处理机计算机系统中的连接线用转接输入/输出节点 Expired - Lifetime CN1320469C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/998,758 US6836813B1 (en) 2001-11-30 2001-11-30 Switching I/O node for connection in a multiprocessor computer system
US09/998,758 2001-11-30

Publications (2)

Publication Number Publication Date
CN1592895A CN1592895A (zh) 2005-03-09
CN1320469C true CN1320469C (zh) 2007-06-06

Family

ID=25545535

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028234421A Expired - Lifetime CN1320469C (zh) 2001-11-30 2002-09-12 多功能处理机计算机系统中的连接线用转接输入/输出节点

Country Status (9)

Country Link
US (1) US6836813B1 (zh)
EP (1) EP1449100B1 (zh)
JP (1) JP4290556B2 (zh)
KR (1) KR100950101B1 (zh)
CN (1) CN1320469C (zh)
AU (1) AU2002336494A1 (zh)
DE (1) DE60210312T2 (zh)
TW (1) TWI236251B (zh)
WO (1) WO2003048951A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107346293A (zh) * 2016-05-06 2017-11-14 广达电脑股份有限公司 动态重新配置系统的至少一外围总线交换器的方法及系统

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7640843B2 (en) 2003-01-24 2010-01-05 Kraft Foods R & D, Inc. Cartridge and method for the preparation of beverages
CN1332334C (zh) * 2004-01-17 2007-08-15 中国科学院计算技术研究所 一种多处理机通信装置及其通信方法
US20050262391A1 (en) * 2004-05-10 2005-11-24 Prashant Sethi I/O configuration messaging within a link-based computing system
US20050286526A1 (en) * 2004-06-25 2005-12-29 Sood Sanjeev H Optimized algorithm for stream re-assembly
US20060004933A1 (en) * 2004-06-30 2006-01-05 Sujoy Sen Network interface controller signaling of connection event
US7461173B2 (en) * 2004-06-30 2008-12-02 Intel Corporation Distributing timers across processors
US20060031474A1 (en) * 2004-07-19 2006-02-09 Linden Cornett Maintaining reachability measures
US7907298B2 (en) * 2004-10-15 2011-03-15 Fujifilm Dimatix, Inc. Data pump for printing
JP4711709B2 (ja) * 2005-03-18 2011-06-29 富士通株式会社 パーティション割り振り方法及びコンピュータシステム
CN100447714C (zh) * 2005-11-04 2008-12-31 英业达股份有限公司 多任务式计算机周边装置联机切换接口
US7370135B2 (en) 2005-11-21 2008-05-06 Intel Corporation Band configuration agent for link based computing system
CN100454277C (zh) * 2006-01-27 2009-01-21 威盛电子股份有限公司 支持快速外围互连装置的计算机系统及相关方法
US7647476B2 (en) * 2006-03-14 2010-01-12 Intel Corporation Common analog interface for multiple processor cores
CN101501660B (zh) 2006-08-09 2011-11-16 日本电气株式会社 因特网连接交换机和因特网连接系统
US7853638B2 (en) * 2007-01-26 2010-12-14 International Business Machines Corporation Structure for a flexibly configurable multi central processing unit (CPU) supported hypertransport switching
US7797475B2 (en) * 2007-01-26 2010-09-14 International Business Machines Corporation Flexibly configurable multi central processing unit (CPU) supported hypertransport switching
US7930459B2 (en) * 2007-09-28 2011-04-19 Intel Corporation Coherent input output device
US9442540B2 (en) * 2009-08-28 2016-09-13 Advanced Green Computing Machines-Ip, Limited High density multi node computer with integrated shared resources
JP5482263B2 (ja) * 2010-02-08 2014-05-07 日本電気株式会社 エンドポイント共有システムおよびデータ転送方法
US9176913B2 (en) 2011-09-07 2015-11-03 Apple Inc. Coherence switch for I/O traffic
US9875204B2 (en) * 2012-05-18 2018-01-23 Dell Products, Lp System and method for providing a processing node with input/output functionality provided by an I/O complex switch
CN104268107B (zh) * 2014-09-05 2017-04-05 中国运载火箭技术研究院 一种箭载计算机处理器与外总线接口余度管理分离的系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085276A (en) * 1997-10-24 2000-07-04 Compaq Computers Corporation Multi-processor computer system having a data switch with simultaneous insertion buffers for eliminating arbitration interdependencies
WO2001018661A1 (en) * 1999-09-08 2001-03-15 Mellanox Technologies Ltd. Software interface between a parallel bus and a packet network
CN1291748A (zh) * 1999-06-29 2001-04-18 株式会社东芝 Pci串行传输的基本概念

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533198A (en) 1992-11-30 1996-07-02 Cray Research, Inc. Direction order priority routing of packets between nodes in a networked system
KR100304063B1 (ko) 1993-08-04 2001-11-22 썬 마이크로시스템즈, 인코포레이티드 2지점간상호접속통신유틸리티
AUPM699394A0 (en) 1994-07-25 1994-08-18 Curtin University Of Technology Link level controlled access to available asynchronous network service
US6175888B1 (en) 1996-04-10 2001-01-16 International Business Machines Corporation Dual host bridge with peer to peer support
US5991824A (en) * 1997-02-06 1999-11-23 Silicon Graphics, Inc. Method and system for simultaneous high bandwidth input output
US6424658B1 (en) * 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM
WO2001018988A1 (en) 1999-09-08 2001-03-15 Mellanox Technologies Ltd. Bridge between parallel buses over a packet-switched network
US6604161B1 (en) * 1999-09-29 2003-08-05 Silicon Graphics, Inc. Translation of PCI level interrupts into packet based messages for edge event drive microprocessors
JP2001325207A (ja) * 2000-05-17 2001-11-22 Hitachi Ltd キャッシュ内蔵型スイッチおよび計算機システムおよびキャッシュ内蔵型スイッチのスイッチ制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085276A (en) * 1997-10-24 2000-07-04 Compaq Computers Corporation Multi-processor computer system having a data switch with simultaneous insertion buffers for eliminating arbitration interdependencies
CN1291748A (zh) * 1999-06-29 2001-04-18 株式会社东芝 Pci串行传输的基本概念
WO2001018661A1 (en) * 1999-09-08 2001-03-15 Mellanox Technologies Ltd. Software interface between a parallel bus and a packet network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107346293A (zh) * 2016-05-06 2017-11-14 广达电脑股份有限公司 动态重新配置系统的至少一外围总线交换器的方法及系统
CN107346293B (zh) * 2016-05-06 2019-08-16 广达电脑股份有限公司 动态重新配置系统的至少一外围总线交换器的方法及系统
US10387346B2 (en) 2016-05-06 2019-08-20 Quanta Computer Inc. Dynamic PCIE switch reconfiguration mechanism

Also Published As

Publication number Publication date
KR100950101B1 (ko) 2010-03-29
WO2003048951A1 (en) 2003-06-12
US6836813B1 (en) 2004-12-28
KR20050027083A (ko) 2005-03-17
JP2005512194A (ja) 2005-04-28
TWI236251B (en) 2005-07-11
CN1592895A (zh) 2005-03-09
JP4290556B2 (ja) 2009-07-08
EP1449100A1 (en) 2004-08-25
DE60210312T2 (de) 2006-12-14
EP1449100B1 (en) 2006-03-29
AU2002336494A1 (en) 2003-06-17
DE60210312D1 (de) 2006-05-18

Similar Documents

Publication Publication Date Title
CN1320469C (zh) 多功能处理机计算机系统中的连接线用转接输入/输出节点
US4253144A (en) Multi-processor communication network
US4720784A (en) Multicomputer network
US4240143A (en) Hierarchical multi-processor network for memory sharing
CN1307570C (zh) 控制数据处理系统间经由存储器的数据流的方法和装置
JP2566681B2 (ja) 多重プロセッシング・システム
US6247091B1 (en) Method and system for communicating interrupts between nodes of a multinode computer system
CN101878475B (zh) 向星形拓扑串行总线接口委托网络处理器操作
US7058084B2 (en) Multistage interconnect network combines back channel replies received from destinations into a single result and transmits to the source
US4933936A (en) Distributed computing system with dual independent communications paths between computers and employing split tokens
JP2593146B2 (ja) データハブ
CN1095127C (zh) 用于处理器类型和总线协议变化的通用结构的计算机系统
US5168547A (en) Distributed architecture for input/output for a multiprocessor system
EP0901659B1 (en) Parallel processor with redundancy of processor pairs and method
US6094532A (en) Multiprocessor distributed memory system and board and methods therefor
EP0945798A2 (en) High speed remote storage cluster interface controller
JPS62189549A (ja) 多重階層レベルマルチプロセツサ装置
US20050132089A1 (en) Directly connected low latency network and interface
CN100583819C (zh) 用于分组交换控制的集成电路和方法
CN1176434A (zh) 供通用计算机结构使用的处理器子系统
JP2006502642A (ja) トランザクションを確立するための集積回路および方法
WO1991020044A1 (en) Communication exchange system for a multiprocessor system
IL97315A (en) Multi-group signal processor
JPH10507023A (ja) 共用メモリシステム
WO2001067713A1 (en) A packet format independent computer network controller

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
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20070606