DE2703394B2 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2703394B2
DE2703394B2 DE2703394A DE2703394A DE2703394B2 DE 2703394 B2 DE2703394 B2 DE 2703394B2 DE 2703394 A DE2703394 A DE 2703394A DE 2703394 A DE2703394 A DE 2703394A DE 2703394 B2 DE2703394 B2 DE 2703394B2
Authority
DE
Germany
Prior art keywords
signal
bus
control device
address
output
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.)
Granted
Application number
DE2703394A
Other languages
English (en)
Other versions
DE2703394C3 (de
DE2703394A1 (de
Inventor
Nicholas Hatfield Pa. Derchak (V.St.A.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sperry Corp
Original Assignee
Sperry Rand Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sperry Rand Corp filed Critical Sperry Rand Corp
Publication of DE2703394A1 publication Critical patent/DE2703394A1/de
Publication of DE2703394B2 publication Critical patent/DE2703394B2/de
Application granted granted Critical
Publication of DE2703394C3 publication Critical patent/DE2703394C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/285Halt processor DMA

Description

Die Erfindung betrifft eine Datenverarbeitungsanlage mit einem zentralen Prozessor, wenigstens einer gemeinsam genutzten Steuereinrichtung zur direkten Speicheranstcuerung, und einem Speicher, die alle an einen gemeinsamen Systembus angeschlossen sind, und mit einer Anzahl von peripheren Geräten, von denen jedes einzelne über eine Subsyätemsteuereinrichtung an einem Subsystembus angeschlossen ist, welcher alle Subsystemsteuereinrichtungen mit der gemeinsam genutzten Steuereinrichtung verbindet, so daß Daten-, Zustand- und Steuersignale, welche zwischen den Subsystemsteuereinrichtungen und dem gemeinsamen Systembus übertragen werden, durch die gemeinsam genutzte Steuereinrichtung passieren.
Mikroprozessoren sind eine ziemlich neue Entwicklung und haben auf dem Gebiet der Datenverarbeitung weite Beachtung gefunden (siehe beispielsweise Fortune Magazine, November, 1975).
Obwohl Mikrorechner bzw. -Prozessoren sehr klein sind, sehr schnell betrieben werden können und im Vergleich zu bekannten Rechnern verhältnismäßig preiswert, sind, weisen sie manchmal nicht erwünschte Beschränkungen auf. Beispielsweise hat ein Mikrorechner nur zwei Befehle für den Verkehr bzw. den Datenaustausch mit externen Einrichtungen. Einer davon dient der Steuerung von Eingabeoperationen und der andere zur Steuerung von Ausgabeoperationen. Diese Eigenschaft führt zu ernsten Beschränkungen bei der Benutzung dieses speziellen Mikrorechners in einem System mit einer Anzahl peripherer Einrichtungen mit verschiedenen Kenndaten, insbesondere wenn ein direkter Speicherzugriff geschaffen werden soll, wodurch die peripheren Einrichtungen zu derselben Zeit mit dem Speicher in Verbindung stehen können, während welcher der Mikrorechner mit anderen Operationen belegt ist
Der Begriff direkter Speicherzu&riff ist auf dem Datenverarbeitungsgebiet bekannt Hierbei wird im allgemeinen unter diesem Begriff verstanden, daß eine zentrale Recheneinheit eine Steuereinrichtung für eine Subsystemeinrichtung mit Befehlen und Daten laden kann, die notwendig sind, um eine Datenübertragung zwischen dem Speicher und der peripheren Einrichtung einzuleiten und auszuführen, die mit der Steuereinrichtung für die Subsystemeinrichtung verbunden und von dieser gesteuert werden. Sobald die Subsystemsteuereinrichtung eingestellt worden ist, ist die zentrale Recheneinheit frei, andere Operationen in dem System durchzuführen, während die Subsystemsteuereinrichtung selbst die Übertragung zwiscyiert dem Speicher und der peripheren Einrichtung steuert
Bisher ist es üblich gewesen, jeweils eine Subsystemsteuereinrichtung für alle Schaltungen vorzusehen, die notwendig sind, um die Datenübertragungen zwischen deren peripheren Einrichtungen und dem Speicher auszuführen. Ferner ist jede der Subsystemsteuereinrichtungen unmittelbar mit einer Systemhaupt- oder Systemsammeiieiiung verbunden worden, mit weicher auch der Speicher und die zentrale Recheneinheit verbunden werden. Auch gibt es gewisse Funktionen, die von jeder der Subsystemsteuereinrichtungen unabhängig von der Art der peripheren Einrichtung, welche sie versorgen, durchgeführt werden müssen; folglich erfordert die übliche Anordnung eine unnötige Verdoppelung des Schaltungsaufbaus in jeder der Subsystemsteuereinrichtungen, um diese Funktionen durchzuführen.
Es ist bereits eine Datenverarbeitungsanlage bekannt geworden, bei der Subsystemsteuereinrichtungen vorgesehen sind, die es erlauben, daß Eingabe/Ausgabe-Operationen ohne Steuerung der Datenmanipulation durch den zentralen Prozessor durchgeführt werden können. Verschiedene periphere Geräte sind an eine von ihnen gemeinsam genutzte Steuereinrichtung angeschlossen, so daß Daten-, Zustand- und Steuersignale durch die gemeinsam genutzte Steuereinrichtung passieren (US-PS 38 20 079). Dazu benötigt jedoch die Zentraleinheit fünf verschiedene Eingabe/Ausgabebe-
fehle, um mit den peripheren Geräten verkehren zu können. Bei bekannten Mikroprozessoren stehen aber, wie eingangs erwähnt wurde, nur zwei Arten von Befehlen für Verkehr mit externen Geräten zur Verfugung, nämlich ein Befehl zur Steuerung der Eingabeoperationen und ein Befehl zur Steuerung der Ausgabeoperationen.
Angesichts der beschränkten Anzahl der bei Mikroprozessoren zum Verkehr mit periphere^ Geräten zur Verfügung stehenden Befehle ist es Aufgabe der vorliegenden Erfindung, eine Datenverarbeitungsanlage der eingangs genannten Art so weiterzu bilden, daß ein einziger Eingabebefehl nicht nur das periphere Gerät startet, sondern auch das periphere Gerät veranlaßt, seinen Zustand dem zentralen Prozessor mitzuteilen.
Gemäß der Erfindung wird dies bei einer Datenverarbeitungsanlage der eingangs erwähnten Art dadurch erreicht, daß die Subsystemsteuereinrichtungen und die gemeinsam genutzte Steuereinrichtung zum direkten Speicherzugriff eine Schaltung aufweisen, welche eine Adressenerkennungseinrichtung enthält, um einige der Adressenbits aus einem gemeinsamen Adressenbus, der einen Teil des Systembus darstellt, als Adresse der betreffenden gemeinsam genutzten Steuereinrichtung zu erkennen; daß eine Durchschalteeinrichtung vorgesehen ist, die auf die Adressenerkennungseinrichtung und den Eingabebefehl anspricht, um Adressenbits auf dem gemeinsamen Adressenbus zu einem Adressenbits des Subsystembus als Adresse eines Zustandsregisters in einer ausgewählten Subsystemsteuereinrichtung durchzuschalten, wobei die ausgewählte Subsystemsteuereirrichtung den Wert ihres Zustandsregisters einem Register übermittelt.
Im Gegensatz zum genannten Stand der Technik ist also außer dem Eingabebefehl nicht noch ein zusätzlicher Befehl notwendig, um den Zustand des peripheren Gerätes festzustellen, so daß die Erfindung die Verwendung von bekannten Mikroprozessoren als zentralen Prozessor möglich macht
Nachfolgend wird die Erfindung an Hand von bevorzugten Ausführungsformen unter Bezugnahme auf die Zeichnungen im einzelnen erläutere. Es zeigt
Fig. 1 ein Blockschaltbild eines Datenverarbeitungssystems mit einer gemeinsam benutzten Steuereinrichtung für einen direkten Speicherzi'griff,
Fig.2 ein Blockschaltbild, das die verschiedenen Elemente in einer gemeinsam benutzten Steuereinrichtung für einen direkten Speicherzugriff zeigt,
Fi g.3A und 3B, wann sie, wie in Fig.3C dargestellt, angeordnet sind, ein Logikschaltbild, das die Hauptwege eines Datenflusses über eine gemeinsam benutzte Steuereinrichtung mit einem direkten Speicherzugriff wiedergibt,
Fig.4 bis 8 Logikschaltbilder der Schaltungen zum Erzeugen von Steuersignalen in der gemeinsam benutzten Steuereinrichtung,
Fig.9 eine Wellenformdarslellung, in welcher die zeitliche Zuordnung und Festlegung verschiedener Signale wiedergegeben ist, die in der gemeinsam benutzten Steuereinrichtung während eines Eingabebefehls auftreten,
Fig. IOA bis 1OE verschiedene Adressierformate bzw. -einteilungen, die in Verbindung mit der gemeinsam benutzten Steuereinrichtung für einen direkten Speicherzugriff benutzt werden,
Fig. Il eine Weürnformdarstcllung, in welcher die zeitliche Zuordnung und Festlegung verschiedener Signale wiedergegeben ist, die während einer Durchführung der Ausgabebefehle auftreten, welche den Adressenhinweiszähler laden, und
Fig. 12A und 12B Wellenformdarstellungen, die die zeitliche Zuordnung und Festlegung verschiedener Signale während Ausgabe- bzw. Eingabedatenübertragungen wiedergeben.
In der folgenden Beschreibung ist jedes Element mit einer dreiziffrigen Bezugszahl bezeichnet Die erste der ίο drei Ziffern gibt die Zahl der Figur an, in welcher das Element zu finden ist Bei den Eingangs- und Ausgangsleitungen ist mit der ersten Ziffer die Figur bezeichnet, in welcher der Anfang der Leitung zu finden ist Bei den einzelnen, verwendeten logischen Elementen stellt ein hoher oder positiver Spannungspegel einen logischen Zustand eins dar, während ein niedriger oder auf Erdpotential liegender Pegel eine logische Null wiedergibt
In F i g. 1 ist ein Blockschaltbild eines Datenverarbeitungssystems gemäß der Erfindung dargestellt Das Datenverarbeitungssystem weis' auf eine zentrale Recheneinheit (CPU) 100, einen Haup'. speicher 102, eine Hauptleitungs- bzw. Busleitereinrichtung 104, eine oder mehrere Steuereinrichtungen 106 für einen direkten Speicherzugriff bei einem Plattenspeicher und eine oder mehrere gemeinsam benutzte Steuereinrichtungen für einen direkten Speicherzugriff (SDMA) 108, die alle mit einer gemeinsamen Systemhauptleitung bzw. einem gemeinsamen Systembus 110 verbunden sind. Die jo zentrale Recheneinheit 100 ist ein Mikrorechner. Die zentrale Recheneinheit 100 enthält die üblichen Schaltungen mit einem Rechenwerksregister 101, das für arithmetische Berechnungen und logische Entscheidungen notwendig ist, die in dem Datenverarbeitungssy-J-. stern getroffen werden. Der Speicher 102 weist einen herkömmlichen Aufbau auf.
Da alle Signalübertragungen zwischen den verschiedenen mit dem Systembus UO verbundenen Elementen mittels des Systembus vorgenommen werde;!, ist die Busleitereinrichtung 104 zum Steuern des Zugriffs der verschiedenen Elemente zu dem Systembus vorgesehen. Die Verwendung eines gemeinsamen Systembus und einer Busleitereinrichtung ist allgemein bekannt, so daß die Einzelheiten der Busleitereinrichtunf hier nicht beschrieben sind.
Die Steuereinrichtung 106 für einen direkten Speicherzugriff kann eine herkömmliche Steuereinrichtung für einen direkten Speicherzugriff sein, um eine einer Anzahl von Plattenspeichereinheiten 112 mittels
V) des Systembus 110 mit dem Speicher 102 zu verbinden. Die Erfindung betrifft ein herkömmliches Datenver arbeitungssysteni, wie es oben in Verbindung mit der gemeinsam benutzten Steuereinrichtung (SDMA) 108 für emen direkten Speicherzugriff beschrieben ist. (Im
jr> folgenden wird meistens nur noch von Steuereinrichtung (SDMA) idä gesprochen.). Die Steuereinrichtung (SDMA) 108 ist vorgesehen, um die direkte Datenübertragung zwischen einer Anzahl Subsystemeinrichtungen und dem Speicher 102 zu steuern. Wie in Fig. I
bo dargestellt, weisen die Subsystemeinrichtungen einen oder mehrere (Loch-)Kartenleser 116, einen oder mehrere Drucker 114, einen oder mehrere Kartenstanzer oder -locher 118 und/oder einen oder mehrere Datenendgeräte bzw. -terminals 120 mit einer Tasten-
b'j feldeingabe mit einer Anzeigeeinrichtung mit einer Kathodenstrahlröhre auf. Jede Subsystemeinrichtung ist einer Subsystemsteuereinrichtung (SDC) 122 zugeordnet, und alle Subsystemsteuereinrichtungen 122 sind mit
der Steuereinrichtung (SDMA) 108 mittels einer Hauptleitung bzw. eines Bus 124 für die Subsystemsteuereinrichtung verbunden. Selbstverständlich können die Subsystemsteuereinrichtungen 122 entsprechend der Art der Subsystemeinrichtung, die zu steuern sind, in ihrem Aufbau verschieden sein. Derartige Subsystemsteuereinrichtungen sind bekannt, so daß ihr Aufbau im einzelnen nicht beschrieben wird. Zu beachten ist jedoch, daß beim Stand der Technik jede der Subsystemsteuereinrichtungen 122 mit ihrer eigenen Schaltung zum Durchführen bestimmter Funktionen, wie beispielsweise einer Speicheradressicrung, versehen ist. Wie aus der folgenden Beschreibung zu ersehen ist. ist durch die Erfindung eine übermäßige, nicht gerechtfertigte Vervielfachung der Schaltung beseitigt, indem eine einzige Schaltung in der Steuereinrichtung (SDMA) 108 zur Durchführung dieser Funktion für alle Subsyslemsteuereinrichtungen vorgesehen ist.
noch im einzelnen beschrieben; zu diesem Zeitpunk kann jedoch davon ausgegangen werden, daß sie di< allgemeinen Steuerungen über den Datenfluß durch dii gemeinsame Steuereinrichtung (SDMA) darstellen um die Verbindungsoperationen zwischen der allgemeiner benutzten Steuereinrichtung (SDMA) und Steuerein richtungen (SDC) sowie zwischen der allgemeii benutzten Steuereinrichtung (SDMA)und dem Speiche steuern.
Die Steuereinrichtung (SDMA) ist mit einen Datenregister 220 versehen und alle Daten, die über du Steuereinrichtung (SDMA) laufen, müssen über diese: Datenregister laufen. Das Datenregister kann eir 8Bit-Byte speichern und weist einen Multiplexcreinganj auf, um ein Byte-Daten zu einem vorgegebener Zeitpunkt von dem Systemdatenbus 200 über einen Bu; 222 oder von dem SDC-Datenbus 206 über einen Bu: 224 aufzunehmen. Ausgangsdaten von dem Datenregi
der Steuereinrichtung (SDMA) 108 können alle Einrichtungen und F.lemente der F i g. 1 einen herkömmlichen Aufbau aufweisen und sind im Handel erhältlich, so daß sie im einzelnen nicht beschrieben sind.
In Fig. 2 ist ein Blockschaltbild der Schaltung dargestellt, die in einer gemeinsam benutzten Steuereinrichtung (SDMA) 108 vorgesehen ist (wobei alle Steuereinrichtungen (SDMA) ähnlich bzw. gleich sind); ferner sind in Fig. 2 die Signalflußwege zwischen dem SDC-Bus 124 und dem Systembus 110 dargestellt. In Wirklichkeit weist der Systembus 110 einen Systemdatenbus 200, einen Systemadressenbus 202 und einen Systemsteuerbus ?04 auf. In ähnlicher Weise weist der SDC-Bus 124 einen SDC-Datenbus 206, einen SDC-Adressenbus 208 und einen SDC-Steuerbus 210 auf. Der Systemdatenbus 200 und DSC-Datenbus 206 sind in zwei Richtungen arbeitende Hauptleitungen bzw. Busse, die jeweils ein Informationsbyte aus acht parallelen Bits übertragen können. Der Systemadressenbus 202 ist ein in zwei Richiungen arbeitender Bus, der Adressen aus sechzehn Bits übertragen kann. Der SDC-Adressenbus 208 ist ein in einer einzigen Richtung arbeitender Bus zum Anlegen von 5 Bit-Adressen an die Steuereinrichtungen (SDC)\22, um eine bestimmte Steuereinrichtung (SDC) zu adressieren oder ein bestimmtes Register in einer Steuereinrichtung (SDC) auszuwählen, weiche vorher adressiert worden ist. Wie aus der folgenden Beschreibung zu ersehen ist, können bis zu 25 Register zwischen den von einer gemeinsam benutzten Steuereinrichtung (SDMA) bedienten Steuereinrichtung (SDC) 122 verteilt sein.
Die gemeinsam benutzte Steuereinrichtung (SDMA) ist mit einer logischen Folgezustandsschaltung 212 und einer logischen Datensteuerschaltung 214 versehen, die beide Steuersignale von der Busleitereinrichtung 104, dem Speicher 102 oder der zentralen Recheneinheit 100 über den Systemsteuerbus 204 erhalten oder Steuersignale an diese Einrichtungen übertragen. Die logische Folgezustandsschaltung 212 legt Steuersignale an die Steuereinrichtungen (SDC) 122 über den SDC-Steuerbus 210 und eine Gruppe von Steuerbus-Ansteuereinrichtungen und Empfänger 216 an und erhält Steuersignale von den Steuereinrichtungen (SDC) Die logische Datensteuerschaltung 214 erhält Steuersignale von den Steuereinrichtungen (SDC) 122 mittels des SDC-Steuerbus 210 und einer Gruppe von Datensteuerbus-Ansteuer- und Empfangseinrichtungen 218 und überträgt Steuersignale an die Steuereinrichtungen (SDC) Die logischen Schaltungen 212 und 214 werden nachstehend
Multiplexers (MUX) 226 angelegt. Der Ausgang de; Multiplexers 226 ist über eine Gruppe von Datenbus Ansteuereinrichtungen 228 mit dem Systemdatenbu 200 und über eine Gruppe von SDC-Datenbus-An Steuereinrichtungen 230 mit dem SDC-Datenbus 20( verbunden. Die Daten, die von dem zentralei Rechenwerksregister in der zentralen Recheneinhei 100 oder von dem Hauptspeicher 102 erhalten wordei sind, \cnnen über den Systemdatenbus 200 durch da Datenregister 220, den Multiplexer 226. die SDC-Daten bus-Ansteuereinrichtungen 230 und den SDC-Datenbu 206 zu den Steuereinrichtungen (SDC) 122 laufen Andererseits können Daten, ά'\2 von den Steuereinrich tungen (SDC) 122 erhalten werden und an dei SDC-Datenbus 206 anliegen, über das Datenregiste 220, den Multiplexer 226, die Datenbus-Ansteuerein richtungen 228 und den Systemdatenbus 200 zu de zentralen Recheneinheit 100 und dem Speicher 10; durchgelassen werden.
Der Ausgang des Multiplexers 226 ist mit einen sechzehn-stufigen binären Adressenhinweiszähler 23; verbunden. Der Adressenhinweiszähler 232 dient dazu um eine bestimmte Adresse in dem Speicher 10; festzulegen. Während einer Eingabeoperation stell diese Adresse die Adresse dar, in welche das nächst! Datenbyte zu speichern ist. das von dem SDC-Datenbu über die Steuereinrichtung SDMA läuft. Bei eine Ausgabeoperation enthält der Adressenhinweiszähle 232 die Adresse der nächsten Speicherstelle die in dei Systemdatenbus 200 auszulesen ist, von wo sie dam über die Steuereinrichtung SDMA zu dem SDC-Daten bus 206 durchläuft. Da der Adressenhinweiszäl.ier 23; sechzehn Stufen aufweist, und da nur acht Bits über dei Systemdatenbus zu einem bestimmten Zeitpunkt über tragen werden, um den Adressenhinweiszähler 232 zi laden, ist der Ausgang des Multiplexers 226 sowohl mi den unteren acht Stufen als auch mit den oberen ach Stufen des Adressenhinweiszählers 232 verbunden. Dii Datensteuerlogik 214 erzeugt ein Signal auf eine Leitung 234, um den Adressenhinweiszähler um eins fü jedes über die Steuereinrichtung SDMA übertragene Datenbyte weiterzuschalten. Die acht oberen brw höherwertigen Stufen des Adressenhinweiszählers sint über eine Gruppe von Adressenbus-Ansteuereinrich tungen 236 mit den acht höherwertigen Leitungen ii dem Systemadressenbus 202 verbunden. Die ach niedrigstwertigen Stufen des Adressenhinweiszähler sind über eine Gruppe von Adressenbusansteuereinrich tungen/Multiplexer 238 mit den acht niedrigstwertige!
Leitungen in dem Syslemadrcssenbus 202 verbunden.
Alle Steuereinrichtungen 106 für einen direkten Speicherzugriff und alle gemeinsam benutzten Steuereinrichtungen 108 für einen direkten Speicherzugriff können eine bestimmte Bitkombination in einer acht Bitadresse erkennen, die auf dem sechzehn Bitsystemadressenbus 202 anliegen. In Fig. 10A ist der Aufbau el· irs Adressenbytes gezeigt, das an dem Systemadressenbus 202 anliegt. Die drei höherwertigen Bits A7 bis /45 bezeichnen eine der Steuereinrichtungen 106 oder 108 für direkten Speicherzugriff. Da das Adressenbyte hierzu mit drei Bits versehen ist, kann das beschriebene System bis zu acht Steuereinrichtungen 106 und 108 für einen direkten Speicherzugriff haben, die mit dem Systembus 110 verbunden sind.
Die fünf niedrigstwertigen Bits des Adressenbytes werden auf verschiedene Weise in Abhängigkeit von den bestimmten Werten der Bits interpretiert. Wenn das adressenbus 202 anliegt. Die fünf niedrigstwertigen Leitungen des Systemadressenbus 202 sind mit einem Multiplexer 242 verbunden und der Ausgang des Multiplexers 242 ist über eine Gruppe von Ansteuereinrichtungen 244 für Registerauswählleitungen mit dem SDC-Adressenbus 208 verbunden, so daß die Adressenbits A 4 bis A 0 an die verschiedenen Steuereinrichtungen (SDC)YlT. angelegt werden können.
Die spezielle Steuereinrichtung (SDC) 122, die ausgewählt wird, und das spezielle Register in der ausgewählten Steuereinrichtung, das adressiert wird, ist durch die Anordnung der Adressenbits A4 bis AO bestimmt. In Fig. IOD ist der Adressenbytcaufbau /um Auswählen oder Adressieren des Zustandsregisters in einer der von einer gemeinsam benutzten Steuereinrichtung SDMA gesteuerten Steuereinrichtung (SDC) 122 dargestellt, das die Adresse 101 hat. Die Bits A 0 und A 1 legen fest, welche der Steuereinrichtungen (SDC) 122
I UtfWII Uli 1 UdS AU OUI L33ILI
des Adressenbytes null sind legt das Byte die Adresse des oberen Teils des Adressenhinweiszählers 232 in der Steuereinrichtung für einen direkten Speicherzugriff fest, die durch die Bits A 7 bis A 5 des Bytes bestimmt sind. Als Beispiel ist in I i g. IOB die Adressenbyteanordnung zum Adressieren des oberen Teils des Adressenhinweiszählers in der Steuereinrichtung für einen direkten Speicherzugriff bezeichnet, die die Adresse 5 festgelegt hat. Wenn beide Bits A 0 und A 4 des Adressenbytes eins sind und die Bits 4 1 bis A 3 null sind, dann leg: das Adressenbyte fest, daß de j Wort auf dem Systemdatenbus 200 in die untere Hälfte des Adressenhinweiszählers 232 zu leiten ist. In Fig. IOC ist der Aufbau des Adressenbytes zum Adressieren der unteren Hälfte des Adressenhinweiszählers für eine Einrichtung 5 für einen direkten Spcichcrzugriff dargestellt. Wenn die Bits A 4 und A 3 beide null sind, dann legen bei einem Eingangsbefehl die Bits A 7 bis A 5 die zu verwendende Steuereinrichtung für einen direkten Speicherzugriff fest, während die Bits A I und A 0 festlegen, welche der vier Steuereinrichtungen (SDC) zu adressieren ist. Dieser Aufbau ist in Fig. IOD für den Fall dargestellt, daß eine für einen direkten Speicherzugriff vorgesehene Einrichtung fünf durch Bits A 7 bis A 5 bestimmt ist.
In F i g. 2 weist jede Steuereinrichtung SDMA eine Adressenerkennungsschaltung 240 auf, und alle acht Bit-Adressenbytes, die auf den acht niedrigstwertigen Leitungen des Systemadressenbus 202 anliegen, werden an diese Adressenerkennungsschaltung angelegt. Jede Adressenerkennungsschaltung weist eine Schaltung auf, die vorher verdrahtet ist, um die Adresse der für einen direkten Speicherzugriff vorgesehenen Einrichtung zu erkennen. In der vorliegenden Beschreibung soll daher der Steuereinrichtung SDMA eine Adresse fünf, d. h. 101 zugewiesen werden; folglich ist die in F i g. 2 dargestellte Adressenerkennungsschaltung 230 entsprechend verdrahtet, um jedes der in Fig. 1OB bis 1OE dargestellten Adressenbytes zu erkennen und auf jedes davon anzusprechen. Sobald die Adressenerkennungsschaltung 240 ihre eigene Adresse erkennt, gibt sie Ausgangssignale ab, um die logische Folgezustandsschaltung 212 und die logische Datensteuerschaltung 214 entsprechend zu steuern.
Wie vorstehend ausgeführt, können bis zu 25 Registern zwischen den Steuereinrichtungen (SDC) 122 verteilt sein, und jedes Register kann durch ein Adressenbyte adressiert werden, das auf dem System-
gesetzt, daß die Steuereinrichtung SDMA nur vier Steuereinrichtungen (SDC)steuert, >ind das Vorhandensein von Nullen an Bitstellen A2 bis /4 4 legt die Tatsache fest, daß das Zustandsregister auszuwählen ist.
In Fig. 1OE ist der Aufbau eines Adressenbytes zum Auswählen eines bestimmten Befehlsregisters in einer Steuereinrichtung (SDC) dargestellt. Ein Bit eins an der Stelle A 3, wobei A 0, A 1, A 2 und A 4 alle null sind, legt fest, daß ein Befehlsregister auszuwählen ist und wird dann in der Steuereinrichtung SDC betätigt, welche vorher durch eine Adresse mit dem in Fig. IOD dargestellten Aufbau ausgewählt worden ist.
Jede gemeinsam benutzte Steuereinrichtung SDMA ist mit einer Unterbrechungs-Diskriminatoreinrichtung 246 zum Fühlen und Zuteilen einer Priorität versehen, um Anforderungen zu unterbrechen, die von den durch die Steuereinrichtung SDMA bedienten Steuereinrichtungen (SDC) 122 erhalten worden sind. Jede Steuereinrichtung SDC hat eine einzelne, bestimmte Leitung, welche von ihr über den SDC-Steuerbus 210 zu einem Eingang des Unterbrechungsdiskriminators verläuft. Ein Signal wird an diese Leitung angelegt, wenn die Steuereinrichtung SDC eine Unterbrechung fordert. Der Unterbrechungsdiskrimtnator 246 bestimmt, welche der vier Steuereinrichtungen SDC eine Unterbrechung gefordert hat, und gibt eine Zweibit-Adresse ab, welche die Steuereinrichtung SDC bestimmt. Diese Adresse wird an ein Adressenhalteglied 248 angelegt, wo sie gespeichert wird, und wird auch zurück zu der Steuereinrichtung SDCgesendet, um die Steuereinrichtung SDC aufzufordern, eine Anzeige ihres Zustandes abzugeben. Dieser Zustand wird dann in das Datenregister 220 geladen. Der Ausgang des Adressenhaitegiieds 248 wird an eine Eingangsgruppe von Adressenbus-Ansteuereinrichtungen/MultipIexer 238 zusammen mit der Adresse der Steuereinrichtung SDMA angelegt
Wie nachstehend noch im einzelnen ausgeführt wird, legt der Unterbrechungsdiskriminator auch ein Signal an die Folgezustandslogik an, und hierdurch wird von der Steuereinrichtung SDMA eine Unterbrechungsaufförderung über den Systemsteuerbus 204 an die Busleitereinrichtung 104 jedesmal dann abgegeben, wenn der SDC-Zustand in das Datenregister 220 eingegeben ist Wenn die Unterbrechungsaufforderung der Steuereinrichtung SDMA gewährt ist, laufen die SDAM-Adresse und der Ausgang des Adressenhaitegiieds 248 über die Adressenbus-Ansteuereinrichtungen/Multiplexer 238 zu dem Systemadressenbus 2OZ Gleichzeitig wird der SDC-Zustand von dem Datenregi-
sler 220 /.u dem Sieueradressenbus durchgelassen. Die Adresse und der Zustand werden in zwei Registern gespeichert, und die Buslcitereinrichtung 104 erzeugt einen Wiederanlaufvektor.
In Fig.3A und 3B welche so, wie in Fig.3C dargestellte angeordnet sind, sind logische Schaltungen mit den Hauptdatenflußwegen über die Steuereinrichtung (SDMA) 1C3 dargestellt. Der Systemdatenbus 200 und der SDC- Datenbus 206 verlaufen quer über den oberen Teil der Figuren, während der Systemadressenbus 202 quer über_den unteren Teil der Figuren verläuft. Die Datenbits DO bis Dl, die an dem Systemdatenbus 200 anliegen, werden an die B-Eingänge der Datenregister angelegt, die zwei Gruppen von Haltegliedern 300 und 301 jnjt MujNplexeingängen aufweisen. Die Datenbits 50 bis ST, die an den 5DC-Datenbus 206 anliegen, werden an die /^-Eingänge der Multiplexer300 und 301 angelegt. Das Signal DRlVESDCBUSwWd an Hen Aiitwähleingang Her beiden Multiplexer anpeletM Wenn das Signal DRIVE SDC BUS auf dem unteren logischen Pegel liegt, werden die /4-Ausgänge der Multiplexer ausgewählt, so daß die Daten auf dem Systemdatenbus 206 zu den Registerhaltegliedern durchgelassen werden und liegen an den Ausgängen mit den Ziffern 0 bis 3 der Multiplexer an. Wenn das Signal DRIVE SDC BUS auf dem hohen logischen Pegel ist. dann werden die ß-Eingänge der Multiplexer ausgewählt, so daß die Daten auf dem Systemdatenbus 200 in den Haltegliedern gespeichert werden und an den Ausgängen der Multiplexer anliegen. Die Eingangsdaten an den Multiplexern können zu den Haltegliedern nur bei Anliegen eines Signals mit niedrigem Pegel durchgelassen werden, das an einen Takteingang angelegt wird. Das Signal LD DATA REG wird an die Takteingänge der beiden Multiplexer angelegt. Die Ausgänge der Multiplexer 300 und 30t werden an die /^-Eingänge der zwei (?i7/4i?-Multiplexer 302 und 303 angelegt. Der 53-Eingang des QUAD-MUX303 erhält das Signal BUSY. Die übrigen B-Eingänge des £>L//4D-Multiplexers 303 sov/ie alle S-Eingänge des <?L//4D-Multiplexers 302 sind über einen Widerstand 304 mit einem Anschluß ■>■ V verbunden. Die β-Eingänge an den <?£X4D-Multiplexem 302 und 303 sind vorgesehen, um einen sedezimalen Zustandswert 80 zu erzeugen, wenn die Steuereinrichtung SDMA zu dem Zeitpunkt gesetzt ist, welchem es durch die zentrale Recheneinheit (CPU)adressiert wird.
Die Signale DISABLE BREQ und RFAD werden an die zwei Eingänge eines UND-Glieds 306 angelegt. Der Ausgang des UND-Glieds 306 läuft über einen Inverter 308, um das Signal ENABLE STEP zu werden. Der Ausgang des UND-Güeds 306 wird an einen Eingang eines NAND-Glieds 310 angelegt, welches als andere Eingänge die Signale STEP ON und SDMA PROBE enthält. Der Ausgang des NAND-Glieds 310 wird mit den Auswahleingängen der (?f7/4Z?-MultipIexer302 und 303 verbunden. Wenn der Ausgang des NAND-Glieds 310 auf niedrigem Pegel ist, dan:i werden die an den Ausgängen der Multiplexer 300 und 301 anliegenden Signale zu dem Ausgängen der <?iMD-MuItiplexer 302 und 303 durchgelassen. Wenn andererseits der Ausgang des NAND-Glieds 310 auf hohem Pegel ist, dann wird der Zustandswert 80 zu den Ausgängen der QUAD- Multiplexer 302 und 303 durchgelassen, wenn das Signal ßZZSFniedrigist.
Die Ausgänge der (HMD-Multiplexer 302 und 303 sind mit den Eingängen von acht NAND-Gliedern 311 verbunden. Die NAND-Glieder 311 entsprechen den SDC'-Datenbus-Anstcucrcinrichtungcn 230 und ihre Ausgänge sind mit dem 5DC-Datenbus 206 verbunden. Der Ausgang jedes NAND-Glieds ist über einen Widerstand 312 mit einem Anschluß + V verbunden. Die
-> NAND-Glieder 311 werden ferner durch das Signal DRIVESDC ßi/5 freigegeben, und wenn dies Signal auf hohem Pegel ist, wird der Ausgang der QtMD-MuItI-plexer 302 und 303 über die NAND-Glieder 311 zu dem SDC- Datenbus durchgelassen.
ίο Die Ausgänge von den (?L//4D-Multiplexern 302 und 303 werden auch an acht dreistufige Ansteuereinrichtungen 314 angelegt. Die Ansteuereinrichtungen 314 entsprechen den Datenbus-Ansteuereinrichtungen 228 und ihre Ausgänge sind mit dem Systemdatenbus 200
i". verbunden. Die Ansteuereinrichtungen 314 werden durch das Signal ENABLE DATA DRV freigegeben. Wenn dies Signal auf dem niedrigen Wert ist, wird der Ausgang von den (HMD-Multiplexern 302 und 303 fihrr die AnKtpiipriingseinrirhliing .314 zu dem Systemdatenbus 200 durchgelassen.
Ein UND-Glied 316 erhält die Signale SDMA PROBE, I/O WRITEund 5572. Wenn alle diese Signale auf hohem Pegel liegen, gibt das UND-Glied 316 ein Ausgangssignal mit niedrigem Pegel ab, um einen
2> Dekodierer 318 freizugeben. Der Dekodierer hat einen ersten Eingang DO, welcher das Signal RADR-O erhält, und einen zweiten Eingang D 1, welcher das Signal DC BUSY A erhält. Das am Eingang DO anliegende Signal wird behandelt, als hätte es den Binärwert 1, während
hi das am Eingang D 1 anliegende Signal behandelt wird, als hätte es den Binärwert 2. Wenn der Dekodierer 318 ein Steuer- oder Freigabesignal mit niedrigem Pegel von dem NAND-Glied 316 erhält, und das Signal DC BUSY A auf hohem Pegel ist, dann liegt ein Signal mit
r> niedrigem Pegel an dem 3- oder 2-Ausgang des Dekodierers in Abhängigkeit davon an, ob das Eingangssignal RADR-O auf hohem oder auf niedrigem Pegel ist. Der Dekodierer wird nur während des Intervalls freigegeben, während welcher die Steuerein-
4() richtung SDMA eine Adresse dekodiert, die eine der in Fig. 1OB und IOC dargestellten Anordnungen hat. Das Signal RADR-O wird von dem niedrigstwertigen Adressenbit erhalten, und wie vorher ausgeführt, legt fest, ob die untere oder die obere Hälfte des > Adressenhinweiszählers 232 zu laden ist. Der Adressenhinweiszähler ist in Fig. 3A dargestellt und weist vier vierstufige Binärzähler 320 bis 323 auf.
Jeder der Zähler 320 bis 323 hat vier Dateneingänge DO bis D3 mittels welcher ein Anfangszustand in die
>o Zähler eingegeben werden kann. Die Ausgänge von dem (?L//4D-Multiplexer302 werden mit den Dateneingängen der Zähler 320 und 322 verbunden, während die Ausgänge des QIMD-Multiplexers 303 mit den Dateneingängen der Zähler 321 und 323 verbunden
« werden. Die Zähler 320 bis 323 können Daten aufnehmen, die an ihre Dateneingänge nur dann angelegt werden, wenn die Zähler ein Signal mit niedrigem Pegel an einem mit Laden bezeichneten Eingang erhalten. Die Ladeeingänge der Zähler 320 und
bo 321 sind mittels einer Leitung 324 mit einem Ausgang 3 des Dekodierers 318 verbunden. Die Ladeeingänge der Zähler 322 und 323 sind mit einem Ausgangsanschluß 2 des Dekodierers 318 verbunden. Wenn daher der Dekodierer 318 freigegeben wird, befindet sich das
f>5 Signal DCBUSYA auf dem hohen Pegel, und das Signal RADR-O befindet sich auf hohem Pegel; das Ausgangssignal mit niedrigem Pegel auf der Leitung 324 gibt die Zähler 320 und 321 frei, so daß sie mit dem Wert geladen
Il
werden, der am Ausgang der QUAD- Multiplexer 302 und 303 anliegt. Wenn andererseits das Signal RADR-O auf niedrigem Pegel liegt, dann gibt ein Signal mit niedrigem Pegel auf der Leitung 326 Zähler 322 und 323 frei, so daß mit Daten von den Ausgängen der -> OtMD-Multiplexer 302 und 303 geladen werden.
Wenn die Zähler 320 bis 323 geladen worden sind, dann kann der in ihnen enthaltene Wert erhöht werden, indem ein Signal mit hohem Pegel an die mit UP bezeichneten Eingangsanschlüsse angelegt wird. Der L/P-AnschluB des Zählers j20 erhält das Signal END MEM OP FF. Der Zähler 320 hat einen Übertrag-Ausgangsanschluß, der mittels einer Leitung 328 mit dem L/P-Anschluß des Zählers 321 verbunden ist. In ähnlicher Weise sind die Übertragausgänge der Zähler r> 321 und 322 mit den UP-Eingängen der nächsten höherwertigen Zähler verbunden.
Die Zähler 320 und 323 sind Aufwärts-Abwärtszähler. Die Eingangsanschlüsse zum Abwärtszählen sind jedoch über einen Widerstand 330 mit einem Anschluß .'<i + V verbunden, so daß die Zähler niemals in der Abwärtsrichtung zählen. Das Signal SDMA RESET wird an einen Löscheingangsanschluß jeder der Zähler 320 bis 323 angelegt, und wenn dies Signal auf hohem Pegel ist, löscht es die Zähler. r>
Die Ausgänge von den vier Stufen des Zählers 320 werden an die ß-Eingänge eines Multiplexers 332 mit drei Zuständen angelegt. Die Ö-Eingänge eines Multiplexers 334 mit drei Zuständen sind so geschaltet, daß sie Signale von dem niedrigstwertigen und dem j< > höchstwertigen Ausgang des Zählers 321 und von den zwei niedrigstwertigen Ausgängen des Zählers 322 erhalten. Die zwei mittleren Ausgänge des Zählers 321 sind durch Leitungen 336 und 338 mit zwei Steuereinrichtungen mit drei Zuständen auf einem Plättchen 340 i> verbunden. Die zwei höchstwertigen Ausgänge des Zählers 322 sind mit zwei Steuereinrichtungen auf einem Plättchen 342 für Ansteuereinrichtungen mit drei Zuständen verbunden, während die vier Ausgänge des Zählers 323 mit vier Ansteuereinrichtungen auf einem Plättchen 344 für Steuereinrichtungen mit drei Zuständen verbunden sind. Das Signal INTSEQ EN FFwWd an die Auswähleingänge der Multiplexer 332 und 334 angelegt. Das Signal BUS GRANT wird an die Abtasteingänge der Multiplexer 332 und 334 sowie an 4ί die Freigabeeingänge der Steuereinrichtung 342 und 344 und einen Dekodierer 346 angelegt. Der Dekodierer 346 arbeitet auf die gleiche Weise wie der Dekodierer 318. Der Eingang DO des Dekodierers 346 ist mit dem logischen Nullpegel verbunden, und der Eingang D 1 ■>» erhält das Signal INT REQ. Der Nullausgang des Dekodierers 346 ist das Signal ENABLE DATA ADR, und er ist mittels einer Leitung 348 mit dem Freigabeeingang der Ansteuereinrichtung 340 verbunden. Der Dekodiererausgangsanschluß 2 ist mit dem ö Freigabeeingang eines Plättchens 350 für Ansteuereinrichtungen mit drei Zuständen verbunden.
Die Inhalte der Zähler 320 bis 323 können zu dem Systemadressenbus 202 zum Adressieren des Hauptspeichers durchgelassen werden. Wenn das Signal INT t>o SEQ EN FF auf hohem Pegel ist, und wenn das Signal BUS GRANT auf den niedrigen Pegel abfällt, dann werden die an die ß-Eingänge der Multiplexer 332 und 334 angelegten Signale zu dem Systemadressenbus 202 durchgelassen^um dadurch die Adressenbits A 0 bis A 4 b5 und A 7 bis A 9 zu erhalten. Gleichzeitig gibt das Signal BUS GRANT die Ansteuereinrichtungen 342 und 344 frei, so daß die Inhalte der Zähler 322 und 323 als die Bits A tO bis A 15 zu dem Systemadressenbus durchgelassen werden. Das Signal ElJS GRANTgibt den Dekodierer 346 frei, und da sich das Signal INT REQ auf einen niedrigen Pegel befindet, liegt ein Signal mit niedrigem Pegel auf einer Leitung 348 an, um die Ansteuereinrichtung 340 freizugeben. Dies läßt die Signale auf den Leitungen 336 und_338 zjjjJem Systemadressenbus als das Adressenbit ÄTund A 6 durch.
Wenn eine Steuereinrichtung (SDC) 122 eine Unterbrechungsanforderung macht bzw. abgibt, muß auf dem Systemadressenbus 202 eine Identifizierung der entsprechenden Steuereinrichtung SDC, welche die Anforderung abgibt, sowie eine Identifizierung der Steuereinrichtung SDMA angelegt werden, welche diese Steuereinrichtung SDCbedient. Die Adresse ist im wesentlichen eine 8Bit-Adresse, die auf den niedrigerwertigen Leitungen A 7 bis A 0 des Systemadressenbus 202 anliegt und den in Fig. IOD dargestellten Aufbau hat.
Die Bits A 5 bis A 7 der Adresse kennzeichnen die genau festgelegte Steuereinrichtung SDMA und werden durch die tatsächliche Lage der SDMA-Karte bestimmt. Da angenommen wird, daß die in Fig. 3A, 3B dargestellte Steuereinrichtung SDMA die Kenr.zeichnungsziffer 5 hat, sollten die Bits A 7 bis A 5 den Wert 101 haben. In Fig. 3A ist der Eingang A\ des Multiplexers 334 über einen Widerstand mit einem Anschluß + Vverbunden. In F i g. 3C sind die Ansteuereinrichtungen zum Ansteuern von Adressenleitungen A 5 und A 6 mit einem Anschluß + V bzw. Erde verbunden.
Wenn eine Steuereinrichtung (SDC) 122 der Steuereinrichtung SDMA signalisiert, daß sie eine Unterbrechungsanforderung vornimmt, dekodieren die SDMA-Schaltungen die Anforderung, wie nachstehend beschrieben wird, um zwei binäre Bits zu erzeugen, die die Zahl der Steuereinrichtung 5DC kennzeichnen. Diese Kennzeichnungsbits IDN-O und IDN-i werden zu der Steuereinrichtung SDC zurückgeleitet, um zu fordern, daß dieser Zustand in das Datenregister der Steuereinrichtung SDMA zu laden ist. Die Bits IDN-O und /DN-I werden an die Eingänge A 0 bzw. A 1 des Multiplexers 332 angelegt. Die Eingänge A 2 und A 3 des Multiplexers 332 und die Eingänge A 0, A 2 und .' 3 des Multiplexers 334 sind alle mit Erde verbunden. Wenn eine Unterbrechung von der Steuereinrichtung SDMA erkannt wird, fällt das Signal INTSEQ EN FF auf den niedrigen Pegel ab, um die Α-Eingänge der Multiplexer 332 und 334 zu wählen. Auch in F i g. 3b steigt das Signal INT REG auf den hohen Pegel an, wenn die Unterbrechung erkannt wird, und dies bedingt dann, daß der Dekodierer 346 ein Ausgangssignal mit niedrigem Pegei auf einer Leitung 355 erzeugt, wenn der Dekodierer freigegeben sein sollte. Wenn das Signal BUS GRANT auf den niedrigen Pegel abfällt, dann werden die y4-Eingänge der Multiplexer 332 und 334 zu dem Systemadressenbus 20.2 durchgelassen. Das Signal BUS GRANT gibt auch den Dekodierer 346 frei, und ein Ausgangssignal mit niedrigem Pegel auf der Leitung 351 gibt die Ansteuerungseinrichtung 350 frei, um so den Binärwert 01 auf Adressenbusleitungen A und A 5S anzulegen. Die Signale, die an die niedrigstwertigen acht Leitungen des Systemadressenbus angelegt sind, stellen auf diese Weise den Wert lOlOOOXX dar, wobei die Buchstaben X durch die Bits /DN-O und iDN-i festgelegt sind. Gleichzeitig wird, wie nachstehend im einzelnen noch besc.irieben wird, der Zustand der Steuereinrichtung SDCüber Ansteuereinrichtungen
314 zu dem Systemdatenbus durchgehen.
In Fig.3B sind die Schaltungen zum Erzeugen bestimmter Speichersteuersignale dargestellt, wenn eine Adresse in den Zählern 320 bis 323 an den Systemadressgnbus 202 angelegt wird. Gleichzeitig fällt das Signal BUS GRANTaui den niedrigen Pegel ab, um die Adresse auf dem Adressenbus anzutasten; sie gibt den Dekodierer 346 frei und das Signal ENABLE DATA ADR fällt auf den niedrigen Pegel ab. Zwei Ansteuereinrich tungen auf dem Plättchen 340 erhalten die Signale BUS REQ WRITEbVM. MEM OPwenn die Adresse auf dem Adressenbus abgetastet wird, werden gleichzeitig die Steuereinrichtungen abgetastet, um die Speichersteuersignale MEM START und WRITE zu erzeugen. Die letzteren Signale werden an die Speichersteuerun- is gen über den Systemsteuerbus 204 angelegt, damit der Speicher eine Lese- oder Schreiboperation durchführt.
In Fig.4 sind die Datenerkennungsschaltungen und die Wege dargestellt, denen eine Adresse beim Durchlauf durch die Steuereinrichtung SDMA von dem Sy5tefnäuressenbüS^02 zu dem oöC-Adressenbus 208 folgt Adressenbits A 1 bis A 4 laufen über eine Gruppe von Invertern 400 bis 404, deren Ausgänge mit den /4-Eingängen eines Multiplexers 406 verbunden sind. Der Abtasteingang des Multiplexers 406 ist mit Erde verbunden, und der Wähleingang erhält das Signal INT SEQ EN FF. Wenn das Signal ENTSEQ SV FF auf niedrigem Pegel ist, werden die Adressenbits A 1 bis A 4 über die Inverter 400 bis 404 und den Multiplexer 406 zu dem SDC-Adressenbus 208 durchgelassen. Ein UND- jo Glied 405 erhält den Ausgang des Inverters 400 und das Signal INTSEQ EN FF; wenn folglich die Bits A 1 bis A 4 über den Multiplexer 406 durchgelassen werden, wird das Signal A 0 über das UND-Glied 405 und das NOR-Glied 407 zu dem 5DC-Adressenbus durchgelassen.
Ein NAND-Glied 408 ist vorgesehen, um die Adresse der Steuereinrichtung SDMA zu erkennen, wenn diese Adresse an dem Systemadressenbus 202 anliegt. Da angenommen wird, daß die gegenwärtige Steuereinrichtung SDMA mit_einer Adresse 5 bezeichnet ist, werden Adressenbits A 7 und A 55 unmittelbar an das NAND-Glied 408 angelegt, während das Adressenbit A 65 über einen Inverter 410 läuft, bevor es an das NAND-Glied 408 angelegt wird. Wenn die System- 4r> adressenbus-Bits A 7 bis A 55den Wert 101 haben, gibt das NAND-Glied 408 ein Ausgangssignal mit hohem Pegel ab, das einen Eingang d»;r NAND-Glieder 412, 414 und 416 freigibt. In der Praxis können die Adressenerkennungsschaltungen aller Steuereinrich- so tungen SDMA identisch sein, und die Lage der SDMA-Karte sowie die rückseitige Verdrahtung können dazu verwendet werden, genau zu bestimmen, welche Adresse von der Steuereinrichtung SDMA erkannt wird.
Die zentrale Recheneinheit legt ein Signal CPU SYNC an den Systemsteuerbus etwa zu der Zeit an, zu welcher eine Adresse an den Systemadressenbus angelegt wird. Das Signal CPU SYNC läuft über einen Inverter 418 und wird an einen zweiten Eingang eines mi NAND-Glieds 412 angelegt. Das Signal I/O RD oder WR liegt auf einem hohen Pegel, wenn ein Eingangsoder ein Ausgangsbefehl an dem Systemsteuerbus anliegt. Das Signal I/O RD oder WR wird an einen weiteren Eingang eines NAND-Glieds 412 angelegt und μ wird auch an einen Eingang eines NAND-Glieds 414, eines NAN D-Glieds 420 und den Rückselzeingang eines D-Flip-Flops 422 angelegt. Das NAND-Glied 412 erhält auch den Taktimpuls ΦIA Wenn infolgedessen ein Eingang oder ein Ausgangsbefehl an dem Systemsteuerbus vorhanden ist und die Adresse auf dem Systemadressenbus die der Steuereinrichtung SDMA ist, gibt das NAND-Glied 412 ein Ausgangssignal mit niedrigem Pegel ab, welches an den Setzeingang eines Flip-Flops 424 angelegt wird. Dies setzt das Flip-Flop, so daß das Signal GOFF auf einer Ausgangsleitung 426 auf den hohen Pegel ansteigt Das Signal aui der Leitung 426 wird über einen Inverter 428 durchgelassen, um das Signal NOT READY zu erhalten. Das Signal NOl READYwird zu der zentralen Recheneinheit über den Systemsteuerbus 204 zurückgeleitet, um eine Ausführung des Befehls zu stoppen und um einen Wartezustand einzuleiten, während die Steuereinrichtung SDMA ihre Aufgabe durchführt
Der Ausgang des NAND-Glieds 412 mit niedrigem Pegel läuft über einen Inverter 436 und wird an den Takteingang eines Flip-Flops 422 angelegt Ein NOR-Glied 438 erhält die Signale NA VAIL und INTSEQ £Λ FF und sein Ausgang ist mii Eingang D des Fiip-Fiops 422 verbunden. Wenn die Steuereinrichtung SDMA den Befehl ausführen kann, liegt der Ausgang des NOR-Glieds 438 auf niedrigem Pegel, und das Signal von dem Inverter 436 stellt sicher, daß das Flip-Flop 422 zurückgesetzt wird. Dies bringt das Signal BUSY auf den hohen Wert und verhindert eine Besetztzustandsanzeige, die von der Steuereinrichtung SDMA erzeugt würde. Sollte die Steuereinrichtung SDMA besetzt sein, dann befindet sich der Eingang Ddes Flip-Flops 422 auf einem hohen Pegel, und der Ausgang des Inverters 436 mit einem hohen Pegel setzt das Flip-Flop, das dann das Signal BUSY auf den niedrigen Pegel bringt um den Besetztzustand zu schaffen. Gleichzeitig wird der Setzausgang des Flip-Flops 422 über die Leitung 440 an ein NAND-Glied442 angelegt.
Der Ausgang des Inverters 436 mit hohem Pegel wird über ein NOR-Glied 444 zu dem Rücksetzeingang eines Flip-Flops 446 durchgelassen. Der Rücksetzausgang dieses Flip-Flops ist mit einem Eingang eines NOR-Glieds 448 verbunden, so daß das Flip-Flop ein Ausgangssignal über das NOR-Glied nur dann erzeugen kann, wenn das Flip-Flop zurückgesetzt ist. Der Ausgang des NOR-Glieds 448 ist das Signal STEP ON. Dies Signal läuft über einen Inverter 450, um das Signal STEP ON zu werden.
Ein NAND-Glied 452 ist vorgesehen, um zu erkennen, daß eine Adresse auf dem Systemadressenbus 202 festlegt, daß der Adressenhinweiszähler 232 zu laden ist. Das NAND-Glied 452 ist mit den Ausgängen der inverter 401 bis 403 und durch einen Inverter 411 mit dem Ausgang eines Inverters 404 verbunden. Das NAND-Glied 452 gibt ein Ausgangssignal mit hohem Pegel ab, wenn die Bits A 1 bis A 3 der Adresse alle null und das Bit A 4 eins ist. Auf diese Weise erkennt es dann eine der in F i g. 10B und 1OC dargestellten Adressenanordnungen. Der Ausgang des NAND-Glieds 452 wird an ein NAND-Glied 414 angelegt, welches ferner die Signale SDMA ADR und I/O RDoder WR erhält. Das NAND-Glied 414 gibt dann ein Ausgangssignal mit niedrigem Pegel bei einem Eingang oder einem Ausgangsbefehl ab, wenn die Adresse auf dem Systemadressenbus 202 diese spezielle Steuereinrichtung SDMA und ferner die Adresse des Adressenhinweiszählcrs festlegt. Das Ausgangssignal von dem NAND-Glied 414 mit niedrigem Pegel läuft über einen Inverter 454, um das Signal SDMA PROBEzu werden. Das Abtastsignal wird an F i g. 3Λ angelegt, wo es den
Dekocierer 318 freigibt, der das Laden des Adressenhinweiszählers steuert, und steuert weiterhin dje Multiplexer 30Ji und 303, um die Daten auf dem Systemdatenbus 200 üb;r die Multiplexer zu dem Adressenhinweiszähler durchzuschalten.
Der Ausgang des NAND-Glieds 414 mit niedrigem Pegel wird an ein NOR-Glied 448 angelegt, um das Signal STEP ON zu erzeugen. Außerdem ist der Ausgang des NAND-Glieds 414 mit einem Eingang eines NAND-Glieds 420 verbunden. Das NAND-Glied 420 wird ferner durch den Ausgang eines NAND-Glieds 416 während einer Leseoperation erregt, wenn die Adressenbits A3 und A4 beide null sind. Das NAND-Glied 416 ist mit einem Inverter 417 verbunden, um das Signal SELECTION zu erzeugen, wenn die zentrale Recheneinheit einen Eingabebefehl durchführt, um eine Steuereinrichtung SDCauszuwählen und in das Rechenwerkregister den Zustand der ausgewählten Steuereinrichtung SDC einzulesen. Die Ausgänge der Inverter 403 und 404 sind mit den Eingängen eines NAND-Glieds 458 verbunden, und der Ausgang des NAND-Glieds 458 wird an das NAND-Glied 416 angelegt Das NAND-Glied 416 erhält weiter das Signal I/O READ, und wird durch den Ausgang des NAND-Glieds 408 freigegeben, wenn die SDMA-Adresse erkannt wird.
Wenn dies außerdem durch die Ausgänge der NAND-Glieder 414 und 416 bedingt ist, erhält das NAND-Glied 420 die Signale D SACK und I/O RD OR WR. Der Ausgang des NAND-Glieds 420 wird noch an einen weiteren Eingangeines NOR-Glieds448angelegt, um das Signal STEP ON zu erzeugen.
Das Signal JiNABLE SALT X wird unmittelbar an 'Je.i Eingang K eines Flip-Fiops 446 angelegt und läuft über einen Inverter 460 zu dem Eingang / des Flip-Flops. Wenn das Signal ENABLE SALT X auf niedrigem Pegel ist, wird das Flip-Flop 446 gesetzt, wenn das Taktsignal Φ1Α auf den hohen Pegel geht. Wenn das Signal ENABLE SALT X auf hohem Pegel ist, hat das Taktsignal an dem Flip-Flop keine Wirkung.
Wenn eine Steuereinrichtung (SDC) 122 eine Unterbrechung fordert, wird dies an die Steuereinrichtung SDMA angelegt, und wenn die Steuereinrichtung SDMA sonst nicht besetzt ist, wird die Unterbrechungsforderung gewährt. Die Steuereinrichtung SDMA erzeugt die Adresse der bekannten Steuereinrichtung (SDC) 122 und legt sie über den SDC-Adressenbus zurück an, um die Steuereinrichtung SDCauszuwählen. In F i g. 4 stellen die Signale IDNQ und IDN1 die zwei Bits der erzeugten SDC-Adresse dar. Das Signal IDNO wird an einen Eingang eines UND-Glieds 462 angelegt, während das Signal IDN \ an den Eingang BO des (?t/4D-Multiplexers 406 angelegt wird. Das Signal INT SEQ EN FF liegt auf einem hohen Pegel, wenn die Steuereinrichtung SDMA eine Unterbrechungsforderung erkannt hat. Das Signal INTSEQ EN FF wird an den Eingang B1 und den Wählsteuereingang des QUAD Multiplexers 406 sowie an den zweiten Eingang des UND-Glieds 462 angelegt. Der Ausgang des UND-Glieds 462 läuft über ein NOR-Glied 464, um das niedrigstwertige Adressenbit zu werden. Die Eingänge S3 und 52 sowie der Abtasteingang des QUAD-MvAüplexers 406 sind alle mit Erdpotential verbunden. Sobald infolgedessen das Signal INTSEQ EN FFauf den hohen Pegel ansteigt, wählt es die ß-Eingänge des QUAD-Multiplexers 406, um sie an den 5DC-Adressenbus 208 anzulegen. Auf diese Weise ist auf dem Adressenbus eine Leitung mit der Anordnung 00IA-X festgelegt.
wobei die Buchstaben X Nullen oder Einsen sein können und die Adresse der unterbrechenden Steuereinrichtung SDC darstellen. Das Bit 1 in RSL3 zeigt der Steuereinrichtung SDC an, seinen Unterbrechungszustand zu melden, der zu dem Wählstand entgegengesetzt ist Die unterbrechende Steuereinrichtung SDC erkennt dies an und spricht auf diese Adresse an, indem sie einen unterbrochenen Zustand auf dem SPC-Datenbus festlegt
ίο In Fig.5 sind die Einzelheiten des Hauptteils der logischen Folgezustandsschaltungen 212 dargestellt, das Signal DATA BUS IN wird von dem Systemsteuerbus 204 erhalten und läuft über einen Inverter 500, um das Signal READ PULSE zu werden. Das Signal DATA BUS IN wird mittels der zentralen Recheneinheit 100 erzeugt, und fällt auf den niedrigen Pegel bei einem Taktimpuls Φ3Α ab, wenn ein Eingabebefehl erzeugt wird, um den Einrichtungen die mit dem Systembus verbunden sind, mitzuteilen, daß die zentrale Recheneinheit bereit ist Daten von dem Rechenwerksregister bei irgendwelchen Daten anzunehmen, die auf dem Systemdatenbus festgelegt sind. Das Signal READ PULSE läuft über ein NOR-Glied 504 und wird an die Eingänge D 7 und P 3 eines Multiplexers 506 angelegt Das Signal WRITE PULSE wird ebenfalls von dem Systemsteuerbus erhalten und läuft über Inverter 508 und das NOR-Glied 504 zu den Eingängen P 7 und P 3 des Multiplexers 506. Das Signal WRITE PULSE wird von der zentralen Recheneinheit während der Aus-
jo gangsbefehle erzeugt, um mit dem Systembus verbundenen Einrichtungen bekanntzugeben, daß Daten vorhanden und für ein Abtasten bereit sind. Der Multiplexer 506 erhält das Signal ENABLESTEPan seinem Eingang Dft. das Signal D FACK an seinem Eingang D2, das
J5 Signal DSACK an seinem Eingang Pl und das Signal GO FF an seinen beiden Eingängen PO und P 4. Das Signal STEP ONwird an den Eingang P 5 sowie an den Auswahleingang A 2 des Multiplexers 506 angelegt. Die Eingänge A 0 und AEaes Multiplexers 506 sind mit den Ausgängen der ersten und zweiten Stufe eines Modulo-4-Binärzählers 510 verbunden. Der Abtastimpuls des Multiplexers 506 wird mit Erde verbunden, und der Ausgang des Multiplexers ist durch eine. Leitung 512 mit den Anschlüssen CEP und CET des Zählers 510
4r> verbunden.
Der Multiplexer 506 spricht auf die Signalkombinationen an seinen Wähleingängen AObK A2 an, um einen dieser Dateneingänge PO bis P7 mit der Ausgangsleitung 512 zu verbinden. Wenn beispielsweise die an den
w Eingängen A 0 bis A 2 angelegten Signale alle auf dem niedrigen Pegel liegen, dann ist der Eingang PO des Multiplexers mit der Ausgangsleitung verbunden. Wenn die Eingangssignale A 2 und A 1 beide auf niedrigem Pegel liegen und das Signal A 0 auf hohem Pegel liegt,
η dann ist der Eingang D4 des Multiplexers mit dessen Ausgangsleitung verbunden.
Der Binärzähler 510 hat vier Dateneingänge, welche nicht benutzt sind, so daß sein Ladeanschluß über einen Widerstand mit dem Anschluß + V verbunden ist. Der
ho Zähler wird durch ein positiv werdendes Taktsignal ΦIA weitergeschaltet, wenn das Signal auf der Leitung 512 zu dem Zeitpunkt auf hohem Pegel ist, wenn der Taktimpuls anliegt. Der Zähler hat vier Binärstufen, von welchen nur zwei in dem vorliegenden Anwendungsfall
b5 verwendet sind. Der Zähler kann dadurch zurückgesetzt werden, daß ein Signal SDMA RESETmH niedrigem Pegel an seinen Löscheingang angelegt wird.
Die Stufen 0 und I des Binärzählers 510 sind mit den
Eingängen DO bzw. Dl eines Dekodierers 514 verbunden. Der Dekodierer 514 ist dauernd freigegeben, da sein Freigabeeingang mit Erde verbunden ist; folglich erzeugt der Dekodierer ständig an einem seiner Ausgänge ein Signal, das den Wert anzeigt, der in dem Binärzähler 510 gespeichert ist, wenn dieser Wert zwischen eins und drei Hegt Der Zähler 510 weist normalerweise einen Zählerstand 0 auf; folglich gibt der Dekodierer 514 normalerweise ein Signal mit niedrigem Pegel an seinem Ausgang 0 ab, welcher nicht verwendet wird. Die Ausgangsanschlüsse 3, 2 und 1 des Dekodierers sind Ober Inverter 516, 518 bzw. 520 angeschlossen, um die Signale SST3, SST2 und 55Tl zu erzeugen.
Der untere Teil der Fig.5 zeigt die Hauptschaltungen zum Einleiten und Steuern einer Unterbrechungsfolge. Diese Schaltungen weisen zwei Multiplexer 522 und 524, einen Prioritätskodierer 526, zwei JK-FWp-Flops 528 und 530, drei D-FIip-Flops 532, 534 und 536 sowie einen Dekodierer 538 auf. Der Dekodierer 538 gibt die Signale /5T0, /5Tl und /5T2 ab, weiche den Zustand der Steuereinrichtung SDMA während einer Unterbrechungsfolge anzeigen. Das Signal /5T2 läuft über einen Inverter 540, um das Signal /5T2 zu schaffen.
Das Flip-Flop 532 ist das Flip-Flop für eine Unterbrechungsfolgenfreigabe. Ef wird gesetzt, damit es auf eine Unterbrechungsanforderung von einer Steuereinrichtung SDC anspricht, vorausgesetzt, daß die Steuereinrichtung SDMA sonst nicht belegt ist. Diese Bedingungen werden durch ein NAND-Glied 542 festgelegt Die S.ona!e D SACK und DR LD FFwerden an ein NOR-Glied 544 angelegt, »nd der Ausgang des NOR-Glieds wird an einen Eingang des NAND-Glieds 542 angelegt Der Ausgang des Np^^iieds 544 ist das Signal NAVAIL Das Signal GÖFF wird an einen zweiten Eingang des NAND-Glieds 542 angelegt, und ein dritter Eingang erhält das Taktsignal Φ ZA.
Der Ausgang GS des Prioritätskodierers 526 läuft über einen Inverter 546 und wird an den vierten Eingang eines NAND-Glieds 542 angelegt.
Der Prioritätskodierer 526 hat acht Eingänge DO bis Dl wobei die Eingänge D4 bis Dl inaktiv und mi·, einem Anschluß + V verbunden sind. Jeder der Dateneingänge DO bis D3 ist mit einer Leitung verbunden, welche über den SDC-Steuerbus zu einer 4r> bestimmten Steuereinrichtung SDC verläuft. Die Signa-Ie INTREQO, !NTREQt, INTREQ2 und INTREQ3 werden von den Steuereinrichtungen SDC122 erhalten, welche die Einrichtungsziffer 0, I, 2 bzw. 3 zugeordnet sind. Der Prioritätskodierer 526 wird durch das Signal w /STO auf einer Leitung 552 freigegeben. Dies Signal wird von dem Dekodierer 538 erhalten und liegt auf einem niedrigen Pegel, um den Prioritätskodierer jedesmal dann freizugeben, wenn sich die Steuereinrichtung SDMA in einem Zustand befindet, um eine Unterbrechungsanforderung anzunehmen. Der Prioritätskodierer 526 nimmt ein Signal an einem seiner Eingänge DO bis D3 an, und in Abhängigkeit davon, welcher Eingangsanschluß aktiv ist, wird ein 2 Bitbinärwert an seinem Ausgang abgegeben, der der Zahl w entspricht, die der Steuereinrichtung SDC zugeordnet ist, welche die Unterbrechungsanforderung gemacht hat. Der Ausgang »1« des Kodierers ist mit dem Eingang Deines Flip-Flops 534 verbunden, während der Ausgang »null« des Kodierers mit dem Eingang Deines μ weiteren Flip-Flops 536 verbunden ist.
Der Prioritätskodierer hat einen Ausgang GS, der immer zu dem Zeitpunkt wirksam ist, wenn der Kodierer ein Unterbrechungsaufforderungssignal erhält, vorausgesetzt, daß der Kodierereingang El auf niedrigem Pegel ist Der Ausgang des Kodierers läuft über einen Inverter 546 und konditioniert das NAND-Glied 542. Wenn die Steuereinrichtung SDAM sonst in einem Zustand ist, um eine Unterbrechung auszuführen, gibt das NAND-Glied 542 ein Ausgangssignal mit niedrigem Pegel an ein gesetztes Flip-Flop 532 ab. Der Setzeingang des Flip-Flops 532 ist mit den Takteingängen von Flip-Flops 534 und 536 verbunden. Wenn das Flip-Flop 532 gesetzt ist, setzt das Signal auf einer Leitung 554 Flip-Flops 534 und 536 entsprechend den zwei Datenausgängen von dem Hauptkodierer 526. Hieraus ist zu ersehen, daß die Flip-Flops 534 und 536 cem Adressenhalteglied 248 entsprechen. Der Ausgang des Flip-Flops 534 ist das Signal IDN1 auf einer Leitung 556 und der Ausgang des Flip-Flops 536 ist das Signal /DTVO auf der Leitung 558.
Multiplexer 522 und 524 entsprechen einander, so daß sie jeweils einen Abtasteingang, an dem das Taktsignal Φ 2AS anliegt, vier Dateneingänge Du bis D3, weiche wahlweise über den Multiplexerausgang durchgeschaltet werden können, und zwei Adressiereingänge A 0 und A1 haben, um zu bestimmen, welcher der Dateneingänge zu dem Ausgang durchzuschalten ist Dateneingänge DO, Dl und D3 des Multiplexers 522 sind mit dem logischen Nullpegel verbunden, während der Eingang D 2 das Signal BUS GRANTEDerhält Der Multiplexer 524 erhält das Signal BUS GRANTED an seinem Eingang D3, das Signal BUS GRANTED an seinem Eingang D2, das Signal DSACK an seinem Eingang D1 und das Signal INTSEQ EN FFan seinem Eingang DO. Dies letztere Signal wird von dem Flip-Flop 554 für eine Freigabe der Unterbrechungsfclge erhalten und steigt auf den hohen Pegel an, wenn eine Unterbrechung erkannt wird. Der Ausgang des Multiplexers 524 ist mit den Takteingängen der Flip-Flops 528 und 530 verbunden, welche als ein zweistufiger Zähler wirken. De> Eingang / des Flip-Flops 528 ist mit dem Anschluß + V verbunden, während der Eingang K mit Erde verbunden ist. Die Setz- und Rücksetzausgänge des Flip-Flops 528 sind mit den Eingängen / und K des Flip-Flops 530 verbunden. Der Setzausgang des Flip-Flops 530 ist mit dem Eingang D1 des Dekodierers 538 und mit den Eingängen A 1 der Multiplexer 522 und 524 verbunden. Der Setzausgang des Flip-Flops 528 ist mit dem Eingang DO des Dekodierers 538 und mit dem Eingang A 0 der Multiplexer 524 verbunden.
Wenn das Flip-Flop 532 für eine Unterbrechungsfreigabe gesetzt ist, dann wird im Anschluß an das Taktsignal Φ 2 das Signal von dem Flip-Flop über den Multiplexer 524 abgetastet, um das FlipFlop 528 zu setzen. Der Ausgang von dem Flip-Flop 528 gibt die Eingänge A 0 der Multiplexer 522 und 524 frei, so daß sie nunmehr auf ein Signal mit hohem Pegel an ihren Eingängen Dl ansprechen können. Außerdem gibt der Ausgang des Flip-Flops 528 den Eingang DO des Dekodierers 538 frei, und der Dekodierer erzeugt das Ausgangssignal /STl mit niedrigem Pegel. Gleichzeitig steigt das Signal /STO auf den hohen Pegel an und schaltet den Prioritätskodierer 526 ab, so daß er keine weitere Unterbrechungsanforderung annehmen kann.
Während des Signals /STl legen die Schaltungen der Fig.4 die Adresse der unterbrechenden Steuereinrichtung (SDC) 122 an die Steuereinrichtng SDC zurück. Wie im folgenden ausgeführt wird, wirkt das in Fig. 8 erzeugte Signal SALTmh diesem Signal zusammen, um
die Steuereinrichtung SDC auszuwählen, deren Unterbrechung durch die Priorität gewährt wird. Die Steuereinrichtung SDCspricht auf ein Signal SACK an, wie nachfolgend beschrieben wird, welches seinerseits zu einem Signal DSACK führt, das auf den hohen Pegel ansteigt. Bei dem nächsten Taktimpuls Φ 2ASdurchläuft das Signal DSACK den Multiplexer 524, um das Flip-Flop 528 rückzusetzen und das Flip-Flop 530 zu setzen. Zu diesem Zeitpunkt fällt die Leitung 57ö auf den niedrigen Pegel ab und die Leitung 572 steigt auf den hohen Pegel an, so daß auf diese Weise die Eingänge A 1 an den Multiplexer^ 522 und 524 und der Eingang D1 an dem Dekodierer 538 freigegeben werden. Wenn der Eingang Dl hoch und der Eingang DO niedrig ist, beendet der Dekodierer 538 das Signal /STl mit niedrigem Pegel und das Signal /ST2 fällt auf den niedrigen Pegel ab. Während des Intervalls des Signals /ST2 gibt die Steuereinrichtung SDMA ein Signal FALT an die ausgewählte Steuereinrichtung SDC ab. Die Steuereinrichtung SDCspricht auf ein Signal FACK (Fig.6) an, um eine Unierbrechungsanforderung von der Steuereinrichtung SDMA an der Busleitereinrichtung zu erzeugen, und um den SDC-Zustar.d in das SDMA- Datenregister zu laden. Wenn der Steuereinrichtung SDMA Zugriff zu dem Bus gewährt wird, steigt das Signal BUS GRANTED auf den hohen Pegel an. Bei dem nächstfolgenden Taktimpuls Φ 2A wird das Signal BUS GRANTED über den Multiplexer 524 abgetastet, um das Flip-Flop 528 zu setzen. Gleichzeitig durchläuft das Signal BUS GRANTED den Multiplexer 522, um das Flip-Flop 532 zur Freigabe der Unterbrechungsfolge rückzusetzen.
Wonn die Flip-Flops 528 und 530 gesetzt sind, sind die Signale auf den Leitungen 570 und 572 beide auf hohem Pegel, und der Dekodierer 538 gibt kein Ausgangssignal ab. Die Signale auf den Leitungen 570 und 572 wählen die Eingänge D 3 der Multiplexer 522 und 524. Nachdem die Zustandsinformation über den Systemdatenbus übertragen worden ist, steigt das Signal BUS GRANTED auf den hohen Pegel an. Bei dem nächsten Taktimpuls Φ 2 wird das Signal BUS GRANTED über den Multiplexer 524 abgetastet und setzt die Flip-Flops 528 und 530 zurück. Zu diesem Zeitpunkt gibt der Dekodierer 538 wieder das Signal /STO ab, um dadurch den Prioritätskodierer 526 freizugeben, so daß er eine weitere Unterbrechungsanforderung annehmen kann.
In Fi g. 6 bis 8 sind einige der logischen Schallungen in der Datensteuerlogik 214 sowie einige der Ansteuereinrichtungen und Empfänger dargestellt, die auf den Systemsteuerbus 204 und den SDC-Steuerbus 210 ansprechen und mit diesen verbunden sind. Diese Schaltungen werden nunmehr kurz beschrieben. Ihre Arbeitsweise wird ganz verständlich, wenn verschiedene Operationsfolgen im Anschluß beschrieben werden.
In Fig. 6 wird das Signal FACK von dem SDC-Steuerbus erhalten und wird mittels eines Inverters 600 invertiert. Der Ausgang des Inverters 600 ist das Signal D FACK welches an einen Eingang von zwei UND-Gliedern 604 und 606 angelegt wird. Das Signal /ST2 wird an einen Eingang eines NOR-Glieds 608 angelegt und der Ausgang des NOR-Glieds 608 ist mit einem zweiten Eingang eines UND-Glieds 604 verbunden.
Das Signal INPUT wird von dem Systemsteuerbus 204 erhalten und an eine Ansteuereinrichtung mit drei Zuständen auf einem Logikplättchen 610 angelegt. Das Signal INPUT ist wirksam und fä!lt auf den niedrigen Pegel ab, wenn die zentrale Recheneinheit einen Befehl dekodiert i-nd herausfindet, daß es ein Eingabebefehl ist Wenn das Signal INPUTmf den niedrigen Pegel abfällt, gibt die Ansteuereinrichtung auf dem Plättchen 610 ein Ausgangssignal I/O RD mit hohem Pegel ab. Dies Signal wird an einen Eingang eines NOR-Glieds 612 angelegt, dessen Ausgang mit einem Inverter 614 verbunden ist Das Signal OUTPUT fällt auf den niedrigen Pegel ab, wenn die zentrale Recheneinheit einen Befehl dekodiert und bestimmt, daß eine Ausgabeoperation durchzuführen ist. Wenn das Signal OUTPUT auf den niedrigen Pegel abfällt, gibt die Ansteuereinrichtung auf dem Plättchen 610 das Signal I/O WR ab, welches an einen zweiten Eingang eines NOR-Glieds 612 angelegt wird. Infolgedessen steigt bei Anliegen entweder des Signals INPUT oder OUTPUT das Signal I/O RD oder WR am Ausgang des Inverters 614 auf den hohen Pegel an.
Das Signal I/O RD wird auch an einen Eingang eines NAND-Glieds 616 angelegt Das Siv,>al SST2 wird an einen zweiten Eingang eines NAND-Glieds 616 angelegt und sein Ausgang ist mit dem NOR-Glied 608 verbunden. Der Ausgang des NOR-Glieds 608 ist mit einem UND-Glied 604 verbunden, dessen Ausgang wiederum mit einem Eingang eines NOR-Glieds 618 verbunden ist Der Ausgang des NOR-Glieds 618 ist das Signal LOADDATA REG mit niedrigem Pegel.
Die Signale LD RD DATA und LR WR DATA werden an die zweiten und dritten Eingänge eines NOR-Glieds 618 angelegt Der vierte Eingang an dem NOR-Glied 618 ist mit dem Ausgang eines UND-Glieds
622 verbunden.
Das Signal SDC BUSYkommt von dem SDC-Steuerbus 210 und liegt während der Datenübertragungszeit
J5 nur dann auf einem niedrigen Pegel, wenn eine Steuereinrichtung (SDC) 122 besetzt ist. Das Signal SDCBUSYwWd an einen Inverter 624 angelegt, dessen Ausgang über einen Inverter 626 mit einem E'ngang eines UND-Glieds 622 verbunden. Das UND-Glied 622 erhält auch den Ausgang eines UND-Glieds 628. Das UND-Glied 628 erhält das Signal I/O WR von einer Ansteuereinrichtung auf dem Plättchen 610 und wird ferner durch einen Taktimpuls Φ \A in einen entsprechenden Zustand gebracht. Das Signal SST\ wird an einen anderen Eingang eines UND-Glieds 622 angelegt; folglich kann der Ausgang des UND-Glieds 628 über das UND-Glied 622 nur während eines Folgezustandes SSTl laufen, wenn die adressierte Steuereinrichtung SDCnicht besetzt, ist.
Das Signal I/O RD von der Ansteuereinrichtung auf dem Plättchen 610 wird an einen Eingang eines UND-Glieds 630 angelegt. Das UND-Glied 630 ist so geschiket, um die Signale READ PULSE und SST3 aufzunehmen. Der Ausgang des UND-Glieds 630 ist mit einem Eingang ein:s NOR-Glieds 632 verbunden, und der Ausgang des NOR-Glieds 632 ist das Signal ENABLE DATA DRV. Das Signal ENABLE DATA DRV kann auch durch eine Signalkombination erzeugt werden, uie an einem NOR-Glied 636 und einem UND-Glied 638 anliegt. Das NOR-Glied 636 erhält die Signale TNTSEQENFF und READ. Der Ausgang des NOR-Glieds 636 wird an einen Eingang eines UND-Glieds 638 angelegt. Der zweite Eingang des UND-Glieds 638 erhält das Signal BUS GRANTED und der Ausgang des UND-Glieds 638 ist mit einem zweiten Eingang des NOR-Glieds 632 verbunden.
Der Ausgang des Inverters 624 ist das Signal DC BUSY-A, und es wird an einen Eingang eines
UND-Glieds 640 angelegt. Das Signal READ wird an einen zweiten Eingang eines UND-Glieds 640 angelegt, und der Ausgang des UND-Glieds ist mit einem Einging eines NOR-Glieds 642 verbunden. Der Ausgang des NOR-Gliedes 642 läuft über einen Inverter 644, um das Signal DRIVE SDC BUS zu werden. Das NOR-Glied 642 hat auch einen Eingang, der mit dem Atigang eines UND-Glieds 648 verbunden ist. Das UND-Glied 648 hat drei Eingänge, an denen das Signal GO FF auf einer Leitung 426, das Ausgangssignal von dem Inverter 626 und das Signal I/O WR von der Ansteuereinrichtung an dem Plättchen 610 anliegen kann.
Das Signal PIN auf der Leitung 286 wird an den SDC-Steuerbus 210 angelegt und legt die Datenflußrichtung fest. Wenn es auf niedrigem Pegel ist, werden Daten von der Steuereinrichtung SDCan die Steuereinrichtung SDMA unter Steuerung der Signale F4/.7"und
^n \A/*inn rinC
Pegel liegt, wird die Datenüberiragungsrichtung so festgelegt, daß sie von der Steuereinrichtung SDMA zu der Steuereinrichtung SDCerfolgt. Das Signal PIN wird folgendermaßen erhalten: ein Eingang eines UND-Glieds 650 ist mit dem Ausgang eines Inverters 626 verbunden, und ein zweiter Eingang ist so geschaltet, daß er das Signal I/O RD von der Ansteuereinrichtung auf dem Plättchen 610 erhält. Der Ausgang des UND-Glieds 650 ist mit einem Eingang eines UND-Glieds 652 verbunden. Das UND-Glied 652 hat einen zweiten Eingang, der das Signal GO FF erhalten kann. Der Ausgang des UND-Glieds 652 wird an einen Eingang eines NOR-Glieds 654 angelegt. Das Signal INTSEQ EN FFwird an beide Eingänge eines UND-Glieds 656 angelegt, und der Ausgang dieses UND-Glieds wird an den zweiten Eingang eines NOR Glieds 654 angelegt.
Ein Flip-Flop 658 für eine Unterbrechungsanforderung und ein Flip-Flop 660 für eine Busanforderung sind in F i g. 6 dargestellt. Die beiden Flip-Flops sind D-Flip-Flops an deren Steuereingängen das Taktsignal Φ3Α anliegen kann. Beide Flip-Flops haben einen Rücksetzeingang, welcher so geschaltet ist, um das Signal BUS GRANTED aufzunehmen. Ein UND-Glied 606 erhält das Signal IST2 sowie den Ausgang D FACK von dem Inverter 600. Der Ausgang des UND-Glieds 606 ist ein Signal INTERRUPTREQUEST. Dies Signal wird an den Eingang D des Flip-Flops 658 angelegt, so daß das Flip-Flop am Anfang des Taktimpulses Φ 3Α gesetzt ist, wenn eine Unterbrechung gefordert wird.
Das Flip-Flop für eine Busanforderung wird folgendermaßen gesetzt. Das Signal READ wird an einen Eingang eines UND-Glieds 662 angelegt. Dieses UND-Glied erhält die Signale BREQA und DISA BLE BREQ an zweiten und dritten Eingängen. Der Ausgang des UND-Glieds 662 ist mit einem Eingang eines NOR-Glieds 664 verbunden. Ein UND-Glied 666 hat drei Eingänge zur Aufnahme der Signale END ME- MOP FF. DR LD FF und DWRITEA. Der Ausgang des UND-Glieds 666 ist mit einem zweiten Eingang eines NOR-Glieds 664 verbunden. Der Ausgang des NOR-Glieds 664 ist über einen Inverter 668 mit dem Eingang D des Flip-Flops 660 verbunden, so daß das Flip-Flop bei einem Taktsignal Φ ZA gesetzt wird, wenn der Ausgang des Inverters 668 auf hohem Pegel liegt. Der gesetzte Ausgang des Flip-Flops 660 wird über einen Inverter 670 geführt, um das Signal BUSRE- QUESTzu werden.
In F i g. 7 sind die Schaltungen zum Erzeugen der Taktimpulse sowie bestimmte der Ansteuereinrichtungen und Empfänger dargestellt, die mit dem SDC-Steuerbus 210 verbunden sind, um die sogenannte »Verbindungs«-Signale zu erzeugen und zu empfangen > die bei Übertragung zwischen den Steuereinrichtunger SDMA und SDCerforderlich sind.
Die Taktimpulse Φ \A bis Φ AA werden durch die zentrale Recheneinheit 100 erzeugt und über den Systemsteuerbus 204 an eine Gruppe von Ansteuerein-
H) richtungen 700 mit drei Zuständen in jeder Steuereinrichtung SDMA angelegt, leder Taktimpuls hat eine Dauer von 62,5 nsek, und die Zeit zwischen aufeinander folgenden Impulsen derselben Phase beträgt 500 nsek. Die Ansteuereinrichtung 700 ist ständig freigegeben;
ι ■> folglich erzeugt sie, wenn eine Steuereinrichtung ein Signal mit niedrigem Pegel erhält, ein logisches Ausgangssignal eins. Die Ausgänge von den Steuereinrichtungen 700 sind mit Φ\Α bis Φ ZA bezeichnet Zusätzlich ".vird das Serial Φ 2Λ über .".vei !nvericr 702
in und 704 durchgelassen, um die Signale Φ 2AS und Φ 2AD zu werden. Dies letztere Signal wird an alle Steuereinrichtungen (SDC) 122 mittels des SDC-Steucrbus 210 angelegt. Außerdem durchläuft das Signal Φ AA eine Ansteuereinrichtung mit drei Zuständen auf einem
>i Plättchen 706, um das Signal Φ 4AD zu erzeugen, welches über den SDC-Steuerbus an die Steuereinrichtung -S'DCangelegt wird.
Abc ^r.ehen von diesen Ausnahmen werden alle Ausgangssignale von der Ansteuereinrichtung 700 in
in der Steuereinrichtung SDMA selbst verwendet.
Das Signal SALT auf der Leitung 285 ist über den SDC-Steuerbus 210 mit jeder dor Steuereinrichtungen 5DC verbunden. Wenn das Signal SALT auf den niedrigen Pegeln abfällt, schaffte es eine Anzeige an allen
si Steuereinrichtungen SDC, daß die Steuereinrichtung SDMA die Adresse einer vo;: ihnen auf dem SDC-Adressenbus 208 darstellt. Das Signal SATT bleibt aktiv, bis die adressierte Steuereinrichtung SDC ihre Adresse erkennt und mit einem die Auswahl bestätigen-
in den Signal (SACK) antwortet. Das Signal SALT νι\τΑ folgendermaßen erzeugt. Ein NAND-Glied 716 hat drei Eingänge, um die Signale SSTX. SELECTION und STEPON anzunehmen. Der Ausgang des NAND-Glieds 716 ist das Signal ENSALTX. und dies Signal
Ji wird an einen Eingang eines NOR-Glieds 718 angelegt. Ein zweiter Eingang eines NOR-Glieds 718 erhält das Signal ISTX. Der Ausgang des NOR-Glieds 718 ist sowohl mit dem Eingang DaIs auch dem Rücksetzeingang eines D-Flip-Flops 720 verbunden. Der Setzaus-
i(j gang des Flip-Flops wird an einen Inverter 722 angelegt, und der Ausgang dieses Inverters ist das Signal SALT. Ein Taktimpuls Φ ZA wird an ein Flip-Flop 720 angelegt: folglich wird das Flip-Flop zu Beginn des Taktimpulse« Φ 3 gesetzt, wenn der Ausgang des NOR-Glieds 718 auf hohem Pegel liegt. Wenn der Ausgang des NOR-Glieds 718 auf den niedrigen Pegel abfällt, wird das Flip-Flop 720 unmittelbar zurückgesetzt.
Nachdem die Steuereinrichtung SDC das Signal 5/4LTerhalten und eine von ihnen ihre Adresse auf dem
bo SDC-Adressenbus erkennt, läßt die erkennende Steuereinrichtung SDC das Signal SALT auf den niedrigen Pegel abfallen. Dies Signal durchläuft dann einen Inverter 724, um das Signal DSACK zu werden. Das Signal DSACK wird in Fig.5 verwendet, um die logischen Folgezustandsschaltungen weiterzuschalten, um auf diese Weise entweder das Signal SSTl oder /STl in Abhängigkeit davon zu beenden, welche Operationsart durchgeführt wird. Dies hat zur Folge,
daß der Ausgang des NOR-Glieds 718 auf den niedrigen Pegel abfällt, so daß das Flip-Flop 720 zurückgesetzt wird, und das Signal SALT beendet wird.
Der Ausgang des Empfängers 724 wird auch an den Rücksetzeingang eines D-Flip-Flops 728 angelegt und > durchläuft einen Inverter 730, um das Signal DSACKzu erzeugen.
[*.e Aufgabe des Flip-Flops 728 besteht darin, einer aktiven Steuereinrichtung SDC anzuzeigen, daß ein Speicherparitätsfehler oder ein Adressenfehler wäh- i< > rcnd einer Speicheroperation aufgetreten ist. Wenn einer dieser Fehler auftritt, dann lassen die Speicherschaltungen ein entsprechendes Signal auf dem Systemsteuerbus 204 auf den niedrigen Pegel abfallen. Wenn ein Adressierfchler vorkommt, fällt das Signal r> MEM ADR ERR auf den niedrigen Pegel ab, um ein NOR-Glied 732 freizugehen. Wenn andererseits ein Speicherparitätsfehlcr auftritt, dann wird das Signal MEM FAR ERR an das NOR-Giied 732 angelegt. Der Ausgang des NOR-Glieds 732 ist mit einem Eingang :<> eines NAND-Glieds 734 verbunden, und der zweite Eingang des NAND-Glieds erhält einen Taktimpuls '/' 2A. Der Ausgang des NAND-Glieds 734 wird an den Takteingang des Flip-Hops 728 angelegt und setzt das Flip-Flop, vorausgesetzt das Signal BRUS GRANTED r. liegt auf hohem Pegc1, wodurch angezeigt wird, daß eine Steuereinrichtung SDC. die dieser Steuereinrichtung SDMA zugeordnet ist, mit dem Speicher in Verbindung steht. Der gesetzte Ausgang des Flip-Flops 728 wird an eine der Steuereinrichtungen 706 mit drei Zuständen m angelegt, um das Signal MEM CHECK mit niedrigem Pegel zu erzeugen. Dies Signal wird an die wirksame Steuereinrichtung SDt'abgegeben, um deren Operation zu beenden. Wenn die Steuereinrichtung SDC die Operation beendet, steigt das Signal SACK auf den π hohen Pegel an und das Flip-flop 728 wird zurückgesetzt.
Das Signal FALT ist ein Steuersignal, das von der Steuereinrichtung SDMA an eine Steuereinrichtung SDCübertragen wird, die bereits ausgewählt worden ist. -in Wenn das Signal FALT auf niedrigem Pegel liegt, informiert es die ausgewählte Steuereinrichtung SDC, daß die auf dem SDC-Datenbus verfügbare Information zu befolgen ist. Das Signal FALT wird beendet, nachdem die Steuereinrichtung SDC die Information r, befolgt und zu der Steuereinrichtung SDMA ein Bestätigungssignal FACK zurückleitet. Das Signal FALT wird folgendermaßen erzeugt. Der Ausgang eines Inverters 724 ist mit einem Eingang eines NAND-Glieds 736 verbunden. Das NAND-Glied 736 w erhält weiter die Signale STEPON und SST2. Der Ausgang des NAND-Glieds 736 ist mit einem Eingang 738 verbunden. Das Signal IST2 wird an einen zweiten Eingang des NOR-Glieds 738 angelegt, und der Ausgang des NOR-Glieds ist mit dem Eingang D eines D-Flip-Flops 740 verbunden. Das Flip-Flop wird durch einen Taktimpuls Φ 3/4 gesteuert, so daß das Flip-Flop bei einem Taktimpuls Φ ZA gesetzt ist, wenn der Ausgang des NOR-Glieds 738 auf dem hohen Pegel liegt. Der gesetzte Ausgang des Flip-Flops 740 ist mit bo einer der Ansteuereinrichtungen auf dem Plättchen 706 verbunden, und der Ausgang dieser Ansteuereinrichtung ist das Signal FALT mit niedrigem Pegel. Das Flip-Flop 740 wird zurückgesetzt, wenn das Ausgangssignal von dem NOR-Glied 738 auf den niedrigen Pegel b5 abfällt. _
Ein /^-Flip-Flop 750 hat einen Setzausgang, der mit einer der Ansteuereinrichtungen auf dem Plättchen 706 verbunden ist, um das Signal DACK zu erzeugen. Das Signal DACK ist ein Datenbestätigungs-Stcuersignal, das von der Steuereinrichtung SDMA an eine ausgewählte Steuereinrichtung SDC abgegeben wird, um eine Datenanforderung zu bestätigen. Wenn ein Dateneinschreibsignal zu diesem Zeitpunkt wirksam ist. wurde die Datenanforderung von der Steuereinrichtung SDC erhalten, das Signal DACK informiert dann die Steuereinrichtung SDC, daß das Zeichen auf dem SDC-Datenbus in das Datenregister der Steuereinrichtung SDMA eingeschrieben worden ist. Wenn ein Datenlesesignal zu diesem Zeitpunkt wirksam Wiir. wurde die Datenaufforderung von der Steuereinrich tung 5DCerhalten, und das Signal DACK informiert die Steuereinrichtung SDC, daß die Steuereinrichtung SDMA ein Byte auf dem .SOC-Datenfluß für eine Annahme durch die Steuereinrichtung SDC bereit hat. Die Einzelheiten dieser Operationen werden verständlich, wenn die spezieiien Beispiele bestimmter Operationen betrachtet werden.
Ein D-Flip-Flop 752 hat einen Takteingang, an dem das Signal DR LD FFanliegt. Der gesetzte Ausgang des Flip-Flops ist mit den Eingängen /und /Cdcs Flip-Flops 750 verbunden und erzeugt das Signal DISABLE BREQ, welches auf einer Leitung 754 anliegt. Das Flip-Flop 750 wird mit einem Taktsignal Φ 3A gesteuert, und beide Flip-Flops 750 und 752 werden zurückgesetzt, wenn das Signal DREQA. das an ihren Rücksetzeingängen anliegt, auf den niedrigen Pegel abfällt. Während das Flip-Flop 750 zurückgesetzt wird, erzeugt es das Signal DACK FFmit hohem Pegel, und während das Flip-Flop 752 zurückgesetzt wird, erzeugt es das Signal DISA BLE BREQ mit hohem Pegel. Wenn das Signal DR LD FF auf den hohen Pegel ansteigt, setzt es das Flip-Flop 752. Bei dem nächstfolgenden Taktimpuls Φ 3-4 setzt der Ausgang des Flip-Flops 752 das Flip-Flop 750, und der Ausrang dieses Flip-Flops steuert eine der Ansteucreinrichtungen auf dem Plättchen 706, an. um das Signal DACK mit niedrigem Pegel zu erzeugen. Die beiden Flip-Flops werden durch dir Signal DREQ A zurückgesetzt.
In Fig.8 durchläuft das Signal DREQ von dem SDC-Steuerbus einen Inverter 800, um das Signal DREQA zu werden. Eine gewählte Steuereinrichtung SDC läßt das Signal DREQ auf den niedrigen Pegel abfallen, um eine Dalenanforderung an der Steuereinrichtung SDMA zu schaffen. Der Ausgang des Inverters 800 wird auch an einen Eingang eines UND-Glieds 804 und eines NAND-Glieds 806 angelegt. Das Signal D WRITE von dem SDC-S'euerbus durchläuft einen Inverter 808, um das Signal D WRITEA zu werden. Das Signal D WRITE wird mittels einer Steuereinrichtung SDC während eines Intervalls erzeugt während welchem die Steuereinrichtung SDC Datenbytes an die Speicher überträgt Das Signal D WRITE A wird an einen zweiten Eingang des NAND-Glieds 806 sowie an einen Eingang von zwei weiteren UND-Gliedern 812 und 814 angelegt. Das UND-Glied 812 erhält das Signal DACK FFan einem zweiten Eingang, wenn das Flip-Flop 750 zurückgesetzt wird. Wenn das Flip-Flop zurückgesetzt wird und das Signal D WRITE auf niedrigem Pegel liegt, ist das UND-Glied 812 konditioniert, das heißt in entsprechenden Zustand gebracht, um ein Ausgangssignal mit hohem Pegel an dem UND-Glied 704 zu erzeugen. Wenn das Signal DREQ auf den niedrigen Pegel abfällt, gibt der Ausgang des Inverters 800 den zweiten Eingang des UND-Glieds 804 frei. Wenn das zum Laden des
Datenregisters vorgesehene Flip-Flop 816 zu diesem Zeitpunkt zurückgesetzt ist, gibt es den dritten Eingang des UND-Glieds 804 frei, so daß das UND-Glied ein Ausgangssignal mit hohem Pegel an den Eingang /des Flip-Flops 816 abgibt. Der Ausgang des UND-Glieds 804 ist das Signal LOAD WRITE DA TA. Das Taktsignal Φ \A wird an einen Inverter 820 und der Ausgang des Inverters wird an 'Jen Takteingang des Flip-Flops 816 angelegt; folglich ist das Flip-Flop am Ende des Taktsignals Φ \A gesetzt, wenn der Ausgang des UND-Glieds 804 auf hohem Pegel liegt, um anzuzeigen, daß die Daten auf den SDC-Datenbus in das S£M'M-Datenregister geladen worden sind. Wenn das Flip-Flop gesetzt ist, steigt das Signal DR LD FF auf den hohen Pegel an, während das Signal DR LD FFauf den niedrigen Pegel abfällt.
Das Flip-Flop 816 kann auch für Operationen einschließlich der Datenübertragung von dem Speicher über die Steuereinrichtung SDMA an eine Steuereinrichtung SDC gesetzt werden. Der Ausgang des Inverters 808 durchläuft einen weiteren Inverter 822, um das Signal READ zu werden, Das Signal READwra an einen Eingang eines UND-Glieds 826 angelegt. Das Signal MEMACK ist ein Signal, das auf dem Systemsteuerbus durch den Speicher festgelegt wird, um anzuzeigen, daß Daten von dem Speicher auf dem Datenbus sind und in das SDMA -Datenregister eingegeben werden können. Das Signal MEMACK wird an eine Ansteuereinrichtung auf dem Plättchen 828 angelegt, und wenn das Signal MEM ACK wirksam ist, gibt der Ausgang der Ansteuereinrichtung einen zweiten Eingang eines UND-Glieds 826 frei. Das UND-Glied 826 wird ferner durch das Signal BUS GRANTED freigegeben, welches von einer Ansteuereinrichtung auf dem Plättchen 830 erhalten wird. Das Signal BUSGRANT'isl ein Steuersignal, das auf dem Systemsteuerbus durch die Busleitereinrichtung entsprechend einer Busanforderung durch die Steuereinrichtung SDMA festgelegt wird und der Steuereinrichtung SDMA anzeigt, daß sie eine Steuerung über den Systembus hat. Das Signal BUS GRANT wird an eine Ansteuereinrichtung auf dem Plättchen 830 angelegt, und wenn es auf den niedrigen Pegel abfällt, gibt das Plättchen ein Ausgangssignai BUS GRANTED mit hohem Pegel an eine Leitung 832 ab. Das letztere Signal wird dann zu dem Eingang einer weiteren Ansteuereinrichtung auf dem Plättchen 830 zurückgeleitet, so daß diese Ansteuerung gleichzeitig ein Signal BUSGRAN- TED mit niedrigem Pegel erzeugt. Das Signal BUS GRANTED gibt ein UND-Glied 826 frei, wenn es auf dem hohen Pegel liegt, so daß das UND-Glied das Signal LOAD RD DATA auf einer Leitung 836 erzeugen kann. Der Ausgang des UND-Glieds 826 durchläuft einen Inverter 838, um das Flip-Flop 816 zu setzen, wodurch angezeigt wird, daß das Datenbyte auf dem Systemdatenbus in dem SDA/A-Datenregister gespeichert worden ist.
Wenn das Signal DREQ auf den hohen Pegel nach jeder Datenanforderung bei einer Leseoperation ansteigt, liegt das Signal D WRITE auf dem hohen Pegel, und das UND-Glied 806 gibt ein Ausgangssignal mit hohem Pegel ab, das über ein NOR-Glied 840 angelegt wird, um das Flip-Flop 816 zurückzusetzen.
Das Flip-Flop 816 wird auch durch das Signal END MEM OPFF von dem Flip-Flop 842 während einer Schreiboperation zurückgesetzt. Das Signal MEM ACK auf einer Leitung 837 wird an die Eingänge / und K des Fiip-Flops 842 angelegt, und der Setzausgang des Flip-Flops ist mil ^inem Eingang eines UND-Glieds 814 verbunden. Das UND-Glied wird ferner durch den Ausgang von einem Inverter 808 und den Taktimpuls Φ 2 freigegeben. Der invertierte Taktimpuls Φ I wird an den Takteingang des Flip-Flops 842 angelegt; folglich ist das Flip-Flop am Ende des Taktimpulses Φ Ι gesetzt, wenn das Signal MEM ACK auf hohem Pegel liegt. Das UND-Glied 814 erzeugt dann ein Ausgangssignai, das über das NOR-Glied 840 zu dem Rücksetzeingang des Flip-Flops 816 durchläuft. Das Flip-Flop 842 wird auch zurückgesetzt, wenn das Signal BUS GRANT beendet ist, und die Leitung 832 auf den niedrigen Pegel abfällt.
Wenn das Flip-Flop 842 zurückgesetzt wird, erzeugt es das Signal END MEM OP FF mit hohem Pegel. Zusätzlich gibt das Signal mit niedrigem Pegel von dem gesetzten Ausgang aus einem Eingang eines NAND-Glieds 844 frei. Dies NAND-Glied wird ferner freigegeben, wenn das Signal EN DATA ADR auf den niedrigen Hegel abfällt. L)er Ausgang des NAND-Glieds 844 ist das Signal MEMOP mit hohem Pegel. Dies Signal durchläuft einen Inverter 846, um das Signal BÜS~BUSΎ zu werden. Das Signal BUS BUSY wird über den Systemsteuerbus an die Busleitereinrichtung übertragen, um die Busleitereinrichtung zu informieren, daß die Steuereinrichtung SDMA das Steuersignal des Bus entsprechend dem Signal BUS GRANT angenommen hat.
Das Signal PWR ON CLR wird atomatisch erzeugt, wenn die zentrale Recheneinheit angeschaltet wird. Es ist ein Impuls von 500 msek, der über den Systemsteuerbus an jede der Steuereinrichtungen SDMA übertragen wird. In jeder Steuereinrichtung SDMA wird es an ein NOR-Glied 850 angelegt. Der Ausgang des NOR-Glieds 850 ist das Signal SDMA RESET. Es wird üb<;r ein NOR-Glied 840 durchgelassen, um das Flip-Flop 8,6 zurückzusetzen. Außerdem läuft das Signal SDMA RE- .SfTüber einen Inverter 854, um das Signal SDMA RE SET zu werden. Die Signale SDMA RESET und SDMA RESET werden an verschiedenen Flip-Flops und Zähler in der Steuereinrichtung SDMA angelegt, um sie zurückzusetzen oder zu löschen, we.in die energie angeschaltet wird. Eine ähnliche Funktion wird erreicht, wenn die Bedienungsperson eine Rücksetztaste auf dem Steuerpult drückt. Hierdurch wird das Signal RESETerzeugt, welches an den zweiten Eingang des NOR-Glieds 850 angelegt wird und zur Erzeugung derselben Signale wie dem Signal PWR ON CLR führt. Außerdem durchläuft das Signal RESET Inverter 858 und 860, um das Signal SRFSFT zu werden. Das letztere Signal wird über den SDC-Steuerbus 210 angelegt, um jede der Steuereinrichtungen 122 zurückzusetzen.
Nunmehr wird eine Kombination eines Eingabe- und von drei Ausgangsbefehlen von der zentralen Recheneinheit 100 genommen, um eine Steuereinrichtung SDMA und eine mit dieser verbundene Steuereinrichtung SDC einzustellen, so daß Daten zwischen dem Speicher 102 und der Steuereinrichtung SDC übertragen werden können. Dies gilt unabhängig von der Richtung, in welcher die Informationsübertragung stattfinden soll. Während der Einstellfolge erzeugt die zentrale Recheneinheit einen Eingabebefehl, auf den drei Ausgangsbefehle folgen. In der folgenden Beschreibung soll die durchzuführende Operation die Übertragung einer Datenzeile {132 Bytes) von dem Speicher an einen Zeilendrucker sein, der mit der Steuereinrichtung SDMA mit der Adresse 101 verbunden ist, um diese Datenzeile zu drucken. Die während jeder der drei
Einstellfolgebefehle durchgeführten Operationen werden unten in gesonderten Abschnitten beschrieben. Im :llgemeinen adressiert der Eingabebefehl das Zustandsregister in einer bestimmten Steuereinrichtung 122, die von einer ganz bestimmten Steuereinrichtung SDMA 108 bedient wird. Wenn die Steueieinrichtng SDMA besetzt ist, wird ihr Zustand zu dem Rechenwerksregister in der zentralen Recheneinheit zurückgeleitet. Wenn die Steuereinrichtung SDMA nicht besetzt ist, wird der Z tand der adressierten Steuereinrichtung SDC zu dem Rechenwerksregister zurückgcmeldet. Wenn die adressierte Steuereinrichtung SDC mit dem System verbunden ist, angeschaltet und nicht besetzt ist, gibt die zentrale Recheneinheit den ersten Ausgangsbefehl ab und legt auf dem Systemadressenbus eine Adresse mit dem in F i g. IOC dargestellten Aufbau fest. Die Steuereinrichtung SDMA spricht auf diesen Ausgabebefehl an, indem die untere Hälfte des Adressenhinweiszählers 232 mit dem Uatenbyte in dem Rechenwerksregister der zentralen Recheneinheit geladen wird. Die zentrale Recheneinheit führt dann einen weiteren Ausgabebefehl aus und legt eine weitere Adresse mit dem in Fig. IOB dargestellten Aufbau auf der Systemadressenleitung fest. Entsprechend diesem zweiten Ausgabebefehl lädt die Steuereinrichtung SDMA das Datenbyte auf den Systemdatenbus in die obere Hälfte des Adressenhinweiszählers 232. Schließlich führt die zentrale Recheneinheit einen dritten Ausgabebefehl durch und gibt einen Befeh: an die ausgewählte Steuereinrichtung SDC ab. Eine Adresse auf dem Systemadressenbus kennzeichnet, welches Register diesen Befehl empfangen soll. Unter den angenommenen Bedingungen ist dieser Befehl ein Druckbefehl; folglich hat die auf dem Systemadressenbus anliegende Adresse den in F i g. 1OE dargestellten Aufbau. Nachdem dieser dritte Ausgabebefehl durchgeführt worden ist, kehrt die zentrale Recheneinheit zu ihrem normalen Programm zurück, und die allgemein benutzte Steuereinrichtung SDMA steuert die tatsächlichen Übertragungen der Datenbytes von dem Speicher an die ausgewählte Steuereinrichtung 5DCmittels der in dem Adressenhinweiszähler enthaltenen Adresse.
Während dieser Datenübertragung muß die Steuereinrichtung SDMA mit anderen Einrichtungen, die mit dem Systembus verbunden sind, um einen Zugriff zu dem Speicher wetteifern. Folglich muß für jedes übertragene Byte die Steuereinrichtung SDMA eine Busanforderung durchführen, und nachdem die Steuereinrichtup.t1 Zugriff zu dem Speicher CTeCTeben wird, antwortet die Busleitereinrichtung mit einem Signal BUS GRANT. Nachdem die Datenübertragung beendet ist, erzeugt die Steuereinrichtung SDC eine Unterbrechungsanforderung an der Steuereinrichtung SDMA. um ihren Zustand zu melden, d. h. sie hat ihr Pufferregister geladen und beginnt einen Druckzyklus. Die Steuereinrichtung SDMA ist nunmehr frei, und kann andere Steuereinrichtungen SDC bedienen. Nachdem der Drucker die Datenteiie gedruckt hat, macht die Steuereinrichtung 5DC eine weitere Unterbrechungsanforderung bei der Steuereinrichtung SDMA um zu diesem Zeitpunkt der zentralen Recheneinheit zu melden, daß sie nunmehr in einem Zustand ist, um weitere Daten anzunehmen. Jeder der verwendeten Eingabe- und Ausgabebefehle mit dem eine Übertragungsoperation durchgeführt wird, wird nunmehr gesondert im einzelnen betrachtet.
Bei einer zentralen Recheneinheit CPt/ 100 finden drei Zyklen der zentralen Recheneinheit statt, um einen Eingabebefehl auszuführen. Während der ersten zwei Zyklen wird der Befehl aus dem Speicher ausgelesen und dekodiert. Bei dem ersten Taktimpuls Φ 34 des dritten Zyklus M3 (siehe Fig.9) wird eine Adresse, welche den in Fig. IOD dargestellten Aufbi.j haben sollte, auf dem Systemadressenbus 202 eingebracht und festgelegt. Zur selben Zeit läßt die zentrale Recheneinheit das Signal CPUSYNC auf den niedrigen Pegel abfallen. In Fig.4 erkennt das NAND-Glied 408 die Kombination der Bits A 7 bis A 5 als die Adresse der Steuereinrichtung SDMA. Der Ausgang des NAND-Glieds 408 gibt einen Eingang des NAND-Glieds 412 frei, welches einen zweiten Eingang hat, der von dem Ausgang des Inverters 418 freigegeben wird. Der Ausgang des NAND-Glieds 408 gibt auch einen Eingang des NAND-Glieds 416 frei.
Beim Taktimpuls Φ 4 legt die zentrale Recheneinheit auf dem Steuerbus das Signal INPUT mit niedrigem Pegel lest. Dies Signal durchläutt eine Ansteuereinrichtung 610 um das Signal I/O READ zu erzeugen, um dadurch einen zweiten Eingang des NAND-Gliedes 416 anzusteuern. Da die beiden Adressenbits A 4 und A 3 null sind, erzeugt das NAND-Glied 458 ein Ausgangssignal, um das NAND-Glied 416 anzusteuern bzw. freizugeben. Der Ausgang des NAND-Glieds 4t6 läuft über den Inverter 417, um das Signal SELECTION zu erzeugen. Das Signal SELECTION wird an das NAND-Glied 716 angelegt, aber das NAND-Glied ist zu diesem Zeitpunkt gesperrt, da das Signal SSTi auf niedrigem Pegel liegt.
Das von der Ansteuereinrichtung 610 erzeugte Signal I/O READ läuft über das NOR-Glied 612 und den Inverter 614, um das Signal I/O RD oder WR auf den hohen Pegel zu bringen. Das letztere Signal steuert ferner das NAND-Glied 412 an, so daß bei dem nächsten Taktimpuls Φ \A das NAND-Glied 4!2 das Signal START PULSE erzeugt. Das Signal START PULSE setzt unmittelbar das Flip-Flop 424, um dadurch die Signale GOFI und NOT READY zu erzeugen. Das Signal NOT READY wird zurück zu der zentralen Recheneinheit übertragen, um den dritten Zyklus des Eingabebefehls in der zentralen Recheneinheit zu stoppen. Hierdurch kommt die zer^ale Recheneinheit in einen Wartezustand, und während dieses Wartezustands bleibt die Adresse auf dem Ssstemadressenbus, und das Signal INPUT wird auf dem Steuerbus erhalten.
Wenn das Flip-Flop gesetzt wird, wird das Signal GO FF an ein NAND-Glied 542 angelegt. Hierdurch wird das NAND-Glied 542 gesperrt, über welches alle Unterbrechungsanforderungen von der Steuereinrichtung SDC laufen müssen, um das Flip-Flop 532 zu setzen. Hierdurch ist gewährleistet, daß keine Steuereinrichtung SDC eine Unterbrechungsanforderung einleiten kann, während die Steuereinrichtung SDMA besetzt ist, da sie den Eingabebefehl verarbeitet
Das Signal GO FFIäuft über den Multiplexer 506 und steuert den Zähler 510 an, so daß bei dem Taktsignal Φ2Α der Zähler weitergeschaltet wird, und der Ausgang des Zählers an den Dekodierer 514 angelegt wird, um das Signal SSTX zu erzeugen.
Das Signal SST 1 wird an das NAND-Glied 716 angelegt, welches bereits das Signal SELECTION mit hohem Pegel erhalten hat. Das Signal STEPON liegt zu diesem Zeitpunkt ebenfaüs auf hohem Pegel, vorausgesetzt, wie nachstehend noch ausgeführt wird, die Steuereinrichtung SDMA ist zu dem Zeitpunkt nicht besetzt, an welchem das Signal START PULSE erzeugt
wurde. Der Ausgang des NAND-Glieds 716 durchläuft das NOR-Glied 718 und bei dem Taktimpuls Φ 3Λ wird das Flip-Flop 720 gesetzt, um das Signal SALT zu erzeugen. Das Signal SALT wird an alle Steuereinrichtungen 122 Ober den SDC-Steuerbus angelegt, um die Steuereinrichtungen auf die Tatsache hinzuweisen und aufmerksam zu machen, daß die Adresse einer von ihnen auf dem SDC-Adressenbus vorhanden ist Die Adresse wurde auf den SDC-Adressenbus zu demselben Zeitpunkt festgelegt, zu welchem sie an dem Systemadressenbus anlag. Von dem Systemadressenbus laufen die Adressenbits über Inverter 400 bis 404 zu dem Multiplexer 406 und dem UND-Glied 405. Da das Flip-Flop zum Freigeben der Unterbrechungsfolge zu diesem Zeitpunkt zurückgesetzt ist, werden die Bits A 4 bis A 1 über den Multiplexer 406 durchgeschaltet, und das Bit A 0 wird über das UND-Glied 405 und über das NOR-Glied 407 durchgeschaltet, so daß daraus die Adressenbits RSL 4 -RSL 1 auf dem SDC-Adressenbus werden. Wenn auch das Signal I/O READ erzeugt wurde, läuft es über das UND-Glied S50. um das UN D-Glied 652 anzusteuern, und wenn das Rip-Flop 424 gesetzt war, ist das Signal GO FFüber das UND-Glied 652 und das NOR-Glied 654 gelaufen, um das Signal PIN zu werden, welches über die SDC-Steuerschiene an alle Steuereinrichtungen SDC 122 angelegt wird.
Durch das Signal PIN erfahren alle Steuereinrichtungen SDC daß eine Übertragung von einer der Steuereinrichtungen SDC zu der Steuereinrichtung SDMA stattfinden soll, während durch das Signal SALT alle Steuereinrichtungen darauf hingewiesen werden, Adressenbits RSL1 und RSLO mit ihrer eigenen Adresse zu vergleichen. Die Steuereinrichtung SDC, welche Bits RSLO und RSLi als ihre eigene Adresse erkennt, verbindet sich selbst mit dem SDC-Bus und innerhalb von 250nsek wird das Signal SNACK erzeugt, um dadurch der Steuereinrichtung SDMA zu bestätigen, daß sie verbunden ist.
Bei dem ersten Taktimpuls Φ 4/4, nachdem die Steuereinrichtung SDMA das Signal SMLTerzeugt hat. erzeugt die adressierte Steuereinrichtung SDC das Signal SACK mit niedrigem Pegel und dies Signal läuft über den SDC-Steuerbus zu der Steuereinrichtung SDMA, wo sie über Inverter 724 und 730 läuft, um die Signale D DACK und D SACK zu erzeugen. Das Signal SACK bleibt bis zum Ende der Datenübertragungsoperation wirksam, welche durch den gegenwärtigen Eingabebefehl und die folgenden drei Ausgabebefehle durchgeführt wird. Nachdem die Datenübertragungsoperationen beendet ist, beendet die Steuereinrichtung SDCdas Signal SACK, um sich selbst abzuschalten.
Das Signal DSACK läuft über das NOR-Glied 544 um das NAND-Glied 542 zu sperren. Hierdurch ist sichergestellt, daß keine Unterbrechungsanforderung von anderen Steuereinrichtungen 5DC beachtet werden, selbst nachdem das Flip-Flop beinahe am Ende des gegenwärtigen Eingabebefehlszyklus zurückgesetzt ist. Das von dem NOR-Glied 544 erzeugte Signal NA VAIL läuft über das NOR-Glied 438, um das Flip-Flop 422 anzusteuern. Das Flip-Flop ist zu diesem Zeitpunkt nicht gesetzt und wird nur gesetzt, wenn ein Versuch gemacht wird, eine andere Auswählfolge an einer anderen Steuereinrichtung SDC zu beginnen, während die Steuereinrichtung SDMA mil einer ersten Steuereinrichtung SDCverbunden ist.
Das Signal DSACK läuft über den Multiplexer 506 und beidem ersten Taktimpuls Φ 2Λ, nachdem das Signal SACK wirksam wird, wird der Zähler 510 auf einen Zählerstand zwei weitergeschaltet, und der Ausgang des Zählers betätigt den Dekodierer 514, um das Signal SST2 zu erzeugen. Das Signal SSTi wird zu diesem Zeitpunkt beendet, und der Ausgang des NAND-Glieds 716 stellt das Flip-Flop 720 über das NOR-Glied 718 zurück, um das Signal SALTzn beenden.
Die Signale SST2 und D SACK steuern das NAND-Glied 736 an, das ferner durch das Signal STEPON angesteuert wird, welches auf hohem Pegel
ίο liegt Der Ausgang des NAND-Glieds 736 läuft über das NOR-Glied 738, um das Flip-Flop 740 für die Funktionsbereitschaft anzusteuern. Bei dem Taktimpuls Φ 3A wird das Flip-Flop gesetzt, wodurch eine Ansteuereinrichtung 706 das Signal FALT mit niedrigern Pegel (die Funktionsbereitschaft) erzeugt. Das Signal FALT wird auf dem SDC-Steuerbus festgelegt und von der Steuereinrichtung SDC angenommen, weiche während des Signals SSTl ausgewählt wurde. Durch das Signal FALT erfährt die ausgewählte Steuereinrichtung SDC daß sie wieder bei der Adresse auf dem SDC-Adressenbus gesperrt werden soille, wobei jedoch zur Zeit die Funktion geprüft wird, weiche Bits RSL 4 - RSL 2 kennzeichnet Das alle diese bits null sind (F i g. IOD) erkennt die Steuereinrichtung SDCdas, was gefordert wird, daß ihr Zustand auf dem SDC-Datenbus festgelegt ist
Die ausgewählte Steuereinrichtung SDC dekodiert die Bits RSL 4 bis RSL 2 und liest ihr Zustandsregister in den SDC-Datenbus 206 aus, und der Zustand wird an
so Multiplexer 300 und 301 als die Datenbils S-BitO bis S-BhI angelegt. Der Zustand wird als einer von vier sedezimalen Werten 00,80,90 oder 40 gemeldet.
Wenn keine Steuereinrichtung SDC mit der Steuereinrichtung SDMA verbunden ist, welche eine Adresse
ji hat, die der auf dem SDC-Adressenbus festgelegten entspricht, dann zeigt der Zustandswert 00 an, daß die adressierte Steuereinrichtung SDC nicht vorhanden ist. In diesem Fall wird der Zustand aus dem Zustandsregister und der Steuereinrichtung SDCnicht ausgelesen. In diesem Fall erzeugt die Steuereinrichtung SDMA die Zustandsbits. wie nachstehend beschrieben wird.
Wenn die adressierte Steuereinrichtung SDC bereit ist. eine weitere Aufgabe durchzuführen, meldet dies der Zustandswert 80. Wenn die adressierte Steuereinrich-
4> tung SDCmit einem SDC-Bus verbunden ist, aber nicht im On-Line-Belrieb ist, zeigt dies der Zustandswert 90 an. Wenn schließlich die adressierte Steuereinrichtung vorhanden ist, im On-Line-Betrieb ist, angeschaltet und verfügbar ist, um mit einer weiteren Operation
jo fortzufahren, zeigt dies der Zustandswert 40 an.
Nachdem der Zustandswert an die Datenregister-Multiplexer 300 und 301 angelegt ist und beim Taklimpuls Φ 4/4 die Erzeugung des Signals FA LT r durch die Steuereinrichtung SDMA folgt, erzeugt die Steuerein-
v> richtung SDC das Signal FACK (die Funktion bestätigen) um der Steuereinrichtung SDMA anzuzeigen, daß die Steuereinrichtung SDC ihren Zustand auf dem SDC-Datenbus festgelegt hat. Das Signal FACK läuft über einen Inverter 600, und wird das Signal
wi DFACK. Das Signal DFACK steuert einen Eingang des UND-Glieds 604 an. Die Signale I/O READ und SST2 sind beide auf hohem Pegel, so daß der Ausgang des NAND-Gliedes 616 über das NOR-Glied 608 läuft, um das UND-Glied 604 zu konditionieren. Wenn
h> infolgedessen das Signal D FACK auftritt, erzeugt das UND-Glied 604 ein Ausgangssignal, das über das NOR-Glied 618 läuft. und das Signal LOAD DATA Rl-G wird. Dies letztere Signal wird
dann an die Auswähleingänge der Multiplexer 300 und 301 angelegt, und da das Signal DRIVESDC BUS zu dieser Zeit hoch ist, da alle Eingänge an dem UND-Glied 648 hoch sind, werden die Zustandsbits 57 bis SO zu dem Datenregister durchgeschaltet
Sobald der Zustand in das Datenregister eingegeben ist, ist er an den Datenbus-Ansteuereinrichtungen 314 verfügbar. Das Signal STEP ON liegt auf hohem Pefel, so daß der Ausgang des NAND-Glieds 310 mit nieilrigem Pegel an den Anwähleingängen der Multiplexer 302 und 303 angelegt wird. Hierdurch werden die Λ-ESngänge gewählt, welche die Zustandsdaten erhalten, die in den Haltegliedern in den Datenregister-Multiplexer 300 und 301 gehalten worden sind. Der Zustand ist zu diesem Zeitpunkt nicht auf dem Systemdatenbus festgelegt, da die Ansteuereinrichtungen 314 nicht freigegeben sind.
Das Signal D FACK läuft über den Multiplexer 506, um den Zähler SlO anzusteuern, und beim nächsten Taktimpuls Φ 2Λ wird der Zähler weitergeschaltet, so daß der Dekodierer 514 das Signal SST3 erzeugt Das Signal SST3 setzt unmittelbar das Flip-Hop 424 zurück, um dadurch die Signale CO FF und NOT READY τα beenden. In Fig.7 fällt das Signal SST2 auf den niedrigen Pegel ab, wenn das Signal SST3 beginnt; infolgedessen läuft der Ausgang des NAND-Glieds 736 über das NOR-Glied 738, um das Flip-Flop für die Funktionsbereitschaft zurückzusetzen und das Signal FALTtü beenden. Dies wiederum hat zur Folge, daß die ausgewählte Steuereinrichtung das Signal FACK beendet
Das Signal SST3 wird an das UND-Glied 630 iHgelegt, welches ferner zu diesem Zeitpunkt durch die Signale I/O READ und READ PULSE angesteuert wird. Der Ausgang des UND-Glieds 630 läuft über das NOR-Glied 632 und steuert die Ansteuereinrichtungen 314 an, so daß der Zustand zu dem System-Datenbus durchgeschaltet wird. Das Zustandsbyte läuft in das Rechenwerksregister in der zentralen Recheneinheit 100.
Wenn das Signal NOTREADYzu Beginn des Signals SST3 auf den hohen Pegel ansteigt, beendet es den Wartezustand der zentralen Recheneinheit 100, und die Durchführung des Eingabebefehls wird zurückgenommen, so daß der Zustand auf dem Datenbus in das Rechenwerksregister eingegeben werden kann. Kurz danach beendet die zentrale Recheneinheit das Signal DA TA BUS IN, wodurch der Erhalt der Daten bestätigt wird, und der Ausgang des Inverters 500 läuft über das NOR-Glied 504 und den Multiplexer 506, um den Zähler 510 anzusteuern. Bei dem nächsten Taktimpuls Φ 2Α wird der Zähler weitergeschaltet, um dadurch in den Nülhustand zurückzukehren und um dadurch das Ausgangssignal SST3 von dem Dekodierer 514 zu beenden. Hierdurch wird die Antwort der Steuereinrichtung SDMA auf den Eingabebefehl beendet Die zentrale Recheneinheit analysiert nun den Zustand, welcher von der Steuereinrichtung SDMA erhalten worden ist und legt fest, welche Schritte entsprechend dem mitgeteilten Zustand vorzunehmen sind,
Wenn die Steuereinrichtung SDMA den Zustandswert 40 an die zentrale Recheneinheit abgibt, um dadurch anzuzeigen, daß die Steuereinrichtung SDMA und die adressierte Steuereinrichtung SDC beide bereit sind, weitere Befehle zu erhalten, beginnt die zentrale Recheneinheit mit der Durchführung eines Ausgabebefehls und lädt ihr Rechenwerksregister mit einem Datenbyte, das die acht niedrigstwertigen Bits einer Speicheradresse darstellt Diese Adresse ist die Adresse der ersten Speicherstelle, wo Daten eingeschrieben oder eingelesen sind, wenn die Steuereinrichtungen SDMA und SDC eingestellt worden sind, und die ■s eigentliche Datenübertragung beginnt In F i g. 11 werden bei dem ersten Taktimpuls Φ3Α des dritten Zyklus (M3) der zentralen Recheneinheit während welcher der Ausgabebefehl durchzuführen ist die Inhalte des Rechenwerksregisters zu dem Systemdaten-
H) bus durchgeschaltet und an die ß-Eingänge der Datenregister-Multiplexer 300 und 301 angelegt Zum selben Zeitpunkt legt die zentrale Recheneinheit auf dem Systemadressenbus eine Adresse mit dem in Fig. IOC dargestellten Aufbau fest und beginnt mit der Erzeugung des Signals CPU SYNC
Das NAND-Glied 408 erkennt die Adressenbits A 7 bis A 5 als die Adresse dieser Steuereinrick' jng SDMA und erzeugt das Signal SDMA ADRESS. um die NAND-Glieder 412 und 414 anzusteuern. Beim Taktimpuls Φ AA erzeugt die zentrale Recheneinheit das Signal OUTPUTmA niedrigem Pegel, welches über eine Ansteuereinrichtung 610 durchgelassen wird, um das Signal I/O WRITE zu werden. Das Signal I/O WRITE läuft über das NOR-Glied 612 und den
2> Inverter 614, um das Signal I/O RDoder WRzu werden.
Beim Taktimpuls Φ \A wird das GO-Flip-FIop durch
den Ausgang des NAND-Glieds 412 gesetzt und die Signale START PULSE und NOTREADY werden in derselben Weise wie für den Eingabebefehl erzeugt.
Die Adressenbits A 4 bis A 0 laufen über Inverter 400 bis 404 und 4111, um die Signale RADR 4 und RADR 4 bis RADRO zu erzeugen. Das Signal RADRO wird an Dekodierer 318 angelegt aber der Kodierer ist zu diesem Zeitpunkt nicht freigegeben. Die Signale
J5 RADR 1, RADR 2, RADR3 und RADR 4 werden alle an das NAND-Glied 452 angelegt, welches diese vier Adressenbits als die Adresse des Adressenhinweiszählers erkennt Der Ausgang des NAND-Glieds 452 konditioniert das NAND-Glied 414, welches die Signale
•to I/O READ oder WRITE und SDMAADR zu diesem Zeitpunkt erhält. Das NAND-Glied 414 erzeugt ein Ausgangssignal mit niedrigem Pegel, welches über den Inverter 454 läuft, um das Signal SDMA PROBE mit hohem Pegel zu werden. Das Signal SDMA PROBE
4> wird an das NAND-Glied 316 angelegt, welches durch das Signal I/O WRITE angesteuert wird, aber das NAND-Glied ist zu diesem Zeitpunkt gesperrt da das Signal SST2 auf niedrigem Pegel liegt.
Das Signal SDMA PROBE w;:d auch an das
r>o NAND-Glied 310 angelegt. Der sich ergebende Ausgang mit niedrigem Pegel von dem NAND-Glied 310 wird an die Wähleingänge der Multiplexer 302 und 303 angelegt die auf diese Weise den Ausgang des Datenregisters zum Anlegen an die Zähler 320 bis 323
μ wählen.
Der Ausgang des NAND-Glieds 414 läuft über das NOR-Glied 448, um auf diese Weise das Signal STEP ON auf den hohen Pegel zu bringen, während das Signal STEPON auf den niedrigen Pegel abfällt. Das
M) Signal STEP ON wird an die Eingänge A 2 und D 5 des Multiplexers 506 angelegt. Da der Zähler 510 zu diesem Zeitpunkt auf null steht, wählt das an den Eingang A 2 des Multiplexers 506 angelegte Signal STEPON den Eingang DA. Hierdurch wird das Signal CO FF über
hr) den Multiplexer 506 zu dem Zähler 510 durchgeschaltet, und beim Taktimpuls Φ2Α wird der Zähler auf einen Zählerstand eins weitergeschaltet. Der Ausgang des Zählers wird mittels des Dekodierers 514 dekodiert, um
das Signal 5STl zu erzeugen.
In F i g, 6 steuert das Signal SSTl einen Eingang des UND-Glieds 622 an, welches ferner von einem Signal DCBUSYA mit hohem Pegel angesteuert wird. Das UND-Glied 628 wird auch durch das Signal I/O WRJTE angesteuert, und bei einem Taktimpuls Φ \A läuft, nachdem das Signal SSTl hoch wird, der Ausgang des UND-Glieds 628 Ober das UND-Gligd 622 und das NOR-Glied 618, um das Signal LOADDATA REG zu erzeugen. Da das Signal DRIVE DC BUS auf hohem Pegel liegt, lädt es das Datenbyte auf dem Systemdatenbus in die Datenregister-MultipIexer300 und 301. Da das Signal SDAfA PROBE zur Folge hat, daß der Ausgang des NAND-Glieds 310 die Α-Eingänge der Multiplexer 302 und 303 wählt, wird das in das Datenregister geladene Datenbyte unmittelbar zu den Zählern 320 bis 323 durchgeschaltet Jedoch werden die Daten zu diesem Zeitpunkt nicht in die Zähler eingegeben.
Zu diesem Zeitpunkt weist der Zähler 510 den Zählerstand eirs auf, und das Signal STEP ON liegt auf hohem Pegel. Die Kombination dieser zwei Signale wählt den Eingang D 5 des Multiplexers 506, so daß das Signal STEPON über den Multiplexer 506 durchgeschaltet wird, um den Zähler 510 anzusteuern. Beim '■'"■'ktimpuls Φ 2/t wird der Zähler auf den Wert zwei weitcrgcschaitct, und der Ausgang des Zählers wird durch den Dekodierer 514 dekodiert, um das Signal SST2 zu erzeugen.
In Fig.3 steuert das Signal SST2 das NAND-Glied 316 an, und da die anderen Eingänge des NAND-Glieds zu diesem Zeitpunkt auf hohem Pegel liegen, erzeugt es ein Ausgangssignal mit niedrigem Pegel, um den Dekodierer 318 anzusteuern. De,- Dekodierer erhält zu diesem Zeitpunkt die Signal DCBUSYA und RADRO mit hohem Pegel; folglich erzeugt ei sin Ausgangssignal mit niedrigem Pegel, um das Laden der Zähler 320 und 321 freizugeben. Zu diesem Zeitpunkt werden die Zähler 320 und 321 mit dem Datenbyte geladen, das in dem Datenregister gehalten worden ist.
Während der ganzen Ausgabeoperation ist das Signal DISABLEBREQ auf einem niedrigen Pegel, wodurch das UND-Glied 306 gesperrt ist. Der Ausgang mit niedrigem Pegel des UND-Glieds 306 läuft über deji Inverter 308 und wird an den Eingang D6 des Multiplexers 506 angelegt. Das Signal STEP ON liegt noch auf hohem Pegel, und während des Signals SST2 weist der Zähler 510 einen Zählerstand zwei auf; folglich wird das Signal ENABLE STEP über den Multiplexer 506 zu dem Zähler 510 durchgeschaltet. Beim Taktimpuls Φ 24 schaltet der Taktimpuls den Zähler auf einen Zählerstand 3, und der Dekodierer 514 dekodiert diesen Wert um das Signal SST3 zu erzeugen.
Das Signal SST3 setzt das Flip-Flop 424 zurück, wodurch die Signale GOFFund NOTREADYbeendet werden. Das Signal NOTREADYv/\rd zu der zentralen Recheneinheit zurückgeleitet, wo es den Wartezustand beendet, und die zentrale Recheneinheit nimmt die Durchführung des Ausgabebefehls auf. Die zentrale Recheneinheit beendet anschließend das Signal WRI TE PULSE, so daß der Inverter 508 ein Eingangssignal mit niedrigem Pegel an das NOR-Glied 504 anlegt. Das NOR-Glied erhält zu diesem Zeilpunkt ein Signal mit niedrigem Pegel an seinem anderen Eingang; folglich läuft ein Ausgang von dem NOR-Glied 504 mit hohem Pegel über den Multiplexer 506, um den Zähler 510 anzusteuern. Bei dem ersten Taktimpuls ΦIA des nächsten Zyklus (MX) wird der Zähler durch einen Taktimpuls weitergeschaltet, wodurch er in den
Nullzustand zurückgesetzt wird. Hierdurch wird die Ausgabeoperation zum Laden der unteren Hälfte des Adressenhinweiszählers beendet.
Nachdem die vorbeschriebene Ausgabeoperation beendet worden ist, führt die zentrale Recheneinheit einen weiteren Ausgabebefehl zum Laden der oberen Hälfte des Adressenhinweiszählers durch. Dieser Befehl wird mit einer Ausnahme genau auf dieselbe Weise wie der vorbeschriebene Ausgabenbefehl durchgefUirt Die auf dem Systemadressenbus festgelegte Adresse hat den in F i g. 1 OB dargestellten Aufbau. Da das Bit Λ 0 Null ist, gibt der Inverter 400 das Signal RADR 0 mit niedrigem Pegel ab, welches an den Dekodierer 318 angelegt wird. Das Signal RADRO mit niedrigem Pegel hat in
Jrigem
O BUS}
Verbindung mit dem Signal DCBUSYA mit hohem Pegel zur Folge, daß der Dekodierer 318 ein Ausgangssignal mit niedrigem Pegelanschluß 2 erzeugt, um dadurch die Ladeanschlüsse der zwei Zähler 322 und 323 höherer Ordnung anzusteuern. Auf diese Weise läuft das Datenbyte von dem Rechenwerksregister über das Datenregister und die Multiplexer 302 und 303. um in die Zähler 322 und 323 höherer Ordnung eingegeben zu werden.
Bezüglich der beiden ersten und zweiten Ausgabebefehle sollte bemerkt werden, daß keine Wechselverbindung bei der ausgewählten Steuereinrichtung SDC erforderlich ist, da jede Verbindung während dieser zwei Ausgabebefehle zwischen der zentralen Recheneinheit und der Steuereinrichtung SDMA selbst
jo vorhanden ist Wegen des Signals SSTl sperrt das Signal STEP ON mn niedrigem Pegel das NAND-Glied 716, um das Setzen des Flip-Flops 720 und das Erzeugen des Signals SALTzu verhindern. Während des Signals SST2 sperrt das Signal STEPONdas NAND-Glied 73f·,
J5 um das Setzen des Flip-Flops 740 und das Erzeugen des Signals FALTzu verhindern. Da das Signal FALTmchl erzeugt wird, gibt die Steuereinrichtung SDCdas Signal FACK nicht ab. Jedoch erzeugt die Steuereinrichtung SDC noch das Signal SACK, wp'ches während der Ausführung des Eingabebefehls wirksam war.
Nachdem die zwei Ausgabebefehle durchgeführt worden sind, um den Adressenhinweiszähler zu laden, führt die zentrale Recheneinheit einen dritten Ausgabebefehl aus, welcher tatsächlich den Befehl schafft.
welcher der Steuereinrichtung SDC mitteilt, welche Funktion sie auszuführen hat. Nach dem ersten Taktimpuls Φ 3A des dritten Zyklus (M3) der zentralen Recheneinheit legt während der Durchführung des Ausgabebefehls die zentrale Recheneinheit auf dem
V) Systemadressenbus eine Adresse mit dem in Fig. 1OE dargestellten Aufbau fest und auf dem Systemdatenbus ein den tatsächlichen Befehl darstellendes Byte. Im Hinblick auf die weitere Ausführung sei angenommen, daß das Bit eins an A 3 und das But null an A 4 die
Yt Adresse eines SDC-Befehlsregisters festlegt, und daß das Byte auf dem Datenbus 40 ist, das einen Druckbefehl bezeichnet. Von dem Systemadressenbus läuft das niederwertige Adressenbit über einen Inverter 400, an ein nunmehr freigegebenes UND-Glied 405 und das NOR-Glied 407, um das Signal RSLO auf dem SDC-Adfessenbüs zu werden. Die Signale AX bis A4 laufen über Inverter 401 bis 404 und einen Multiplexer 406, um die Signale RSL X bis RSL4 auf dem SDC-Adressenbus zu werden.
Die Adressenbits A 5 bis A 7 werden von dem NAND-Glied 408 erkannt, und der Ausgang des NAND-Glieds steuert einen Eingang des NAND-Glieds 412 an. Ein zweiter Eingang des NAND-Glieds 412 wird
von dem Signal CPUSYNC angesteuert, das zum gleichen Zeitpunkt wirksam wird, an welchem die Adressenbits auf dem Adressenbus festgelegt werden. Bei dem nächsten Taktimpuls Φ AA fällt das Signal OUTPUT auf den niedrigen Pegel ab, so daB die Ansteuereinrichtung 610 das Signal I/O WRITE erzeugt Das letztere Signal läuft über das NOR-Glied 612 und den Inverter 614, um das Signal I/O RD oder WR zu erzeugen.
Das Signal I/O RD oder WR steuert einen dritten Eingang des NAND-Glieds 412 an, und beim nächsten Taktimpuls Φ \A erzeugt das NAND-Glied 412 das Signal START PULSE Das Signal START PULSE setzt unmittelbar das Flip-Flop 424, um das Signal GO FF zu erzeugen. Das Signal GO FF wird in dem Inverter 428 invertiert, um das Signal NOT READY zu werden, das zu der zentralen Recheneinheit zurückgeleitet wird, um es in den Wartezustand zu bringen, wie oben beschrieben ist
Das Signal GO FF läuft über den Multiplexer 506 zu dem Zähler 510, und beim Taktimpuls Φ 2Λ wird der Zähler auf den Zählerstand eins weitergeschr.'tet, so daß der Dekod;erer514 das Signal SSTl erzeugt
Während des Signals SSTi wird der tatsächliche Befehl, der nunmehr auf dem Systemdatenbus vorhanden ist, in das Datenregister geladen. In Fig.6 konditionieren die Signale I/O WRITE, GO FF und DCBUSYA alle das UND-Güed 648, so daß es ein Ausgangssignal erzeugt das über das NOR-Glied 642 und den Inverter 644 läuft um das Signal DRI VE SDC BUS mit hohem Pegel zu erzeugen. In F ig. 3 steuert das Signal DRIVESDCBUS NAND-Glieder 311 an, so daß der Ausgang der Multiplexer 302 und 303 auf den SZX?-Datenbus durchgeschaltet werden kann. Das Signal DRIVESDCBUSlegt den Wähleingang der Datenregister-Multiplexer 300 und 301 auf den hohen Pegel fest, um so die ß-Eingänge der Multiplexer zu wählen, welche mit dem Systemdatenbus verbunden sind. Das Signal STEP ON liegt auf hohem Pegel und sperrt dar NAND-Glied 310, um dadurch den Wähleingang der Multiplexer 302 und 303 auf niedrigem Pegel zu legen, wodurch diese Multiplexer konditioniert werden, um die Ausgänge von den Datenregister-Multiplexern 300 und 301 zu erhalten. In Fig. 6 steuert das Signal I/O WRITE das UND-Glied 628 an, und bei jedem Taktimpuls P 1/4 erzeugt es ein Ausgangssignal, um das UND-Glied 622 anzusteuern. Das Signal DCBUSYA liegt auf hohem Pegel, und steuert einen zweiten Eingang des UND-Glieds 622 an. Das Signal SSTi wire1 an den dritten Eingang des UND-Glieds 622 angelegt, so daß beim Taktimpuls Φ14 des Signals SSTi das UND-Glied 622 ein Ausgangssignal erzeugt, das über das NOR-Glied 618 läuft, um das Signal LOAD DATA REGzu werden. Das letztere Signal gibt die Taktsteuerung des Befehls auf dem Systemdatenbus an die Datenregister-Halteglieder 300 und 301 weiter. Unmittelbar beim Laden des Datenregisters läuft dessen Inhalt über die Multiplexer 302 und 303 und die NAND-Glieder 311 zu dem 5DC-Datenbus.
Die Steuereinrichtung SDC, Welche ihre Wahl während des Eingabebefehls zurückbestätigt hat, hat ihr die Wahl bestätigendes Signal SACK auf niedrigem Pegel gehalten. Das Signal SACK läuft über den Inverter 724, urn das Signal DSACK zu werden, welches den Eingang D1 des Multiplexers 506 ansteuert. Wenn der Zf hler 510 einen Zählerstand von eins erhält, läuft das Signal DSACK über den Multiplexer 506, um den Zähler 510 beim Taktimpuls Φ 2A freizugeben; der Zähler wird auf einen Zählerstand von zwei geschaltet, so daß der Dekodierer 514 das Signal SSTi beendet und das Signal 5572 beginnt Während des Signals 55T2 gibt die Steuereinrichtung SDMA ein Signal FALT an die Steuereinrichtung 5DCab, um der Steuereinrichtung 5DCanzuzeigen, daß gültige Daten für sie auf dem 5DC-Datenbus verfügbar sind. Das Signal 55T2 läuft über das NAND-Glied 736
ίο und das NOR-Glied 738, um das Flip-Flop 740 anzusteuern, und beim nächstfolgenden Taktimpuls Φ 3Λ wird das Flip-Flop gesetzt um das Signal FALTzu
erzeugen.
Entsprechend dem Signal FALTtastet die Steuereinrichtung SDCden Befehl auf dem 5DC-Datenbus in das Register ein, dessen Adresse durch die Adresse auf dem 5DC-Datenbus genau festgelegt ist. Nachdem sie den Befehl in das Register eingetastet hat erzeugt die Steuereinrichtung SDC das Signal FACK als ein Bestätiguiigssignal. In Fig.6 läuft das Signal FACK über den Inverter 600, um das ji«m?I DFACK zu werden. In Fig.5 läuft das Signal DiACK über den Multiplexer 506 zu dem Zähler 510, und beim Taktimpu^ IA wird der Zähler auf einen Zählerstand von drei weitergeschaltet worauf dann der Dekodierer 514 de=, Signals 55T2 beendet und das Signal 55Γ3 beginnt In F i g. 7 wird durch die Beendigung des Signals 55T2 das Flip-Flop 740 unmittelbar zurückgesetzt um dadurch das Signal FALTzu beenden.
jo In F i g. 4 setzt das Signal 55T3 das Flip-Flop 424 zurück, um das Signal NOT READY zu beenden. Dies steuert die zentrale Recheneinheit an, um eine Durchführung des Ausgabebefehls zurückzuerhalten. Die zentrale Recheneinheit beendet dann das Signal
J5 WRITE PULSE welches über den Inverter 508 läuft, um das NOR-Glied 504 zu sperren und um ein Signal über den Eingang D 3 des Multiplexers 506 an den Zähler 510 anzulegen. Bei dem nächsten Taktimpuls Φ 2A wird der Zähler weitergeschaltet um in den Nullzustand
•to zurückzukehren. Hierauf beendet dann der Dekodierer 51Ί das Signal 55Γ3.
Hierdurch wird dann die Befehlsfolge zum Durchführen einer Datenübertragung zwischen einer ausgewählten Steuereinrichtung SDCund dem Speicher beendet.
4r> Die Folge weist einen Eingabebelehl und drei Ausgabebefehle auf. Während des Eingabebefehls wird die Steuereinrichtung SDC, die in die Datenübertragungsoperation einbezogen ist, ausgewählt, und ihr Zustand wird zu der zentralen Recheneinheit zurückge-
-)<> meldet. Während der ersten und zweiten Ausgabebefehle wird der Adresscnhinweiszähler in der Steuereinrichtung SDMA mit einem Wert geladen, welcher die ercte Adresse in dem Speicher darstellt, der in die Datenübertragungsoperationen einbezogen ist. Schließ-
r> lieh wird während des dritten Ausgabebefehls ein Befehl an die ausgewählte Steuereinrichtung SDC abgegeben, um anzuzeigen, welche Operation durchzuführen ist Die zentrale Recheneinheit ist nunmehr frei und kann zu ihrem Programm zurückkehren. Die tatsächliche Datenübertragung zwischen der ausgewählten Steuereinrichtung und dem Speicher ist durch ein direktes Zugreifen des Speichers mit Hilfe des Adressenhinweiszählers in der Steuereinrichtung SDMA erreicht.
Die ausgewählte Steuereinrichtung SDC analysiert
b5 den Befehl, der wäh end des dritten Ausgabebefehls der Einstellfolge erhalten worden ist und legt fest, welche Funktion bzw. Operation entsprechend dem Befehl vorgenommen werden sollte. Im Hinblick auf die
folgende Beschreibung sei angenommen, daß die ausgewählte Steuereinrichtung einen Zeilendrucker steuert, der 132 Zeichen pro Zeile drucken kann. Ferner soll der Befehl der Steuereinrichtung SDCbefehlen, ihr Pufferregister von dem Speicher aus mit 132 Datenbytes zur Vorbereitung eines Druckvorgangs zu laden. Scbald die Steuereinrichtung SDC den Befehl analysiert hat, beginnt sie in Fig. 12A die Datenübertragungsoperation, indem die Signale DREQ und SDC BUSY erzeugt werden. Das Signal DREQ wird für jedes zu übertragende Byte erzeugt, aber das Signal SDC BUSY bleibt während der Datenübertragungsoperation niedrig. Da dies eine Operation ist, die ein Lesen aus dem Speicher einschließt, erhält die Steuereinrichtung SDC das Signal D WRITE während der Datenübertragungsoperation auf einem hohen Pegel. In I" ig. 8 werden durch diese Signale von der Steuereinrichtung SDCdK Signale READ: DREOA und DCBUSYA auf hohem Pegel liegen, während die Signale D WRITEA und DC BUSY A auf dem niedrigen Pegel betrieben werden.
Das Signal SDC BLISYwird während der Datenübertragungsoperation auf niedrigem Pegel gehalten, um eine unbeabsichtigte Änderung des Inhaltes des Adressenhinweiszählers oder eine unbeabsichtigte Datenzerstörung in dem Datenregister zu verhindern, wenn die zentrale Recheneinheit einen Ausgabebefehl ausführen sollte, während die Datenübertragungsoperation siattfindet. In Fig. 6 wird das Signal DCBUSYA mit niedrigem Pegel an den Dekodierer 318 angelegt; selbst wenn der Dekodierer einen Freigabeeingang erhalten sollte, wird folglich sein Ausgang nicht entweder die obere oder die untere Hälfte des Adressenhinweiszählers auswählen. In Fi g. 6 sperrt das Signal DC BUSY A die UND-Glieder 622 und 648, um zu verhindern, daß die Signale LOAD DATA REG und DRIVE DC BUS erzeugt werden, wenn die Steuereinrichtung SDMA einen Ausgabebefehl fühlt, welcher das Signal I/O WRITE an der Abfeuereinrichtung 610 erzeugen würde. Das Signal DC BUSY A sperrt auch das UND-Glied 650, um eine Erzeugung des Signals PIN zu verhindern, wenn die Steuereinrichtung SDMA einen Eingabebefehl fühlt, welcher die Erzeugung des Signals I/O READan den Ansteuereinrichtungen 610 zur Folge haben würde.
Die Signale DCBUSYA und READ geben das UND-Glied 640 frei, und dieses erzeugt ein Ausgangssignal, das über das NOR-Glied 642 und den Inverter 644 läuft, um das Ausgangssignal DRIVESDCBUS zu erzeugen. Da die Signale DCBUSYA und READ während der Datenübertragungsoperation beide auf hohem Pegel sind, wählt das Signal DRIVE DC BUS die ß-Eingänge an den Datenregister-Multiplexern 300 und 301 und gibt die NAND-Glieder 311 frei. Das Signal STEP ON sperrt das NAND-Glied 310, um dadurch die Multiplexer 302 und 303 zu konditionieren, um den Inhalt des Datenregisters zu dem NAND-Glied 311 durchlaufen zu lassen, sobald das Datenregister geladen worden ist.
Wenn die Steuereinrichtung SDC das erste Signal DREQ erzeugt, gibt ein Inverter 800 ein Signal BREQ A mit hohem Pegel ab. Dies Signal läuft über das UND-Glied 662, welches ferner zu diesem Zeitpunkt durch Signale «EADund DISABLEDREQfreigegeben ist. Der Ausgang des UND-Glieds 662 läuft über das NOR-Glied 664 und der, Inverter 668 zu dem Flip-Flop 660 für eine Busanforderung.
Bei dem ersten Taktimpuls Φ 3/4 wird, nachdem das erste Signal DREQ A erzeugt wird, das Rip-Flop 660 gesetzt, wodurch das Signal BUS REQUEST auf den niedrigen Pegel gebracht wird.
Das Signal BUS REQUESTwWd an die Busleitereinrichtung abgegeben, um sie zu informieren, daß die Steuereinrichtung SDMA die Benutzung des Bus zum Adressieren des Speichers erlordert. Das Signal BUS REQUEST wird tatsächlich an einen Prioritätskodierer in der Busleitereinrichtung angelegt, um ein Signal BUS GRANT im wesentlichen auf dieselbe Weise zu erzeugen, wie das Signal in der eingangs erwähnten Anmeldung erzeugt wird. Wenn die Busleitereinrichtung festlegt, daß die Steuereinrichtung SDMA Priorität gewähren kann, leitet sie das Signal BUS GRANTzmück. Das Signal BUS GRANTsieucn den Dekodierer 346 an, und der Dekodierer gibt das Signal ENA BLE DA TA A DRab.
In F ig. 8 läuft das Signal ENABLE DATA ADR über das NAND-Glied K44: um das Signal MFM DP yii erzeugen. Das Signal MEM OP uft über den Inverter 846, um das Signal BUS BUSY zu erzeugen, welches zurück zu der Busleitereinrichtung abgegeben wird, und der Steuereinrichtung SDMA erlaubt, eine Steuerung des Systembus für einen Speicherzyklus von 940 nsei
vorzusehen.
legt den Inhalt des Systemadressenbus fest. Das Signal
Das Signal BUSGRANT
Adressenhinweiszählers auf dem
zurr Adressieren des Speichers
BUS GRANTwird an die Abtasteingänge der Multiplexer 332 und 334 und an die Freigabeeingänge der Ansteuereinrichtungen 342 und 344 angelegt. Wenn außerdem das Signal BUS GRANTden Dekodierer 346 freigibt, erzeugt der Dekodierer ein Ausgangssignal um die Ansteuereinrichtungen 340 freizugeben.
Gleichzeitig wird die Adresse auf dem Systemadressenbus festgelegt, die Steuersignal MEMSTART und WRITE werden an den Speicher über den .Systemsteuerbus von den Ansteuereinrichtungen 340 aus abgegeben. Das Signal MEM OP konditioniert eine Anstcuereinrichtung 340. um das Signal MEMSTART mit niedrigem Pegel zu erzeugen. In F i g. 6 ist das Signal D WRITE A auf niedrigem Pegel und sperrt das UND-Glied 666: folglich ist das Signal BUSREQ WRITE auf niedrigem Pegel. Dies Signal wird an eine Ansteuereinrichtung 340 angelegt; folglich liegt das Signal WRITEauf hohem Pegel.
Der Speicher spricht auf das Signal MEMSTART und das Signal WRITE mit hohem Pegel an, um eine Leseoperation durchzuführen, um das Datenbyte auszulesen, das an der durch den Adressenhinweiszählcr festgelegten Adresse gespeichert ist. Nacr lern das Datenbyte auf dem Systemdatenbus durch den Speicher festgelegt worden ist, erzeugt der Speicher das Signa! MEM ACK mit niedrigem Pegel. In F i g. 8 steuert das Signal MEMACK eine Ansteuereinrichtung 828 mit drei Zuständen an, um das Signal MEMACK zu erzeugen. Das Signal MEMACK wird an das Flip-Flop 842 angelegt und beim nächsten Taktimpuls Φ \A setzt der Ausgang des Inverters 820 das Flip-Flop, um dadurch das NAND-Glied 844 zu sperren und die Signale MEM OPund BUS BUSYzu beenden.
Zu dem Zeitpunkt, zu welchem die Busleitereinrichtung das Signal BUS GRANT erzeugte, wirkte dies Signal über die Ansteuereinrichtungen 830, um das Signal BUS GRANTED mit hohem Pegel und das Signa! BUS GRANTED mit niedrigem Pegel zu erzeugen. Das Signal BUS GRANTED setzt das Rip-Flop 660 für eine Busanforderung zurück. Das Signal BUS GRANTED und das Signal READ steuern
beide das UND-Glied 826 während des Speicherzyklus an. Zur selben Zeit wird das Signal MEM ACK erzeugt, um das Flip-Flop 842 zu setzen, es läuft über das UND-Glied 826 und das NOR-Glied 618, um das Signal LOAD DA TA REG zu erzeugen. Hierdurch wird das Datenbyte im Takt gesteuert, das aus dem Speicher von dem Systemdatenbus in die Halteglieder in den Dalenregister-Multiplexern 300 und 301 ausgelesen worden ist. Da das Signal DRIVESDC BUS während der Datenübertragungsoperation auf hohem Pegel liegt, läuft Datenbyte unmittelbar über das Datenregister, über die Multiplexer 302 und 303 und über die NAND-Glieder311 zudem 5DOBus^_
Außer dem Schaffen des Signals LOAD DATA REG erzeugt das UND-Glied 826 das Signal LOAD READ DATA das über den Inverter 838 angelegt wird, um das flip-Flop 816 zu setzen, um dadurch anzuzeigen, daß das Datenregister geladen worden ist.
Der gesetzte Ausgang des Flip-Flops 816 erzeugt das Signal DR LD FF mit hohem Pegel, welches an das Flip-Flop 752 angelegt wird, so daß das Flip-Flop 752 unmittelbar bei Setzen il''s Flip-Flops 816 gesetzt wird. Wenn das Flip-Flop 752 gesetzt ist, steuert das Signal DISABLE BREQ mi hohem Pegel das UND-Glied 306 an, das seinerseits Jas NAND-Glied 310 sperrt, um sicherzustellen, daß ein Signal mit niedrigem Pegel an die Multiplexer 302 und 303 angelegt wird, um den Inhalt des Datenregisters über die Multiplexer 302 und 303 an die NAND-Glieder 311 durchzuschalten. Die NAND-Glieder 311 sind während der Datenübertragungsoperation durch das Signal DRIVE DC BUS konditioniert; folglich werden die Daten von dem Datenregister auf dem 5DC-Datenbus festgelegt.
Wenn das Flip-Flop 752 gesetzt ist, sperrt das Signal DISABLE BREQ mit niedrigem Pegel das UND-Glied 662 und beendet den Eingang mit hohem Pegel an dem Flip-Flop 660.
Bei dem ersten Taktimpuls Φ 3A setzt, nachdem das Datenregister geladen und das Flip Flop 752 gesetzt ist, der Ausgang des Flip-Flops 752 das Flip-Flop 750. Wenn das Flip-Flop 750 gesetzt ist. steuert sein Ausgang eine Ansteuereinrichtung 706 an. um das Signal DACK auf dem 5DC-Steuerbus anzuordnen. Durch dies Signal wird der Steuereinrichtung SDC gemeldet, daß ein Datenbyte auf dem 5DC-Datenbus verfügbar ist und nunmehr in das 5DC-Pufferregister eingetastet werden sollte. Wenn die Steuereinrichtung 5DCdas Datenbyte annimmt, beendet die Steuereinrichtung SDCdann das Signal DREQ und das Signal DREQA fällt auf den niedrigen Pegel ab. In Fig. 7 setzt das Signal DREQA die Flip-Flop 750 und 752 zurück. In F i g. 6 sperrt es das UND-Glied 662. Hierdurch ist eine Erzeugung eines weiteren Signals BUS REQUEST verhindert, bis die SDC-Signale, die eine weitere Anforderung vornehmen wollen wieder das Signal DREQ erzeugen.
Einen Speicherzyklus (von 940 nsek), nachdem er begonnen wurde, wird das Signal BUS GRANT durch die Busleitereinrichtung beendet In Fig.3 sperrt das Signal BUS GRANTdIt Ansteuereinrichtungen und die Multiplexer, durch welche der Inhalt des Adressenhinweisregisters an den Systemadressenbus angelegt wird. In F ig. 8 fällt das Signal BUS GRANTED auf den niedrigen Pegel ab, und das Signal BUS GRANTED steigt auf den hohen Pegel an, wenn das Signa! BUS GRANTbeendet ist Das Signal BUS GRANTED setzt das Flip-Flop 842 zurück, und wenn das Flip-Flop zurückgesetzt ist, wird das positiv werdende Signal
END MEMOPFF an den Zähler 320 niedriger Ordnung des Adressenhinweisregisters angelegt, um auf diese Weise die Adresse in dem Zähler um eins weiterzuschalten. Der Zähler ist nun bereit, die nächst höhere Zähler-Stelle zu adressieren, wenn die nächste Datenanforderung von der Ansteuereinrichtung SDC vorgenommen wird.
Die Übertragung eines Datenbytes von dem Speicher zu der Steuereinrichtung SDC ist dann beendet. Sobald die Steuereinrichtung SDC für ein weiteres Datenbyte bereitist^ erzeugt sie wieder das Datenanforderungssignal DREQ, und es findet eine weitere Übertragungsoperation statt, die der gerade beschriebenen entspricht. Nach 132 Übertragungen, die der gerade beschriebenen ähnlich sind bzw. entsprechen, ist das Register in dem Drucker geladen, und wenn dies gefühlt wird, beendet die Steuereinrichtung SDC das Signal SACK mit nioririppm PpppI wplrhp»; 7iin"if*lc 711 Ηργ .Stpiiprpinrirh-Hing SDMA während der Datenübertragungsoperation übertragen worden ist. Wenn das Signal SACK beendet ist, wird das Signal DSACK mit niedrigem Pegel, das durch den Inverter 730 erzeugt wird, beendet, und hierdurch wird das Signal NAVAIL, das mittels des NOR-Glieds 544 erzeugt worden ist. beendet. Hierdurch wird das NAND-Glied 542 angesteuert, so daß Unterbrechungen erkannt oder Eingabebefehle ausgeführt werden können, ohne daß das Flip-Flop 422 gesetzt wird. Die Steuereinrichtung 5DC beginnt nunmehr eine Unterbrechungsanforderung, um der zentralen Recheneinheit mitzuteilen, daß sie für ein Drucken bereit ist. Nach dem Druckzyklus des Druckers gibt die Steuereinrichtung 5DC ihren Zustand an die zentrale Recheneinheit wieder durch.
Datenübertragungen von der Steuereinrichtung SDC an den Speicher werden insoweit auf dieselbe Weise eingeleitet, wie Ausgangsübertragungen. Sobald die Steuereinrichtung SDC ein Datenbyte auf dem SDC-Datenbus für eine Übertragung zu dem Speicher angeordnet hat, fällt das Signal DREQ auf den niedrigen Pegel ab, wodurch der Inverter 800 das Ausgangssigna'i DREQ A mit hohem Pegel erzeugt. In F i g. 12B erzeugt zu dem gleichen Zeitpunkt, zu welchem das Signal DREQ für das erste zu übertragende Byte erzeugt wird, die Steuereinrichtung SDC die Signale D WRITE und SDC BUSY mit niedrigem Pegel. Diese beiden Signale bleiben während der Datenübertragungsoperation auf dem niedrigen Pegel; folglich sind das von dem Inverter 808 geschaffene Signal D WRITE A und das von dem Inverter 624 geschaffene Signal DCBUSYA beide auf dem hohen Pegel. Das Signal D SACK ist auf dem hchen Pegel, da die Steuereinrichtung SDC während des Eingabebefehls der Einstellfolge gewählt wurde.
Wenn das Signal DREQA auf den hohen Pegel ansteigt, steuert es das UND-Glied 804 an, welches auch von dem Signal DR LD FF angeschaltet wird. Gleichzeitig steuert das Signal D WRiTEA einen Eingang eines UND-Glieds 812 an, welches weiter angesteuert wird, da das Flip-Flop 750 zurückgesetzt wird. Der Ausgang des UND-Glieds 812 konditioniert das UND-Glied 804, so daß es das Signal LOAD WRI TE DATA mit hohem Pegel und Ober das NOR-Glied 618 das Signal LOAD DA TA REG mit niedrigem Pegel erzeugt
Das Signal LOAD WRITE DATA steuert das Flip-Flop 8i6 an, und beim nächsten Taktimpuls Φ \A wird das Flip-Flop gesetzt. Das Signal LOADDATA REG wird an die Datenregister-Multiplexer 300 und 301 angelegt, und da das Signal DRIVESDC BUS auf
niedrigem Pegel ist, werden die Daten auf dem SDC-Datenbus über die /4-Eingänge in das Datenregister mittels Taktimpulsen eingegeben. Da das Signal STEP ON auf hohem Pegel liegt, erzeugt das NAND-Glied 310 ein Ausgangssignal an den Multiplexern 302 und 303, um die A Eingänge zu wählen; folglich läuft das Datenbyte in dem Datenregister über die Multiplexer 302 und 303 zu uen Ansteuereinrichtungen 314 mit drei Zuständen.
Wenn das Flip-Flop 816 gesetzt wird, wird das Signal DR LD FF an das UND-Glied 666 angelegt, und da die Signale D WRITEA und END MEM OP FF beide auf hohem Pegel liegen, schafft das UND-Glied das Signal BUSREQWRITE. welches an eine Ansteuereinrichtung 340 angelegt wird. Der Ausgang des UND-Glieds 666 läuft über das NOR-Glied 664 und den Inverter 668. um das Flip-Flop 660 zu konditionieren. Bei dem nächsten Taktimpuls Φ3Α wird das Flip-Flop gesetzt,
Flg!ICII Lf KS U I
i icc-r -,.. «.. »
f tj I f U t1 £VUglll
Busleitereinrichtung bestätigt die Busanforderung. durch Rückleiten des Signals BUSGRANT mit niedrigem Pegel. In F i g. 3 tastet das Signal BUS GRANT die Adresse von dem Adressenhinweiszähler über Multiplexer 332 und 334 und die Ansteuereinrichtungen 342 und 344 auf dem Systemadressenbus ab, um den Speicher zu adressieren; das Signal BUS GRANT steuert auch den Dekodierer 346 an, um das Signal ENABLE DATA ADR mit niedrigem Pegel zu erzeugen. Das letztere Signal steuert die Ansteuereinrichtung340anundwirdanan NAND-Glied 844 angelegt, um das Signal MEM OP mit hohem Pegel und das Signal BUSBUSY mit niedrigem Pegel zu erzeugen. Das Signal MEMOP läuft über eine Anstcuereinrichtung 340, um das Signal MEMSTART zu werden. Das Signal MEMSTART in Kombination mit dem Signal WRITE mit niedrigem Pegel hat zur Folge, daß der Speicher einen Zyklus durchläuft, während welchem er das Datenbyte auf dem Datenbus bei der Adresse speichert, die durch die auszulesende Adresse des Adressenhinweiszählers genau festgelegt ist.
Das Signal BUS GRAXT von der Busleitereinrichtung wird an die Ansteuereinrichtung 830 angelegt, um das Signal BUS GRANTED mit hohem Pegel und das Signal BUS GRANTED mit niedrigem Pegel zu erzeugen. Das Signal BUS GRANTED wird an das Flip-Flop 660 angelegt, um das Flip-Flop zurückzusetzen und die Busanforderung zu beenden. Das Signal BUS GRANTED wird an ein UND-Glied 638 angelegt, welches bereits angesteuert ist, da das Lesesignai niedrig ist, so daß das UND-Glied 638 das Signal ENABLE DATA DRV auf den niedrigen Pegel steuert. In Fig.3 steuert das letztere Signal die Ansteuereinrichtungen 314 an, um das Datenbyte auf dem Systemdatenbus anzuordnen, so daß es während des Speicherzyklus gespeichert wird.
Zu dem Zeitpunkt, zu welchem das Flip-Flop 816 gesetzt wurde, um anzuzeigen, daß das Datenbyte auf dem SDC-Datenbus in dem Datenregister gespeichert worden ist, wurde eine Bestätigung zu der Steuereinrichtung SDC zuriickgeleitet, so daß sie das nächste Datenbyte für eine Übertragung vorbereiten kann. Wenn das Flip-Flop 816 gesetzt ist, setzt das Signal DR LD FFunmittelbar das Flip-Flops 752 und bei dem nächstfolgenden Taktimpuls Φ 3,4. setzt der Ausgang des Flip-Flops 752 das Flip-Flop 750 für die Datenbestätigung. Der Ausgang dieses Flip-Flops läuft über Ansteuereinrichtungen 706 und über den SDC-Steuer-
bus als das Signal DACK. um die Steuereinrichtung SDCzu informieren, daß ein weiteres Datenbyte auf den SPC-Datenbus angeordnet werden kann. Entsprechend dem Signal DACK beendet die Steuereinrichtung SDC ihr Signal DREQ, und das Signal DREQA setzt die Flip-Flops 750 und 752 zurück. Während das Flip-Flop 750 gesetzt wird, liegt das Signal DACK FFjedoch auf einem niedrigen Pegel und sperrt in Fig.8 die UND-Glieder 812 und 804, wodurch die Signale LOAD WRITEDATA und LOADDATA REG beendet werden.
Nach dem der Speicher das Datenbyte auf dem Systemdatenbus angenommen hat, erzeugt er das Signal MEM ACK, welches über die Anstcuereinrichtung 828 läuft und das Signal an dem Flip-Flop 842 konditioniert, so daß das Flip-Flop bei dem nächsten Taktimpuls Φ \Α. gesetzt wird. Dies zeigt an, daß die Speicheroperation durchgeführt ist. Der Ausgang des Flip-Flops sperrt das
KfA kl Γ*\ /~* I ° « _J O 4 *t -~ J-J I J * O * I i Λ t~* k M S~\ Γ1
I ir\l tL*-VJ !!CU It. Ulli UdUUILII UIC .3IgIIdIC IVIUlVI V/Γ und BUS BUSYiU beenden. Zur gleichen Zeit setzt das Signal END MEM OP FF das Flip-Flop 816 über das UND-Glied 814. Das Signal END MEM OP FFschaltet die Adresse in den Adressenhinweiszählern 320 bis 323 weiter, um die Speicheradresse des nächsten zu übertragenden Bytes zu erhalten.
Sobald die Steuereinrichtung SDCdas Signal DACK erhält, beendet es seine Datenanforderung an der Steuereinrichtung SDMA und geht zu Operationen über, die notwendig sind, um ein weiteres Datenbyte auf dem SDC-Datenbus anzuordnen. Sobald dieses nächste Datenbyte auf dem Bus angeordnet ist, fällt das Signal DREQ auf den niedrigen Pegel ab, um einen weiteren Zyklus zum Übertragen eines weiteren Datenbytes an den Speicher zu beginnen. Diese Operationsfolge dauert an. bis die Steuereinrichtung SDC sie beendet und sie alle Bytes übertragen hat, die sie für eine Übertragung zur Verfügung hat. Nachdem die Datenübertragung durchgeführt ist, kann die Steuereinrichtung SDC eine Unterbrechung über die Steuereinrichtung SDMA anfordern, um diesen Zustand an die zentrale Recheneinheit zu melden.
Am Ende einer Datenübertragungsoperation entweder an oder von dem Speicher schafft die Steuereinrichtung SDC eine Unterbrechungsanforderung, um der Steuereinrichtung SDMA mitzuteilen, daß sie frei ist, um zu einer anderen Operation überzugehen und um die zentrale Recheneinheit von dem Zustand der Steuereinrichtung SDC zu informieren. Außerdem können die Steuereinrichtungen SDC Unterbrechungen zu anderen Zeitpunkten anfordern, um verschiedene Zustandsbedingungen durchzugeben.
Der SDC-Steuerbus hat eine Leitung, die über ihn von jeder Steuereinrichtung SDC zu einem Eingang des Prioritätskodierers 526 verläuft. Im folgenden sei angenommen, daß die Steuereinrichtung SDC mit der Einrichtungsadresse 3 gerade eine Datenübertragungsoperation durchgeführt hat und wünscht ihre Steuereinrichtung SDMA freizumachen und diesem Zustand der zentralen Recheneinheit zu melden. In Fig.5 erzeugt die Steuereinrichtung SDCdas Signal INT-REQi mit niedrigem Pegel, welches mittels des Prioritätskodierers 526 kodiert wird, um zwei Signale mit hohem Pegel zu schaffen, die an Flip-Flops 534 und 536 angelegt werden. Der Prioritätskodierer erzeugt auch ein Ausgangssignal, Vielches über den Inverter 546 läuft, um das NAND-Glied 542 anzusteuern. Bei dem nächstfolgenden Taktimpuls Φ 3A gibt das NAND-Glied 542 ein Ausgangssignal ab, um das Flip-Flop 532 zum Ansteuern
einer Unterbrechungsfolge zu setzen. Der Ausgang dieses Flip-Flops gibt mittels Taktimpulse den Wert I I in die Flip-Flops 534 und 536. Der Ausgang des Flip-Flops 534 ist das Signal IDN1, und es wird an den Multiplexer 406 und den Multiplexer 332 angelegt. Der Ausgang des Flip-Flops 536 ist das Signal IDNO, und es wird an das UND-Glied 462 und den Multiplexer 332 angelegt. Wenn das Flip-Flop 532 gesetzt ist, wird das Signal INTSEQ EN FF mit niedrigem Pegel an die Multiplexer 332 und 334 angelegt und es wählt die /4-b.ingänge dieser Multiplexer für eine Verbindung mit dem Systemadressenbus aus, wenn ein Signal BUS GRANT anliegt. In Fig. 4 steuert das Signal INTSEQENFF mit hohem Pegel das NAND-Glied 462 an, um das Signal IDNO durchzulassen, steuert den Eingang B 1 des Multiplexers 406 an und legt ein Signal mit hohem Pegel an dem Wähleingang des Multiplexers 406 fest. Dies hat zur Folge, daß die Adressierbits 00111 auf den S'DC-Adressenbus-Lcitungen RSL 4 bis RSLÄ) angeordnet werden. Gleichzeitig läuft das Signal INTSEQ Eh FF über das NAjMD-Glied 656 und das NOR-Glied 654, um das Signal PIN zu erzeugen.
Bei dem ersten Taktimpuls Φ 2A läuft, nachdem das Flip-Flop 532 gesetzt ist, das Signal INTSEQ EN FF über den Multiplexer 524 und setzt das Flip-Flop 528. Der Setzzustand des Flip-Flops 528 und der Rücksetzzustand des Flip-Flops 530 wird durch den Kodierer 538 gesetzt, um das Signal IST\ mit niedrigem Pegel zu erzeugen. Gleichzeitig beendet cLt Kodierer das Signal /.5TO, und dieses sperrt den Freigabeeingang des Prioritätskodierers 526, so daß keine weiteren Unterbrechungen erkannt werden können, während die derzeitige Unterbrechung verarbeitet wird. In Fig. 7 läuft das Signal ISTX über das NOR-Glied 718, um das Flip-Flop 720 anzusteuern, und beim Taktimpuls Φ ZA wird das Flip-Flop gesetzt, um das Signal SALT zu erzeugen. Dies Signal wird zu der Steuereinrichtung SDC zurückgeleitet, um sie zu informieren, daß eine Adresse auf dem SDC-Adressenbus vorhanden ist und für die Steuereinrichtung SDC bereit ist, um sie abzutasten. Diese Adresse ist die Adresse der unterbrechenden Einrichtung, und ihre Aufgabe ist, eine Auswahl der unterbrechenden Einrichtung insoweit auf dieselbe Weise zu simulieren, wie sie während des Eingabebefehls einer Einstellfolge vorkommt. Der einzige Unterschied besteht darin, daß in dieser Adresse das Signal RSL2 der Steuereinrichtung SDC anzeigt, daß dies eine Unterbrechungsfolge und nicht eine Auswahlfolge ist.
Nachdem die Steuereinrichtung SDCdie Adresse auf dem SPC-Adressenbus abtastet, antwortet sie mit einem Signal SACK. In F i g. 4 wird das Signal SACK in dem Inverter 724 invertiert, um das Signal DSACK zu erzeugen. In Fig.5 läuft das Signal DSACK über den Multiplexer 524, um das Flip-Flop 528 zurückzusetzen und das Flip-Flop 530 zu setzen. Die Ausgänge von den Flip-Flops bewirken, daß der Dekodierer 538 das Signal ISTi beendet und das Signal IST2 mit niedrigen Pegel und das Signal IST2 mit hohem Pegel beginnen. In Fig. 7 wird, wenn das Signal ASTt beendet ist, das Flip-Flop 720 unmittelbar durch den Ausgang des NOR-Glieds 718 zurückgesetzt.
Das Signal /ST2 läuft über das NOR-Glied 738 und steuert das Flip-Flop 740 an, so daß das Flip-Flop bei dem nächsten Taktimpuls Φ 3.4 gesetzt wird. Das Flip-Flop 714 erzeugt das Signal FALT über eine Ansteuereinrichtung 706 und dies Signal wird zu der Steuereinrichtung SDCzurückgeleitet, um es zu fragen.
um den Unterbrechungszustand zu liefern. Wenn die Steuereinrichtung SDC das Signal FALT erkennt, legt es den Unterbrechungszustand auf dem 5OC-Datenbus fest und antwortet mit einem Signal FACK.
In F i g. 6 wird das Signal FACKbei dem I .verte,- 600 invertiert, um das Signal D FACK zu werden, welches einen Eingang des UND-Glieds 604 ansteuert. Da das Signal IST2 auf niedrigem Pegel liegt, konditioniert der Ausgang des NOR-Glieds 608 weiterhin das UND-Glied
in 604, und der Ausgang des UND-Glieds läuft über das NOR-Glied 618, um das Signal LOAD DA TA REG zu erzeugen. Das Signal DRIVESDC BUS liegt zu diesem Zeitpunkt auf niedrigem Pegel; folglich wird das Zustandsbyte in die Datenregister-Multiplexer 300 und
r. 301 geladen. Das Signal STEP ON sperrt das NAND-Glied 310, so daß der Inhalt des Datenregisters über die Multiplexer 302 und 303 zu den Ansteuereinrichtungen 314 durchgeschaltet wird.
Das Signal DFACK wird auch an das ÜND-Giieu
jo 606 angelegt, und erzeugt in Verbindung mit dem Signal IST2 das Signal INTREQ, welches an den Dekodierer 346 angelegt wird, wodurch der Abschluß 2 als der Ausgangsanschluß des Dekodierers gewählt wird. Das Signal INTREQ schaltet auch das Flip-Flop 658 an, und
_') beim nächsten Taktimpuls Φ 3/4 wird das Flip-Flop gesetzt, um das Signal INTREQ FF zu erzeugen. Dies Signal läuft über die Ansteuereinrichtung 828 und zu dem Systemsteuerbus wie das Signal INT REQ.
Nach einer unbestimmten Zeit legt die zentrale
in Steuereinrichtung fest, daß sie nun die Unterbrechung verarbeiten kann, und zu diesem Zeitpunkt erzeugt die zentrale Recheneinheit ein Signal BUS GRANT, wie im einzelnen in der vorerwähnten Anmeldung ausgeführt ist.
i-, In Fig. 3 tastet das Signal BUSGRANT auf dem Systemadressenbus eine Adresse ab, die den Signalen entspricht, die an die /4-Eingänge der Multiplexer 332 und 334 angelegt werden. Außerdem steuert das Signal BUS GRANT den Dekodit.er 346 an, und es erzeugt
M) einen Ausgang, um die Ansteuereinrichtungen 350 anzusteuern, um auf dem Systemdatenbit zwei Bits der 3Bit-Adresse anzuordnen und festzulegen, die die Steuereinrichtung SDMA kennzeichnet. Auf diese Weise ist auf dem Systernadressenbus die Adresse
4") 10100011 angeordnet und festgelegt, wobei die zwei niedrigstwertigen Bits die unterbrechende Steuereinrichtung 5DC und die drei höherwertigen Bits ihre Steuereinrichtung SDMA kennzeichnen. In F i g. 8 läuft das Signal BUS GRANT über die Ansteuereinrichwn-
-,0 gen 830, um das Signal BUS GRANTED mit hohem Pegel und das Signal BUS GRANTED mit niedrigem Pegel zu erzeugen. In Fig. 6 gibt das Signal BUS GRANTED das UND-Glied 638 frei, und da das Signal INTSEQ EN FEauf niedrigem Pegel ist. gibt der
v, Ausgang des NOR-Glieds 636 ferner das UND-Glied 638 frei, so daß das NOR-Glied 632 das Signal ENABLE DATA DRVmh niedrigem Pegel erzeugt. In F i g. 3 gibt das letztere Signal die Ansteuereinrichtung 314 frei, um auf dem Systemdatenbus die Ausgangssi-
bo gnale von den Multiplexern 302 und 303 festzulegen. Da das Ausgangssignal von dem NAND-Glied 310 zu diesem Zeitpunkt niedrig ist, entspricht dieser Ausgang dem Inhalt des Datenregisters und ist der Zustand, der von der unterbrechenden Steuereinrichtung SDC
bi gemeldet wird.
In F ig. 5 wird das Signal BUS GRANTED an die Multiplexer 522 und 524 angelegt und wird über die Multiplexer bei dem nächsten Taktimpuls Φ 2Α
10
15
30
gesteuert. Der Ausgang des Multiplexers 522 setzt unmittelbar das Flip-Flop 532 zur Freigabe der Unterbrechungsfolge zurück, und der Ausgang des Multiplexers 524 schaltet den Zählerstand in den Flip-Flop 528 und 530 auf einen Zählerstand von drei.
Wenn beide Hip-FIops 528 und 530 gesetzt sind, konditionieren die Ausgänge den Dekodierer 538, um das Signal /5T2 zu beenden. Der Dekodierer erzeugt einen Ausgang an seinem Ausgangsanschluß für die Zahl drei, aber dies Signal wird nicht verwendet
Wenn das Signal IST2 beendet ist, wird das Flip-Flop 740 unmittelbar durch den Ausgang des NOR-Glieds 738 zurückgesetzt, und das Signal K4 LT wird beendet. Dementsprechend beendet die Steuereinrichtung SDC das Signal FACK.
Die auf dem Systemadressenbus angeordnete und festgelegte Adresse und der auf dem Systemdatenbus festgelegte Zustand werden in zwei nicht dargestellte Hardware-Register in der Busleitereinrichtung 104 eingegeben. Die Busleitereinrichtung unterbricht die zentrale Recheneinheit, wie in der vorerwähnten Anmeldung ausgeführt ist Nachdem die zentrale Recheneinheit den Zustand verarbeitet hat, kann sie eine weitere Operation der Steuereinrichtung SDC dadurch einleiten, daß zuerst ein Eingabebefehl und dann eine Folge von drei Ausgabebefehlen erzeugt wird. Selbstverständlich muß der endgültige Ausgabebefehl nicht eine Datenübertragungsoperation, wie oben beschrieben, genau festlegen, sondern kann eine bestimmte, spezielle Funktion der Einrichtung kennzeichnen, die mit der adressierten Steuereinrichtung SDC verbunden ist, beispielsweise kann er ein Drucker oder Locher auswählen, oder ein Kartenzuführmagazin bezeichnen, wenn die an der Steuereinrichtung SDC angebrachte periphere Einrichtung ein Datenaufzeich- r> nungsgerät ist.
Bei der oben beschriebenen Einstellfolge eines Eingabe- und von drei Ausgabebefehlen ist angenommen, daß die Steuereinrichtung SDMA nicht besetzt war, und daß die Steuereinrichtung SDC, die durch die w eingegebene Befehlsadresse genau festgelegt wurde, vorhanden war. Wenn eine dieser Bedingungen nicht gilt, wird dieser Zustand der zentralen Recheneinheit mitgeteilt, und die Ausgabebefehle können nicht folgen.
Wenn die Steuereinrichtung SDMA zu dieser Zeit 4> besetzt ist, erkennt sie ihre Adresse und erzeugt das Signal STARTPULSE;d\e vorbeschriebene eingegebene Befehlsfolge wird dann abgewandelt. Wenn das Datenregister der Steuereinrichtung SDMA geladen ist, wird das Flip-Flop 816 gesetzt, um diese Tatsache >o anzuzeigen, und das Signal DR LD FF ist auf einem niedrigen Pegel, um anzuzeigen, daß die Steuereinrichtung SDMA besetzt ist. Wenn eine Steuereinrichtung SDC. die mit der Steuereinrichtung SDMA verbunden ist, ein Signal SACK mit niedrigem Pegel erzeugt, das anzeigt, daß es mit der Steuereinrichtung SDMA in Verbindung steht, ist das Signal DSACK in F i g. 7 auf dem niedrigen Pegel. Die beiden Signale DR LD FFund DSACK werden an das NOR-Glied 544 angelegt, um das Signal NAVAlL zu erzeugen. Das Signal NAVAIL ω wird an das NOR-Glied 438 angelegt, welches das Signal INTSEQ EN FFmH niedrigem Pegel erhält. Das letztere Signal ist auf niedrigem Pegel, wenn eine Unterbrechungsfolge von der Steuereinrichtung SDMA durchgeführt wird. Wenn daher die Steuereinrichtung hi SDMA besetzt ist, gibt das NOR-Glied 438 ein ^Ausgangssignal ab, um das Flip-Flop 422 anzusteuern. 'Wenn das Signal STARTPUlSEerzeugt wird, um das GO-Flip-Rop zu setzen, läuft es über den Inverter 436 und setzt das Signal 422, um dadurch einen Eingang des NAND-Glieds 442 anzusteuern. Das Signal SELECTION ist auf einem hohen Pegel, wie vorstehend beschrieben, so daß das NAND-Glied 442 ein Ausgangssignal erzeugt, das über das NOR-Glied 448 läuft, um das Signal STEPON auf den hohen Pegel zu bringen. In Fig.5 steuert das Signal STEPON den Eingang A 2 des Multiplexers 506 an, und das Signal von dem GO-Flip-Flop läuft über den Eingang D 4 des Multiplexers 506 zu dem Zähler 510. Dieser schaltet den Zähler auf den Zählerstand 1, und der Dekodierer 514 gibt das Signal SST 1I. Das Signal STEPON ist jedoch auf dem niedrigen Pegel und sperrt das NAND-Glied 716, so daß das Signal SALT nicht von dem Flip-Flop 720 während des Signals 55Tl erzeugt wird.
Wenn der Zähler 510 einen Zählerstand von eins aufweist, läuft das Signal STEP ON, das an dem Eingang D 5 des Multiplexers 506 angelegt ist, über den Multiplexer zu dem Zähler, und beim nächsten Taktimpuls Φ 2A wird das Signal SSTi beendet, und das Signal 55T2 beginnt Normalerweise würde das Signal FALT während des Signals 5ST2 erzeugt werden. Dies ist jedoch nicht notwendig, da die Steuereinrichtung SDC sonst besetzt ist so daß das Signal STEPONmh niedrigem Pegel das NAND-Glied 736 sperrt und das Setzen des Flip-Flops 740 verhindert.
Die Verbindung eines Zählerstands von zwei im Zähler 510 und des Signals STEPONmh hohem Pegel wählt den Eingang D6 des Multiplexers 506 aus. In Fig.3 ist das Signal DISABLEDREQ auf dem niedrigen Pegel, so daß der Inverter 308 das Signal STEPENABLEmW hohem Pegel erzeugt das über den Eingang D6 des Multiplexers 506 an den Zähler 510 angelegt wird. Bei dem nächsten Taktimpuls Φ 2A wird der Zähler auf einen Zählerstand von drei geschaltet, so daß dann der Dekodierer 514 das Signal 55T2 beendet und das Signal 55T3 beginnt. In F i g. 4 setzt das Signal 55T3 das GO- Flip-Flop zurück, um dadurch das Signal NOT READY zu beenden. Dies steuert die zentrale Recheneinheit an, um die Durchführung des eingegebenen Befehls zurückzuerhalten. Die zentrale Rechenein· heit beendet dann das Signal DATA BUS IN, und der Ausgang des NOR-Glieds 504 steigt auf den hohen Pegel an. Der Ausgang des NOR-Glieds 504 läuft über den Multiplexer 506 zu dem Zähler 510, und bei dem nächsten Taktimpuls Φ 2A schaltet der Zähler wieder weiter, um ihn auf einen Zählerstand null zurückzubringen. Hierdurch wird das Ausgangssignal 55T3 von dem Dekodierer 514 aus beendet. Das Flip-Flop 522 wird zurückgesetzt, wenn das Signal INPUT endet, um dadurch das Signal I/O RD oder WR auf den niedrigen Pegel zu bringen.
Der Rücksetzausgang des Flip-Flops 422 ist mit dem Eingang D3 des Multiplexers 303 verbunden, wie oben in Verbindung mit Fig.3 ausgeführt ist, um den Besetztzustandswert 80 zu erzeugen. Alle Eingänge an dem NAND-Glied 310 sind auf niedrigem Pegel, so daß der Ausgang des NAND-Glieds die Ä-Eingänge der Multiplexer 302 und 303 zum Anlegen an die Ansteuereinrichiungen 314 mit drei Zuständen auswählt. Während des Signals 55T3 wird das UND-Glied 630 freigegeben, so daß das NOR-Glied 632 das Signal ENABLE DA TA DR V mit niedrigem Pegel erzeugt, und dies Signal die Steuereinrichtung 314 ansteuert, um den Besetztzustand an den Datenbus durchzuschalten. Von dem Datenbus aus wird es zu dem Rechenwerksregister in der zentralen Recheneinheit /urückgcleitct.
Nachdem der Zustand von der zentralen Recheneinheit analysiert ist, beendet sie dann diesen Vorgang.
Wenn die adressierte Steuereinrichtung SDC nicht vorhanden ist, ändert sich auch die eingegebene Befehlsfolge gegenüber der normalen Folge. In diesem Fall findet die Folge auf die normale Weise bis zum Signal i'STt statt, wenn das NAND-Glied 716 ein Ausgang !»signal erzeugt, um das Flip-Flop 720 zu setzen und das Signal SALT-ai überzeugen. Der Ausgang des NAND-Glieds 716 ist das Signal ENSALTX, welches an den Jungang / und über den Inverter 460 an den Eingang K des Flip-Flops 446 angelegt wird. Wenn nunmehr die adressierte Steuereinrichtung SDC vorhanden ist, antwortet sie normalerweise auf das Signal SALT mit dem Signal SACK, bevor der nächste Taktimpuls Φ IA und das Signal SACK in dem Inverter 724 invertiert wird, um das Signal D SACK zu werden, welches Ober das NOR-Glied 444 angelegt wird, um das Flip-Flop 4Ί6 zurückgesetzt zu halten. Wenn die adressierte Steuereinrichtung 5DC nicht vorhanden ist, dann kann sie das Signal SACK nicht erzeugen und es wird kein Rücksetzsignal an das Flip-Flop 446 angelegt In diesem Fall wird das Flip-Flop bei dem nächsten Taktimpuls Φ \A gesetzt, der auf die Schaffung des Signals &4Ζ.Γ folgt Der Ausgang des Flip-Flops 446 läuft über das NOR-Glied 448, um das Signal STEPON zu überzeugen. Das Signal STEP ON setzt das Flip-Flop 720 unmittelbar zurück, wodurch das Signal SALT beendet wind, und verhindert weiter das Setzen des Flip-Flops 740, welches das Signal F4Z.Terzeugt
Das Signal! STEP ON gibt das NAND-Glied 310 frei, da das Signail SDMA Probe auf niedrigem Pegel ist, um einen zweiten Eingang des NAND-Glieds 310 anzusteuern, ind das Signal DISABLE RREQ auf dem niedrigen Pegel ist, um das NAND-Glied 306 zu sperren. Der Ausgang de» NAND-Glieds 306 erzeugt das Signal ENABLESTEPmw hohem Pegel, und das NAND-Glied 310 legt ein Signal mit hohem Pegel an den Auswähleingang der Multiplexer 302 und 303 an, um dadurch die B- Eingänge zu wählen. Alle diese ß-Eingänge sind mit einem Anschluß + V verbunden, außer dem Anschluß /73 des Multiplexers 303, welcher das Signal BUSYmil hohem Pegel erhält. Infolgedessen befinden sich alle Ausgänge der Multiplexer 302 und 303 auf dem logischen Pegel null, und diese Ausgänge werden an die Ansteuereinrichtungen 314 angelegt.
In F i g. 5 liiuft das Signal STEP ON über den Ausgang £>5 des Multiplexers 506, und bei dem nächsten Taktimpuls Φ 2A schaltet der Zähler 510 auf einen Zählerstand von zwei weiter. Hierdurch wird das Signal SST\ beendet und das Signal SST2 beginnt. Nichts geschieht während des Signals SST2, welches die Zeit ist, bei welcher der Zustand in das Datenregister geladen würde. Da die adressierte Steuereinrichtung SDC nicht vorhanden ist, kann das Signal D FACK nicht schaffein, um das UND-Glied 604 anzusteuern und das Datenreipster zu laden.
Wenn der Zählerstand von zwei in dem Zähler 510 vorhanden ist, und das Signal STEP ON wi dem hohen Pegel ist, wird das Signal ENABLESTEP über den Multiplexer 506 zu dem Zähler 510 durchgeschaltet. Bei dem nächsten Taktimpuls Φ 2Λ wird der Zähler zu einem Zählerstand von drei weitergeschaltet, der Dekodierer 514 beendet Jas Signal SST2 und das Signal SST3 beginnt
Während des Signals SST3 wird das UND-Glied 630 freigegeben, und das NOR-Glied 632 erzeugt das Signal
ι ο ENABLE DA TA DR V mit niedrigem Pegel, welches an die Freigabeeingänge der Ansteuereinrichtungen 314 angelegt wird, um dadurch das Zustandbyte 00 an den Datenbus durchzuschalten. Das Signal SST3 setzt das GO- Flip-Flop zurück und beendet das Signal NOT READY, wodurch die zentrale Steuereinrichtung die Ausführung des eingegebenen Befehls zurücknehmen kann. Folglich endet das Signal DATABUSIN, und ein Ausgang von dem NOR-Glied 504 π.'.ι hohem Pegel läuft über den Multiplexer 506, um den Zähler 510 anzusteuern. Bei dem nächsten Taktimpuls Φ2Α schaltet der Zähler zu dem Zustand null weiter, um dadurch das Signal SST3 am Ausgang des Dekodierers 514 zu beenden. Hierdurch wird die Erzeugung des Zustandsbytes für eine nicht vorhandene Steuereinnch tung SDC beendet Wie vorher wird das Zustandsbyte für eine Analyse zu dem Rechenwerksregister der zentralen Recheneinheit zurückgeleitet
Gemäß der Erfindung ist somit eine Einrichtung geschaffen, wobei eine Anzahl Subsystemeinrichtungen
jo SDC, die periphere Einrichtungen mit verschiedenen Kenndaten steuern, direktem Zugriff zu einem Speicher haben, selbst wenn die steuernde zentrale Recheneinheit nur zwei Befehle zum Steuern der Durchführung von Datenübertragungen zwischen dem Speicher und den Subsystemsteuereinrichtungen hat Diese zwei Befehle sind Eingabe- und Ausgabebefehle. Der Eingabebefehl wird in der Weise benutzt, daß die STARTi/O-Befehle des Standes der Technik verwendet werden, um eine Subsystem-Steuereinrichtung zu adressieren, und um den Zustand der adressierten Subsystemsteuereinrichtung SDC zu erhalten. Der Ausgabebefehl wird dann dreifach verwendet, zweimal um einen Adressenhinweiszähler in einer gemeinsam benutzten Steuereinrichtung für einen direkten Speicherzugriff zu laden, und einmal, um einen Befehl an die Subsystemsteuereinrichtung abzugeben, die von dem Eingabebefehl adressiert wurde. Die gemeinsam benutzte Steuereinrichtung SDMA für einen direkten Zugriff bedient eine Anzahl Subsystem-Steuereinrich-
V) tungen SDC und weist keine einrichoingsabhängige Logik auf, d. h. keine Logik, die auf irgendeine Art von Steuereinrichtungen oder dadurch gesteuerte periphere Einrichtungen festgelegt ist. Die gemeinsam benutzte Steuereinrichtung SDMA für einen direkten Speicher-
5) zugriff weist nur eine Schaltungsanordnung, welche sonst in jeder der Subsystemsteuereinrichtungen SDC verdoppelt v/ürde b:zw. doppelt vorgesehen sein würde.
llicr/.u I 2 Hkitl Zcichnunucri

Claims (2)

Patentansprüche:
1. Datenverarbeitungsanlage mit einem zentralen Prozessor, wenigstens einer gemeinsam genutzten Steuereinrichtung zur direkten Speicheransteuerung, und einem Speicher, die alle an einen gemeinsamen Systembus angeschlossen sind, und mit einer Anzahl von peripheren Geräten, von denen jedes einzelne über eine Subsystemsteuerein- to richtung an einem Subsystembus angeschlossen ist, welcher alle Subsystemsteuereinrichtungen mit der gemeinsam genutzten Steuereinrichtung verbindet, so daß Daten-, Zustand- und Steuersignale, welche zwischen den Subsystemsteuereinrichtungen und :5 dem gemeinsamen Systembus übertragen werden, durch die gemeinsam genutzte Steuereinrichtung passieren, dadurch gekennzeichnet, daß die Systemsteuereinrichtungen (122) und die gemeinsam genutzte Steuereinrichtung (108) zum direkten Speicherzugriff eine Schaltung (Fig.2) aufweisen, welche eine Adressenerkennungseinrichtung (240) enthält, um einige der Adressenbits aus einem gemeinsamen Adressenbus (202), der einen Teil des Systembus (Fig. 1: 110; 2: 200, 202, 204) darstellt, als Adresse der betreffenden gemeinsam genutzten Steuereinrichtung (F i g. 1:108) zu erkennen; und daß eine Durchschalteeinrichtung (212) vorgesehen ist, die auf die Adressenerkennungseinrichtung (204) und den Eingabebefehl anspricht, um Adressenbits auf dem gemeinsamen Adressenbus (202) zu einem Adressenbus (208) des Subsystembus (F i g. 1:124, F i. g. 2:206,20Γ, 210) als Adresse eines Zustandsregisters in e:ner ausgewählten Subsystemsteuereinrichtung (Fig. 1: i"!2) durchzuschalten, η wobei die ausgewählte Subsystemsteuereinrichtung den Wert ihres Zustandsregisters einem Register (220) übermittelt.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die genannte Durchschalteeinrichtung (212) ferner auf die Adressenerkennungseinrichtung und einen Ausgabebefehl anspricht, um einen Wert auf dem gemeinsamen Datenbus (200) in den Zähler (232) zu laden, daß eine weitere Ansteuercinrichtung (236, 238) vorgesehen 4'> ist, die den Zähler (232) mit dem gemeinsamen Adressenbus (202) verbindet, so daß der Inhalt des Zählers (232) den Speicher (Fig. i: 102) direkt ansteuern kann; und daß eine Datensleuerlogik (214) vorgesehen ist, um den Zähler (232) jedesmal vi schrittweise weiter zu schalten, wenn ein Datenbyte zwischen dem Speicher (Fig. 1: 102) und der ausgewählten Subsystemsteuereinrichtung (Fig. 1: 122) übertragen wird.
DE2703394A 1976-01-29 1977-01-27 Datenverarbeitungsanlage Expired DE2703394C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/653,408 US4067059A (en) 1976-01-29 1976-01-29 Shared direct memory access controller

Publications (3)

Publication Number Publication Date
DE2703394A1 DE2703394A1 (de) 1977-08-11
DE2703394B2 true DE2703394B2 (de) 1979-06-28
DE2703394C3 DE2703394C3 (de) 1980-02-28

Family

ID=24620761

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2703394A Expired DE2703394C3 (de) 1976-01-29 1977-01-27 Datenverarbeitungsanlage

Country Status (9)

Country Link
US (1) US4067059A (de)
JP (1) JPS605988B2 (de)
CA (1) CA1094189A (de)
CH (1) CH613060A5 (de)
DE (1) DE2703394C3 (de)
ES (1) ES455335A1 (de)
FR (1) FR2339911A1 (de)
GB (1) GB1574863A (de)
IT (1) IT1102303B (de)

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4271466A (en) * 1975-02-20 1981-06-02 Panafacom Limited Direct memory access control system with byte/word control of data bus
JPS5248440A (en) * 1975-10-15 1977-04-18 Toshiba Corp Memory access control system
US4181938A (en) * 1975-10-15 1980-01-01 Tokyo Shibaura Electric Co., Ltd. Processor device
JPS533029A (en) * 1976-06-30 1978-01-12 Toshiba Corp Electronic computer
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4167781A (en) * 1976-10-12 1979-09-11 Fairchild Camera And Instrument Corporation Microprocessor system having a single central processing unit shared by a plurality of subsystems each having a memory
JPS5821734B2 (ja) * 1976-11-19 1983-05-02 株式会社東芝 ダイレクトメモリアクセス制御方式
JPS5363932A (en) * 1976-11-19 1978-06-07 Toshiba Corp Direct memory access control system
JPS5821733B2 (ja) * 1976-11-19 1983-05-02 株式会社東芝 ダイレクトメモリアクセス制御方式
US4137565A (en) * 1977-01-10 1979-01-30 Xerox Corporation Direct memory access module for a controller
IT1113771B (it) * 1977-07-07 1986-01-20 Sits Soc It Telecom Siemens Unita' di interfaccia atta a consentire lo scambio di dati a velocita' elevata tra la memoria centrale di un elaboratore ed una unita' periferica
JPS5454540A (en) * 1977-10-11 1979-04-28 Hitachi Ltd Data buscontrol system
US4286319A (en) * 1977-12-06 1981-08-25 The Singer Company Expandable inter-computer communication system
US4403282A (en) * 1978-01-23 1983-09-06 Data General Corporation Data processing system using a high speed data channel for providing direct memory access for block data transfers
US4296466A (en) * 1978-01-23 1981-10-20 Data General Corporation Data processing system including a separate input/output processor with micro-interrupt request apparatus
JPS54129942A (en) * 1978-03-31 1979-10-08 Fujitsu Ltd Direct transfer system between sub-systems
US4180855A (en) * 1978-04-07 1979-12-25 Gte Automatic Electric Laboratories Incorporated Direct memory access expander unit for use with a microprocessor
US4514808A (en) * 1978-04-28 1985-04-30 Tokyo Shibaura Denki Kabushiki Kaisha Data transfer system for a data processing system provided with direct memory access units
IT1108732B (it) * 1978-05-05 1985-12-09 Honeywell Inf Systems Sistema di trasmissione bidirezionale di segnali interbloccati
AU530137B2 (en) * 1978-09-11 1983-07-07 K.K. Toshiba Information processor
US4240138A (en) * 1978-10-03 1980-12-16 Texas Instruments Incorporated System for direct access to a memory associated with a microprocessor
US4558412A (en) * 1978-12-26 1985-12-10 Honeywell Information Systems Inc. Direct memory access revolving priority apparatus
US4262332A (en) * 1978-12-28 1981-04-14 International Business Machines Corporation Command pair to improve performance and device independence
US4224668A (en) * 1979-01-03 1980-09-23 Honeywell Information Systems Inc. Control store address generation logic for a data processing system
US4300194A (en) * 1979-01-31 1981-11-10 Honeywell Information Systems Inc. Data processing system having multiple common buses
US4459665A (en) * 1979-01-31 1984-07-10 Honeywell Information Systems Inc. Data processing system having centralized bus priority resolution
US4495571A (en) * 1979-01-31 1985-01-22 Honeywell Information Systems Inc. Data processing system having synchronous bus wait/retry cycle
US4293908A (en) * 1979-01-31 1981-10-06 Honeywell Information Systems Inc. Data processing system having direct memory access bus cycle
US4300193A (en) * 1979-01-31 1981-11-10 Honeywell Information Systems Inc. Data processing system having data multiplex control apparatus
JPS55119720A (en) * 1979-03-09 1980-09-13 Tokyo Electric Power Co Inc:The Operation processing unit
US4245307A (en) * 1979-09-14 1981-01-13 Formation, Inc. Controller for data processing system
US4326250A (en) * 1979-10-10 1982-04-20 Magnuson Computer Systems, Inc. Data processing apparatus with serial and parallel priority
US4287563A (en) * 1979-11-13 1981-09-01 Motorola, Inc. Versatile microprocessor bus interface
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
US4323967A (en) * 1980-04-15 1982-04-06 Honeywell Information Systems Inc. Local bus interface for controlling information transfers between units in a central subsystem
US4371928A (en) * 1980-04-15 1983-02-01 Honeywell Information Systems Inc. Interface for controlling information transfers between main data processing systems units and a central subsystem
CA1165895A (en) * 1980-07-11 1984-04-17 Venu Chari Serial channel control processor method
EP0063140A1 (de) * 1980-10-23 1982-10-27 Ncr Corporation Datenkommunikationsbusstruktur
US4454575A (en) * 1980-12-29 1984-06-12 International Business Machines Corporation Shared memory system with access by specialized peripherals managed by controller initialized by supervisory CPU
US4394734A (en) * 1980-12-29 1983-07-19 International Business Machines Corp. Programmable peripheral processing controller
US4476522A (en) * 1981-03-09 1984-10-09 International Business Machines Corporation Programmable peripheral processing controller with mode-selectable address register sequencing
FR2497977B1 (fr) * 1981-01-12 1986-07-25 Kuczewski De Poray Jacques Procede d'echange de donnees et dispositif pour la mise en oeuvre de ce procede
US4377871A (en) * 1981-04-06 1983-03-22 Motorola, Inc. Transmit security system for a synthesized transceiver
US4472820A (en) * 1981-04-06 1984-09-18 Motorola, Inc. Program swallow counting device using a single synchronous counter for frequency synthesizing
US4477919A (en) * 1981-04-06 1984-10-16 Motorola, Inc. Range control circuit for counter to be used in a frequency synthesizer
DE3276916D1 (en) * 1981-09-18 1987-09-10 Rovsing As Christian Multiprocessor computer system
JPS58501605A (ja) * 1981-10-05 1983-09-22 バロ−ス・コ−ポレ−ション 遅い装置を用いたi/oサブシステムのための周辺制御装置
US4507732A (en) * 1981-10-05 1985-03-26 Burroughs Corporation I/O subsystem using slow devices
US4495567A (en) * 1981-10-15 1985-01-22 Codex Corporation Multiprocessor/multimemory control system
JPS58154054A (ja) * 1982-03-10 1983-09-13 Hitachi Ltd 外部記憶装置制御用回路
EP0089440B1 (de) * 1982-03-24 1986-08-13 International Business Machines Corporation Verfahren und Einrichtung zum Informationsaustausch zwischen Terminals und einer zentralen Steuereinheit
FR2531244B1 (fr) * 1982-07-27 1987-05-15 Debesson Pierre Systeme de detection de codes d'arret programmables dans un transfert de donnees intervenant entre une memoire locale d'un microprocesseur et un peripherique, dans un ensemble processeur utilisant un circuit d'acces direct a la memoire locale
DE3241376A1 (de) * 1982-11-09 1984-05-10 Siemens AG, 1000 Berlin und 8000 München Dma-steuereinrichtung zur uebertragung von daten zwischen einem datensender und einem datenempfaenger
US4689767A (en) * 1983-02-14 1987-08-25 Prime Computer Inc. Magnetic tape drive controller utilizing dual DMA controllers
JPS6019269A (ja) * 1983-07-13 1985-01-31 Nec Corp 高速デ−タ転送方式
GB8324155D0 (en) * 1983-09-09 1983-10-12 British Telecomm Control networks
US4777591A (en) * 1984-01-03 1988-10-11 Texas Instruments Incorporated Microprocessor with integrated CPU, RAM, timer, and bus arbiter for data communications systems
US4773000A (en) * 1984-01-23 1988-09-20 Raytheon Company DMA for digital computer system
DE3590162T1 (de) * 1984-04-19 1986-08-07 Rational, Mountain View, Calif. Computer-Bus-Einrichtung mit verteilter Entscheidung
US4766536A (en) * 1984-04-19 1988-08-23 Rational Computer bus apparatus with distributed arbitration
JPS60233749A (ja) * 1984-05-07 1985-11-20 Sharp Corp メモリフアイル装置
US4688166A (en) * 1984-08-03 1987-08-18 Motorola Computer Systems, Inc. Direct memory access controller supporting multiple input/output controllers and memory units
US4546429A (en) * 1984-12-27 1985-10-08 The United States Of America As Represented By The Secretary Of The Air Force Interactive communication channel
US4821180A (en) * 1985-02-25 1989-04-11 Itt Corporation Device interface controller for intercepting communication between a microcomputer and peripheral devices to control data transfers
US4980820A (en) * 1985-02-28 1990-12-25 International Business Machines Corporation Interrupt driven prioritized queue
US4716523A (en) * 1985-06-14 1987-12-29 International Business Machines Corporation Multiple port integrated DMA and interrupt controller and arbitrator
JPH087662B2 (ja) * 1985-10-18 1996-01-29 株式会社日立製作所 データ転送制御方法
JPS62138948A (ja) * 1985-12-13 1987-06-22 Hitachi Ltd デ−タ転送装置
US5029076A (en) * 1986-01-29 1991-07-02 Digital Equipment Corporation Apparatus and method for providing a settling time cycle for a system bus in a data processing system
US4847750A (en) * 1986-02-13 1989-07-11 Intelligent Instrumentation, Inc. Peripheral DMA controller for data acquisition system
US5077656A (en) * 1986-03-20 1991-12-31 Channelnet Corporation CPU channel to control unit extender
US4831523A (en) * 1986-10-31 1989-05-16 Bull Hn Information Systems Inc. Multiple DMA controller chip sequencer
US4782439A (en) * 1987-02-17 1988-11-01 Intel Corporation Direct memory access system for microcontroller
US5001625A (en) * 1988-03-24 1991-03-19 Gould Inc. Bus structure for overlapped data transfer
US5003465A (en) * 1988-06-27 1991-03-26 International Business Machines Corp. Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device
US5212795A (en) * 1988-10-11 1993-05-18 California Institute Of Technology Programmable DMA controller
US5179709A (en) * 1989-01-13 1993-01-12 International Business Machines Corporation Look ahead bus transfer request
US5287457A (en) * 1989-01-13 1994-02-15 International Business Machines Corporation Computer system DMA transfer
US5369749A (en) * 1989-05-17 1994-11-29 Ibm Corporation Method and apparatus for the direct transfer of information between application programs running on distinct processors without utilizing the services of one or both operating systems
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
US5072365A (en) * 1989-12-27 1991-12-10 Motorola, Inc. Direct memory access controller using prioritized interrupts for varying bus mastership
US5471639A (en) * 1990-10-24 1995-11-28 At&T Global Information Solutions Company Apparatus for arbitrating for a high speed direct memory access bus
US5553268A (en) * 1991-06-14 1996-09-03 Integrated Device Technology, Inc. Memory operations priority scheme for microprocessors
US5327540A (en) * 1991-09-18 1994-07-05 Ncr Corporation Method and apparatus for decoding bus master arbitration levels to optimize memory transfers
US5530901A (en) * 1991-11-28 1996-06-25 Ricoh Company, Ltd. Data Transmission processing system having DMA channels running cyclically to execute data transmission from host to memory and from memory to processing unit successively
AU2142492A (en) * 1991-12-09 1993-07-19 Tandy Corporation Direct memory access interface for buses of different width
CN1146249A (zh) * 1994-04-13 1997-03-26 艾利森公司 大存储器的高效寻址
US5590377A (en) * 1995-06-07 1996-12-31 Ast Research, Inc. Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses
US5687329A (en) * 1995-09-29 1997-11-11 International Business Machines Corporation Information handling system including a data bus management unit, an address management unit for isolating processor buses from I/O and memory
JP3524247B2 (ja) * 1995-10-09 2004-05-10 任天堂株式会社 ゲーム機およびそれを用いたゲーム機システム
US7577782B2 (en) * 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US6519268B1 (en) * 1996-03-07 2003-02-11 Sony Corporation Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US6233637B1 (en) 1996-03-07 2001-05-15 Sony Corporation Isochronous data pipe for managing and manipulating a high-speed stream of isochronous data flowing between an application and a bus structure
US5822568A (en) * 1996-05-20 1998-10-13 Advanced Micro Devices, Inc. System for improving the real-time functionality of a personal computer which employs an interrupt servicing DMA controller
US6574065B1 (en) * 1999-05-14 2003-06-03 International Business Machines Corporation Method and apparatus for adaptive resonance mode cancellation servo in a rotating storage system
US6684279B1 (en) * 1999-11-08 2004-01-27 International Business Machines Corporation Method, apparatus, and computer program product for controlling data transfer
US6970985B2 (en) 2002-07-09 2005-11-29 Bluerisc Inc. Statically speculative memory accessing
US7461131B2 (en) * 2003-03-07 2008-12-02 International Business Machines Corporation Use of virtual targets for preparing and servicing requests for server-free data transfer operations
US20050114850A1 (en) * 2003-10-29 2005-05-26 Saurabh Chheda Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control
US7996671B2 (en) * 2003-11-17 2011-08-09 Bluerisc Inc. Security of program executables and microprocessors based on compiler-architecture interaction
US8607209B2 (en) 2004-02-04 2013-12-10 Bluerisc Inc. Energy-focused compiler-assisted branch prediction
US7797394B2 (en) * 2005-04-18 2010-09-14 Dell Products L.P. System and method for processing commands in a storage enclosure
US20070294181A1 (en) * 2006-05-22 2007-12-20 Saurabh Chheda Flexible digital rights management with secure snippets
US20080126766A1 (en) 2006-11-03 2008-05-29 Saurabh Chheda Securing microprocessors against information leakage and physical tampering
US20080154379A1 (en) * 2006-12-22 2008-06-26 Musculoskeletal Transplant Foundation Interbody fusion hybrid graft
US20090144745A1 (en) * 2007-11-29 2009-06-04 Gunnels John A Performance Evaluation of Algorithmic Tasks and Dynamic Parameterization on Multi-Core Processing Systems
US20090144744A1 (en) * 2007-11-29 2009-06-04 Gunnels John A Performance Evaluation of Algorithmic Tasks and Dynamic Parameterization on Multi-Core Processing Systems
US8255593B2 (en) * 2009-09-29 2012-08-28 Oracle America, Inc. Direct memory access with striding across memory
DE102016206109A1 (de) * 2016-04-13 2017-10-19 Robert Bosch Gmbh Speicherdirektzugriffssteuereinrichtung für mindestens eine einen Arbeitsspeicher aufweisende Recheneinheit

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3675209A (en) * 1970-02-06 1972-07-04 Burroughs Corp Autonomous multiple-path input/output control system
US3725871A (en) * 1971-02-11 1973-04-03 Honeywell Inf Systems Multi function polling technique
US3820079A (en) * 1971-11-01 1974-06-25 Hewlett Packard Co Bus oriented,modular,multiprocessing computer
US3909790A (en) * 1972-08-25 1975-09-30 Omnus Computer Corp Minicomputer with selector channel input-output system and interrupt system
US3760324A (en) * 1972-09-26 1973-09-18 Bowins Inc Single-turn potentiometer
US3833930A (en) * 1973-01-12 1974-09-03 Burroughs Corp Input/output system for a microprogram digital computer
US3828325A (en) * 1973-02-05 1974-08-06 Honeywell Inf Systems Universal interface system using a controller to adapt to any connecting peripheral device
US3916139A (en) * 1974-09-23 1975-10-28 Spencer C Schantz Method of soldering conductor ends to terminal

Also Published As

Publication number Publication date
FR2339911B1 (de) 1980-04-30
CA1094189A (en) 1981-01-20
FR2339911A1 (fr) 1977-08-26
JPS5293242A (en) 1977-08-05
IT1102303B (it) 1985-10-07
JPS605988B2 (ja) 1985-02-15
DE2703394C3 (de) 1980-02-28
CH613060A5 (de) 1979-08-31
GB1574863A (en) 1980-09-10
ES455335A1 (es) 1979-06-01
US4067059A (en) 1978-01-03
DE2703394A1 (de) 1977-08-11

Similar Documents

Publication Publication Date Title
DE2703394B2 (de) Datenverarbeitungsanlage
DE2856483C2 (de)
DE3725343C2 (de) Vielzweck-Kanalsteuersystem
DE2719253C3 (de) Schnittstellenschaltung für Datenverarbeitungsanlagen
DE2536616C3 (de) Schaltungsanordnung zur Verbindung einer eine Eingabetastatur und eine Anzeigeeinrichtung enthaltenden Engabe/Ausgabe-Einrichtung über eine Busleitung mit einem zu einem Mikrorechner gehörenden Mikroprozessor
DE2702090C3 (de) Datenverarbeitungssystem mit einem zentralen Prozessor
DE2902132C2 (de) Anordnung zur Datenübertragung über mehrere Kanäle mit überlappender Steuerung
DE3152435C2 (de)
DE2500721A1 (de) Sekundaerspeicher fuer datenverarbeitungssysteme
DE2801563C2 (de)
DE1449530B1 (de) Datenverarbeitungsanlage
DE2148847A1 (de) Schaltungsanordnung zum Steueren peripherer Ein- und Ausgabegeraete von Datenverarbeitungssystem
DE2928488A1 (de) Speicher-subsystem
DE3038639A1 (de) Eingabe/ausgabe-steuereinrichtung
DE2540823C2 (de) Elektronische Datenverarbeitungsanlage
DE2363846C2 (de) Datenverarbeitungsanlage mit einer Schaltungsanordnung zur Steuerung des Datentransfers zwischen dem Hauptspeicher und mehreren peripheren Geräten
DE2747633A1 (de) Dv-system mit einer unterbrechungseinrichtung
DE2721623A1 (de) System zur bearbeitung eines zielsystemprogrammes
DE2218630C3 (de) Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen
DE2115971A1 (de) Datenverarbeitungssystem
DE2615318A1 (de) Buchungssystem mit einem computer
DE4429764C2 (de) Zeitgebereinrichtung für einen Mikrocomputer
DE3009530A1 (de) Datenverarbeitungssystem
DE19543411A1 (de) Analog-Digital-Wandlervorrichtung
DE2609698C2 (de) Elektronischer Rechner

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8328 Change in the person/name/address of the agent

Free format text: SCHWABE, H., DIPL.-ING. SANDMAIR, K., DIPL.-CHEM. DR.JUR. DR.RER.NAT., PAT.-ANW., 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee