DE19580195C2 - Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung - Google Patents

Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung

Info

Publication number
DE19580195C2
DE19580195C2 DE19580195T DE19580195T DE19580195C2 DE 19580195 C2 DE19580195 C2 DE 19580195C2 DE 19580195 T DE19580195 T DE 19580195T DE 19580195 T DE19580195 T DE 19580195T DE 19580195 C2 DE19580195 C2 DE 19580195C2
Authority
DE
Germany
Prior art keywords
signal
lines
command
controller
state machine
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
DE19580195T
Other languages
English (en)
Other versions
DE19580195T1 (de
Inventor
Timothy M Dobbins
Zohar Bogin
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE19580195T1 publication Critical patent/DE19580195T1/de
Application granted granted Critical
Publication of DE19580195C2 publication Critical patent/DE19580195C2/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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/22Means for limiting or controlling the pin/gate ratio

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)
  • Multi Processors (AREA)

Description

Die Erfindung betrifft ein Computersystem mit einem Pro­ zessor, einem mit dem Prozessor gekoppelten ersten Steuer­ bauelement zum Steuern von Signalübertragungen auf einem ersten Bus und einem zweiten Steuerbauelement zum Steuern von Signalübertragungen auf einem zweiten Bus.
Mikroprozessoren, Steuereinrichtungen und andere Halb­ leiterkomponenten kommunizieren miteinander und mit externen Geräten über Kontaktstifte bzw. Pins. In der traditionellen Computerarchitektur ist jedem Signal ein separater Kontakt­ stift zu der Komponente zugeordnet. Wenn ein neues Design ein neues Signal spezifiziert, muß der Komponente daher ein neuer Kontaktstift hinzugefügt werden. Wenn die Gesamtanzahl der Kontaktstifte eine bestimmte Anzahl erreicht, kann die gegebene Einzelchipgröße der Halbleiterkomponente nicht län­ ger alle Kontaktstifte unterstützen. An diesem Punkt muß die Größe der Komponente vergrößert werden, um die zusätzlichen Kontaktstifte unterzubringen. Die Vergrößerung der Einzel­ chips führt jedoch zu höheren Herstellungskosten, da die Anzahl der Komponenten, die aus einer vorgegebenen Wafer- Größe hergestellt werden, abnimmt. Die Vergrößerung der Ein­ zelchips führt außerdem zu höheren Herstellungskosten, da die Ausbeute mit zunehmender Einzelchipgröße abnimmt.
Für Halbleiterkomponenten mit hohen Marktwerten sind die durch die Verwendung einer größeren Einzelchipgröße entste­ henden zusätzlichen Herstellungskosten nicht bedeutend. Für Halbleiterkomponenten mit niedrigeren Marktwerten haben die zusätzlichen Herstellungskosten aufgrund einer größeren Ein­ zelchipgröße jedoch eine bedeutendere Auswirkung, und zwar im proportionalen Bereich.
Bei bekannten Computersystemen, die einen Prozessor und eine Bussteuereinrichtung aufweisen, ist die Bussteuerein­ richtung mit dem Prozessor über einen Prozessorbus verbun­ den, der Adreß-, Daten- und Steuersignalleitungen umfaßt. Darüber hinaus ist die Bussteuereinrichtung mit dem von ihr kontrollierten Bus gekoppelt. Dies erfordert eine vorgege­ bene Anzahl von Pins. Wenn das Computersystem durch eine mit einem weiteren Bus gekoppelte weitere Bussteuereinrichtung erweitert werden soll, die mit der ersten Bus-Steuereinrich­ tung in der Art einer Master-Slave-Anordnung gekoppelt wer­ den soll, so sind zumindest bei der ersten Bussteuereinrich­ tung weitere Pins für die Übertragung von Daten, Adressen und Steuersignalen zwischen den Bus-Steuereinrichtungen erforderlich. Diese zusätzlichen Pins erhöhen die Kosten des Bauelements der ersten Bussteuereinrichtung beträchtlich.
Bekannte Computersysteme mit Bussystem und Bussteuereinrichtung sind beispielsweise aus den Druckschriften DE 39 00 348 A1, US 4 987 529 A, US 4 365 293 A und US 4 106 104 A bekannt.
Aufgabe der Erfindung ist es, ein Computersystem zu schaffen, bei dem die Kosten der Bauelemente durch Verrin­ gerung der Pin-Anzahl reduziert werden, was aber noch den Austausch von Adreß-, Daten- und/oder Befehlssignalen zwi­ schen dem Prozessor und den Bus-Steuerbauelementen sowie zwischen den Bus-Steuerbauelementen gestattet.
Diese Aufgabe wird erfindungsgemäß durch ein Computer­ system mit den Merkmalen des Patentanspruchs 1 gelöst.
Bei dem erfindungsgemäßen Computersystem werden zwischen dem Prozessor und einem ersten Steuerbauelement zum Steuern von Signalübertragungen auf einem ersten Bus bereits vorhan­ dene Leitungen zum Übertragen von Adreß-, Daten- und/oder Befehlssignalen als Doppelfunktionsleitungen ausgebildet. Dies bedeutet, daß diese Leitungen zusätzlich verwendet wer­ den, um Informationen zwischen dem ersten Steuerbauelement und einem zweiten Steuerbauelement, das dem Steuern von Signalübertragungen auf dem zweiten Bus dient, auszutau­ schen. Dazu werden Verbindungsleitungen zwischen dem zweiten Steuerbauelement und den Doppelfunktionsleitungen eingekop­ pelt. Die Doppelfunktionsleitungen werden vorzugsweise primär zum Signalaustausch zwischen dem Prozessor und dem ersten Steuerbauelement verwendet. Daneben werden sie über ihre Kopplung mit den Verbindungsleitungen zum Austausch von Daten und Steuerinformationen zwischen den beiden Steuerbau­ elementen verwendet. Dies erspart zusätzliche Pins für die Datenübertragungsverbindung zwischen den beiden Steuerbau­ elementen. Es sind lediglich einige spezielle Signalleitun­ gen zwischen den beiden Steuerbauelementen geschaltet, mit deren Hilfe in Verbindung mit einer Zuteilungsentscheidungs­ schaltung über den Zugriff des ersten und des zweiten Steu­ erbauelements auf die mit dem Doppelfunktionsleitungen ver­ bundenen Verbindungsleitungen entschieden wird. Dabei wird dem zweiten Steuerbauelement erst nach Senden eines Verbin­ dungsanforderungssignals über eine der speziellen Signal­ leitungen an das erste Steuerbauelement der Zugriff auf die Verbindungsleitungen und somit die Doppelfunktionsleitungen gewährt.
Es wird eine neue Halbleiterkomponente beschrieben. Die Halbleiterkomponente ist in der Lage, die Informationsüber­ tragung zwischen mehreren Halbleiterkomponenten in einem Computersystem zu steuern. Die Halbleiterkomponente enthält einen ersten Signalgenerator, der ein Signal einer ersten Art über eine gemeinsame Leitung senden kann, und einen zweiten Signalgenerator, der ein Signal einer zweiten Art über die gemeinsame Leitung senden kann. Sie enthält außer­ dem eine erste Logikeinheit, die den ersten Signalgenerator steuern kann, und eine zweite Logikeinheit, die den zweiten Signalgenerator steuern kann. Das Signal einer ersten Art kann ein Befehls-, Status-, Adreß- oder Datensignal sein, und das Signal einer zweiten Art kann ebenfalls ein Befehls-, Status-, Adreß- oder Datensignal sein. Die Halb­ leiterkomponente kann auch einen ersten Empfänger enthalten, der das Signal einer ersten Art über die gemeinsame Leitung empfangen kann, und einen zweiten Empfänger, der das Signal einer zweiten Art über die gemeinsame Leitung empfangen kann. Zusätzlich enthält die Halbleiterkomponente einen Zu­ teilungsentscheider (Arbiter), der über den Zugriff auf die gemeinsame Leitung entscheidet. Außerdem kann die Halblei­ terkomponente einen Signalgenerator oder Empfänger für ein Beendigungssignal enthalten, das die Beendigung einer vor­ herigen Übertragung anzeigt. Ferner kann die Halbleiterkom­ ponente einen Signalgenerator oder einen Empfänger für ein Befehlsanzeigesignal enthalten, das die Übertragung eines Befehlssignals über die gemeinsame Leitung anzeigt.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
KURZE BESCHREIBUNG DER ZEICHNUNGEN
Die vorliegende Erfindung ist beispielhaft und nicht zur Beschränkung in den Figuren der zugehörigen Zeichnungen dar­ gestellt, in denen gleiche Bezugszeichen auf ähnliche Ele­ mente hinweisen und in denen
Fig. 1 ein Blockschaltbild zeigt, das Halbleiter­ komponenten eines Ausführungsbeispiels der vorliegenden Erfindung darstellt.
Fig. 2 zeigt ein Blockschaltbild, das ein Computer­ system gemäß einem Ausführungsbeispiel der vorliegenden Erfindung darstellt.
Fig. 3 zeigt ein Flußdiagramm, das die Operationen gemäß einem Ausführungsbeispiel der vorlie­ genden Erfindung darstellt.
Fig. 4 zeigt ein Zeitablaufdiagramm, das ferner die Operationen gemäß einem Ausführungsbeispiel der vorliegenden Erfindung darstellt.
Fig. 5 zeigt eine Tabelle, die das bei einem Aus­ führungsbeispiel der vorliegenden Erfindung verwendete Protokoll darstellt.
Fig. 6 zeigt ein Blockschaltbild, das die Steuer­ einrichtungen gemäß einem Ausführungsbei­ spiel der vorliegenden Erfindung darstellt.
Fig. 7 ist ein Zustandsdiagramm, das die Operation des Zuteilungsentscheiders gemäß der Fig. 6 darstellt.
Fig. 8 zeigt ein Zustandsdiagramm, das die Opera­ tion einer Master-Zustandsmaschine gemäß der Fig. 6 darstellt.
Fig. 9 zeigt ein Zustandsdiagramm, das die Opera­ tion einer Slave-Zustandsmaschine gemäß Fig. 6 darstellt.
Fig. 10 zeigt ein Zustandsdiagramm, das die Opera­ tion einer Master-Zustandsmaschine gemäß der Fig. 6 darstellt.
Fig. 11 ist ein Zustandsdiagramm, das die Operation einer Slave-Zustandsmaschine gemäß der Fig. 6 darstellt.
AUSFÜHRLICHE BESCHREIBUNG
Es wird eine neue Steuereinrichtung und ein neues Ver­ fahren zur Steuerung der Informationsübertragung zwischen mehreren Halbleiterkomponenten (Halbleiterbauelementen) beschrieben.
Fig. 1 zeigt ein Blockschaltbild, das eine Halbleiter­ komponente eines Ausführungsbeispiels der Erfindung dar­ stellt. Die Halbleiterkomponente 103 ist mit der Halbleiter­ komponente 104 über eine Verbindung 106 gekoppelt. Beide Komponenten 103 und 104 befinden sich in einem einzigen Com­ putersystem. Die Komponente 103 sendet über die Verbindung 106 mehrere verschiedene Signalarten zur Komponente 104. Die Komponente 104 sendet über die Verbindung 106 ebenfalls meh­ rere verschiedene Signalarten. Die verschiedenen Signalarten können Adreßsignale, Befehlssignale, Statussignale und Datensignale enthalten. Die Verbindung 106 ist mit der Lei­ tung 169 gekoppelt. Die Leitung 169 ist eine auch für andere Zwecke verwendete gemeinsame Leitung. Neben der Übertragung mehrerer Signalarten zwischen den Komponenten 103 und 104 dient die Leitung 169 außerdem als Adreßleitung für zwischen den Komponenten 101 und 103 übertragene Adreßsignale. Es ist klar, daß die Leitung 169 auch als Teil einer Befehlsleitung oder einer Datenleitung oder einer Statusleitung zwischen der Komponente 101 und der Komponente 103 dienen könnte. Es ist außerdem klar, daß die Komponente 101, die Komponente 103 und die Komponente 104 ein Mikroprozessor, eine Mikro­ steuereinrichtung, eine Bus-Steuereinrichtung, eine Spei­ cher-Steuereinrichtung oder dergleichen sein können.
Fig. 2 zeigt ein Blockschaltbild, das ein Computersystem gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung darstellt. In diesem Computersystem ist die Kompo­ nente 103 eine Bus-Steuereinrichtung, die die Signalübertra­ gung auf dem Bus 105 steuert. Die Komponente 104 ist eben­ falls eine Bus-Steuereinrichtung, sie steuert jedoch die Signalübertragung auf einem separaten Bus, Bus 133. Die Kom­ ponente 101 ist ein Prozessor, der mit noch einem anderen Bus gekoppelt ist, Bus 102, der wiederum mit der Steuerein­ richtung 103 gekoppelt ist. Die Steuereinrichtung 103 und die Steuereinrichtung 104 sind über die Verbindung 106 und die Leitung 169 miteinander gekoppelt. Bei diesem Ausfüh­ rungsbeispiel führt die Leitung 169, wie oben beschrieben, eine doppelte Funktion aus. Sie überträgt Befehls-, Adreß- und Datensignale zwischen der Steuereinrichtung 103 und 104 über die Verbindung 106. Sie dient außerdem als Adreßleitung für Adreßsignale zwischen dem Prozessor 101 und der Steuer­ einrichtung 103. Aufgrund der von der Verbindung 106 ausge­ führten doppelten Funktion muß das Computersystem über den Zugriff auf die Verbindung 106 entscheiden. Infolgedessen weist die Steuereinrichtung 103 bei dem bevorzugten Ausfüh­ rungsbeispiel außerdem einen Zuteilungsentscheider (Arbiter) für die Verbindung 106 auf. Es ist klar, daß der Zuteilungs­ entscheider woanders angeordnet sein kann, beispielsweise auf dem Prozessor 101 oder der Steuereinrichtung 104.
Bei diesem Ausführungsbeispiel sind die Steuereinrich­ tung 103 und die Steuereinrichtung 104 außerdem durch vier separate Spezialleitungen gekoppelt, die vier speziellen Nebensignale führen. Eine Anforderungsleitung 124 überträgt ein aktiv niedriges Anforderungssignal (LREQ#) zwischen der Steuereinrichtung 103 und der Steuereinrichtung 104. Eine Bewilligungsleitung 125 überträgt ein aktiv niedriges Bewil­ ligungssignal (LGNT#) zwischen der Steuereinrichtung 103 und der Steuereinrichtung 104. Eine Befehlsanzeigeleitung 126 überträgt ein aktiv niedriges Befehlsanzeigesignal (CMDV#) zwischen der Steuereinrichtung 103 und der Steuereinrichtung 104. Schließlich überträgt die Ruheleitung 127 ein aktiv niedriges Beendigungssignal (SIDLE#) zwischen der Steuerein­ richtung 103 und der Steuereinrichtung 104. Das CMDV#-Signal kann von der Steuereinrichtung 103 gesendet werden, wenn sie der Verbindungsmaster ist, oder von der Steuereinrichtung 104, wenn sie der Verbindungsmaster ist. Genauso kann das SIDLE#-Signal von der Steuereinrichtung 103 gesendet werden, wenn sie der Verbindungsslave ist, oder von der Steuerein­ richtung 104, wenn sie der Verbindungsslave ist.
Die bei diesem Ausführungsbeispiel verwendeten LREQ#-, LGNT#-, CMDV#- und SIDLE#-Signale können ferner wie folgt beschrieben werden. Das LREQ#-Signal ist ein Signal, das von der Steuereinrichtung 104 verwendet wird, um Zugriff auf die Verbindung 106 anzufordern. Bevor die Steuereinrichtung 104 versucht, einen Lese- oder Schreibzyklus über die Verbindung 106 zu beginnen, legt sie das LREQ#-Signal für den Zugriff an. Wenn die Steuereinrichtung 103 bereit ist, der Steuer­ einrichtung 104 Zugriff zu bewilligen, legt sie das LGNT#- Signal an. Das LGNT#-Signal ist folglich ein Signal, das von der Steuereinrichtung 103 verwendet wird, um Zugriff auf die Verbindung 106 zu bewilligen. Es ist klar, daß die Steuer­ einrichtung 104 einen Lese- oder Schreibzyklus über die Lei­ tung 106 nicht einleiten wird, bis die Steuereinrichtung 103 das LGNT#-Signal anlegt.
Ferner ist das CMDV#-Signal ein Signal, das von der Steuereinrichtung 103 oder der Steuereinrichtung 104 verwen­ det wird, um anzuzeigen, wann sie ein Befehlssignal sendet. Die Steuereinrichtung 103 oder die Steuereinrichtung 104 legt das CMDV#-Signal an, wenn sie das erste Befehlspaket sendet und nimmt das CMDV#-Signal weg, nachdem sie das letzte Befehlspaket gesendet hat. Wenn die Steuereinrichtung 103 zwei von einem GO- oder ABORT-Paket gefolgte Befehls­ paket sendet, legt sie das CMDV#-Signal beispielsweise wäh­ rend der Dauer dieser drei Pakete an. Wenn die Steuerein­ richtung 103 dagegen zwei Befehlspakete sendet, denen zwei Datenpakete folgen, denen ein GO- oder ein ABORT-Paket folgt, legt sie das CMDV#-Signal während der Dauer der zwei Befehlspakete an, nimmt das CMDV#-Signal während der Dauer der zwei Datenpakete weg und legt das CMDV#-Signal während der Dauer des GO- oder ABORT-Paketes wieder an.
Ferner ist das SIDLE#-Signal ein Signal, das von der Steuereinrichtung 103 oder der Steuereinrichtung 104 verwen­ det wird, um das Ende der angeforderten Transaktion anzuzei­ gen und folglich ihre Bereitschaft, eine nachfolgende Trans­ aktion zu empfangen. Wenn die Steuereinrichtung 103 einen Lese- oder Schreibzyklus über die Verbindung 106 einleitet, wird die Steuereinrichtung 104 zum Slave. Genauso wird die Steuereinrichtung 103 zum Slave, wenn die Steuereinrichtung 104 einen Lese- oder Schreibzyklus über die Verbindung 106 einleitet. Das SIDLE#-Signal wird von dem Slave, entweder Steuereinrichtung 103 oder Steuereinrichtung 104, wenigstens einen Taktzyklus vor der Übertragung des ersten Befehlspake­ tes angelegt. Das Anlagen zeigt die Verfügbarkeit des Slave an, eine Transaktion zu verarbeiten. Der Slave nimmt das SIDLE#-Signal an der Taktflanke weg, an der das zweite Befehlspaket empfangen worden ist. Das SIDLE#-Signal bleibt abgekoppelt, bis der angeforderte Lese- oder Schreibzyklus beendet ist oder bis der ABORT-Befehl übertragen wird. Bei einem Lesezyklus wird das SIDLE#-Signal während dem gleichen Zyklus wieder angelegt, in dem das Wort niedriger Ordnung an die Verbindung 106 angelegt wird. Das Wort hoher Ordnung folgt immer dem Wort niedriger Ordnung. Bei Schreibzyklen zeigt das erneute Anlegen des SIDLE#-Signals die Beendigung der Schreiboperation auf dem Bestimmungsbus an.
Fig. 3 zeigt ein Flußdiagramm, das die Operation eines Ausführungsbeispiels der vorliegenden Erfindung darstellt. Bei diesem Beispiel sind zur einfacheren Erklärung nur Schreibzyklusoperationen dargestellt. Es ist klar, daß Lese­ zyklusoperationen ähnlich sind, mit der Ausnahme, daß alle GO- oder ABORT-Befehle nach Befehls- und Adreßsignalen, aber vor Datensignalen übertragen werden. Bei diesem Ausführungs­ beispiel ist der Prozessor 101 eine zentrale Verarbeitungs­ einheit (CPU). Als solche ist die CPU 101 Master und besitzt in der Standardeinstellung die Adreßleitungen zu der Steuer­ einrichtung 103. Wenn das Computersystem eingeschaltet wird, besitzt die CPU 101 folglich die Adreßleitungen zu der Steu­ ereinrichtung 103, wie in dem Block 207 gezeigt ist. Da die Adreßleitung 169 von der CPU 101 zu der Steuereinrichtung 103 einen Teil des Übertragungspfades von der Steuerein­ richtung 103 zu der Steuereinrichtung 104 bildet, kann zwi­ schen der Steuereinrichtung 103 und der Steuereinrichtung 104 nichts übertragen werden, wenn die CPU 101 die Adreßlei­ tung zu der Steuereinrichtung 103 besitzt. Folglich muß die CPU 101 der Steuereinrichtung 103 die Adreßleitung abtreten, bevor eine Übertragung zwischen der Steuereinrichtung 103 und der Steuereinrichtung 104 stattfinden kann. Die Anfangs­ schritte zur Veranlassung der CPU 101, die Adreßleitung abzutreten, hängen von der Komponente ab, die die Übertra­ gung einleitet. Wenn die Steuereinrichtung 103 die Übertra­ gung zu der Steuereinrichtung 104 einleitet (Block 227), legt sie zuerst ein Haltesignal (HOLD) an, wie in Block 210 gezeigt ist. Die Steuereinrichtung 103 wartet, bis die CPU 101 die Übertragung der aktuellen Adresse über die Adreßlei­ tung (Block 211) beendet hat. Wenn die Übertragung beendet ist, legt die CPU 101 ein Haltebestätigungssignal (HLDA) an, wie in Block 212 gezeigt ist, und bringt die Adreßleitung auf ein schwebendes Potential. Wenn dagegen die Steuerein­ richtung 104 die Übertragung einleitet (Block 228), unter­ scheiden sich die Anfangsschritte. Wenn die CPU 101 keinen Zugriff auf die Adreßleitung hat, besitzt standardmäßig die Steuereinrichtung 103 die Verbindung 106, und beide Signale LGNT# und LREQ# sind abgekoppelt. Folglich legt die Steuer­ einrichtung 104 ein Anforderungssignal (LREQ#) über die LREQ#-Leitung 124 an, wie in Block 229 gezeigt ist, bevor sie Zugriff auf die Verbindung 106 gewinnt. In Abhängigkeit von dem LREQ#-Signal legt die Steuereinrichtung 103 ein Hal­ tesignal (HOLD) an die CPU 101 an, wie in Block 230 gezeigt ist. Die Steuereinrichtung 103 und die Steuereinrichtung 104 warten, bis die CPU 101 die Übertragung der aktuellen Adresse über die Adreßleitung beendet hat (Block 231). Wenn die CPU 101 fertig ist, legt sie ein Haltebestäti­ gungs(HLDA)-Signal an die Steuereinrichtung 103 an, wie in Block 232 gezeigt ist. Die CPU 101 bringt außerdem die Adreßleitung auf schwebendes Potential. Bei Empfang des HLDA-Signals durch die Steuereinrichtung 103 legt die Steu­ ereinrichtung 103 ein Bewilligungssignal(LGNT#)-Signal über die LDNT#-Leitung 125 an die Steuereinrichtung 104 an (Block 233). Es ist klar, daß bei diesem Ausführungsbeispiel nur die Steuereinrichtung 103 das LGNT#-Signal anlegt und nur die Steuereinrichtung 104 das LREQ#-Signal anlegt. Es ist auch klar, daß der Zugriff zu der Verbindung 106 entschieden wird. Folglich kann zu jedem vorgegebenen Zeitpunkt nur ent­ weder die Steuereinrichtung 103 oder die Steuereinrichtung 104 senden. Infolgedessen ist die Verbindung 106 eine Halb­ duplex-Verbindung.
Die Anfangsschritte unterscheiden sich auch, wenn die CPU 101 anstelle der Steuereinrichtung 103 oder der Steuer­ einrichtung 104 die Übertragung einleitet (Block 208). Wenn die CPU 101 an die Steuereinrichtung 103 sendet, ist keine Übertragung über die Verbindung 106 notwendig und folglich muß die CPU 101 die Adreßleitung nicht an die Steuereinrich­ tung 103 abtreten. Wenn die CPU 101 jedoch an die Steuerein­ richtung 104 sendet, geht die Übertragung zunächst über die Steuereinrichtung 103 und geht danach später über die Ver­ bindung 106 zu der Steuereinrichtung 104 weiter. In diesem Fall wird die Verbindung 106 verwendet und folglich muß die CPU 101 die Kontrolle über die Adreßleitung an die Steuer­ einrichtung 103 abtreten. Wenn die CPU 101 an die Steuerein­ richtung 104 sendet, sendet sie die Informationen zunächst an die Steuereinrichtung 103. Bei Empfang der Sendung legt die Steuereinrichtung 103 ein Adreßhaltesignal (AHOLD) an, wie in Block 209 gezeigt ist. Die Steuereinrichtung 103 weist eine Verriegelungs-(Latch-)Schaltung auf, die mit der Adreßleitung von der CPU 101 gekoppelt ist. Wenn die CPU 101 eine Adresse über die Adreßleitung überträgt, wird die Adresse folglich sofort von der Steuereinrichtung 103 gespeichert. Folglich ist die Adreßleitung einen Taktzyklus, nachdem eine Adresse von der CPU 101 zu der Steuereinrich­ tung 103 übertragen wurde, zur Verwendung verfügbar. Auf­ grund der Verriegelungsschaltung in der Steuereinrichtung 103 kann die CPU 101 die Adreßleitung ohne Informationsver­ lust auf ein schwebendes Potential bringen, nachdem sie das Adreßhaltesignal (AHOLD) von der Steuereinrichtung 103 emp­ fangen hat.
Wenn die Steuereinrichtung 104 den Schreibzyklus über­ trägt, legt die Steuereinrichtung 103 dann das Ruhesignal (SIDLE#) an, wie in Block 234 gezeigt ist. Das Anlegen des SIDLE#-Signals ist eine Anzeige der Steuereinrichtung 103 an die Steuereinrichtung 104, daß sie verfügbar ist, um eine Sendung von der Steuereinrichtung 104 zu empfangen. Die Steuereinrichtung 104 muß prüfen, ob das SIDLE#-Signal aktiv ist, bevor sie einen Befehl sendet. Nachdem die Steuerein­ richtung 103 das SIDLE#-Signal an die Steuereinrichtung 104 angelegt hat, legt die Steuereinrichtung 104 ein Befehls­ anzeigesignal (CMDV#) an und überträgt gleichzeitig Befehls­ signale und Adreßsignale (Block 235). Das CMDV#-Signal ist eine Anzeige von der Steuereinrichtung 104 an die Steuerein­ richtung 103, daß Befehlssignale über die Verbindung 106 gesendet werden. Während die Steuereinrichtung 103 noch Befehls- und Adreßsignale von der Steuereinrichtung 104 emp­ fängt, verarbeitet sie die Befehls- oder Adreßsignale nicht. Folglich ist die Steuereinrichtung 103 noch verfügbar und läßt das SIDLE#-Signal weiter angelegt, während sie noch die Befehls- und Adreßsignale empfängt. Wenn die Steuereinrich­ tung 103 alle Befehls- und Adreßsignale empfangen hat, nimmt sie das SIDLE#-Signal weg (Block 236), da sie beginnt, die Befehls- und Adreßsignale zu verarbeiten und nicht länger verfügbar ist. Die Steuereinrichtung 104 nimmt außerdem das CMDV#-Signal weg, da sie die Übertragung der Befehlssignale beendet hat und die Befehlssignale sich nicht länger auf der Verbindung 106 befinden. Die Steuereinrichtung 104 beginnt dann, Datensignale zu übertragen. Nachdem die Steuereinrich­ tung 103 die Verarbeitung des Schreibzyklus beendet hat, legt sie das SIDLE#-Signal an, wie in Block 237 gezeigt ist.
Wenn die Steuereinrichtung 103 oder die CPU den Schreib­ zyklus überträgt, legt die Steuereinrichtung 104 dann das Ruhesignal (SIDLE#) an, wie in Block 214 gezeigt ist. Das Anlegen des SIDLE#-Signals ist eine Anzeige der Steuerein­ richtung 104 an die Steuereinrichtung 103, daß sie verfügbar ist, um eine Sendung von der Steuereinrichtung 103 zu emp­ fangen. Die Steuereinrichtung 103 muß prüfen, ob das SIDLE#- Signal aktiv ist, bevor sie einen Befehl überträgt. Nachdem die Steuereinrichtung 104 das SIDLE#-Signal an die Steuer­ einrichtung 103 angelegt hat, legt die Steuereinrichtung 103 ein Befehlsanzeigesignal (CMDV#) an und überträgt gleichzei­ tig Befehlssignale und Adreßsignale (Block 215). Das CMDV#- Signal ist eine Anzeige der Steuereinrichtung 103 an die Steuereinrichtung 104, daß Befehlssignale über die Verbin­ dung 106 gesendet werden. Während die Steuereinrichtung 104 noch Befehls- und Adreßsignale von der Steuereinrichtung 103 empfängt, verarbeitet sie die Befehls- oder Adreßsignale nicht. Die Steuereinrichtung 104 ist folglich noch verfügbar und läßt das SIDLE#-Signal angelegt, während sie noch Befehls- und Adreßsignale empfängt. Wenn die Steuereinrich­ tung 104 alle Befehls- und Adreßsignale empfangen hat, nimmt sie das SIDLE#-Signal weg, da sie beginnt, die Befehls- und Adreßsignale zu verarbeiten, und nicht länger verfügbar ist. Die Steuereinrichtung 103 nimmt außerdem das CMDV#-Signal weg, da sie die Übertragung der Befehlssignale beendet hat und die Befehlssignale sich nicht länger auf der Verbindung 106 befinden. Außerdem beginnt die Steuereinrichtung 103 mit der Übertragung von Datensignalen. Während der Zeit, in der die Steuereinrichtung 103 Datensignale sendet, bestimmt sie, ob die Steuereinrichtung 104 die gerade übertragenen Adres­ sen und Daten weiterverarbeiten soll (Block 217). Diese Bestimmung basiert darauf, ob die Steuereinrichtung 104 oder eine andere Komponente an dem Bus 133 der Bestimmungsort für die Daten ist. Wenn die Steuereinrichtung 104 oder eine andere Komponente an dem Bus 133 der Bestimmungsort für die Daten ist, verarbeitet die Steuereinrichtung 104 die von der Steuereinrichtung 103 übertragenen Adressen und Daten wei­ ter. Wenn dagegen weder die Steuereinrichtung 104 noch irgendeine Komponente auf dem Bus 133 der Bestimmungsort für die Daten ist, beendet die Steuereinrichtung 104 die Verar­ beitung der von der Steuereinrichtung 103 übertragenen Adressen und Daten. Die Steuereinrichtung 103 veranlaßt die Steuereinrichtung 104, die übertragenen Adressen und Daten weiter zu verarbeiten, indem sie ein CMDV#-Signal anlegt und dann einen Gehebefehl (GO) überträgt, wie in Block 218 gezeigt ist. Die Steuereinrichtung 104 beendet dann die Ver­ arbeitung der Adressen und Daten. Sie legt das SIDLE#-Signal bei Beendigung an (Block 219). Die Steuereinrichtung 103 veranlaßt die Steuereinrichtung 104, die Verarbeitung der zu übertragenden Adressen und Daten zu beenden, indem sie ein CMDV#-Signal anlegt und dann einen Abbruchbefehl (ABORT) überträgt, wie in Block 220 gezeigt ist. Die Steuereinrich­ tung 104 beendet die Verarbeitung und legt das SIDLE#-Signal an (Block 221). Wenn die Steuereinrichtung 103 einen ABORT- Befehl überträgt, hat die Steuereinrichtung 104 einen Zyklus, um das ABORT-Signal zu dekodieren und legt das SIDLE#-Signal bei der nächsten Taktsignalflanke an. Bei die­ sem Ausführungsbeispiel ist das Format für den GO-Befehl 0000h und das Format für den ABORT-Befehl F000h. Der GO- oder ABORT-Befehl können zu jeder Zeit nach der Übertragung der beiden Datenpakete gesendet werden.
Es ist klar, daß der GO-Befehl und der ABORT-Befehl der Steuereinrichtung 103 erlauben, Befehls-, Adreß- und Daten­ signale an die Steuereinrichtung 104 zu übertragen, bevor der Bestimmungsort der Befehls-, Adreß- und Datensignale de­ kodiert wird. Dieses Merkmal ist vorteilhaft, da es der Steuereinrichtung 104 ermöglicht, die Verarbeitung der Befehls- und Adreßsignale zu beginnen, indem die Bus 133- Adresse aufgebaut wird, während die Steuereinrichtung 103 den Bestimmungsort der Informationen bestimmt. Bei diesem Ausführungsbeispiel der vorliegenden Erfindung bestimmt die Steuereinrichtung 103 den Bestimmungsort der Informationen mit einer subtraktiven Decodieroperation. Sie führt eine Abfrage auf dem Bus 105 durch. Eine einzelne Komponente auf dem Bus 105 antwortet, wenn sie der Bestimmungsort der Informationen ist. Wenn die Steuereinrichtung 103 nach einer bestimmten vorgegebenen Zeit keine Antworten von den Kompo­ nenten an dem Bus 105 empfängt, nimmt sie an, daß der Bestimmungsort auf dem Bus 133 liegt und gibt einen GO- Befehl aus. Wenn dagegen eine Komponente an dem Bus 105 auf die Abfrage durch die Steuereinrichtung 103 antwortet, weiß die Steuereinrichtung 103, daß der Bestimmungsort der Infor­ mationen nicht auf dem Bus 133 liegt und gibt einen ABORT- Befehl aus.
Die Steuereinrichtung 103 und die Steuereinrichtung 104 beenden beim Anlegen des SIDLE#-Signals, wie in dem Block 219, 221 oder 237 gezeigt ist, die Schreibzyklusoperation wie folgt. Wenn das LREQ#-Signal angelegt wird (Block 222), wobei dies einen von der Steuereinrichtung 104 eingeleiteten Schreibzyklus anzeigt, nimmt die Steuereinrichtung 104 das LREQ#-Signal weg. Die Steuereinrichtung 103 legt dann das LGNT#-Signal und das HOLD-Signal an (Block 225). Die CPU nimmt das HLDA-Signal weg und das System kehrt zum Block 207 zurück, indem die CPU die Verbindung wieder besitzt. Wenn dagegen das HOLD-Signal angelegt wird (Block 223), wobei dies einen von der Steuereinrichtung 103 eingeleiteten Schreibzyklus anzeigt, nimmt die Steuereinrichtung 103 das HOLD-Signal weg, die CPU nimmt das HLDA-Signal weg (Block 226), und das System kehrt zu dem Block 207 zurück. Wenn schließlich ein AHOLD-Signal angelegt wird, wobei dies einen von der CPU eingeleiteten Schreibzyklus anzeigt, nimmt die Steuereinrichtung 103 das AHOLD-Signal weg und das System kehrt zum Block 207 zurück.
Bei diesem Ausführungsbeispiel wird eine strenge Reihen­ folge eingehalten. Die Steuereinrichtung 103 überträgt kei­ nen Zyklus an Steuereinrichtung 104, bevor sie alle vor die­ sem Zyklus abgesendeten Zyklen beendet hat. In ähnlicher Weise gibt die Steuereinrichtung 103 kein LGNT#-Signal an die Steuereinrichtung 104 aus, bevor diese alle abgesendeten Zyklen beendet hat.
Die bei diesem Ausführungsbeispiel verwendeten HOLD-, HLDA- und AHOLD-Signale können ferner wie folgt beschrieben werden. Das HOLD-Signal ist ein von der Steuereinrichtung 103 angelegtes Signal, das die Kontrolle über die mit der CPU 101 gekoppelten Übertragungsleitungen anfordert. Das HLDA-Signal ist ein von der CPU 101 angelegtes Signal, das anzeigt, daß sie die Übertragungsleitungen auf ein schweben­ des Potential gebracht (floated) hat. Das AHOLD-Signal ist ein von der Steuereinrichtung 103 angelegtes Signal, das die Kontrolle über die Adreßleitung 169 anfordert. Anders als bei dem HOLD-Signal antwortet die CPU 101 nicht mit einem HLDA-Signal. Stattdessen bringt sie im nächsten Takt die Adreßleitung auf schwebendes Potential. Die CPU 101 bringt nur die Adreßleitungen auf ein schwebendes Potential und nicht die Befehls- oder Datenleitungen. Ferner ist der GO- Befehl ein von der Steuereinrichtung 103 verwendeter Befehl, um der Steuereinrichtung 104 zu befehlen, vorher übertragene Informationen weiterzuverarbeiten. Dagegen ist der ABORT- Befehl ein von der Steuereinrichtung 103 verwendeter Befehl, um der Steuereinrichtung 104 die Beendigung der Verarbeitung vorher übertragener Informationen zu befehlen.
Fig. 4 ist ein Zeitablaufdiagram, das die Operationen eines Ausführungsbeispiels der vorliegenden Erfindung dar­ stellt. Wenn die CPU 101 sich an einem Schreibzyklus über die Steuereinrichtung 103 zu der Steuereinrichtung 104 beteiligt, beginnt sie, indem sie ein ADS#-Signal anlegt. Das ADS#-Signal zeigt an, daß die Adreß- und Busdefinitions­ signale aus der CPU 101 gültig sind. Gleichzeitig beginnt sie, Befehls-, Status-, Adreß- und Dateninformationen zu der Steuereinrichtung 103 zu übertragen. Die Steuereinrichtung 103 legt das AHOLD-Signal an, nachdem sie die Adresse über die Adreßleitung zwischen der CPU 101 und der Steuereinrich­ tung 103 empfangen hat. Wenn die CPU 101 das AHOLD-Signal empfängt, bringt sie die Adreßleitung in einem Taktzyklus auf schwebendes Potential. Zu diesem Zeitpunkt ist die Ver­ bindung 106 für die Verwendung durch die Steuereinrichtung 103 verfügbar. Die Steuereinrichtung 104 legt das SIDLE#- Signal an, um ihre Bereitschaft zum Empfang von Informa­ tionen anzuzeigen. Die Steuereinrichtung 103 antwortet, indem sie das CMDV#-Signal anlegt und die Befehls-, Status- und Adreßsignale überträgt. Wenn die Befehls-, Status- und Adreßsignal übertragen worden sind, nimmt die Steuereinrich­ tung 103 das CMDV#-Signal weg, und die Steuereinrichtung 104 nimmt das SIDLE#-Signal weg. Die Steuereinrichtung 103 über­ trägt dann die Datenpakete. Nachdem die Daten übertragen worden sind, legt die Steuereinrichtung 103 das CMDV#-Signal an und überträgt entweder einen GO-Befehl oder ein ABORT- Befehl. Wenn die Steuereinrichtung 104 die Verarbeitung des Befehls, des Status, der Adresse und der Daten beendet hat, legt sie das SIDLE#-Signal an, welches ihre Bereitschaft für die nächste Transaktion anzeigt und das Ende der angeforder­ ten Transaktion. Die Steuereinrichtung 103 nimmt außerdem das AHOLD-Signal weg, um die Adreßleitung für die Verwendung durch die CPU 101 freizumachen.
Fig. 4 zeigt außerdem die Folge der Ereignisse, wenn die CPU 101 einen Lesezyklus über die Steuereinrichtung 103 zu der Steuereinrichtung 104 einleitet. Die CPU 101 beginnt, indem sie das ADS#-Signal anlegt und gleichzeitig Befehls- und Adreßsignale zu der Steuereinrichtung 103 überträgt. Wenn die Steuereinrichtung die Adresse über die Adreßleitung empfängt, legt sie das AHOLD-Signal an, und in Abhängigkeit davon bringt die CPU 101 die Adreßleitung auf schwebendes Potential. Die Steuereinrichtung 104 legt dann das SIDLE#- Signal an, worauf die Steuereinrichtung 103 das CMDV#-Signal anlegt. Zu diesem Zeitpunkt überträgt die Steuereinrichtung 103 über die Verbindung 106 Befehls-, Status- und Adreß­ signale. Wenn die Steuereinrichtung 104 alle Befehls-, Status- und Adreßsignale empfangen hat, nimmt sie das SIDLE#-Signal weg. Die Steuereinrichtung 103 läßt das CMDV#- Signal jedoch angelegt und überträgt einen GO-Befehl. Die Steuereinrichtung 103 nimmt das CMDV#-Signal dann weg. Wenn die Steuereinrichtung 104 die von der CPU 101 angeforderten Daten abgerufen hat, legt sie das SIDLE#-Signal an und über­ trägt die Daten über die Verbindung 106. Da die Steuerein­ richtung 104 die von der CPU 101 angeforderten Daten über die Verbindung 106 geliefert hat, ist sie nun verfügbar, um die nächste Transaktion zu verarbeiten und folglich legt sie das SIDLE#-Signal an. Wenn die Steuereinrichtung 103 die Daten empfängt, nimmt sie das AHOLD-Signal weg und überträgt die Daten zurück zur CPU 101.
Darüber hinaus zeigt Fig. 4 außerdem die Folge der Ereignisse, wenn eine Komponente an dem Bus 105 oder die Steuereinrichtung 103 einen Schreibzyklus über die Verbin­ dung 106 zu der Steuereinrichtung 104 einleitet. Die Steuer­ einrichtung 103 leitet die Folge ein, indem sie ein HOLD- Signal an die CPU 101 anlegt. Wenn die CPU 101 die Übertra­ gung der aktuellen Adresse beendet hat, legt sie ein HLDA- Signal an die Steuereinrichtung 103 an und bringt die Adreß­ leitung auf schwebendes Potential. Die Steuereinrichtung 104 legt dann das SIDLE#-Signal an, welches anzeigt, daß sie bereit ist, eine Sendung über die Verbindung 106 zu empfan­ gen. Bei Empfang des SIDLE#-Signals legt die Steuereinrich­ tung 103 das CMDV#-Signal an, welches anzeigt, daß sie Befehlssignale über die Verbindung 106 überträgt. Gleichzei­ tig überträgt die Steuereinrichtung 103 Befehls-, Status- und Adreßsignale über die Verbindung 106. Wenn die Steuer­ einrichtung 103 die Übertragung der Befehls-, Status- und Adreßsignale beendet hat, nimmt sie das CMDV#-Signal weg, und die Steuereinrichtung 104 nimmt das SIDLE#-Signal weg. Die Steuereinrichtung 103 überträgt dann die Daten über die Verbindung 106 zu der Steuereinrichtung 104. Nachdem die Daten übertragen worden sind, legt die Steuereinrichtung 103 das CMDV#-Signal an und überträgt einen GO-Befehl oder einen ABORT-Befehl, je nachdem wie es paßt, und nimmt dann das CMDV#-Signal weg. Wenn die Steuereinrichtung 104 die Verar­ beitung der Befehls-, Status-, Adreß- und Datensignale been­ det hat, legt sie das SIDLE#-Signal an. Die Steuereinrich­ tung 103 nimmt das HOLD-Signal weg, und die CPU 101 nimmt das HLDA-Signal weg. Ein von einer Komponente an dem Bus 105 oder der Steuereinrichtung 103 eingeleiteter Lesezyklus ist ebenfalls dargestellt. Es ist klar, daß der Lesezyklus dem oben beschriebenen CPU-Lesezyklus über die Verbindung 106 ähnelt, mit der Ausnahme, daß die Steuereinrichtung 103 ein HOLD-Signal anlegt und auf ein HLDA-Signal wartet, anstelle ein AHOLD-Signal anzulegen.
Außerdem zeigt Fig. 4 die Folge der Ereignisse, wenn die Steuereinrichtung 104 einen Schreibzyklus über die Leitung 106 an die Steuereinrichtung 103 überträgt. Die Steuerein­ richtung 104 legt zunächst ein LREQ#-Signal an die Steuer­ einrichtung 103 an, wobei sie den Zugriff auf die Verbindung 106 anfordert. Die Steuereinrichtung 103 legt in Abhängig­ keit von dem LREQ#-Signal ein HOLD-Signal an die CPU 101 an. Wenn die CPU 101 die Übertragung der aktuellen Adresse über die Adreßleitungen beendet hat, legt sie ein HLDA-Signal an und bringt die Adreßleitungen auf schwebendes Potential. Bei Empfang des HLDA-Signals legt die Steuereinrichtung 103 dann ein LGNT#-Signal an die Steuereinrichtung 104 an, womit sie der Steuereinrichtung 104 den Zugriff auf die Verbindung 106 bewilligt. Die Steuereinrichtung 103 legt das SIDLE#-Signal über die Verbindung 106 an und zeigt ihre Verfügbarkeit an. Die Steuereinrichtung 104 legt dann das CMDV#-Signal an, welches anzeigt, daß sie Befehlssignale über die Verbindung 106 zu der gleichen Zeit überträgt, zu der sie Befehls-, Status- und Adreßsignale überträgt. Wenn die Steuereinrich­ tung 104 die Übertragung der Befehls-, Status- und Adreß­ signale beendet hat, nimmt sie das CMDV#-Signal weg, und die Steuereinrichtung 103 nimmt das SIDLE#-Signal weg. Sie über­ trägt dann Datensignale in Form von Paketen. Die Steuerein­ richtung 104 nimmt das LREQ#-Signal weg, wenn die Daten­ signale übertragen worden sind. Die Steuereinrichtung 103 antwortet dann, indem sie das LGNT#-Signal anlegt. Sie legt außerdem das HOLD-Signal an, welches die CPU 101 veranlaßt, das HLDA-Signal wegzunehmen. Auf diese Weise tritt die Steu­ ereinrichtung 104 die Steuerung der Verbindung 106 ab und die CPU 101 gewinnt wieder die Steuerung der Adreßleitung.
Fig. 5 ist eine Tabelle, die das bei einem Ausführungs­ beispiel der vorliegenden Erfindung verwendete Protokoll darstellt. Bei diesem Ausführungsbeispiel enthält die Ver­ bindung 106 16 separate Leitungen und kann folglich 16 Bits gleichzeitig übertragen. Bei diesem Protokoll werden Befehls-, Status-, Adreß- und Datensignale seriell über die Verbindung 106 in fünf separaten Paketen übertragen. Auf diese Weise können die einzelnen Leitungen in der Verbindung 106 Befehls-, Status-, Adreß- und Datensignale übertragen. Das erste Paketformat ist das Protokoll, das für einen Schreibzyklus verwendet wird, der von einer Komponente an dem Bus 105, der Steuereinrichtung 103 oder der CPU 101 über die Verbindung 106 eingeleitet wird. In dem ersten Paket, dem C1-Paket, werden die ersten 13 Leitungen (0:12) zur Übertragung von Adreßsignalen an die Steuereinrichtung 104 verwendet. Die Leitung 13 wird zur Übertragung eines W/R#- Signals verwendet, welches anzeigt, ob der Zyklus ein Lese- oder Schreibzyklus ist. Die Leitung 14 wird zur Übertragung eines D/C#-Signals verwendet, welches anzeigt, ob der Schreibzyklus Daten- oder Steuersignale enthält. Die Leitung 15 des ersten Paketes wird zur Übertragung eines M/IO#- Signals verwendet, welches anzeigt, ob der Schreibzyklus an den Speicher oder an eine Eingabe-Ausgabe-Komponente gerich­ tet ist. Das zweite Paket, das C2-Paket, wird nach dem C1- Paket übertragen. In dem C2-Paket werden die ersten 12 Lei­ tungen (0:11) zur Übertragung von Adreßsignalen verwendet. Die verbleibenden vier Leitungen (12:15) werden zur Übertra­ gung von Byte-Freigabesignalen verwendet. Byte-Freigabe­ signale zeigen aktive Bytes während Lese- und Schreibzyklen an. Wenn das Byte-Freigabesignal aktiv für ein bestimmtes Byte ist, sind die übertragenen Daten gültig. In dem dritten Paket, dem D1-Paket, werden alle 16 Leitungen (0:15) zur Datenübertragung verwendet. In ähnlicher Weise werden in dem vierten Paket, dem D2-Paket, alle 16 Leitungen zur Daten­ übertragung verwendet. In dem fünften Paket sind die ersten 12 Leitungen (0:11) reserviert. Die verbleibenden vier Lei­ tungen (12:15) werden zur Übertragung des GO-Befehls oder des ABORT-Befehls verwendet. Fig. 5 zeigt außerdem das Pro­ tokoll, welches verwendet wird, wenn die Steuereinrichtung 103 oder die CPU 101 einen Lesezyklus über die Verbindung 106 einleitet. Das Lesezyklusprotokoll ähnelt dem Schreib­ zyklusprotokoll, das von der Steuereinrichtung 103 oder der CPU 101 eingeleitet wird. Die Steuereinrichtung 103 über­ trägt das M/IO#-Signal, das D/C#-Signal, das W/R#-Signal, das Byte-Freigabesignal und Adreßsignale in der gleichen Weise, wie oben beschrieben wurde. Das dritte Paket enthält jedoch, anstelle ein Datenpaket zu sein, den GO-Befehl oder den ABORT-Befehl. Das vierte Paket ist ein Datenpaket, wobei das D1-Paket auf allen 16 Leitungen (0:15) Datensignale an die Steuereinrichtung 104 überträgt. Das fünfte Paket ist ebenfalls ein Datenpaket, wobei das D2-Paket über alle 16 Leitungen (0:15) Daten an die Steuereinrichtung 104 über­ trägt.
Das Protokoll enthält außerdem ein spezielles Format, um Informationen an die Steuereinrichtung 104 zu übertragen, wobei die Steuereinrichtung 104 der Bestimmungsort für die Informationen ist. In diesem speziellen Format ist das erste Paket ein Befehlspaket, das C1-Paket. Die Steuereinrichtung 103 überträgt codierte Auswahlen über die ersten 12 Leitun­ gen (0:11). Die Steuereinrichtung überträgt ein W/R#-Signal über die 13. Leitung und überträgt eine 101 über die letzten drei Leitungen (13:15). Das zweite Paket ist auch ein Befehlspaket, das C2-Paket. Die Steuereinrichtung 103 über­ trägt Adreßsignale über die ersten sechs Leitungen (0:5). Sie überträgt außerdem codierte Auswahlen über die nächsten sechs Leitungen (6:11) und überträgt Byte-Freigabesignale über die letzten vier Leitungen (12:15). Die codierten Aus­ wahlen zeigen den aktuellen Bestimmungsort als speziellen Funktionsblock in der Steuereinrichtung 104 an. Das dritte Paket wird zur Übertragung eines GO- oder ABORT-Befehls ver­ wendet, welcher über vier Leitungen (12:15) übertragen wird. Das vierte und fünfte Pakete, das D1- bzw. D2-Paket, werden zur Datensignalübertragung verwendet. Die Steuereinrichtung 103 überträgt Datensignale über alle 16 Leitungen (0:15). In einem Schreibzyklus ist das dritte Paket das D1-Paket, das vierte Paket das D2-Paket und das fünfte Paket ist das GO- oder ABORT-Paket.
Wenn die Steuereinrichtung 104 anstelle der Steuerein­ richtung 103 einen Lesezyklus- oder einen Schreibzyklus ein­ leitet, ist das Format bei diesem Protokoll ähnlich dem oben beschriebenen Lesezyklus- oder Schreibzyklusformat, mit der Ausnahme, daß das Paket, das den GO- oder ABORT-Befehl ent­ hält, nicht existiert. Folglich hat ein von der Steuerein­ richtung 104 eingeleiteter Lese- oder Schreibzyklus nur vier Pakete anstelle von fünf Paketen.
Es ist klar, daß das beschriebene Protokoll der Verbin­ dung 106 ermöglicht, Signale verschiedener Arten über eine einzige Leitung in einer Verbindung 106 zu übertragen. Infolgedessen wird die Anzahl der zum Übertragen der glei­ chen Informationen benötigten Leitungen verringert, und zwar im Vergleich zu Systemen, die Leitungen verwenden, die nur eine Signalart übertragen. In diesem Beispiel benötigt die Verbindung 106 aufgrund der Übertragung von mehreren Signal­ arten nur 16 Leitungen. Traditionelle Systeme dagegen würden wenigstens 37 Leitungen benötigen, um die gleiche Informa­ tionsmenge zu übertragen. Folglich spart die Verwendung von Leitungen, die verschiedene Signalarten übertragen, und das Protokoll zur Unterstützung der Verwendung wenigstens 21 Leitungen. Diese Leitungseinsparungen führen zu Einsparungen von 21 Kontaktstiften.
Fig. 6 zeigt ein Blockschaltbild, das die Steuereinrich­ tungen eines Ausführungsbeispiels der vorliegenden Erfindung darstellt. Obwohl zur einfacheren Veranschaulichung nur vier Leitungen in der Verbindung 106 gezeigt sind, enthält die Verbindung 106 tatsächlich 16 separate Leitungen. In ähnli­ cher Weise hat die Steuereinrichtung 103 16 Knoten, die Adreßsignale an den Prozessor 101 übertragen, und Adreß­ signale von dem Prozessor 101 empfangen. Die 16 Knoten über­ tragen außerdem Befehls-, Adreß- und Datensignale über die Verbindung 106 zu der Steuereinrichtung 104 und empfangen Befehls-, Adreß- und Datensignale über die Verbindung 106 von der Steuereinrichtung 104. Die Steuereinrichtung 103 enthält außerdem einen Decodierer 633, einen Zuteilungsent­ scheider 630 (Arbiter), eine Master-Zustandsmaschine 628 und eine Slave-Zustandsmaschine 629. Die Steuereinrichtung 104 enthält einen Decodierer 664, eine Master-Zustandsmaschine 631 und eine Slave-Zustandsmaschine 632. Der Decodierer 633 dekodiert von der CPU 101, einer Komponente an dem Bus 105 oder der Steuereinrichtung 103 übertragene Adressen. Der Zuteilungsentscheider 630 entscheidet den Zugriff auf die Verbindung 106 und die Adreßleitungen zu dem Prozessor 101. Der Decodierer 664 dekodiert von einer Komponente an dem Bus 133 oder der Steuereinrichtung 103 übertragene Adressen. Die Master-Zustandsmaschine 628 überträgt Befehls-, Adreß- und Datensignale über die Verbindung 106 zu der Steuereinrich­ tung 104. Die Slave-Zustandsmaschine 629 empfängt Befehls-, Adreß- und Datensignale über die Verbindung 106 von der Steuereinrichtung 104. Die Master-Zustandsmaschine 631 über­ trägt Befehls-, Adreß- und Datensignale über die Verbindung 106 zu der Steuereinrichtung 103, und die Slave-Zustands­ maschine 632 empfängt Befehls-, Adreß- und Datensignale über die Verbindung 106 von der Steuereinrichtung 103.
Fig. 7 ist ein Zustandsdiagramm, das die Operation des Zuteilungsentscheiders (Arbiter) der Fig. 6 darstellt. Wenn das Computersystem eingeschaltet wird, schaltet sich der Arbiter 630 im RESET-Modus bzw. Rücksetzmodus ein, wie im Zustand 733 gezeigt ist. Der Arbiter 630 geht dann in den im Zustand 734 gezeigten IDLE-Modus bzw. Ruhemodus über und bleibt in dem IDLE-Modus, bis eines von drei Ereignissen auftritt. Das erste Ereignis ist ein Signal (HATCOMIO) vom Decodierer 633, welches einen Schreib- oder Lesezyklus von der CPU 101 an die Steuereinrichtung 104 über die Verbindung 106 anzeigt. Bei Empfang des Signals geht der Arbiter 630 in den Zustand 735 über, in dem er ein AHOLD-Signal an die CPU 101 anlegt. Wenn die CPU 101 die Adreßleitungen in Abhängig­ keit von dem AHOLD-Signal auf ein schwebendes Potential bringt, geht der Arbiter 630 in den Zustand 736 über, in dem er ein Signal (HDONE) an die Slave-Zustandsmaschine 632 in der Steuereinrichtung 104 überträgt. Das Signal befiehlt der Slave-Zustandsmaschine 632, ein SIDLE#-Signal anzulegen. Der Arbiter 630 geht dann in einen Wartezustand über, während die Steuereinrichtung 103 den Lese- oder Schreibzyklus aus­ führt, wie im Zustand 737 gezeigt ist. Wenn die Master- Zustandsmaschine 628 in der Steuereinrichtung 103 den Lese- oder Schreibzyklus beendet hat, legt sie ein Signal (LDONE) an den Arbiter 630 an. Bei Empfang dieses Signals geht der Arbiter 630 in den Zustand 738 über, in dem es das AHOLD- Signal von der CPU 101 wegnimmt. Der Arbiter 630 geht dann zurück in den IDLE-Zustand 734 über.
Das zweite Ereignis, welches den Arbiter 630 veranlaßt, den Ruhezustand 734 zu verlassen, ist ein Signal vom Deco­ dierer 633, das einen Lese- oder Schreibzyklus von einer Komponente am Bus 105 oder der Steuereinrichtung 103 über die Verbindung 106 anzeigt. Bei Empfang dieses Signals (PSUBDEC) geht der Arbiter 630 in den Zustand 739 über, in dem es ein HOLD-Signal an die CPU 101 anlegt. Der Arbiter 630 geht dann in den Wartezustand 740 über, in dem er solange bleibt, bis die CPU 101 ein HLDA-Signal anlegt. Bei Empfang des HLDA-Signals überträgt der Arbiter 630 ein Signal an die Slave-Zustandsmaschine 632 in der Steuerein­ richtung 104, wie im Zustand 741 gezeigt ist. Das Signal befiehlt der Slave-Zustandsmaschine 632, ein SIDLE#-Signal anzulegen. Der Arbiter 630 geht dann in einen Wartezustand über, wie im Zustand 742 gezeigt ist, während die Steuerein­ richtung 103 den Schreib- oder Lesezyklus ausführt. Wenn die Steuereinrichtung 103 den Schreib- oder Lesezyklus beendet hat, legt die Master-Zustandsmaschine 628 in der Steuerein­ richtung 103 ein Signal (LDONE) zurück an den Arbiter 630 an. Bei Empfang dieses Signals geht der Arbiter 630 in den Zustand 743 über, in dem er das HOLD-Signal von der CPU 101 wegnimmt. Die CPU 101 wiederum nimmt das HLDA-Signal weg und der Arbiter 630 geht zurück in den IDLE-Zustand 734 über.
Das dritte Ereignis, welches den Arbiter 630 dazu veran­ laßt, den Ruhezustand 734 zu verlassen, ist das Anlegen eines LREQ#-Signals durch die Steuereinrichtung 104. Bei Empfang des LREQ#-Signals geht der Arbiter 630 in den Zustand 744 über, in dem er ein HOLD-Signal an die CPU 101 anlegt. Der Arbiter 630 geht dann in den Wartezustand 745 über, in dem er solange bleibt, bis die CPU 101 ein HLDA- Signal anlegt. Bei Emfpang des HLDA-Signals von der CPU 101, legt der Arbiter 630 ein LGNT#-Signal an die Steuereinrich­ tung 104 an, wie im Zustand 746 gezeigt ist. Der Arbiter 630 geht dann in den Wartezustand 747 über, in dem er bleibt, bis die Steuereinrichtung 104 den Lese- oder Schreibzyklus beendet hat. Wenn die Steuereinrichtung 104 den Lese- oder Schreibzyklus beendet hat, nimmt sie das LREQ#-Signal weg. An diesem Punkt geht der Arbiter 630 in den Zustand 748 über, in dem er das LGNT#-Signal wegnimmt. Der Arbiter 630 nimmt außerdem das HOLD-Signal weg, wie im Zustand 743 gezeigt ist. Die CPU 101 antwortet, indem sie das HLDA- Signal wegnimmt, und der Arbiter 630 geht zurück in den Ruhezustand 734. Es ist klar, daß das dritte Ereignis ein Lese- oder Schreibzyklus von einer Komponente an dem Bus 133 oder der Steuereinrichtung 104 über die Verbindung 106 ist.
Fig. 8 ist ein Zustandsdiagramm, das die Operation einer Master-Zustandsmaschine gemäß Fig. 6 zeigt. Wenn das Compu­ tersystem eingeschaltet wird, werden die Master-Zustands­ maschine 628 und die Steuereinrichtung 103 im Rücksetz­ zustand 849 eingeschaltet. Die Master-Zustandsmaschine 628 geht dann in den Ruhezustand 850 über. Wenn das LGNT#-Signal weggenommen wird, geht die Master-Zustandsmaschine 628 in den Wartezustand 851 über. Sie bleibt im Wartezustand 851, bis die Steuereinrichtung 104 das LGNT#-Signal anlegt oder bis die Slave-Zustandsmaschine 632 in der Steuereinrichtung 104 das SIDLE#-Signal anlegt. Wenn die Master-Zustands­ maschine 628 das Anlegen des LGNT#-Signals erfaßt, geht sie zurück in den Ruhezustand 850. Wenn die Slave-Zustands­ maschine 632 dagegen das SIDLE#-Signal anlegt, geht die Master-Zustandsmaschine 628 in den Zustand 855, in dem sie ein CMDV#-Signal anlegt und das erste Befehlspaket (C1) überträgt. Die Master-Zustandsmaschine 628 überträgt dann das zweite Befehlspaket (C2), wie im Zustand 856 gezeigt ist. Der nächste von der Master-Zustandsmaschine 628 ausge­ führte Zustand hängt davon ab, ob der über die Verbindung 106 ausgeführte Zyklus ein Schreibzyklus oder ein Lesezyklus ist. Während eines Schreibzyklus geht die Master-Zustand­ maschine 628 dann in den Zustand 857 über, in dem sie das CMDV#-Signal anlegt. Sie überträgt dann das erste Datenpaket (D1), wie im Zustand 858 gezeigt ist. Nach dem D1-Paket überträgt die Master-Zustandsmaschine 628 das zweite Daten­ paket (D2), wie im Zustand 859 gezeigt ist. Die Master- Zustandsmaschine 628 geht dann in den Zustand 863 über, in dem sie das CMDV#-Signal anlegt. Wenn die Steuereinrichtung 103 das subtraktive Dekodieren der Adresse beendet hat, geht die Master-Zustandsmaschine 628 in den GO-Zustand 870 über, wenn die Adresse eine vom die Steuereinrichtung 104 enthal­ tenden Bus 133 entfernte Komponente anzeigt. Die Master- Zustandsmaschine 628 geht in den ABORT-Zustand 868 über, wenn die Adresse einen anderen Bestimmungsort als eine Kom­ ponente an dem Bus 133 anzeigt. Wenn die Steuereinrichtung 103 die subtraktive Decodierung der Adresse nicht beendet hat, geht die Master-Zustandsmaschine 628 in den Warte­ zustand 862 über und bleibt in dem Wartezustand, bis die Steuereinrichtung 103 die subtraktive Decodierung beendet hat. Die Master-Zustandsmaschine 628 geht dann, wie oben beschrieben, in den ABORT-Zustand 868 oder den GO-Zustand 870 über.
Wenn die CPU 101 oder die Steuereinrichtung 103 einen Lesezyklus über die Verbindung 106 überträgt, überträgt die Master-Zustandsmaschine 628 die ersten und zweiten Daten­ pakete nicht nach den ersten und zweiten Befehlspaketen. Statt dessen geht die Master-Zustandsmaschine 628 in den Abbruchzustand 868 über, wenn die Steuereinrichtung 103 die subtraktive Decodierung beendet hat und wenn die Adresse einen anderen Bestimmungsort als eine Komponente an dem Bus 133 anzeigt. Sie geht in den GO-Zustand 870 über, wenn die Steuereinrichtung 103 die subtraktive Decodierung beendet hat und die Adresse einen Bestimmungsort einer Komponente an dem Bus 133, einschließlich der Steuereinrichtung 104, anzeigt. Sie geht in den Wartezustand 862 über, wenn die Steuereinrichtung 103 die subtraktive Decodierung nicht beendet hat und bleibt in dem Wartezustand 862, bis die Steuereinrichtung 103 die subtraktive Decodierung beendet hat. Nach dem Wartezustand 862 geht die Master-Zustands­ maschine 628 in den ABORT-Zustand 868 oder den GO-Zustand 870 über, wie oben beschrieben wurde.
Im ABORT-Zustand 868 legt die Master-Zustandsmaschine 628 einen ABORT-Befehl an die Steuereinrichtung 104 und die Slave-Zustandsmaschine 632 an. Der ABORT-Befehl veranlaßt die Steuereinrichtung 104 die Verarbeitung von vorherigen Befehlen und Daten zu beenden, die zu ihr von der Master- Zustandsmaschine 628 übertragen wurden. Die Master-Zustands­ maschine 628 geht dann in den Zustand 867 über, in dem sie das CMDV#-Signal wegnimmt. Sie geht dann in den Zustand 861 über, in dem sie ein Signal an den Zuteilungsentscheider 630 anlegt, das anzeigt, daß sie den Zyklus beendet hat. Die Master-Zustandsmaschine 628 geht dann in den Wartezustand 851 über.
Im GO-Zustand 870 überträgt die Master-Zustandsmaschine 628 einen GO-Befehl an die Steuereinrichtung 104 und die Slave-Zustandsmaschine 632. Der GO-Befehl veranlaßt die Steuereinrichtung 104, die Verarbeitung der Befehle und der Daten zu beenden, die vorher von der Master-Zustandsmaschine 628 übertragen wurden. Die Master-Zustandsmaschine 628 geht dann in den Zustand 865 über, in dem sie das CMDV#-Signal wegnimmt. Bei einem Schreibzyklus geht die Master-Zustands­ maschine 628 dann in den Wartezustand 866, in dem sie bleibt, bis die Schreiboperation beendet ist. Die Master- Zustandsmaschine 628 legt dann ein Signal an den Zuteilungs­ entscheider 630 an, wie im Zustand 861 gezeigt ist. Sie geht dann in den Wartezustand 851 über. Dagegen geht die Master- Zustandsmaschine 628 bei einem Lesezyklus in den Warte­ zustand 860 über, in dem sie solange bleibt, bis die Steuer­ einrichtung 104 das erste Datenpaket (D1) überträgt. Die Master-Zustandsmaschine 628 geht dann in den Zustand 854 über, in dem sie das erste Datenpaket empfängt. Sie geht dann in den Zustand 853 über, in dem sie das zweite Daten­ paket (D2) empfängt. Nach dem D2-Paket legt die Master- Zustandsmaschine 628 ein Signal an den Zuteilungsentscheider 630, wie im Zustand 852 gezeigt ist, und geht in den Warte­ zustand 851 über.
Fig. 9 zeigt ein Zustandsdiagramm der Operation einer Slave-Zustandsmaschine gemäß Fig. 6. Wenn das Computersystem eingeschaltet wird, wird die Slave-Zustandsmaschine 632 im RESET-Zustand 971 eingeschaltet. Sie geht dann in den IDLE- Zustand 972 über, in dem sie bleibt, wenn das LGNT#-Signal angelegt ist. Wenn das LGNT#-Signal weggenommen wird, geht die Slave-Zustandsmaschine 632 in den WAIT-Zustand 973 über. Wenn die Slave-Zustandsmaschine 632 ein Signal aus dem Zuteilungsentscheider 630 empfängt, legt sie ein SIDLE#- Signal an, wie im Zustand 974 gezeigt ist. Wenn die Master- Zustandsmaschine 628 das CMDV#-Signal anlegt, geht die Slave-Zustandsmaschine 632 in den Zustand 975 über, in dem sie das erste Befehlspaket (C1) empfängt. Sie geht dann in den Zustand 976 über, wo sie das zweite Befehlspaket (C2) empfängt und wo sie das SIDLE#-Signal wegnimmt. Wenn die Operation ein Schreibzyklus ist, nimmt die Master-Zustands­ maschine 628 das CMDV#-Signal weg. Die Slave-Zustandsmaschi­ ne 632 empfängt dann das erste Datenpaket (D1), wie im Zustand 977 gezeigt ist. Danach empfängt sie das zweite Datenpaket (D2), wie im Zustand 978 gezeigt ist. Wenn die Master-Zustandsmaschine 629 einen ABORT-Befehl überträgt, geht die Slave-Zustandsmaschine 632 in den Zustand 981 über. Wenn die Master-Zustandsmaschine 628 einen GO-Befehl über­ trägt, geht die Slave-Zustandsmaschine 632 in den Zustand 980 über. Wenn die Master-Zustandsmaschine 628 weder einen ABORT-Befehl noch einen GO-Befehl überträgt, geht die Slave- Zustandsmaschine 632 in den WAIT-Zustand 979 über, in dem sie solange bleibt, bis die Master-Zustandsmaschine 628 einen ABORT-Befehl oder einen GO-Befehl überträgt.
Wenn die Operation dagegen ein Lesezyklus ist, empfängt die Slave-Zustandsmaschine 632 nicht das erste Datenpaket und das zweite Datenpaket nach den ersten und zweiten Befehlspaketen. Nachdem sie das zweite Befehlspaket empfan­ gen hat und das SIDLE#-Signal im Zustand 976 weggenommen hat, geht sie statt dessen in den Zustand 981 über, wenn die Master-Zustandsmaschine 628 einen ABORT-Befehl überträgt. Alternativ geht die Slave-Zustandsmaschine 632 in den Zustand 980 über, wenn die Master-Zustandsmaschine 628 einen GO-Befehl überträgt. Wenn die Master-Zustandsmaschine 628 weder einen ABORT-Befehl noch einen GO-Befehl überträgt, geht die Slave-Zustandsmaschine 632 in den WAIT-Zustand 979 über, in dem sie bleibt, bis die Master-Zustandsmaschine 628 einen ABORT- oder einen GO-Befehl überträgt. Sie geht dann in den Zustand 981 bei einem ABORT-Befehl oder in den Zustand 980 bei einem GO-Befehl über.
Im Zustand 981 bearbeitet die Slave-Zustandsmaschine 632 den von der Master-Zustandsmaschine 628 übertragenen ABORT- Befehl. Sie veranlaßt die Steuereinrichtung 104, die gesamte Verarbeitung früherer von der Master-Zustandsmaschine 628 übertragener Befehle und Daten zu beenden. Die Slave- Zustandsmaschine 632 legt dann ein SIDLE#-Signal an, wie im Zustand 982 gezeigt ist und geht zurück in den WAIT-Zustand 973 über.
Im Zustand 980 verarbeitet die Slave-Zustandsmaschine 632 den von der Master-Zustandsmaschine 628 übertragenen GO- Befehl. Der GO-Befehl veranlaßt die Steuereinrichtung 104 die Verarbeitung der von der Master-Zustandsmaschine 628 vorher übertragenen Befehle und Daten zu beenden. Bei einem Schreibzyklus legt die Slave-Zustandsmaschine 632 dann ein SIDLE#-Signal an, wie im Zustand 982 gezeigt ist und geht zurück in den WAIT-Zustand 973 über. Auf der anderen Seite geht die Slave-Zustandsmaschine 632 bei einem Lesezyklus in den WAIT-Zustand 983 über, in dem sie solange bleibt, bis die angeforderten Daten bereit sind. An diesem Punkt legt die Slave-Zustandsmaschine 632 das SIDLE#-Signal an, wie im Zustand 984 gezeigt ist. Sie überträgt dann das erste Daten­ paket (D1), wie im Zustand 985 gezeigt ist und überträgt das zweite Datenpaket (D2), wie im Zustand 986 gezeigt ist.
Schließlich kehrt die Slave-Zustandsmaschine 632 in den WAIT-Zustand 973 zurück.
Fig. 10 zeigt ein Zustandsdiagramm, das die Operation einer Master-Zustandsmaschine gemäß Fig. 6 darstellt. Die Master-Zustandsmaschine 631 ist in der Steuereinrichtung 104 angeordnet und steuert die Übertragung von Signalen über die Verbindung 106 während eines von der Steuereinrichtung 104 eingeleiteten Lesezyklus oder Schreibzyklus. Wenn das Computersystem eingeschaltet wird, wird die Master-Zustands­ maschine 631 im RESET-Zustand 1087 eingeschaltet. Die Master-Zustandsmaschine 631 geht dann in den IDLE-Zustand 1088 über, in dem sie solange bleibt, bis sie ein Signal von dem Decodierer 664 in der Steuereinrichtung 104 empfängt, das einen Lese- oder Schreibzyklus anzeigt, der von der Steuereinrichtung 104 oder einer anderen Komponente am Bus 133 eingeleitet wurde. Bei Empfang des Signals legt die Master-Zustandsmaschine 631 das LREQ#-Signal an, wie im Zustand 1089 gezeigt ist. Sie geht dann in den WAIT-Zustand 1090 über, in dem sie ein LGNT#-Signal von dem Zuteilungs­ entscheider 630 erwartet. Bei Empfang des LGNT#-Signals geht die Master-Zustandsmaschine 631 in den WAIT-Zustand 1091, in dem sie solange bleibt, bis die Slave-Zustandsmaschine 629 und die Steuereinrichtung 103 das SIDLE#-Signal anlegt. Nach Empfang des SIDLE#-Signals legt die Master-Zustandsmaschine 631 das CMDV#-Signal an und überträgt das erste Befehlspaket (C1), wie im Zustand 1092 gezeigt ist. Die Master-Zustands­ maschine 631 überträgt dann das zweite Befehlspaket (C2), wie im Zustand 1093 gezeigt ist. Am Ende des zweiten Befehlspaketes nimmt die Master-Zustandsmaschine 631 das CMDV#-Signal weg, wie im Zustand 1094 gezeigt ist. Bei einer Schreibzyklus-Operation überträgt die Master-Zustandsma­ schine 631 dann das erste Datenpaket (D1), wie im Zustand 1095 gezeigt ist, und überträgt das zweite Datenpaket (D2), wie im Zustand 1096 gezeigt ist. Sie geht dann in den WAIT- Zustand 1097 über, in dem sie bleibt, bis die Operation beendet ist. An diesem Punkt nimmt sie das LREQ#-Signal weg, wie im Zustand 1098 gezeigt ist, und geht in den IDLE- Zustand 1088 zurück.
Bei einer Lesezyklusoperation dagegen geht die Master- Zustandsmaschine 631 von dem Zustand 1094 in den Warte­ zustand 1099 über, in dem sie solange bleibt, bis die Steu­ ereinrichtung 103 das erste Datenpaket überträgt. An diesem Punkt geht die Master-Zustandsmaschine 631 in den Zustand 1001 über, in dem sie das erste Datenpaket (D1) empfängt. Sie empfängt dann das zweite Datenpaket (D2), wie im Zustan­ de 1002 gezeigt ist. Die Master-Zustandsmaschine 631 nimmt dann das LREQ#-Signal weg, wie im Zustand 1098 gezeigt ist, und geht in den IDLE-Zustand 1088 zurück.
Fig. 11 zeigt ein Zustandsdiagramm, das die Operation einer Slave-Zustandsmaschine gemäß Fig. 6 zeigt. Die Slave- Zustandsmaschine 629 ist in der Steuereinrichtung 103 ange­ ordnet. Wenn das Computersystem eingeschaltet wird, wird die Slave-Zustandsmaschine 629 im RESET-Zustand 1103 eingeschal­ tet. Sie geht dann in den IDLE-Zustand 1104, in dem sie bleibt, während das LGNT#-Signal nicht anliegt. Wenn der Zuteilungsentscheider 630 das LGNT#-Signal anlegt, geht die Slave-Zustandsmaschine in den WAIT-Zustand 1105 Zustand über, in dem sie bleibt, bis sie ein Signal von dem Zutei­ lungsentscheider 630 empfängt, das einen von der Steuerein­ richtung 104 eingeleiteten Lese- oder Schreibzyklus anzeigt. Die Slave-Zustandsmaschine 629 legt dann ein SIDLE#-Signal an, wie im Zustand 1106 gezeigt ist. Die Master-Zustands­ maschine 631 antwortet, indem sie ein CMDV#-Signal anlegt und das erste Befehlspaket (C1) überträgt. Die Slave- Zustandsmaschine 629 empfängt das erste Befehlspaket, wie im Zustand 1107 gezeigt ist. Sie empfängt dann das zweite Befehlspaket (C2) und nimmt das SIDLE#-Signal weg, wie im Zustand 1108 gezeigt ist. Bei einer Schreibzyklusoperation nimmt die Master-Zustandsmaschine 631 das CMDV#-Signal weg. Die Slave-Zustandsmaschine 629 empfängt das erste Datenpaket (D1) und empfängt das zweite Datenpaket (D2), wie in den Zuständen 1109 und 1110 gezeigt ist. Sie verarbeitet den Schreibzyklus dann, wie im Zustand 1111 gezeigt ist. Wenn die Schreibzyklusoperation beendet ist, legt die Slave- Zustandsmaschine 629 das SIDLE#-Signal an, wie im Zustand 1112 gezeigt ist, und kehrt in den Wartezustand 1105 zurück.
Auf der anderen Seite nimmt die Master-Zustandsmaschine 631 bei einer Lesezyklusoperation das CMDV#-Signal weg, und die Slave-Zustandsmaschine 629 geht in den WAIT-Zustand 1113 über, in dem sie bleibt, bis die angeforderten Daten bereit sind. Wenn die Daten bereit sind, zurück zu der Steuerein­ richtung 104 übertragen zu werden, legt die Slave-Zustands­ maschine 629 das SIDLE#-Signal an, wie im Zustand 1114 gezeigt ist. Sie überträgt dann das erste Datenpaket (D1) und das zweite Datenpaket (D2), wie in den Zuständen 1115 und 1116 gezeigt ist. Die Slave-Zustandesmaschine 629 kehrt dann in den Wartezustand 1105 zurück.
Bei einem Ausführungsbeispiel der vorliegenden Erfindung bringt die Steuereinrichtung 103 das CMDV#-Signal in dem Zyklus auf ein schwebendes Potential, in dem sie das LGNT#- Signal aktiviert. Die Steuereinrichtung 103 wird am Anfang immer das SIDLE#-Signal niedrig ansteuern, so daß die Steu­ ereinrichtung 104 ihre Transaktion sofort beginnen kann, ohne auf das Abtasten eines gültigen SIDLE#-Signals zu war­ ten. Außerdem wird das SIDLE#-Signal am Ende einer angefor­ derten Transaktion von der Steuereinrichtung 103 oder der Steuereinrichtung 104 immer niedrig angesteuert. Auf diese Weise ist es nicht nötig, dem Slave zu signalisieren, daß er SIDLE# am Anfang eines Zyklus anlegen soll.
Es ist klar, daß das beschriebene Verfahren und die beschriebene Einrichtung zum Anlegen und Wegnehmen der ver­ schiedenen Steuersignale es einer Verbindung ermöglichen, mit einer für einen speziellen Zweck verwendeten Leitung gekoppelt zu werden. Auf diese Weise kann eine für einen Zweck (d. h. die Übertragung von Adreßsignalen zwischen der CPU 101 und der Steuereinrichtung 103) verwendete Leitung auch einem zweiten Zweck dienen (d. h. einen Teil der Verbin­ dung 106 zur Übertragung von Befehlen, Status, Adressen und Daten zwischen der Steuereinrichtung 103 und der Steuerein­ richtung 104) bilden. Die Kopplung der Verbindung mit einer bereits für einen bestimmten Zweck benötigten Leitung ermög­ licht es der Verbindung, den mit der Leitung verbundenen Kontaktstifte zu verwenden, anstelle einen separaten Kon­ taktstift zu verwenden. Auf diese Weise werden Kontaktstift­ einsparungen erzielt. Bei dem Beispiel einer Verbindung mit 16 Leitungen, die mit 16 Adreßleitungen gekoppelt sind, ver­ wendet die Verbindung die 16 von den Adreßleitungen verwen­ deten Kontaktstifte, anstelle von zusätzlichen Kontaktstif­ ten. Folglich werden 16 Kontaktstifte gespart, zusätzlich zu den 21 wie oben beschrieben eingesparten Kontaktstiften.

Claims (8)

1. Computersystem mit
einem Prozessor (101)
einem einerseits mit dem Prozessor (101) über mehrere parallele Doppelfunktionsleitungen (169) und ande­ rerseits mit einem ersten Bus (105) gekoppelten ersten Steu­ erbauelement (103) zum Steuern von Signalübertragungen auf dem ersten Bus (105), wobei die Doppelfunktionsleitungen (169) Adreß-, Daten- und/oder Befehlssignale übertragen kön­ nen,
einem (i) mit den Doppelfunktionsleitungen (169) über Verbindungsleitungen (106), (ii) mit dem ersten Steuer­ bauelement (103) über mehrere spezielle Signalleitungen (124-127) und (iii) mit einem zweiten Bus (133) gekoppelten zweiten Steuerbauelement (104) zum Steuern von Signalüber­ tragungen auf dem zweiten Bus (133), wobei die Verbindungs­ leitungen (106) und die Doppelfunktionsleitungen (169) Signale zwischen dem zweiten Steuerbauelement (104) und dem ersten Steuerbauelement (103) übertragen können, und
einer über Steuersignalleitungen mit dem Prozes­ sor (101) sowie mit den Doppelfunktionsleitungen (169) und mit den speziellen Signalleitungen (124-127) gekoppelten Zuteilungsentscheidungsschaltung, die über den Zugriff des ersten und des zweiten Steuerbauelements (103, 104) auf die mit den Doppelfunktionsleitungen (169) verbundenen Verbin­ dungsleitungen (106), entscheidet, wobei dem zweiten Steuer­ bauelement (104) erst nach Senden eines Verbindungsanforde­ rungssignals (LREQ#) über eine der speziellen Signalleitun­ gen (124) an das erste Steuerbauelement (103) der Zugriff auf die Verbindungsleitungen (106) und somit die Doppelfunk­ tionsleitungen (169) gewährt wird.
2. Computersystem nach Anspruch 1, dadurch gekennzeich­ net, daß die Doppelfunktionsleitungen Adreßleitungen umfas­ sen, wobei die Zuteilungsentscheidungsschaltung über den Zugriff auf die Adreßleitungen entscheidet.
3. Computersystem nach Anspruch 1 oder 2 dadurch gekennzeichnet, daß das erste Steuerbauelement aufweist:
eine mit der Zuteilungsentscheidungschaltung gekoppelte erste Master-Zustandsmaschine zum Senden von Signalen an und zum Empfangen von Signalen aus der Zutei­ lungsentscheidungsschaltung und zum Senden von Kommando-, Adreß- und Datensignalen über die Verbindungsleitungen (106) und die mehreren speziellen Signalleitungen (124-127) an das zweite Steuerbauelement (104);
eine erste Slave-Zustandsmaschine zum Empfangen von Kommando-, Adreß- und Datensignalen über die Verbin­ dungsleitungen (106) und die mehreren speziellen Signallei­ tungen (124-127) aus dem zweiten Steuerbauelement; und
einen ersten Decodierer zum Decodieren von Adressen, die von dem Prozessor, dem zweiten Steuerbauele­ ment und einer Mehrzahl von Bauelementen an dem ersten Bus gesendet werden.
4. Computersystem nach Anspruch 3, dadurch gekennzeich­ net, daß das zweite Steuerbauelement (104) aufweist:
eine zweite Master-Zustandsmaschine zum Senden von Kommando-, Adreß- und Datensignalen über die Verbin­ dungsleitungen (106) und über die mehreren speziellen Signalleitungen (124-127) an das erste Steuerbauelement;
eine zweite Slave-Zustandsmaschine zum Empfangen von Kommando-, Adreß- und Datensignalen über die Verbin­ dungsleitungen (169) und über die mehreren speziellen Signalleitungen (124-127) aus dem ersten Steuerbauelement; und
einen zweiten Decodierer zum Decodieren von Adressen, die von dem ersten Steuerbauelement und mehreren Bauelementen an dem zweiten Bus gesendet werden.
5. Computersystem nach einem der Ansprüche 1 bis 4 dadurch gekennzeichnet, daß die mehreren speziellen Signal­ leitungen eine Untätig-Signal-Leitung (SIDLE#) zum Übertra­ gen eines den Abschluß einer Transaktion anzeigenden Signals, eine Kommandoleitung zum Übertragen eines das Sen­ den von Kommandosignalen über die Verbindungsleitungen (106) anzeigenden Signals (CMDV#), eine Verbindungsanforderungs­ leitung zum Übertragen eines Verbindungsanforderungssignals (LREQ#) aus dem zweiten Steuerbauelement, das den Zugriff auf die Verbindungsleitungen (106) anfordert, und eine Ver­ bindungsgewährungsleitung zum Übertragen eines Verbindungs­ gewährungssignals (LGNT#) aus dem ersten Steuerbauelement, das die freie Verfügbarkeit der Verbindungsleitungen (106) anzeigt, umfaßt.
6. Computersystem nach Anspruch 5 dadurch gekennzeich­ net, daß die erste Master-Zustandsmaschine Kommando-, Adreß- und Datensignale über die Verbindungsleitungen (106) vor der Bestimmung eines Ziels übermittelt, und daß die erste Master-Zustandsmaschine ein GO-Kommando an die Slave- Zustandsmaschine ausgibt, wenn ermittelt worden ist, daß das Ziel ein Bauelement an dem zweiten Bus ist, wobei das GO- Kommando die zweite Slave-Zustandsmaschine anweist, mit der Verarbeitung der Kommando-Adreß- und Datensignale fortzufah­ ren.
7. Computersystem nach Anspruch 6, dadurch gekennzeich­ net, daß die erste Master-Zustandsmaschine ein ABORT-Komman­ do an die zweite Slave-Zustandsmaschine ausgibt, wenn sie feststellt, daß das Ziel ein Bauelement an dem ersten Bus ist, wobei das ABORT-Kommando die zweite Slave-Zustands­ maschine anweist, die Verarbeitung der Kommando-, Adreß- und Datensignale abzubrechen.
8. Computersystem nach einem der Ansprüche 1 bis 7 dadurch gekennzeichnet, daß das erste Steuerbauelement und das zweite Steuerbauelement Bus-Controller sind.
DE19580195T 1994-03-18 1995-03-17 Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung Expired - Fee Related DE19580195C2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/210,560 US5533200A (en) 1994-03-18 1994-03-18 Method and apparatus for transmission of signals over a shared line
PCT/US1995/003436 WO1995026002A1 (en) 1994-03-18 1995-03-17 Method and apparatus for transmission of signals over a shared line

Publications (2)

Publication Number Publication Date
DE19580195T1 DE19580195T1 (de) 1997-01-16
DE19580195C2 true DE19580195C2 (de) 2003-07-03

Family

ID=22783388

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19580195T Expired - Fee Related DE19580195C2 (de) 1994-03-18 1995-03-17 Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung

Country Status (9)

Country Link
US (3) US5533200A (de)
JP (1) JP2002502513A (de)
CN (1) CN1161696C (de)
AU (1) AU2124095A (de)
DE (1) DE19580195C2 (de)
FR (1) FR2717645B1 (de)
GB (1) GB2287862B (de)
TW (1) TW401543B (de)
WO (1) WO1995026002A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729762A (en) * 1995-04-21 1998-03-17 Intel Corporation Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent
DE19730112A1 (de) * 1997-07-14 1999-01-21 Ericsson Telefon Ab L M Empfangs- und Speichervorrichtung für Übertragungseinheiten
JPH11259184A (ja) * 1998-03-11 1999-09-24 Nec Shizuoka Ltd 外部インタフェース回路
US6418538B1 (en) * 1998-07-06 2002-07-09 Intel Corporation Method and system for scheduling transactions over a half duplex link
JP4800045B2 (ja) * 2006-01-30 2011-10-26 浜松ホトニクス株式会社 固体撮像装置
JP4759494B2 (ja) * 2006-11-13 2011-08-31 パナソニック株式会社 シリアルデータ通信方式およびシリアルデータ通信装置
US8067955B2 (en) * 2008-08-21 2011-11-29 Texas Instruments Incorporated Preventing erroneous operation in a system where synchronized operation is required
KR102262550B1 (ko) * 2015-03-03 2021-06-10 에스케이하이닉스 주식회사 복수의 기능 블록들을 포함하는 반도체 장치 및 그것의 동작 방법
JP6809063B2 (ja) * 2016-09-09 2021-01-06 富士通株式会社 アクセス制御装置、アクセス制御方法、およびアクセス制御プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4106104A (en) * 1975-11-11 1978-08-08 Panafacom Limited Data transferring system with priority control and common bus
US4365293A (en) * 1980-03-28 1982-12-21 Pitney Bowes Inc. Serial communications bus for remote terminals
DE3900348A1 (de) * 1989-01-07 1990-07-12 Diehl Gmbh & Co Universelles bus-system
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4379294A (en) * 1981-02-12 1983-04-05 Electric Power Research Institute, Inc. Data highway access control system
US4442502A (en) * 1981-03-30 1984-04-10 Datapoint Corporation Digital information switching system
US4481572A (en) * 1981-10-13 1984-11-06 Teledyne Industries, Inc. Multiconfigural computers utilizing a time-shared bus
US4490788A (en) * 1982-09-29 1984-12-25 Schlumberger Technology Corporation Well-logging data processing system having segmented serial processor-to-peripheral data links
US4870571A (en) * 1983-05-04 1989-09-26 The Johns Hopkins University Intercomputer communications based on message broadcasting with receiver selection
US4628480A (en) * 1983-10-07 1986-12-09 United Technologies Automotive, Inc. Arrangement for optimized utilization of I/O pins
JPS6184138A (ja) * 1984-10-01 1986-04-28 Nissan Motor Co Ltd ネツトワ−クシステム
JPH07104831B2 (ja) * 1985-09-20 1995-11-13 キヤノン株式会社 データ転送方法
US4760515A (en) * 1985-10-28 1988-07-26 International Business Machines Corporation Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis
US4858112A (en) * 1985-12-17 1989-08-15 General Electric Company Interface comprising message and protocol processors for interfacing digital data with a bus network
US4835414A (en) * 1988-03-14 1989-05-30 Advanced Micro Devices, Inc. Flexible, reconfigurable terminal pin
US5131007A (en) * 1989-06-09 1992-07-14 General Electric Company Digital voter for multiple site PST R trunking system
US5160922A (en) * 1990-06-29 1992-11-03 Digital Equipment Corporation System and method for dynamic avoidance of a simultaneous switching output limitation of a integrated circuit chip
US5239630A (en) * 1990-07-02 1993-08-24 Digital Equipment Corporation Shared bus arbitration apparatus having a deaf node
JP3206006B2 (ja) * 1991-01-25 2001-09-04 株式会社日立製作所 二重化バス制御方法及び装置
JPH07111670B2 (ja) * 1991-03-12 1995-11-29 インターナショナル・ビジネス・マシーンズ・コーポレイション コントローラ、通信インターフェース、およびデータ伝送を制御する方法
US5359715A (en) * 1991-09-16 1994-10-25 Ncr Corporation Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces
JP3466212B2 (ja) * 1991-09-17 2003-11-10 インテル・コーポレーション コンピュータシステム
DE4135553A1 (de) * 1991-10-29 1993-05-06 Alcatel Sel Aktiengesellschaft, 7000 Stuttgart, De Verfahren und schaltungsanordnung zur datenblockuebertragung ueber ein bussystem
US5379384A (en) * 1992-06-05 1995-01-03 Intel Corporation Configuration data loopback in a bus bridge circuit
US5392033A (en) * 1993-01-05 1995-02-21 International Business Machines Corporation Priority generator for providing controllable guaranteed fairness in accessing a shared bus

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4106104A (en) * 1975-11-11 1978-08-08 Panafacom Limited Data transferring system with priority control and common bus
US4365293A (en) * 1980-03-28 1982-12-21 Pitney Bowes Inc. Serial communications bus for remote terminals
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters
DE3900348A1 (de) * 1989-01-07 1990-07-12 Diehl Gmbh & Co Universelles bus-system

Also Published As

Publication number Publication date
CN1161696C (zh) 2004-08-11
US5974488A (en) 1999-10-26
DE19580195T1 (de) 1997-01-16
WO1995026002A1 (en) 1995-09-28
GB2287862A (en) 1995-09-27
US5533200A (en) 1996-07-02
JP2002502513A (ja) 2002-01-22
CN1125866A (zh) 1996-07-03
FR2717645B1 (fr) 2004-08-20
GB9501874D0 (en) 1995-03-22
FR2717645A1 (fr) 1995-09-22
TW401543B (en) 2000-08-11
AU2124095A (en) 1995-10-09
US5706444A (en) 1998-01-06
GB2287862B (en) 1998-11-04

Similar Documents

Publication Publication Date Title
DE69936060T2 (de) Verfahren und Vorrichtung für eine verbesserte Schnittstelle zwischen Computerkomponenten
DE69932400T2 (de) Steuerungsvorrichtung für einen Portverwalter zur Verbindung von verschiedenen Funktionsmodulen
DE69018100T2 (de) Datenübertragung über Busadressleitungen.
EP0929041B1 (de) Verfahren und Anordnung zum Betreiben eines Bussystems
DE3909948C2 (de)
DE3204905C2 (de)
DE69836426T2 (de) Steuergerät für einen universellen seriellen Bus
DE60035882T2 (de) Protokoll einer zerteilten transaktion für ein bussystem
DE3914265C2 (de)
DE60309391T2 (de) Datenübertragungssteuerungssystem, Programm und Datenübertragungssteuerungsverfahren
DE102005009174A1 (de) Bussystem, zugehöriges Busbelegungszuteilverfahren und Datenübertragungsverfahren
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE3725343A1 (de) Vielzweck-kanalsteuersystem
DE4142756A1 (de) Datenweg-einrichtung zur kopplung zweier busse
DE4018481C2 (de)
DE19580195C2 (de) Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung
DE60027357T2 (de) Eine Unterbrechungssteuerung und ein Mikrorechner, der diese Unterbrechungssteuerung beinhaltet
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE10061770B4 (de) Zugriffsregelung für Steuerchipsätzen bei Bustransaktion
DE10314175A1 (de) Bussystem sowie Informationsverarbeitungssystem, das ein Bussystem einschliesst
DE10214067B4 (de) Integrierter Schaltkreischip mit Hochgeschwindigkeitsdatenschnittstelle sowie zugehöriges Southbridgebauelement und Verfahren
DE4328909C2 (de) Informationsverarbeitungssystem, Informationsprozessor in einem Informationsverarbeitungssystem und Interrupt-Controller in einem Informationsverarbeitungssystem
DE10057794B4 (de) Verfahren für Datentransaktionen zwischen Steuerchipsätzen
DE60211874T2 (de) Anordnung von zwei Geräten, verbunden durch einen Kreuzvermittlungsschalter
DE69031960T2 (de) Mikroprozessor, der mit einem Coprozessor zusammenarbeitet

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8607 Notification of search results after publication
8304 Grant after examination procedure
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee