DE3009529A1 - Datenverarbeitungssystem - Google Patents
DatenverarbeitungssystemInfo
- Publication number
- DE3009529A1 DE3009529A1 DE19803009529 DE3009529A DE3009529A1 DE 3009529 A1 DE3009529 A1 DE 3009529A1 DE 19803009529 DE19803009529 DE 19803009529 DE 3009529 A DE3009529 A DE 3009529A DE 3009529 A1 DE3009529 A1 DE 3009529A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- line
- information
- unit
- processing system
- 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.)
- Withdrawn
Links
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 description 11
- 235000021251 pulses Nutrition 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 238000000034 method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/374—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4217—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Microcomputers (AREA)
- Information Transfer Systems (AREA)
Description
Anmelderin: Digital Equipment Corporation, Maynard, Massachusetts USA
Datenverarbeitungssystem
Die Erfindung betrifft ein Datenverarbeitungssystem .
Ein digitales Datenverarbeitungssystem weist im allgemeinen drei Grundelemente auf: einen Speicher, eine Ein-/Ausgabeeinheit und
einen Prozessor. Der Speicher speichert Information an adressierbaren Speicherstellen. Diese Information weist sowohl Daten als
auch Befehle zum Verarbeiten der Daten auf. Durch den Prozessor wird die Information zwischen ihm und dem Speicher übertragen;
der Prozessor wertet die ankommende Information entweder als Daten oder Befehle aus und verarbeitet die Daten entsprechend den
Befehlen. Die Ein-/Ausgabeeinheit steht ebenfalls mit dem Speicer in Verbindung, um Eingabeinformation an das System zu übertragen
und um von ihm verarbeitete Information zu erhalten.
Da seit Jahren die Nachfrage nach Rechenleistung und -geschwindigkeit
gestiegen sind, ist vereits vorgeschlagen und ist es auch bekannt, mehrere Prozessoren in einem Verarbeitungssystem
030039/0760
zu verwenden. In derartigen Mehrprozessor-Verarbeitungssystemen sollte normalerweise jeder der Prozessoren einen teilweisen
oder vollständigen Zugriff zu denselben Speicher- und Ein-/Ausgabeeinheiten haben. Folglich müssen Einrichtungen
vorgesehen sein, die verhindern, daß die Prozessoren gleichzeitig Zugriff zu derselben Einheit haben. Hierzu sind verschiedene
Anordnungen bekannt. Bei einer ersten Anordnung werden den Prozessoren Prioritäts werte zugeordnet, wodurch
dann Prozessoren mit einer höheren Priorirät vor Prozessoren mit einer niedrigen Priorität Zugriff zu den Speicher- und
Ein-/Ausgabeeinheiten gestattet wird. Hierdurch wird unvermeidlich die Umlaufzeit für Programme verlangsamt, die in
Einheiten mit einer niedrigen Priorität umlaufen.
Bei einer zweiten Anordnung ist eine Rechnerschaltung mit einem Hauptrechnersystem vorgesehen, um zwischen einer Anzahl
untergeordneter oder Nebenprozessoren zu entscheiden. Diese Entscheidung kann durch Faktoren wie der Zeitdauer, die einen
Nebenprozessorzugriff zu der Speicher- oder der Ein-/Ausgabeeinheit
hat, der Zeit seit dem letzten Zugriff, u.a. festgelegt sein. Wenn jedoch das Hauptsystem ausfällt, ist dadurch
verhindert, daß die untergeordneten oder Nebenprozessoren Zugriff zu den Speicher- oder Ein-/Ausgabeeinheiten haben, bis
das Hauptsystem instandgesetzt ist. Ferner kann es in dem Hauptsystem zu einem Engpaß kommen, wenn das Hauptsystem bezüglich
des Zugriffs zu den Speicher- oder Ein-/Ausgabeeihheiten zu schnell entscheiden muß, so daß dadurch die untergeordneteibzw.
Nebenprozessoren langsamer werden.
In einer dritten Anordnung ist eine wechselseitig wirkende Steuereinheit zwischen den Prozessoren und den Speicher- und
Ein-/Ausgabeeinheiten vorgesehen, um den Zugriff zwischen den Prozessoren und den Speicher- und den Ein-/Ausgabeeinheiten
zu steuern. Diese wechselseitig wirkende Steuereinheit verhindert jedoch nicht, daß die Prozessoren selbst arbeiten, während
sie warten, um Zugriff zu den Speicher- und Ein-/Ausgabeeinheiten zu haben. Bei dieser Anordnung ergeben sich sonst
030039/0780
die gleichen Schwierigkeiten wie bei dem vorstehend angeführten Verarbeitungssystem mit Haupt- und Nebenprozessoren.
Da die Anforderungen an die Rechnerleistung weiter gestiegen sind, muß mehr und mehr Steuerinformation zwischen den verschiedenen
Einheiten und Teilen des Systems durchlaufen. Hierzu ist zusätzlich eine Anzahl Steuerleitungen zwischen den
Einheiten und Teilen erforderlich, wodurch die Kosten sowohl für die Steuerleitungen selbst als auch für die zusätzlichen
elektronischen Schaltungen steigen, die erforderlich sind, um eine Information auf den Leitungen auszuwerten und Information
auf den Leitungen unterzubringen.
Die Erfindung soll daher ein Datenverarbeitungssystem mit einem Minimum an Steuerleitungen schaffen, welche die Einheiten
oder Teile des Systems verbinden.
Bei dem erfindungsgemäßen Datenverarbeitungssystem muß nur
eine Leitung angesteuert werden, um anzuzeigen, daß die zur Informationsübertragung vorgesehenen Vielfachleitungen statt
der üblichen Vielzahl von Leitungen zwischen den verschiedenen Einheiten oder Teilen verwendet werden. Gemäß der Erfin dung
weist somit ein Datenverarbeitungssystem eine Anzahl Dateneinrichtungen, eine Verbindungs- und eine Zeit- bzw. Taktgebereinrichtung
auf. Wenn eine der Dateneinrichtungen über die Verbindungseinrichtung Information an eine zweite Dateneinrichtung
zu übertragen hat, wird für eine vorbestimmte Anzahl Taktimpulse ein erstes Signal auf der Verbindungseinrichtung
erzeugt. Die zweite Dateneinrichtung gibt dann am Ende der Übertragung nach der vorbestimmten Anzahl Taktimpulse
das erste Signal ab.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausführungsformen
unter Bezugnahme auf die anliegenden Zeichnungen beschrieben. Es zeigen:
Fig.1 ein Blockschaltbild eines digitalen Da-
030039/0760
3003529
verarbeitungssystems gemäß der 'Erfindung;
Fig.2A bis 2C schematisch Datenarten, die in Verbindung mit einer bestimmten Ausführungsform der Erfindung verwendet werden;
Fig.3 die Leitungen und entsprechende Signa
le, welche eine Verbindung für Verknüpfungen in dem digitalen Datenverarbeitungssystem
in Fig.1 darstellen;
Fig.4 eine Schema^in welchem die Reihenfolge
einer Lesetransaktion dargestellt ist, die zwischen den in Fig.3 dargestellten
Verknüpfungen vorkommen kann;
Fig.5 ein Diagramm, in welchem Reihenfolgen
von Operationen für eine Lesetransaktion dargestellt sind, welche zwischen
den in Fig.3 dargestellten Verknüpfungen vorkommen können;
Fig. 6 eine schematische Schaltung eines Teils
der in Fig.3 dargestellten Haup£verknüpfung;
und
Fig. 7 eine schematische Schaltung eines Teils
einer in Fig.3 dargestellten untergeordneten oder Nebenverknüpfung.
Wie beispielsweise in Fig.1 dargestellt ist, weisen die Grundelemente
eines Datenverarbeitungssystems, insbesondere eines Mehrprozessorssystems, einen ersten Zentralprozessor 10, einen
zweiten Zentralprozessor 10A, Speichereinheiten 11 und Ein-/ Ausgabe-(E/A-)Einheiten 12 auf. Eine Vielfachleitung oder ein
Bus 14 verbindet die Zentralprozessoren 10 und 10A, die Speichereinheiten 11 und die E/A-Einheiten 12. In einem Mehrpro-
030039/0760
zessorsystem können auch mehr als zwei Zentralprozessoren mit der Vielfachleitung 14 verbunden sein. Sie würden dann in ähnlicher
Weise wie die Prozessoren 10 und 1OA mit der Vielfachleitung
14 verbunden sein.
Der Zentralprozessor 10 weist ein Bedienungspult 15, eine
Kopplungseinrichtung für die Vielfachleitung und andere herkömmliche Schaltungen auf, die normalerweise in dem Zentralprozessor
untergebracht sind. Der Zentralprozessor 10A und andere Zentralprozessoren ,die an die Vielfachleitung 14 angeschlossen
sein können, entsprechen dem Zentralprozessor 10; es ist jedoch erforderlich, daß die Zentralprozessoren an eine
Vielfachleitung oder einen Bus 14 angekoppelt werden können. Eine Kopplungsschaltung 16 erhält alle Daten von dem Speicher
und führt alle Transaktionen für die übrigen Schaltungen in dem Zentralprozessor 10 durch.
Das Bedienungspult 15 dient als Anschluß- oder Kopplungseinrichtung
für die Bedienungsperson. Von hier aus kann die Bedienungsperson Daten prüfen und ablegen, den Betrieb des
Zentralprozessors 10 anhalten oder durch eine Reihe von Programmbefehlen schrittweise weiter schalten. Eine Bedienungs- ,,
person kann das Systen durch eine Ureingabe {bootstrap) initialisieren und kann verschiedene Diagnosestests an dem ganzen
Datenverarbeitungssystem durchführen. Der Zentralprozessor 10A
weist im allgemeinen ein (nicht dargestelltes) Bedienungspult auf.
In Fig.1 weist die Speichereinheit 11 eine Speichersteuereinheit
20 auf, welche mit einer Anzahl Speicherfeider 21 verbunden
ist. Die Arbeitsweise der Speichereinheit 11 entspricht der, die in der am 10.10.1978 eingereichten US-Patentanmeldung
S.N. 954 601 beschrieben ist.
Es sind verschiedene Arten von E/A-Einheiten 12 dargestellt. Ein E/A-Busadapter 2 2 verbindet mehrere Ein-/Ausgabegeräte 23
wie beispielsweise Fernschreiber oder Kathodenstrahlröhren,
030039/0760
mit der Vielfachleitung 14. Die Verbindungs- und Übertragungssignale zwischen dem E/A-Busadapter 22 und dem Ein-/Ausgerät
sind in einem Teil der US-PS 3 710 324 beschrieben.
Die zwei anderen in Fig.1 dargestellten E/A-Einheiten 12
schaffen eine Sekundärspeichereinrichtung für das Datenverarbeitungssystem. Sie weisen einen Sekundärspeicher-Busadapter
24 und eine Anzahl Plattenantriebe bzw. -laufwerke 25 auf.
Ferner ist ein zweiter Sekundärspeicher-Busadapter 26 und ein Bandantrieb 27 dargestellt. Die Verbindung der Sekundärspeicher-Busadapter
24 und 26 und ihrer jeweiligen Plattenantriebe 25 und des Bandantriebs 27 sind in der US-PS 3 999 163
beschrieben.
Die Vielfachleitung oder der Bus verbindet die verschiedenen Einheiten oder Teile eines Datenverarbeitungssystems. Bevor
eine Informationsübertragung zwischen verschiedenen Paaren der mit der Vielfachleitung verbundenen Einheiten beschrieben
wird, dürfte es zuerst nützlich sein.einige Definitionen von
Ausdrücken oder Begriffen einzuführen, die bereits verwendet worden sind und die in Zukunft verwendet werden.
"Information" ist die Intelligenz, die zum Steuern verwendet wird und die Basis für eine Datenverarbeitung schafft. Sie
schließt Daten- und Adressen- sowie Befehls- und Zustandsinformation ein. Der Begriff "Daten" schließt Information ein,
welche Gegenstand oder Ergebnis einer Verarbeitung ist. Informationsübertragungen
zwischen den Einheiten in dem in Fig.1 dargestellten Datensystem erfolgen über die Vielfachleitung
und schließen Übertragungen von diskreten Informationsdatenworten mit ein. Jedes Datenwort hat eine charakteristische
Länge auf der Vielfachleitung 14. Andere Einheiten können Informationsdatenworte
mit anderen Längen verarbeiten. Das einfachste Informationsdatenwort ist das Byte. In einer bestimmten
Ausführungsform des in Fig.1 dargestellten Datenverarbeitungssystems
weist das Byte acht Binärstellen (oder Bits) auf. In Fig.2A sind acht zusammenhängende Bytes dargestellt. Die
030039/0760
nächste größere Datenwortlänge ist ein "Wort", wie es in Fig.
2B dargestellt ist. Ein Wort weist zwei zusammenhängende Bytes auf. Zwei zusammenhängende Worte bilden ein "Langwort",
wie in Fig.2C dargestellt ist.
Die Vielfachleitung 14 kann alle Information in paralleler Form als ein Langwort übertragen. In den zwei,in Fig.2A dargestellten
,zusammenhängenden Langworten ist das Byte 0 die niedrigstwertige Bytestelle jedes Langworts. Das Wort 0 und
das Langwort 0 sind die niedrigstwertige Wort- und Langwortstelle in Fig.2B bzw. 2C. In der folgenden Beschreibung ist
vorausgesetzt, daß entsprechende Ausrichtungen in dem Datenverarbeitungssystem erhalten werden; es gibt jedoch keine Bedingung
oder Voraussetzung, daß irgendeine dieser Ausrichtungen aufrechtzuerhalten ist.
Wenn zwei Einheiten über die Vielfachleitung 14 Information auszutauschen haben, sind mindestens zwei Transaktionen über
die Vielfachleitung, d.h. zwei "Bustransaktionen" notwendig. Während einer ersten Bustransaktion fordert eine Einheit den
Informationsaustausch an und überträgt Befehls- und Adresseninformation
an die Vielfachleitung 14. Das andere, durch die Adresseninformation bestimmte Element spricht an und bereitet
sich für den Informationsaustausch vor. Hierdurch ist eine erste Bustransaktion beendet. Während der zweiten Bustransaktion
läuft die auszutauschende Information über die Vielfachleitung 14.
Jede Einheit, welche an die Vielfachleitung 14 angeschlossen ist, wird eine Verknüpfung (nexus) genannt. Das spezielle, in
Fig.1 dargestellte System weist 6 Verknüpfungen auf. Eine Verknüpfung
wird während eines Informationsaustauschs in Form ihrer Funktion festgelegt. Während eines derartigen Austausches
wird die Verknüpfung, welche Befehls- und Adresseninformation an die Vielfachleitung 14 überträgt, in Fig.3 eine
"Hauptverknüpfung" 3OA bezeichnet. Die Einheit, die auf diese Befehls- und Adresseninformation anspricht, wird als "unterge-
030039/0760
ordnete oder Nebenverknüpfung" 30B bezeichnet. Wenn folglich ein Zentralprozessor Daten aus der Speichersteuereinheit 20
wieder auffinden muß, wird der Zentralprozessor eine Hauptverknüpfung und überträgt einen Lese-(oder Leseanschalt-)Befehl
und eine Speicheradresse während einer ersten Bustransaktion.
Die Speichersteuereinheit 20 wird eine untergeordnete Verknüpfung, wenn sie die Befehls- und Adresseninformation
von der Vielfachleitung 14 empfängt und übernimmt.
Eine Verknüpfung ist auch als eine sendende oder empfangende Verknüpfungseinheit festgelegt. Eine sendende Verknüpfungseinheit
steuert die Signalleitungen an, während die empfangende Verknüpfungseinheit während jeder Bustransaktion die Signalleitungen
abtastet und prüft. In dem folgenden Beispiel ist der Zentralprozessor während der ersten Bustransaktion eine
sendende Verknüpfung und während der zweiten Bustransaktion eine empfangende Verknüpfung.In ähnlicher Weise ist die Speichereinheit
20 während der ersten Bustransaktion eine empfangende
Verknüpfungseinheit und während der zweiten Bustransaktion eine sendende Verknüpfungseinheit. Ähnliche Transaktionen
kommen bei einem Informationsaustausch zwischen irgendwelchen anderen Verknüpfungseinheiten vor. Jedoch fungieren
die Speichersteuereinheiten normalerweise nur als untergeordnete oder Nebenverknüpfungseinheiten, während Zentralprozes—
soren normalerweise als Hauptverknüpfungseinheiten fungieren.
Bei der speziellen Ausführungsform der Erfindung befördert die Vielfachleitung 14 eine Anzahl Signale zu und von den verschiedenen
Einheiten, welche über entsprechende Leitungen mit ihr verbunden sind. Diese Leitungen und Signale können in drei
allgemeine Klassen aufgelistet werden:
1. Ein Entscheidungssignal über die Entscheidungsleitung 31 der Vielfachleitung;
2. Eine Informationsübertragung über die Daten/Adressenleitungen
32 und 33 der Vielfachleitung; und
3. Ein Steuersignal über Steuerleitungen 34 bis 38 der Vielfachleitungen
.
030039/0760
Die Leitungen 34 bis 38 bilden die Vielfachleitung 14- Die Datenadressen- oder Informationsübertragungs-Vielfachleitung
weist Informationsleitungen 32 und Funktionsleitungen 33 auf.
Befehle werden über Funktionsleitungen 33 abgegeben.
Die Steuerleitungen und Signale weisen eine Zustandsleitung 34, eine Halteleitung 35, eine Warteleitung 36, eine DBBZ-Leitung
37 und eine Taktleitung 38 auf. Die Zustandsinformation zeigt an, ob die adressierte Speicherstelle die geforderte
Information hat und ob die Information gültig ist. Das Haltesignal verhindert, wenn es auf derHalteleitung 35 eingefügt
wird, daß irgendwelche Verknüpfungen von der Daten/ Adressenvielfachleitung ausgesteuert werden. Haltesignale
können beispielsweise verwendet werden^ um in bestimmten Speichern
die Geschwindigkeit zu steuern, mit welcher Schreibtransaktionen vorkommen.
Das auf der Warteleitung 36 geltend gemachte und durchgesetzte Wartesignal schließt Unterbrechungstransaktionen ein. Das
DBBZ-Signal oder das Daten/Adressen-Vielfachleitungs-Besetztsignal
(bus busy signal) zeigt an, wenn es auf der DBBZ-Leitung 37 geltend gemacht und durchgesetzt ist, wann eine Verknüpfung
über die Daten-Adressen-Vielfachleitung eine anfordernde oder eine sendende Information ist.
Eine Anzahl Befehle wird über die Funktionsleitungen 33 gesendet, nämlich Lese-, Leseabschalt-, Schreib- und Schreibabschalt-Befehle.
Wenn eine Verknüpfungseir.hbit einen Lesebefehl ausgibt, fordert sie den Inhalt einer Speicherstelle
zu lesen, dessen Adresse über die übertragungsleitung 32 übertragen wird. Ein Leseabschalt-Befehl zeigt an, daß die
befehlende Verknüpfungseinheit fordert, die adressierte Speicherstelle zu lesen und verhindert, daß andere Verknüpfungseinheiten mit ihren eigenen Leseabschalt-Befehlen Zugriff zu
der Vielfachleitung erhalten, bis ein Schreibanschaltbefehl an die Funktionsleitung gegeben wird. Der Leseabschalt-Befehl
verhindert nicht, daß eine andere Hauptverknüpfungseinheit
030039/0780
einen Lese- oder Schreibbefehl ausgibt. Der Leseabschalt-Befehl
wird hauptsächlich dazu verwendet, zu verhindern, daß andere Prozessoren oder Verknüpfungseinheiten Zugriff zu einem
Speicher haben, in welchem eine gültige Information sein kann, oder möglicherweise eine gültige Information lesen. Dies ist
möglich, wenn der Prozessor, der ursprünglich den Leseabschalt-Befehl ausgegeben hat, Zugriff zu dem Speicher hat und
eine Information in dem Speicher modifizieren kann zu demselben Zeitpunkt, wenn ein anderer Prozessor versucht, sie aus
demselben Speicher zu lesen. Um dies zu verhindern, gibt der erste Prozessor einen Leseabschalt-Befehl, um dadurch sicherzustellen,
daß verhindert ist, daß andere Verknüpfungseinheiten Zugriff zu demSpeicher erhalten.
Wie oben ausgeführt, sind für jede Lese -und für jede Schreibtransaktion
zwei Transaktionen über die Vielfachleitung, d.h. zwei Bustransaktionen erforderlich. In Fig.4 und 5 sind für
die wiedergegebene Ausführungsform Beispiele für eine Lese-
und eine Schreibtransaktion dargestellt. In Fig.4 und 5 sind die positiven (beanspruchenden) ) Signale zur Vereinfachung
der Beschreibung als richtig oder beanspruchend . dargestellt, wenn sie einen hohen Pegel haben. Geerdete Beanspruchungsschaltungen
und Signale (d.h. die geltend gemacht oder richtig sind, wenn sie niedrig sind) ergänzen normalerweise
diese Logik. Jedoch ist die Umwandlung zwischen positiver und geerdeter Logik, die auf dem sogenannten Morgan-Lehrsatz beruht,
ist dem Fachmann bekannt.
Fig.4 ist ein Beispiel für eine Lesetransaktion zwischen zwei
in Fig.3 dargestellten Verknüpfungseinheiten. Die Taktimpulse kennzeichnen und begrenzen die verschiedenen Zyklen auf der
Vielfachleitung, wobei ein neuer Zyklus bei der Vorderflanke jedes positiv werdenden Impulses beginnt. Wenn die Hauptverknüpfungseinheit
die Vielfachleitung benutzen will, um aus einer untergeordneten Verknüpfungseinheit, beispielsweise
einem Speicher zu lesen, macht die Haupteinheit ihr Prioritätssignal auf der Entscheidungsleitung 31 geltend. Wenn ihre Pri-
030039/0760
orität die höchste ist, und wenn die Halte- und DBBZ-Leitungen
alle auf nicht beanspruchtem Pegel liegen, erhält die Haupteinheit die Steuerung der Vielfachleitung 14, indem sie
DBBZ-Leitung beansprucht, wie zumZeitpunkt B in Fig.4 dargestellt ist. Die Haupteinheit beansprucht für einen Zyklus
DBBZ-Leitung . und überträgt gleichzeitig Adressen- und Steuerinformation auf der Daten/Adressenleitung 32 und
Die Haupteinheit verschiebt dann das DBBZ-Signal auf einen nicht beanspruchten Pegel.
Die adressierte Nebeneinheit beansprucht vom Zeitpunkt C bis
zum Zeitpunkt D die DBBS-Leitung , wie dargestellt ist. Keine andere Verknüpfungseinheit kann dann eine Steuerung auf
der Vielfachleitung erhalten, solange die untergeordnete Einheit die DBBZ-Leitung beansprucht. „ Wenn die untergeordnete
Einheit bereit ist, Information an die Haupteinheit zu übertragen, verschiebt die untergeordnete Einheit das DBBZ-Signal
auf einen nicht beanspruchten Pegel und überträgt, wie vom Zeitpunkt D zum Zeitpunkt E dargestellt ist, die Information
auf der Daten/Adressenleitung und gleichzeitig kehrt eine Zustandsinformation auf der Zustandsleitung 34 zurück.
Da die DBBZ-Leitung nach dem Zeitpunkt D nicht mehr bean- ". sprucht ist/ kann eine andere Haupteinheit versuchen, die
Steuerung der Vielfachleitung während des zum Zeitpunkt D beginnenden Zyklus zu erhalten. Während dieses Zyklus kann sie
dann ihr Prioritätssignal geltend machen und die DBBZ-Leitung während des zum Zeitpunkt E beginnenden Zyklus beansprucht
eine Adresse und Steuerung zu übertragen und um eine Transaktion zu beginnen. Auf diese Weise können sich die Transaktionen
bei einem Zyklus überlappen, wodurch die Transaktionszeit verringert wird. Mit anderen Worten, es können während einer
vorgegebenen Zeitperiode mehr Zugriffe zu einem Speicher versucht werden, als wenn die Transaktionen auf der Vielfachleitung
sich nicht überlappen. Dieses überlappen ist zum Teil durch das Zustandssignal in Fig.4 dargestellt. Das linke
höchstwertige Zustandssignal ,das während des unmittelbar auf
030039/0760
den Zeitpunkt B folgenden Zyklus abgegeben worden ist, kann beispielsweise von einer vorherigen Transaktion stammen.
Hierdurch machen dann sowohl die Haupteinheiten als auch die untergeordnete Einheit ein DBBZ-Signal auf derselben Leitung
geltend, wodurch die Anzahl der Leitungen in der Vielfachleitung (d.h. der Busleitungen) verringert ist. Die Praxis war,
eine Anzahl Besetztleitungen vorzusehen, die anzeigen, daß die Vielfachleitung in Benutzung ist. Durch Verringern der
Anzahl der Besetztleitungen kann die Gesamtanzahl der Leitungen in der Vielfachleitung und infolgedessen die Schaltung,
die zum Ansteuern dieser Leitungen erforderlich ist, verkleinert werden.
In Fig.5 ist eine Warte-Transaktion als Beispiel dargestellt.
Eine Haupteinheit, die eine Wartetransaktion wünscht, macht ihr Prioritätssignal über die Entscheidungsleitung 31 geltend.
Wenn die Halte- und die DBBZ-Leitungen beide auf einem sogenannten
nicht geltend gemachten Pegel sind und die Priorität der Haupteinheit die höchste ist, erhält sie die Steuerung der
DBBZ-Leitung und beanspruchtdie DBBZ-Leitung. Sie überträgt
dann gleichzeitig Adressen- und Steuerinformation für einen Zyklus an die Daten/Adressenleitung. Die adressierte untergeordnete
Einheit macht dann das DBBZ-Signal geltend und erhält die Signale auf der Daten/Adressenleitung. Am Anfang des
letzten Zyklus verschiebt die untergeordnete Einheit das DBBZ-Signal auf einen nicht beanspruchten Pegel und überträgt
Zustandsinformation auf der Zustandsleitung 34. Der letzte Zyklus beginnt dann zum Zeitpunkt D. Da die DBBZ-Leitung niedrig
ist, kann eine andere Haupteinheit ihr Prioritätssignal geltend machen, und wenn die Halte- und Warteleitungen nicht
beansprucht sind, kann sie eine Steuerung der Hauptleitung durch Beanspruchen der DBBS-Leitung Zum Zeitpunkt E erhalten.
In Fig.6 und 7 sind Beispiele von Schaltungen für eine Haupt-
und untergeordnete Einheit dargestellt, um die DBBZ-Leitung zwischen beanspruchten und nicht beanspruchten Pegeln
030039/0780
zu verschieben. Die in Fig.6 dargestellte Schaltung 50 einer
Haupteinheit schafft eine Einrichtung, die verhindert, daß die Hauptverknüpfungseinheit 3OA mit einem Leseabschalt-Befehl
Zugriff zu der DBBZ-Leitung 37 erhält, wenn eine andere Haupteinheit vorher einen Leseabschalt-Befehl ausgegeben
hat, der durch einen Schreibanschaltbefehl nicht angeschaltet bzw. entriegelt worden ist.
Die Schaltung 50 weist einen Befehlsdekodierer 51 auf, der die Schaltung entsprechend einem Befehl, wie Lesen, Schreiben,
wie Lesen abschalten und Schreiben anschalten, betätigt. Wenn eine Leseabschaltbefehl ausgegeben wird, gibt der Dekodierer
51 einen hohen Eingang an ein NAND-Glied 52 und einen hohen Eingang an ein UND-Glied 53 ab. Wenn, wie nachstehend beschrieben,
der zweite Eingang des NAND-Glieds 52 niedrig ist, wird der Ausgang des NAND-Glieds 52 hoch, und wenn das Haltesignal
niedrig ist (nicht geltend gemacht ist), wenn die Entscheidungsleitung der Haupteinheit hoch ist (wodurch angezeigt
ist, daß diese Haupteinheit die Priorität hat\ und wenn
die DBBZ-Leitung laufend niedrig ist (nicht beansprucht ist), ist der Ausgang des UND-Glieds 53 hoch. Bei dem nächsten
Taktimpuls eines Taktgebers 54 wird der Setzausgang eines D-Flip-Flops 55 hoch, wodurch die DBBZ-Leitung 37 auf
einen hohen (beanspruchten .) pegel verschoben wird. Ein Inverter 54A macht dann den Ausgang des UND-Glieds 53 niedrig.
Bei dem nächsten Taktimpuls wird das Flip-Flop 55 rückgesetzt, wodurch die DBBZ-Leitung auf einen nicht beanspruchten
Pegel verschoben wird. Folglich beanspruchtdie Haupteinheit
die DBBZ-Leitung für einen Zyklus für die Zeit zwischen den zwei ersten Taktimpulsen.
Die Schaltung 50 weist ein UND-Glied 56 und ein D-Flip-Flop 57 auf, welches den ersten Zyklus einer Transaktion der Haupteinheit
über die Vielfachleitung kennzeichnet. Bevor das Flip-Flop 55 die DBBZ-Leitung beansprucht wird der Rücksetzausgang
des Flip-Flops 57 ebenso wie der eine Eingang eines UND-Gliedes 56 hoch. Wenn dasFlip-Flop 55 die DBBZ-Leitung beansprucht
030039/0760
wird der zweite Eingang an dem UND-Glied 56 hoch, und sein
Ausgang wird ebenfalls hoch. Bei dem nächsten Taktimpuls wird das Flip-Flop 57 gesetzt, sein Rücksetzausgang wird niedrig
und dadurch wird das ÖND-Glied 56 niedrig. Das UND-Glied 56
ist folglich nur während des ersten Zyklus hoch, der sonst der Adressenzyklus genannt wird.
Die Schaltung 50 weist ein JK-Flip-Flop 58 auf, das die
Transaktion auf der Vielfachleitung erkennt , die durch diese spezielle Haupteinheit eingeleitet wird. Wenn der Ausgang
des UND-Glieds 53 bei dem nächsten Taktimpuls hoch wird, wird auch der Setzausgang des JK-Flip-Flops 58 hoch (und
sein Rücksetzausgang wird niedrig). Dadurch, daß die Setz- und Rücksetzausgänge des Flip-Flops 58 hoch bzw. niedrig
werden, wird die Transaktion angezeigt, die durch diese Haupteinheit eingeleitet worden ist.
Die Schaltung 50 weist auch ein zweites JK-Flip-Flop 59 auf, das erkennt, wenn ein Leseabschalt-Befehl auf der Funktionsleitung und wenn ein Schreibanschalt-Befehl abgegeben worden
ist. Das Flip-Flop 59 erkennt auch, wenn der vorherige Leseabschaltbefehl durch diese spezielle Haupteinheit ausgegeben
worden ist. Wenn diese Haupteinheit den Leseabschalt-Befehl ausgegeben hat, ist nicht verhindert, daß ein weiterer Leseabschaltbefehl
ausgegeben wird. Mit dem Flip-Flop 59 ist dies auf die folgende Weise erreicht. Wenn ein Leseabschalt-Befehl
auf der Funktionsleitung 33 während eines Adressenzyklus
untergebracht wird, dekodieren Inverter 6OA den Befehl auf den Funktionsleitungen und setzen die Funktionseingänge
an dem UND-Glied 60 hoch. Dadurch wird der Ausgang des UND-Glieds 56 hoch. Wenn der Leseabschalt-Befehl von der
Schaltung 50 nicht mehr ausgegeben wird, wird der Rücksetzausgang des Flip-Flops 58 hoch. Folglich wird der Ausgang
des UND-Glieds 60 hoch, und bei dem nächsten Taktimpuls wird der Setzeingang des JK-Fli'p-Flops 59 hoch. Wenn der Setzausgang
hoch ist und wenn ein Leseabschalt-Befehl durch den Dekodierer 51 dekodiert wird, wird das NAND-Glied 52 niedrig
030039/0760
angesteuert und die Schaltung 50 kann die DBBZ-Leitung nicht beanspruchen. Der Setzausgang des JK-Flip-Flops 59 bleibt hoch,
bis der K-Eingang bei einem Taktimpuls hoch angesteuert wird. Dies ist der Fall, wenn ein Warteanschalt-Befehl während eines
Adressenzyklus auf der Funktionsleitung ausgegeben wird. Der
Inverter 61A dekodiert diesen Befehl und setzt die Funktionseingänge des UND-Glieds 61 hoch. Während des Adressenzyklus
wird der Ausgang des UND-Glieds 56 hoch, welcher den Ausgang des UND-Glieds 61 hoch setzt. Dadurch wird das Flip-Flop 59
rückgesetzt und dessen Setzausgang niedrig. Das Flip-Flop bleibt rückgesetzt, bis es wieder durch einen Leseabschalt-Befehl
gesetzt wird. Wenn der Setzausgang niedrig ist und wenn ein Leseabschalt-Befehl durch den Dekodierer 51 dekodiert
wird, wird das NAND-Glied 52 hoch, so daß die Schaltung 50 die DBBZ-Leitung beanspruchen kann.
Wenn dagegen die Schaltung 50 den Leseabschalt-Befehl ausgibt, wird der Rücksetzausgang des Flip-Flops sowie der Ausgang des
UND-Glieds 60 niedrig. Das Flip-Flop 59 bleibt somit rückgesetzt, und sein Setzausgang wird niedrig. Das NAND-Glied 52
läßt einen Leseabschalt-Befehl durch, wenn der Ausgang des Flip-Flops 59 niedrig ist, was nur eintreten kann, wenn der
vorherige Leseabschalt-Befehl durch die Schaltung 50 ausgegeben worden ist, oder wenn dieser Befehl durch den Schreibanschalt-
Befehl ungültig gemacht worden ist.
In Fig.7 ist eine Ausführungsform einer Schaltung 70 für eine
untergeordnete Einheit zum Ansteuern der DBBZ-Leitung dargestellt. Wenn die Haupteinheit eine Adresseninformation auf der
Daten/Adressenleitung abgibt, dekodiert ein Adressendekodierer 71 die Adresse und kennzeichnet diese Verknüpfungseinheit als
die adressierte untergeordnete oder Nebeneinheit. Der Dekodierer 71 ist mit einem Eingang eines UND-Glieds 72 verbunden,
dessen Ausgang mit dem J-Eingang eines JK-Flip-Flops 73 verbunden ist, das die DBBZ-Leitung 37 ansteuert. Die DBBZ-Leitung
ist ihrerseits mit einem UND-Glied 76 und dem D-Eingang eines Flip-Flops 77 verbunden. Der Rücksetzausgang des Flip-Flops 77
030039/0760
ist mit dem anderen Eingang des UND-Glieds 76 verbunden. Der Ausgang des UND-Glieds 76 ist mit dem zweiten Eingang des UND-Glieds
72 verbunden. Das Flip-Flop 77 identifiziert den ersten (Adressen-)Zyklus der Transaktion auf der Vielfachleitung in
ähnlicher Weise^wie es mit dem UND-Glied 56 in der Schaltung 50 erfolgt ist. Der Adressenzyklus wird für einen Zyklus beansprucht
, worauf er auf einen beanspruchten . Pegel verschoben wird. Wenn der Adressenzyklus behauptet wird,
steuert das Flip-Flop 73 die DBBZ-Leitung 37 an. Während der nachfolgenden Taktzyklen wird der Adressenzyklus und das UND-i-lied
72 niedrig, das Flip-Flop 73 bleibt jedoch angeschaltet, (bzw. beansprucht ). bis ,wie nachstehend ausgeführt, die
Information bereit ist, um abgesendet zu werden.
Ein Befehlsdekodierer 78 in der untergeordneten Verknüpfungseinheit erkennt, wenn die Daten bereit sind, um über die Daten/Adressenleitung
übertragen zu werden; die Datenbereit-Leitung H würde hoch werden, wodurch das Flip-Flop 73 rückgesetzt
und die DBBZ-Leitung 37 auf niedrig gebracht würde. Hierdurch wird der Ausgang des UND-Glieds 76 niedrig gesteuert,
welcher wiederum den Ausgang des UND-Glieds 72 niedrig steuert. Die Flip-Flops 73 und 77 werden beide durch den Taktgeber
54 gesteuert.
Entsprechend Fig.6 wird bei einerSchreibtransaktion ein Leseabschalt-Befehl
von dem Befehlsdekodierer 51 nicht ausgegeben. Die Leseabschalt-Leitung wird niedrig (nicht geltend gemacht
oder beansprucht), so daß die Verknüpfungseinheit schreiben kann, ob nun ein Leseabschalt-Befehl auf der Funktionsleitung
vorliegt oder nicht. Die Speicheranforderungs-Leitung H wird für eine Lesetransaktion beansprucht _, wodurch das UND-Glied
53 hoch gesteuert und das Flip-Flop 55 gesetzt wird, dat,
die DBBZ-Leitung ansteuert. Die untergeordnete oder Nebeneinheit beansprucht bei einer Schreibtransaktion die DBBZ-Leitung
in ähnlicher Weise wie bei einer Lesetransaktion. Die Nebeneinheit steuert die DBBZ-Leitung 37 an, bis sie einen Befehl
erhält, der anzeigt, daß der nächste Zyklus der letzte Zyklus
030039/0760
ist. Der Befehlsdekodierer 78 der Nebeneinheit steuert dann
die Datenbereit-Leitung H hoch, wodurch das Flip-Flop 73 rückgesetzt wird. Eine Zustandsinformation wird dann von der untergeordneten
Einheit über die Zustandsleitung an die Haupteinheit übertragen.
030039/0760
Leerseite
Claims (3)
- Anwaltsakte: D-4760Anmelderin: Digital Equipment Corporation, Maynard, Massachusetts USAPatentansprüche(1. Datenverarbeitungssystem mit einer ersten Dateneinrichtung, einer zweiten Dateneinrichtung und einer Verbindungseinrichtung, die eine Anzahl Einrichtungen zum Befördern von Signalen zwischen den Dateneinheiten und einen Taktgeber zum Erzeugen von Taktirnpulsen aufweist, wobei die erste Dateneinrichtung eine Einrichtung, welche anzeigt, wenn Information mit Hilfe der zweiten Dateneinrichtung über die Verbindungseinrichtung zu übertragen ist, und eine weitere Einrichtung aufweist,. die mit einer der weiterleitenden Einrichtungen verbunden ist und auf eine dieser weiterleitenden Einrichtungen anspricht, um festzulegen, wann die Verbindungseinrichtung für die erste Dateneinrichtung zur Verfügung steht, um eine Übertragung durchzuführen, und wobei die zweite Dateneinrichtung eine Einrichtung aufweist, die mit der Verbindungseinrichtung verbunden ist, um festzulegen, daß eine der Dateneinrichtungen eine Informationsübertragung auf ihr durchführt, dadurch gekennzeichnet, daß die erste Dateneinrichtung eine Einrichtung (55) aufweist, die mit der Anzeigeeinrichtung (51), der einen der weiterleitenden Einrichtungen (BUS) und dem Taktgeber (54) verbunden ist, um eine der weiter leitenden Einrichtungen für eine vor-030039/0760ORIGINAL INSPECTEDbestimmte Anzahl von Taktimpulsen zu beanspruchen, um anzuzeigen, daß sie eine Informationsübertragung über die Verbindungseinrichtung machen will,und daß die zweite Dateneinrichtung eine Einrichtung (72, 73, 76, 77) aufweist, die mit einer der weiterleitenden Einrichtungen verbunden ist, damit eine der weiterleitenden Einrichtungen nach der vorbestimmten Anzahl von Taktimpulsen spätestens am Ende der Informationsübertragung: beansprucht werden.
- 2. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß die die zweite Dateneinrichtung beanspruchende Dateneinrichtung ferner eine Einrichtung (78, 73) aufweist, um eine der Verbindungsleitungen bei dem Taktimpuls, der unmittelbar dem letzten Zyklus der Informationsübertragung vorhergeht, auf einen nicht beanspruchten Pegel zu verschieben.
- 3. Datenverarbeitungssystem nach Anspruch 1, dadurch g ekennzeichnet, daß die die erste Dateneinrichtung beanspruchende Einrichtung die eine der Verbindungsleitungen höchstens zwischen zwei aufeinanderfolgenden Taktimpulsen oeansprucht.030039/0760
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US1935179A | 1979-03-12 | 1979-03-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3009529A1 true DE3009529A1 (de) | 1980-09-25 |
Family
ID=21792737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19803009529 Withdrawn DE3009529A1 (de) | 1979-03-12 | 1980-03-12 | Datenverarbeitungssystem |
Country Status (10)
Country | Link |
---|---|
JP (1) | JPS6051151B2 (de) |
AU (1) | AU542538B2 (de) |
BR (1) | BR8001527A (de) |
CA (1) | CA1143853A (de) |
DE (1) | DE3009529A1 (de) |
ES (1) | ES489424A0 (de) |
FR (1) | FR2451601A1 (de) |
GB (1) | GB2044967A (de) |
IT (1) | IT1129639B (de) |
SE (1) | SE8001908L (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU576348B2 (en) * | 1984-02-29 | 1988-08-25 | Measurex Corporation | Processing information |
US4669056A (en) * | 1984-07-31 | 1987-05-26 | International Business Machines Corporation | Data processing system with a plurality of processors accessing a common bus to interleaved storage |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2997896A (en) * | 1958-10-08 | 1961-08-29 | Preston Martin | Variable speed drives |
US3999170A (en) * | 1975-01-08 | 1976-12-21 | Hewlett-Packard Company | Multiple access interconnect system |
JPS6035698B2 (ja) * | 1977-10-25 | 1985-08-16 | デイジタル イクイプメント コ−ポレ−シヨン | デ−タ処理システム |
-
1980
- 1980-03-11 ES ES489424A patent/ES489424A0/es active Granted
- 1980-03-11 SE SE8001908A patent/SE8001908L/ not_active Application Discontinuation
- 1980-03-12 JP JP55031490A patent/JPS6051151B2/ja not_active Expired
- 1980-03-12 GB GB8008339A patent/GB2044967A/en not_active Withdrawn
- 1980-03-12 DE DE19803009529 patent/DE3009529A1/de not_active Withdrawn
- 1980-03-12 IT IT20544/80A patent/IT1129639B/it active
- 1980-03-12 FR FR8005575A patent/FR2451601A1/fr active Pending
- 1980-03-12 AU AU56376/80A patent/AU542538B2/en not_active Ceased
- 1980-03-12 BR BR8001527A patent/BR8001527A/pt unknown
- 1980-03-12 CA CA000347498A patent/CA1143853A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
ES8103407A1 (es) | 1981-02-16 |
AU5637680A (en) | 1980-09-18 |
CA1143853A (en) | 1983-03-29 |
GB2044967A (en) | 1980-10-22 |
JPS6051151B2 (ja) | 1985-11-12 |
ES489424A0 (es) | 1981-02-16 |
IT8020544A0 (it) | 1980-03-12 |
AU542538B2 (en) | 1985-02-28 |
JPS55134427A (en) | 1980-10-20 |
FR2451601A1 (fr) | 1980-10-10 |
BR8001527A (pt) | 1980-11-11 |
SE8001908L (sv) | 1980-09-13 |
IT1129639B (it) | 1986-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2854485C2 (de) | Datenverarbeitungsanlage | |
DE2856483C2 (de) | ||
DE2755897C2 (de) | ||
DE3204905C2 (de) | ||
DE3114961C2 (de) | ||
DE2448212C2 (de) | Asynchrone Sammelleitung zur Kommunikation mit selbstbestimmter Priorität zwischen Mutterrechnergeräten und Tochterrechnergeräten | |
DE2523372C3 (de) | Eingabe-/Ausgabe-Anschlußsteuereinrichtung | |
DE1524102C3 (de) | Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine | |
DE3424962C2 (de) | ||
DE2039040C3 (de) | Verfahren zum Steuern des Datenaustauschs zwischen einer Zentralstation und einer von mehreren Datenendstationen und adressierbare Datenendstation zur Durchführung des Verfahrens | |
EP0006164B1 (de) | Multiprozessorsystem mit gemeinsam benutzbaren Speichern | |
DE3152435C2 (de) | ||
DE3146356A1 (de) | Datenverarbeitungssystem | |
DE1299145B (de) | Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen | |
DE2657848A1 (de) | Steuereinheit fuer ein datenverarbeitungssystem | |
DE2750721A1 (de) | Ein/ausgabe-system | |
DE3114934A1 (de) | Zentrales subsystem fuer eine datenverarbeitungsanlage | |
DE2854397A1 (de) | Pufferspeichereinheit fuer ein datenverarbeitungssystem | |
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
DE3009530C2 (de) | ||
DE1524111B2 (de) | Elektronische Datenverarbeitungsanlage | |
DE2539929C2 (de) | Datenverarbeitungsanlage mit einer zentralen Einheit und über einen Bus mit der zentralen Einheit verbundenen Peripheriegeräte-Steueranordnungen | |
DE4328909C2 (de) | Informationsverarbeitungssystem, Informationsprozessor in einem Informationsverarbeitungssystem und Interrupt-Controller in einem Informationsverarbeitungssystem | |
DE19753455A1 (de) | Rückkopplungstestgerät für Kleincomputersystemschnittstelle | |
DE3009529A1 (de) | Datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8139 | Disposal/non-payment of the annual fee |