DE2707800B2 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE2707800B2 DE2707800B2 DE2707800A DE2707800A DE2707800B2 DE 2707800 B2 DE2707800 B2 DE 2707800B2 DE 2707800 A DE2707800 A DE 2707800A DE 2707800 A DE2707800 A DE 2707800A DE 2707800 B2 DE2707800 B2 DE 2707800B2
- Authority
- DE
- Germany
- Prior art keywords
- signals
- input
- data
- control device
- clock
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
- G06F13/423—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/122—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Microcomputers (AREA)
- Bus Control (AREA)
Description
Die Erfindung betrifft eine Datenverarbeitungsanlage, die eine Zentraleinheit einen mit der Zentraleinheit
in Verbindung stehenden Hauptspeicher, Eingabe/Ausgabe-Einrichtungen mit einer der Anzahl von Peripheriegeräten
entsprechenden Anzahl von individuellen Steuereinrichtungen für Peripheriegeräte und eine
Taktquelle aufweist wobei in der Steuereinrichtung eine Registeranordnung vorgesehen ist, aus der Signale in
das zugehörige Peripheriegerät geleitet werden und zu der Signale aus dem Peripheriegerät geleitet werden,
wobei in der Steuereinrichtung eine Steuerlogik zur Steuerung der Operation der betreffenden Steuereinrichtung
vorhanden ist, und wobei die Eingabe/Ausgabe-Einrichtungen eine Eingabe/Ausgabe-Sammelleitung
aufweisen.
Eine derartige Anlage ist aus der DE-PS 18 01 619 bekannt. Bei dieser bekannten Anlage (vgl. besonders
Fig. 1 und 6a) ist für jedes Peripheriegerät eine Steuereinrichtung vorgesehen. Alle von den Peripheriegeräten
stammenden und für die Zentraleinheit bestimmten Signale werden über die den Peripheriegeräten
jeweils vorgeschaltete Steuereinrichtung und eine der Zentraleinheit vorgeschaltete Steuereinrichtung
geleitet. Hierdurch können unerwünschte Verzögerungen in der Verarbeitung der Daten auftreten.
Der Erfindung liegt die Aufgabe zugrunde, eine Datenverarbeitungsanlage der eingangs genannten Art
so weiterzubilden, daß die Geschwindigkeit der Datenve-arbeitung erhöht wird. Diese Aufgabe wird
gemäß der Erfindung dadurch gelöst, daß eine der Anzahl der Peripheriegeräte entsprechende Anzahl von
Geräte-Sendeempfängern den Steuereinrichtungen nachgeschaltet und mit der Sammelleitung unmittelbar
verbunden ist, daß die Gerätesteuerung in den Eingabe/Ausgabe-Einrichtungen zum Senden und Empfangen
von Signalen zwischen einerseits jeweils einem Peripheriegerät und andererseits der Zentraleinheit
bzw. jeweils einem der Geräte-Sendeempfänger ausgebildet ist;
daß die Registeranordnung der Steuereinrichtung als Schieberegisteranordnung zum seriellen Empfangen
einer Eingabegruppe der Signale von dem betreffenden Sendeempfänger und zum seriellen Senden einer
Ausgabegruppe der Signale zu dem betreffenden Sendeempfänger ausgebildet ist;
daß in der Steuereinrichtung eine erste Sammelleitungsanordnung vorgesehen ist, um Paralleldarstellungen von Signalen aus der Eingabegruppe der Signale von der Schieberegisteranordnung der Steuereinrichtung zu dem zugeordneten Peripheriegerät zu leiten;
daß eine weitere Sammelleitungsanordnung in der Steuereinrichtung vorgesehen ist, um Paralleldarstellungen von Signalen der Ausgabegruppe der Signale von dem zugeordneten Peripheriegerät zu der Schieberegisteranordnung der Steuereinrichtung zu leiten;
daß die Steuereinrichtung ferner eine Registeranordnung aufweist, die zwischen die erste und die zweite
daß in der Steuereinrichtung eine erste Sammelleitungsanordnung vorgesehen ist, um Paralleldarstellungen von Signalen aus der Eingabegruppe der Signale von der Schieberegisteranordnung der Steuereinrichtung zu dem zugeordneten Peripheriegerät zu leiten;
daß eine weitere Sammelleitungsanordnung in der Steuereinrichtung vorgesehen ist, um Paralleldarstellungen von Signalen der Ausgabegruppe der Signale von dem zugeordneten Peripheriegerät zu der Schieberegisteranordnung der Steuereinrichtung zu leiten;
daß die Steuereinrichtung ferner eine Registeranordnung aufweist, die zwischen die erste und die zweite
Sammelleitungsanordnung geschaltet ist, um von der ersten Sammelleitungsanordnung Darstellungen der
Eingabegruppe der Signale zu empfangen, diese Darstellungen zeitweise zu speichern und Darstellungen
der Ausgabegruppe der Signale zu der zweiten Sammelleitungsanordnung zu senden:
daß eine Statusänderungslogik in der Steuereinrichtung vorgesehen ist, die in Abhängigkeit von der Tätigkeit der als programmierbare Logik ausgebildeten Steuerlogik und einem in einem Befehlsregister gespeicherten Befehl eine von verschiedenen Operationslogikzuständen als den als nächstes nachfolgenden Status nach der Beendigung des gegenwärtigen Status auswählt; und
daß eine Umgehungsleitungsanordnung mit der weiteren Sammelleitungsanordnung und dem zugeordneten Peripheriegerät verbunden ist, um andere der genannten Signale, die sich auf Anfragen der Peripheriegeräte und der Zentraleinheit für bestimmte Operationen des Hauptspeichers beziehen, direkt zwischen der betreffenden Steuereinrichtung und der Zentraleinheit auf einem Weg zu leiten, der nicht den der Steuereinrichtung zugeordneten Sendeempfänger enthält.
daß eine Statusänderungslogik in der Steuereinrichtung vorgesehen ist, die in Abhängigkeit von der Tätigkeit der als programmierbare Logik ausgebildeten Steuerlogik und einem in einem Befehlsregister gespeicherten Befehl eine von verschiedenen Operationslogikzuständen als den als nächstes nachfolgenden Status nach der Beendigung des gegenwärtigen Status auswählt; und
daß eine Umgehungsleitungsanordnung mit der weiteren Sammelleitungsanordnung und dem zugeordneten Peripheriegerät verbunden ist, um andere der genannten Signale, die sich auf Anfragen der Peripheriegeräte und der Zentraleinheit für bestimmte Operationen des Hauptspeichers beziehen, direkt zwischen der betreffenden Steuereinrichtung und der Zentraleinheit auf einem Weg zu leiten, der nicht den der Steuereinrichtung zugeordneten Sendeempfänger enthält.
Der Vorteil der Erfindung liegt darin, daß durch die Umgehungsleitungsanordnung bestimmte Signale, im
später erläuterten Ausführungsbeispiel sind, dies die Signale für eine Unterbrechungsanforderung und eine
Datenkanalanforderung, unter Umgehung der Geräte-Sendeempfänger und des Zentraleinheit-Sendeempfängers
unmittelbar zwischen der Zentraleinheit und der Steuereinrichtung des betreffenden Peripheriegeräts
ausgetauscht werden, wodurch Verzögerungen bei der Verarbeitung dieser Signale vermieden werden können.
Hierdurch wird die Arbeitsgeschwindigkeit der gesamten Datenverarbeitungsanlage erhöht.
Zwar sind durch die Zeitschrift »Elektronik Informationen«, Nr. 3,1970, Seite 237 Serien-Parallel-Umsetzer
bekannt; die beim Anmeldungsgegenstand verwendete Schieberegisteranordnung unterscheidet sich von der
bekannten Anordnung jedoch dadurch, daß neben der Serien-Parallel-Umsetzung in der einen Übertragungsrichtung
auch eine Parallel-Serien-Umsetzung in der anderen Übertragungsrichtung erfolgt.
Die Erfindung wird im folgenden in einem Ausführungsbeispiel anhand der Zeichnung beschrieben und
erläutert.
F i g. 1 ist ein Diagramm der vorliegenden Erfindung, wie sie innerhalb eines Datenverarbeitungssystems
verwendet wird;
Fig. 2 ist ein detailliertes Diagramm eines Teils der
Elektronik innerhalb jedes IOSR von F i g. 1;
Fig.3a und 3b sind detaillierte Diagramme des
übrigen Teils der Elektronik innerhalb jedes IOSR, und Wellenformen, die sich auf die Tätigkeit jedes IOSR
beziehen;
Fig.4 ist ein schematisches Diagramm der Schaltungsanordnung
innerhalb jedes Sendeempfängers von Fig.l;
F i g. 5 ist ein detailliertes Diagramm der Elektronik innerhalb jeder Steuereinrichtung für Peripheriegeräte
von F i g. 1;
F i g. 6 ist eine Darstellung von zwei 8-Bit-Bytes eines Datenworts mit 16 Bit, wobei ein Befehlsbit oder
Vorsatzbit jedem Byte vorausgeht, und des zugeordnetem Taktsignals; und
F i g. 7 ist eine schematische Darstellung der Tätigkeit jeder einzelnen Schieberegisteranordnung von Fig. 1.
Bevor auf die Figuren Bezug genommen wird, und als Einführung in die Beziehung der vorliegenden Erfindung
zu dem Datenverarbeitungssystem, in dem sie arbeitet, sollte beachtet werden, daß die vorliegende
Erfindung sich auf die Kommunikation oder Nachrichtenübermittlung zwischen der Zentraleinheit und
peripheren Geräten, wie Fernscbreibereingängen, Endgeräten mit Kathodenstrahlanzeige, Schnelldruckern
usw. bezieht
In einem speziellen Datenverarbeitungssystem, in dem die vorliegende Erfindung verwendet wird, ist der
ίο Satz der Schaltungsplättchen in Siiicium-Gate-NMOS-Technologie
aufgebaut Die Zentraleinheit kennzeichnet ein 16-Bit-Mehrfunktions-Befehlssatz, einschließlich
Maschinenmultiplikation-Division; Mehrfachadressierungsmoden
einschließlich absolut, relativ indexiert, verschoben, und automatisches Inkrement/Dekrement;
Mehrfachakkumulatoren, einschließlich zwei, die als Indexregister verwendet werden können; Maschinenkellerspeicher
und Stapelzeiger mit Kellerspeicherüberlaufschutz; programmierte Prioritätsunterbrechung auf
16 Niveaus; und getrennte Speicher- und Eingangs/Ausgangs-Sammelleitungen. Eine Echtzeituhr und eine
Auffrischsteuerung für den Speicher mit wahlfreiem Zugriff (erforderlich wegen der MOS-Technologie) sind
ein integrierender Bestandteil der Zentraleinheit. Die
2r> Zentraleinheit weist auch eine Eingabe/Ausgabe- oder
Verbindungs- oder Schnittstelleneinrichtung auf mit einem einzigen Codier/Decodierschema, das in Verbindung
mit den Sende-Empfängern und lOC-Plättchen das funktionale Äquivalent einer Sammelleitung mit 47
ίο Leitungen liefert.
Das IOC (Eingabe/Ausgabe-Steuereinrichtung) decodiert
einen codierten Datenstrom mit 16,6 Megabit/Sekunde von der Zentraleinheit und stellt eine 16-Bit-Schnittstelleneinrichtung
für zwei Richtungen, vier
r> codierte Funktionsbits, und eine Funktionsabtastung
zum leichten Anschließen bereit. Das IOC schließt weiterhin komplexe Funktionen ein, die in anderen
Kleinrechnersystemen nicht verwendet werden. Das IOC weist eine integrale Geräteidentifikation auf, eine
4Ci Besetzt/Fertig-Unterbrechnungslogik, und die Fähigkeit
zum Unterbrechungsmaskieren für jedes Gerät. Für blockorientierte Steuereinrichtungen weist es Datenkanal-(DMA)-Sammelleitungs-Übertragung
mit Rückantwort und volle 15-Bit-Adressen- und Blocklängenregi-
4Ί sterauf.
Eine Logik zum Sicherstellen der gewünschten Betriebsart beim Einschalten der Stromversorgung, eine
Schaltungsanordnung zum normalen Abschalten der Stromversorgung und eine vom Benutzer auswählbare
"in Signalpolarität der Datensammelleitung sind ebenfalls
vorgesehen.
Der Sendeempfänger der Zentraleinheit und der Geräte-Sendeempfänger puffern die Eingabe/Ausgabe-Sammelleitung.
Sie stellen Differentialschaltungen für
·.; Treiber und Empfänger bereit für eine Unempfindlichkeit
gegen Rauschen und bis zu einer Länge von 30 m. Sie takten auch die Sammelleitungssignale beim
Sendebetrieb und bringen sie beim Empfangsbetrieb wieder in Übereinstimmung mit dem Takt, wobei sie ein
Wi Erkennungsschema mit einer hohen Unempfindlichkeit
gegen Rauschen verwenden.
Zunächst wird eine Beschreibung der gegenseitigen Verbindung der vorliegenden Erfindung und des
Dii'enverarbeitungssystems gegeben. Die Tätigkeit der
e>5 vorliegenden Erfindung und des Systems, in dem sie
verwendet wird, wird später erläutert.
In Fig.l ist ein funktionales Blockdiagramm des Systems gezeigt, in dem die vorliegende Erfindung
enthalten ist. Eine Zentraleinheit 100 (CPU) schließt ein
Mikroprogramm 118 (μ) ein, ein Eingabe/Ausgabe-Schieberegister (lOSR) oder eine Schnittstelleneinrichtung
oder Verbindungseinrichtung 101, und andere Teile (nicht dargestellt). Die Zentraleinheit 100 ist mit einem
Zentraleinheit-Sendeempfänger 103 (CPU-Sendeempfänger) über eine erste Gruppe von Leitern 102
verbunden. Der CPU-Sendempfänger 103 empfängt ein Eingangssignal von e'nem 10-MHz-Quarztaktoszillator
104, wie gezeigt, und liefert eine Darstellung dieses Taktsignals zu einem Takttreiber 119, der wiederum
Taktsignale zur Zentraleinheit 100 und Ableitungen dieser Taktsignale zum IOSR 101 liefert.
Der CPU-Sendeempfänger 103 ist durch eine Eingabe/Ausgabe-Sammeüeitung (!/O-Bus) !05 mit
einem Geräte-Sendeempfänger 106 und einem Geräte-Sendeempfänger 111 verbunden. Die Darstellung der
Eingabe/Ausgabe-Sammelleitung 105 mit gestrichelten Linien in Kombination mit den dargestellten Punkten
zwischen den Sendeempfängern usw. sollen dazu dienen, anzuzeigen, daß die Sammelleitung ausreichend
lang sein kann, um mehr Sendeempfänger zu versorgen, als diejenigen, die in Fig. 1 gezeigt sind. Es ist nicht
beabsichtigt, daß sich die vorliegende Erfindung auf lediglich zwei Geräte-Sendeempfänger und Steuereinrichtungen
bezieht. Andere Sammelleitungskomponenten (Umgehungssammelleitung) sind bezeichnet mit 122,
123 und 126; diese Komponenten sollen dazu dienen, den Sendeempfänger 106,111 bzw. 103 zu umgehen.
Der Geräte-Sendeempfänger 106 ist mit einer Steuereinrichtung 108 für ein Peripheriegerät durch
eine zweite Gruppe von Leitern 107 verbunden, welche Leitungen mit einem IOSR 120 (Schnittstelleneinrichtung
120) verbunden sind, die innerhalb der Steuereinrichtung 108 enthalten ist. Weiterhin besteht eine
Taktimpulsverbindung zwischen dem Geräte-Sendeempfänger 106 und der Steuereinrichtung 108 über
einen Takttreiber 124. Wie erwähnt, verbindet die Umgehungssammelleitung 122 die Steuereinrichtung
108 direkt mit der Eingabe/Ausgabe-Sammelleitung 105.
Der Geräte-Sendeempfänger 111 (und dieses allgemeine
Verbindungsschema findet Anwendung auf jeden anderen Sendeempfänger, der mit der Sammelleitung
105 verbunden werden kann, wie die Punkte in Fig. 1 zeigen) ist mit einer Steuereinrichtung 113 für ein
Peripheriegerät durch eine weitere zweite Gruppe von Leitern 112 verbunden. Die Leiter sind verbunden mit
einem IOSR 121 (Schnittstelleneinrichtung 121), die innerhalb der Steuereinrichtung 113 angeordnet ist.
Weiterhin besteht eine Taktverbindung durch den Takttreiber 125 zwischen dem Geräte-Sendeempfänger
111 und der Steuereinrichtung 113.
Die Steuereinrichtung 108 ist mit ihrem zugeordneten
Peripheriegerät 110 durch eine Peripheriegerätsammelleitung
109 verbunden. Die Steuereinrichtung 113 ist mit ihrem zugeordneten Peripheriegerät 115 durch eine
Peripheriegerätsammelleitung 114 verbunden.
Schließlich ist der Hauptspeicher 116 mit der CPU 100 über eine Speicher-Sammelleitung 117 verbunden,
wie dargestellt.
Als nächstes ist mit Bezug auf Fig.2 und 3a die Schaltung gezeigt die innerhalb der IOSR 101,120 oder
121 enthalten ist, die alle in Fig. 1 dargestellt sind.(Die Schaltungsanordnung in Fig. 1 ist mit Bezugszeichen
beginnend bei 100, in F i g. 2 bei 200 usw. dargestellt.) Es sind vier Ein/Ausgabe-Puffer gezeigt: I/O-Puffer 206,
I/O-PtJffer 215, I/O-Takt-Puffer 305 und I/O-Eingangspuffer307.
Diese vier Puffer entsprechen jeweils den vier Leiten jeder Gruppe von Leitern 102, 107 oder 112. Der nur ii
einer Richtung wirksame dargestellte Leiter ist den Puffer 307 zugeordnet. Wie weiter unten beschriebet
wird, werden die Daten durch die Puffer 206 und 21i seriell empfangen und zu diesen übertragen, die
Taktimpulse werden von dem Taktpuffer 305 erzeug und empfangen, und der Puffer 307 liefert eit
ι» Steuersignal an den ihm zugeordneten Sendeempfän ger, wenn eine zugeordnete Schnitlstelleneinrichtunj
gerade sendet.
Fig. 2 zeigt eine erste Schieberegisteranordnung in
oberen Teil und eine zweite Schieberegisteranordnunj
!5 im unteren Teil der Zeichnung. Der !/O-Puffer 206 äs
zwischen den Eingang einer Pegelschiebeeinrichtunj 200 (eine Verbindungseinrichtung zwischen TTL odei
bipolar mit MOS) und den Ausgang eines Multiplexer: und Treibers 205 eingeschaltet, außerdem ist er mi
einem Sendeempfänger wie oben erwähnt verbunden Die Pegelschiebeeinrichtung 200 empfängt ein andere:
Signal B2' von einem Taktgenerator 301, was unter
besprochen wird.
Es gibt zwei Ausgänge der Pegelschiebeeinrichtunj
2Ί 200. Einer der Ausgänge geht zu einem (4-Bit/linke!
Byte, ungerades Bit)-Schieberegister 201 und der andere geht zu einem (4-Bit/linkes Byte/gerades Bit)-Schiebe
register 202. Die Schieberegister 201 und 202 empfan gen auch Schiebebefehlssignale A\ und Λ?, auch vorr
3» Taktgenerator 301.
äi, äi, äs und 37 bezeichnen parallele Verbindungen füi
ungerade Bits zwischen dem Schieberegister 201 unc der »aic-Sammelleitung, die innerhalb der sie enthalten
den Komponente sich befindet (z. B. die Komponente CPU 100, wobei die »a«-Sammelleilung in ihr au;
Gründen der Klarheit der Darstellung nicht gezeigt ist) In gleicher Weise sollen äo, ä~2, ä4 und äb parallele
Datenverbindungen für gerade Bits zwischen derr Schieberegister 202 und der »a«-Sammelleitung be-
ίο zeichnen. In ähnlicher Weise sind b\, bi, £>5, bi und f>o. th
fat. lh parallele Verbindungen zwischen dem Schieberegister
201 und der »fxc-Sammelleitung bzw. den"
Schieberegister 202 und der »iw-Sammelleitung.
Es gibt drei weitere Befehlssignaleingänge für die Schieberegister 201 und 202 und es sind dies 1 — IOSR
6— IOSR. IOSR — ä. Diese bezeichnen das Setzen von
sämtlichen EINSEN im Schieberegister bzw. die Übertragung der Inhalte der 6-SammeIleitung zum
Schieberegister bzw. die Übertragung der Inhalte der Schieberegister zur ä-Sammelleitung. (Dies ist ein
paralleler Transport von Daten in das Schieberegister und aus dem Schieberegister von einer anderen
Schaltung in der Zentraleinheit.)
Der Ausgang des Schieberegisters 201 ist verbunden mit der Pegelschiebeeinrichtung 203, die auch Ai und B\
vom Taktgenerator 301 empfängt Der Ausgang des Schieberegisters 202 ist zur Pegelschiebeeinrichtung
204 verbunden, die auch Eingangssignale A\ und B2 vom
Taktgenerator 301 empfängt Die Pegelschiebeeinrichtung 203 empfängt auch ein PRESET-Signal von einem
Befehlsdecodierer 208. Der Befehlsdecodierer 208 wiederum empfängt Signale χ 2, α 4, weiterhin abgeleitete
Taktimpulse von ^jer Zentraleinheit 100, und
Befehlssignale An, Rn. Ru vom Mikroprogramm 118
der Zentraleinheit 100.
Der Ausgang der Pegelschiebeeinrichtung 203 ist zum Eingang des Multiplexers und Treibers 205 verbunden;
der Ausgang der Pegelschiebeeinrichtung 204 ist zum
Eingang des Multiplexers und Treibers 205 verbunden. Der Ausgang des Multiplexers und Treibers 205 ist mit
dem I/O-Datenpuffer 206 verbunden, wie früher erwähnt. Schließlich wird ein anderer Ausgang der
Pcgelschicbeeinrichtung 203, 'PiCUTOFF, auf der r>
Leitung 207 als ein Signal bereitgestellt, das zu einer Schaltung 306 (in Fig. 3a) geleitet wird, die unten
besprochen wird.
Eine detaillierte Beschreibung der Verbindungen der zweiten Schieberegislereinrichtung, die in der unteren w
Hälfte der Fig.2 enthalten ist, ist nicht nötig, weil die
Schaltung fast genau identisch der ersten Schieberegisterschaltung
im oberen Teil der Darstellung ist. Es sollte beachtet werden, daß das </'2Ciy7WF-Signa!
jedoch nicht vorhanden ist, und daß ein unterschied!:- ches8-Bit-Byte (rechtes Byte) verarbeitet wird.
Wie oben erwähnt, ist die F i g. 3a auch innerhalb des IOSR 101 oder 120 oder 121 enthalten. Ein Befehlsdecodierer
300 ist in funktionsmäßiger Verbindung mit dem Taktgenerator 301, und beide Blöcke werden zusammen
diskutiert. Der Befehlsdecodierer 300 erhält abgeleitete Taktsignale nt 1, λ 2, λ 3 und α 4 von anderen Teilen der
ihn aufnehmenden Komponente oder des Blocks, so beispielsweise von anderen Teilen des CPU 100, oder
der Steuereinrichtung 108, oder 113, je nachdem wie der Fall liegt. (Dies wird später in Verbindung mit Fig.4
weiter diskutiert werden, weil in F i g. 4 eine Schaltungsanordnung gezeigt ist, die in F i g. 1 als Takttreiber 119,
124 oder 125 gezeigt ist, die Taktimpulse entweder zum CPU 100 oder zu den Steuereinrichtungen 108 bzw. 113 i«
liefert. Diese Taktimpulse sind Impulse, aus denen weiterhin Tak'.impulse nt I, α 2, α 3, λ 4 abgeleitet
werden. Es genügt an dieser Stelle zu sagen, daß die «-Pulse Impulse sind,die sich nicht überlappen.)
Der Befehlsdecodierer 300 empfängt Eingangssignale Rw und Rn vom Mikroprogramm 118 in der CPU 100
(oder von einer gleichen Schaltung in der Steuereinrichtung 108 oder 113 je nach dem vorliegenden Fall). Es
gibt fünf Impulssignale, die von dem Befehlsdecodierer 300 abgeleitet werden, die bezeichnet sind als SETOUT
ft 1, SET OUT α Γ, SET λ 4, RESET OUT a 3, und
RESET OUT λ 2. Die Bezeichnung dieser Signale als solche ist von keiner speziellen Bedeutung, da die
Signale direkt in den Taktgenerator 301 geleitet werden.
Der Taktgenerator 301 empfängt weiterhin Taktimpulse α 1,3 und Taktimpulse tx 2,4, die zur gleichen Zeit
auftreten wie die früher beschriebenen Taktimpulse mit der Ausnahme, daß λ 1 und λ 3 auf einer Leitung
erscheinen, und daß a 2 und α 4 auf einer anderen
Leitung erscheinen. Φ 1 und Φ 2 sind weitere Eingangssignale des Taktgenerators 301 und werden von einem
Phasenteiler/Taktgenerator 306 abgeleitet. Diese Taktimpulse existieren nicht, wenn die Schnittstelleneinrichtung,
die gerade beschrieben wird, sich im »Sende-Zustand« befindet (was unten weiter beschrieben wird),
und sie existieren, wenn die Schnittstelleneinrichtung sich im »Empfangs-Zustand« befindet (was wiederum
weiter unten beschrieben wird).
Es genügt an dieser Stelle zu sagen, daß Φ 1 und Φ 2
Taktimpulse sind, die von einer Schaltung innerhalb der «>
Schaltungsanordnung 306 in Abhängigkeit von einem Eingangstaktsignal abgeleitet werden, das beim Taktpuffer
305 empfangen wird und daß sie eine Zeitgabeinformation für den Taktgenerator 301 liefern,
von der der letztere die Taktimpulse A 1, A 2, Bi, B2 f>5
und 52' ableitet.
Mit Bezug auf das Diagramm von Wellenformen in F i g. 3b sieht man, daß beim Sende-Zustand A 1 und B1
dieselbe Wellenform haben; A 2, B 2 und B2' haben dieselbe Wellenform und sind außer Phase mit A 1. Man
sieht auch, daß beim Sende-Zustand die Impulse Φ 1 und Φ 2 Null sind.
Im Gegensatz dazu sind beim Empfangs-Zustand A 1
und Φ 1 Impulse desselben Typs und sie treten zur selben Zeit auf und sie sind außer Phase mit den
Impulsen A 2 und Φ 2, die gleichermaßen vom selben Typ sind und zur gleichen Zeit auftreten. Es wird
weiterhin festgestellt, daß Sl, B2 und Βί beim
Empfangs-Zustand Null sind. Alle diese Impulse, ihre Darstellungen und ihre Zweckbestimmung werden im
Detail im Abschnitt dieser Beschreibung, der sich mit der Operationsbeschreibung befaßt, weiter unten
erläutert werden.
Ein Block 302 »Befehlsdecodierer-Schieberegister-Datenausgabe« empfängt A-Taktimpulse α 1, λ 2, <x_3,
«4, und Mikroprogramm-Befehle Rw, Rn, Rm, R\i, R\2
und Rn. Die Λ-Taktimpulse werden erhalten, wie früher
erwähnt wurde, und die /Mmpulse werden vom Mikroprogramm 118 oder einer ähnlichen Schaltung in
einer zugeordneten Steuereinrichtung, wie in Fig. 1 gezeigt, erhalten. Der Decodierblock 302 liefert zwei
Befehlssignale: »ö-> IOSR«, welches bedeutet, daß die
Inhalte der Daten auf der »Zw-Sammelleitung je nach
dem vorliegenden Fall in dem IOSR 101, 120 oder 121 angeordnet werden; und ein anderes Signal »1 -► IOSR«
bedeutet, daß die Schieberegistereinrichtung vollständig mit EINSEN geladen wird für Zwecke, die später
erläutert werden. Diese zwei Signale werden zu den Schieberegistern 201,202,210 und 211 geleitet.
In ähnlicher Weise spricht eine Befehlsdecodierung 303 auf ot-Taktsignale und »/^«-Signale an, die von
zugeordneten Mikroprogrammen erhalten werden, und auf »I«-Signale von dem Befehlsregister der Zentraleinheit
(oder der Steuereinrichtung), um ein Ausgangssignal »IOSR-^ ä« zu liefern. Dieses Ausgangssignal wird
zu den Schieberegistern 201, 202, 210 und 211 von zugeordneten lOSRs geleitet und bedeutet, daß die
Dateninhalte der Schieberegistereinrichtungen parallel zur 3-Sammelleitung innerhalb der sie aufnehmenden
Schaltung (entweder CPU 100, Steuereinrichtung 108 oder 113, je nachdem) übertragen wird.
Im folgenden wird Bezug genommen auf den Puffertreiber 304, Eingabe/Ausgabe-(I/O)-Taktpuffer
305, Phasenteiler 306 und Eingabe/Ausgabe-Puffer 307; der Treiber 304 weist eine Schaltung auf um in
geeigneter Weise die Taktimpulse (Impulsbündel) zum Taktpuffer 305 zu leiten, wenn das IOSR im
Sende-Zustand ist.
Wie erwähnt, werden B1 und B 2 vom Taktgenerator
301 abgeleitet und diese Taktimpulse sind im Wellenformdiagramm
Fig.3b bezeichnet. Beim Sende-Zustand liefert der I/O-Taktpuffer 305 dieses Taktimpulssignal
zu dem ihm zugeordneten Sende-Empfänger.
Der Phasenteiler 306 empfängt einen Eingangstakt von seinem Sendeempfänger über den Puffer 305, wenn
das IOSR sich im Empfangs-Zustand befindet (aber ignoriert Signale beim Puffer 305 beim Sende-Zustand).
Der Phasenteiler 306 empfängt auch Signale »SETOUT
cc 4« und »RESETOUTa. 3« 3 von dem Befehlsdecodierer
300 und Φ 2 CUTOFF von der Pegelschiebeeinrichtung 203, und liefert interne Taktsignale Φ 1 und Φ 2.
(Beim Empfangs-Zustand werden Φ 1 und Φ 2 erzeugt in Abhängigkeit von verschiedenen Bedingungen
einschließlich der, daß »SETOUTa. 4« geltend gemacht
wird und daß »RESET OUT'« 3« nicht geltend gemacht
wird; das Gegenteil trifft zu beim Sende-Zustand, wobei
Φ 1 und Φ 2 beim Sende-Zustand nicht erzeugt werden,
was in der Operationsbeschreibung unten erläutert wird.) Der Phasenteiler 306 ist auch mit dem
Eingabepuffer 307 verbunden.
Was schließlich die Schaltungen innerhalb aller Schaltungsanordnungen, die in den Fig. 2 und 3a
gezeigt sind, betrifft, sind sie aus üblichen logischen Verbindungen hergestellt, wobei die MOS-Technologie
verwendet ist. Der Fachmann kann derartige Logiken in bekannter Technik entwerfen. Daher und im Interesse
der Klarheit der Darstellung sind derartige Einzelheiten nicht gezeigt.
Vor einer Diskussion der gegenseitigen Verbindungen der Fig.4 betrachte man die Eingabe/Ausgabe-Sammelleitung
105 (I/O-BUS). Die Eingabe/Ausgabe-Sammelleitung 105 und die Umgehungs-Sammelleitungen
122,123 und 126 enthalten jeweils eine Vielzahl von Leitern. Bei dem bevorzugten Ausführungsbeispiel der
vorliegenden Erfindung enthält die Sammelleitung sechzehn getrennte Leiter oder leitende Pfade zum
Leiten von elektrischen Signalen oder Impulsen zu und von den verschiedenen Komponenten. Die Wege
können wie folgt bezeichnet werden: MCLOCK und MCLOCK, die zwei Gegentaktwege für interne
Taktsignale bezeichnen; S/01 und S/01, die zwei erste Gegentaktdatenwege bezeichnen; S/02 und ß/02, die
zwei zweite Gegentaktdatenwege bezeichnen; BIO CLOCK und BIO CLOCK (BUS input output Clock)
(Verbindungsleitung-Eingang-Ausgang-Takt), die zwei weitere Gegentakt-Taktsignalwege bezeichnen;
BEX-TINT, Sammelleitung externe Unterbrechung (BUS external interrupt); BDCINT, Sammelleitung
Datenkanalunterbrechung (BUS data channel interrupt); INTP, Unterbrechnungspriorität (interrupt priori-
ty); DCHP, Datenkanalpriorität (data channel priority); CLEAR, ein Löschimpuls oder Freigabeimpuls; und drei
getrennte Masseleitungen. Mindestens BEXTINToder
BDCINTsind Signale, die in Umgehungssammelleitungen
geleitet werden. Die Operation in Abhängigkeit von und verantwortlich für diese unterschiedlichen Taktsignale
und Datenwegsignale wird später in der Operationsbeschreibung erläutert, wobei die Bezeichnungen
der Leitungen an dieser Stelle gegeben werden, um die Beschreibung der Fig.4, des Sendeempfängers, zu
erleichtern.
Die Schaltung von Fig.4 ist enthalten entweder innerhalb des CPU-Sendeempfängers 103, des Geräte-Sendeempfängers
106 oder des Geräte-Sendeempfängers 111. Die Schaltungsanordnung in jedem von diesen
Sendeempfänger-Blöcken ist im wesentlichen dieselbe. Die vier Leiter, die ein IOSR mit einem zugeordneten
Sendeempfänger verbinden, sind am unteren Ende der F i g. 4 gezeigt als I/O CLOCK-Anschluß, D 1-AnSchluß,
D2-Anschluß und //WLT-Anschluß. Der INPUT-Anschluß
entspricht dem nur in einer Richtung leitenden Leiter der vier Leiter, die in jeder Gruppe in Fig. 1
gezeigt sind. Die anderen Anschlüsse am oberen Abschnitt der F i g. 4 wie
ß7Ö2,
ß7Ö2,
; BIOCLOCK; BIGi, MCLOCK sind alle
S/01; ß/02, S/02; MCLOCK,
innerhalb derl/O-SSammelleitung 105 enthalten, wie früher erwähnt 7it. 3 und Tx^4 bezeichnen Anschlüsse, von denen hohe oder Treiber-Taktsignale geliefert werden, und sie sind in F i g. 1 jene Leitungen, die die Verbindung von einem zugeordneten Takttreiber herstellen; (beispielsweise die Leitungen, die CPU 100 und den Takttreiber 119 verbinden). In Fig.4 ist der Anschluß, der mit 10 MHz bezeichnet ist, derjenige Anschluß, mit dem der Taktosziilator 104 von F i g. 1 verbunden ist. Der mit MCLOCK XENAB bezeichnete Anschluß ist nicht ein Anschluß für andere Geräte, sondern er ist intern innerhalb eines ScndcEmplanger-Plättchens verbunden entweder zu einer hohen oder zu einer niedrigen Spannung in Abhängigkeit von seiner Verwendung entweder als CPU-Sende-Empfänger oder als Geräte-Steuereinrichtung-Sende-Empfänger.
innerhalb derl/O-SSammelleitung 105 enthalten, wie früher erwähnt 7it. 3 und Tx^4 bezeichnen Anschlüsse, von denen hohe oder Treiber-Taktsignale geliefert werden, und sie sind in F i g. 1 jene Leitungen, die die Verbindung von einem zugeordneten Takttreiber herstellen; (beispielsweise die Leitungen, die CPU 100 und den Takttreiber 119 verbinden). In Fig.4 ist der Anschluß, der mit 10 MHz bezeichnet ist, derjenige Anschluß, mit dem der Taktosziilator 104 von F i g. 1 verbunden ist. Der mit MCLOCK XENAB bezeichnete Anschluß ist nicht ein Anschluß für andere Geräte, sondern er ist intern innerhalb eines ScndcEmplanger-Plättchens verbunden entweder zu einer hohen oder zu einer niedrigen Spannung in Abhängigkeit von seiner Verwendung entweder als CPU-Sende-Empfänger oder als Geräte-Steuereinrichtung-Sende-Empfänger.
In Fig. 4 sind Gegentaktsender 410, 412, 414, 416
gezeigt wie auch Gegentaktempfänger 411,413,415 und
417. Das Paar 410,411 ist verbunden mit einem Flipflop
400 und einem UND/ODER-Glied 404; das Paar 412, 413 ist verbunden mit einem Flipflop 401 und einem
UND/ODER-Glied 405; das Paar414,415 ist verbunden mit einem Flipflop 402 und einem UND/ODER-Glied
406: und das Paar 416, 417 ist verbunden mil einem
Flipflop 403 und einem UND/ODER-Glied 407. Ein Ausgang des Flipflops 409 ist verbunden mit einem
Eingang der UND/ODER-Glieder 404-407; Eingangs-
signale des Flipflops 409 werden erhalten von Ausgängen eines NAND-Glieds 418 und auch vom
Ausgang des Gegentaktempfängers 417. Andere UND-, NAND-, Inverter-Schaltungen und andere logische
Schaltungen, die in der Darstellung gezeigt sind, sind in einer einfachen Weise miteinander verbunden, wie
gezeigt. Die Art der einzelnen logischen Schaltungen
und ihre Verbindung geht aus Fig.4 hervor. Wie man
sieht, haben die Gegentaktsender einen normalen und einen invertierten Ausgang, und die Gegentaktempfän-
ger haben einen normalen und einen invertierten Eingang.
Mit Bezug auf die in Fig.5 gezeigten Verbindungen
ist als nächstes ein Blockdiagramm einer Steuereinrichtung 108 oder 113 von Fig. 1 gezeigt. Ein IOSR 504 ist
äquivalent zu dem IOSR 120 oder 121, und somit zu dem, das in F i g. 2 und 3 gezeigt ist. Serielle Eingangssignale
des IOSR 504 sind gezeigt als I/O CLOCK, I/O DA TA 1
und I/O DATA 2, die äquivalent sind zu den Signalen
I/O CLOCK Di bzw. Dl in Fig.4. Der Anschluß
»OUT« in F i g. 5, der mit dem IOSR 504 verbunden ist,
ist äquivalent zu dem Anschluß »INPUT« in F i g. 4.
Das IOSR 504 ist durch die «afc-Sammelleitung mit
dem Eingang eines Befehlsregisters 503, Adreßregisters 505, Wortzählregisters 506, einer verdrahteten Maskierung
mit Treiber 509 und einem Datenausganginvertertreiber 510 parallel verbunden. Der Ausgang des
Datenausganginvertertreibers 510 ist über einen Ausgangsanschluß parallel verbunden mit dem zugeordneten
Peripheriegerät, beispielsweise dem Gerät 110 von F i g. 1 in Verbindung mit der Steuereinrichtung 108.
Es besteht eine zurückführende Sammelleitung, die als »£>«-SammeIleitung bezeichnet ist, und die von dem
Peripheriegerät über einen Dateneingangsinverter und Treiber 511 zurückführt. Die »^«-Sammelleitung verbindet
parallel Ausgänge des Treibers 509, einer Gerätecodeanfrage 508, eines Γ-Registers 507 (und seinen
Eingang), des Wortzählregisters 506, und des Adreßregisters 505 mit den Eingängen des IOSR 504 und einer
Unterbrechungsabschaltlogik 513.
Im oberen linken Teil des Diagramms von F i g. 5 liefert das Befehlsregister 503 ein Eingangssignal an
eine Statusänderungslogik 500. Andere Eingangssignale der Statusänderungslogik 500 sind die Eingangssignale
MCLOCK und MCLOCK. Dieses Takteingangssignal wird durch Anschlüsse 7^. 3 und 7"a2. 4 von Fig.4
erhalten. Das Ausgangssignal der Statusänderungslogik speist einen Statuszähler 501, der wiederum eine
programmierbare Logik (PLA) 502 speist Die PLA 502
ist ein Festspeicher und liefert Steuersignale an Komponenten der Steuereinrichtung (IOC) wie in
F i g. 5 gezeigt. Die Verbindung der Steuersignale ist aus Zwecken der Klarheit der Darstellung nicht gezeigt. (In
gleicher Weise besteht eine Verbindung zwischen der Gerätecodeanfrage 508 und der Statusänderungslogik
500, die im Diagramm aus Zwecken der Klarheit der Darstellung nicht gezeigt ist).
Anschlüsse, die bezeichnet sind mit INTP, DCHP, F(0-3), F STROBE, D(O-15), BUSY, DONE, INT,
DCHSYN, sind alle mit der zugeordneten Steuereinrichtung für Zwecke, die unten erläutert werden,
verbunden. Eine BUSY/DON'f-Logik 512 (Besetzt-Erledigt-Logik)
liefert ein Eingangssignal an die Unterbrechungsanforderungslogik 514, die auch ein Eingangssigna!
von der Unterbrechungsabschaltlogik 513 empfängt. Das Ausgangssignal von der Unterbrechungsanforderungslogik
514 speist einen Anschluß, der mit INTR bezeichnet ist, der über die Umgehungssammelleitung
(beispielsweise die Sammelleitung 122 in Fig. 1) mit der Zentraleinheit 100 verbunden ist. Schließlich
liefert eine Datenkanalanforderungslogik 515, die ein Eingangssignal direkt von dem Peripheriegerät über
den Anschluß DCHSYN empfängt, ein Ausgangssignal an einen Anschluß DCHR, wiederum über eine
Umgehungssammelleitung, direkt an die Zentraleinheit.
Das Vorstehende beendet die Verbindung von Komponenten, die sich auf die bevorzugte Ausführungsform der vorliegenden Erfindung beziehen.
Beim Betrieb sollte man die Fig. 1 bis 7 gemeinsam betrachten.
Der Quarzoszillator 104 liefert ein Taktsignal mit 10
MHz (andere Frequenzen können verwendet werden) an den Zentraleinheit-Sendeempfänger 103. Der Takttreiber
119 (Flipflop 403) in Kombination mit der Schaltung der Zentraleinheit 100 wandelt dieses
Taktsignal in ein 5-MHz-Signal um (oder ein anderes
Signal mit halber Frequenz). Der Sendeempfänger 103 empfängt das 10-MHz-Signal am Anschluß 10 MHz
(F i g. 4) und liefert dieses Signal an den Gegentaktsender 416. Die Signale MCLOCK und MCLOCK (F i g. 4)
werden über die Eingabe/Ausgabe-Sammelleitung 105 zu dem Geräte-Sendeempfänger 106 und 111 gesendet,
in denen zugeordnete interne Taktsignale erzeugt werden. Jedes dieser Taktsignale hat dieselbe Frequenz
von 10 MHz wie das des Oszillators 104, jedoch sind sie in der Phase verschoben infolge von Ausbreitungsverzögerungen,
die aus der Länge der Eingabe/Ausgabe-Sammelleitung 105 resultieren. Bei den Sendeempfängern 106
oder Ul empfangen beide Anschlüsse MCLOCK und MCLOCKdieseaußerphasigen 10-MHz-Signale,
wie in Fig.4 durch den Empfangspfeil angezeigt ist.
In Fig.4 ist der Anschluß MCLOCK XENAB
entweder auf einen hohen Wert oder auf einen niedrigen Wert gesetzt, wobei der eine Wert es dem
CPU-Sendeempfänger 103 ermöglicht, immer die Signale MCLOCK und MCLOCK zu senden, und der
andere Wert es immer den Geräte-Sendeempfängern 106 und 111 ermöglicht, immer die Signale MCLOCK
und MCLOCK zu empfangen. Diese Einstellung auf einen bestimmten Wert Findet innerhalb eines jeden
zugeordneten Sendeempfänger-Plättchens statt und bezieht sich nicht auf die noch zu beschreibende
Operation der Sende- und Empfangs-Zustände der Sendeempfänger. Das Obige beschreibt eine Operation,
durch die ein internes Taktsignal in jedem Sendeempfänger abgeleitet wird.
In ähnlicher Weise wie der Takttreiber 119 die Taktimpulse α 1, 3 und α 2, 4 an die Zentraleinheit 100
liefert, führen die Takttreiber 124 und 125 eine ähnliche Funktion für die Steuereinrichtungen 108 bzw. 113 aus.
Demzufolge betätigen interne Signale MCLOCK, MCLOCK von den Geräte-Sendeempfängern 106 und
111 das Flipflop 403 um Impulse «1,3 und α 2, 4 an die
Steuereinrichtungen 108 bzw. 113 zu liefern.
Das Vorgehende bezieht sich auf die Übertragung des Muttertaktsignals, die im allgemeinen in einer Richtung
erfolgt, vom Quarzoszillator 104 zum CPU-Sendeempfänger 103, zum Geräte-Sendeempfänger 106 und 111.
und zu den Steuereinrichtungen 108 und 113. Jedoch sind die Daten mit ihren zugeordneten Synchronisier-
'"' taktsignalen oder dem Sammelleitungstakt (BIO-
CLOCK) in zwei Richtungen wirkend; der Zweirichtungscharakter
des Systems sollte beachtet werden, wobei ein Sendeempfänger entweder als ein Sender
oder als ein Empfänger wirkt.
-'» Das Signal BIOCLOCK wird somit mit den Daten
vom CPU-Sendeempfänger zum Geräte-Sendeempfänger gesendet, wenn der CPU-Sendeempfänger in einem
Sende-Zustand ist, und das Signal BlOCLOCK wird mit anderen Daten von dem Geräte-Sendeempfänger zum
■" CPU-Sendeempfänger zurückgesendet, wenn der Gerätesendeempfänger
in einem Sende-Zustand ist.
Man nehme an, daß die Zentraleinheit 100 gerade ein Signal zur Eingabe/Ausgabe-Sammelleitung 105 sendet
und daß einer der Geräte-Sendeempfänger dieses Signal empfängt. Bei einem Sende-Zustand ist die in
einer Richtung wirkende Leitung der Leitergruppe 102 (Eingabepuffer 307) auf einem niedrigen Wert und die
Zentraleinheit 100 erzeugt Taktimpulse, die in Fig. 3b
an dem Taktpuffer 305 als »CLOCK pad« bezeichnet
'"> sind. Diese Impulse können sein ein Impulsbündel von
neun Zustandswechseln, die vom Taktpuffer 307 zu dem CPU-Sendeempfänger 103 über eine der Zweirichtungsleitungen
102 weiterlaufen. Die Taktimpulse liefern eine Zeitgabe für die Daten, die aus den Puffern
4(1 206 und 215 heraus übertragen werden (gleichzeitig
aber seriell), und für das Anfangsbefehlsbit pro Byte (also neun Zustandswechsel).
Synchron mit dem ersten der neun Zustandswechsel werden von den Puffern 206 und 215 Befehlsbits oder
Präfixbits oder Präsetbits von den Schieberegistern 201/202 bzw. 210/211 übertragen. Wie später beschrieben
wird, geben diese Bits die Natur des Worts an; zum Beispiel: ein Befehlswort. Diese neun Bits entsprechen
auf diese Weise einem Befehlsimpuls, der von acht
5(1 Datenbits auf jeder Leitung gefolgt ist. Ein Wort mit
sechzehn Bit wird auf diese Weise geteilt in zwei Bytes mit acht Bi', wobei jedem Byte ein Befehls- oder
Steuerbit vorausgeht.
Das Bündel von Taktimpulsen zuzüglich die zwei
5"> seriellen Datenströme werden zum CPU-Sendeempfänger
103 wie folgt gesendet Der Taktpuffer 305 ist verbunden mit I/O CLOCK (F i g. 4) und die Datenströme
von den Puffern 206 und 215 werden zu D1 bzw. D 2
(F i g. 4) geführt.
Wie erwähnt, liegt der Anschluß INPUTbei einem
Sende-Zustand auf einer niedrigen Spannung, und ein Flipflop 409 spricht auf diesen Zustand an, indem es die
Verknüpfungsglieder 404, 405, 406 und 407 derart aktiviert, daß sie Signale an den Anschlüssen
I/O CLOCK, Di, BIOi und BI02 durchlassen.
Die 5-M Hz-Taktimpulse und die Datenströme werden in den Sendeempfänger, gesteuert durch das
Flipflop 400 und jedes Bit der Daten, die momentan
entweder in einem Flipflop 401 (von D 1) oder 402 (von D 2) gespeichert werden, geschoben. Durch die
Tätigkeit der Flipflops 400, 401 und 402 werden die Gegentaktsender 410, 412 und 414 aktiviert und ein
10-MHz-TaktimpuIs und seine zwei zugeordneten
Datenimpulse werden gleichzeitig und im Gegentakt über die Sammelleitung zu einem empfangenden
Sendeempfänger gesendet
Es wird weiterhin auf Fig.4 Bezug genommen. Das
Flipflop 400 wird gesetzt und verriegelt; es wird durch das gemeinsame Auftreten des Signals INPUT, des
ersten Impulses der 5-MHz-I/O-CLOCK-\mpu\se (die
durch das Verknüpfungsglied 404 laufen) am Anschluß D des Flipflop 400 und eines internen 10-MHz-Taktimpulses
(der durch das Gatter 407 geht) am Eingang CK des Flipflops 400 gesetzt; es wird verriegelt durch die
Verbindung vom Ausgang O des Füpflops 400 zum
Eingang des Verknüpfungsglieds 404. Wie oben festgestellt, wird dann, wenn das Flipflop 400 gesetzt
wird, der Gegentaktsender 410 aktiviert und gestattet somit, daß die internen 10-M Hz-Taktimpulse, die am
anderen Eingang des Gegentaktsenders 410 erscheinen, als BlOCLOCK-Impulse gesendet werden (und natürlich
als komplementäre ß/OCi-OCTC-lmpulse. wenn
diese benötigt werden). Da jedoch die internen 10-MHz-Taktimpulse auch an den Eingängen CK der
Flipflops 401 und 402 erscheinen, gestatten diese Taktimpuise das Setzen dieser zwei Flipflops beim
Auftreten von bestimmten 10-MHz-Taktimpulsflanken,
und diese Flanken sind so gewählt, daß sie in die Mitte der Datenimpulse mit 5 MHz fallen, die an den
Eingängen Ddei Flipflops 401 und 402 erscheinen (über
die Verknüpfungsglieder 405 und 406). Somit werden die Datenimpulse durch die Flipflops 401 und 402 in
Abhängigkeit von dem internen 10-M Hz-Takt abgeta- ji
stet, und die Ausgangssignale Q, die diese Abtastwerte
repräsentieren, werden durch die Gegentaktsender 412 und 414 als Signale S/01 und ß/02 gesendet, und diese
Datenabtastwerte werden über die Sammelleitung gleichzeitig und synchron mit dem 10-MHz-Abtastimpuls
BIOCLOCK gesendet.
Als nächstes soll angenommen werden, daß ein Geräte-Sendeempfänger gerade die gesendeten Zentraleinheitsignale
empfängt.
Das Signal INPUT[Ur den empfangenden Sendeemp- ^
fänger hat einen hohen Wert, und das Flipflop 409 spricht auf dieses hohe Signal an, um die Verknüpfungsglieder 404 bis 407 in der richtigen Weise für diesen
Empfangs-Zustand zu aktivieren.
Die Taktimpulse (BIOCLOCK und BIOCLOCK) werden im Gegentaktempfänger 411 empfangen und
Datenimpulse werden empfangen in den Gegentaktempfängern 413 bzw. 415. Wiederum tasten die
Taktimpulse bei Betätigung des UND/ODER-Glieds
407 mit dem Flipflop 400 die Datenimpulse bei S5
Betätigung der Gegentaktempfänger 413 und 415 ab.
Es wird noch immer auf F i g. 4 Bezug genommen. Das Signal BIOCLOCK, das über den Gegentaktempfänger
411 empfangen wird, wird durch das UND/ODER-Glied 407 zu den Eingängen CK der Flipflops 400,401 und 402
geleitet; synchron damit werden die Signale ß/01 und Ö/02, die über die Gegentaktempfänger 413 und 415
empfangen werden, über die UND/ODER-Glieder 405 bzw. 406 zu den Eingängen D der Flipflops 401 und 402
geleitet. Die Datenströme S/01 und ß/02 mil 5 MHz werden somit wiederum durch die Flipflops 401 und 402
abgetastet in Abhängigkeit von vorbestimmten Flanken des 10-MHz-Signals BIOCLOCK. und wiederum sind
diese Flanxen so gewählt, daß sie in die Mitte der
Datenimpulse mit 5 MHz fallen. Das Flipflop 400 kippt in Abhängigkeit von dem 10-M Hz-Signal BIOCLOCK
an seinem Eingang CK, und somit rekonstruiert es einen S-Mto-Z/O-CZ-OCK-lmpulszug; der l/O-CLOCK-Impulszug
und die Ausgangssignale O von den Flipflops 401 und 402 werden synchron zu den Anschlüssen
I/O CLOCK, D 1 bzw. D 2 geleitet, und danach zu den
Steuereinrichtungen dieses Ausführungsbeispiels.
Die in den Flipflops 401 und 402 eines Geräte-Sendeempfängers
gespeicherten Daten werden beim Empfangs-Zustand mit einer Geschwindigkeit von 5
MHz gespeichert. Wegen der Laufzeit und anderer Faktoren, die eingangs erwähnt wurden, können diese
Daienimpulse abgeschrägt sein oder verzerrt usw. Der bessere Platz zum Abtasten dieser Art von Datenimpulsen
ist in einem Abstand von der Vorderflanke oder Rückflanke des Datenimpulses. Auf diese Weise
gestattet der Abtasttakt mit 10 MHz, der ein Datenabtasten zum Zeitpunkt des Auftretens der
Flanke gestattet, die bei oder nahe der Mitte des ein größeres Intervall von 5 MHz aufweisenden Datenimpulses
auftritt, immer ein Abtgasten im Abstand von der Flanke des Ditenimpulses. Dieses Abtasten wird
erhalten mindestens durch die Flipflops 401 und 402 in Abhängigkeit von dem Signal BIOCLOCK über das
UN D/ODER-Glied 407.
Danach werden die abgetasteten Daten seriell aus dem Sendeempfänger 106 in das IOSR 120 geschoben,
wenn dieses die empfangende Sendeempfänger-Steuereinrichtungs-Kombination ist, deren Gerätecode vorliegt
(wird unten diskutiert).
Das Taktsignal wird über den mit I/O CLOCK
(Fig.4) bezeichneten Anschluß in das IOSR 504
gesendet und die Datenwege laufen von Di, D 2 (Fig.4) nach I/O DATA 1 bzw. I/O DATA 2 (Fig. 5).
Die Richtungen des Empfangs-Zustands und Sende-Zustands in Fig. 4 sind klar gezeigt. Wenn der
CPU-Sendeempfänger gerade sendet, muß der andere Sendeempfänger, der im Nachrichtenaustausch steht,
empfangen.
Die Zentraleinheit und ihr Sendeempfänger, die Steuereinrichtungen für Peripheriegeräte und ihre
zugeordneten Sendeempfänger sind normalerweise im Empfangs-Zustand. Mit anderen Worten ist jede
Komponente, wenn keine Daten übertragen werden, derart tätig, daß sie ein Signal von einem anderen Gerät
empfangen kann. Das IOSR der Zentraleinheit kann auf ein Signal vom Mikroprogramm 118 veranlaßt werden
den Sende-Zustand anzunehmen, was begleitet ist von der Erzeugung eines Signals auf der Ein-Richtungsleitung
der Gruppe 102, wie früher erwähnt. Es muß jedoch kein anderes Signal in irgendeiner der
empfangenden Endkomponenten erzeugt werden, um zu veranlassen, daß diese vom CPU-Sendeempfänger
kommende Daten empfangen, weil die anderen Komponenten bereits normalerweise im Empfangszustand
sind.
Mit Bezug auf F i g. 2 soll beachtet werden, daß dort 4-Bit-Schieberegister gezeigt sind, von denen jedes in
der Lage ist, entweder die ungeraden oder die geraden Bits von entweder dem linken oder dem rechten Byte
eines Datenworts zu speichern. Die Daten werden von den Schieberegistern zu anderen Komponenten in der
sie aufnehmenden Komponente, beispielsweise der Zentraleinheit, parallel übertragen. Beispielsweise werden
die Inhalte der 6-Sammelleitung in die Schieberegister
geladen, wenn der Befehl »/>-» IOSR« aktiviert ist:
also werden b\, b3, b5 und bl parallel in das
Schieberegister 201 geladen; in ähnlicher Weise werden die anderen »f>«-Daten in die drei anderen Schieberegister
geladen.
Der andere Befehl »IOf:R--ä« überträgt, wenn er
aktiviert ist, in den Schieberegistern gespeicherte Daten parallel auf die ä-Sammelleitung. So werden äl, ä3, ä 5,
ä? in die 3-SammelIeitung vom Schieberegister 201
geladen, und in ähnlicher Weise werden die anderen »a«-Daten gleichzeitig parallel übertragen. Jedoch wird
das Hineinschieben der Daten in und das Herausschieben der Daten aus den Schieberegistern von den Puffern
206 und 215 seriell vorgenommen.
Die serielle Natur der Eingabe- und Ausgabe-Übertragung der Daten ist in F i g. 6 vermerkt. Ausgangsdaten
oder Eingangsdaten mit Bezug auf den Puffer 206 können in der Form von DATA 1 bezeichnet werden;
Ausgangsdaten oder Eingangsdaten mit Bezug auf den Puffer 215 können in der Form von DATA 2 bezeichnet
werden; und die Takt-Eingangs- oder Ausgangs-Impulse beim Puffer 305 sind dargestellt durch I/O CLOCK.
Aus dieser Darstellung der Datenbits sieht man, daß der Multiplexer und Treiber 205 (MUX DRIVER) den
seriellen Bitstrom von den Schieberegistern 201 und 202 wechselweise schaltet; in gleicher Weise schaltet der
Multiplexer und Treiber 214 wechselweise den seriellen Bitstrom von den Schieberegistern 210 und 211.
F i g. 7 zeigt die Wirkung der Tätigkeit der Schieberegistereinric
itung von F i g. 2. Beispielsweise kann der I/O-Puffer in F i g. 7 der Puffer 206 sein. Der I/O-Puffer
sendet, wer.η der Funktionsschalter 52 geschlossen ist,
und der I/O'-Puffer empfängt Information zum Schieberegister,
wenn der Schalter 51 geschlossen ist. Einer der Funktionsschalter 51 und 52 ist jeweils geschlossen,
einer jeweils offen.
Es wird nun auf F i g. 6 Bezug genommen. Das erste Bit in jedem der Datenworte sind die Befehlsbits oder
Präfixbits oder Präsetbits. In der Figur sind sie gezeigt als Null-Bits. Dieser Zustand wird durch eine empfangende
Komponente (z. B. Steuereinrichtung 108) als ein Eingabe/Ausgabe-Befehl decodiert, oder als ein Befehlswort.
Diese Befehlsbits werden festgelegt durch den Befehlsdecodierer 208, in Abhängigkeit von den
Taktimpulsen « 2 und α 4 und in Abhängigkeit von den
Befehlsimpulsen von dem CPU-Mikroprogramm 118. Andere Kombinationen von Werten für die Befehlsbits
bezeichnen andere Arten von Wörtern, die unten weiter diskutiert werden.
Es wird nun auf F i g. 2 Bezug genommen. Wenn der Befehl 1 -► !OSR in allen vier Schieberegistern aktiviert
wird, gibt dies überall in alle vier Schieberegister Einsen ein. So ist, wenn DATA 1 und DATA 2 von
Fig. 6 durch die Puffer 206 und 215 des lOSR 101 empfangen werden und somit an den Eingängen der
Schieberegister 201, 202, 210 und 211, beispielsweise wennn eine Null in der Pegelschiebeeinrichtung 203
detektiert wird, diese Null das Null-Befehlsbit von DATA 1 (weil die Einsen vorher gesetzt wurden). Zu
diesem Zeilpunkt wird Φ 2 CUTOFF erzeugt und dem Phasenteiler 306 zugeführt, der die weitere Erzeugung
von Taktimpulsen Φ 1 und Φ 2 bei diesem Empfangs-Zustand verhindert. Vor diesem Cutoff-Zeitpunkt
wurden Taktimpulse Φ\ und Φ 2 erzeugt, weil die Schaltungsanordnung in Fig.2 sich im Empfangs-Zustand
befand, und die Daten wurden eingetaktet synchron mit dem Takt, der beim Taktpuffer 305 vom
BIOCLOCK empfangen wurde, was die Erzeugung der Signale Φ 1 und Φ 2 gestattete, was wiederum die
Erzeugung der Signale A 1 und A 2 gestattete zum Schieben der Daten in die Schieberegister.
Es wird nun F i g. 5 betrachtet. Das Eingabe/Ausgabe-Schieberegister
504 empfängt seriell Daten an seinen Eingängen I/O DATA 1 und 2 und synchron mit dem
Signal I/O CLOCK (Eingabe/Ausgabe-Takt). Die ersten beiden Datenbits sind, wie erwähnt, Befehlsbits. Wenn
sie beide Null sind, wird dies so interpretiert, daß es ein Eingabe/Ausgabe-Befehlswort ist und die restlichen
ίο sechszehn Bits werden parallel vom IOSR in das
Befehlsregister 503 übertragen. Das Wort wird dann in die Statusänderungslogik 500 übertgragen, in de" ein
Vergleich mit dem Gerätecode 508 gemacht wird, der auch mit der Statusänderungslogik 500 verbunden ist
(nicht dargestellt).
Wenn die Steuereinrichtung 108 einen Gerätecode trägt, der übereinstimmt mit dem in den letzten sechs
Bits des Eingabe/Ausgabe-Befehlsworts angegebenen Gerätecode, dann findet die folgende Prozedur
innerhalb dieser speziellen Steuereinrichtung statt. In Abhängigkeit von der Natur des Befehls wird mit einem
der Register in der Registeranordnung 505, 506, 509 gearbeitet und die »a«-Sammelleitung liefert dieses
Wort an das zugeordnete Peripheriegerät, wenn dies erforderlich ist.
In ähnlicher Weise kann ein Peripheriegerät, das mit
dieser Steuereinrichtung verbunden ist, Signale zurück durch die Steuereinrichtung liefern, mindestens durch
die 6-Sammelleitung in das IOSR 504. Von dort werden
die Signale rückwärts ausgesendet durch seinen zugeordneten Sendeempfänger und zurück zu der
Zentraleinheit. Natürlich wird bei diesem Sende-Zustand für diese Steuereinrichtung der Anschluß
OLT derart betrieben, daß ein normalerweise
vorliegender Empfangs-Zustand für diesen Satz von Sendeempfänger-Steuereinrichtung-Komponenten in
einen Sende-Zustand umgewandelt wird. Der Anschluß OLT in Fig.5 ist der Pfeil mit einer Richtung der
Gruppe 107in Fig. 1.
Die anderen Signale, die von dem Gerät gesendet werden, sind auf der rechten Seite der Darstellung in
F i g. 5 angezeigt. Wie früher erwähnt, werden einige der Signale durch die Umgehungs-Sammelleitung 122
gesendet, beispielsweise INTR, (entspricht INTP) und
DCHR (entspricht DCHP).
Es wird nun auf F i g. 5 Bezug genommen. Die Statusänderungslogik 500 spricht an auf mindestens die
Tätigkeit des PLA 502 (programmierbare Logik) und den Befehl von dem Befehlsregister 503. Die Statusänderungslogik
500 wählt einen logischen Status als den nach der Beendigung des gegenwärtigen Status als
nächster folgenden Status aus. Sämtliche Status oder Zustände, die von der Steuereinrichtung erzeugt
werden, werden im PLA 502 gespeichert, das die Information in einem Lesespeicher (ROM) gespeichert
enthält zum Steuern der Tätigkeit von mindestens der Registereinrichtung der Steuereinrichtung.
Es wird nun mit der Tätigkeit der Anordnung, die in F i g. 5 gezeigt ist, fortgefahren. Die Steuerlogik des IOC
oder die Steuereinrichtung für Peripheriegeräte schließt das PLA 502 ein, die Statusänderungslogik 500, und den
Statuszähler 501. Die Steuerlogik bestimmt Operationen, die während den Datenkanalsequenzen und
während der Ausführung von Eingabe/Ausgabebefehlen durchgeführt werden. Das PLA enthält Information,
die Maschinenzustände oder Logikzustände des IOC definiert. Die Statusänderungslogik 500 bestimmt die
Reihenfolge, in der das IOC oder die Steuereinrichtung
verschiedene Logikzustände einnimmt, die in der programmierbaren Logik 502 definiert sind. Die
Reihenfolge, in der es die Zustände auswählt hängt ab von der Information, die vom PLA 502 empfangen wird,
und von der Statusinformation, die von anderen Komponenten des IOC empfangen wird.
Der Statuszähler 501 ist ein Register, das die Adresse der im PLA 502 gespeicherten Information enthält, die
den laufenden Zustand der Gerätesteuereinrichtung definiert Das Adreßregister 505 ist ein Register mit
fünfzehn Bit, dessen Inhalt während der Datenkanalsequenzen
inkrementiert wird und zu seinem zugeordneten Sendeempfänger gesendet wird, wenn externe
Register nicht aktiviert sind. Das Wortzählregister 506 ist ein Register mit sechzehn Bit, dessen Inhalt während
der Datenkanalsequenzen inkrementiert wird. Das T-Register 507 ist ein Register mit sechzehn Bit, das den
Richtungsanzeiger und die Datenkanaladresse während der Datenkanalsequenzen enthält Das Gerätecoderegister
508, das Polaritätsbit und die Bitstrukturen für externe Registeraktivierung (external register enable,
EXTREG ENAB) werden mit Information geladen, die
von dem Peripheriegerät über die 6-Sammelleitung
während der Ausführung eines lORST-Befehls (Eingabe/Ausgabe
zurücksetzen) empfangen wurde. Das Gerätecoderegister 508 ist ein Register mit sechs Bit,
welches wie erwähnt in Verbindung mit der Statusänderungslogik 500 arbeitet, um es dem IOC nur dann zu
erlauben, einen Eingabe/Ausgabe-Befehl durchzuführen, wenn die Bits 10—15 des Befehls den Inhalten vonO
bis 5 des Gerätecoderegisters 508 gleich sind. In anderen Worten, wenn ein Wort mit 18 Bit wie in F i g. 6
gezeigt, zum IOSR 504 der Steuereinrichtung als ein Eingabe/Ausgabe-Befehlswort geleitet wird (bestimmt
durch das erste Bit von jedem Byte mit neun Bit), dann wird es in das Befehlsregister 503 geschrieben. Dann
wird in der Statusänderungslogik 500 ein Vergleich gemacht zwischen den sechs am weitesten rechts
stehenden Bits des Worts mit dem Gerätecoderegister 508. Wenn eine Übereinstimmung besteht, dann weiß
die Steuereinrichtung, daß dieser Befehl für sie bestimmt war.
Die Polaritätsbitanzeige ist eine Unteranordnung der Anordnung 508 und sie ist ein Register mit einem Bit,
das den Sinn von gesendeten und von dem Peripheriegerät empfangenen Datenbits bestimmt. Wenn dieses
Bit eine 1 enthält, wird ein niedriger Pegel an den Datenleitungen, die mit dem Gerät verbunden sind, als
eine 0 interpretiert, und eine 0 wird zu jenen Leitungen mit einem niedrigen Pegel übertragen. Wenn das
Polaritätsbit eine 0 enthält, haben zu den Datenleitungen des Geräts übertragene Daten den entgegengesetzten
Effekt.
Das Bit für externe Registeraktivierung ist wiederum ein Register mit einem Bit. Wenn dieses Bit eine Null
enthält, ist der Inhalt der Datenkanaladresse, die während der Datenkanalsequenz gesendet wird, der
Inhalt des Speicheradreßregisters 505. Andernfalls ist die Datenkanaladresse eine Information, die von dem
Peripheriegerät empfangen wurde.
Der Maskierungstreiber 509 (MASK OUT DRIVER) und die Unterbrechungsabschaltlogik 513 zusammen
bestimmen den Inhalt des Registers mit einem Bit, das Unterbrechungsabschaltbit genannt wird. Der Inhalt
dieses Bits wird nur während der Ausführung eines MSKO-Befehls (mask out) geändert. Die Steuereinrichtung
macht nur dann Anforderungen nach einer Programmunterbrechung, wenn der Inhalt des Unterbrechungsabschaltbits
gleich Null ist
Die Besetzt/Erledigt-Logik 512 enthält zwei Register
mit einem Bit, genannt Besetzt-Bit und Erledigt-Bit Der
Inhalt dieser Bits wird gespeichert durch Operationen, die während der Ausführung von Eingabe/Ausgabe-Befehlen
durchgeführt werden und durch Operationen, die im Gerät durch das Peripheriegerät durchgeführt
werden. Die Inhalte dieser Bits werden über die Umgehungssammelleitung während der Ausführung
eines Eingabe/Ausgabe-Skip-Befehls übertragen. Die Unterbrechungsabschaltlogik 514 bestimmt, wann die
Steuereinrichtung eine Anforderung nach einer Programmunterbrechung macht. Sie enthält ein Register
mit einem Bit, das Unterbrechungsanforderungsbit genannt wird. Die Steuereinrichtung macht eine
Anforderung nach einer Unterbrechung, wenn dieses Bit eine 1 enthält. Die Datenkanalanforderungslogik 515
bestimmt, wann die Steuereinrichtung eine Anforderung nach einem Datenkanal macht. Sie enthält ein Register
mit einem Bit, das Datenkanalanforderungsbit genannt wird. Die Steuereinrichtung macht eine Datenkanalanforderung,
wenn dieses Bit eine 1 enthält.
Zum Zusammenfassen von vier Typen der Übertragung auf der Eingabe/Ausgabe-Sammelleitungsanordnung
wird wieder auf F i g. 6 Bezug genommen. Jede der vier Typen besteht aus einem Steuerbit und acht
Datenbits, die auf zwei Datenleitungen übertragen werden (vier Datenleitungen zur Berücksichtigung einer
Gegentaktübertragung). Die vier Typen werden durch Codieren der Steuerbits identifiziert. Eine logische »1«
auf der Sammelleitung kann durch ein Signal mit hohem Pegel repräsentiert sein.
Das erste Bit von jedem Byte mit neun Bit wird als eine Null dargestellt und die beiden Werte Null werden
decodiert in der Bedeutung einer Eingabe/Ausgabe-Instruktion oder eines Eingabe/Ausgabe-Befehls.
Wenn aber das Befehlsbit von DATA 1 niedrig ist und das Befehlsbit von DATA 2 hoch ist, wird dies
benutzt um eine Datenübertragung vom CPU (Zentraleinheit) zu einem ausgewählten Peripheriegerät während
programmierter Eingabe/Ausgabe- und Datenkanal-Unterbrechungen anzuzeigen. Es gibt drei Datenformate,
die bei dieser Datenart der Übertragung verwendet werden:
(1) Normale Daten, wo die Bits 0—15 verwendet werden als ein Datenwort mit 16 Bit; dies wird
benutzt bei bestimmten Befehlen und für Übertragungen von Daten während Datenkanalzyklen;
(2) I/O Skip (Eingabe/Ausgabe-Skip), wobei die Bits
2—15 ignoriert werden; das Bit 0 wird verwendet, um DONE (Erledigt) darzustellen und das Bit 1
wird verwendet, um BUSY (Besetzt) darzustellen; dieses Format wird verwendet, wenn ein Gerät auf
einen I/O Skip-Befehl antwortet;
(3) die Datenkanaladresse ist das dritte Datenübertragungsformat, wobei die Bits 1 bis 15 als eine
Speicheradresse verwendet werden; das Bit 0 wird verwendet um eine Eingabe oder Ausgabe
anzuzeigen, »1« repräsentiert dabei eine Eingabe und »0« repräsentiert eine Ausgabe; dieses Format
wird verwendet, wenn ein Peripheriegerät auf eine Datenkanaladreßanforderung antwortet.
Die nächste Kombination für die Befehlsbits würde sein DATA 1 hoch und DATA 2 niedrig; dies bezieht
sich auf eine Datenkanaladreßanforderung (DCADRQ) von der Zentraleinheit an die Eingabe/Ausgabe-Sammelleitung.
Diese Art von Anforderung zeigt an, daß
dasjenige Peripheriegerät, das mit der höchsten
Priorität einen Datenkanalzyklus anfordert, die Speicheradresse, die es zu verwenden wünscht, an die
Zentraleinheit senden sollte über die Umgehungssammelleitung 122 oder 123 und die Sammelleitung 105.
Wenn schließlich die Befehlsbits 1,1 sind, so soll dies
eine Anforderungsfreigabe (RQENB) von der Zentral-
einheit 100 zu der Eingabe/Ausgabe-Schaltung darstellen. Dieses Wort synchronisiert externe Unterbrechungsanforderungen
und Datenkanalanforderungen, die von den Peripheriegeräten 108,113 usw. empfangen
wurden, die andernfalls Schwierigkeiten durch miteinander konkurrierende Anforderungen erzeugen könnten.
Hierzu 6 Btett Zeichnungen
Claims (1)
- Patentanspruch:Datenverarbeitungsanlage, die eine Zentraleinheit, einen mit der Zentraleinheit in Verbindung > stehenden Hauptspeicher, Eingabe/Ausgabe-Einrichtungen mit einer der Anzahl von Peripheriegeräten entsprechenden Anzahl von individuellen Steuereinrichtungen für Peripheriegeräte und eine Taktquelle aufweist wobei in der Steuereinrichtung ι ο eine Registeranordnung vorgesehen ist, aus der Signale in das zugehörige Peripheriegerät geleitet werden und zu der Signale aus dem Peripheriegerät geleitet werden, wobei in der Steuereinrichtung eine Steuerlogik zur Steuerung der Operation der betreffenden Steuereinrichtung vorhanden ist und wobei die Eingabe/Ausgabe-Einrichtungen eine Eingabe/Ausgabe-Sammelleitung aufweisen, d a dadurch gekennzeichnet,
daß eine der Anzahl der Peripheriegeräte entsprechende Anzahl von Geräte-Sendeempfängern (106, 111) den Steuereinrichtungen (108, 113) nachgeschaltet und mit der Sammelleitung unmittelbar verbunden ist, daß die Gerätesteuerung in den Eigabe/Ausgabe-Einrichtungen zum Senden und Empfangen von Signalen zwischen einerseits jeweils einem Peripheriegerät (110, 115) und andererseits der Zentraleinheit (100) bzw. jeweils einem der Geräte-Sendeempfänger (106,111) ausgebildet ist;
daß die Registeranordnung der Steuereinrichtung w (108, 113) als Schieberegisteranordnung (120, 121) zum seriellen Empfangen einer Eingabegruppe der Signale von dem betreffenden Sendeempfänger (106, 111) und zum seriellen Senden einer Ausgabegruppe der Signale zu dem betreffenden Sendeemp- π fänger ausgebildet ist;daß in der Steuereinrichtung eine erste Sammelleitungsanordnung vorgesehen ist, um Paralleldarstellungen von Signalen aus der Eingabegruppe der Signale von der Schieberegisteranordnung der 4< > Steuereinrichtung zu dem zugeordneten Peripheriegerät zu leiten;daß eine weitere Sammelleitungsanordnung in der Steuereinrichtung vorgesehen ist, um Paralleldarstellungen von Signalen der Ausgabegruppe der Signale von dem zugeordneten Peripheriegerät zu der Schieberegisteranordnung der Steuereinrichtungzuleiten;daß die Steuereinrichtung ferner eine Registeranordnung aufweist, die zwischen die erste und die w zweite Sammelleitungsanordnung geschaltet ist, um von der ersten Sammelleitungsanordnung Darstellungen der Eingabegruppe der Signale zu empfangen, diese Darstellungen zeitweise zu speichern und Darstellungen der Ausgabegruppe der Signale zu 5r> der zweiten Sammelleitungsanordnung zu senden;
daß eine Statusänderungslogik (500) in der Steuereinrichtung vorgesehen ist, die in Abhängigkeit von der Tätigkeit der als programmierbare Logik (502) ausgebildeten Steuerlogik und einem in einem w> Befehlsregister (503) gespeicherten Befehl einen von verschiedenen Operationslogikzuständen als den als nächstes nachfolgenden Status nach der Beendigung des gegenwärtigen Status auswählt; und
daß eine Umgehungsleitungsanordung (122, 123, 126, 514, 515) mit der weiteren Sammelleitungsanordnung und dem zugeordneten Peripheriegerät verbunden ist, um andere der genannten Signale, die sich auf Anfragen der Peripheriegeräte und der Zentraleinheit für bestimmte Operationen des Hauptspeichers (116) beziehen, direkt zwischen der betreffenden Steuereinrichtung und der Zentraleinheit auf einem Weg zu leiten, der nicht den der Steuereinrichtung zugeordneten Sendeempfänger enthält.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/662,179 US4040032A (en) | 1976-02-27 | 1976-02-27 | Peripheral device controller for a data processing system |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2707800A1 DE2707800A1 (de) | 1977-09-08 |
DE2707800B2 true DE2707800B2 (de) | 1979-04-19 |
DE2707800C3 DE2707800C3 (de) | 1980-01-10 |
Family
ID=24656696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2707800A Expired DE2707800C3 (de) | 1976-02-27 | 1977-02-23 | Datenverarbeitungsanlage |
Country Status (6)
Country | Link |
---|---|
US (1) | US4040032A (de) |
JP (1) | JPS52110534A (de) |
CA (1) | CA1062373A (de) |
DE (1) | DE2707800C3 (de) |
FR (1) | FR2342527A1 (de) |
GB (1) | GB1581837A (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4268908A (en) * | 1979-02-26 | 1981-05-19 | International Business Machines Corporation | Modular macroprocessing system comprising a microprocessor and an extendable number of programmed logic arrays |
FR2480969A1 (fr) * | 1980-04-16 | 1981-10-23 | Dshkhunian Valery | Unite d'echange d'information a microprocesseur |
US4851995A (en) * | 1987-06-19 | 1989-07-25 | International Business Machines Corporation | Programmable variable-cycle clock circuit for skew-tolerant array processor architecture |
JPH02155002A (ja) * | 1988-12-07 | 1990-06-14 | Omron Tateisi Electron Co | データ伝送方式 |
US6574330B1 (en) * | 1999-12-10 | 2003-06-03 | Rockwell Science Center, Inc. | Bus interface for automatic call distributor |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3564509A (en) * | 1968-04-22 | 1971-02-16 | Burroughs Corp | Data processing apparatus |
US3699525A (en) * | 1970-11-27 | 1972-10-17 | Honeywell Inf Systems | Use of control words to change configuration and operating mode of a data communication system |
US3753236A (en) * | 1972-03-31 | 1973-08-14 | Honeywell Inf Systems | Microprogrammable peripheral controller |
US3909790A (en) * | 1972-08-25 | 1975-09-30 | Omnus Computer Corp | Minicomputer with selector channel input-output system and interrupt system |
US3900833A (en) * | 1974-03-18 | 1975-08-19 | Singer Co | Data communication system |
FR2284928A1 (fr) * | 1974-09-16 | 1976-04-09 | Honeywell Bull Soc Ind | Interface de liaison d'une unite de traitement de donnees a un ensemble de m postes de travail |
-
1976
- 1976-02-27 US US05/662,179 patent/US4040032A/en not_active Expired - Lifetime
-
1977
- 1977-01-26 CA CA270,464A patent/CA1062373A/en not_active Expired
- 1977-01-26 GB GB3252/77A patent/GB1581837A/en not_active Expired
- 1977-02-23 FR FR7705864A patent/FR2342527A1/fr active Granted
- 1977-02-23 DE DE2707800A patent/DE2707800C3/de not_active Expired
- 1977-02-24 JP JP1974377A patent/JPS52110534A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
GB1581837A (en) | 1980-12-31 |
US4040032A (en) | 1977-08-02 |
CA1062373A (en) | 1979-09-11 |
DE2707800A1 (de) | 1977-09-08 |
FR2342527B1 (de) | 1983-08-19 |
DE2707800C3 (de) | 1980-01-10 |
FR2342527A1 (fr) | 1977-09-23 |
JPS52110534A (en) | 1977-09-16 |
JPS5542427B2 (de) | 1980-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2707783B2 (de) | Datenverarbeitungsanlage | |
DE2756890C2 (de) | Schaltungungsanordnung zur Steuerung der Datenübertragung zwischen einer zentralen Verarbeitungseinheit und einer Mehrzahl peripherer Einheiten | |
DE60221042T2 (de) | Hybride parallel-seriell-busschnittstelle | |
DE2837214C2 (de) | ||
DE3038639C2 (de) | Anordnung zur Datenübertragung zwischen einer Zentraleinheit und n E/A-Einheiten | |
DE3232600C2 (de) | ||
DE2406740C2 (de) | Schaltungsanordnung zur Steuerung des Datentransfers zwischen einem Datenprozessor und einer Fernverarbeitungseinrichtung | |
DE2503111B2 (de) | Verfahren und schaltungsanordnung zur zeitmultiplexen uebertragung von nutzinformationen aus voneinander unabhaengigen quellen | |
EP0039036A2 (de) | Datenübertragungssystem | |
EP0692893B1 (de) | Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus | |
DE2707820C3 (de) | Datenverarbeitungsanlage | |
EP0184706B1 (de) | Schnittstelleneinrichtung | |
DE2739607B2 (de) | Einrichtung zum Verbinden einer Vielzahl von Multiplexsystemen | |
DE3042105C2 (de) | ||
DE2707800C3 (de) | Datenverarbeitungsanlage | |
DE2753999C3 (de) | Digitales Zeitmultiplex-Übertragungssystem | |
DE2201014A1 (de) | Schaltungsanordnung zum selbsttaetigen verteilen der zeitkanaele in einem fernmeldesystem | |
DE69021873T2 (de) | Datenübertragungsanordnung bestehend aus einer Haupteinrichtung angeschlossen an einer Mehrzahl von sekundären Einrichtungen. | |
DE2831887C2 (de) | Anordnung zum Übertragen von Daten zwischen einer zentralen Verarbeitungseinheit und mehreren peripheren Einheiten | |
DE2459758B2 (de) | Schaltungsanordnung zur exklusiven Verbindung von zwei Datenleitungen in einer Nachrichtenanlage | |
DE2828602C2 (de) | Verfahren zum Übertragen von Daten in einem synchronen Datennetz | |
DE69110793T2 (de) | Zeitvielfachmultiplexiereinrichtung. | |
EP1155594A1 (de) | Zeitkritische steuerung von daten an eine taktgesteuerte schnittstelle mit asynchroner datenübertragung | |
DE60221270T2 (de) | Basisstation mit einer hybriden parallelen/seriellen busschnittstelle | |
DE2440479A1 (de) | Prozessor mit einer umschalteeinrichtung fuer eine bidirektionale datenleitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
BGA | New person/name/address of the applicant | ||
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |