DE2944497C2 - - Google Patents
Info
- Publication number
- DE2944497C2 DE2944497C2 DE2944497A DE2944497A DE2944497C2 DE 2944497 C2 DE2944497 C2 DE 2944497C2 DE 2944497 A DE2944497 A DE 2944497A DE 2944497 A DE2944497 A DE 2944497A DE 2944497 C2 DE2944497 C2 DE 2944497C2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- flip
- flop
- access
- bus
- 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
Links
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/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
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)
Description
Die Erfindung betrifft eine Datenverarbeitungsanlage gemäß
Gattungsbegriff des Anspruchs 1, wie sie aus US-PS 40 38 644
bekannt ist. Sie befaßt sich mit der Informationsübertragung
über einen gemeinsamen Ein/Ausgabebus und insbesondere mit der
Zugriffszuordnung beim Vorhandensein mehrerer asynchroner
Zugriffsanforderungen. In Anlagen mit mehreren über
einen gemeinsamen Kanal oder Bus miteinander verbundenen Geräteeinheiten
müssen Vorkehrungen getroffen werden, um die ordnungsgemäße Informationsübertragung
störungsfrei zu gewährleisten. Zumeist ist eine Einheit, die
sogenannte Haupteinheit bevorrechtigt; dies kann die Zentraleinheit, eine
Steuereinheit mit speziellen Funktionen oder der Arbeitsspeicher des Systems
sein, welche zugleich die Aufgabe hat, die Busbenutzung störungsfrei zu steuern.
Zu diesem Zweck wird jeder Geräteeinheit, die Zugriff zum Bus anfordert, eine
vorgegebene Priorität zugeordnet. Die Haupteinheit überprüft periodisch, ob
Bus-Zugriffsanforderungen anstehen. Sind gleichzeitig mehrere vorhanden, so
gewährt sie derjenigen Geräteeinheit den Zugriff, welche die größere Priorität
hat. Diese Lösung hat jedoch den Nachteil, daß die Prioritäten fest zugeordnet
sind und die Gefahr besteht, daß nur noch die Geräteeinheit mit der
größten Priorität Zugriff zum Bus erhält und die übrigen Geräteeinheiten
benachteiligt sind.
Bei bekannten Anlagen dieser Art wird dieses Risiko dadurch vermieden, daß
den Geräteeinheiten von den jeweiligen Umständen abhängige veränderbare
Prioritäten zugeordnet werden. In diesem Falle ordnet die Haupteinheit
entsprechend den verschiedenen Notwendigkeiten die relative Priorität einer
der verschiedenen Geräteeinheiten zu. Dies erfordert jedoch, daß die Haupteinheit
eine Überwachung der verschiedenen Operationen der einzelnen Geräteeinheiten
durchführt, um auf diese Weise die tatsächlichen Notwendigkeiten
der einzelnen Einheiten festzustellen. Diese Methode kann folglich das Problem
nicht lösen, wenn verschiedene Geräteeinheiten über einen Bus miteinander verbunden
sind und eine Vielzahl intelligenter unabhängiger Einheiten zusammenarbeiten
wie beispielsweise in einem Multiprozessorsystem. Außerdem ist das
Prioritätsnetzwerk in solchen Fällen sehr komplex.
Bei anderen bekannten Ausführungsformen kann jede Geräteeinheit entsprechend
ihren Bedürfnissen Zugriffsanforderungen mit verschiedenen Prioritätsgraden
aussenden, indem mehrere Signale auf mehreren Leitungen abgegeben werden.
Dies erfordert eine große Anzahl von Leitungen und erneut ein komplexes
Prioritätsnetzwerk in der Haupteinheit. In der Praxis ergibt sich ein Zustand,
als ob die Haupteinheit eine Anzahl von scheinbar vorhandenen Einheiten bedienen
müßte, welche der Anzahl der tatsächlichen Geräteeinheiten multipliziert
mit den unterschiedlichen Arten von Anforderungen entspricht. Die Verarbeitung
der Zugriffsanforderungen zum Bus wird ferner durch die synchrone
bzw. asynchrone Art der Zugriffsanforderungen und den synchronen bzw.
asynchronen Betrieb der Haupteinheit erschwert.
Aufgabe der Erfindung ist es, die Verarbeitung von asynchronen
Zugriffsanforderungen von Geräteeinheiten unterschiedlicher
Priorität auf den gemeinsamen Bus zu verbessern und dabei mit
möglichst geringem Leitungsaufwand eine Monopolisierung des
Busses durch die Geräteeinheit der höchsten Priorität zu
verhindern. Darüber hinaus soll die neue Zugriffssteuereinrichtung
einfach aufgebaut sein und wirtschaftlich und zuverlässig
arbeiten.
Diese Aufgabe wird gelöst durch die im Anspruch 1 gekennzeichnete
Erfindung. Hierbei empfängt die Haupteinheit mit
zugehörigem Prioritätsnetzwerk zu jeder Zeit jeweils nur
Zugriffsanforderungen eines Prioritätsgrades und auch nur eine
Art von Zugriffsanforderungen von jeder Geräteeinheit. Hierdurch
wird der Aufbau des Prioritätsnetzwerkes wesentlich vereinfacht
und die Anzahl deren Leitungen für die Übertragung der Zugriffsanforderungen
verringert. Vorausgesetzt wird allerdings, daß
die den verschiedenen Geräteeinheiten zugeordnete relative
Priorität für die unterschiedlichen Prioritätsgrade gleich
sein muß. Eine vorteilhafte Weiterbildung der Erfindung ergibt
sich aus Anspruch 2. Sie wird nachstehend an Hand eines in den
Zeichnungen wiedergegebenen Ausführungsbeispiels erläutert.
Dabei zeigt
Fig. 1 das Blockschaltbild der hier
interessierenden Teile einer DV-Anlage
Fig. 2 ebenfalls als Blockschaltbild den Aufbau der Geräteeinheiten
oder Prozessoren, welche die Anlage gemäß
Fig. 1 bilden;
Fig. 3 das Anschlußdiagramm eines JK-Flipflops;
Fig. 4 die Schaltkreise der Schnittstellen-Dialogeinheit in
jeder der Geräteeinheiten oder Prozessoren gemäß
Fig. 2;
Fig. 5 die Schaltung einer Speicher- und Bus-Adressiersteuereinheit
der Anlage gemäß Fig. 1;
Fig. 6 den zeitlichen Signalverlauf an Hand eines Dialogs, der
sich zwischen dem Speicher gemäß Fig. 5 und verschiedenen
Geräteeinheiten oder Prozessoren abspielt.
In Fig. 1 besteht die Anlage aus 3 Geräteeinheiten oder Prozessoren 1, 2 und
3 sowie einem Arbeitsspeicher 4, an den eine Zugriffssteuereinheit 5
angeschlossen ist. Die Geräteeinheiten 1, 2 und 3 sind mittels einer einzigen
Systemsammelschiene, genannt Bus, bestehend aus einer geeigneten Anzahl von
Leitungen miteinander verbunden. Der Bus umfaßt eine Leitungsgruppe 6 zur
Übertragung von Daten, Befehlen, Adressen und Prüfbits und besteht insgesamt
beispielsweise aus 72 Leitungen (4 Datenbytes, 2 Adreßbytes, 1 Befehlbyte
und 1 Prüfbit für jedes byte). Die Leitungsgruppe 6 genannt DAC-Bus arbeitet
in beiden Richtungen. Jede Einheit 1, 2, 3 ist über eine zum Empfang und zur
Aussendung von Signalen geeignete Schnittstellenschaltung mit dem DAC-Bus
gekoppelt. Im Ruhezustand bieten die Übertragungsstromkreise eine scheinbar
unendlich hohe Ausgangsimpedanz, so daß die Leitungen des DAC-Bus praktisch
von den verschiedenen Geräteeinheiten getrennt sind. Im Arbeitszustand, d. h.
wenn die Übertragungsschaltkreise nur einer Geräteeinheit aktiv sind, liefern
die Übertragungsschaltkreise eines von zwei elektrischen Signalen an die
Leitungen entsprechend den Pegeln "0" oder "1". Im folgenden wird, sofern
nicht anderweit erwähnt, der Pegel "1" einem elektrischen Signal hohen Pegels
und der Wert "0" einem elektrischen Signal niedrigen Pegels oder vom Wert
0 zugeordnet. Solche logischen Signalpegel können von allen Empfängereinheiten
festgestellt werden. Sonder-Logikschaltkreise dieser Art mit 3 Schaltzuständen
sind als Tristate-Treiberschaltungen bekannt und auf dem Markt erhältlich.
Weiterhin enthält der Bus eine Gruppe von Leitungen 7, 8, 9 für die Übertragung
von Dialogsteuersignalen wie beispielsweise ENCY, PROCOL, MECOL. Diese
Leitungen verbinden die Geräteeinheiten 1, 2, 3, 4 mit Emitterschaltungen mit
offenem Kollektor, im folgenden kurz Offen-Kollektorschaltungen genannt, bei
denen die Anschlußleitung über einen Widerstand an eine Spannungsquelle zu
schließen ist. In jeder Geräteeinheit ist die Leitung an einen Empfänger mit
relativ hoher Impedanz angeschlossen. In wenigstens einer Geräteeinheit ist
eine solche Leitung an einen Offen-Kollektor-Sender angeschlossen, der diese
Leitung mit Masse verbindet oder hiervon trennt und auf diese Weise dieser
Leitung ein elektrisches Signal "0" bzw. "1" zuführt. Es genügt natürlich, daß
wenigstens einer der verschiedenen Sender die Leitung an Masse schaltet, wenn
man das Signal "0" auf allen Leitungen haben will, damit es von den verschiedenen
Empfängern festgestellt wird.
Weiterhin ist eine Leitung 10 zur Übertragung eines Signals CHART vorgesehen, die,
wenn sie auf dem Pegel "0" liegt, anzeigt, daß eine Geräteeinheit Zugriff zum
Bus haben nöchte und zwar mit hohem Prioritätsgrad. Diese Leitung verbindet
die verschiedenen Einheiten 1, 2, 3 aber nicht notwendigerweise auch die Zugriffssteuereinheit 5 mit
einer Offen-Kollektorschaltung.
Weiterhin ist eine Gruppe von Leitungen 11, 12 und 13 im Bus vorhanden, welche
individuell jede Einheit 1, 2, 3 über eine Offen-Kollektorschaltung mit der
Speicherzugriffssteuerung 5 verbinden. Diese Leitungen werden zur Übertragung
von Zugriffsanforderungssignalen BURE 1, BURE 2, BURE 3 verwendet sowie zum
Empfang der Bestätigung der Zugriffssteuereinheit 5.
Fig. 2 zeigt den Aufbau eines der Prozessoren 1, 2 oder 3. Er enthält eine Gruppe
von Schnittstellenregistern zur Speicherung der empfangenen oder über den Bus, insbesondere
DAC-Bus 6 übertragenen Informationen. Da die Geräte mit 2 Prioritätsgraden
zum Bus gelangen können, ist es günstig, wenn auch nicht unbedingt erforderlich,
daß die Register speziell einem Prioritätsgrad zugeordnet sind.
Folglich zeigt Fig. 2 ein Register 14 (LPO-REG) welches als Datenausgangsregister
für Zugriffsanforderungen mit niedriger Priorität benutzt wird, ein Register
15 (HPO-REG) für Datenausgang hoher Priorität, ein Register 16 (HPI-REG)
für Datenempfang hoher Priorität, sowie ein Register 17 (LPI-REG) für Datenempfang
niedriger Priorität. Die Ausgänge der Register 14 und 15 sind an die
Eingänge zweier Tristate-Sendeschaltungen 18 und 19 angeschlossen, deren Ausgänge
am DAC-Bus liegen. Die Eingänge der Register 16 und 17 sind über eine
Gruppe von Empfängern 20 an den DAC-Bus angeschlossen. Der Prozessor enthält
ferner eine Steuereinheit 21, eine Betriebseinheit 22, ein Arbeitsregister 23
sowie eine Schnittstellen-Dialogeinheit 24. Die Steuereinheit 21 sendet über
die Leitungen 14 A und 15 A Steuersignale an die Register und insbesondere
an die Register 14 und 15, um diese zum Laden zu aktivieren und sendet ferner
geeignete Befehle an die Betriebseinheit, die Arbeitsregister und die Schnittstellen-
Dialogeinheit 24 und empfängt darüber hinaus Signale von diesen Einheiten.
Die Informationsübertragungswege sind in den Kanälen 200 und 201 zusammengefaßt.
Die Schnittstellen register tauschen über nicht dargestellte Verbindungen
Informationen mit den Arbeitsregistern und der Betriebseinheit aus.
Die Dialogeinheit 24 ihrerseits ist mit den Bus-Leitungen über die Leitungen
10, 7, 8, 9 und 11 (oder 12 oder 13) verbunden. Zusätzlich aktiviert die Dialogeinheit
über Signale auf den Leitungen 76 und 77 die Transmittergruppen 19 und
18 sowie über Signale aus den Leitungen 78 und 79 das Laden der Register 16 und
17. Eine Beschreibung eines solchen Prozessors im einzelnen dürfte nicht erforderlich
sein, da sein Aufbau beispielsweise aus US-PS 37 10 324 bekannt ist.
Für die Erläuterungen der vorliegenden Erfindung wird nur die Architektur der
Dialogeinheit 24 in jedem der Prozessoren sowie des Arbeitsspeichers
4 in Bezug auf die Zugriffssteuereinheit 5 im einzelnen dargelegt. Zuvor
soll kurz die Betriebsweise von JK-Flip-flops erläutert werden.
Fig. 3 zeigt die übliche Darstellung eines solchen Flip-flops, das als integrierter
Schaltkreis erhältlich ist. Es handelt sich um eine bistabile Schaltung
mit einem Takteingang CK, je einem asynchronen Setzeingang S bzw. Rückstelleingang
R sowie mit zwei synchronen oder taktgesteuerten Eingängen J und
K und 2 Ausgängen Q und . Ein Signal an den Eingängen S und R aktiviert
das Flip-flop und setzt es anhaltend in einen der beiden elektrischen Schaltzustände,
während Signale an den Eingängen J und K das Flip-flop nur dann
aktivieren, wenn die Rückflanke eines positiven Impulses am Takteingang CK
erscheint. Die folgende Tabelle faßt die Betriebszustände eines JK-Flip-flops
zusammen.
Beispielsweise sieht man, daß beide Eingänge S und R auf "1" liegen müssen
wenn das Flip-flop durch einen Taktimpuls (CK = L) aktiviert werden soll. Der
Übersichtlichkeit halber werden die JK-Flip-flops in den nachfolgenden Fig.
ohne Bezugszeichen dargestellt. Fehlt dabei jeglicher Hinweis auf ein Eingangssignal,
beispielsweise an den Eingängen J -K, so bedeutet dies, daß ein
für das gewünschte Verhalten erforderlichen Signal "1" bzw. "0" ständig an
den Eingängen steht.
Fig. 4 zeigt Einzelheiten einer bevorzugten Ausführungsform einer Dialogeinheit
24, wie sie in jedem der Prozessoren 1, 2 oder
3 gem. Fig. 1 vorhanden ist. Die Einheit 24 enthält 2 JK-Flip-flops 25 und 26
(BURE-HP, BURE-LP), welche über 2 NAND-GATTER 25 A und 26 A am Takteingang
einen Mikrobefehl MC erhalten und durch einen Signalzustand HP bzw. aktiviert
werden. Beide Mikrobefehle und die Signale HP bzw. werden von der
Steuereinheit 21 gem. Fig. 2 zur Verfügung gestellt. Der invertierte Ausgang
des Flip-flops 25 ist an den Eingang J eines JK-Flip-flops 40 angeschlossen.
Der direkte Eingang des Flip-flops 25 liegt am 1. Eingang eines NOR-GATTERS
27 mit 2 Eingängen, ferner am Eingang J eines JK-Flip-flops 39, am ersten
Eingang eines ODER-GATTERS 80 mit 2 Eingängen sowie am Eingang eines Offen-
Kollektor-Inverter-Treibers 31. Der Ausgang dieses Treibers 31 ist an die Busleitung
10 angeschlossen und wird von einem Widerstand 32 solange auf "1"
gehalten wie alle an diese Leitungen angeschlossenen Treiberschaltungen offen
sind, d. h. mit einem Signal "0" angesteuert werden. Der Widerstand 32 steht
mit einer Spannungsquelle +V in Verbindung. Wenn das Flip-flop 25 gesetzt ist,
fällt die Spannung auf der Leitung 10 auf "0", während sie sich normalerweise
auf "1" befindet. Der Ausgang des NOR-GATTERS 27 ist mit einer Offen-Kollektor-
Inverter-Treiberschaltung 29 verbunden, deren Ausgang an der Bus-Leitung 11
liegt. Diese steht über einen Widerstand 30 mit einer Spannungsquelle +V in
Verbindung und ist am anderen Ende mit der Zugriffssteuerung 5 verbunden. Der
direkte Ausgang des Flip-flops 26 liegt an einem ersten Eingang eines UND-
GATTERS 33, dessen Ausgang an den zweiten Eingang des NOR-GATTERS 27 angeschlossen
ist. Der zweite Eingang des UND-GATTERS 33 steht mit dem Ausgang eines Flip-flops
54 (MASK) in Verbindung, welches normalerweise im Rücksetzzustand verharrt.
Gleiches gilt für die Flip-flops 25 und 26. Die direkten Ausgänge befinden sich
also auf "0" und der Ausgang des NOR-GATTERS 24 auf "1", so daß die Leitung 11
(BURE 1) normalerweise den Pegel "0" führt.
Fordert der Prozessor 1 Zugriff zum Bus, so erzeugt seine Steuereinheit
asynchron in Bezug auf die Betriebsweise des Systems - obgleich innerhalb des
Prozessors der Vorgang an einer bestimmten Stelle des Maschinenzyklus auftreten
kann - einen Befehlsimpuls MC dem ein Signalzustand HP oder zugeordnet ist
je nachdem, ob der angeforderte Zugriff von hoher oder niedriger Priorität ist.
Damit wird eines der beiden Flip-flops 25 oder 26 gesetzt. Ist dies geschehen, so
nimmt die Leitung 11 den Wert "1" an und signalisiert der Zugriffssteuereinheit
5, daß der Prozessor 1 Zugriff zum Bus wünscht (Signal BURE auf "1"). Wenn
das Flip-flop 25 gesetzt ist, geht die Leitung 10 auf "0" (SIGNAL CHART auf
"0") und teilt den übrigen Prozessoren 2 und 3 mit, daß eine Zugriffsanforderung
hoher Priorität ansteht und folglich diese weiteren Prozessoren ihre
eventuell vorhandenen Zugriffsanforderungen niedriger Priorität so lange maskieren
müssen bis die Zugriffsanforderung hoher Priorität durchgeführt ist.
Hinsichtlich der Dialogeinheit 24 ergibt sich ferner, daß die Leitung 11
über den Empfänger/Inverter 34 und den Inverter 35 an den Takteingang eines
JK-Flip-flops 36 (ASCY) angeschlossen ist. Der Grund hierfür liegt darin,
daß gemäß dem bevorzugten Ausführungsbeispiel die Leitung 11 zur 2-Richtungs-
Signalübertragung ausgenutzt wird, um die Anzahl der Bus-Leitungen zu verringern,
wie dies in der älteren DE-OS 29 17 822 beschrieben ist. Die
Zugriffsteuereinheit 5 antwortet dem anfordernden Prozessor wenn sie diesem
Prozessor Zugriff zum Bus gestattet, wobei das BURE-Signal auf der Leitung 11
auf "0" fällt. Damit wird das Flip-flop 36 gesetzt. Dies wird dadurch vorbereitet, daß vom Ausgang des ODER-GATTERS 80 ein Signal "1" an den Eingang J
dieses Flip-flops gelangt. Die Antwort an den Prozessor könnte statt über die
Leitung 11 auch über eine andere Leitung abgesandt werden. Der nicht invertierende
Ausgang Q des Flip-flops 36 ist an einen ersten von drei Eingängen
eines NAND-GATTERS 37 angeschlossen, dessen Ausgang mit dem Takteingang eines
JK-Flip-flops 38 (EXCY) in Verbindung steht. Dem zweiten und dritten Eingang dieses
NAND-GATTERS 37 werden später noch zu erläuternde Aktivierungssignale zugeführt.
Sie aktivieren die Signalübertragung vom Ausgang Q des Flip-flops 36 zum Takteingang
des Flip-flops 38 nur dann, wenn der Bus wirklich frei ist. Im beschriebenen
Ausführungsbeispiel wird zur Erhöhung der Informationsübertragungsrate
über den Bus der Zuordnungszyklus derart vorgenommen, daß er sich mit der
Ausführung und der Beendigung des vorhergehenden Zyklus überlappt. Wenn dann
das Flip-flop 36 gesetzt wird, kann nach Abschluß des vorangehenden Zyklus
das Flip-flop 38 sofort gesetzt werden und den Bus besetzen und damit die Informationsübertragung anfangen. Der invertierende Ausgang des Flip-flops 38
ist an den Takteingang zweier JK-Flip-flops 39 und 40 (ASCY-HP; ASCY-LP) angeschlossen.
Diese beiden Flip-flops erhalten an ihrem Eingang J das Signal vom
Ausgang Q bzw. des Flip-flops 25, womit angezeigt wird, ob sich die Dialogeinheit
24 im Zustand hoher Priorität befindet oder nicht. In Abhängigkeit vom
Schaltzustand des Flip-flops 25 wird eines der beiden Flip-flops 39, 40 gesetzt.
Der Ausgang des Flip-flops 38 steht ferner mit dem Eingang einer Verzögerungsleitung
41 in Verbindung, welche Ausgangsanschlüsse 42, 43 und 44 aufweist.
Damit gelangt die Rückflanke des Signals am Ausgang des Flip-flops 38 in die
Verzögerungsleitung. Der Ausgang 42 liegt an einem Inverter 45, dessen Ausgang
zusammen mit dem Ausgang 43 der Verzögerungsleitung an die Eingänge eines
NAND-GATTERS 46 angeschlossen sind. Wenn die Verzögerungsleitung 41 inaktiv
ist, d. h. wenn das Flip-flop 38 zurückgesetzt ist, haben die Ausgänge 43 und
42 das Signal "1", und am Ausgang des Inverters 45 steht ein Signal "0". Das
NAND-GATTER 46 erzeugt somit normalerweise ein Signal "1". Durchläuft die
Rückflanke des Impulses die Verzögerungsleitung, so fällt der Ausgang 42 eher
auf "0" als der Ausgang 43. Damit geht das Signal am Ausgang des Inverters 45
auf "1", während der Ausgang 43 noch immer auf "1" ist, so daß am Ausgang des
NAND-GATTERS 46 ein Signal "0" erscheint. Dies gelangt über die Leitung 47
an den Rücksetzeingang des Flip-flops 36 (ASCY) sowie über die ODER-GATTER 28
bzw. 58 zum Rücksetzeingang der Flip-flops 26 (BURE-LP) und 25 (BURE-HP). Ein
zweiter Eingang des GATTERS 28 ist über die Leitung 48 an den Ausgang des Flip-
flops 40 (ASCY-LP) angeschlossen und ein zweiter Eingang des GATTERS 48 an den
Ausgang des Flip-flops 39 (ASCY-HP). Wenn das Flip-flop 40 zurückgesetzt ist
wird ein Signal "1" ständig an den Rücksetzeingang des Flip-flops 26 gelegt
der durch ein auf "0" abfallendes Signal aus der Leitung 47 nicht zurückgesetzt
werden kann. Wenn in entsprechender Weise das Flip-flop 39 zurückgesetzt ist,
gelangt ein Signal "1" ständig an den Rückstelleingang des Flip-flops 25,
welches durch ein auf "0" umschaltendes Signal auf der Leitung 47 nicht zurückgesetzt
werden kann. Der Ausgang 44 der Verzögerungsleitung 41 ist an den
Takteingang des Flip-flops 49 (PROCO) angeschlossen.
Beim Setzen des Flip-flops 38 (EXCY) geschieht folgendes:
- a) in Abhängigkeit von dem Zustand des Flip-flops 25 ist entweder das Flip-flop 39 oder das Flip-flop 40 gesetzt;
- b) das Flip-flop 36 wird zurückgesetzt:
- - das Flip-flop 25 wird zurückgesetzt, wenn es zuvor gesetzt war und das Flip-flop 39 unmittelbar vorher gesetzt wurde; andernfalls bleibt das Flip-flop 25 zurückgesetzt;
- - das Flip-flop 26 wird zurückgesetzt, wenn das Flip-flop 40 unmittelbar vorher gesetzt wurde; andernfalls ändert es seinen Zustand nicht;
- c) das Flip-flop 49 wird gesetzt.
Der Ausgang Q des Flip-flops 49 ist an den Eingang einer Offen-Kollektor-
Inverter-Treiberschaltung 50 angeschlossen, deren Ausgang an der Bus-Leitung 8
liegt, um dieser das Signal PROCOL zuzuleiten. Die Leitung 8 steht über einen
Widerstand 51 mit einer Spannungsquelle +V in Verbindung und liegt folglich
normalerweise auf "1", geht aber auf "0" sobald das Flip-flop 49 gesetzt wird.
Befand sich das Signal PROCOL zuvor auf "0", so wäre das Setzen der Flip-flops
38 (EXCY) und 49 (PROCOL) solange verhindert worden, bis das Signal PROCOL
auf "1" umgeschaltet hat.
Die Leitung 8 ist an den Eingang eines Inverter/Empfängers 52 angeschlossen,
dessen Ausgang am Eingang eines Inverters 53 liegt. Der Ausgang dieses Inverters
ist wie erwähnt an den zweiten Eingang eines NAND-GATTERS 37 angeschlossen,
dessen Ausgangssignal das Setzen des Flip-flops 38 steuert. Das Setzen des
Flip-flops 38 wird also u. a. vorbereitet durch die Anwesenheit eines Signals
"1" auf der Leitung 8. Der Ausgang 53 liegt ferner am Takteingang eines JK-
Flip-flops 54 (MASK), welches an den Eingängen J und K zwei Eingangssignale von
der Leitung 10 (CHART) empfängt. Der Leitung 10 ist an den Eingang eines
Empfängers/Inverters 55 angeschlossen, dessen Ausgang einerseits direkt mit
dem Eingang J eines Flip-flops 54 und andererseits über einen Inverter 56 mit
dem Eingang K desselben Flip-flops in Verbindung steht. Das Flip-flop 54 ist
normalerweise zurückgesetzt und nimmt jeweils den durch die Signale an den
Eingängen J und K bestimmten Zustand an, sobald das Signal PROCOL auf "0" geht.
Wenn das Signal CHART auf der Leitung 10 den Wert "1" hat, bedeutet dies, daß
im System keine Zugriffsanforderung hoher Priorität vorhanden ist. Dann ist
der Eingang J auf "0" und der Eingang K auf "1". Das Flip-flop 54 bleibt dann
im zurückgesetzten Zustand. Ist jedoch das Signal CHART auf "0", so wird das
Flip-flop 54 gesetzt. Sein Ausgang ist an den zweiten Eingang eines UND-GATTERS
33 sowie an den zweiten Eingang eines ODER-GATTERS 80 angeschlossen. Beim Setzen des
GATTERS 54 wird das GATTER 33 gesperrt und jegliche vom Flip-flop 26 (BURE-
LP) kommende Zugriffsanforderung gesperrt oder maskiert. Wenn das Flip-flop 25
(BURE-HP) zurückgesetzt ist und das Flip-flop 54 gesetzt ist, wird in gleicher
Weise ein dem Takteingang des Flip-flops 36 zugeführter Taktimpuls dieses Flip-flop
(ASCY) zurückgesetzt lassen. Das Signal "0" auf der Leitung 10 kann von
irgend einem der verschiedenen Prozessoren angelegt werden, wobei diese Signal
zugleich von allen Prozessoren festgestellt wird, so daß diese ihre entsprechenden
Flip-flops 54 (MASK) setzen.
Andererseits wird ein Abfall des Signals auf den Leitungen 11, 12 und 13 auf
"0" nicht innerhalb jedes Prozessors als Bus-Zuordnung gedeutet, weil der Zustand
der Flip-flops 25 und 54 das Setzen des Flip-flops 36 sperrt. Bei einem
solchen Maskiervorgang greifen die Speicherzugriffssteuereinheit 5 und
das Netzwerk zur Zuordnung relativer Prioritäten überhaupt nicht ein und lassen
den Unterschied zwischen hoher und niedriger Priorität unberücksichtigt. Es
ist ferner zu bemerken, daß beim Maskieren von Bus-Zugriffsanforderungen niedriger
Priorität etwa vorhandene Zugriffsanforderungen hoher Priorität nicht
maskiert werden. Folglich können solche Anforderungen hoher Priorität zur
gleichen Zeit auf den Bus-Leitungen 11, 12 und 13 vorhanden sein. Die Leitungen
11, 12 und 13 werden folglich für die Übertragung von Zugriffsanforderungen
mit 2 unterschiedlichen Prioritätsgraden benutzt, die sich gegenseitig
ausschließen. Eine Zugriffsanforderung hoher Priorität bewirkt das Maskieren
jeglicher Anforderung niedrigerer Priorität, während das Vorhandensein einer
Zugriffsanforderung niedriger Priorität das Fehlen von Zugriffsanforderungen
hoher Priorität unterstellt.
Im beschriebenen Ausführungsbeispiel gibt es nur ein bestimmtes Zeitintervall,
währenddessen gleichzeitig Zugriffsanforderungen unterschiedlicher Priorität
vorhanden sein können. Dieses Zeitintervall liegt zwischen der asynchronen Erzeugung
des Signals CHART mit dem Wert "0" auf der Leitung 10 und dem Abfall
des Signals PROCOL auf "0" auf der Leitung 8 mit dem folgenden Setzen des
Flip-flops 54 (MASK). Später sollen die Gründe erläutert werden, welche zum
verzögerten Setzen des Flip-flops 54 führen. Zum Abschluß der Beschreibung
der Dialogeinheit 24 sind noch die Rückstellschaltungen
zum Rücksetzen der Flip-flops 54, 38, 49, 39 und 40 zu beschreiben. Die Leitung
7 führt in jedem Prozessor zu einem Empfänger/Inverter 59. Sie wird normalerweise
durch die Zugriffssteuereinheit 5 auf "1" gehalten. Kurz
vor dem Ende eines Bus-Betriebszyklus geht das Signal auf "0" und steigt am
tatsächlichen Zyklusende wieder auf "1" an. Der Empfänger/Inverter 59 ist an
den Eingang einer Verzögerungsleitung 60 mit Ausgangsanschlüssen 61 und 62
angeschlossen. Der Abgriff 61 liegt am ersten Eingang eines ODER-GATTERS 64, während
der Abgriff 62 am Eingang des Inverters 63 liegt, dessen Ausgang an den zweiten
Eingang des ODER-GATTERS 54 geführt ist. Der Ausgang des ODER-GATTERS 54 steht
mit dem Rücksetzeingang der Flip-flops 38, 49, 39 und 40 in Verbindung. Befindet
sich die Verzögerungsleitung 60 im Ruhezustand, d. h. das Signal ENCY hat den
Wert "1", so befinden sich ihre Ausgänge auf "0" und am Ausgang des ODER-
GATTERS 64 steht der Pegel "1". Fällt das Signal ENCY auf "0", so wandert die
ansteigende Flanke am Empfänger 59 vom Eingang zum Ausgang der Verzögerungsleitung
60 und bringt dabei den Abgriff 61 auf "1" ehe der Ausgang 62 auf "0"
geht. Der Ausgang des ODER-GATTERS 64 bleibt "0". Wenn umgekehrt das Signal
ENCY erneut auf "1" ansteigt, so erscheint ein kurzer Impuls "0" am Ausgang
des ODER-GATTERS 64, der in geeigneter Weise gegenüber der Vorderflanke des
Signals ENCY verzögert wird und diejenigen der Flip-flops 38, 49, 39 und 40
zurücksetzt, welche zuvor gesetzt waren. Es ist ersichtlich, daß zu einer bestimmten
Zeit nur einer der Prozessoren die Flip-flops 38 und 49 sowie einen
der Flip-flops 39 und 40 gesetzt hat; jedoch wird der Befehl ENCY allen Prozessoren zugeleitet.
Zur Vervollständigung der Beschreibung der Schnittstellen-Dialogeinheit 24 soll
noch auf die Flip-flops 39 und 40 sowie die Steuerfunktion der Dialogeinheit
gegenüber den Schnittstellenregistern hingewiesen werden. Es wurde bereits erwähnt,
daß der Ausgang der Flip-flops 39 und 40 an einen Eingang der ODER-
GATTER 58 bzw. 28 angeschlossen ist, um das Rücksetzen der Flip-flops 25 bzw.
26 zu maskieren. Der Ausgang Q des Flip-flops 39 ist an den Eingang K eines
Flip-flops 66, den Eingang J eines Flip-flops 67 sowie an einen ersten Eingang
eines UND-GATTERS 74 angeschlossen. Der Ausgang Q des Flip-flops 40 steht mit
dem Eingang K eines Flip-flops 68, und dem Eingang J eines Flip-flops 69 sowie
einem ersten Eingang eines UND-GATTERS 75 in Verbindung. Die Flip-flops 76, 77,
68 und 69 zeigen mit ihrem jeweiligen Schaltzustand den Zustand der Schnittstellenregister
14, 15, 16 und 17 an. Die Flip-flops 66 und 68 sind mit ihrem
Takteingang an den Ausgang eines Inverters 70 angeschlossen, dessen Eingang
am Ausgang des Empfängers/Inverters 71 liegen. Der Takteingang der Flip-flops
67 und 69 ist unmittelbar an den Ausgang des Empfängers/Inverters 71 angeschlossen.
Dessen Eingang ist mit der Leitung 9 verbunden, auf welcher ein Signal MECOL,
das normalerweise den Wert "1" hat, von der Zugriffssteuereinheit 5 ankommt.
Die Leitung 9 wird normalerweise durch einen an die Spannungsquelle +V angeschlossenen
Widerstand 51 A auf "1" gehalten. Der Setzeingang des Flip-flops
66 sowie der Rückstelleingang des Flip-flops 67 sind an den Ausgang eines
NAND-GATTERS 72 angeschlossen, welches an seinen beiden Eingängen einerseits
das Zustandssignal HP und andererseits den Mikrobefehl MC erhält, die beide
von der Steuereinheit 21 kommen. Der Setzeingang des Flip-flops 68 und der
Rückstelleingang des Flip-flops 69 sind an den Ausgang eines NAND-GATTERS 73
angeschlossen, das an seinen beiden Eingängen ebenfalls von der Steuereinheit
21 einerseits das Zustandssignal und andererseits den Mikrobefehl MC aufnimmt.
Sind die beiden Flip-flops 66 und 68 gesetzt, so zeigen sie der Steuereinheit
durch entsprechende Signale ORBUZ-HP und ORBUZ-LP vom Wert "1" am
Ausgang Q an, daß die Ausgangsregister 14 bzw. 15 geladen und in Betrieb sind.
Die Flip-flops werden wahlweise durch Signale HP und MC bzw. und MC gesetzt.
Wenn der Prozessor Zugriff zum Bus wünscht, lädt er die geeignete Information,
je nachdem ob die Anforderung niedrige oder hohe Priorität hat, in
das Register 14 oder 15 und setzt gleichzeitig eines der Flip-flops 25 und 26
sowie eines der Flip-flops 66 und 68. Sobald der Bus dem anfordernden Prozessor
zugeordnet und damit das Flip-flop 39 oder 40 gesetzt ist, wird die Information
im Register 14 oder 15 durch Tristate-Schaltungen 18 bzw. 19 zum DAC-Bus übertragen,
wobei die genannten Schaltungen 18 und 19 durch Ausgangssignale der
UND-GATTER 75 bzw. 74 aktiviert werden, die auf den Leitungen 77 bzw. 76
(Fig. 2 und 4) erscheinen. Das UND-GATTER 74 ist mit seinen beiden Eingängen
an die Ausgänge Q der Flip-flops 39 und 66 angeschlossen und aktiviert die
Tristate-Schaltung 19. In entsprechender Weise sind die beiden Eingänge des
UND-GATTERS 75 an den Eingang Q der Flip-flops 40 und 68 angeschlossen, wodurch
die Tristate-Schaltung 18 aktiviert wird. Es befindet sich also Information
auf dem DAC-Bus, da das Signal PROCOL abgesenkt wird bis der Speicher
4 das Absenkungssignal MECOL beantwortet und damit das Zurücksetzen eines der
zuvor gesetzten Flip-flops 66, 68 bewirkt. In gleicher Weise bewirken die mit
ihrem Ausgang Q an die Leitungen 78, 79 angeschlossenen Flip-flops 64 und 69
mit dem Ausgangssignal "1" das Laden der Register 16 und 17 und melden dies
der Steuereinheit. Die Flip-flops werden selektiv durch die Anstiegsflanke
des MECOL-Signals gesetzt, die jeweils dann auftritt, wenn der Speicher 4
in die Register 16 oder 17 zu ladende Daten auf den DAC-Bus gegeben hat.
Nach der vorangehenden Beschreibung der den Prioritätsgrad auswählenden Schnittstellen-Dialogeinheit 24 in den einzelnen Prozessoren wird nachfolgend der
Speicher 4 unter besonderem Hinweis auf die Zugriffssteuereinheit 5
anhand von Fig. 5 erläutert.
Die Leitung 11 ist an den Eingang eines Empfängers/Inverters 131 angeschlossen,
die Leitung 12 an den Eingang eines Empfängers/Inverters 132 und die Leitung 13
an den Eingang eines Empfängers/Inverters 133. Die Ausgänge dieser Inverter
sind an die drei Eingänge eines NAND-GATTERS 135 sowie an die Dateneingänge D 1,
D 2, D 3 eines Registers 134 geführt. Der Ausgang des NAND-GATTERS 135 liegt
an dem einen Eingang eines UND-GATTERS 136, dessen zweiter Eingang über die
Leitung 137 ein Aktivierungssignal vom Ausgang des JK-Flip-flops 138 erhält.
Der Ausgang des UND-GATTERS 136 liegt am Eingang einer Verzögerungsleitung
139 mit mehreren Anzapfungen sowie über die Leitung 140 am Takteingang eines
Registers 134. Der erste Abgriff der Verzögerungsleitung 139 ist über einen Inverter
141 an den Setzeingang des JK-Flip-flops 138 angeschlossen. Ein 2. Abgriff
der Verzögerungsleitung 139 liegt über einen Inverter 142 am Setzeingang
eines weiteren JK-Flip-flops 143. Sein Ausgang steht über die Leitung 144
mit dem Aktivierungseingang von drei Inverter-Treiberschaltungen in Form von
NAND-GATTERN 145, 146, 147 in Verbindung. Deren Ausgänge sind an die Leitungen
11, 12 und 13 angeschlossen. Der Signaleingang der drei Inverter-Treiberschaltungen
steht mit den drei Ausgängen U 1, U 2, U 3 eines Prioritätsnetzwerkes 148 in Form
einer exclusiven Logikmatrix in Verbindung. Die Eingänge dieses Prioritätsnetzwerkes
148 sind an die Ausgänge O 1, O 2, O 3 des Registers 134 angeschlossen.
In Fig. 5 besteht das Prioritätsnetzwerk 148 aus drei Invertern 149, 150, 151
sowie zwei UND-GATTERN 152 und 153 mit drei bzw. zwei Eingängen. Der Ausgang O 1 des Registers
134 liegt über einen Inverter 151 am Ausgang U 1 des Prioritätsnetzwerks
148, der seinerseits mit dem Signaleingang einer Inverter-Treiberschaltung 145
in Verbindung steht. Der Ausgang O 1 ist ferner an den ersten Eingang zweier UND-
GATTER 152 und 153 angeschlossen. Der Ausgang O 2 des Registers 134 steht über
einen Inverter 150 mit einem zweiten Eingang des UND-GATTERS 153 in Verbindung, dessen
Ausgang U 2 am Signaleingang der Inverter-Treiberschaltung 146 liegt. Der Ausgang
O 2 steht auch mit einem zweiten Eingang des UND-GATTERS 152 in Verbindung. Der
Ausgang O 3 des Registers ist über einen Inverter 149 mit dem dritten Eingang des
UND-GATTERS 152 verbunden, dessen Ausgang U 3 am Signaleingang der Inverter-
Treiberschaltung 147 liegt.
Das Prioritätsnetzwerk soll den über die Leitungen 11, 12 und 13 von den einzelnen
Prozessoren her zugeführten Speicherzugriffsanforderungen relative Prioritäten
zuordnen und im Falle mehrerer gleichzeitig anstehender Anforderungen den
Ausgang für die Anforderungen mit der höchsten Priorität aktivieren. Im gezeigten
Ausführungsbeispiel ordnet das Netzwerk 148 beispielsweise den Zugriffsanforderungen,
welche über die Leitung 11 vom Prozessor 1 kommen, eine höhere Priorität
zu als Anforderungen, welche über die Leitungen 12 vom Prozessor 2 eingehen.
Zugriffsanforderungen vom Prozessor 3 über die Leitung 13 erhalten eine noch niedrigere Priorität.
Ein Signal vom Pegel "0" am Anschluß O 1 wird zum Ausgang U 1 übertragen, wo
es infolge des Inverters 151 mit entgegengesetzter Polarität, also als Signal
"1" erscheint. Demgegenüber wird ein Signal "0" am Anschluß O 2 nur dann zum
Ausgang U 2 übertragen, wenn gleichzeitig ein Signal "1" am Anschluß O 1 steht.
Ein solches Signal "1" zeigt nämlich an, daß keine Zugriffsanforderung höherer
Priorität vorhanden ist. In entsprechender Weise wird ein Signal "0" am Anschluß
O 3 nur dann zum Ausgang O 3 weitergegeben, wenn ein Signal "1" gleichzeitig
an beiden Anschlüssen O 2 und O 1 steht. Die Anschlüsse O 1, O 2 und O 3 sind
an Zellenausgänge des Registers 34 angeschlossen, welche den Eingängen D 1,
D 2, D 3 entsprechen und die über die Leitungen 11, 12 und 13 als Information
"0" empfangenen Zugriffsanforderungen speichern.
Der Betrieb der bis hierher beschriebenen Schnittstellen-Dialogeinheit 24 ist
somit folgender:
Sobald ein Prozessor, beispielsweise der Prozessor 2 Zugriff zum Speicher wünscht, hebt er das Signal auf der Leitung 12 auf "1" an. Damit fällt das Ausgangssignal des Empfängser-Inverters 132 auf "0" und der Ausgang des NAND-GATTERS 135 ergibt "1". Ist das UND-GATTER 136 aktiviert weil das JK-Flip-flop 138 zurückgesetzt ist - was gleichbedeutend damit ist, daß derzeit keine Speicherzyklen laufen - so wird das Signal "1" zum Ausgang des UND-GATTERS 136 übertragen und setzt über die Leitung 140 das Laden des Registers 134 in Gang Damit wird das Signal "0" am Ausgang des NAND-GATTERS 132 in das Register geladen und zwar zusammen mit den Schaltpegeln am Ausgang der anderen NAND-GATTER 131 und 133. Zugleich wird das Signal "1" am Ausgang des UND-GATTERS 136 der Verzögerungsleitung 139 zugeführt und in dieser fortgeschaltet. Sobald das Signal "1" den 1. Abgriff erreicht fällt das Ausgangssignal des Inverters 141 auf "0" und das JK-Flip-flop 138 wird gesetzt. Damit nimmt sein Ausgang den Pegel "0" an, wodurch das UND-GATTER 136 gesperrt wird. Damit werden etwaige folgende Zugriffsanforderungen solange nicht zum Ausgang des UND-GATTERS 136 übertragen bis das Flip-flop 138 wieder zurückgesetzt ist.
Sobald ein Prozessor, beispielsweise der Prozessor 2 Zugriff zum Speicher wünscht, hebt er das Signal auf der Leitung 12 auf "1" an. Damit fällt das Ausgangssignal des Empfängser-Inverters 132 auf "0" und der Ausgang des NAND-GATTERS 135 ergibt "1". Ist das UND-GATTER 136 aktiviert weil das JK-Flip-flop 138 zurückgesetzt ist - was gleichbedeutend damit ist, daß derzeit keine Speicherzyklen laufen - so wird das Signal "1" zum Ausgang des UND-GATTERS 136 übertragen und setzt über die Leitung 140 das Laden des Registers 134 in Gang Damit wird das Signal "0" am Ausgang des NAND-GATTERS 132 in das Register geladen und zwar zusammen mit den Schaltpegeln am Ausgang der anderen NAND-GATTER 131 und 133. Zugleich wird das Signal "1" am Ausgang des UND-GATTERS 136 der Verzögerungsleitung 139 zugeführt und in dieser fortgeschaltet. Sobald das Signal "1" den 1. Abgriff erreicht fällt das Ausgangssignal des Inverters 141 auf "0" und das JK-Flip-flop 138 wird gesetzt. Damit nimmt sein Ausgang den Pegel "0" an, wodurch das UND-GATTER 136 gesperrt wird. Damit werden etwaige folgende Zugriffsanforderungen solange nicht zum Ausgang des UND-GATTERS 136 übertragen bis das Flip-flop 138 wieder zurückgesetzt ist.
Erreicht das Signal "1" in der Verzögerungsleitung 139 den zweiten Abgriff, so wird
über den Inverter 142 auch das Flip-flop 143 gesetzt. Damit steigt das Signal
an seinem Ausgang Q auf "1" an und aktiviert die Treiberschaltungen 145, 146
und 147. Von den zuvor im Register 134 gespeicherten Zugriffsanforderungen ist
diejenige mit der höheren Priorität in der Zwischenzeit zum Ausgang des Prioritätsnetzwerkes
148 als Signal "1" gelangt. Nimmt man an, daß dieses Signal am
Ausgang U 2 steht, so fällt das Ausgangssignal an der Offen-Kollektor-NAND-
Treiberschaltung 146 auf "0". Damit wird der Pegel "1" auf der Leitung 12 auf
"0" abgesenkt, gleichbedeutung mit einer Beantwortung und Annahme der Zugriffsanforderung.
Hierbei ist zu berücksichtigen, daß die Flip-flops 138 und 143 gesetzt sind,
d. h. daß sie nicht in den anfänglichen Ruhezustand gebracht wurden. Wenn der
Prozessor, dessen Anforderung angenommen wurde, die Annahmeantwort erhält,
bringt er das Signal PROCOL auf der Leitung 8 auf "0" und zeigt damit an, daß
er tatsächlich Zugriff zum Speicher hat. Dieses Signal "0" auf der Leitung
8 wird über den Empänger/Inverter 154, dessen Ausgang auf "1" geht, vom Speicher
empfangen. Der Ausgang des Empfängers/Inverters 154 ist über die Leitung
155 an einen Eingang 156, der Speicherbefehlslogik 157 angeschlossen und aktiviert
diesen. Die Speicherbefehlslogik 157 empfängt ferner über den DAC-Bus 6
eine Gruppe von Informationen, bestehend aus Befehlen beispielsweise Schreib-, Lese-,
Diagnose- und Testbefehlen, Speicheradressen sowie Daten, welche in den Speicher
einzugeben sind. Der 2-Richtungs-DAC-Bus wird auch dazu benutzt, um zum
anfordernden Prozessor Signale über den Speicherzustand sowie die ausgelesenen
Daten zurück zu senden. Der DAC-Bus ist über eine Gruppe von Empfangs-Invertern
101 an die Eingänge einer Gruppe von Eingangsregistern 102 (I-REG) angeschlossen.
Eine andere Gruppe 103 von Ausgangsregistern (O-REG) in der Speicherbefehlslogik
157 ist mit ihren Ausgängen an die Eingänge einer Tristate-NAND-Treiberschaltungsgruppe
104 angeschlossen, deren Ausgänge mit dem DAC-Bus 6 in Verbindung stehen.
Sobald die Speicherbefehlslogik 157 auf der Leitung 155 ein Signal "1" empfängt,
gestattet sie das Laden des Registers 102 und startet die durch den Registerinhalt
bestimmten Speicheroperationen. Gleichzeitig erzeugt sie auf der Ausgangsleitung
105 ein Signal "1", welches den Anfang eines Speicherzyklus kennzeichnet.
Die Leitung 105 ist mit dem Eingang einer Inverter-Treiberschaltung 106
verbunden, deren Ausgang an die Busleitung 9 geführt ist. Damit fällt das Signal
MECOL auf der Leitung "0" und informiert den Prozessor, der Zugriff zum Bus
erhalten hat, daß der Speicherzyklus begonnen wurde und daß die Information
am DAC-Bus entfernt werden kann.
Wie bereits im Zusammenhang mit Fig. 4 beschrieben wurde, bewirkt ein Signal
MECOL "0" ein Zurücksetzen des Flip-flops 66 oder 68 sowie das Sperren der
Treibergruppe 18 oder 19 (Fig. 2). Sobald die angeforderte Operation abgeschlossen
ist, beispielsweise im Fall des Auslesens von Daten, diese Daten
zusammen mit anderen Informationen in das Register 103 geladen sind (O-REG),
aktiviert die Speicherbefehlslogik 157 die Treibergruppe 104 zur Übertragung
dieser Daten und Informationen an den DAC-Bus und senkt gleichzeitig das Signal
auf der Leitung 105 auf "0" ab. Das Signal MECOL auf der Bus-Leitung 9 steigt
auf "1" an. Dies hat zur Folge, daß das Flip-flop 67 oder 69 (Fig. 4) desjenigen
Prozessors gesetzt wird, dem der Speicherzyklus zugeordnet wurde, und daß das
Laden der im DAC-Bus befindlichen Informationen in die Registergruppe 16 oder
17 (Fig. 2) ermöglicht wird. Der Ausgang des Empfang-Inverters 154 ist über
den Inverter 160 an den Takteingang des Flip-flops 143 angeschlossen. Sobald
also das Signal PROCOL auf "0" sinkt, geht der Ausgang des Inverters 160 auf
"0" und das Flip-flop 143 wird zurückgesetzt. Folglich fällt das Signal am Ausgang
Q des Flip-flops auf "0", und die NAND-Treiberschaltungen 145, 146, 147
werden gesperrt, so daß ihre Ausgänge von Masse getrennt werden und den normalen
Ruhezustand einnehmen. Es handelt sich um Schaltungen vom Offen-Kollektor-Typ.
Am Ende des Speicherzyklus oder vorzugsweise kurz vorher erzeugt die Speicherbefehlslogik
157 ein Zyklusendsignal "1" auf der Ausgangsleitung 161. Dieses
wird über die Leitung 162 und den Inverter 163 dem Takteingang des Flip-flops
138 zugeleitet und setzt diesen zurück. Damit wird die Übertragung neuer oder
noch abhängiger Zugriffsanforderungen über das UND-GATTER 136 ermöglicht. Das
Signal auf der Leitung 161 wird über die Leitung 164 an den Eingang der Inverter-
Treiberschaltung 165 gegeben, deren Ausgang an die Bus-Leitung 7 angeschlossen
ist. Das Signal ENCY auf der Leitung 7 fällt auf "0" und zeigt den Prozessoren
an, daß der in Gang befindliche Speicherzyklus zu Ende geht. Das Signal
ENCY wird bis zum Ende des Speicherzyklus auf "0" gehalten, d. h. es steigt auf
"1" an, sobald der Speicher bereit ist, einen neuen Zyklus zu beginnen. Wie bereits
erwähnt erfolgt das Zurücksetzen der Flip-flops 38, 39 oder 40, 49 der
Dialogeinheit im Prozessor, dem der Zyklus zugeordnet wurde dann, wenn das Signal
ENCY wieder auf "1" ansteigt.
In der vorangehenden Beschreibung der Speicherschaltung 4 und der Zugriffssteuereinheit 5 wurden mögliche Verbindungen mit der Bus-Leitung 10 oder
mögliche Wirkungen des Signals CHART auf dieser Leitung nicht erwähnt. Tatsächlich
ist dieses Signal für die Zugriffssteuereinheit 5 und den Speicher 4
völlig unsichtbar. Dei Zugriffssteuereinheit 5 läßt es völlig unberücksichtigt,
wenn die von den verschiedenen Prozessoren auf den Leitungen 11, 12
und 13 eine niedrige oder hohe Priorität haben. Sie nimmt nur diejenigen Zugriffsanforderungen
zur Kenntnis und ordnet nur denjenigen eine feste relative
Priorität zu, für die die Leitung 11 und damit der Prozessor 1 eine höhere Priorität
hat gegenüber den Leitungen 11, 12, 13 und damit den Prozessoren 2 und 3
und bei denen die Leitungen 12 und damit der Prozessor 2 eine höhere relative
Priorität hat gegenüber der Leitung 13 und damit dem Prozessor 3. Dies gilt für
alle N-Prozessoren (N <3) mit entsprechenden Erweiterungen und Abänderungen der
zugehörigen Prioritätsschaltungen.
Andererseits stellen die verschiedenen Prozessoren fest, wenn wenigstens einer
von ihnen eine Zugriffsanforderung hoher Priorität liefert und sie maskieren
ihre eigenen Anforderungen, d. h. jeder von ihnen sperrt die Übertragung seiner
möglicherweise vorhandenen Zugriffsanforderungen niedriger Priorität auf die
Schnittstellenleitung solange bis das Signal für eine hohe Priorität, d. h. das
Signal CHART auf "0" verschwindet. Hierzu hat jeder Prozessor in seiner Dialogeinheit
24 eine Einrichtung in Form des Flip-flops 25, um ein Zugriffssignal
hoher Priorität zu erzeugen, welches auf einer einzigen Verbindungsleitung für
alle Prozessoren übertragen werden kann. Außerdem hat jeder Prozessor eine Einrichtung
im wesentlichen bestehend aus dem Maskierungs-Flip-flop 54, welches bei
Feststellung eines Signals CHART alle Zugriffsanforderungen niedriger Priorität
maskiert, welche der Zugriffssteuereinheit 5 bereits zugeleitet wurden
oder zugeleitet werden sollten.
Die gezeigte Einrichtung ermöglicht gegenüber bekannten Einrichtungen eine
wesentliche schaltungsmäßige Vereinfachung sowie Kostenersparnis und bietet zugleich
eine größere Vielfältigkeit der Verwendung. Die Zuordnung von Zugriffen zu einer
gemeinsamen Übertragungsschiene, genannt Bus in Abhängigkeit von zwei unterschiedlichen
Prioritätsgraden könnte zwar dadurch ermöglicht werden, daß jeder Prozessor
auf zwei getrennte Leitungen Zugriffsanforderungen unterschiedlicher Priorität
aussendet. Dies würde jedoch eine Verdoppelung der für die Aussendung der
Zugriffsanforderungen erforderlichen Leitungen bedeuten, wodurch die Kosten
für Kabel und Anschlüsse sowie Treiber und Empfangsschaltungen beträchtlich
höher wären. Außerdem müßte das Prioritätsnetzwerk in der Zugriffssteuereinheit
entsprechend ausgestaltet werden und würde mehr als die doppelte Anzahl
von Bauteilen benötigen. Demgegenüber führt die Erfindung zu einer wesentlichen
Vereinfachung und gewährleistet darüber hinaus einen zuverlässigen
Betrieb.
Nunmehr soll noch die Arbeitsweise der Zugriffssteuereinheit an Hand einiger
Signaldiagramme gem. Fig. 6 erläutert werden.
Der Signalverlauf BURE 1 zeigt das Signal auf der Leitung 11 am Ausgang des
Prozessors 1. Dementsprechend bedeutet BURE 2 das Signal auf der Leitung 12
am Ausgang des Prozessors 2 und BURE 3 das Ausgangssignal des Prozessors 3 auf
der Leitung 13. Die Schnittstellen-Dialogeinheiten 24 der Prozessoren 1, 2 und
3 sind gleich aufgebaut und wurden zuvor an Hand von Fig. 4 erläutert. Die Kurve
CHART zeigt das Signal auf der Leitung 10, während die Kurve das Signal am
Ausgang des Maskierungs-Flip-flops 54 der einzelnen Prozessoren wiedergibt,
beispielsweise am Flip-flop 54 des Prozessors 1. Die Kurve PROCOL gibt das Signal
auf der Leitung 8, die Kurve ENCY das Signal auf der Leitung 7 und die
Kurve MECOL das Signal auf der Leitung 9 wieder. Die Kurve OUT EN 1 zeigt das
Signal am Ausgang des UND-GATTERS 74 oder 75 der Dialogeinheit 24 des Prozessors
1. Dementsprechend zeigt die Kurve OUT EN 3 die entsprechenden Ausgangssignale
am Prozessor 3. Die Kurve DAC-BUS läßt den Zustand des DAC-BUS erkennen,
während das Signal DR 1 das Signal am Ausgang des Flip-flops 67 oder 69 im
Prozessor 1 entsprechend Fig. 4 wiedergibt. Dementsprechend zeigt die Kurve
DR 3 Signalverlauf am Flip-flop 67 oder 69 des Prozessors 3.
Die geschwungenen Pfeile zwischen den einzelnen Kurvenzügen bedeuten die Zeitfolge
der einzelnen Vorgänge an.
Zur Anfangszeit t₀ erzeugt der Prozessor 1 eine Zugriffsanforderung niedriger
Priorität: Das Register 14 (Fig. 2) wird geladen und die Flip-flops 26 und
28 werden gesetzt. Da sich das Signal auf "1" befindet, steigt das Signal
BURE 1 auf "1" und läuft über die Leitung 11. Sobald es von der Zugriffssteuereinheit 5
empfangen wird, aktiviert es über die Schaltkreise 131, 135, 136 das
Laden des Registers 134, die Verzögerungsleitung 139, das Setzen des Flip-flops
139 sowie schließlich das Setzen des Flip-flops 143, das die verschiedenen Ausgänge
der Logikschaltungen 145, 146, 147 aktiviert. Das Ausgangssignal am
Invertertreiber 145 wird an Masse gelegt, und das Signal BURE 1 fällt auf "0".
Dieses Signal läuft über die Leitung 11 und wird z. Zt. t₂
vom Prozessor 1 empfangen. Es zeigt ihm an, daß seine Zugriffsanforderung
angenommen wurde.
In der Zwischenzeit, zum Zeitpunkt t₁, hat auch der Prozessor 2 eine
Zugriffsanforderung niederer Priorität abgegeben und das Signal BURE 2 auf "1"
gebracht. Sogar der Prozessor 3 bietet z. Zt. t₂ eine Zugriffsanforderung
hoher Priorität und liefert das Signal BURE 3 mit dem Wert "1", so daß das
Signal CHART den Wert "0" annimmt. Damit wird das Flip-flop 25 gesetzt. Die
einzelnen Vorgänge erfolgen vollständig asynchron.
Es ist zu bemerken, daß das Signal nicht gleichzeitig mit dem Signal
CHART auf "0" fällt. Würde dies geschehen, so würde das Signal BURE 1 z. Zt.
t₂ auf "0" umschalten und gleichzeitig würde das Flip-flop 36 (ASCY)
blockiert werden und damit unempfindlich sein für die Rückflanke des Signals
BURE 1. Dies würde mit der zuvor getroffenen Entscheidung der Zugriffssteuereinheit 5 kollidieren, welche die Zugriffsanforderung des Prozessors
1 betätigt hat, und außerdem mit dem von der Zugriffssteuereinheit 5 erzeugten Signal kollidieren, welches
das Signal BURE 1 auf "0" herabgesetzt hat. Um eine derartige Beeinträchtigung
zu verhindern muß die Maskierung bis zu einem Zeitpunkt verzögert werden, der
allen Prozessoren bekannt ist und zu dem es sicher ist, daß keine Bus-Zuordnungen
gerade ablaufen, weil zu dieser Zeit der Bus bereits zugeordnet ist.
Dieser Zeitpunkt fällt mit dem Umschalten des Signals PROCOL auf "0" zusammen.
Es ist zu erwähnen, daß dieses Problem nur deshalb auftreten kann, weil in der
beschriebenen bevorzugten Ausführungsform eine einzige Leitung dazu benutzt
wird um einerseits vom Prozessor zur Zugriffssteuereinheit das Zugriffsanforderungssignal
und andererseits von der Zugriffssteuereinheit zum
Prozessor das Annahmesignal einer Anforderung zu übertragen, wie dies in der
oben erwähnten älteren DE-OS 29 17 822 im einzelnen beschrieben ist. Abweichend
hiervon ist es möglich, zwei getrennte Leitungen für diese beiden unterschiedlichen
Informationsübertragungen zu verwenden, wobei dann die Maskierung unmittelbar,
also unverzögert erfolgen kann. Die hierzu erforderlichen Änderungen
der Schaltkreise lassen sich leicht finden.
In Fortsetzung der Beschreibung von Fig. 6 ist weiter zu erwähnen, daß der
Abfall des Signals BURE 1 auf "0" das Flip-flop 36 setzt und damit die Besetzung
der Bus-Schiene aktiviert. Zunächst werden die Flip-flops 38 und 40
gesetzt, dann das Flip-flop 26 zurückgesetzt und das Flip-flop 47 gesetzt.
Zum Zeitpunkt t₄ steigt das Signal OUT EN 1 auf "1" und gestattet die
Informationsübertragung vom Register 14 auf den DAC-Bus z. Zt. t₅.
Die Signale "1" in der Kurve DAC-BUS lassen erkennen, daß sinnvolle Binärinformationen auf dem DAC-BuS vorhanden sind. Wird das Flip-flop 49 z. Zt. t₆
gesetzt, so fällt das Signal PROCOL auf "0". Damit wird in allen Prozessoren
des Flip-flop 54 gesetzt, weil das Signal CHART auf "0" ist, folglich
wird das Signal auf "0" gebracht und das Signal BURE 2 maskiert. Letzteres
zeigt eine Zugriffsanforderung niedriger Priorität an. Im Gegensatz hierzu
bleibt das Signal BURE 3 auf "1", weil es sich auf eine Zugriffsanforderung
hoher Priorität bezieht.
Empfängt die Zugriffssteuereinheit 5 ein Signal PROCOL vom Wert "0", so
setzt sie das Flip-flop 142 zurück, lädt die auf dem DAC-BuS vorhandenen Informationen
in die Register 102 und senkt z. Zt. t₆ das Signal MECOL auf
"0" ab. Damit beginnt der Speicherzyklus oder allgemeiner gesagt die durch die
empfangene Information bestimmte Operation. Empfängt der Prozessor 1 ein Signal
MECOL auf "0" so wird das Flip-flop 68 zurückgesetzt und z. Zt. t₁₀
fällt das Signal OUT GN 1 auf "0", wodurch die Information vom DAC-BuS entfernt
wird. In den anderen Prozessoren hat das Signal MECOL keine Wirkung.
Kurz vor Ende des Speicherzyklus senkt die Zugriffssteuereinheit 5 das
Signal ENCY z. Zt. t₁₂ auf "0" und setzt gleichzeitig das Flip-flop 138
(Fig. 5) zurück. Sie ermöglicht damit die Entgegennahme schwebender Zugriffsanforderungen
und das Laden des Registers 134. Da die Zugriffsanforderungen
niedriger Priorität maskiert sind, insbesondere das Signal BURE 2, wird z. Zt.
t₁₃ das Signal BURE 3 vom Pegel "1" festgestellt und der Treiber 147
an Masse gelegt. Damit nimmt das Signal BURE 3 den Wert "0" an. Diese Operation
tritt vor Beendigung des Speicherzyklus auf, so daß die Ausbreitungszeit der
Signale im Prioritätsnetzwerk und der zugehörigen Schaltkreisen und anschließend
über die Leitungen 11, 12 und 13 zu den Prozessoren sich mit den gerade ablaufenden
Speicherzyklus überlappt und der ausgewählte Prozessor schon für den
Zugriff zum Bus vorbereitet ist, ohne daß bis zum Beginn des neuen Zyklus eine
Verzögerung eintritt.
Kurz vor dem Ende des Speicherzyklus erhält die Speicherzugriffssteuerung 5
das Signal MECOL z. Zt. t₁₄ auf "1" und erlaubt gleichzeitig die Übertragung
von im Register 103 vorhandenen, beispielsweise aus dem Speicher auszulesenden Daten auf den DAC-BuS.
Im Prozessor 1 bewirkt das Ansteigen des Signals MECOL auf "1" das Setzen des
Flip-flops 69 mit anschließendem Laden der auf dem DAC-BuS vorhandenen Information
in das Register 17. Das erneute Abfallen des Signals BURE 3 auf "0"
verursacht in der Zwischenzeit das Setzen des Flip-flops 36. Dieses Flip-flop
wird durch das Signal auf dem Wert "0" nicht blockiert, weil sein J-Eingang
vom Flip-flop 25 z. Zt. t₁₄ auf "1" gehalten wird. Das Setzen des
Flip-flops 36 wirkt nicht unmittelbar auf das Flip-flop 38 ein, weil der ablaufende
Speicherzyklus noch nicht beendet ist und folglich die Signale
PROCOL und ENCY noch den Wert "0" haben. Am Ende des Speicherzyklus hebt die
Zugriffssteuereinheit 5 das Signal ENCY erneut auf "1" und befreit z. Zt.
t₁₅ den DAC-BuS von vorhandener Information.
Sobald der Prozessor 1 die Vorderflanke des Signals ENCY empfängt werden die
Flip-flops 38, 39 und 40 zurückgesetzt, und das Signal PROCOL steigt z. Zt.
t₁₆ erneut auf "1". Der Anstieg des Signals ENCY hat keinen Einfluß
auf die übrigen Prozessoren. Sobald das Signal PROCOL erneut auf "1" geht,
setzt der Prozessor 3, dessen Flip-flop 36, setzt es die Flip-flops 38 und 39,
stellt dann das Flip-flop 25 zurück und setzt das Flip-flop 49. Dies läuft
folgendermaßen ab:
- a) Das Signal OUT-EN 3 steigt auf "1", und die zur Speicherzugriffssteuerung GAM 5 zu übertragende Information wird in den DAC-BuS geladen;
- b) das Signal CHART geht auf "1", weil im Beispiel nur der Prozessor 3 den Zustand des Signals CHART = "0" aufweist, wobei sein Flip-flop 25 gesetzt ist;
- c) schließlich fällt das Signal PROCOL erneut z. Zt. t₁₇ auf "0".
Dies bewirkt, daß Zurücksetzen des Flip-flops 54 in den verschiedenen Prozessoren,
weil die vorherige Rückkehr des Signals CHART auf "1" den J, K-
Eingängen ein Signal "0" bzw. "1" liefert. Das Signal schaltet auf "1"
und bewirkt, daß das zuvor maskierte Signal BURE 2 vom Wert "1" erneut auf
der Leitung 12 erscheint. Die Änderung des Signals PROCOL auf "0" bewirkt
beim Empfang durch die Speicherzugriffssteuerung 5 die Aktivierung des Speicherzyklus.
Das Signal MECOL wird auf "0" geschaltet, wodurch das Flip-flop 66
im Prozessor 3 gesetzt wird, während das Signal OUT EN 3 gleichzeitig
auf "0" geht und die im DAC-BuS enthaltene Information abgeschaltet
wird.
Es sei angenommen, daß in der Zwischenzeit, und zwar völlig unabhängig und
asynchron in Bezug auf den Dialog zwischen dem Prozessor 3 und der
Zugriffssteuereinheit 5, der Prozessor 1 eine weiter Zugriffsanforderung an den
Bus angemeldet hat, indem er das Signal BURE 1 auf "1" angehoben und gleichzeitig
sein Flip-flop 69 zurückgestellt hat. Etwa am Ende des Speicherzyklus
bewirkt das Abfallen des Signals ENCY auf "0" und das Zurücksetzen des Flip-flops
138 in der Zugriffssteuereinheit 5 das Erkennen einer schwebenden
Zugriffsanordnung sowie die Zuordnung des folgenden Speicherzyklus zur
Anforderung mit höherer Priorität, in diesem Fall BURE 1 vom Prozessor 1. Dann
laufen die oben erwähnten Vorgänge im Speicher 4 und im Prozessor 1 erneut ab.
Nimmt man weiterhin an, daß zwischenzeitlich völlig unabhängig von
den laufenden Vorgängen und asynchron hierzu der Prozessor 2, der zuvor bereits
eine Zugriffsanforderung niedriger Priorität gemeldet hatte, nunmehr eine Zugriffsanforderung hoher Priorität abgibt. Er setzt sein Flip-flop 25 und
senkt z. Zt. t₁₉ das Signal CHART auf "0". Da das Signal BURE 2 bereits
auf "1" steht, ergibt sich auf der Leitung 11 keine Potentialänderung.
Es sei weiterhin angenommen, daß vor der nachfolgenden Rückkehr des Signals
ENCY z. Zt. t₂₀ auf "0" und vor dem Erkennen der anhängigen Zugriffsanforderungen
in der Speicherzugriffssteuerung und vor der Zuordnung des BUS
zum anfordernden Prozessor höherer Priorität beide Prozessoren 3 und 1 eine
Zugriffsanforderung niedriger Priorität erheben. Damit sind von allen Prozessoren
Anforderungen hoher und niedriger Priorität gegeben, und das Signal
ENCY fällt auf "0", weil das Signal MASK noch auf "1" steht. Folglich wird der
nachfolgende Speicherzyklus z. Zt. t₂₁ dem Prozessor 1 zugeordnet,
welcher die höhere Priorität hat. Mit dem anschließenden Absinken des Signals
PROCOL z. Zt. t₂₂ auf "0" wird das Flip-flop 54 (MASK) mehrerer Prozessoren
gesetzt, und das Signal geht auf "0". Damit wird die anstehende
Zugriffsanforderung des Prozessors 1 maskiert. Dann erscheint die einzige
Zugriffsanforderung hoher Priorität, nämlich BURE 2 auf den Leitungen 11,
12 und 13. Folglich wird der nächste Speicherzyklus dem Prozessor 2 zugeordnet,
und während des Dialogs werden die verschiedenen mit dem Bus-Zugriff
bei hoher Priorität befaßten Flip-flops und Register zurückgesetzt. Umgekehrt
bleiben die bei einem Bus-Zugriff mit niedriger Priorität aktiven Flip-flops
und Register im Prozessor 2 gesetzt, weil die entsprechende Zugriffsanforderung
noch nicht akzeptiert wurde. Sobald der dem Prozessor 2 für seine Zugriffsanforderung
mit hoher Priorität zugeordneter Speicherzyklus beendet ist,
wird schließlich die Zugriffsanforderung des Prozessors 2 mit niedriger Priorität
abgewickelt, sofern in der Zwischenzeit keine andere Zugriffsanforderung
hoher Priorität oder eine Zugriffsanforderung des Prozessors 1 niedriger
Priorität eingegangen ist. Der Prozessor 1 hatte wie vorausgesetzt höhere
Priorität als die übrigen Prozessoren.
Im Rahmen der Erfindung können mehr als zwei Prioritätsgrade
vorgesehen sein, wobei dann zwischengeordnete Maskierungspegel vorhanden sind.
Außerdem können zwei oder mehrere Prioritätsgrade auch nur durch einige der Prozessoren
verwendet werden. Dies bedeutet, daß einige Prozessoren oder Geräteeinheiten
Zugriffsanforderungen mit nur einem Prioritätsgrad abgeben.
Claims (3)
1. Datenverarbeitungsanlage mit mehreren Geräteeinheiten, welche
über einen Bus miteinander verbunden werden können, und mit
einer Bus-Zugriffssteuereinheit, welche die asynchron
auftretenden Zugriffsanforderungen der einzelnen Geräteeinheiten
zum Bus steuert und zuordnet mit
- a) individuellen ersten Koppelleitungen (11, 12, 13) zwischen jeder der Geräteeinheiten (1, 2, 3) und der Zugriffssteuereinheit (4);
- b) ersten Logikschaltkreisen (26, 27, 29, 33) in jeder der Geräteeinheiten, mit denen den ersten Koppelleitungen eine Zugriffsanforderung zugeleitet wird;
- c) einem Prioritätsnetzwerk (145, 146, 147, 148) in der Zugriffssteuereinheit, welches den über die ersten Koppelleitungen empfangenen Zugriffsanforderungen eine vorgegebene relative Priorität zuordnet und beim gleichzeitigen Anstehen mehrerer Zugriffsanforderungen diejenige mit der höheren Priorität annimmt;
gekennzeichnet durch,
- d) gemeinsame zweite Koppelleitungen (10) zwischen den Geräteeinheiten (1, 2, 3);
- e) zweite Logikschaltkreise (25, 27, 29, 31) in jeder der Geräteeinheiten (1, 2, 3), welche gleichzeitig mit einer über die entsprechenden ersten Koppelleitungen (11, 12, 13) zugeleiteten Zugriffsanforderung den zweiten Koppelleitungen ein Signal zuführt, welches anzeigt, daß die gerade anstehende Zugriffsanforderung hohe Priorität hat;
- f) dritte Logikschaltkreise (33, 54, 55) in jeder der Geräteeinheiten (1, 2, 3) welche beim Vorhandensein dieses Signals die ersten Logikschaltkreise (26, 27, 29, 33) daran hindert, Zugriffsanforderungen an die ersten Koppelleitungen (11, 12, 13) zu geben.
2. Datenverarbeitungsanlage nach Anspruch 1, gekennzeichnet
durch
- g) vierte Logikschaltkreise (34, 35, 36, 147) zur Zwei- Richtungsübertragung von Signalen zwischen jeder der Geräteeinheiten (1, 2, 3) und der Zugriffssteuereinheit (5) über eine Einzelleitung der individuellen ersten Koppelleitungen (11, 12, 13);
- h) fünfte Logikschaltkreise (135, 136, 139, 142, 143), welche bei Annahme einer Zugriffsanforderung ein Zugriffsannahmesignal erzeugen;
- i) die Zuleitung dieses Zugriffsannahmesignals an eine Einzelleitung zwischen der Zugriffssteuereinheit (5) und derjenigen Geräteeinheit (1, 2, 3), deren Zugriffsanforderung angenommen wurde.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT29453/78A IT1100916B (it) | 1978-11-06 | 1978-11-06 | Apparato per gestione di richieste di trasferimento dati in sistemi di elaborazione dati |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2944497A1 DE2944497A1 (de) | 1980-05-14 |
DE2944497C2 true DE2944497C2 (de) | 1989-03-23 |
Family
ID=11227017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792944497 Granted DE2944497A1 (de) | 1978-11-06 | 1979-11-03 | Datenverarbeitungsanlage mit mehreren geraeteeinheiten |
Country Status (10)
Country | Link |
---|---|
US (1) | US4302808A (de) |
JP (1) | JPS5585935A (de) |
AU (1) | AU524538B2 (de) |
CA (1) | CA1129109A (de) |
DE (1) | DE2944497A1 (de) |
FR (1) | FR2441215B1 (de) |
GB (1) | GB2035636B (de) |
IL (1) | IL58644A (de) |
IT (1) | IT1100916B (de) |
YU (1) | YU41492B (de) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1149252B (it) * | 1980-09-09 | 1986-12-03 | Sits Soc It Telecom Siemens | Modulo di ingresso-uscita per un elaboratore elettronico |
US4556953A (en) * | 1982-02-24 | 1985-12-03 | Caprio A Ronald | Interchangeable interface circuitry arrangements for use with a data processing system |
IT1151683B (it) * | 1982-07-06 | 1986-12-24 | Honeywell Inf Systems | Sistema multiprocessore a bus asincrono con caricamento di microistruzioni da memoria di lavoro |
US4559595A (en) * | 1982-12-27 | 1985-12-17 | Honeywell Information Systems Inc. | Distributed priority network logic for allowing a low priority unit to reside in a high priority position |
US4787033A (en) * | 1983-09-22 | 1988-11-22 | Digital Equipment Corporation | Arbitration mechanism for assigning control of a communications path in a digital computer system |
US4769768A (en) * | 1983-09-22 | 1988-09-06 | Digital Equipment Corporation | Method and apparatus for requesting service of interrupts by selected number of processors |
AU562975B2 (en) * | 1983-09-22 | 1987-06-25 | Digital Equipment Corporation | Message oriented interrupt mechanism for multiprocessor systems |
SE445861B (sv) * | 1984-12-12 | 1986-07-21 | Ellemtel Utvecklings Ab | Prioritetsfordelningsanordning for datorer |
AU580359B2 (en) * | 1984-12-12 | 1989-01-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Arrangement for apportioning priority among co-operating computers |
EP0199053B1 (de) * | 1985-03-20 | 1993-07-28 | Hitachi, Ltd. | Ein-/Ausgabe-Steuerungssystem |
JPS61296458A (ja) * | 1985-06-26 | 1986-12-27 | Oki Electric Ind Co Ltd | バス使用権決定方式 |
US4875158A (en) * | 1985-08-14 | 1989-10-17 | Apple Computer, Inc. | Method for requesting service by a device which generates a service request signal successively until it is serviced |
US4910655A (en) * | 1985-08-14 | 1990-03-20 | Apple Computer, Inc. | Apparatus for transferring signals and data under the control of a host computer |
US4912627A (en) * | 1985-08-14 | 1990-03-27 | Apple Computer, Inc. | Method for storing a second number as a command address of a first peripheral device and a third number as a command address of a second peripheral device |
US4918598A (en) * | 1985-08-14 | 1990-04-17 | Apple Computer, Inc. | Method for selectively activating and deactivating devices having same first address and different extended addresses |
AU604063B2 (en) * | 1987-10-13 | 1990-12-06 | Honeywell Bull Inc. | Circuit for preventing lock-out of high priority requests to a system controller |
US4914580A (en) * | 1987-10-26 | 1990-04-03 | American Telephone And Telegraph Company | Communication system having interrupts with dynamically adjusted priority levels |
US5088053A (en) * | 1987-11-16 | 1992-02-11 | Intel Corporation | Memory controller as for a video signal processor |
US5003461A (en) * | 1988-02-01 | 1991-03-26 | Motorola, Inc. | Cluster controller memory arbiter |
JPH0268632A (ja) * | 1988-09-05 | 1990-03-08 | Toshiba Corp | 割込み制御装置 |
US5276818A (en) * | 1989-04-24 | 1994-01-04 | Hitachi, Ltd. | Bus system for information processing system and method of controlling the same |
US5095460A (en) * | 1989-04-25 | 1992-03-10 | Digital Equipment Corporation | Rotating priority encoder operating by selectively masking input signals to a fixed priority encoder |
EP0464237A1 (de) * | 1990-07-03 | 1992-01-08 | International Business Machines Corporation | Busarbitrierungsschema |
US5265255A (en) * | 1990-09-24 | 1993-11-23 | International Business Machines Corp. | Personal computer system with interrupt controller |
US5251305A (en) * | 1991-04-04 | 1993-10-05 | Unisys Corporation | Apparatus and method for preventing bus contention among a plurality of data sources |
JP2625589B2 (ja) * | 1991-04-22 | 1997-07-02 | インターナショナル・ビジネス・マシーンズ・コーポレイション | マルチプロセッサ・システム |
US5805841A (en) * | 1991-07-24 | 1998-09-08 | Micron Electronics, Inc. | Symmetric parallel multi-processing bus architeture |
US5301283A (en) * | 1992-04-16 | 1994-04-05 | Digital Equipment Corporation | Dynamic arbitration for system bus control in multiprocessor data processing system |
US5581770A (en) * | 1992-06-04 | 1996-12-03 | Mitsubishi Denki Kabushiki Kaisha | Floating interruption handling system and method |
US5487170A (en) * | 1993-12-16 | 1996-01-23 | International Business Machines Corporation | Data processing system having dynamic priority task scheduling capabilities |
US5862353A (en) * | 1997-03-25 | 1999-01-19 | International Business Machines Corporation | Systems and methods for dynamically controlling a bus |
GB2341768A (en) * | 1998-09-18 | 2000-03-22 | Pixelfusion Ltd | Bus arbitration |
JP4887824B2 (ja) * | 2006-02-16 | 2012-02-29 | 富士通セミコンダクター株式会社 | メモリシステム |
US9524312B2 (en) * | 2009-04-29 | 2016-12-20 | Ianywhere Solutions, Inc. | Prioritized, incremental data retrieval from a database, with an event listener |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3473155A (en) * | 1964-05-04 | 1969-10-14 | Gen Electric | Apparatus providing access to storage device on priority-allocated basis |
US3445822A (en) * | 1967-07-14 | 1969-05-20 | Ibm | Communication arrangement in data processing system |
US3534339A (en) * | 1967-08-24 | 1970-10-13 | Burroughs Corp | Service request priority resolver and encoder |
US3611305A (en) * | 1969-02-10 | 1971-10-05 | Scanders Associates Inc | Data processor interrupt system |
US3611307A (en) * | 1969-04-03 | 1971-10-05 | Ibm | Execution unit shared by plurality of arrays of virtual processors |
US3710324A (en) * | 1970-04-01 | 1973-01-09 | Digital Equipment Corp | Data processing system |
GB1356269A (en) * | 1971-09-25 | 1974-06-12 | Ibm | Digital data handling system |
US3800287A (en) * | 1972-06-27 | 1974-03-26 | Honeywell Inf Systems | Data processing system having automatic interrupt identification technique |
US3832692A (en) * | 1972-06-27 | 1974-08-27 | Honeywell Inf Systems | Priority network for devices coupled by a multi-line bus |
IT971304B (it) * | 1972-11-29 | 1974-04-30 | Honeywell Inf Systems | Sistema di accesso a priorita variabile dinamicamente |
US3866181A (en) * | 1972-12-26 | 1975-02-11 | Honeywell Inf Systems | Interrupt sequencing control apparatus |
IT1002275B (it) * | 1973-12-27 | 1976-05-20 | Honeywell Inf Systems | Sistema di elaborazione dati a piu canali di ingresso uscita a risorse orientate per livelli di servizio distinti e interrompi bili |
US3967246A (en) * | 1974-06-05 | 1976-06-29 | Bell Telephone Laboratories, Incorporated | Digital computer arrangement for communicating data via data buses |
JPS5126426A (de) * | 1974-08-30 | 1976-03-04 | Hitachi Ltd | |
US3983540A (en) * | 1975-09-08 | 1976-09-28 | Honeywell Inc. | Rapid bus priority resolution |
JPS5837585B2 (ja) * | 1975-09-30 | 1983-08-17 | 株式会社東芝 | ケイサンキソウチ |
JPS5259534A (en) * | 1975-11-11 | 1977-05-17 | Panafacom Ltd | Data transfer system |
US4038644A (en) * | 1975-11-19 | 1977-07-26 | Ncr Corporation | Destination selection apparatus for a bus oriented computer system |
JPS52132748A (en) * | 1976-04-30 | 1977-11-07 | Hitachi Ltd | Information i/o control system |
US4096571A (en) * | 1976-09-08 | 1978-06-20 | Codex Corporation | System for resolving memory access conflicts among processors and minimizing processor waiting times for access to memory by comparing waiting times and breaking ties by an arbitrary priority ranking |
US4096569A (en) * | 1976-12-27 | 1978-06-20 | Honeywell Information Systems Inc. | Data processing system having distributed priority network with logic for deactivating information transfer requests |
US4148011A (en) * | 1977-06-06 | 1979-04-03 | General Automation, Inc. | Asynchronous priority circuit for controlling access to a bus |
IT1093493B (it) * | 1978-03-23 | 1985-07-19 | Honeywell Inf Systems | Circuito di trasmissione bidirezionale di segnali interbloccati |
-
1978
- 1978-11-06 IT IT29453/78A patent/IT1100916B/it active
-
1979
- 1979-10-31 GB GB7937743A patent/GB2035636B/en not_active Expired
- 1979-11-01 AU AU52430/79A patent/AU524538B2/en not_active Ceased
- 1979-11-02 US US06/090,616 patent/US4302808A/en not_active Expired - Lifetime
- 1979-11-03 DE DE19792944497 patent/DE2944497A1/de active Granted
- 1979-11-05 YU YU2700/79A patent/YU41492B/xx unknown
- 1979-11-05 CA CA339,186A patent/CA1129109A/en not_active Expired
- 1979-11-05 FR FR7927178A patent/FR2441215B1/fr not_active Expired
- 1979-11-06 JP JP14376179A patent/JPS5585935A/ja active Pending
- 1979-11-06 IL IL58644A patent/IL58644A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
AU5243079A (en) | 1980-05-15 |
YU41492B (en) | 1987-08-31 |
IL58644A (en) | 1982-08-31 |
FR2441215B1 (fr) | 1985-12-27 |
IT7829453A0 (it) | 1978-11-06 |
FR2441215A1 (fr) | 1980-06-06 |
AU524538B2 (en) | 1982-09-23 |
IT1100916B (it) | 1985-09-28 |
YU270079A (en) | 1983-04-30 |
CA1129109A (en) | 1982-08-03 |
GB2035636A (en) | 1980-06-18 |
DE2944497A1 (de) | 1980-05-14 |
JPS5585935A (en) | 1980-06-28 |
GB2035636B (en) | 1983-01-06 |
US4302808A (en) | 1981-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2944497C2 (de) | ||
DE3300260C2 (de) | ||
DE3300261C2 (de) | ||
DE2913288C2 (de) | Multiprozessoranlage mit einer Vielzahl von Prozessorbausteinen | |
DE2760322C2 (de) | ||
DE3043894C2 (de) | ||
DE3490263C2 (de) | Steuerkanal-Schnittstellenschaltung | |
DE2332734A1 (de) | Datenverarbeitungssystem | |
DE4035837A1 (de) | Bus-hauptschnittstellenschaltung mit transparenter unterbrechung einer datenuebertragungsoperation | |
DE2448212A1 (de) | Asynchrone sammelleitung zur selbstbestimmten kommunikation zwischen mutterrechnergeraeten und tochtergeraeten | |
DE3146356A1 (de) | Datenverarbeitungssystem | |
CH656275A5 (de) | Verfahren und schaltungsanordnung zum uebertragen von datensignalen zwischen datensignalsendern und datensignalempfaengern. | |
DE19614237C1 (de) | Kommunikationssystem mit einer Meisterstation und mindestens einer Sklavenstation | |
DE2645341C2 (de) | ||
DE2417446A1 (de) | Adapter fuer datenverarbeitungsanlagen | |
DE3042105C2 (de) | ||
DE68927157T2 (de) | Deblockierverfahren eines Multiprozessor-Multibus-Systems | |
EP0104638B1 (de) | Verfahren zur Vorbereitung der Anschaltung einer von mehreren datenverarbeitenden Einrichtungen an ein zentral taktgesteuertes Mehrfach-Leitungssystem | |
DE2713304A1 (de) | Mehrrechnersystem | |
DE2917822A1 (de) | Schaltungsanordnung zur zweirichtungsuebertragung von signalen | |
DE3333847C2 (de) | ||
DE19846914C2 (de) | Datenbus und Verfahren zum Kommunizieren zweier Baugruppen mittels eines solchen Datenbusses | |
DE69025035T2 (de) | Ausgangsstufe auf einer synchronen seriellen Leitung, insbesondere für numerische Schnittstellenkarte für Fernsprechanlage und Fernsprechanlage mit solcher Schnittstellenkarte | |
DE2606295A1 (de) | Verfahren zum ausfuehren einer datenuebertragung zwischen peripheren einheiten und einem arbeitsspeicher ueber einen multiplexkanal | |
DE3882248T2 (de) | Vorrichtung zur Ermöglichung des Zugriffes zweier Signalverarbeitungsprozessoren auf eine gemeinsame Schaltung. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |