DE2707820C3 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2707820C3
DE2707820C3 DE2707820A DE2707820A DE2707820C3 DE 2707820 C3 DE2707820 C3 DE 2707820C3 DE 2707820 A DE2707820 A DE 2707820A DE 2707820 A DE2707820 A DE 2707820A DE 2707820 C3 DE2707820 C3 DE 2707820C3
Authority
DE
Germany
Prior art keywords
clock
data
input
output
transceiver
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE2707820A
Other languages
English (en)
Other versions
DE2707820B2 (de
DE2707820A1 (de
Inventor
Natalio Lexington Mass. Kerllenevich
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.)
EMC Corp
Original Assignee
Data General 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 Data General Corp filed Critical Data General Corp
Publication of DE2707820A1 publication Critical patent/DE2707820A1/de
Publication of DE2707820B2 publication Critical patent/DE2707820B2/de
Application granted granted Critical
Publication of DE2707820C3 publication Critical patent/DE2707820C3/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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus 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/423Bus 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
    • 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/38Information transfer, e.g. on bus

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

der Zentraleinheit· Sendeempfänger (103) und die Geräte-Sendeempfänger (106,111) enthalten jeweils eine Schaltungseinrichtung (F i g. 4), welehe durch eine Betriebsartsteuerschaltung (IN-PLTT-Anschluß, 404, 405, 406, 407, 409, 418) auf ein einziges, auf den INPUT- Anschluß wirkendes Signal hin den betreffenden Sendeempfänger vom Empfangszustand — auf dem er, wenn bei betriebsbereiter Datenverarbeitungsanlage keine Daten übertragen werden, gehalten wird — in den Sendezustand schaltet,
und welche Schaltungseinrichtung im Sendezustand, gesteuert durch eine Vorrichtung (409), Taktimpulse (I/O CLOCK) und ein diesen zugeordnetes, damit synchronisiertes, eine Folge von Datenimpulsen aufweisendes Datenwort (Anschlüsse Di,D2) von der zugeordneten Zentraleinheit (100) bzw. Steuereinrichtung für Peripheriegeräte (108, 113) empfängt, und, gesteuert durch weitere Vorrichtungen (400,401, 402,404, 405,406,407), Taktimpulse mit höherer Frequenz (BIOCLOCK) und das mit diesen synchronisierte, vorher empfangene Dalenwort zur Eingabe-/Ausgabe-Sammelleitung sendet (Anschlüsse BIOi, BIO2),
und welche Schaltungseinrichtung im Empfangszustand durch eine Abtastvorrichtung (400, 401, 402, 407) die Impulse des von der Eingabe-/Ausgabe-Sammelleitung (105) empfangenen Datenwortes durch in der Nähe der Mitte der Datenimpulse auftretende Flanken der zugehörigen Taktimpulse mit höherer Frequenz (BIO- CLOCK) abtastet, so daß jeder Impuls des Da- 4S tenwortes an einer Stelle abgetastet wird, die von' seiner Flanke einen Abstand aufweist.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die Taktimpulse mit höherer Frequenz (BIOCLOCK) ungefähr die doppelte Frequenz der Impulse des Datenworts haben.
3. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß ein mit der Zentraleinheit (100) verbundener Hauptspeicher (116) und eine Taktquelle (104) vorgesehen sind, daß eine erste Gruppe (102) von Leitungen den Zentraleinheit-Sendeempfänger (103) mit der Zentraleinheit (100) verbindet,
daß weitere Gruppen (107,112) von Leitungen jeden Geräte-Sendeempfänger (1OS, 111) mit je einer Steuereinrichtung (108,113) verbinden, daß die mindestens zwischen den Zentraleinheit-Sendeempfänger (103) und die Geräte-Sendeempfänger (106, 111) geschaltete Eingabe-AAusgabe-Sammelleitung (105) eine Mehrzahl von Datensignalwegen, Taktsignalv/egen und Steuersignalwegen aufweist,
daß der Zentraleinheit-Sendeempfänger (103) Einrichtungen aufweist zum Empfangen von Impulsen von der Taktquelle (interne Taktimpulse), zum Steuern des Zentraleinheit-Sendeempfängers (103) mit diesen internen Taktimpulsen, zum Senden der internen Taktimpulse zu einem der Taktsignalwege der Eingabe-/Ausgabe-Sammelleitung (105), und zum Zuordnen der internen Taktimpulse zu Leitungen der ersten Gruppe (102) von Leitungen, und daß jeder Geräte-Sendeempfänger (106, 111) Einrichtungen aufweist zum Empfangen der gesendeten internen Taktimpulse von dem Taktsignalweg und zum Steuern der Geräte-Sendeempfänger (106,111) mit den empfangenen internen Taktimpulsen. .
4. Datenverarbeitungsanlage nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß jeder Sendeempfänger eine Taktimpulsschaltung (Fig.4: Anschluß 10 MHz, Anschluß MCLOCKXENAB, 416, 417, Anschluß MCLOCK, Anschluß MCLOCK) zum Erzeugen von internen Taktimpulsen mit vorbestimmter Frequenz in dem Zentraleinheit-Sendeempfänger (103) und jedem Geräte-Sendeempfänger (106,111) aufweist und daß die internen Taktimpulse des Geräte-Sendeempfängers (106,111) gegenüber den internen Taktimpulsen des Zentraleinheit-Sendeempfängers (103) aufgrund der dazwischenliegenden Leitungslänge phasenverschoben sind, daß jeder Sendeempfänger eine Einrichtung (403) aufweist, um aus den internen Taktimpulsen des Sendeempfängers Taktimpulse {a, 1,3; λ 2,4) mit einer niedrigeren Frequenz zu erzeugen und diese Taktimpulse an die Zentraleinheit (100) bzw. die Steuereinrichtungen (108,113) zu leiten.
5. Datenverarbeitungsanlage nach Anspruch 4, dadurch gekennzeichnet, daß jeder Sendeempfänger (103, 106, 111) eine Vorrichtung (Fig.4: 400, 401, 402,407,417) zum Empfang der internen Taktimpulse des Zentraleinheit-Sendeempfängers (103) bzw. eines Geräte-Sendeempfängers (106, 111) aufweist, um die Datenimpulse durch Flanken dieser Taktimpulse abzutasten, die in einem Abstand von den Flanken der Datenimpulse auftreten.
6. Datenverarbeitungsanlage nach Anspruch 1 und 3, dadurch gekennzeichnet, daß die Frequenz der Taktimpulse (I/O CLOCK) ungefähr halb so groß ist wie die Frequenz der internen Taktimpulse.
7. Datenverarbeitungsanlage nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Sendeempfänger (103,106,111) Einrichtungen (Fig.4: 410, 411, 412, 413, 414, 415, 416, 417) zum Gegentakt-Senden und -Empfangen der Signale aufweisen, um Rauschstörungen zu unterdrücken.
Die Erfindung betrifft eine Datenverarbeitungsanlage gemäß dem Oberbegriff des Patentanspruchs 1. Eine derartige Anlage ist im wesentlichen durch die Druckschrift »Prozeßrechner AEG 80-20, Hardware Systembeschreibung« A5/V.6.1/0974 bekannt.
Bei derartigen bekannten Anlagen, bei denen zahlreiche Steuerfunktionen von der Zentraleinheit auf Subsysteme delegiert sein können, z. B. die Steuereinrichtungen, treten häufig Probleme mit der Synchronisierung der Operationen der verschiedenen Teile der Anlage auf, die auf die Impulsausbreitungsverzögerung
3 4
auf einer verschiedene Teile der Anlage verbindenden In den Unteransprüchen beschriebene Weiterbildun-Sammelleitung zurückzuführen ist. Derartige Synchro- gen der Erfindung gestatten die Überwindung oder nisationsprobleme machen sich besonders bemerkbar Verringerung dieser Schwierigkeiten. So gestattet die bei Verwendung einer hohen Taktfrequenz zum unter anderem beschriebene Gegentakt-Übertragung Übertragen der Daten, wie sie besonders dann ■> eine. Verbesserung der Unempfindlichkeit der Datenangestrebt wird, wenn eine serielle Datenübertragung übertragung gegen Rauschen oder Störungen. Ein vorgesehen wird, um mit möglichst wenig Leitern in der besonderes Abtastschema, das von der Tatsache Sammelleitung auszukommen. Diese Schwierigkeiten Gebrauch macht, daß die Taktimpulsfrequenz zweimal mit der Synchronisierung können bei bekannten so groß ist wie die Datenimpulsfrequenz, gestattet eine Anlagen dazu führen, daß die Anzahl und die Lage der i<> sichere Datenübertragung ohne Datenimpulsabschrä-Peripheriegeräte längs der Sammelleitung bestimmten gung.
Begrenzungen unterliegt. Mit der Diskussion der Ein Ausführungsbeispiel der Erfindung wird anhand
Eingabe/Ausgabe-Übertragung digitaler Impulse befas- der Zeichnungen beschrieben.
sen sich beispielsweise die US-Patente 39 31615, F i g. 1 ist ein Diagramm der vorliegenden Erfindung,
39 32 841 und 39 34 232. 15 wie sie innerhalb eines Datenverarbeitungssystems
Durch die Druckschrift »CAMAC Serial System Or- verwendet wird;
ganization — a description«, ESONE COMMITTEE F i g. 2 ist ein detailliertes Diagramm eines Teils der
ESON E/SH/01, December 1973, Seiten 76 und 77 ist es Elektronik innerhalb jedes IOSR von F i g. 1;
bekannt, bei einer Bit-seriellen Übertragung Datensi- Fig.3a und 3b sind detaillierte Diagramme des
gnale und damit synchronisierte Taktsignale über ge- 20 übrigen Teils der Elektronik innerhalb jedes IOSR, und
trennte Leitungen zu übertragen und hieraus ein kombi- Wellenformen, die sich auf die Tätigkeit jedes IOSR
niertes Signal zu bilden bzw. aus dem kombinierten Si- beziehen;
gnal das Datensignal und Taktsignal zu gewinnen, und F i g. 4 ist ein schematisches Diagramm der Schal-
bei einer Byte-seriellen Übertragung Daten über acht tungsanordnung innerhalb jedes Sendeempfängers von
parallele Leitungen und den Takt über eine weitere Lei- 25 F i g. 1;
tung zu übertragen. F i g. 5 ist ein detailliertes Diagramm der Elektronik
Aufgabe der Erfindung ist es, eine Datenverarbei- innerhalb jeder Steuereinrichtung für Peripheriegeräte
tungsanlage der eingangs genannten Art so auszubilden, von F i g. 1;
daß eine sichere Datenübertragung trotz der räumli- F i g. 6 ist eine Darstellung von zwei 8-Bit-Bytes eines
chen Entfernung zwischen den einzelnen Teilen der Da- io Datenworts mit 16 Bit, wobei ein Befehlsbit oder
tenverarbeitungsanlage möglich ist. Diese Aufgabe wird Vorsatzbit jedem Byte vorausgeht, und des zugeordne-
durch die im kennzeichnenden Teil des Anspruchs 1 ten Taktsignals; und
angegebenen Merkmale gelöst. F i g. 7 ist eine schematische Darstellung der Tätigkeit
Ein Vorteil der Erfindung liegt darin, daß deswegen, jeder einzelnen Schieberegisteranordnung von F i g. 1.
weil mit jedem Datenwort synchron ein Taktsignal 35 Bevor auf die Figuren Bezug genommen wird, und als
gesendet wird, die richtige Abtastung des Datenworts Einführung in die Beziehung der vorliegenden Erfin-
unabhängig von Ausbreitungsverzögerungen möglich dung zu dem Datenverarbeitungssystem, in dem sie
ist. Weiter ist von Vorteil, daß aus diesem Grunde arbeitet, sollte beachtet werden, daß die vorliegende
zahlreiche Steuereinrichtungen und ihre zugeordneten Erfindung sich auf die Kommunikation oder Nachrich-
Peripheriegeräte in unterschiedlichen Abständen von 40 tenübermittlung zwischen der Zentraleinheit und
der Zentraleinheit angeordnet werden können. Die peripheren Geräten, wie Fernschreibereingängen, End-
Erfindung ist besonders vorteilhaft in Datenverarbei- geräten mit Kathodenstrahlanzeige, Schnelldruckern
tungssystemen einzusetzen, die digitale Informationen usw. bezieht.
zwischen der Zentraleinheit und Peripheriegeräten über Das IOC (Eingabe/Ausgabe-Steuereinrichtung) decorelativ lange Verbindungsleitungen erfordern. 45 diert einen codierten Datenstrom mit 16,6 Megabit/Se-
Die Zentraleinheit, der Zentraleinheit-Sendeempfän- künde von der Zentraleinheit und stellt eine 16-Bit-
ger, die Geräte-Sendeempfänger und die Steuereinrich- Schnittstelleneinrichtung für zwei Richtungen, vier
tungen, die alle in erster Linie in MOS-Technik codierte Funktionsbits, und eine Funktionsabtastung
aufgebaut sind, können jeweils innerhalb eines entspre- zum leichten Anschließen bereit. Das IOC schließt
chenden Schaltungsplättchens (Chip) enthalten sein. Die so weiterhin komplexe Funktionen ein, die in anderen
MOS-Technologie, aber auch die Bipolar-Technologie Kleinrechnersystemen nicht verwendet werden. Das
und andere Technologien bringen jedoch insbesondere IOC weist eine integrale Geräteidentifikation auf, eine
bei einer hohen Taktimpulsfrequenz weitere Probleme Besetzt/Fertig-Unterbrechungslogik, und die Fähigkeit
mit sich, insbesondere auch bei der Serien-Parallel-Um- zum Unterbrechungsmaskieren für jedes Gerät. Für
Wandlung, die zur Verarbeitung der seriell übertragenen 55 blockorientierte Steuereinrichtungen weist es Datenka-
Daten üblicherweise erforderlich ist. Beispielsweise nal-(DMA)-Sammelleitungs-Übertragung mit Rückant-
kann ein ursprünglich gut geformter Impuls (Takt, wort und volle 15-Bit-Adressen- und Blocklängenregi-
Daten oder Befehl) am Ende einer Übertragungsleitung ster auf.
in Abhängigkeit von der Länge der Leitung, der Qualität Eine Logik zum Sicherstellen der gewünschten
der Leitung, der Frequenz der Übertragung, von 60 Betriebsart beim Einschalten der Stromversorgung, eine
externem Rauschen oder anderen externen Störungen Schaltungsanordnung zum normalen Abschalten der
und anderen Faktoren als verzerrtes Signal ankommen. Stromversorgung und eine vom Benutzer auswählbare
Die Verwendung einer hohen Übertragungsfrequenz Signalpolarität der Datensammelleitung sind ebenfalls begünstigt dabei das Auftreten von Verzerrungen. vorgesehen.
Insbesondere bei der Verwendung der bipolaren 65 Der Sendeempfänger der Zentraleinheit und der Technik treten Probleme durch das Abschrägen der Geräte-Sendeempfänger puffern die Eingabe/Ausgabe-Datenimpulse bei der Verarbeitung eines seriellen Da- Sammelleitung. Sie stellen Differentialschaltungen für tenstroms auf. Treiber und Empfänger bereit für eine Unempfindlich-
keit 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 Erkennungsschema mit einer hohen Unempfindlichkeit gegen Rauschen verwenden.
Zunächst wird eine Beschreibung der gegenseitigen Verbindung der vorliegenden Erfindung und des Datenverarbeitungssystems gegeben. Die Tätigkeit der
leitung 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 F i g. 2 und 3a die Schaltung gezeigt, die innerhalb der IOSR 101,120 oder 121 enthalten ist, die alle in F i g. 1 dargestellt sind. (Die
vorliegenden Erfindung und des Systems, in dem sie io Schaltungsanordnung in Fig. 1 ist mit Bezugszeichen verwendet wird, wird später erläutert. 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-Puffer 215,1/O-Takt-Puffer 305 und I/O-Eingangs-
In F i g. 1 ist ein funktionales Blockdiagramm des
Systems gezeigt, in dem die vorliegende Erfindung
enthalten ist. Eine Zentraleinheit 100 (CPU) schließt ein puffer 307. Mikroprogramm 118 (μ) ein, ein Eingabe/Ausgabe- 15 Diese vier Puffer entsprechen jeweils den vier Leitern Schieberegister (IOSR) oder eine Schnitistelleneinrich- jeder Gruppe von Leitern 102,107 oder 112. Der nur in tung oder Verbindungseinrichtung ΙΟί, und andere Teile
(nicht dargestellt). Die Zentraleinheit 100 ist mit einem
Zentraleinheit-Sendeempfänger 103 (CPU-Sendeemp-
einer Richtung wirksame dargestellte Leiter ist dem Puffer 307 zugeordnet. Wie weiter unten beschrieben wird, werden die Daten durch die Puffer 206 und 215
fänger) über eine erste Gruppe von Leitern 102 20 seriell empfangen und zu diesen übertragen, die
Taktimpulse werden von dem Taktpuffer 305 erzeugt und empfangen, und der Puffer 307 liefert ein Steuersignal an den ihm zugeordneten Sendeempfänger, wenn eine zugeordnete Schnittstelleneinrichtung gerade sendet.
F i g. 2 zeigt eine erste Schieberegisteranordnung im oberen Teil und eine zweite Schieberegisteranordnung· im unteren Teil der Zeichnung. Der I/O-Puffer 205 ist zwischen den Eingang einer Pegelschiebeeinrichtung
besprochen wird.
Es gibt zwei Ausgänge der Pegelschiebeeinrichtung 200. Einer der Ausgänge geht zu einem (4-Bit/linkes Byte, ungerades Bit)-Schieberegister 201 und der andere
verbunden. Der CPU-Sendeempfänger 103 empfängt ein Eingangssignal von einem 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-Sammelleitung (I/O-Bus) 105 mit
einem Geräte-Sendeempfänger 106 und einem Geräte-Sendeempfänger 111 verbunden. Die Darstellung der 30 200 (eine Verbindungseinrichtung zwischen TTL oder Eingabe/Ausgabe-Sammelleitung 105 mit gestrichelten bipolar mit MOS) und den Ausgang eines Multiplexers Linien in Kombination mit den dargestellten Punkten und Treibers 205 eingeschaltet, außerdem ist er mit zwischen den Sendeempfängern usw. sollen dazu einem Sendeempfänger wie oben erwähnt verbunden, dienen, anzuzeigen, daß die Sammelleitung ausreichend Die Pegelschiebeeinrichtung 200 empfängt ein anderes lang sein kann, um mehr Sendeempfänger zu versorgen, 35 Signal B2' von einem Taktgenerator 301, was unten als diejenigen, die in F i g. 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, 40 geht zu einem (4-Bit/linkes Byte/gerades Bit)-Schiebe-123 und 126; diese Komponenten sollen dazu dienen, register 202. Die Schieberegister 201 und 202 empfanden Sendeempfänger 106> 111 bzw. 103 zu umgehen, gen auch Schiebebefehlssignale A\ und A2, auch vom
Der Geräte-Sendeempfänger 106 ist mit einer Taktgenerator 301.
Steuereinrichtung 108 für ein Peripheriegerät durch Si, 25,35 und äj bezeichnen parallele Verbindungen für
eine zweite Gruppe von Leitern 107 verbunden, welche 45 ungerade Bits zwischen dem Schieberegister 201 und
Leitungen mit einem IOSR 120 (Schnittstelleneinrich- der »a«-Sammelleitung, die innerhalb der sie enthalten-
tung 120) verbunden sind, die innerhalb der Steuerein- den Komponente sich befindet (z. B. die Komponente
richtung 108 enthalten ist. Weiterhin besteht eine CPU 100, wobei die »a«-Sammelleitung in ihr aus
Taktimpulsverbindung zwischen dem Geräte-Sen- Gründen der Klarheit der Darstellung nicht gezeigt ist),
deempfänger 106 und der Steuereinrichtung 108 über 50 In gleicher Weise sollen 35, 35, äÄ und äh parallele
einen Takttreiber 124. Wie erwähnt, verbindet die Datenverbindungen für gerade Bits zwischen dem
Umgehungssammelleitung 122 die Steuereinrichtung Schieberegister 202 und der »a«-Sammelleitung be-
108 direkt mit der Eingabe/Ausgabe-Sammelleitung zeichnen. In ähnlicher Weise sind b\, bi, b% bi und bo, £2,
105. bi,, be parallele Verbindungen zwischen dem Schiebere-Der Geräte-Sendeempfänger 111 (und dieses allge- 55 gister 201 und der »^«-Sammelleitung bzw. dem
meine Verbindungsschema findet Anwendung auf jeden Schieberegister 202 und der »iw-Sammelleitung.
anderen Sendeempfänger, der mit der Sammelleitung Es gibt drei weitere Befehlssignaleingänge für die
105 verbunden werden kann, wie die Punkte in F i g. 1 Schieberegister 201 und 202 und es sind dies 1 -+ IOSR,
zeigen) ist mit einer Steuereinrichtung 113 für ein b ->■ IOSR, IOSR -»· ä. Diese bezeichnen das Setzen von Peripheriegerät durch eine weitere zweite Gruppe von 60 sämtlichen EINSEN im Schieberegister bzw. die
Leitern 112 verbunden. Die Leiter sind verbunden mit Übertragung der Inhalte der ^Sammelleitung zum
einem IOSR 121 (Schnittstelleneinrichtung 121), die Schieberegister bzw. die Übertragung der Inhalte der
innerhalb der Steuereinrichtung 113 angeordnet ist. Schieberegister zur ^-Sammelleitung. (Dies ist ein
Weiterhin besteht eine Taktverbindung durch den paralleler Transport von Daten in das Schieberegister Takttreiber 125 zwischen dem Geräte-Sendeempfänger 65 und aus dem Schieberegister von einer anderen
lllundder Steuereinrichtung 113. Schaltung in der Zentraleinheit.)
Die Steuereinrichtung 108 ist mit ihrem zugeordneten Der Ausgang des Schieberegisters 201 ist verbunden
Peripheriegerät 110 durch eine Peripheriegerätsammei- mit der Pegelschiebeeinrichtung 203, die auch A2 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 Taktimpuls^ von eier Zentraleinheit 100, und Befehlssignale RTu Rn, R\i 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 Pegelschiebeeinrichtung 203, <P2CUTOFF, auf der Leitung 207 als ein Signal bereitgestellt, das zu einer Schaltung 306 (in Fig.3a) geleitet wird, die unten
Eine detaillierte Beschreibung der Verbindungen der zweiten Schieberegistereinrichtung, die in der unteren Hälfte der F i g. 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 Φ2Ο'ί/7ΤλΡ'/7^η3ΐ jedoch nicht vorhanden ist, und daß ein unterschiedliches 8-Bit-Byte (rechtes Byte) verarbeitet wird.
Wie oben erwähnt, ist die F i g. 3a auch innerhalb des IOSR101 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 al, «2, a3 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 F i g. 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 liefert. Diese Taktimpulse sind Impulse, aus denen weiterhin Taktimpulse al, a2, a3, a4 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 Rn 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χ 1, SETOUTxY, SETOUTx 4, RE SET OUT χ 3 und RESET OUT χ 2. Die Bezeichnung 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 α 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ß α 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 Ai, A 2, Bt, B 2 und Bi 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; A2, B2 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ß Bi, B2 und B2' 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 α i, α 2, α 3, α 4, und Mikroprogramm-Befehle Rw, Rn, Rn, Rw, Ru und R\3. Die a-Taktimpulse werden erhalten, wie früher erwähnt wurde, und die Ä-Impulse werden vom Mikroprogramm 118 oder einer ähnlichen Schaltung in einer zugeordneten Steuereinrichtung, wie in F i g. 1 gezeigt, erhalten. Der Decodierblock 302 liefert zwei Befehlssignale: »b-*IOSR«, welches bedeutet, daß die Inhalte der Daten auf der »^^-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 a-Taktsignale und »R«-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 IOSRs geleitet und bedeutet, daß die Dateninhalte der Schieberegistereinrichtungen parallel zur a-Sammelleitung innerhalb der sie aufnehmenden Schaltung (entweder CPU 100, Stuereinrichtung 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 gezeichnet. Beim Sende-Zustand liefert der I/O-Taktpuffer 305 dieses Taktimpuls-
ίο
signal 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 »SET OUTχ, 4« und »RESET OUT<x 3 von dem Befehlsdecodierer 300 und Φ 2 CUTOFF von der Pegelschiebeeinrichtung 203, und liefert interne Taktschluß entspricht dem nur in einer Richtung leitenden Leiter der vier Leiter, die in jeder Gruppe in F i g. 1 gezeigt sind. Die anderen Anschlüsse am oberen Abschnitt der Fig.4 wie CLEAR; BIOCLOCK; BlOi, BIOi; 57(72, BIO2; MCLOCK, MCLOCK sind alle innerhalb der I/O-Sammelleitung 105 enthalten, wie früher erwähnt. T« i, 3 und Tx 2,4 bezeichnen Anschlüsse, von denen hohe oder Treiber-Taktsignale geliefert werden, und sie sind in F i g. 1 jene Leitungen, die die
signale Φ 1 und Φ 2. (Beim Empfangs-Zustand werden 10 Verbindung von einem zugeordneten Takttreiber Φ 1 und Φ 2 erzeugt in Abhängigkeit von verschiedenen herstellen;(beispielsweise die Leitungen,die 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 Taktoszillator 104 von F i g. 1
Bedingungen einschließlich der, daß »SET OUT <χ 4« geltend gemacht wird und daß »RESET OUTa. 3« nicht geltend gemacht wird; das Gegenteil trifft zu beim
Sende-Zustand, wobei Φ 1 und Φ 2 beim Sende-Zustand 15 verbunden ist. Der mit MCLOCK XENAB bezeichnete nicht erzeugt werden, was in der Operationsbeschrei- Anschluß ist nicht ein Anschluß für andere Geräte,
sondern er ist intern innerhalb eines Sende-Empfänger-Plättchens verbunden entweder zu einer hohen oder zu einer niedrigen Spannung in Abhängigkeit von seiner
bung 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 F i g. 2 und 3a 20 Verwendung entweder als CPU-Sende-Ernpfänger oder
gezeigt sind, betrifft, sind sie aus üblichen logischen alsGeräte-Steuereinrichtung-Sende-Empfänger.
Verbindungen hergestellt, wobei die MOS-Technologie In F i g. 4 sind Gegentaktsender 410, 412, 414, 416
verwendet ist. Der Fachmann kann derartige Logiken in gezeigt wie auch Gegentaktempfänger 411,413,415 und
bekannter Technik entwerfen. Daher und im Interesse 417. Das Paar 410,411 ist verbunden mit einem Flipflop
der Klarheit der Darstellung sind derartige Einzelheiten 25 400 und einem UND/ODER-Glied 404; das Paar 412,
nicht gezeigt. 413 ist verbunden mit einem Flipflop 401 und einem
Vor einer Diskussion der gegenseitigen Verbindun- UND/ODER-Glied 405; das Paar 414,415 ist verbunden gen der F i g. 4 betrachte man die Eingabe/Ausgabe- mit einem Flipflop 402 und einem UND/ODER-Glied Sammelleitung 105 (I/O-BUS). Die Eingabe/Ausgabe- 406; und das Paar 416, 417 ist verbunden mit einem Sammelleitung 105 und die Umgehungs-Sammelleitun- 30 Flipflop 403 und einem UND/ODER-Glied 407. Ein gen 122,123 und 126 enthalten jeweils eine Vielzahl von Ausgang des Flipflops 409 ist verbunden mit einem Leitern. Bei dem bevorzugten Ausführungsbeispiel der Eingang der UND/ODER-Glieder 404 — 407; Eingangsvorliegenden Erfindung enthält die Sammelleitung signale des Flipflops 409 werden erhalten von sechzehn getrennte Leiter oder leitende Pfade zum Ausgängen eines NAND-Glieds 418 und auch vom Leiten von elektrischen Signalen oder Impulsen zu und 35 Ausgang des Gegentaktempfängers 417. Andere UND-, von den verschiedenen Komponenten. Die Wege NAND-, Inverter-Schaltungen und andere logische können wie folgt bezeichnet werden: MCLOCK und Schaltungen, die in der Darstellung gezeigt sind, sind in MCLOCK, die zwei Gegentaktwege für interne einer einfachen Weise miteinander verbunden, wie Taktsignale bezeichnen; BIO 1 und BIOi, die zwei erste gezeigt. Die Art der einzelnen logischen Schaltungen Gegentaktdatenwege bezeichnen; BIO2 und BIO2, die 40 und ihre Verbindung geht aus Fig.4 hervor. Wie man zwei zweite Gegentaktdatenwege bezeichnen; BIO sieht, haben die Gegentaktsender einen normalen und CLOCK und BIO CLOCK (BUS Input Output Clock)
(Verbindungsleitung-Eingang-Ausgang-Takt), die zwei
weitere Gegentakt-Taktsignalwege bezeichnen;
Sammelleitung externe Unterbrechung
BEXTINT,
einen invertierten Ausgang, und die Gegentaktempfänger haben einen normalen und einen invertierten Eingang.
Mit Bezug auf die in F i g. 5 gezeigten Verbindungen ist als nächstes ein Blockdiagramm einer Steuereinrichtung 108 oder 113 von F i g. 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
(BUS external interrupt); BDCINT, Sammelleitung
Datenkanalunterbrechung (BUS data channel interrupt); INTP, Unterbrechungspriorität (interrupt priori
ty); DCHP, Datenkanalpriorität (data channel priority);
CLEAR, ein Löschimpuls oder Freigabeimpuls; und drei 50 des IOSR 504 sind gezeigt als I/O CLOCK, I/O DATA 1 getrennte Masseleitungen. Mindestens BEXTINT und und I/O DATA 2, die äquivalent sind zu den Signalen BDCINT sind Signale, die in Umgehungssammelleitungen geleitet werden. Die Operation in Abhängigkeit von
und verantwortlich für diese unterschiedlichen Taktimpulse und Datenwegsignale wird später in der 55
Operationsbeschreibung erläutert, wobei die Bezeichnungen der Leitungen an dieser Stelle gegeben werden,
um die Beschreibung der F i g. 4, des Sendeempfängers,
zu erleichtern.
Die Schaltung von Fig.4 ist enthalten entweder 60 Datenausganginvertertreibers 510 ist über einen Ausinnerhalb des CPU-Sendeempfängers 103, des Geräte- gangsanschluß parallel verbunden mit dem zugeordne-Sendeempfängers 106, oder des Geräte-Sendeempfän- ten Peripheriegerät, beispielsweise dem Gerät 110 von gers 111. Die Schaltungsanordnung in jedem von diesen F i g. 1 in Verbindung mit der Steuereinrichtung 108. Sendeempfänger-Blöcken ist im wesentlichen dieselbe. Es besteht eine zurückführende Sammelleitung, die
Die vier Leiter, die ein IOSR mit einem zugeordneten 65 als »6«-Sammelleitung bezeichnet ist, und die von dem Sendeempfänger verbinden, sind am unteren Ende der Peripheriegerät über einen Dateneingangsinverter und F i g. 4 gezeigt als I/O CLOCK-Anschluß, D !-Anschluß, Treiber 511 zurückführt. Die »^«-Sammelleitung verbin- D 2-Anschluß und INPUT-AnscYMl Der INPUT-An- det parallel Ausgänge des Treibers 509, einer Geräteeo-
I/O CLOCK, Di bzw. D2 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 »a«-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
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 Taktifnpulse_ von jier Zentraleinheit 100, und Befehlssignale Ru, Rn, Ä13 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 Pegelschiebeeinrichtung 203, $2Ci/TOFF, auf der 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 Schieberegistereinrichtung, die in der unteren Hälfte der F i g. 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 Φ2Ο77ΐΜΓΡ^ηα1 jedoch nicht vorhanden ist, und daß ein unterschiedliches 8-Bit-Byte (rechtes Byte) verarbeitet wird.
Wie oben erwähnt, ist die F i g. 3a auch innerhalb des IOSR101 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 al, a 2, «3 und a4 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 F i g. 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 liefert. Diese Taktimpulse sind Impulse, aus denen weiterhin Taktimpulse al, a2, a3, a4 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 Ru und Ru vom Mikroprogramm 118 in der CPU 100 (oder von einer gleichen Schaltung in der Steuereinrich- so tung 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<x\, SETOUTaV, SETOUTaA, RE SET OUT al und RESETOUT«2. Die Bezeichnung 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 α 2,4, die zur gleichen Zeit auftreten wie die früher beschriebenen Taktimpulse mit der Ausnahme, daß <x 1 und λ 3 auf einer Leitung erscheinen, und daß α 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, B1, B 2 und Bz' 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 BJ 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ß Bi, B2 und B2' 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, α 3, α 4, und Mikroprogramm-Befehle Ru, Rn, Rn, Ru, Ru und Ä13. Die a-Taktimpulse werden erhalten, wie früher erwähnt wurde, und die Ä-Impulse werden vom Mikroprogramm 118 oder einer ähnlichen Schaltung in einer zugeordneten Steuereinrichtung, wie in F i g. 1 gezeigt, erhalten. Der Decodierblock 302 liefert zwei Befehlssignale: »b-*IOSR«, welches bedeutet, daß die Inhalte der Daten auf der »/^^-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 a-Taktsignale und »R«-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 IOSRs geleitet und bedeutet, daß die Dateninhalte der Schieberegistereinrichtungen parallel zur a-Sammelleitung innerhalb der sie aufnehmenden Schaltung (entweder CPU 100, Stuereinrichtung 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 F i g. 3b gezeichnet. Beim Sende-Zustand liefert der I/O-Taktpuffer 305 dieses Taktimpuls-
ίο
signal 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 305 empfängt auch Signale »SET OUTOi 4«. und »RESET OUT cc 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ß »SET OUT <x 4« geltend gemacht wird und daß »RESET OUTa. 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 F i g. 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 F i g. 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 die
MCLOCK, die zwei Gegentaktwege für interne Taktsignale bezeichnen; BIO 1 und BIO 1, die zwei erste
Gegentaktdatenwege bezeichnen; BIO2 und BIO 2, die 40 und ihre Verbindung geht aus F i g. 4 hervor. Wie man zwei zweite Gegentaktdatenwege bezeichnen; BIO sieht, haben die Gegentaktsender einen normalen und
schluß entspricht dem nur in einer Richtung leitenden Leiter der vier Leiter, die in jeder Gruppe in F i g. 1 gezeigt sind. Die anderen Anschlüsse am oberen Abschnitt der F i g. 4 wie CLEAR; BIOCLOCK; BlOi, BIOi; BIO2, BIO2; MCLOCK, MCLOCK sind alle innerhalb der I/O-Sammelleitung 105 enthalten, wie früher erwähnt. T« 1,3 und Tx 2,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 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 Taktoszillator 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 Sende-Empfänger-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 alsGerä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 Paar 414,415 ist verbunden mit einem Flipflop 402 und einem UND/ODER-Glied 406; und das Paar 416, 417 ist verbunden mit 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; Eingangssignale 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
CLOCK und BIO CLOCK (BUS Input Output Clock) (Verbindungsleitung-Eingang-Ausgang-Takt), die zwei weitere Gegentakt-Taktsignalwege bezeichnen;
Sammelleitung externe Unterbrechung interrupt); BDCINT, Sammelleitung channel inter-
BEXTINT,
(BUS external
Datenkanalunterbrechung
BDCINT, (BUS data
rupt); INTP, Unterbrechungspriorität (interrupt priority); DCHP, Datenkanalpriorität (data channel priority); CLEAR, ein Löschimpuls oder Freigabeimpuls; und drei getrennte Masseleitungen. Mindestens BEXTINT und BDCINT sind Signale, die in Umgehungssammelleitungen geleitet werden. Die Operation in Abhängigkeit von und verantwortlich für diese unterschiedlichen Taktimpulse und Datenwegsignale wird später in der Operationsbeschreibung erläutert, wobei die Bezeichnungen der Leitungen an dieser Stelle gegeben werden, um die Beschreibung der F i g. 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 !-Anschluß, D 2-Anschluß und INPUT-Anschluß. Der INPUT-Aneinen invertierten Ausgang, und die Gegentaktempfänger haben einen normalen und einen invertierten Eingang.
Mit Bezug auf die in F i g. 5 gezeigten Verbindungen ist als nächstes ein Blockdiagramm einer Steuereinrichtung 108 oder 113 von F i g. 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 DATA 1 und I/O DATA 2, die äquivalent sind zu den Signalen I/O CLOCK, Di bzw. D2 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 »a«-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 »Zw-Sammelleitung bezeichnet ist, und die von dem Peripheriegerät über einen Dateneingangsinverter und Treiber 511 zurückführt. Die »Zne-Sammelleitung verbindet parallel Ausgänge des Treibers 509, einer Geräteco-
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, <x 4, weiterhin abgeleitete Taktimpuls^ von ^er Zentraleinheit 100, und Befehlssignale Wu R\2, Rn 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 Pegelschiebeeinrichtung 203, $2Ci/TOFF, auf der Leitung 207 als ein Signal bereitgestellt, das zu einer Schaltung 306 (in Fig.3a) geleitet wird, die unten b**«:prochen wird.
Eine detaillierte Beschreibung der Verbindungen der zweiten Schieberegistereinrichtung, die in der unteren Hälfte der F i g. 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 ΦιβυΤΟΡΡ^ηύ jedoch nicht vorhanden ist, und daß ein unterschiedliches 8-Bit-Byte (rechtes Byte) verarbeitet wird.
Wie oben erwähnt, ist die F i g. 3a auch innerhalb des IOSR101 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 «1, ot2, λ 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 F i g. 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 liefert. Diese Taktimpulse sind Impulse, aus denen weiterhin Taktimpulse al, a2, a3, a4 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 Ru 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 SETOUTxX, SETOUTxV, SETOUTxA, RE SET OUT oc 3 und RESET OUT a 2. Die Bezeichnung 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 α 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ß α 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, B1, B 2 und B2' 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ß Bi, B2 und B2 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 al, a2, a_3, a 4, und Mikroprogramm-Befehle Rw, Ru, Rn, Rü, Rn und R\3. Die oc-Taktimpulse werden erhalten, wie früher erwähnt wurde, und die Ä-Impulse werden vom Mikroprogramm 118 oder einer ähnlichen Schaltung in einer zugeordneten Steuereinrichtung, wie in F i g. 1 gezeigt, erhalten. Der Decodierblock 302 liefert zwei Befehlssignale: »b-*IOSR«, welches bedeutet, daß die Inhalte der Daten auf der »£w-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 a-Taktsignale und »R«-Signale an, die von zugeordneten Mikroprogrammen erhalten werden, und auf »I«-Signale von dem Befehlsregister der Zentraleinheit (oder der Steuereinrichtung), um ein Ausgangssignal »IOSR -* a« zu liefern. Dieses Ausgangssignal wird zu den Schieberegistern 201, 202, 210 und 211 von zugeordneten IOSRs geleitet und bedeutet, daß die Dateninhalte der Schieberegistereinrichtungen parallel zur a-Sammelleitung innerhalb der sie aufnehmenden Schaltung (entweder CPU 100, Stuereinrichtung 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 F i g. 3b gezeichnet. Beim Sende-Zustand liefert der I/O-Taktpuffer 305 dieses Taktimpuls-
signal 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 »SET OUT'« 4« und »RESET OUT κ 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ß »SET OUT ot 4« geltend gemacht wird und daß »RESET OUTx 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 F i g. 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 F i g. 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; BIO 1 und BlOX, die zwei erste Schluß entspricht dem nur in einer Richtung leitenden Leiter der vier Leiter, die in jeder Gruppe in F i g. 1 gezeigt sind. Die anderen Anschlüsse am oberen Abschnitt der F i g. 4 wie CLEAR; BlOCLOCK; BIO 1, BIOi; BIO2, BIO2; MCLOCK, MCLOCK sind alle innerhalb der I/O-Sammelleitung 105 enthalten, wie früher erwähnt. ΤΛ ι, 3 und T01 2,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;(beispielsweisedieLeitungen,diedieCPU 100 und den Takttreiber 119 verbinden). In Fig.4 ist der Anschluß, der mit 10 MHz bezeichnet ist, derjenige Anschluß, mit dem der Taktoszillator 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 Sende-Empfänger 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 alsGeräte-Steuereinrichtung-Sende-Empfänger.
In Fig.4 sind Gegentaktsender 410, 412, 414, 416 gezeigt wie auch Gegentaktempf anger 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 Paar 414,415 ist verbunden mit einem Flipflop 402 und einem UND/ODER-Glied 406; und das Paar 416, 417 ist verbunden mit 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; Eingangssignale 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
Gegentaktdatenwege bezeichnen; BIO2 und BIO2, die 40 und ihre Verbindung geht aus Fig.4 hervor. Wie man zwei zweite Gegentaktdatenwege bezeichnen; BIO sieht, haben die Gegentaktsender einen normalen und
einen invertierten Ausgang, und die Gegentakternpfänger haben einen normalen und einen invertierten Eingang.
Mit Bezug auf die in F i g. 5 gezeigten Verbindungen ist als nächstes ein Blockdiagramm einer Steuereinrichtung 108 oder 113 von F i g. 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 DATA 1 und I/O DATA 2, die äquivalent sind zu den Signalen I/O CLOCK, Di bzw. D2 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.
55
CLOCK und BIO CLOCK (BUS Input Output Clock) (Verbindungsleitung-Eingang-Ausgang-Takt), die zwei weitere Gegentakt-Taktsignalwege bezeichnen; Sammelleitung externe Unterbrechung interrupt); BDCINT, Sammelleitung channel inter-
BEXTINT,
(BUS external
Datenkanalunterbrechung
BDCINT, (BUS data
rupt); INTP, Unterbrechungspriorität (interrupt priori ty); DCHP, Datenkanalpriorität (data channel priority); CLEAR, ein Löschimpuls oder Freigabeimpuls; und drei getrennte Masseleitungen. Mindestens BEXTINT und BDCINT sind Signale, die in Umgehungssammelleitungen geleitet werden. Die Operation in Abhängigkeit von und verantwortlich für diese unterschiedlichen Taktimpulse und Datenwegsignale wird später in der Operationsbeschreibung erläutert, wobei die Bezeichnungen der Leitungen an dieser Stelle gegeben werden, um die Beschreibung der F i g. 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-AnschluB, D !-Anschluß, D 2-Anschluß und INPUT-Anschluß. Der INPUT-An-Das IOSR 504 ist durch die »a«-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 »6«-Sammelleitung bezeichnet ist, und die von dem Peripheriegerät über einen Dateneingangsinverter und Treiber 511 zurückführt. Die »Zw-Sammelieitung verbindet parallel Ausgänge des Treibers 509, einer Geräteco-
deanfrage 508, eines T-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 Fig.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 Γ« i, 3 und Ta2, 4 von Fig.4 erhalten. Das Ausgangssignal der Statusänderungslogik 500 speist einen Statuszähler 50t, der wiederum eine programmierbare Logik (PLA) 502 [programmable logic array (PLA)] 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 Diagiamm aus Zwecken der Klarheit der Darstellung nicht gezeigt ist).
Anschlüsse, die bezeichnet sind mit INTP, DCHP, F (0-3) FSTROBE, £»(0-15), BUSY, DONE, INT- SYNC, DCHSYNC, sind alle mit der zugeordneten Steuereinrichtung für Zwecke, die unten erläutert werden, verbunden. Eine BUSY/DONE-Logik 512 (Besetzt-Erledigt-Logik) liefert ein Eingangssignal an die Unterbrechungsanforderungslogik 514, die auch ein Eingangssignal 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 F i g. 1) mit der Zentraleinheit 100 verbunden ist. Schließlich liefert eine Datenkanalanforderungslogik 515, die ein Eingangssignal direkt von dem Peripheriegerät über den Anschluß DCHS YNCempfä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 F i g. 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än- gern 106 oder 111 empfangen beide Anschlüsse MCLOCK und MCLOCK diese außerphasigen 10-MHz-Signale, wie in F i g. 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 <x 1,3 und tx 2,4 an die Steuereinrichtungen 108 bzw. 113 zu liefern.
Das Vorhergehende 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 Synchronisiertaktsignalen oder dem Sammelleitungstakt (BIOCLOCK) 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 BIOCLOCK 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 t (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 206 und 215 heraus übertragen werden (gleichzeitig aber seriell), und für das Anfangsbefehlsbit pro Byte (also neun Zustandswechsel).
Synchron mit dem ersten der neuen 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 Datenbits auf jeder Leitung gefolgt ist. Ein Wort mit sechzehn Bit wird auf diese Weise geteilt in zwei Bytes mit acht Bit, wobei jedem Byte ein Befehls- oder Steuerbit vorausgeht.
Das Bündel von Taktimpulsen zuzüglich die zwei
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ß INPUT bei 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,D2bzw. 10 MHz durchlassen.
Die 5-MHz-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 D1) 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-Taktimpuls und seine zwei zugeordneten Datenpulse werden gleichzeitig und im Gegentakt über die Sammelleitung zu einem empfangenden Sendeempfänger gesendet.
Es wird weiterhin auf F i g. 4 Bezug genommen. Das Flipflop 400 wird gesetzt und verriegelt; es wird durch das gemeinsame Auftreten des Signals INPUT, des ersten Impulses der S-MHz-Z/O-CLOC^-Impulse (die durch das Verknüpfungsglied 404 laufen) am Anschluß D des Flipflops 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 Flipflops 400 zum Eingang des Verküpfungsglieds 404. Wie oben festgestellt, wird dann, wenn das Flipflop 400 gesetzt wird, der Gegentaktsender 410 aktiviert und gestattet somit, daß die internen 10-MHz-Taktimpulse, die am anderen Eingang des Gegentaktsenders 410 erscheinen, als g/OCLOOf-Impulse gesendet v/erden (und natürlich als komplementäre BIOCLOCK-lmpuke, 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 Taktimpulse 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 D der 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-MHz-Takt abgetastet, und die Ausgangssignale Q, die diese Abtastwerte repräsentieren, werden durch die Gegentaktsender 412 und 414 als Signale BIO 1 und BIO 2 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 für den empfangenen Sendeempfänger hat einen hohen Wert, und das Flipflop spricht auf dieses hohe Signal an, um die Verknüpfungsglieder 404 bis 407 in der richtigen Weise für diesen
Empfangszustand zu aktivieren. -
Die Taktimpulse (BlOCLOCK 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 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 CAT der Flipflops 400,401 und 402 geleitet; synchron damit werden die Signale BIO 1 und BIO2, 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 BIO 1 und BIO 2 mit 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 Flanken so gewählt, daß sie in die Mitte der Datenimpulse mit 5 MHz fallen. Das Flipflop 400 kippt in Abhängigkeit von dem 10-MHz-Signal BIOCLOCK an seinem Eingang CK, und somit rekonstruiert es einen 5-MHZ-ZZO-CLOCK-ImPUlSZUg; der //O-CLOCÄMmpulszug und die Ausgangssignale Q von den Flipflops 401 und 402 werden synchron zu den Anschlüssen I/O CLOCK, D1 bzw. Ό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 Datenimpulse abgeschrägt sein oder verzerrt usw. Der bessere Platz zum Abtasten dieser Art von Datenimptilsen 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 Abtasten im Abstand von der Flanke des Datenimpulses. Dieses Abtasten wird erhalten mindestens durch die Flipflops 401 und 402 in Abhängigkeit von dem Signal BIOCLOCK über das UND/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, D2 (F ig. 4) nach I/O DATAi bzw. I/O DATA 2 (F ig. 5). Die Richtungen des Empfangs-Zustands und Sende-Zustands in F i g. 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 irgend einer der empfangenden Endkomponenten erzeugt werden, um
10
15
20
25
30
35
40
45
55
15 16
zu veranlassen, daß diese vom CPU-Sendeempfänger 202, 210 und 211, beispielsweise wenn eine Null in der
kommende Daten empfangen, weil die anderen Pegelschiebeeinrichtung 203 detektiert wird, diese Null
Komponenten bereits normalerweise im Empfangszu- das Null-Befehlsbit von DATA 1 (weil die Einsen
stand sind. vorher gesetzt wurden). Zu diesem Zeitpunkt wird
Mit Bezug auf F i g. 2 soll beachtet werden, daß dort 5 Φ 2CUTOFF erzeugt und dem Phasenteiler 306
^Bit-Schieberegister gezeigt sind, von denen jedes in zugeführt, der die weitere Erzeugung von Taktimpulsen
der Lage ist, entweder die ungeraden oder die geraden Φ 1 und Φ 2 bei diesem Empfangs-Zustand verhindert.
Bits von entweder dem linken oder dem rechten Byte Vor diesem Cutoff-Zeitpunkt wurden Taktimpulse Φ 1
eines Datenworts zu speichern. Die Daten werden von und Φ 2 erzeugt, weil die Schaltungsanordnung in F i g. 2
den Schieberegistern zu anderen Komponenten in der 10 sich im Empfangs-Zustand befand, und die Daten
sie aufnehmenden Komponente, beispielsweise der wurden eingetaktet synchron mit dem Takt, der beim
Zentraleinheit, parallel übertragen. Beispielsweise wer- Taktpuffer 305 vom BIOCLOCK empfangen wurde,
den die Inhalte der i>-Sammelleitung in die Schieberegi- was die Erzeugung der Signale Φ 1 und Φ 2 gestattete,
ster geladen, wenn der Befehl »b-*IOSR« aktiviert ist; was wiederum die Erzeugung der Signale A 1 und A 2
also werden b\, b3, b5 und 67 parallel in das 15 gestattete zum Schieben der Daten in die Schieberegi-
Schieberegister 201 geladen; in ähnlicher Weise werden ster.
die anderen »b«-Daten in die drei anderen Schieberegi- Es wird nun F i g. 5 betrachtet. Das Eingabe/Ausgabestern geladen. Schieberegister 504 empfängt seriell Daten an seinen
Der andere Befehl »IOSR-+3« überträgt, wenn er Eingängen I/O DATA 1 und 2 und synchron mit dem
aktiviert ist, in den Schieberegistern gespeicherte Daten 20 Signal I/O CLOCK (Eingabe/Ausgabe-Takt). Die ersten
parallel auf die ä-Sammelleitung. So werden 3 1, S3,2 5, beiden Datenbits sind, wie erwähnt, Befehlsbits. Wenn
ä 7 in die 3-Sammelleitung vom Schieberegister 201 sie beide Null sind, wird dies so interpretiert, daß es ein
geladen, und in ähnlicher Weise werden die anderen Eingabe/Ausgabe-Befehlswort ist und die restlichen
»a«-Daten gleichzeitig parallel übertragen. Jedoch wird sechzehn Bits werden parallel vom IOSR in das
das Hineinschieben der Daten in und das Herausschie- 25 Befehlsregister 503 übertragen. Das Wort wird dann in
ben der Daten aus den Schieberegistern von den Puffern die Statusänderungslogik 500 übertragen, in der ein
206 und 215 seriell vorgenommen. Vergleich mit dem Gerätecode 508 gemacht wird, der
Die serielle Natur der Eingabe- und Ausgabe-Über- auch mit der Statusänderungslogik 500 verbunden ist
tragung der Daten ist in F i g. 6 vermerkt. Ausgangsda- (nicht dargestellt).
ten oder Eingangsdaten mit Bezug auf den Puffer 206 30 Wenn die Steuereinrichtung 108 einen Gerätecode
können in der Form von DATA 1 bezeichnet werden; trägt, der übereinstimmt mit dem in den letzten sechs
Ausgangsdaten oder Eingangsdaten mit Bezug auf den Bits des Eingabe/Ausgabe-Befehlsworts angegebenen
Puffer 215 können in der Form von DA TA 2 bezeichnet Gerätecode, dann findet die folgende Prozedur
werden; und die Takt-Eingangs- oder Ausgangs-Impul- innerhalb dieser speziellen Steuereinrichtung statt. In
se beim Puffer 305 sind dargestellt durch I/O CLOCK. 35 Abhängigkeit von der Natur des Befehls wird mit einem
Aus dieser Darstellung der Datenbits sieht man, daß der der Register in der Registeranordnung 505, 506, 509
Multiplexer und Treiber 205 (MLJX DRIVER) den gearbeitet und die »a«-Sammelleitung liefert dieses
seriellen Bitstrom von den Schieberegistern 201 und 202 Wort an das zugeordnete Peripheriegerät, wenn dies
wechselweise schaltet; in gleicher Weise schaltet der erforderlich ist.
Multiplexer und Treiber 214 wechselweise den seriellen 40 In ähnlicher Weise kann ein Peripheriegerät, das mit
Bitstrom von den Schieberegistern 210 und 211. dieser Steuereinrichtung verbunden ist, Signale zurück
F i g. 7 zeigt die Wirkung der Tätigkeit der Schiebere- durch die Steuereinrichtung liefern, mindestens durch
gistereinrichtung von F i g. 2. Beispielsweise kann der die ö-Sammelleitung in das IOSR 504. Von dort werden
I/O-Puffer in F i g. 7 der Puffer 206 sein. Der I/O-Puffer die Signale rückwärts ausgesendet durch seinen
sendet, wenn der Funktionsschalter S 2 geschlossen ist, 45 zugeordneten Sendeempfänger und zurück zu der
und der I/O-Puffer empfängt Information zum Schiebe- Zentraleinheit. Natürlich wird bei diesem Sende-Zu-
register, wenn der Schalter S1 geschlossen ist. Einer der stand für diese Steuereinrichtung der Anschluß OLTT
Funktionsschalter 51 und 52 ist jeweils geschlossen, derart betrieben, daß ein normalerweise vorliegender
einer jeweils offen. Empfangs-Zustand für diesen Satz von Sendeempfän-
Es wird nun auf F i g. 6 Bezug genommen. Das erste so ger-Steuereinrichtung-Komponenten in einen Sende-
Bit in jedem der Datenworte sind die Befehlsbits oder Zustand umgewandelt wird. Der Anschluß OUT in
Präfixbits oder Präsetbits. In der Figur sind sie gezeigt F i g. 5 ist der Pfeil mit einer Richtung der Gruppe 107 in
als Null-Bits. Dieser Zustand wird durch eine empfan- Fig. 1.
gende Komponente (z. B. Steuereinrichtung 108) als ein Die anderen Signale, die von dem Gerät gesendet
Eingabe/Ausgabe-Befehl decodiert, oder als ein Be- 55 werden, sind auf der rechten Seite der Darstellung in
fehlswort. Diese Befehlsbits werden festgelegt durch Fig.5 angezeigt. Wie früher erwähnt, werden einige
den Befehlsdecodierer 208, in Abhängigkeit von den der Signale durch die Umgehungs-Sammelleitung 122
Taktimpulsen χ 2 und <x 4 und in Abhängigkeit von den gesendet, beispielsweise INTR, (entspricht INTP) und
Befehlsimpulsen von dem CPU-Mikroprogramm 118. DCHR (entspricht DCHP).
Andere Kombinationen von Werten für die Befehlsbits 60 Es wird nun auf F i g. 5 Bezug genommen. Die
bezeichnen andere Arten von Wörtern, die unten weiter Statusänderungslogik 500 spricht an auf mindestens die
diskutiert werden. Tätigkeit des PLA 502 (programmierbare Logik) und
Es wird nun auf F i g. 2 Bezug genommen. Wenn der den Befehl von dem Befehlsregister 503. Die Status-Befehl 1 -»· IOSR in allen vier Schieberegistern aktiviert änderungslogik 500 wählt einen logischen Status als den wird, gibt dies überall in alle vier Schieberegister Einsen 65 nach der Beendigung des gegenwärtigen Status als ein. So ist, wenn DA TA 1 und DA TA 2 von F ig. 6 durch nächster folgenden Status aus. Sämtliche Status oder die Puffer 206 und 215 des IOSR 101 empfangen werden Zustände, die von der Steuereinrichtung erzeugt und somit an den Eingängen der Schieberegister 201, 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 der 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 5OC 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, EXT REG ENAB) werden mit Information geladen, die von dem Peripheriegerät über die £>-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 von 0 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 Datenkanalanforderungslogik515 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 wird verwendet, um BUSY (Besetzt) darzustellen; dieses Format wird verwendet, wenn ein Gerät auf
19
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.
10
Die nächste Kombination für die Befehlsbits würde sein DATA 1 hoch und DATA2 niedrig; dies bezieht sich auf eine Datenkanaladreßanforderung (DCADRQ) von der Zentraleinheit an die Eingabe/Ausgabe-Sammelleitung. Diese Art von Anforderung zeigt an, daß is 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 Zentraleinheit 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.
30
Hierzu 6 Blatt Zeichnungen
35
40
45
50
55
60
65

Claims (1)

Patentansprüche:
1. Datenverarbeitungsanlage mit einer Zentaleinheit, einem Zentraleinheit-Sendeempfänger, Steuereinrichtungen für Peripheriegeräte und einem Gerate-Sendeempfänger für jede dieser Steuereinrichtungen zum Senden und Empfangen von Signalen zwischen der Zentraleinheit und den Steuereinrichtungen über eine Eingabe-/Ausgabe-Sammelleitung, gekennzeichnet durch die Kombination folgender Merkmale:
DE2707820A 1976-02-27 1977-02-23 Datenverarbeitungsanlage Expired DE2707820C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/662,177 US4047201A (en) 1976-02-27 1976-02-27 I/O Bus transceiver for a data processing system

Publications (3)

Publication Number Publication Date
DE2707820A1 DE2707820A1 (de) 1977-09-08
DE2707820B2 DE2707820B2 (de) 1979-04-05
DE2707820C3 true DE2707820C3 (de) 1985-01-24

Family

ID=24656688

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2707820A Expired DE2707820C3 (de) 1976-02-27 1977-02-23 Datenverarbeitungsanlage

Country Status (9)

Country Link
US (1) US4047201A (de)
JP (1) JPS52116030A (de)
AU (1) AU508344B2 (de)
BR (1) BR7701178A (de)
CA (1) CA1075822A (de)
DE (1) DE2707820C3 (de)
FR (1) FR2342526A1 (de)
GB (2) GB1581839A (de)
SE (1) SE432840B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4314058A1 (de) * 1993-04-29 1994-11-03 Bayerische Motoren Werke Ag Schnittstelle

Families Citing this family (10)

* 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
US4346452A (en) * 1978-09-05 1982-08-24 Motorola, Inc. NRZ/Biphase microcomputer serial communication logic
US4380046A (en) * 1979-05-21 1983-04-12 Nasa Massively parallel processor computer
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
US4519034A (en) * 1982-06-30 1985-05-21 Elxsi I/O Bus clock
IE832561L (en) * 1983-11-02 1985-05-02 Nat Microelectronics Applic Ct Apparatus for handling data
US4594654A (en) * 1983-11-04 1986-06-10 Advanced Micro Devices, Inc. Circuit for controlling external bipolar buffers from an MOS peripheral device
ZA857137B (en) * 1984-09-21 1986-04-30 Int Computers Ltd Data transfer system
US5255371A (en) * 1990-04-02 1993-10-19 Unisys Corporation Apparatus for interfacing a real-time communication link to an asynchronous digital computer system by utilizing grouped data transfer commands
ES2102937B1 (es) * 1994-03-07 1998-04-01 Telefonica Nacional Espana Co Circuito transmisor-receptor.

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3341820A (en) * 1964-10-13 1967-09-12 Ncr Co On-line branch for data processing systems
US3388349A (en) * 1964-11-09 1968-06-11 Bell Telephone Labor Inc Method for reducing interference caused by electromagnetic radiation from clock controlled systems
US3541513A (en) * 1967-09-01 1970-11-17 Gen Electric Communications control apparatus for sequencing digital data and analog data from remote stations to a central data processor
US3564509A (en) * 1968-04-22 1971-02-16 Burroughs Corp Data processing apparatus
US3528060A (en) * 1968-06-20 1970-09-08 Sperry Rand Corp Time variable stop bit scheme for data processing system
US3566365A (en) * 1968-09-12 1971-02-23 Searle Medidata Inc Multiphasic medical screening system
US3566031A (en) * 1968-12-23 1971-02-23 Bell Telephone Labor Inc Direct-current data set arranged for polar signaling and full duplex operation
DE1933052A1 (de) * 1969-06-30 1971-01-07 Licentia Gmbh Anordnung zur Datenuebertragung
US3725871A (en) * 1971-02-11 1973-04-03 Honeywell Inf Systems Multi function polling technique
FR2138282B1 (de) * 1971-05-21 1973-05-25 Titn Sa
JPS49114846A (de) * 1973-02-28 1974-11-01
FR2269757A1 (en) * 1974-05-03 1975-11-28 Trindel Bidirectional data transmission system - has interface module between line and each emitter-transmitter
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4314058A1 (de) * 1993-04-29 1994-11-03 Bayerische Motoren Werke Ag Schnittstelle

Also Published As

Publication number Publication date
JPS5719803B2 (de) 1982-04-24
GB1581838A (en) 1980-12-31
FR2342526A1 (fr) 1977-09-23
GB1581839A (en) 1980-12-31
AU508344B2 (en) 1980-03-20
US4047201A (en) 1977-09-06
SE432840B (sv) 1984-04-16
JPS52116030A (en) 1977-09-29
BR7701178A (pt) 1977-10-18
DE2707820B2 (de) 1979-04-05
FR2342526B1 (de) 1984-03-09
DE2707820A1 (de) 1977-09-08
AU2151377A (en) 1978-07-27
CA1075822A (en) 1980-04-15
SE7701959L (sv) 1977-08-28

Similar Documents

Publication Publication Date Title
DE2647241C2 (de) Übertragungseinrichtung für die synchrone Datenübertragung
DE2047001C3 (de) Anordnungen für die Übertragung von Daten innerhalb einer Datenverarbeitungsanlage
DE2707783B2 (de) Datenverarbeitungsanlage
DE3038639C2 (de) Anordnung zur Datenübertragung zwischen einer Zentraleinheit und n E/A-Einheiten
CH615286A5 (de)
DE3232600C2 (de)
DE2332734A1 (de) Datenverarbeitungssystem
DE2707820C3 (de) Datenverarbeitungsanlage
DE2406740A1 (de) System zur regelung von verfahrensausruestungen
DE3635106C2 (de)
DE3340919A1 (de) Datenprozessor
DE3042105C2 (de)
DE2423195A1 (de) Wartungsvorrichtung
DE2707800C3 (de) Datenverarbeitungsanlage
DE2749884A1 (de) Einrichtung zum automatischen neuformatieren von daten in einem dv-system
DE3826699A1 (de) Datenuebertragungsvorrichtung
DE2713304A1 (de) Mehrrechnersystem
DE19519944A1 (de) Kommunikationsschaltung
DE19846914C2 (de) Datenbus und Verfahren zum Kommunizieren zweier Baugruppen mittels eines solchen Datenbusses
DE2831887A1 (de) Datenverbindungssystem
EP1155594A1 (de) Zeitkritische steuerung von daten an eine taktgesteuerte schnittstelle mit asynchroner datenübertragung
DE2719282C3 (de) Datenverarbeitungssystem
EP0214475B1 (de) Schaltungsanordnung zum Übertragen von Datensignalen zwischen über ein Ringleitungssystem miteinander verbundenen Steuereinrichtungen
EP0162962A2 (de) Verfahren und Anordnung zum Überwachen des Synchronlaufs von Schlüsselgeräten
DE2512303B1 (de) Schaltungsanordnung zur empfangsseitigen stopschrittverlaengerung bei der zeichenrahmen-gebundenen zeitmultiplex-uebertragung von daten

Legal Events

Date Code Title Description
BGA New person/name/address of the applicant
8281 Inventor (new situation)

Free format text: KERLLENEVICH, NATALIO, LEXINGTON, MASS., US

C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee