DE19680668C2 - Verfahren zum Überbrücken zweier Busse, transparente Brücke zum Koppeln zwischen zwei Bussen und Anordnung mit einem Computersystem - Google Patents

Verfahren zum Überbrücken zweier Busse, transparente Brücke zum Koppeln zwischen zwei Bussen und Anordnung mit einem Computersystem

Info

Publication number
DE19680668C2
DE19680668C2 DE19680668T DE19680668T DE19680668C2 DE 19680668 C2 DE19680668 C2 DE 19680668C2 DE 19680668 T DE19680668 T DE 19680668T DE 19680668 T DE19680668 T DE 19680668T DE 19680668 C2 DE19680668 C2 DE 19680668C2
Authority
DE
Germany
Prior art keywords
bus
pci
bridge
cycle
buses
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
DE19680668T
Other languages
English (en)
Other versions
DE19680668T1 (de
Inventor
John D Kenny
Pranay D Shah
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.)
Cirrus Logic Inc
Original Assignee
Cirrus Logic 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 Cirrus Logic Inc filed Critical Cirrus Logic Inc
Publication of DE19680668T1 publication Critical patent/DE19680668T1/de
Application granted granted Critical
Publication of DE19680668C2 publication Critical patent/DE19680668C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4054Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Überbrücken zweier Busse, eine transparente Brücke zum Koppeln zwischen zwei Bussen und eine Anordnung mit einem Computersystem nach dem Oberbegriff des Anspruchs 1, 4 bzw. 8.
Moderne Computersysteme enthalten typischerweise mehrere Busse, elektrische Verbindungen, über welche Komponenten des Systems miteinander kommunizieren. Beispiele solcher Busse sind der Industriestandard-Architekturbus (ISA), der erweiterte Industriestandard-Architekturbus (EISA) und der Peripheriekomponentenschnittenstellenbus (PCI). Um die Verbindbarkeit zwischen den getrennten Bussen vorzusehen, ist eine "Brücke" zwischen die Busse gekoppelt und schafft eine Umsetzung zwischen den Buszyklen eines Busses zu jenen des anderen Busses.
Ein Beispiel eines Systems, bei dem eine Mehrzahl von Bussen verwendet wird, ist ein "Notebook"-Computer und eine Andockstation. Ein Notebook- Computer ist ein kleinerer, ohne weiteres tragbarer Computer. Der Notebook- Computer kann mit der Andockstation gekoppelt werden, welche weitgehende Funktionalität bereitstellt und dadurch die Möglichkeit des Notebook-Computers erweitert. Die Andockstation enthält einen Bus, an den zusätzliche Komponenten angeschlossen sind, die dann über das Notebook betätigt werden können. Beispielhafte Komponenten umfasssen ein CD-ROM-Laufwerk, Graphiksteuereinheiten usw.
Ein einfacher Weg der Schnittstellenbildung des Busses in dem Notebook mit dem Bus in der Andockstation bestünde darin, den Notebookbus direkt mit dem Andockstationsbus zu verbinden. Das einfache Verlän­ gern eines Busses von dem Notebook in die Andockstation kann jedoch elektrische Spezifikationen verletzen. Wenn beispielsweise der Bus in dem Notebook ein PCI-Bus ist, würde eine Verlängerung des PCI-Busses in die Andockstation die Belastungsspezifikation des PCI-Busses verletzen. Um mit der PCI-Belastungsspezifikation in Übereinstimmung zu kommen, muß eine Brücke zwischen die beiden Busse gekoppelt werden. Das Koppeln der Brücke zwischen die beiden Busse ist auch für das Andocken vorteilhaft.
Das Vorhandensein von zwei unterschiedlichen PCI-Bussen in dem System, wenn das Notebook an die Andockstation angedockt ist, weist Kom­ plikationen in der Konfiguration von Komponenten auf. Wenn die Leistung bei einem typischen Notebook eingeschaltet wird, gibt es ein BIOS in dem Notebook, das physikalisch die Steuerung übernimmt und alle an den Bus in dem Notebook angekoppelten Komponenten konfiguriert. Sobald das BIOS- System seine Konfiguration der Komponenten in dem Notebook beendet hat, kann die Steuerung zu einem WINDOWS-Betriebssystem übergehen. Die WIND­ OWS-Software ist auch ausgelegt, um Komponenten zu konfigurieren, jedoch nur auf einem einzigen Bus. Sowohl unter dem BIOS-Gesichtspunkt als auch unter dem WINDOWS-Gesichtspunkt werden die Komponenten auf einem einzi­ gen Bus konfiguriert, welcher Bus als Bus 0 festgehalten wird. "Bus 0" wird normalerweise als der Bus angesehen, der der zentralen Verarbei­ tungseinheit (CPU) am nächsten ist. Auf die Komponeten an Bus 0 wird un­ ter Verwendung von PCI-Konfigurationszyklen zugegriffen. Diese Konfigu­ rationszyklen werden deshalb als Konfigurationszyklen Typ 0 bezeichnet. Sobald ein Notebook angedockt hat, wird jedoch ein zweiter Bus in das System eingeführt. Dieser zusätzliche Bus (in der Andockstation lokali­ siert) wird Bus 1, der Bus, der weiter weg von der CPU ist.
Da sich nun zwei Busse in dem System befinden, erfolgen Ände­ rungen in dem BIOS-Code. Der BIOS ist in der Lage, die Konfiguration der Komponenten an Bus 1 wie auch an Bus 0 zu handhaben. Die WINDOWS-Softwa­ re ist jedoch nicht ausgelegt, um Komponenten an Bus 1 zu identifizie­ ren. Stattdessen kann sie nur Komponenten konfigurieren, die an Bus 0 sind. Demgemäß überläßt WINDOWS dem BIOS die Ausführung der Konfigura­ tion für Komponenten an Bus 1. Das die WINDOWS-Software die Konfigura­ tion nicht ausführt, ist das sogenannte "Plug-and-Play"-Merkmal (= Ein­ stöpseln und Beginnen) nicht verfügbar. Wenn es daher irgendwelche Konflikte an der Komponente gibt, wie zwei Komponenten an dem Bus mit derselben Adresse, ist die WINDOWS-Software nicht in der Lage, die Adressen einer der Komponenten zu ändern, so daß kein Konflikt besteht, wozu sie in der Lage wäre, wenn das Plug-and-Play-Merkmal verfügbar wäre.
Aus der US 5 123 092 ist eine Schnittstelle für einen Erweiterungsbus bekannt, bei welcher ein Bus des Computersystems mit einem Bus eines Erweiterungsmoduls mittels von einem Steuerschaltkreis angesteuerten Puffern verbunden ist. Ferner ist hieraus ein Verfahren zum Betreiben der Schnittstelle bekannt, gemäß welchem in Abhängigkeit von Steuer- und Adressleitungen der Busse beide Busse über die Puffer miteinander verbunden bzw. voneinander getrennt werden.
Aus der EP 0 651 336 A1 ist eine Vorrichtung zum Verbinden mehrerer Busse zu einem transparenten Bus bekannt, die eine Brücke in Form von mit einem Schaltnetzwerk verbundenen Netzwerkadaptern umfaßt, welche so mit den Bussen des Computersystems gekoppelt sind, daß Daten zwischen verschiedenen Bussen über das Schaltnetzwerk und die Netzwerkadapter übertragen werden können. Hierzu ist aus der EP 0 651 336 A1 ein Verfahren bekannt, gemäß welchem ein auf einem ersten Bus begonnener Transaktionszyklus durch die Brücke analysiert wird, entsprechend dem Ziel des Transaktionszyklus gegebenenfalls ein zweiter Bus ausgewählt, und anschließend eine Datenübertragung zwischen dem ersten und dem zweiten Bus ermöglicht wird, indem Datenpfade in der Brücke entsprechend durchgeschaltet werden. Liegen Quelle und Ziel des Transaktionszyklus auf demselben Bus, so bleibt dieser durch die Brücke vom Rest des Systems getrennt. Bei einem zwei Busse umfassenden Computersystem können demnach Bustransaktionen zwischen zwei Komponenten auf einem Bus gleichzeitig mit Bustransaktionen zwischen zwei Komponenten auf dem anderen Bus stattfinden. Das bekannte Verfahren erfordert eine Überwachung und Analyse von Bustransaktionen, wodurch die Buskommunikation bei sich über zwei Busse erstreckenden Bustransaktionen verzögert wird.
Aufgabe der Erfindung ist es, ein Verfahren zum Überbrücken zweier Busse, eine transparente Brücke und eine Anordnung nach dem Oberbegriff des Anspruchs 1, 4 bzw. 8 zu schaffen, bei denen die Buskommunikation optimiert ist.
Diese Aufgabe wird entsprechend den Merkmalen Teil der Ansprüche 1, 4 und 8 gelöst.
Hierdurch wird ein Verfahren für das Überbrücken zwischen einem ersten und einem zweiten Bus in einem Computersystem derart geschaffen, daß die Busse einen einzigen logischen Bus bilden, wobei an jeden Bus Komponenten angekoppelt sind. Das Verfahren umfaßt die Schritte des spekulativen Startens eines Transaktionszyklus auf dem zweiten Bus, nachdem ein Transaktionszyklus von Bustransaktionen auf dem ersten Bus begonnen hat. Die auf dem ersten Bus erfolgenden Bustransaktionen werden in den zweiten Bus gespiegelt, und die auf dem zweiten Bus erfolgenden Transaktionen werden auf den ersten Bus gespiegelt. Die Bustransaktionen dürfen auf dem ersten und dem zweiten Bus auftreten, wenn entweder eine der Komponenten an dem ersten Bus den Transaktionszyklus innerhalb einer ersten bestimmten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem ersten Bus beansprucht, oder eine der Komponenten an dem zweiten Bus den Transaktionsyzklus innerhalb einer zweiten bestimmten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem zweiten Bus beansprucht. Der Transaktionszyklus wird von der Brücke beansprucht, wenn keine Komponenten an dem ersten oder dem zweiten Bus den Transaktionszyklus innerhalb der ersten definierten Anzahl von Buszyklen, nachdem der Transaktionszyklus auf dem ersten Bus begonnen hat, beansprucht hat. Wenn der Transaktionszyklus von der Brücke beansprucht worden ist, werden die Transaktionszyklen auf dem ersten und dem zweiten Bus verworfen, wenn keine der Komponenten an dem zweiten Bus den Transaktionszyklus innerhalb der zweiten definierten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem zweiten Bus beansprucht hat.
Das spekulative Starten eines Transaktionszyklus auf einem zweiten Bus, nachdem der Transaktionszyklus auf dem ersten Bus gestartet worden ist, ergibt eine Einsparung in der Anzahl der Buszyklen, die für das Ausführen der verschiedenen Arten von Transaktionen benötigt werden, wie Lese-, Schreib- oder Konfigurationstransaktionen. Die Einsparungen werden realisiert, da der Start eines Zyklus sofort über den zweiten Bus ausgesandt wird, ohne darauf zu warten, daß Komponenten an dem ersten Bus den Zyklus beanspruchen. Das Verfahren der vorliegenden Erfindung sieht die entsprechenden notwendigen Schritte vor, um die Busse an die PCI-Spezifikation und Zeitlageerfordernisse anzupassen, indem versuchsweise der Transaktionszyklus vor dem Meisterverwerfen an dem ersten Bus beansprucht wird. Dies ermöglicht einer langsameren Komponente an dem zweiten Bus, den Transaktionszyklus zu beanspruchen. Wenn keine Komponente an dem zweiten Bus den Transaktionszyklus beansprucht, nachdem die Brücke den Transaktionszyklus beansprucht hat, führt die Brücke bloß ein Zielverwerfen an dem ersten Bus aus, um den Transaktionszyklus zu löschen.
Die transparente Brücke schafft eine elektrische Isolation zwischen Bussen, um den Busspezifikationen Rechnung zu tragen, ermöglicht jedoch den verbundenen Bussen, von der Software als ein einziger logischer Bus gesehen zu werden.
Die transparente Brücke ist gekoppelt zwischen einen ersten und einen zweiten Bus eines Computersystems und weist einen zwischen den ersten und den zweiten Bus für die Daten- und Adressenkommunikation geschalteten Datenweg auf. Die Brücke umfaßt auch eine Busschnittstelleneinheit für die Steuerung von Bustransaktionen über die Brücke. Die Busschnittstelleneinheit überwacht Buszyklen auf dem ersten und zweiten Bus. Die Buszyklen, erzeugt von dem ersten oder dem zweiten Bus, werden in den anderen der Busse gespiegelt. Die Brücke ist demgemäß transparent, so daß Komponenten an dem ersten und dem zweiten Bus als an einem einzigen logischen Bus liegend adressierbar sind.
Da die Komponenten an dem ersten und zweiten Bus adressierbar sind, als lägen sie an einem einzigen logischen Bus, ist die WINDOWS-Software in der Lage, die Konfiguration für alle Komponenten auszuführen. Dies ermöglicht, die Plug-and-Play-Möglichkeiten auszunutzen. Darüberhinaus ist die WINDOWS- Software in der Lage, Konflikte an dem Bus zu lösen, da sie Kenntnis aller Adressen von Komponenten an den Bussen hat, da jede der Komponenten als an einem einzigen Bus liegend behandelt wird.
Die Anordnung umfaßt ein Computersystem mit einem ersten Bus, an den erste Komponenten angeschlossen sind, sowie ein digitales Datensystem mit einem zweiten Bus, an den zweite Komponenten angekoppelt sind. Zwischen den ersten und den zweiten Bus ist die vorgenannte transparente Brücke gekoppelt, um Datentransfers zwischen den ersten und zweiten Komponenten zu ermöglichen.
In bestimmten bevorzugten Ausführungsformen ist das Computersystem ein Notebook-Computer, während das digitale Datensystem eine Andockstation ist. In anderen Ausführungsformen sind sowohl das Computersystem als auch das digitale Datensystem innerhalb eines Arbeitsplatzsystems.
Die vorstehenden und andere Merkmale, Aspekte und Vorteile der vorliegenden Erfindung werden durch die folgende detaillierte Beschreibung der vorliegenden Erfindung verdeutlicht, wenn sie in Verbindung mit den beigefügten Zeichnungen gebracht wird.
Fig. 1 ist ein Blockdiagramm eines Computersystems mit einem Notebook und einer Andockstation.
Fig. 2 ist ein Blockdiagramm eines Notebook und einer Andockstation, aufgebaut gemäß einer Ausführungsform der vorliegenden Erfindung.
Fig. 3 ist ein Blockdiagramm einer Brücke, aufgebaut gemäß einer Ausführungsform der vorliegenden Erfindung.
Fig. 4 ist ein Zeitlagediagramm zur Illustration des Verfahrens der vorliegenden Erfindung für einen Eingangs/Ausgangsspeicherschreibvorgang, bei dem der Initiator auf dem primären Bus ist und das Ziel auf dem primären Bus ist.
Fig. 5 ist ein Zeitlagediagramm gemäß dem Verfahren der vor­ liegenden Erfindung einer Eingangs/Ausgangsspeicherschreibtransaktion, bei der der Initiator an dem primären Bus ist und das Ziel an dem sekun­ dären Bus ist.
Fig. 6 ist ein Zeitlagediagramm gemäß dem Verfahren der vor­ liegenden Erfindung einer Eingangs/Ausgangsspeicherschreibtransaktion, bei der der Initiator an dem primären Bus ist und das Ziel an dem sekun­ dären Bus ist und es sich dabei um eine subtraktive Decodierkomponente handelt.
Fig. 7 ist eine beispielhaftes Ausführungsform eines Zeitlage­ diagramms gemäß dem Verfahren der vorliegende Erfindung, bei dem der Transaktionszyklus verworfen wird.
Fig. 8 ist ein beispielhaftes Zeitlagediagramm gemäß der vor­ liegenden Erfindung eines Stromabspeicher-Burst-Schreibvorgangs.
Fig. 9 ist ein Zeitlagediagramm gemäß der vorliegenden Erfin­ dung einer beispielhaften Schreib/Lesekonfiguration, die stromab ausge­ führt wird.
Fig. 10 ist ein Zeitlagediagramm gemäß der vorliegenden Erfin­ dung einer beispielhaften Lesezykluskonfiguration.
Fig. 1 ist ein Blockdiagramm einer beispielhaften Ausführungs­ form eines Computersytems, bei dem die Brücke der vorliegenden Erfindung eingesetzt wird. Die Anordnung und das Verfahren der vorliegenden Erfin­ dung können jedoch in anderen Typen von Computersystemen angewandt wer­ den, bei denen zwei Busse mittels einer Brücke zusammengekoppelt werden. Das Computersystem 10 der Fig. 1 umfaßt einen Notebook-Computer 12 und eine Andockstation 14. Der Notebook-Computer 12 ist ein tragbarer Computer und kann irgendeine aus einer Anzahl unterschiedlicher Arten von handelsüblichen Notebook-Computern sein. In ähnlicher Weise kann die Andockstation 14 ebenfalls eine handelsübliche Andockstation sein, je­ doch mit der Brücke der vorliegenden Erfindung ausgestattet.
Fig. 2 ist ein Blockdiagramm, das den Notebook-Computer 12 und die Andockstation 14 in größeren Einzelheiten zeigt. Der Notebook-Compu­ ter 12 umfaßt eine zentrale Verarbeitungseinheit (CPU) 16, angekoppelt über einen Wirtbus 18 an eine Wirtsteuereinheit 20 und eine Datenpfad­ einheit 22. Die Wirtsteuereinheit 20 ist eine Wirt/PCI-Brücke.
Die Wirtsteuereinheit 20 und die Datenpfadeinheit 22 sind an einen PCI-Bus 24 gekoppelt. Für die Zwecke der vorliegenden Beschreibung werden die Komponenten und Busse in dem Notebook-Computer 12 als "primä­ re" Busse oder Komponten bezeichnet, während jene Komponenten und Busse in der Andockstation 14 als "sekundäre" Busse oder Komponenten bezeich­ net werden. Der "p"-Anhang bzw. "s"-Anhang bezeichnet die primäre bzw. sekundäre Zuordnung.
Der primäre PCI-Bus 24 ist an einen Industriestandardarchitek­ turbus (ISA) 28 über eine PCI/ISA-Brücke angekoppelt. Eine Anzahl von Komponenten sind an den ISA-Bus 28 angekoppelt, etwa der ISA-Meister 30 und der ISA-Sklave 32.
Die Andockstation 14 enthält in dem dargestellten Ausführungs­ beispiel eine PCI/PCI-Brücke 34 gemäß der vorliegenden Erfindung und ei­ nen PCI-Bus 36, der der sekundäre PCI-Bus in dieser Ausführungsform ist. Eine Super-Eingangs/Ausgangs-(PCI)-ISA-Brücke 38 überbrückt von dem se­ kundären PCI-Bus 36 zu einem sekundären ISA-Bus 40. Der sekundäre ISA- Meister 42 und sekundäre ISA-Sklave 44 sind an diesen sekundären ISA-Bus 40 angekoppelt.
Obwohl die PCI/PCI-Brücke 34 als Teil der Andockstation 14 wiedergegeben ist, kann sie auch stattdessen in dem Notebook-Computer 12 installiert sein.
"Stromab"-Transaktionen sind jene, die von der Primärseite der PCI/PCI-Brücke 34 zu der Sekundärseite erfolgen, während "Stromauf"- Transaktionen von der Sekundärseite der PCI/PCI-Brücke 34 zu der Primärseite vorgenommen werden. Transaktionen können über beide PCI-Busse 24, 36 zwischen einem Initiator und einem Ziel auftreten, doch müssen das PCI-Protokoll und die Zeitlagespezifikationen nach wie vor erfüllt werden.
In einem Standardeinzel-PCI-Bus ist ein typischer Transak­ tionszyklus der folgende: Ein FRAME#-Signal wird auf den Bus gelegt (geht nach niedrig), womit die Komponeten an dem Bus vorgewarnt werden, daß ein Transaktionszyklus begonnen hat. Der Initiator der Transaktion wird das IRDY#-Signal anlegen zur Anzeige dafür, daß er bereit ist, die Transaktion auszuführen. Adreßinformation, die auf den Bus gelegt wird, wird von den Komponenten an dem Bus decodiert, um zu identifizieren, ob die jeweilige Komponente adressiert (anvisiert) für eine Transaktion wird. Befehlssignale (wie auch die Adreßinformation) werden außerdem gleichzeitig wie das FRAME#-Signal ausgesandt, um zu bestimmen, ob es sich um eine Lese- oder eine Schreibtransaktion handelt oder auch um einen Konfigurationszyklus. Eine Zielkomponente reagiert durch Bestäti­ gen, daß sie das Ziel ist, durch Anlegen des DEVSEL#-Signals an den Bus.
Wenn das Ziel ein Schnelldecodierziel ist, wird es mit dem DEVSEL#-Signal beim ersten Buszyklus, nachdem das FRAME#-Signal angelegt worden ist, reagieren. Ein Mitteldecodierziel reagiert in dem zweiten Buszyklus, nachdem das FRAME#-Signal angelegt worden ist, während ein Langsamdecodierziel in dem dritten Buszyklus nach dem Anlegen des FRA­ ME#-Zyklus reagieren wird. Bestimmte Komponenten, bekannt als subtrakti­ ve Decodierkomponenten, können in dem vierten Zyklus nach Anlegen des FRAME#-Signals reagieren.
Wenn bei dem fünften Zyklus nach Anlegen des FRAME#-Signals keine Komponente reagiert hat, erfolgt ein Meisterverwerfen des Transak­ tionszyklus.
Bei bekannten PCI/PCI-Brücken muß, wenn das Ziel an dem sekundären Bus ist, ein Adreßregister programmiert werden, um der Brücke selbst zu ermöglichen, den Transaktionszyklus für die Ziele an dem Se­ kundärbus zu beanspruchen, indem an den primären Bus das DEVSEL#-Signal angelegt wird, bevor das Meisterverwerfen von dem Primärbus erfolgt. Nach Beanspruchung des Zyklus legt dann die Brücke das FRAME#-Signal an den Sekundärbus, und die Transaktion darf ablaufen.
Das erste Problem ist die Notwendigkeit, Adreßwerte zu pro­ grammieren. Das zweite Problem bei diesem Ansatz ist die Menge an Zeit, die für einen einzelnen Transaktionszylkus bis zur Beendigung benötigt wird. Dies ist auf das Aussenden des FRAME#-Signals durch die Brücke über den Sekundärbus drei Zyklen nach erstmaligen Anlegen des FRAME# an den Primärbus zurückzuführen. Dies macht teilweise die Vorteile der Ge­ schwindigkeit zunichte, die durch die PCI-Busarchitektur erreicht wer­ den.
Anstatt die Adresse mit einer Brücke jedesmal dann zu decodie­ ren, wenn FRAME# auf dem primären Bus liegt, und dann das FRAME#-Signal auf dem sekundären Bus einige Zeit später auszusenden, legt die Brücke 34 der vorliegenden Erfindung sofort ein spekulatives FRAME# auf den sekundären Bus 36. Durch Legen des FRAME# auf den sekundären Bus 36 im nächsten Zyklus, nachdem das FRAME# auf den primären Bus 24 gelegt wor­ den war, kann die Geschwindigkeit jedes Transaktionszyklus um zwei bis sechs Buszyklen gesteigert werden, was signifikante Einsparungen dar­ stellt.
Fig. 4 bis 7 sind Zeitlagediagramme von verschiedenen Transak­ tionszyklen, wie sie gemäß der vorliegenden Erfindung ausgeführt werden. Fig. 4 zeigt zwei separate Transaktionszyklen, wo der Initiator an dem Primärbus 24 liegt und das Ziel ebenfalls an dem Primärbus 24 liegt. Diese Transaktionszyklen sind Eingangs/Ausgangsspeicherschreibzyklen. Der erste Transaktionszyklus wird durch ein Mittelschnelldecodierziel an dem Primärbus 24 abgeschlossen, während der zweite Transaktionszyklus durch ein Langsamdecodierziel an dem Primärbus 24 abgeschlossen wird. Für den ersten Transaktionszyklus wird FRAME# im Buszyklus 1 angelegt. Anstatt die Adresse zu decodieren, die das Anlegen des FRAME#-Signal im Buszyklus 1 begleitet, sendet die PCI PCI-Brücke 34 der vorliegenden Er­ findung sofort ein spekulatives FRAME#-Signal auf den sekundären Bus 36. Das Anlegen des spekulativen FRAME#-Signals erfolgt deshalb im Buszyklus 2, während das auf den primären Bus 24 gelegte Signal nun auf dem sekun­ dären Bus 36 "gespiegelt" wird.
Da das Ziel ein Mittelschnelldecodierziel an dem primären Bus 24 ist, legt das Ziel (nach Decodieren der Adresse unnd Feststellung, daß es das Ziel des Transaktionszyklus ist) das DEVSEL#-Signal an den primären Bus 24, womit es bestätigt, daß es erkannt hat, daß es das Ziel des Transaktionszyklus ist. Das Ziel legt auch das TRDY#-Signal an, um seine Bereitschaft anzuzeigen, die angegebene Transaktion auszuführen. Das Signal IRDY# (Initiator bereit) ist durch den Initiator angelegt worden, um seine Bereitschaft für das Ausführen der Transaktion anzuzei­ gen. Die gewünschte Transaktion erfolgt, wenn beide Signale IRDY# und TRDY# angelegt sind.
Der zweite Transaktionszyklus in Fig. 4 involviert ein Lang­ samdecodierziel, wie einen ISA-Sklaven 32, der den Transaktionszyklus beansprucht, im übrigen aber derselbe ist wie der erste Transaktionszy­ klus. Wie in dem ersten Transkationszyklus werden alle auf dem Primärbus 24 geführten Signale auf den Sekundärbus 36 durch die transparente PCI/­ PCI-Brücke 34 gespiegelt.
Ein Lesezyklus ist ähnlich dem Schreibzyklus der Fig. 4 mit der Ausnahme, daß die Daten von der Adresse durch einen oder mehrere Buszyklen getrennt sind, um dem Bus den "Umlauf" zu ermöglichen, um das Lesen von Daten nach Aussenden der Adresse zu ermöglichen.
Ein Beispiel des Transaktionszyklus, bei dem der Initiator an dem primären Bus 24 liegt, das Ziel jedoch an dem sekundären Bus 36, ist in Fig. 5 wiedergegeben. Dieser Transaktionszyklus ist ein Eingangs/Aus­ gangsspeicherschreibzyklus. Es handelt sich um einen "Stromab"-Zyklus, da der Initiator an dem primären Bus 24 und das Ziel an dem sekundären Bus 36 liegen.
Der erste Transaktionszyklus beginnt im Buszyklus 1 durch An­ legen des FRAME#-Signals an den primären Bus 24. Die PCI/PCI-Brücke 34 legt sofort ein spekulatives FRAME#-Signal an den sekundären Bus 36 im Buszyklus 2. Ein Schnelldecodierziel an dem sekundären Bus 36 bean­ sprucht den Transaktionszyklus während Buszyklus 3 durch Anlegen des DEVSEL#-Signals. Die Transaktion wird ausgeführt, wenn das Ziel sein TRDY#-Signal anlegt. Die DEVSEL#- und TRDY#-Signale werden auf den Pri­ märbus gespiegelt, wie im Buszyklus 4 zu sehen.
Mit der transparenten Brücke 34 und dem Anlegen eines spekula­ tiven FRAME#-Signals führt die vorliegende Erfindung zu einer signifikanten Einsparung in der Menge an Buszyklen, die für das Vervoll­ ständigen eines Transaktionszyklus benötigt wird, der über zwei ver­ schiedene Busse abläuft.
Ein zweiter Transaktionszyklus ist außerdem in Fig. 5 wieder­ gegeben, worin das Ziel an dem sekundären Bus 36 ein Mittelschnelldeco­ dierziel ist. In diesem Falle wird das DVSEL#-Signal schließlich an dem primären Bus 24 in dem vierten Buszyklus angelegt, nachdem anfänglich das FRAME# an dem primären Bus 24 angelegt wurde. Dies ist vor dem Mei­ sterverwerfen des Transaktionszyklus, das sonst aufträte, wenn das DVSEL#-Signal nicht an den primären Bus 24 durch den fünften Buszyklus nach dem Anlegen des FRAME# am Primärbus 24 angelegt worden wäre.
Fig. 6 ist ein Zeitlagediagramm zur Wiedergabe eines Ein­ gangs/Ausgangsspeicherschreibzyklus, bei dem der Initiator an dem primä­ ren Bus 24 und das Ziel an dem sekundären Bus 36 liegt. In diesem Fall jedoch ist das Ziel des ersten Transaktionszyklus ein Lamgsamdecodier­ ziel an dem sekundären Bus 36, und das Ziel des zweiten Transaktionszy­ klus ist ein subtraktiv decodierendes Ziel an dem sekundären Bus 36. In beiden Fällen würde eine Reflektion des DVSEL#-Signals, erzeugt auf dem sekundären Bus, zu dem primären Bus 24 nicht früh genug sein (d. h. vor Buszyklus 6 oder Buszyklus 13), um ein Verwerfen durch den Meister auf dem primären Bus 24 zu verhindern. Um die Verwendung von Langsamdeco­ dierziel und substraktiv decodierendem Ziel an dem sekundären Bus zu er­ möglichen, sieht die vorliegende Erfindung für die PCI/PCI-Brücke 34 vor, vorzugsweise den Transaktionszyklus als eine subtraktiv decodieren­ de Komponente an dem primären Bus 24 zu beanspruchen (während Buszyklus 5 und Buszyklus 12), beispielsweise durch das Anlegen des DVSEL#-Signals an den primären Bus 24. Wie in den Zeitlagediagrammen der Fig. 4 und 5 wurde das spekulative FRAME# an den sekundären Bus 36 im Buszyklus 2 an­ gelegt. Für den ersten Transaktionszyklus beansprucht das Langsamdeco­ dierziel an dem sekundären Bus den Transaktionszyklus in dem dritten Buszyklus nach Anlegen des FRAME#-Signals an den sekundären Bus 36 (d. h. Buszyklus 5). Sobald die PCI/PCI-Brücke 34 einen Zyklus beansprucht hat, spiegelt sie alle weiteren Signale auf den primären Bus 24 von dem sekundären Bus 36. Der Transaktionszyklus wird im Buszyklus 6 vervoll­ ständigt, und ein neuer Transaktionszyklus wird an dem primären Bus 24 bei Buszyklus 8 mit dem Anlegen des FRAME#-Signals an den primären Bus 24 eingeleitet.
In dem zweiten Transaktionszyklus in Fig. 6 ist das Ziel an dem sekundären Bus 36 ein subtraktiv decodierendes Ziel. Demgemäß legt das subtraktiv decodierende Ziel das DVSEL#-Signal vier Buszyklen nach dem Anlegen des FRAME#-Signals an den sekundären Bus während des Buszy­ klus 13. Obwohl dieses DVSEL#-Signal erst im Buszyklus 14 gespiegelt würde, ermöglicht das Beanspruchen des Transaktionszyklus durch die PCI/PCI-Brücke 34 während Buszyklus 12 dem subtraktiv decodierenden Ziel an dem sekundären Bus 36, einen Transaktionszyklus zu beanspruchen.
Fig. 7 ist ein Zeitlagediagramm, das einen Transaktionszyklus darstellt, bei dem der Initiator an dem sekundären Bus 36 das Ziel an dem primären Bus 24 ist, jedoch die Komponente eine an dem ersten Bus 24 nicht existierende Komponente ist. Da der Initiator an dem sekundären Bus 36 und das angepeilte Ziel an dem primären Bus 24 ist, ist dies eine "Stromauf"-Transaktion. Wenn demgemäß das FRAME#-Signal an dem sekundä­ ren Bus 36 angelegt wird (Buszyklus 1), legt die PCI/PCI-Brücke 34 das spekulative FRAME#-Signal in Buszyklus 2 an den primären Bus 24. Da die Brücke 34 feststellt, daß das angestrebte Ziel an dem primären Bus 34 liegt, beansprucht die Brücke 34 den Transaktionszyklus als ein Mittel­ schnelldecodierziel (Buszyklus 3). Die Signale an dem sekundären Bus 36 sind auf den primären Bus 24 gespiegelt worden. Im Buszyklus 7 (fünf Buszyklen, nachdem das spekulative FRAME# an den primären Bus 24 gelegt wurde), wird eine Meisterverwerfung an dem primären Bus 24 ausgeführt, um den Transaktionszyklus zu beenden. Die PCI/PCI-Brücke 34 führt beim Feststellen der Meisterverwerfung an dem primären Bus 24 eine Zielver­ werfung zu dem Initiator an dem sekundären Bus 36 aus. Dies beendet den Transaktionszyklus an dem sekundären Bus 36.
Ein beispielhaftes Zeitlagediagramm eines Stromab-Speicher- Burst-Schreibvorgangs, bei dem der Initiator an dem primären PCI-Bus 24 liegt und das Ziel an dem sekundären PCI-Bus 36 liegt, ist in Fig. 8 wiedergegeben. Nachdem das FRAME#-Signal durch den Initiator an dem pri­ mären PCI-Bus angelegt worden ist, legt die PCI/PCI-Brücke 34 einem spe­ kulativen Startzyklus (FRAME#s) im Buszyklus 2 an den sekundären PCI-Bus 36. Wenn die PCI/PCI-Brücke 34 sieht, daß die Beanspruchung des Zyklus durch ein Mittelschnelldecodierziel an dem sekundären PCI-Bus 36 im Bus­ zyklus 4 beansprucht wird, überträgt sie einen Teil des Zyklus, wie er ist, auf den sekundären PCI-Bus 36 und einen Teil des Zyklus, wie er ist, auf den primären PCI-Bus 24.
Die PCI/PCI-Brücke 34 ist in der Lage, eine Burst-Schreibla­ tenz von 3 Takten ohne Wartezustand aufrechtzuerhalten, der entweder durch den Initiator an dem primären PCI-Bus 24 oder durch das Ziel an dem sekundären PCI-Bus 36 eingefügt wird. Die PCI/PCI-Brücke 34 setzt Selbstwartezustände auf den primären PCI-Bus 24 und den sekundären PCI- Bus 36 während Bust-Zyklen, um die Reihefolge des Datentransfers auf­ rechtzuerhalten. Ein Initiator an dem primären PCI-Bus fügt einen Warte­ zustand ein durch Entfernen des IRDYp#-Signals (Buszyklus 9). Ein Ziel an dem sekundären PCI-Bus 36 setzt Wartezustände ein durch Entfernen von TRDYs# (Buszyklen 12, 13, 14).
Fig. 9 ist ein Zeitlagediagramm einer beispielhaften Konfigu­ ration einer stromab ausgeführten Schreib/Leseoperation, so daß der In­ itiator an dem primären PCI-Bus 24 und das Ziel an dem sekundären PCI- Bus 36 liegen. Konfigurationsschreibzyklen an dem primären PCI-Bus 24 werden stromab durch die PCI/PCI-Brücke 34 weitergegeben, wenn das Si­ gnal IDSELsP unangelegt bleibt. Wenn Konfigurationsschreibzyklen nicht von irgendeiner Komponente an dem primären PCI-Bus beansprucht werden, dann beansprucht die PCI/PCI-Brücke 34 diese Zyklen an dem primären PCI- Bus 24 als eine subtraktiv decodierende Komponente. Wenn der übertragene Konfigurationsschreibzyklus nicht von irgendeiner Komponente an dem se­ kundären Bus beansprucht wird, dann bewirkt die PCI/PCI-Brücke 34 die normale Beendigung des Konfigurationsschreibens an dem primären PCI-Bus 24 nach Meisterverwerfung der übertragenen Konfigurationsschreibzyklen an den sekundären PCI-Bus 36.
Fig. 10 ist ein Zeitlagediagramm eines beispielhaften Konfigu­ rationslesezyklus, bei dem der Initiator an dem primären PCI-Bus 24 ist und es kein Ziel gibt. Konfigurationslesezyklen an dem primären PCI-Bus 24 werden stromab über die PCI/PCI-Brücke 34 übertragen, wenn das ID- SELp-Signal nicht angelegt ist. Wenn Konfigurationslesezyklen nicht von irgendeiner Komponente an dem primären PCI-Bus 24 beansprucht werden, beansprucht die PCI/PCI-Brücke 34 diese Zyklen an dem primären PCI-Bus als eine subtraktiv decodierende Komponente. Wenn der übertragene Konfi­ gurationslesezyklus nicht von irgendeiner Komponente an dem sekundären PCI-Bus 36 beansprucht wird, beendet die PCI/PCI-Brücke 34 den Konfigu­ rationslesezyklus durch Rückführen von FFFFFFFFh zu dem Initiator an dem primären PCI-Bus 24 nach Meisterverwerfung der übertragenen Konfigura­ tionslesezyklen an dem sekundären PCI-Bus 36.
Die Zeitlage anderer Arten von PCI-Transaktionszyklen sollte für Fachleute offensichtlich sein, da die vorliegende Erfindung die Si­ gnale von einem Bus zu dem anderen Bus spiegelt. Demgemäß arbeitet jeder Bus in Übereinstimmung mit dem PCI-Protokoll und der Spezifika­ tion. Darüberhinaus werden durch Verwendung des spekulativen FRAME#-Ver­ fahrens der vorliegenden Erfindung und die transparente Brücke die bei­ den getrennten PCI-Busse als ein einziger logischer Bus von der Software angesehen, wenn das System konfiguriert wird und die Komponenten an den Bussen identifiziert werden. Dies verringert die Überlast für BIOS- und OS-Konfiguration. Es verringert auch die OS/BIOS-Bezifferungs/Konfigura­ tionsinkompatibilitätsrisiken.
Fig. 3 ist ein Blockdiagramm einer als Beispiel gewählten Aus­ führungsform der PCI/PCI-Brücke 34. Ein Datenpfad 50 umfaßt eine Mehr­ zahl von Multiplexern 54, eine Daten-Latch-Schaltung 56 und eine Adreß-Latch-Schaltung 58 und Puffer 60. Die Datenpfadeinheit bildet eine Strecke für die Adressen und Daten zwischen dem primären PCI-Bus 24 und dem sekundären PCI-Bus 36.
Die PCI/PCI-Brücke 34 hat eine Busschnittstelleneinheit 52, enthält eine Busschnittstellensteuereinheit 62 und ein primäres Ziel 64 sowie ein sekundäres Ziel 66. Jedes Ziel 64, 6 ist in der Lage, entweder Meisteroperationen durchzulassen oder Zieloperationen zu empfangen. Die PCI/PCI-Brücke 34 funktioniert als ein Ziel bei der Initialisierung des Busses seitens des Ziel, das eigentlich an dem Zielbus liegt. In gleicher Weise funktioniert die PCI/PCI-Brücke 34 als ein Meister an dem Zielbus seitens des Meisters, der tatsächlich an dem initiierenden Bus liegt.
Die PCI/PCI-Brücke 34 ermöglicht Transaktionen zwischen einem Meister an einer PCI-Schnittstelle zu einem Ziel an der anderen Schnitt­ stelle. Die Busschnittstellensteuereinheit 62 arbeitet als eine zentra­ lisierte Steuereinheit für die Brücke 34 und steuert die Meisterungsfä­ higkeiten der Brücke 34 sowohl an dem primären PCI-Bus 24 als auch dem sekundären PCI-Bus 36. Das primäre Ziel 64 ermöglicht den Konfigura­ tionsregisterzugriff (zu dem Konfigurationsraum 74) und das Programmie­ ren durch die Decodierschaltung 76. Das sekundäre Ziel 66 decodiert po­ sitiv Stromaufzyklen.
Ein Sekundärbusschiedskreis 70 erfüllt eine Schiedsfunktion für den sekundären PCI-Bus 36. Die serielle Interruptsteuerlogik 68 stützt das serielle Interruptanforderungsprotokoll (IRQ) unter Ermögli­ chung des Transfers von Interruptinformation von dem sekundären PCI-Bus 36 zu dem primären PCI-Bus 24. Die Takterzeugungs- und Rücksetzlogik 72 erzeugt und steuert den Takt und das Rücksetzen für den sekundären PCI- Bus 36. Wie oben festgehalten, kann die PCI/PCI-Brücke 34 entweder in dem Notebook-Computer 12 oder in der Andockstation 14 lokalisiert sein.

Claims (9)

1. Verfahren zum Überbrücken eines ersten und eines zweiten Busses, an welche jeweils mindestens eine Komponente ankoppelbar ist, in einem Computersystem, dadurch gekennzeichnet, dass
in Reaktion auf einen Transaktionszyklus auf dem ersten Bus ein Transaktionszyklus auf dem zweiten Bus gestartet wird,
auf einem Bus auftretende Bustransaktionen auf den jeweils anderen Bus gespiegelt werden,
ein Auftreten von Bustransaktionen auf den Bussen ermöglicht wird, wenn entweder eine der Komponenten am ersten Bus den Transaktionszyklus innerhalb einer ersten bestimmten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem ersten Bus beansprucht oder wenn eine der Komponenten am zweiten Bus den Transaktionszyklus innerhalb einer zweiten bestimmten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem zweiten Bus beansprucht,
der Transaktionszyklus von der Brücke beansprucht wird, wenn keine der an die Busse angekoppelten Komponenten den Transaktionszyklus innerhalb der ersten definierten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem ersten Bus beansprucht hat, und dass,
nachdem der Transaktionszyklus von der Brücke beansprucht worden ist, die Transaktionszyklen auf den Bussen verworfen werden, wenn keine der Komponenten am zweiten Bus den Transaktionszyklus innerhalb der zweiten definierten Anzahl von Buszyklen nach Beginn des Transaktionszyklus auf dem zweiten Bus beansprucht hat, wobei das Verwerfen ein Ausführen einer Zielverwerfung am ersten Bus und einer Meisterverwerfung am zweiten Bus umfaßt.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Busse PCI-Busse sind.
3. Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch die Schritte des Ausführens von Burst-Zyklen und Einfügens von Wartezuständen während der Burst-Zyklen durch Deaktivieren eines Signals, das die Bereitschaft eine Komponente, die Bustransaktion auszuführen, anzeigt.
4. Transparente Brücke zum Koppeln zwischen einen ersten und einen zweiten Bus eines Computersystems, umfassend einen über die Brücke verlaufenden Datenweg für Daten- und Adreßkommunikation zwischen zwei Bussen, dadurch gekennzeichnet, daß eine Busschnittstelleneinheit für die Steuerung von Bustransaktionen über die Brücke nach einem der Ansprüche 1 bis 3 vorgesehen ist.
5. Brücke nach Anspruch 4, dadurch gekennzeichnet, dass die eine PCI/PCI-Brücke für das Koppeln zwischen zwei PCI-Bussen ist.
6. Brücke nach Anspruch 4 oder 5, dadurch gekennzeichnet, dass die Brücke Mittel für die elektrische Isolierung des ersten und des zweiten Busses voneinander umfaßt.
7. Brücke nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, dass ein Konfigurationsraum vorgesehen ist, der die Konfiguration der Komponenten am ersten Bus enthält.
8. Anordnung, umfassend ein Computersystem mit einem Bus und daran angekoppelten Komponenten sowie ein digitales Datensystem mit einem Bus und daran angekoppelten Komponenten, dadurch gekennzeichnet, dass zwischen den Bussen eine transparente Brücke nach einem der Ansprüche 4 bis 7 vorgesehen ist.
9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, dass die beiden Busse PCI-Busse sind und die Brücke eine PCI/PCI-Brücke ist.
DE19680668T 1995-07-05 1996-07-03 Verfahren zum Überbrücken zweier Busse, transparente Brücke zum Koppeln zwischen zwei Bussen und Anordnung mit einem Computersystem Expired - Fee Related DE19680668C2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/498,240 US5734850A (en) 1995-07-05 1995-07-05 Transparent bridge between of a computer system and a method of interfacing the buses to operate as a single logical bus
PCT/IB1996/000729 WO1997002533A1 (en) 1995-07-05 1996-07-03 A transparent bridge between buses of a computer system and a method of interfacing the buses to operate as a single logical bus

Publications (2)

Publication Number Publication Date
DE19680668T1 DE19680668T1 (de) 1997-09-18
DE19680668C2 true DE19680668C2 (de) 2003-11-20

Family

ID=23980194

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19680668T Expired - Fee Related DE19680668C2 (de) 1995-07-05 1996-07-03 Verfahren zum Überbrücken zweier Busse, transparente Brücke zum Koppeln zwischen zwei Bussen und Anordnung mit einem Computersystem

Country Status (5)

Country Link
US (1) US5734850A (de)
KR (1) KR100742718B1 (de)
AU (1) AU6315896A (de)
DE (1) DE19680668C2 (de)
WO (1) WO1997002533A1 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134622A (en) * 1995-12-27 2000-10-17 Intel Corporation Dual mode bus bridge for computer system
US6148356A (en) * 1995-12-27 2000-11-14 Intel Corporation Scalable computer system
US6175888B1 (en) * 1996-04-10 2001-01-16 International Business Machines Corporation Dual host bridge with peer to peer support
US5968144A (en) * 1996-06-27 1999-10-19 Vlsi Technology, Inc. System for supporting DMA I/O device using PCI bus and PCI-PCI bridge comprising programmable DMA controller for request arbitration and storing data transfer information
US5954809A (en) * 1996-07-19 1999-09-21 Compaq Computer Corporation Circuit for handling distributed arbitration in a computer system having multiple arbiters
US5894563A (en) * 1996-11-20 1999-04-13 Apple Computer, Inc. Method and apparatus for providing a PCI bridge between multiple PCI environments
US5918026A (en) * 1996-12-23 1999-06-29 Compaq Computer Corporation PCI to PCI bridge for transparently completing transactions between agents on opposite sides of the bridge
US6393548B1 (en) * 1997-02-14 2002-05-21 Advanced Micro Devices, Inc. Variable 16 or 32 bit PCI interface which supports steering and swapping of data
US5953511A (en) * 1997-04-08 1999-09-14 National Instruments Corporation PCI bus to IEEE 1394 bus translator
US5937175A (en) * 1997-04-08 1999-08-10 National Instruments Corporation PCI bus to IEEE 1394 bus translator employing pipe-lined read prefetching
FI971718A (fi) * 1997-04-22 1998-10-23 Nokia Telecommunications Oy Korttipaikkojen lisääminen suurikapasiteettiseen väylään
US5857082A (en) * 1997-04-25 1999-01-05 Intel Corporation Method and apparatus for quickly transferring data from a first bus to a second bus
FR2770008B1 (fr) * 1997-10-16 2001-10-12 Alsthom Cge Alkatel Dispositif de communication entre plusieurs processeurs
US6275888B1 (en) 1997-11-19 2001-08-14 Micron Technology, Inc. Method for configuring peer-to-peer bus bridges in a computer system using shadow configuration registers
US6263389B1 (en) 1998-01-21 2001-07-17 Micron Technology, Inc. Apparatus for increasing the number of loads supported by a host bus
US6041380A (en) * 1998-01-21 2000-03-21 Micron Electronics, Inc. Method for increasing the number of devices capable of being operably connected to a host bus
US5996038A (en) * 1998-01-26 1999-11-30 Intel Corporation Individually resettable bus expander bridge mechanism
US7007126B2 (en) * 1998-02-13 2006-02-28 Intel Corporation Accessing a primary bus messaging unit from a secondary bus through a PCI bridge
US6081863A (en) * 1998-03-13 2000-06-27 International Business Machines Corporation Method and system for supporting multiple peripheral component interconnect PCI buses by a single PCI host bridge within a computer system
US6260093B1 (en) * 1998-03-31 2001-07-10 Lsi Logic Corporation Method and apparatus for arbitrating access to multiple buses in a data processing system
US6449677B1 (en) * 1998-09-03 2002-09-10 Compaq Information Technologies Group, L.P. Method and apparatus for multiplexing and demultiplexing addresses of registered peripheral interconnect apparatus
US6167476A (en) * 1998-09-24 2000-12-26 Compaq Computer Corporation Apparatus, method and system for accelerated graphics port bus bridges
US6175889B1 (en) * 1998-10-21 2001-01-16 Compaq Computer Corporation Apparatus, method and system for a computer CPU and memory to high speed peripheral interconnect bridge having a plurality of physical buses with a single logical bus number
US6230227B1 (en) * 1998-12-11 2001-05-08 Compaq Computer Corp. Computer system with support for a subtractive agent on the secondary side of a PCI-to-PCI bridge
US6618777B1 (en) 1999-01-21 2003-09-09 Analog Devices, Inc. Method and apparatus for communicating between multiple functional units in a computer environment
EP1189141A3 (de) * 2000-09-13 2005-12-28 Texas Instruments Inc. Busbrücke
US6954209B2 (en) * 2000-12-06 2005-10-11 Hewlett-Packard Development Company, L.P. Computer CPU and memory to accelerated graphics port bridge having a plurality of physical buses with a single logical bus number
US6748478B1 (en) * 2000-12-27 2004-06-08 Intel Corporation System function configurable computing platform
US6973525B2 (en) * 2002-03-19 2005-12-06 Dell Products L.P. System and method for managing bus numbering
US7174410B2 (en) * 2003-04-17 2007-02-06 International Business Machines Corporation Method, apparatus and computer program product for write data transfer
US20060136650A1 (en) * 2004-12-16 2006-06-22 Jyh-Hwang Wang Data-read and write method of bridge interface
US8943257B2 (en) * 2011-09-30 2015-01-27 Intel Corporation Protocol neutral fabric

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5123092A (en) * 1988-10-21 1992-06-16 Zenith Data Systems Corporation External expansion bus interface
EP0651336A1 (de) * 1993-10-28 1995-05-03 International Business Machines Corporation Busarchitekturerweiterung mit einem Vermittlungsnetzwerk

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3206006B2 (ja) * 1991-01-25 2001-09-04 株式会社日立製作所 二重化バス制御方法及び装置
US5309568A (en) * 1992-03-16 1994-05-03 Opti, Inc. Local bus design
US5467295A (en) * 1992-04-30 1995-11-14 Intel Corporation Bus arbitration with master unit controlling bus and locking a slave unit that can relinquish bus for other masters while maintaining lock on slave unit
CA2092631C (en) * 1992-06-19 1997-04-08 Don Steven Keener Physical partitioning of logically continuous bus
US5448565A (en) * 1992-11-12 1995-09-05 International Business Machines Corp. Multiport LAN bridge
JP3183731B2 (ja) * 1992-11-17 2001-07-09 株式会社日立製作所 バスシステム及びバスブリッジ方式
US5522050A (en) * 1993-05-28 1996-05-28 International Business Machines Corporation Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus
US5455915A (en) * 1993-12-16 1995-10-03 Intel Corporation Computer system with bridge circuitry having input/output multiplexers and third direct unidirectional path for data transfer between buses operating at different rates
US5546546A (en) * 1994-05-20 1996-08-13 Intel Corporation Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge
US5557758A (en) * 1994-11-30 1996-09-17 International Business Machines Corporation Bridge between two buses of a computer system that determines the location of memory or accesses from bus masters on one of the buses

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5123092A (en) * 1988-10-21 1992-06-16 Zenith Data Systems Corporation External expansion bus interface
EP0651336A1 (de) * 1993-10-28 1995-05-03 International Business Machines Corporation Busarchitekturerweiterung mit einem Vermittlungsnetzwerk

Also Published As

Publication number Publication date
AU6315896A (en) 1997-02-05
DE19680668T1 (de) 1997-09-18
WO1997002533A1 (en) 1997-01-23
US5734850A (en) 1998-03-31
KR970705793A (ko) 1997-10-09
KR100742718B1 (ko) 2007-12-07

Similar Documents

Publication Publication Date Title
DE19680668C2 (de) Verfahren zum Überbrücken zweier Busse, transparente Brücke zum Koppeln zwischen zwei Bussen und Anordnung mit einem Computersystem
DE69032481T2 (de) Buszugriff für Digitalrechnersystem
DE69021594T2 (de) Hochgeschwindigkeitsdatenübertragung auf einem Rechnersystembus.
DE19580707C2 (de) PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus
DE60125112T2 (de) PCI-Arbiter mit unter Spannung stellbarer Steuerungsunterstützung
DE2856483C2 (de)
DE69320508T2 (de) Verfahren und Gerät zur Busarbitrierungsdurchführung mit einem Arbiter in einem Datenverarbeitungssystem
DE69627528T2 (de) Stoss-rundsenden über einen pci-bus
DE3852604T2 (de) Mikrokomputersystem mit einem Masterprozessor und einem Sklavenprozessor.
DE69522608T2 (de) Mehreinrichtungskopplung
DE3687367T2 (de) Ein/ausgabe-steuerungssystem.
DE69825915T2 (de) Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system
DE3152435C2 (de)
DE69828074T2 (de) Direkt-speicherzugriff / transaktionen auf ein bus mit niedriger pinanzahl
DE3650092T2 (de) E/a-steuerung mit zwei funktionen.
DE69016837T2 (de) VME-Multibus II-Schnittstellen-Anpassungsbaustein.
DE69223304T2 (de) Arbitrierungsverriegelungverfahren und -vorrichtung für einen entfernten Bus
DE69622830T2 (de) Asynchrone Busbrücke
DE69230699T2 (de) Asynchrone Hochleistungs-Busschnittstelle
DE69033482T2 (de) Steuerungssystem für Systembus
DE69726302T2 (de) Busschnittstellensteuerungsschaltung
DE69214702T2 (de) Speicherzugriff für die Datenübertragung in einer Ein-Ausgabevorrichtung
DE69615327T2 (de) Logische Adressbusarchitektur für Mehrprozessorsysteme
DE69318348T2 (de) Schnittstelle für asynchronen Bus zur Minimisierung von Übertragungszeiten
DE3732798A1 (de) Datenverarbeitungssystem mit ueberlappendem zugriff auf einen globalen speicher durch eine quelle mit hoher prioritaet

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8607 Notification of search results after publication
8304 Grant after examination procedure
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130201