DE10061770B4 - Zugriffsregelung für Steuerchipsätzen bei Bustransaktion - Google Patents

Zugriffsregelung für Steuerchipsätzen bei Bustransaktion Download PDF

Info

Publication number
DE10061770B4
DE10061770B4 DE10061770A DE10061770A DE10061770B4 DE 10061770 B4 DE10061770 B4 DE 10061770B4 DE 10061770 A DE10061770 A DE 10061770A DE 10061770 A DE10061770 A DE 10061770A DE 10061770 B4 DE10061770 B4 DE 10061770B4
Authority
DE
Germany
Prior art keywords
bus
control chip
data
clock
signal line
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
DE10061770A
Other languages
English (en)
Other versions
DE10061770A1 (de
Inventor
Jiin Lai
Chau-Chad Tsai
Sheng-Chang Peng
Chi-Che Tsai
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.)
Via Technologies Inc
Original Assignee
Via Technologies 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 Via Technologies Inc filed Critical Via Technologies Inc
Publication of DE10061770A1 publication Critical patent/DE10061770A1/de
Application granted granted Critical
Publication of DE10061770B4 publication Critical patent/DE10061770B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

Buszugriffsregelungs-Verfahren in einem Steuerchipsatz, wobei der Steuerchipsatz einen ersten Steuerchip und einen zweiten Steuerchip umfasst, wobei Daten zwischen dem ersten Steuerchip und dem zweiten Steuerchip durch einen Bus übertragen werden, wobei der Bus einen Zweiwege-Bus umfasst und wobei das Buszugriffsregelungs-Verfahren in einem Steuerchipsatz umfasst:
– daß der zweite Steuerchip ein Anforderungssignal zum Verwenden des Busses erklärt, wenn der zweite Steuerchip die Verwendung des Busses benötigt;
– der erste Steuerchip unverzüglich aufhört den Bus zu treiben, falls der erste Steuerchip den Bus momentan nicht verwendet, oder der erste Steuerchip aufhört den Bus zu treiben, nachdem der erste Steuerchip eine aktuelle Bustransaktion beendet, wenn der erste Steuerchip das Anforderungssignal feststellt;
– der zweite Steuerchip den Bus nach Abwarten einer vorbestimmten Zeit treibt, wenn der zweite Steuerchip feststellt, dass der erste Steuerchip den Bus momentan nicht verwendet; und
– der zweite Steuerchip den Bus nach Abwarten einer Taktanzahl zum...

Description

  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft ein Buszugriffsregelungs-Verfahren. Insbesondere betrifft die vorliegende Erfindung ein Transaktionsverfahren zwischen Steuerchipsätzen in einem Computersystem.
  • Beschreibung verwandter Technik
  • 1 ist ein Blockdiagramm, das ein PCI-Bussystem zeigt, das verschiedene Komponenten eines herkömmlichen Computersystems verbindet. Wie in 1 gezeigt, ist eine zentrale Recheneinheit 10 über eine Hostbrücke 12 mit dem PCI-Bus 14 verbunden. Das Hauptsteuergerät einiger PCI-kompatibler Peripheriegeräte, wie ein Graphikadapter 16a, eine Expansionsbusbrücke 16b, ein LAN-(Local Area Network) Adapter 16c, ein SCSI-Hostbusadapter 16d kann auch mit dem PCI-Bus 14 verbunden werden. Jeder dieser Hauptsteuergeräte kann ein Anforderungs-(REQ-)Signal aussenden, das die Verwendung des PCI-Busses 14 verlangt. Die Hostbrücke 12 dient als ein Arbitrator, der die Bewilligungs-(GNT-)Signale an das Steuergerät aussendet, wenn der PCI-Bus 14 verfügbar ist.
  • Datenübertragung zwischen PCI-kompatiblen Vorrichtungen (wie die Hauptsteuergeräte oder die obere Brücke eines Computerchipsatzes) werden durch wenige Schnittstellen-Steuersignale gesteuert. Ein Taktrahmen (FRAME) wird von einem Initiator (der das Hauptsteuergerät oder die obere Brücke sein kann) ausgegeben, der die Initialisierung einer Datenzugriffsoperation und ihrer Dauer anzeigt. Sobald das FRAME-Signal ausgegeben ist, beginnt die Datentransaktion über den PCI-Bus. Ein tiefer Spannungswert des FRAME-Signals zeigt an, dass eine Datenübertragung stattfindet. Nach dem Beginn der Datentransaktion, wird der Adress/Datenbus während des Adresstaktes eine gültige Adresse aussenden. In der Zwischenzeit werden die Befehl/Byte-Freigabe-Signalleitungen (CBE[3:0]) einen gültigen Busbefehl (gemäß der PCI-Spezifikation) aussenden, so dass die Zielvorrichtung den durch den Initiator verlangten Transaktionsmodus kennt. Im Allgemeinen sind die 4 Bits der Befehl/Byte-Freigabe-Signalleitungen in der Lage bis zu maximal 16 verschiedene Befehle zu codieren, wobei jeder Befehl in der PCI-Spezifikation im Detail definiert ist. Nachdem die effektive Adresse ausgegeben ist, beginnt ein Datentakt, in dem Daten durch den Datenbus AD übertragen werden. In der Zwischenzeit werden Byte-Freigabesignale gesendet, so dass Daten übertragen werden können. Wenn die Übertragung des FRAME-Signals aufhört, ist der letzte Datensatz übertragen und es befinden sich keine weiteren in der aktuellen Transaktion. Ein Initiator-bereit-Signal (IRDY) und ein Ziel-bereit-Signal (TRDY) werden auch durch das System verwendet, um die Bereitschaft der initiierenden Vorrichtung und der Zielvorrichtung bei einer Datentransaktion anzuzeigen. In einer Datenlesetransaktion, zeigt das IRDY Signal an, dass der Initiator bereit ist, die verlangten Daten zu empfangen. In einer Datenschreibtransaktion, zeigt das TRDY Signal an, dass die Zielvorrichtung bereit ist, die verlangten Daten zu empfangen. Ein Stop-(STOP) Signal wird durch die Zielvorrichtung verwendet, um ein Beenden der Datentransaktion vom Initiator zu fordern.
  • 2 ist ein Zeitablaufsdiagramm, das die verschiedenen Signale in der PCI-Busschnittstelle während einer Leseoperation zeigt. Der Zeitraum, in dem Daten über den PCI-Bus übertragen werden, ist als ein Bustransaktionstakt 20 bekannt. Der Bustransaktionstakt 20 umfasst einen Adresstakt 22 und einige Datentakte, beispielsweise 24a, 24b, und 24c. Jeder Datentakt 24a/b/c kann weiter in einen Wartetakt 26a/b/c und einen Datenübertragungstakt 28a/b/c geteilt werden. Das Nachstehende ist eine kurze Beschreibung der PCI-Busschnittstelle während einer Leseoperation, um die Steuersignale gemäß der PCI-Spezifikation darzustellen.
  • Während des Taktes T1 wird durch den Initiator ein FRAME-Signal geschickt, um den Start einer Datentransaktion anzuzeigen, während eine Startadresse auf die Adressbus-(AD) Leitungen gesetzt wird, um die Zielvorrichtung der Transaktion zu ermitteln. In der Zwischenzeit wird ein Lesebefehl durch die CBE-Leitungen übertragen. Nach der Zustellung des Lesebefehls wird ein Byte-Freigabesignal auf die CBE-Leitungen gesetzt. Die Byte-Freigabesignale werden während der gesamten Datentakte (einschließlich 24a, 24b und 24c) gesendet. Während Takt T2 legt der Initiator ein Initiator-bereit-Signal IRDY vor, das seine Bereitschaft zur Datenübertragung anzeigt. Jedoch ist die Zielvorrichtung immer noch nicht bereit. Deshalb bereitet die Zielvorrichtung die Daten weiter vor, während der Initiator im Wartetakt 26a des Datentaktes 24a leerläuft. Während Takt T3, hat die Zielvorrichtung alle zur Übertragung notwendigen Daten vorbereitet und sendet dabei ein Ziel-bereit-Signal TRDY aus. Folglich sind im Datentakt 28a sowohl IRDY als auch TRDY ausgegeben und so kann der Initiator anfangen, Daten von der Zielvorrichtung zu lesen. Während Takt T4 gibt die Zielvorrichtung das Ziel-bereit-Signal TRDY nicht mehr aus, was das Ende des ersten Übertragungsdatensatzes anzeigt. In der Zwischenzeit wird ein Datensatz in der Zielvorrichtung vorbereitet. Der Initiator tritt wiederum in einen Wartetakt 26b innerhalb des Datentaktes 24b ein. Während Takt T5 wird das Ziel-bereit-Signal TRDY ausgegeben, das anzeigt, dass der zweite Datensatz bereit ist. Der zweite Datensatz ist in Takt 28b für den Initiator bereit, wenn sowohl das IRDY als auch das TRDY ausgegeben werden. Wenn der Initiator wie in Takt T6 nicht genügend Zeit hat, um alle Daten von der Zielvorrichtung lesen, endet das IRDY-Signal. Da das TRDY immer noch ausgegeben wird, wird der Wartetakt 26c durch den Initiator aktiviert. Sobald der Initiator wie in Takt T7 wieder bereit ist, wird das IRDY-Signal wieder ausgegeben. Der Initiator liest die Daten von der Zielvorrichtung während des Datenübertragungstaktes 28c, wenn sowohl das IRDY- als auch das TRDY-Signal ausgegeben werden, und schließt dadurch eine einzelne Leseoperation ab.
  • Um eine ordnungsgemäße Datentransaktion gemäß der herkömmlichen PCI-Spezifikation durchzuführen, müssen komplizierte Steuersignale, Wartezustände und Arbitrationsschritte verwendet werden. Typischerweise werden gemäß der PCI-Spezifikation bis zu 45 bis 50 Signalstifte benötigt. Im Allgemeinen ist ein kompliziertes Verfahren für interne Transaktion zwischen Steuerchipsätzen nicht notwendig. Folglich wird ein vereinfachtes Transaktionsverfahren, das sich an die herkömmliche PCI-Spezifikation hält, benötigt, um interne Transaktion zwischen Steuerchipsätzen zu beschleunigen.
  • In WO 98/36360 A1 ist ein System zum Aufteilen von PC-Chipsatzfunktionen in logik- und port-integrierte Schaltkreise offenbart. Ein erster integrierter Schaltkreis enthält eine Schnittstellenlogik zwischen einem Legacy-Gerät und einem Erweiterungsbus. Ein zweiter integrierter Schaltkreis stellt Eingangs- und Ausgangsendgeräte für die Schnittstellenlogik bereit. Die Daten werden zwischen dem ersten und dem zweiten integrierten Schaltkreis in Frames übertragenen, die eine vorbestimme Zahl von Datenbits und vorprogrammierte Slots für die Zustände von Eingangs- und Ausgangssignal beinhalten.
  • In US 5 983 302 A ist ein Verfahren und ein Apparat für Vermittlung und Zugang zu einem gemeinsamen Bus offenbart. Es wird ein Computersystem bereitgestellt, das Steuerung eines gemeinsamen Bus unter vielen Geräten vermittelt, die sich im Computersystem befinden.
  • Transaktionen zwischen Steuerchips eines PC (Personal Computer) verwenden jedoch im Allgemeinen nicht alle der durch die PCI-Spezifikation bereitgestellten komplizierten Funktionen. Die Leistung zwischen den Steuerchips ist gewöhnlich verringert. Mit dem Ansteigen der Systemintegration können die Steuerchips in einem einzelnen Einzelchip integriert und mehrere Funktionen bereitgestellt werden. Beispielsweise werden die CPU (Zentralrecheneinheit), die obere Brücke und die untere Brücke integral in einem einzelnen Chip geformt. Deshalb werden die Stifte der Chippackung zu sehr wichtigen Quellen. Um die Geschwindigkeit von Transaktionen zwischen den Steuerchips zu steigern, wird eine vereinfachte und spezifische Spezifikation zur Verwendung zwischen den Steuerchips benötigt.
  • Zusammenfassung der Erfindung
  • Daher ist es Aufgabe der vorliegenden Erfindung ein einfaches Beszugriffsregelungs-Verfahren bereitzustellen, das sich an die PCI-Spezifikationen hält, und die interne Transaktion zwischen den Steuerchipsätzen beschleunigt.
  • Dies wird in der vorliegenden Erfindung durch ein Buszugriffsregelungs-Verfahren in einem Steuerchipsatz gemäß Anspruch 1 gelöst, wobei der Steuerchipsatz einen ersten Steuerchip und einen zweiten Steuerchip umfasst, wobei Daten zwischen dem ersten Steuerchip und dem zweiten Steuerchip durch einen Bus übertragen werden, wobei der Bus einen Zweiwege-Bus umfasst und wobei das Buszugriffsregelungs-Verfahren in einem Steuerchipsatz folgendes umfasst:
    der zweite Steuerchip erklärt ein Anforderungssignal zum Verwenden des Busses, wenn der zweite Steuerchip die Verwendung des Busses benötigt,
    der erste Steuerchip hört unverzüglich auf, den Bus zu treiben, falls der erste Steuerchip den Bus momentan nicht verwendet, oder der erste Steuerchip aufhört den Bus zu treiben, nachdem der erste Steuerchip eine aktuelle Bustransaktion beendet, wenn der erste Steuerchip das Anforderungssignal feststellt,
    der zweite Steuerchip treibt den Bus nach Abwarten einer vorbestimmten Zeit, wenn der zweite Steuerchip feststellt, dass der erste Steuerchip den Bus momentan nicht verwendet,
    der zweite Steuerchip treibt den Bus nach Abwarten einer Taktanzahl zum Durchführen des aktuellen Busbefehls durch den ersten Steuerchip und eines Durchlauftakts, wenn der zweite Steuerchip feststellt, dass der erste Steuerchip momentan den Bus verwendet.
  • Vorteilhafte Weiterbildungen enthalten die Unteransprüche 2 bis 6. Die vorliegende Erfindung liefert ein Steuerchip-Datentransaktionsverfahren zwischen Steuerchips in dem Steuerchipsatz und ein Busarbitrationsverfahren bzw. Buszugriffsregelungsverfahren zwischen den Steuerchips in dem Steuerchipsatz. Deshalb steigt die Leistung des Steuerchipsatzes, und die Arten und Anzahl der Signalleitungen zwischen den Steuerchips werden verringert.
  • Die vorliegende Erfindung liefert ein Datentransaktionsverfahren eines Steuerchipsatzes und ein Datentransaktionsverfahren zwischen den Steuerchips in dem Steuerchipsatz. Die Daten oder Befehle können ununterbrochen ohne jeden Wartetakt, Stop oder Neuversuch übertragen werden.
  • Die vorliegende Erfindung ist ein Datentransaktionsverfahren eines Steuerchipsatzes und ein Datentransaktionsverfahren zwischen Steuerchips in dem Steuerchipsatz, wobei die Signalleitungen für Wartezustand, Datentransaktionstakt und Stop/Neuversuch-Protokoll nicht benötigt werden.
  • Die vorliegende Erfindung liefert ein Buszugriffsregelungsverfahren zwischen Steuerchips, das die Arbitrationszeit verringern kann.
  • Die vorliegende Erfindung liefert ein Buszugriffsregelungsverfahren zwischen Steuerchips, das keine Busbewilligungs-Leitung benötigt.
  • Gemäß der vorliegenden Erfindung weisen Datenpuffer der Steuerchips des Steuerchipsatzes eine feste Größe und Anzahl auf. Zusätzlich werden Lese/Schreib-Bestätigungsbefehle nacheinander gemäß der Lese/Schreibbefehle erklärt, durch die die Steuerchips voneinander den Zustand der Puffer in den Steuerchips feststellen können. Wenn ein Steuerchip einen Befehl erklärt, müssen die entsprechenden Daten vorher vorbereitet sein. Folglich können die Signalleitungen zum Bereitstellen des Wartezustands, Datentransaktiontaktes und Stop/Neuversuch-Protokoll weggelassen werden. Folglich können Befehle oder Daten fortlaufend ohne Warten, Stoppen oder Neuversuch übertragen werden, was die Leistung steigert.
  • Gemäß dem Busarbitrationsverfahren der vorliegenden Erfindung steuert gewöhnlich ein Steuerchip die Berechtigung, den Bus zu verwenden, wobei jedoch auch der andere Chip die höhere Priorität zur Verwendung des Busses hat. Begleitend zu einer Busspezifikation ohne Wartetakt, kann das Zuweisen der Berechtigung den Bus zu verwenden, schnell und ohne Fehler erledigt werden. Deshalb wird kein GNT- Signal benötigt, und die Arbitrationszeit verringert sich. Die Gesamtleistung steigt, weil die durch den zweiten Steuerchip angeforderte Transaktion immer bewilligt wird.
  • Es ist klar, dass sowohl die vorstehende allgemeine Beschreibung und die nachstehende detaillierte Beschreibung beispielhaft sind und eine weitere Erläuterung der beanspruchten Erfindung liefern sollen.
  • Kurze Beschreibung der Zeichnungen.
  • Die begleitenden Zeichnungen wurden aufgenommen, um ein weiteres Verständnis der Erfindung zu liefern und sind aufgenommen in und bilden einen Teil dieser Spezifikation. Die Zeichnungen veranschaulichen Ausführungsformen der Erfindung, und dienen zusammen mit der Beschreibung dazu, die Prinzipien der Erfindung zu erklären. In den Zeichnungen sind
  • 1 ein Blockdiagramm, das ein PCI-Bussystem zeigt, das verschiedene Komponenten eines herkömmlichen Computersystems verbindet;
  • 2 ein Zeitverlaufsdiagramm, das die verschiedenen Signale in der PCI-Busschnittstelle während einer Leseoperation zeigt;
  • 3 ein Blockdiagramm, das Steuersignale zeigt, die in Datentransaktionen zwischen Steuerchipsätzen innerhalb eines Steuerchipsatzmodul gemäß der Ausführungsform dieser Erfindung verwendet werden.
  • 4 ein Diagramm, das einen Taktzyklus der 4 Bitzeiten zur Befehlscodierung gemäß dieser Erfindung enthält,
  • 5 schematisch ein Blockdiagramm eines Steuerchipsatzes gemäß einer bevorzugten Ausführungsform für erfindungsgemäße Schreibtransaktionen.
  • 6 schematisch ein Blockdiagramm eines Steuerchipsatzes gemäß einer bevorzugten Ausführungsform für erfindungsgemäße Lesetransaktionen.
  • 7a ein Zeitverlaufsdiagramm eines herkömmlichen Busarbitrationsverfahrens; und
  • 7b und 8 bis 11 zeigen schematisch Beispiele des erfindungsgemäßen Busarbitrationsverfahren.
  • Beschreibung der bevorzugten Ausführungsformen
  • Die vorliegende Erfindung liefert ein Transaktionsverfahren und ein Arbitrationsverfahren zwischen Steuerchipsätzen oder zwischen Chipsätzen in einem Steuerchipsatz, die die Effizienz von Datentransaktion zwischen den Steuerchipsätzen steigern kann, nämlich um den Bustransaktionsprozess zwischen den Steuerchipsätzen zu vereinfachen. Die Steuerchipsätze, die aus einer oberen Brücke und einer unteren Brücke innerhalb eines Computersystems bestehen, wie ein Personal Computer (PC), werden als ein Beispiel zum Beschreiben der bevorzugten Ausführungsform gemäß der vorliegenden Erfindung verwendet. Wie durch die herkömmliche PCI-Spezifikation definiert, werden 45 Signalleitungen zur Kommunikation zwischen der unteren Brücke und der oberen Brücke benötigt. Es werden in der bevorzugten Ausführungsform der vorliegenden Erfindung jedoch nur 15 Befehlssignalleitungen benötigt, um die durch die PCI-Spezifikation definierten 45 Befehlssignalleitung zu ersetzen. Die neu definierten 15 Befehle der vorliegenden Erfindung werden VLINK-Befehle genannt.
  • Unter Bezugnahme auf 3 und Tabelle 1, zeigt 3 schematisch ein Blockdiagramm eines Steuerchipsatzes gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung, in dem Steuersignalleitungen zwischen einer oberen Brücke und einer unteren Brücke des Steuerchipsatzes im Detail dargestellt sind. Tabelle 1 listet die Bedeutung von jeder in 3 gezeigter Steuersignalleitung auf. Der Steuerchipsatz umfasst beispielsweise die untere Brücke 30 und die obere Brücke 32. Die kommunizierenden Signalleitungen zwischen der unteren Brücke 30 und der oberen Brücke 32 sind von 45 Signalleitungen der PCI-Spezifikation auf 15 der vorliegenden Erfindung reduziert. Folglich können 30 (= 45 – 15) zusätzliche Stifte der unteren Brücke 30 und der oberen Brücke 32 für andere Aufgaben verwendet werden, durch die die Funktionen des Chipsatzes gefördert werden.
  • Wie in 3 und Tabelle 1 gezeigt, wird der durch die originale PCI-Spezifikation definierte Daten- und Adressbus (AD-Bus) erhalten, aber auf 8 Zweiweg-Signalleitungen reduziert, während CBE-, FRAME-, IRDY-, TRDY-, STOP-, DEVSEL-, REQ- und GNT-Signalleitungen vereinfacht werden zu einer Zweiweg-Byte-Freigabesignalleitung (BE), einer Aufwärtsstrecken-Befehlssignalleitung UPCMD sowie einer Aufwärtsstrecken-Strobesignalleitung UPSTB, die beide von der unteren Brücke getrieben werden und einer Abwärtsstrecken-Befehlssignalleitung DNCMD sowie einer Abwärtsstrecken-Strobesignalleitung DNSTB, die beide von der oberen Brücke getrieben werden. Sowohl die obere Brücke 32 als auch die untere Brücke 30 treibt eine unabhängige Befehlssignalleitung, die beide Busbefehle erklären können. Zusätzlich kann der Steuerchip Adressen auf dem AD-Bus und Datenlängen entsprechend des aktuellen Befehls senden oder Daten auf dem AD-Bus und Byte-Freigabesignal für die Daten auf der BE-Signalleitung senden, wenn ein Busbefehl erklärt ist und die Busberechtigung von einem Steuerchip erhalten ist. Tabelle 1
    Figure 00080001
  • 4 veranschaulicht einen zeitlichen Zusammenhang zwischen einem Bustaktsignal (CLK), einem Strobesignal (STB) und Bittakte von Datenleitungen zum erfindungsgemäßen Datenübertragen. Wie in 4 gezeigt, umfasst eine Taktperiode zwei Strobetaktperioden. Die Frequenz ist nämlich, wenn das Aufwärtsstrecken-Strobesignal und das Abwärtsstrecken-Strobesignal aktiv ist, zweimal der Frequenz des Bustaktsignals. Es werden vier Bittakte 0∼3 durch die steigenden und fallenden Flanken des Strobesignals definiert. Folglich werden 4 Bit Daten durch die Verwendung der vier Bittakte 0∼3 auf jeder Datenleitung erhalten und Busbefehle werden codiert. Folglich werden 32 Bit Daten durch die Verwendung von 8 Datenleitungen während jeder Taktperiode erhalten, was den Daten entspricht, die beim Verwenden von 32 Datenleitungen in der herkömmlichen PCI-Spezifikation übertragen werden. Wenn die BE-Signalleitung zusätzlich eine Datenlänge repräsentiert, werden 116 (4 Bit) Datenlängeninformation in einer Taktperiode erhalten.
  • Verschiedene Arten von Datentransaktion werden durch Verwenden des Aufwärtsstreckenbefehls UPCMD und des Abwärtsstreckenbefehls DNCMD definiert. Der durch die untere Brücke getriebene Aufwärtsstreckenbefehl UPCMD umfasst einen Lese-Bestätigungsbefehl (OB zu UB) C2PRA, einen Schreib-Bestätigungsbefehl (OB zu UB) C2PWA, einen Lesebefehl P2CR (UB zu OB) und einen Schreibbefehl (UB zu OB) P2CW usw. Die Beziehungen zwischen Aufwärtsstreckenbefehlen und der Bittaktcodierung sind in Tabelle 2 aufgelistet. Das Anforderungssignal REQ wird bei dem Bittakt 0 erklärt, der nicht mit den anderen Busbefehlen überlappt. Folglich kann das REQ-Signal zu jeder Zeit gesendet werden, und sogar in der selben Taktperiode, in der ein Busbefehl erklärt wird. Der durch die obere Brücke getriebene Abwärtsstreckenbefehl DNCMD umfasst einen Eingangs/Ausgangs-Lesebefehl (OB zu UB) C2PIOR, einen Speicher-bereit-Befehl (OB zu UB) C2PMR, einen Eingangs/Ausgangs-Schreibbefehl (OB zu UB) C2PIOW, einen Speicherschreibbefehl (OB zu UB) C2PMW, einen Lese-Bestätigungsbefehl (UB zu OB) P2CRA und einen Schreib-Bestätigungsbefehl (UB zu OB) P2CWA usw. Die Beziehungen zwischen Abwärtsstreckenbefehlen und der Bittaktcodierung sind in Tabelle 3 aufgelistet. Es wird kein Bewilligungssignal GNT in der vorliegenden Erfindung definiert.
  • Die durch die obere Brücke und die untere Brücke erklärten Signale entsprechen einander. Wenn die untere Brücke nacheinander eine Anzahl von P2CR und/oder P2CW erklärt, muss die obere Brücke nacheinander die entsprechenden P2CRA- und/oder P2CWA-Befehle in Antwort auf die durch die untere Brücke erklärten P2CR- und/oder P2CW-Befehle erklären. Ähnlich muss die untere Brücke nacheinander die entsprechenden C2PRA- und C2PWA-Befehle in Antwort auf die von der oberen Brücke erklärten Befehle erklären, wenn die obere Brücke nacheinander eine Anzahl von C2PIOR-, C2PMR-,C2PIOW- und C2PMW-Befehle erklärt. Zusätzlich müssen, wie in der bevorzugten Ausführungsform beschrieben, die Daten, die jedem durch den Steuerchip erklärten Befehl entsprechen, vorher vorbereitet werden. Beispielsweise müssen die in den Speicher zu schreibenden Daten bereit sein, wenn die untere Brücke einen P2CW-Befehl erklärt, und die Daten zum Übertragen der Lesedaten von dem Speicher zu der unteren Brücke müssen bereit sein, wenn die obere Brücke einen P2CRA-Befehl erklärt. Entsprechend können die übertragenen Daten Unterbrechungen und Warten vermeiden. Tabelle 2 (Aufwärtsstreckenbefehl UPCMD)
    Figure 00090001
    Tabelle 3 (Abwärtsstreckenbefehl DNCMD)
    Figure 00100001
  • 5 veranschaulicht schematisch ein Blockdiagramm eines Steuerchipsatzes gemäß einer bevorzugten Ausführungsform für erfindungsgemäße Schreibtransaktionen. Der Steuerchipsatz umfasst beispielsweise einen ersten Steuerchip und einen zweiten Steuerchip. Bei allgemeiner Anwendung des Personal Computers kann der erste und der zweite Steuerchip die obere Brücke 500 und die untere Brücke 600 sein. Der erste Steuerchip (obere Brücke) 500 und der zweite Steuerchip (untere Brücke) 600 sind durch einen speziell ausgelegten Bus miteinander verbunden, dessen Bussteuersignale die VLINK der vorliegenden Erfindung sind. Die obere Brücke 500 umfasst einen Daten-Sendeempfänger 510, Zielsteuereinrichtung 520 (beispielsweise eine Speichersteuerung), Schreib-Datenwarteschlange 525 und Schreibtransaktions-Warteschlange 530. Die untere Brücke 600 umfasst einen Daten-Sendeempfänger 610, Schreib-Puffer-Größenregister 535, Schreib-Puffer-Zählregister 540, Schreibtransaktionsgenerierer 545, Schreibtransaktions-Aufzeichnungsschaltung 550 und Schreibkomparator 555.
  • Der Daten-Sendeempfänger 510 der die VLINK-Spezifikation der vorliegenden Erfindung erfüllt, ist direkt mit dem VLINK-Bus verbunden. Der Daten-Sendeempfänger 510 kann Daten durch den VLINK-Bus senden und empfangen, um eine Anzahl von Schreibtransaktionen zu erledigen. Eine Schreibtransaktion ist dadurch definiert, dass die untere Brücke 600 einen P2CW-Befehl, und dem P2CW-Befehl entsprechende Daten sendet, und dann die obere Brücke 500 ein P2CWA-Befehl zum Beantworten des P2CW-Befehls erklärt. Die Schreibtransaktions-Warteschlange 530 speichert nacheinander zeitweilig eine Anzahl von Datenlängen und Schreibadressen aller Schreibtransaktionen. Die Tiefe der Schreibtransaktions-Warteschlange 530 bestimmt die maximale Gesamtzahl von Schreibtransaktionen, die die obere Brücke 500 bearbeiten kann. Die Schreib- Datenwarteschlange 525 speichert die Daten der unteren Brücke 600, die zu der Zielsteuereinrichtung 520 gesendet werden sollen. Die Tiefe der Schreib-Datenwarteschlange 525 bestimmt die Maximalanzahl der Schreibdaten, die die obere Brücke 500 bearbeiten kann. Die Zielsteuereinrichtung 520 sendet Daten zu einem Ziel, beispielsweise einem externen Speicher, der die Daten gemäß einer Schreibadresse und einer Datenlänge empfängt, die zuerst in der Schreibtransaktions-Warteschlange 530 gespeichert werden und die Daten, die der Schreibadresse und Datenlänge entsprechend in der Schreib-Datenwarteschlange 525 gespeichert werden. Der erste Daten-Sendeempfänger 510 sendet ein Schreib-Bestätigungssignal (den P2CWA-Befehl), um der unteren Brücke 600 mitzuteilen, dass die entsprechende Transaktion beendet ist. Dann werden die entsprechenden in der Schreib-Datenwarteschlange 525 gespeicherten Daten freigegeben, und der freigegebene Raum kann weitere Daten speichern.
  • Das Schreib-Puffer-Zählregister 540 und das Schreib-Puffer-Größenregister 535 der unteren Brücke 600 speichern jeweils die Maximalanzahl an Schreibtransaktionen, die in der Schreibtransaktions-Warteschlange 525 gespeichert werden können und die Maximalanzahl an Daten, die in der Schreib-Datenwarteschlange 525 der oberen Brücke 500 gespeichert werden können. Beispielsweise ist die in der Schreibtransaktions-Warteschlange 530 annehmbare Maximalanzahl der Schreibtransaktionen 4, und die in der Schreib-Datenwarteschlange 525 annehmbare Maximalanzahl der Daten ist 16. Die zwei Parameter, die Maximalanzahlen der Schreibtransaktionen und Daten, das heisst die Schreib-Puffer-Zahl und die Schreib-Puffer-Größe können durch BIOS- (Basic Input Output System) Konfiguration während des Bootens eingerichtet oder während der Chipsatzgestaltung festgelegt werden.
  • Der Daten-Sendeempfänger 610 ist mit dem VLINK-Bus verbunden, um Daten durch den VLINK-Bus zu empfangen und zu übertragen, um alle Schreibtransaktionen zu erledigen. Wenn der Daten-Sendeempfänger 610 ein P2CWA-Befehl empfängt, wird ein Signal, das die erfolgreiche Schreib- und Pufferfreigabe anzeigt, zur Schreibtransaktions-Aufzeichnungsschaltung 550 geschickt, um den Raum, der die Datenlänge der entsprechenden aktuellen Schreibtransaktion speichert freizugeben. Wenn eine neue Datenlänge, eine Schreibadresse und Daten einer nächsten Schreibtransaktion durch den Schreibtransaktionsgenerierer 545 erzeugt werden, wird die neue Datenlänge dann zu der Schreibtransaktions-Aufzeichnungsschaltung 550 geschickt.
  • Die Schreibtransaktions-Aufzeichnungsschaltung 550 ist in der Lage, die in der Schreib- Datenwarteschlange 530 verwendeten Datenzahlen und die in der Schreibtransaktions-Warteschlange 525 verwendeten Schreibtransaktionszahlen zu berechnen. Dies geschieht, weil die Schreibtransaktions-Aufzeichnungsschaltung 550 die Daten aller Schreibtransaktionen nacheinander speichert und weil die durch die obere Brücke 500 erklärte P2CWA gemäß der Reihenfolge der durch die untere Brücke 600 erklärten P2CW-Befehle beantwortet wird. Folglich kann die untere Brücke 600 den Zustand der Puffer in den Warteschlangen innerhalb der oberen Brücke 500 erkennen.
  • Die Schreibtransaktions-Aufzeichnungsschaltung 550 kann die in der Schreib-Datenwarteschlange 525 verwendeten Datenzahlen und die in der Schreibtransaktions-Warteschlange 530 verwendeten Schreibtransaktionszahlen zu dem Schreibkomparator 555 schicken. Der Schreibkomparator 555 vergleicht dann jeweils die empfangenen Daten mit den in dem Schreib-Puffer-Größenregister 535 gespeicherten maximalen Datenzahlen der Schreib-Datenwarteschlange 525 und den in dem Schreib-Puffer-Zählregister 540 gespeicherten maximalen Schreibtransaktionszahlen der Schreibtransaktions-Warteschlange 530. Wenn die von dem Schreibkomparator 555 empfangenen Daten weniger sind, als die maximalen Datenzahlen und die maximalen Transaktionszahlen, bestätigt der Schreibkomparator 555 dem Daten-Sendeempfänger 610 die Möglichkeit, eine weitere Schreibtransaktion zu senden.
  • 6 veranschaulicht schematisch ein Blockdiagramm eines Steuerchipsatzes gemäß einer bevorzugten Ausführungsform für erfindungsgemäße Lesetransaktionen. Der Steuerchipsatz umfasst beispielsweise einen ersten Steuerchip und einen zweiten Steuerchip. Bei allgemeiner Anwendung des Personal Computers kann der erste und der zweite Steuerchip die obere Brücke 500 und die untere Brücke 600 sein. Der erste Steuerchip (obere Brücke) 500 und der zweite Steuerchip (untere Brücke) 600 sind durch einen speziell ausgelegten Bus miteinander verbunden, dessen Bussteuersignale die VLINK der vorliegenden Erfindung sind. Die obere Brücke 500 umfasst einen Daten-Sendeempfänger 510, Zielsteuereinrichtung 520 (beispielsweise eine Speichersteuerung), Lese-Datenwarteschlange 625 und eine Lesetransaktions-Warteschlange 630. Die untere Brücke 600 umfasst einen Daten-Sendeempfänger 610, ein Lese-Puffer-Größenregister 635, ein Lese-Puffer-Zählregister 640, einen Lesetransaktionsgenerierer 545, eine Lesetransaktions-Aufzeichnungsschaltung 650 und einen Lesekomparator 655.
  • Der Daten-Sendeempfänger 510, der die VLINK-Spezifikation der vorliegenden Erfindung erfüllt, ist direkt mit dem VLINK-Bus verbunden. Der Daten-Sendeempfänger 510 kann Daten durch den VLINK-Bus senden und empfangen, um eine Anzahl von Lesetransaktionen zu erledigen. Eine Lesetransaktion ist dadurch definiert, dass die untere Brücke 600 einen P2CR-Befehl sendet, und dann die obere Brücke 500 einen P2CRA-Befehl und entsprechende Daten zum Beantworten des P2CR-Befehls sendet. Die Lesetransaktions-Warteschlange 630 speichert nacheinander zeitweilig eine Anzahl von Datenlängen und Leseadressen aller Lesetransaktionen. Die Tiefe der Lesetransaktions-Warteschlange 630 bestimmt die maximale Zahl von Lesetransaktionen, die die obere Brücke 500 bearbeiten kann. Die Lese-Datenwarteschlange 625 speichert zeitweilig eine Zahl der Lesedaten von der Zielsteuereinrichtung, die zu der unteren Brücke 600 gesendet werden sollen. Die Tiefe der Lese-Datenwarteschlange 625 bestimmt die Maximalanzahl der Lesedaten, die die obere Brücke 500 bearbeiten kann. Die Zielsteuereinrichtung 520 liest Daten von einem Ziel, beispielsweise einem externen Speicher, und speichert dann in der Lese-Datenwarteschlange 625 gemäß einer, zuerst in der Lesetransaktions-Warteschlange 630 gespeicherten Leseadresse und Datenlänge und speichert Daten, die der Leseadresse und Datenlänge entsprechen in der Lese-Datenwarteschlange 625. Der erste Daten-Sendeempfänger 510 sendet ein Lese-Bestätigungssignal (den P2CRA-Befehl) und die in der Lese-Datenwarteschlange 625 gespeicherten Daten. Dann werden die entsprechenden in der Lese-Datenwarteschlange 625 gespeicherten Daten freigegeben, und der freigegebene Raum kann weitere Daten speichern.
  • Das Lese-Puffer-Zählregister 640 und das Lese-Puffer-Größenregister 635 der unteren Brücke 600 speichern jeweils die Maximalanzahl an Lesetransaktionen, die in der Lesetransaktions-Warteschlange 630 gespeichert werden können und die Maximalanzahl an Daten die in der Lese-Datenwarteschlange 625 der oberen Brücke 500 gespeichert werden können. Beispielsweise ist Maximalanzahl der Lesetransaktionen, die in der Lesetransaktions-Warteschlange 630 gespeichert werden können, die Lesepufferzahl 4, und für die Maximalanzahl der Daten die in der Lese-Datenwarteschlange 625 gespeichert werden können, die Lesepuffergrösse ist 16. Die zwei Parameter, die Lesepufferzahl und die Lesepuffergrösse können durch BIOS- (Basic Input Output System) Konfiguration während des Bbootens eingerichtet oder während der Chipsatzgestaltung festgelegt werden.
  • Der Daten-Sendeempfänger 610 ist mit dem VLINK-Bus verbunden, um Daten durch den VLINK-Bus zu empfangen und zu übertragen, um alle Lesetransaktionen zu erledigen. Wenn der Daten-Sendeempfänger 610 ein P2CRA-Befehl empfängt, wird ein Signal, das die erfolgreiche Lese- und Pufferfreigabe anzeigt, zur Lesetransaktions-Aufzeichnungsschaltung 650 geschickt, um den Raum, der die Datenlänge der aktuell entsprechenden Lesetransaktion speichert freizugeben. Wenn eine neue Datenlänge, eine Leseadresse und Daten einer nächsten Lesetransaktion durch den Lesetransaktionsgenerierer 645 erzeugt werden, wird die neue Datenlänge dann zu der Lesetransaktions-Aufzeichnungsschaltung 650 geschickt.
  • Die Lesetransaktions-Aufzeichnungsschaltung 650 ist in der Lage, die in der Lese-Datenwarteschlange 625 verwendeten Datenzahlen und die in der Lesetransaktions-Warteschlange 630 verwendeten Lesetransaktionszahlen zu berechnen. Dies geschieht, weil die Lesetransaktions-Aufzeichnungsschaltung 650 die Daten aller Lesetransaktionen nacheinander speichert und weil die durch die obere Brücke 500 erklärten P2CRA gemäß der Reihenfolge der durch die untere Brücke 600 erklärten P2CR-Befehle beantwortet wird. Folglich kann die untere Brücke 600 den Zustand der Puffer in den Warteschlangen innerhalb der obere Brücke 500 erkennen.
  • Die Lesetransaktions-Aufzeichnungsschaltung 650 kann die in der Lese-Datenwarteschlange 625 verwendeten Datenzahlen und die in der Lesetransaktions-Warteschlange 630 verwendeten Lesetransaktionszahlen zu dem Lesekomparator 655 schicken. Der Lesekomparator 655 vergleicht dann jeweils die empfangenen Daten mit den in dem Lese-Puffer-Größenregister 635 gespeicherten maximalen Datenzahlen der Lese-Datenwarteschlange 625 und den in dem Lese-Puffer-Zählregister 640 gespeicherten maximalen Lesetransaktionszahlen der Lesetransaktions-Warteschlange 630. Wenn die von dem Lesekomparator 655 empfangenen Daten weniger sind als die maximalen Datenzahlen und die maximalen Lesetransaktionszahlen, bestätigt der Lesekomparator 655 dem Daten-Sendeempfänger 610 die Möglichkeit eine weitere Lesetransaktion zu starten.
  • Die obere Brücke und die untere Brücke sind jeweils der erste Steuerchipsatz und der zweite Steuerchipsatz und die Befehle werden durch die untere Brücke gesendet, um die obere Brücke zu steuern, Daten zu lesen oder zu schreiben. Jedoch kann für den Fachmann sowohl die obere als auch die untere Brücke entsprechende Strukturen aufweisen, und deshalb sind die Befehle nicht darauf beschränkt, durch die obere Brücke 500 oder die untere Brücke 600 gesendet zu werden. Es kann nämlich die untere und die obere Brücke jeweils der erste Steuerchipsatz und der zweite Steuerchipsatz sein.
  • Die vorstehende Beschreibung erörtert nicht, wie die obere Brücke und die untere Brücke die Berechtigung zur Verwendung des VLINK-Busses erhalten. Die nachstehenden Abschnitte erörtern ein erfindungsgemäßes Arbitrationsverfahren zwischen Chipsätzen. Erfindungsgemäß steuert gewöhnlich der erste Steuerchip die Berechtigung den Bus zu verwenden, jedoch hat der zweite Steuerchip die höhere Priorität den Bus zu verwenden. Wenn der zweite Steuerchip ein Anforderungssignal zum Verwenden des Busses erklärt, muss der erste Steuerchip die Busberechtigung sofort dem zweiten Steuerchip freigeben oder die Busberechtigung dem zweiten Steuerchip freigeben, unmittelbar nachdem der erste Steuerchip den aktuellen Busbefehlstakt beendet. Begleitend zu einer Busspezifikation ohne Wartetakt, wie einen VLINK-Bus, kann das Zuweisen der Berechtigung den Bus zu verwenden schnell und ohne Fehler erledigt werden.
  • Die vorliegende Erfindung betrifft ein Verfahren zur Busarbitration innerhalb eines Steuerchipsatzes. Der Steuerchipsatz kann einen ersten Steuerchip (wie eine obere Brücke) und einen zweiten Steuerchip (wie eine untere Brücke) umfassen. Daten werden zwischen den ersten und den zweiten Steuerchips ohne Wartetakte durch einen Bus (wie ein VLINK-Bus) übertragen. Der Bus umfasst wie in 36 gezeigt, weiterhin einen gemeinsamen Zweiweg-Bus.
  • Der zweite Steuerchip muss alle Busbefehle mit festen Taktzahlen und die Taktzahlen, die die Befehle in dem Zweiweg-Bus verwenden kennen. Wenn der zweite Steuerchip dem ersten Steuerchip einen ersten Befehl (wie einen Lesebefehl) erklärt, muss der zweite Steuerchip die Taktzahlen des Bestätigungsbefehls und die dem durch den ersten Steuerchip erklärten ersten Befehl entsprechenden Daten speichern, in dem die Taktzahlen des Bestätigungsbefehls und durch den ersten Befehl beantwortete Daten durch in dem ersten Befehl enthaltene Information festgelegt sind. Wenn beispielsweise die untere Brücke einen P2CR-Befehl der obere Brücke erklärt, wird die Datenlänge durch die untere Brücke festgestellt und der VLINK-Bus benötigt keinen Wartetakt, und folglich kann die untere Brücke die Taktzahlen eines von der oberen Brücke gesendeten P2CRA-Befehls und Daten kennen.
  • Wenn der zweite Steuerchip den Bus verwenden muss, erklärt der zweite Steuerchip direkt ein Busanforderungssignal. Wenn der erste Steuerchip das Busanforderungssignal wahrnimmt und wenn der erste Steuerchip den Zweiweg-Bus momentan nicht verwendet, dann gibt der erste Steuerchip die Busberechtigung dem zweite Steuerchip frei und treibt nicht den Zweiweg-Bus. Wenn aber der erste Steuerchip den Zweiweg-Bus momentan verwendet, gibt der erste Steuerchip die Busberechtigung dem zweite Steuerchip frei, unmittelbar nachdem der Steuerchip den momentanen Busbefehl und Transaktion beendet.
  • Wenn im Gegensatz dazu der zweite Steuerchip das Busanforderungssignal erklärt, stellt der zweite Steuerchip dann fest, ob der Zweiweg-Bus momentan von dem ersten Steuerchip verwendet wird. Wenn der zweite Steuerchip nicht feststellt, dass der erste Steuerchip gegenwärtig den Zweiweg-Bus verwendet, wartet der zweite Steuerchip einen vorbestimmten Takt und beobachtet fortlaufend den Zweiweg-Bus. Der zweite Steuerchip treibt dann den Zweiweg-Bus nach dem vorbestimmten Wartetakt.
  • Die Aufgabe des vorbestimmten Wartetaktes ist es, dass die durch den Zweiweg-Bus übertragenen Wartetakte verzögert werden können, um zu verhindern, dass der zweite Steuerchip feststellt, daß der erste Steuerchip nicht den Bus verwendet, solange ein Befehl durch den ersten Steuerchip erklärt wurde. Um zusätzlich zu verhindern, dass der erste und der zweite Steuerchip den Zweiweg-Bus gleichzeitig treiben, muss es einen Durchlauftakt von der Länge einer Taktperiode geben, um die Busberechtigung zu übertragen.
  • Wenn der zweite Steuerchip feststellt, dass der erste Steuerchip den Bus momentan verwendet, kann die untere Brücke feststellen, welcher Busbefehl momentan durch den ersten Steuerchip ausgeführt wird und welche Taktzahlen zur Erledigung des Busbefehls benötigt werden. Der zweite Steuerchip treibt dann den Bus nach Abwarten eines Durchlauftaktes, nachdem der erste Steuerchip den momentanen Busbefehl erledigt. In dem herkömmlichen Busarbitrationsverfahren mit einem GNT-Befehl treibt der erste Steuerchip einen GNT-Befehl zu dem zweiten Steuerchip, um zu bestätigen, dass der zweite Steuerchip anfangen kann den Bus zu treiben und dann der zweite Steuerchip den Bus nach einem Durchlauftakt treibt, nachdem der zweite Steuerchip den durch den erste Steuerchip gesendeten GNT-Befehl feststellt. Mit Bezug auf 7A erklärt der zweite Steuerchip bei Takt T1 ein Anforderungssignal DREQ. Bei Takt T2 erklärt der zweite Steuerchip ein Signal REQSTB. Der erste Steuerchip empfängt bei Takt T4 das Anforderungssignal und erklärt unmittelbar ein GNT-Befehl, um dem zweiten Steuerchip zu bestätigen, dass der Bus verwendet werden kann. Der erste Steuerchip hört bei Takt T5 auf, den Bus zu treiben. Bei Takt T6 empfängt der zweite Steuerchip das GNT-Signal und beginnt dann den Bus zu treiben. Folglich wird die Zeit für die Arbitration der Busberechtigung durch die Verwendung des GNT-Befehls gemäß des herkömmlichen Verfahrens verschwendet.
  • Nachstehend sind einige Beispiele zum Beschreiben der Zeitverläufe gemäß des erfindungsgemäßen Verfahrens beschrieben. 7B, 811 zeigen schematisch die Zeitverlaufsdiagramme, die das Bewilligen und das Anfordern der Busberechtigung betreffen. In den nachstehenden Beispielen erklärt die untere Brücke ein Anforderungssignal, um den Bus zu verwenden. Das Signal DREQ stellt ein inneres Signal dar, mit dem die untere Brücke fordert den Bus zu verwenden. Dem hohen Niveau des Signals DREQ entspricht, dass die untere Brücke fordert den Bus intern zu verwenden. Das Signal REQSTB ist ebenfalls ein internes Signal, in welchem die untere Brücke bei dem Bittakt 0 unter Verwendung der Aufwärtsstrecken-Befehlssignalleitung UPCMD ein REQ-Signal erklärt, wenn das REQSTB auf hohem Niveau ist. Dem hohen Niveau der Signale HOSTOE oder HUBOE entspricht jeweils, dass die obere Brücke oder die untere Brücke die Busberechtigung zum Verwenden des Busses erhält.
  • Auf 7B wird Bezug genommen. Bei Takt T1 steigt das Signal DREQ auf ein hohes Niveau, was bedeutet, dass die untere Brücke die Verwendung des Busses benötigt. Bei Takt T2, steigt das Strobeanforderungssignal REQSTB auf ein hohes Niveau, und die untere Brücke erklärt ein tatsächliches Anforderungssignal REQ bei dem Bittakt 0 unter Verwendung von UPCMD. Das REQSTB wird wegen der Übertragungsverzögerung in dem Takt T4 angenommen. Folglich kann die obere Brücke einen Abwärtsstreckenbefehl DNCMD bei Takt T3 erklären, wenn die obere Brücke einen Befehlstakt beginnt, und die untere Brücke stellt den Befehlstakt bis Takt 5 fest. Wenn die obere Brücke keinen Abwärtsstreckenbefehl erklärt, dann hat die untere Brücke die Berechtigung den BE/AD-Bus zu verwenden und erklärt einen Aufwärtsstreckenbefehl und treibt den BE/AD-Bus bei Takt T5. In diesem Beispiel erklärt die untere Brücke bei Takt T2 einen tatsächlichen REQ-Befehl und treibt dem BE/AD-Bus bei Takt T5 nach abwarten eines vorbestimmten Taktes (drei Taktzahlen) der einen Durchlauftakt umfasst.
  • Auf 8 wird Bezug genommen. Bei Takt T1 steigt das Signal DREQ auf ein hohes Niveau, was bedeutet, dass die untere Brücke die Verwendung des Busses benötigt. Bei Takt T2, steigt das Signal REQSTB auf ein hohes Niveau, und die untere Brücke erklärt dann bei dem Bittakt 0 ein tatsächliches Anforderungssignal REQ durch die Aufwärtsstrecken-Befehlssignalleitung UPCMD. Die obere Brücke erklärt jedoch bei Takt T3 einen Abwärtsstreckenbefehl, wie beispielsweise einen P2CRA-Befehl. Angenommen, dass die Datenlänge, die der Transaktion entspricht, gleich acht Doppelwörtern (8DW) ist, werden die 8 DW Daten während der Takte T3 bis T10 übertragen. Die untere Brücke kennt die Taktzahlen der Transaktion und bestätigt, dass die obere Brücke die Busberechtigung nach Beenden der Transaktion freigibt, und dass die untere Brücke folglich bei Takt T12 nach einem Durchlauftakt T11 den BE/AD-Bus treiben kann.
  • Auf 9 wird Bezug genommen. Bei Takt T1 steigt DREQ auf ein hohes Niveau, was bedeutet, dass die untere Brücke die Verwendung des Busses benötigt. Bei Takt T2, wechselt das Strobeanforderungssignal REQSTB auf ein hohes Niveau, und die untere Brücke erklärt bei dem Bittakt 0 ein tatsächliches Anforderungssignal REQ durch die Aufwärtsstrecken-Befehlssignalleitung UPCMD. Die obere Brücke erklärt jedoch ein Abwärtsstreckenbefehl, beispielsweise einen C2PR-Befehl. Die Taktzahl des C2PR-Befehls ist auf eine Taktperiode festgelegt, die bei Takt T3 ausgeführt wird. Die untere Brücke kennt die Taktzahlen aller Befehle mit festen Ausführungstakten und bestätigt, dass die obere Brücke die Busberechtigung freigeben wird. Folglich kann die untere Brücke bei Takt T5 nach einem Durchlauftakt den Zweiweg-BE/AD-Bus treiben.
  • Auf 10 wird Bezug genommen. Angenommen, dass REQSTB hoch ist, und der unteren Brücke das Verwenden des Busses gestattet wurde, beginnt die untere Brücke den Aufwärtsstreckenbefehl UPCMD zu erklären und den Zweiweg-Bus zu treiben. In der bevorzugten Ausführungsform werden aufeinanderfolgende P2CR-Befehle erklärt und Daten während der Takte T5 und T6 übertragen. Bei Takt T6, wechselt das Signal REQSTB auf ein tiefes Niveau. Selbst die untere Brücke verwendet nämlich immer noch den Bus und erklärt einen P2CR-Befehl, das Anforderungssignal wurde jedoch bei Bittakt 0 des Taktes T6 widerrufen. Folglich stellt die obere Brücke fest, dass die untere Brücke vor Takt T8 aufhört die Verwendung des Busses anzufordern, und treibt die BE/AD-Signalleitungen bei Takt T8.
  • Auf 11 wird Bezug genommen. Die obere Brücke erklärt bei Takt T1 einen Lesebefehl C2PR. Wenn die durch die untere Brücke vorbereiteten Daten bereit sind, treibt die untere Brücke das Signal REQSTB auf ein hohes Niveau. Nach dem Abwarten dreier vorbestimmter Taktzeiten treibt die untere Brücke den AD-Bus, um die von der oberen Brücke bei Takt T7 benötigten Daten zu senden und erklärt zur gleichen Zeit einen C2PRA-Befehl auf der UPCMD-Signalleitung. Zusätzlich wurde das bei Bittakt 0 von Takt T7 erklärte Anforderungssignal REQ widerrufen, und die obere Brücke erhält bei T9 die Berechtigung den Bus zu verwenden.

Claims (6)

  1. Buszugriffsregelungs-Verfahren in einem Steuerchipsatz, wobei der Steuerchipsatz einen ersten Steuerchip und einen zweiten Steuerchip umfasst, wobei Daten zwischen dem ersten Steuerchip und dem zweiten Steuerchip durch einen Bus übertragen werden, wobei der Bus einen Zweiwege-Bus umfasst und wobei das Buszugriffsregelungs-Verfahren in einem Steuerchipsatz umfasst: – daß der zweite Steuerchip ein Anforderungssignal zum Verwenden des Busses erklärt, wenn der zweite Steuerchip die Verwendung des Busses benötigt; – der erste Steuerchip unverzüglich aufhört den Bus zu treiben, falls der erste Steuerchip den Bus momentan nicht verwendet, oder der erste Steuerchip aufhört den Bus zu treiben, nachdem der erste Steuerchip eine aktuelle Bustransaktion beendet, wenn der erste Steuerchip das Anforderungssignal feststellt; – der zweite Steuerchip den Bus nach Abwarten einer vorbestimmten Zeit treibt, wenn der zweite Steuerchip feststellt, dass der erste Steuerchip den Bus momentan nicht verwendet; und – der zweite Steuerchip den Bus nach Abwarten einer Taktanzahl zum Durchführen des aktuellen Busbefehls durch den ersten Steuerchip und eines Durchlauftakts treibt, wenn der zweite Steuerchip feststellt, dass der erste Steuerchip momentan den Bus verwendet.
  2. Verfahren gemäß Anspruch 1, weiter umfassend: – daß der erste Steuerchip Taktzahlen zum Durchführen des aktuellen Busbefehls und Taktzahlen zum Verwenden des Zweiweg-Busses zu dem zweiten Steuerchip liefert; – daß der zweite Steuerchip Taktzahlen der Bestätigung und Daten abspeichert, die durch den ersten Steuerchip entsprechend der unerledigten Befehle zurückgeliefert wurden, wenn der zweite Steuerchip dem ersten Steuerchip die Befehle erklärt, wobei die Taktzahlen der durch den ersten Steuerchip beantworteten Bestätigung und Daten durch die unerledigten Befehle festgelegt sind.
  3. Verfahren gemäß Anspruch 1, wobei der Bus weiter einen Adress/Daten-Bus, eine Längen/Byte-Freigabesignalleitung, eine Aufwärtsstrecken-Befehlssignalleitung, eine Aufwärtsstrecken-Strobesignalleitung, eine Abwärtsstrecken-Befehlssignalleitung, eine Abwärtsstrecken-Strobesignalleitung und eine Taktsignalleitung umfasst, wobei der erste Steuerchip Bustransaktionen durchführt durch Betreiben des Adress/Datenbus, Längen/Byte-Freigabe-Signalleitung, der Abwärtsstrecken-Befehlssignalleitung, der Abwärtsstrecken-Strobesignalleitung und der Taktsignalleitung, und wobei der zweite Steuerchip Bustransaktionen durchführt durch Betreiben des Adress/Datenbus, der Längen/Byte-Freigabe-Signalleitung, Aufwärtsstrecken-Befehlssignalleitung, der Aufwärtsstrecken-Strobesignalleitung und der Taktsignalleitung, wobei der Zweiweg-Bus aus dem Adress/Daten-Bus und der Längen/Byte-Freigabesignalleitung besteht.
  4. Verfahren gemäß Anspruch 3, wobei die Frequenzen der Aufwärtsstrecken-Strobesignalleitung und der Abwärtsstrecken-Strobesignalleitung von der doppelten Frequenz des Taktsignals sind.
  5. Verfahren gemäß Anspruch 6, wobei das Anforderungssignal durch die Aufwärtsstrecken-Befehlssignalleitung erklärt wird.
  6. Verfahren gemäß Anspruch 7, wobei das Anforderungssignal bei einer ersten Signaländerung innerhalb eines Taktsignals durch die Aufwärtsstrecken-Befehlssignalleitung erklärt wird.
DE10061770A 1999-12-15 2000-12-12 Zugriffsregelung für Steuerchipsätzen bei Bustransaktion Expired - Lifetime DE10061770B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW088121973A TW468112B (en) 1999-12-15 1999-12-15 Arbitrating method of bus between control chipsets
TW088121973 1999-12-15

Publications (2)

Publication Number Publication Date
DE10061770A1 DE10061770A1 (de) 2001-08-09
DE10061770B4 true DE10061770B4 (de) 2007-11-08

Family

ID=21643386

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10061770A Expired - Lifetime DE10061770B4 (de) 1999-12-15 2000-12-12 Zugriffsregelung für Steuerchipsätzen bei Bustransaktion

Country Status (4)

Country Link
US (1) US6721833B2 (de)
JP (1) JP4583590B2 (de)
DE (1) DE10061770B4 (de)
TW (1) TW468112B (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959372B1 (en) * 2002-02-19 2005-10-25 Cogent Chipware Inc. Processor cluster architecture and associated parallel processing methods
US7085866B1 (en) * 2002-02-19 2006-08-01 Hobson Richard F Hierarchical bus structure and memory access protocol for multiprocessor systems
JP2005250671A (ja) * 2004-03-02 2005-09-15 Sony Corp 通信システム、通信装置、通信方法およびプログラム
CN100336045C (zh) * 2004-11-19 2007-09-05 威盛电子股份有限公司 多功能芯片组及相关方法
US7174403B2 (en) * 2005-02-24 2007-02-06 Qualcomm Incorporated Plural bus arbitrations per cycle via higher-frequency arbiter
US20060277444A1 (en) * 2005-06-03 2006-12-07 Nicholas Holian Recordation of error information
US7467245B2 (en) * 2005-07-22 2008-12-16 Cisco Technology, Inc. PCI arbiter
US7757031B2 (en) * 2005-10-24 2010-07-13 Via Technologies, Inc. Data transmission coordinating method and system
US7945719B2 (en) 2006-09-20 2011-05-17 Intel Corporation Controller link for manageability engine
CN104978302B (zh) * 2015-06-24 2018-02-23 山东超越数控电子股份有限公司 一种基于tcm芯片的智能安全usb接口控制方法
TWI637269B (zh) * 2017-12-26 2018-10-01 奇景光電股份有限公司 電子裝置及其操作方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998036360A1 (en) * 1997-02-18 1998-08-20 Advanced Micro Devices, Inc. System for partitioning pc chipset functions into logic and port integrated circuits
US5983302A (en) * 1995-05-08 1999-11-09 Apple Comptuer, Inc. Method and apparatus for arbitration and access to a shared bus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324544A (ja) * 1992-05-15 1993-12-07 Hitachi Ltd バス制御方法
TW242183B (en) * 1993-11-26 1995-03-01 United Microelectronics Corp Chip set architecture for personal computer
TW400483B (en) * 1994-03-01 2000-08-01 Intel Corp High performance symmetric arbitration protocol with support for I/O requirements
US6073199A (en) * 1997-10-06 2000-06-06 Cisco Technology, Inc. History-based bus arbitration with hidden re-arbitration during wait cycles
US6195722B1 (en) * 1998-01-26 2001-02-27 Intel Corporation Method and apparatus for deferring transactions on a host bus having a third party agent
US6202112B1 (en) * 1998-12-03 2001-03-13 Intel Corporation Arbitration methods to avoid deadlock and livelock when performing transactions across a bridge
US6223244B1 (en) * 1998-12-10 2001-04-24 International Business Machines Corporation Method for assuring device access to a bus having a fixed priority arbitration scheme
US6253270B1 (en) * 1998-12-30 2001-06-26 Intel Corporation Method and apparatus for arbitrating ownership of an interface between hub agents
US6347351B1 (en) * 1999-11-03 2002-02-12 Intel Corporation Method and apparatus for supporting multi-clock propagation in a computer system having a point to point half duplex interconnect

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5983302A (en) * 1995-05-08 1999-11-09 Apple Comptuer, Inc. Method and apparatus for arbitration and access to a shared bus
WO1998036360A1 (en) * 1997-02-18 1998-08-20 Advanced Micro Devices, Inc. System for partitioning pc chipset functions into logic and port integrated circuits

Also Published As

Publication number Publication date
JP4583590B2 (ja) 2010-11-17
JP2001216254A (ja) 2001-08-10
TW468112B (en) 2001-12-11
US6721833B2 (en) 2004-04-13
US20010004749A1 (en) 2001-06-21
DE10061770A1 (de) 2001-08-09

Similar Documents

Publication Publication Date Title
DE69936060T2 (de) Verfahren und Vorrichtung für eine verbesserte Schnittstelle zwischen Computerkomponenten
DE3909948C2 (de)
DE69027515T2 (de) Vorrichtung für Prioritätsarbitrierungskonditionierung bei gepufferter Direktspeicheradressierung
DE69932400T2 (de) Steuerungsvorrichtung für einen Portverwalter zur Verbindung von verschiedenen Funktionsmodulen
DE60013470T2 (de) Gerät zur initialisierung einer rechnerschnittstelle
DE3788805T2 (de) Prioritaetstechnik für einen zerteilten transaktionsbus in einem multiprozessorrechnersystem.
DE3280451T2 (de) Verfahren zur Initialisierung eines Datenverarbeitungssystems.
EP0929041B1 (de) Verfahren und Anordnung zum Betreiben eines Bussystems
DE69108434T2 (de) Mehrgruppen-Signalprozessor.
DE3688763T2 (de) Mehrfachport-Übertragungsadaptiervorrichtung.
DE19900325B4 (de) Vorrichtung und Verfahren zum Senden und Empfangen von Daten in eine und aus einer universellen seriellen Buseinrichtung
DE69825915T2 (de) Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system
DE3704056A1 (de) Peripherer dma-controller fuer datenerfassungssysteme
DE102005009174A1 (de) Bussystem, zugehöriges Busbelegungszuteilverfahren und Datenübertragungsverfahren
DE3882991T2 (de) Anordnung und methode zur erzielung von unterbrechungen mit einem "pended bus".
DE69214702T2 (de) Speicherzugriff für die Datenübertragung in einer Ein-Ausgabevorrichtung
DE19983506B3 (de) Verfahren zum Betreiben eines zeitlich gemultiplexten Adress- und Datenbusses in einem Computersystem und Busschnittstelle hierfür
DE10061770B4 (de) Zugriffsregelung für Steuerchipsätzen bei Bustransaktion
DE10234992A1 (de) Retry-Mechanismus für blockierende Schnittstellen
DE4018481A1 (de) Mikroprozessor hold- und lock-schaltung
DE60017774T2 (de) Verfahren und vorrichtung zur unterstützung von mehrtaktübertragung in einem rechnersystem mit einer punkt-zu-punkt halb-duplex verbindung
DE10314175A1 (de) Bussystem sowie Informationsverarbeitungssystem, das ein Bussystem einschliesst
DE10214067B4 (de) Integrierter Schaltkreischip mit Hochgeschwindigkeitsdatenschnittstelle sowie zugehöriges Southbridgebauelement und Verfahren
DE10057794B4 (de) Verfahren für Datentransaktionen zwischen Steuerchipsätzen
DE19580195C2 (de) Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8364 No opposition during term of opposition
R071 Expiry of right