DE2556617C2 - Schiebe- und Rotierschaltung - Google Patents
Schiebe- und RotierschaltungInfo
- Publication number
- DE2556617C2 DE2556617C2 DE2556617A DE2556617A DE2556617C2 DE 2556617 C2 DE2556617 C2 DE 2556617C2 DE 2556617 A DE2556617 A DE 2556617A DE 2556617 A DE2556617 A DE 2556617A DE 2556617 C2 DE2556617 C2 DE 2556617C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- register
- byte
- multiplexer
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 318
- 230000006870 function Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 9
- 230000033001 locomotion Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000000295 complement effect Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- OFFWOVJBSQMVPI-RMLGOCCBSA-N Kaletra Chemical compound N1([C@@H](C(C)C)C(=O)N[C@H](C[C@H](O)[C@H](CC=2C=CC=CC=2)NC(=O)COC=2C(=CC=CC=2C)C)CC=2C=CC=CC=2)CCCNC1=O.N([C@@H](C(C)C)C(=O)N[C@H](C[C@H](O)[C@H](CC=1C=CC=CC=1)NC(=O)OCC=1SC=NC=1)CC=1C=CC=CC=1)C(=O)N(C)CC1=CSC(C(C)C)=N1 OFFWOVJBSQMVPI-RMLGOCCBSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000009415 formwork Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007115 recruitment Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
- G06F5/015—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0407—Selecting arrangements for multiplex systems for time-division multiplexing using a stored programme control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Executing Machine-Instructions (AREA)
- Exchange Systems With Centralized Control (AREA)
Description
2. Schiebe- und Rotierschaltung nach Anspruch 1, gekennzeichnet durch eine Verbindung (205, 238)
vom Byte-Prozessor (202) zum zweiten Speicher (206) zur Einspeicherung jedes rotiert verschobenen
Byte in den zweiten Speicher.
3. Schiebe- und Rotierschaltung nach Anspruch 1 oder 2, gekennzeichnet durch ein erstes (217) und ein
zweites (218) Register, die jeweils höherstellige bzw. niedrigerstellige, die Zahl N darstellende Informationen
speichern, eine Steueiverbindung (257) vom ersten Register (217) zum zweiten Speicher (218) zur
Steuerung der Folge, in der aufeinanderfolgende Bytes in den zweiten Speicher eingeschrieben bzw.
aus ihm gelesen werden, und durch eine Steuerverbindung (23?) vom zveiten Register (218) zum
By te-Prozessor (202).
4. Schiebe- und Rotierschaltun^ nach Anspruch 3, dadurch gekennzeichnet, daß das erste Register
(217) so geschaltet ist, daß es die höchststelligen Bits der Zahl N in komplementärer Form enthält und
zyklisch weiterschaltbar ist, wobei die Zykluslänge gleich der Zahl von Bytes im Datenwort ist.
5. Schiebe- und Rotierschaltung nach einem der vorhergehenden Ansprüche, gekennzeichnet durch
eine Steuereinrichtung (222), die so ausgelegt ist, daß sie die Einspeicherung eines Byte für Byte vom
ersten zum zweiten Speicher zu übertragenden Datenwortes in den zweiten Speicher mit der
zweiten Byte-Folge veranlaßt und bewirkt, daß aufeinanderfolgende Byte-Paare, die je aus einem
Byte vom ersten und einem Byte vom zweiten Speicher bestehen, gleichzeitig an den Byte-Prozessor
(202) gegeben werden.
6. Schiebe- und Rotierschaltung nach Anspruch 5 und 2, dadurch gekennzeichnet, daß die Steuereinrichtung
(222) so ausgelegt ist, daß sie die Einspeicherung des rotiert verschobenen Datenwortej
in den zweiten Speicher (206) veranlaßt, derart, daß jedes Byte des rotiert verschobenen Datenwortes
an einer Speicherstelle abgelegt wird, in der vorher dasjenige Byte vom zweiten Speicher
gespeichert war, welches zu dem Paar^ gehört, aus
dem das Byte des rotiert verschobenen Datenwortes abgeleitet worden ist.
Die Erfindung betrifft eine Schiebe- und Rotierschaltung
zum rotierbaren Verschieben von Bits eines Datenwortes um eine Anzahl N von Bitpositionen,
wobei das Datenwort eine Vielzahl von Mehrbit-Bytes enthält, die in eine,' ersten Byte-Folge in einem ersten
Speicher angeordnet sind.
Schiebe- und Rotierschaltungen sind bekannt und notwendiger Bestandteil von Prozessoren, die arithmetische
und/oder logische Operationen mit einem Minimum an Zeitaufwand ausführen müssen. Solche
Schaltungen geben die Möglichkeit, Operationen auszuführen, die durch eine Anzahl von höheren
Programmiersprachen angegeben werden. Wenn beispielsweise ein Feld eines Wortes mit mehreren Feldern
geprüft, analysiert oder auf das Vorhandensein oder Nichtvorhandensein einer bestimmten Bedingung verglichen
werden soll, so werden Schiebe- und Rotierschaltungen benutzt, um das Feld nach rechts zu
bewegen, so daß es den niedrigststelligen Teil des Wortes einnimmt. Dann können die Verknüpfungs- und
Logikschaltungen des Prozessors den Inhalt des verschobenen Feldes prüfen, um festzustellen, ob er der
angegebenen Bedingung genügt Da logische Operationen dieser Art in großem Umfang angewendet werden,
ist es aus wirtschaftlichen Gründen nötig, daß Prozessoren mit Schiebe- und Rotierschaltungen
ausgestattet werden, die die erforderlichen Funktionen bei minimalem Zeitaufwand ausführen.
Es sind brauchbare Schiebe- und Rotierschaltungen zur Verwendung bei Prozessoren bekannt die intern
Wörter gleicher Bit-Länge wie die vom Eingabe-Ausgabe-System empfangenen Wörter bewegen, manipulieren
und logische und arithmetische Operationen mit ihnen durchführen. In der US-Patentschrift 33 74 463 ist
auch schon eine Schiebe- und Rotierschaltung offenbart, die ein Wort bearbeitet, während es von einem Teil des
Prozessors zu einem anderen übertragen wird. Die bekannten Schiebe- und Rotierschaltungen führen zwar
ihre Funktionen brauchbar aus, sind aber hinsichtlich ihrer Anwendungsmöglichkeit auf Prozessoren beschränkt,
die intern Wörter gleicher Bit-Länge verarbeiten, wie diejenigen, die von den Eingabe-Ausgabe-Einrichtungen
ankommen. Dies stellt ein Problem dar, da es seit der Einführung der Großintegration bekannt ist,
Prozessoren zu benutzen, die 16-Bit-Wörter von den Eingabe-Ausgabeeinrichtungen aufnehmen, jedes solehe
Wort in mehrere Vielbit-Bytes aufteilen und logische und arithmetische Operationen durchführen,
indem die Bytes jeweils nacheinander verarbeitet werden. Die meisten bekannten Schiebe- und Rotierschaltungen
sind aber für eine Verwendung in Verbindung mit byteseriellen Prozessoren ungeeignet.
Es sind Schiebe- und Rotierschaltungen für Prozessoren bekannt, die Bytes mit vier Bits verarbeiten,
beispielsweise die Prozessoren in der Nova-Serie von Rechnern, die von der Data General Corporation of
Southborough, Massachusetts, hergestellt werden. Die Schiebe- und Rotierschaltungen dieser Rechner arbeiten
jedoch so, daß jedes Byte nur jeweils gleichzeitig um ein Bit verschoben werden kann. Wenn also ein
I6-Bit-Wort um acht Bits verschoben werden soll, so müssen acht aufeinanderfolgende Schiebeoperationen
durchgeführt werden, wobei jede Operation typisch drei getrennte Maschinenbefehle benötigt. Wenn ein Maschinenbefehl
eine Ausführungszeit von etwa einer Mikrosekunde hat, so würde eine 8-Bit-Verschiebung
eine Ausführungszeit von 24 MikroSekunden benötigen. Man erkennt aiso, daß Schiebe- und Rotieroperationen
viel Realzeit benötigen können, wenn sie Bit für Bit durchgeführt werden. Das ist nachteilig, da Schiebe- und
P Rotieroperationen in großem Umfang benutzt werden
und dann diese häufig durchgeführten Operationen die f Verarbeitungskapazität des Rechners beschränken.
* Bekannt ist auch eine Schaltungsanordnung zum
κ Verschieben von Daten mit beliebiger Datenbreite um
* ein oder mehrere Bits in einem Verschiebezyklus mit
Hilfe eines gesteuerten logischen Durchgangsnetzwerkes. Dabei kann sowohl eine direkte Verschiebung als
; auch eine indirekte Verschiebung nach links oder rechts
stattfinden. Es werden Teilfelder in einem Vorgang to ■; verschoben und die sich daraus ergebenden Teilergebr;
nisse dann zum Endresultat logisch verknüpft Bei dieser :, bekannten Schaltung ist zwar im Prinzip auch eine
h rotierende Verschiebung möglich, aber für eine ' byteserielle Verarbeitung wären umständliche Zwi- '5
schenspeicherungen erforderlich, und es ist keine :..: zweckmäßige Verteilung auf MikiOzyklus-Befehle möglich.
Der Erfindung liegt demgemäß die Aufgabe zugrunde, eine Schiebe- und Rotierschaltung zu
j'; schaffen, die auf zweckmäßige und an Mikrozyklus-Befehle
angepaßte Weise byteserielle Schiebe- und Rotieroperationen schnell ausführen kann.
Zur Lösung der Aufgabe geht die Erfindung aus von einer Schiebe- und Rotierschaltung der eingangs
genannten Art und ist gekennzeichnet durch einen zweiten Speicher, der die Bytes des Datenwortes in
einer zweiten, von der Zahl N abhängigen Byte-Folge aufnimmt, und einen Byte-Prozessor, der aufeinanderfolgende
Byte-Paare des Datenwortes aufnimmt, und zwar jeweils ein Byte aus dem ersten Speicher und das
andere Byte aus dem zweiten Speicher, und der aus jedem Byte-Paar ein Byte des rotiert verschobenen
Datenwortes ableitet.
Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche.
Bei einem noch im einzelnen zu beschreibenden Ausführungsbeispiel der Erfindung wird ein zu verschiebendes
16-Bit-Wort mit vier Bytes zu je vier Bits zu Anfang Byte für Byte in vier aufeinanderfolgende
Adressenstellen eines ersten Speichers eingegeben. *<>
Dann wird eine zweistufige Schiebeoperation eingeleitet, indem die vier Bytes (A, B, C, D) des zu
verschiebenden Wortes in einen zweiten Speicher in einer Reihenfolge gegeben werden, die durch die
Anzahl von Bitpositionen bestimmt ist, um die das Wort verschoben werden soll. Wenn beispielsweise eine
Verschiebung um ein, zwei oder drei Bits angegeben wird, so werden die Bytes in aufeinanderfolgende
Stellen des zweiten Speichers in der Reihenfolge B, C, D, A eingeschrieben. Andere Folgen ergeben sich bei x
anderen Verschiebungsbeträgen.
Bei der ersten Stufe der Operation wird das ursprüngliche Wort entweder um null, vier, acht oder
zwölf Bitpositionen verschoben. Bei der zweiten Operationsstufe wird das ursprüngliche Wort um die
jeweils erforderliche zusätzliche Anzahl von Bitpositionen verschoben, d. h., um entweder null, eine oder zwei
oder drei Positionen.
Bei der zweiten Stufe der Schiebeoperjlion wird der
Inhalt beider Speicher gleichzeitig Byte für Byte M ausgelesen und so an eine Schiebeschaltung gegeben,
daß bei jedem Auslesen die Schiebeschaltung gleichzeitig zwei benachbarte Bytes des ursprünglichen 16-Bit-Wortes
erhält. Jedes der beiden gleichzeitig empfangenen Bytes kommt von einem anderen der beiden
Speicher.
Die Schiebeschaltunp weist eine Vielzahl von Eingängen auf, die je einer besonderen Anzahl von
Bit-Verschiebungspositionen entsprechen. Es wird dann derjenige Eingang aktiviert, der der Anzahl von
zusätzlichen Positionen zugeordnet ist, um die das Wort
bei dieser zweiten Stufe der Operation verschoben werden muß. Wenn beispielsweise jetzt eine Verschiebung
um zwei erforderlich ist, so bewirkt das erste Lesen jedes Speichers, daß das Byte A vom ersten
Speicher und das Byte B vom zweiten Speicher gleichzeitig an die Schiebeschaltung angelegt werden.
Die Schiebeschaltung empfängt demgemäß gleichzeitig bei jedem Lesen der beiden Speicher acht Bits. Von
diesen acht Bits werden nur diejenigen Eingänge aktiviert, die den beiden höchststelligen Bits des Byte A
und den beiden niedrigststelligen Bits des Byte B zugeordnet sind, und nur diese vier Bits durchlaufen die
Schiebeschaltung und werden als neues 4-Bit-Byte in den zweiten Speicher eingeschrieben.
Das gleichzeitige Auslesen aus den beiden Speichern setzt sich Byte für Byte fort, und bei jeder Leseoperation
erhält die Schiebeschaltung gleichzeitig die vier Bits eines Byte aus dem ersten Speicher ·. nd vier Bits eines
benachbarten Byte aus dem zweiten Speicher. Die Eingänge der Schiebeschaltung bleiben aktiviert, so daß
bei jedem Lesen die zweiten bis sechsten Bits der beiden Bytes zusammengenommen empfangen werden, die
Schiebeschaltung durchlaufen und in den zweiten Speicher geschrieben werden. Bei Durchführung der
vierten Leseoperation erhält die Schiebeschaltung gleichzeitig das Byte D vom ersten Speicher und das
Byte A vom zweiten Speicher. Die Schiebeschaltung spricht wiederum nur auf die zweiten bis sechsten Bits
dieser beiden Bytes zusammen an und schreibt sie in den zweiten Speicher. Diese Bits sind die beiden höchststelligen
Bits des Byte D und die beiden niedrigststelligen Bits des Byte A.
Zu diesem Zeitpunkt stellen dann die vier Bytes, die in den zweiten Speicher eingeschrieben worden sind, das
ursprüngliche 16-Bit-Wort dar, das um die erforderliche Anzahl von Bitpositionen verschoben worden 'st, im
oben beschriebenen Beispiel um zwei Bitpositionen. Die vier verschobenen Bytes können jetzt Byte für Byte aus
den. zweiten Speicher gelesen, zu einem 16-Bit-Wort zusammengefügt und an das Eingangs-Ausgangs-System
gegeben werden.
Nachfolgend soll die Erfindung anhand eines Ausführungsbeispiels in Verbindung mit den Zeichnungen
beschrieben werden. Es zeigt
F i g. 1 eine Fernsprechanlage mit einem Datenverarbeiter, ·
Fig.2und3den Datenverarbeiternach Fig. 1,
Fig.4 und 5 in vereinfachter Form den Aufbau und die gegenseitigen Beziehungen derjenigen Bauteile des Verarbeiters, die eine Schiebe- und Rotieroperation dnrcr/ütsren,
Fig.4 und 5 in vereinfachter Form den Aufbau und die gegenseitigen Beziehungen derjenigen Bauteile des Verarbeiters, die eine Schiebe- und Rotieroperation dnrcr/ütsren,
F i g. 6 Einzelheiten des 5/V/?-Registers 215 in F i g. 3,
F i g. 7 die Einzelheiten der R 1 - und R 2-Ä£igister 209
in F i g. 3,
F i g. 8 Einzelheiten des L-Registers 216 in F i g. 3,
F i g. 9 Einzelheiten des C/Vf-Speichers 207 in F i g. 3, F i g. 10 Einzelheiten des ΛΛί-Speichers 208 in F i g. 3, F i g. 11 Einzelheiten des TM-Speichers 206 in F i g, 2, Fig. 12 Einzelheiten des Datenregisters 212 it. F i g. 3, Fig. 13 Einzelheiten der SC- und Γ/M-Register 218 und217in Fig. 2,
F i g. 9 Einzelheiten des C/Vf-Speichers 207 in F i g. 3, F i g. 10 Einzelheiten des ΛΛί-Speichers 208 in F i g. 3, F i g. 11 Einzelheiten des TM-Speichers 206 in F i g, 2, Fig. 12 Einzelheiten des Datenregisters 212 it. F i g. 3, Fig. 13 Einzelheiten der SC- und Γ/M-Register 218 und217in Fig. 2,
Fig. 14 Einzelheiten der Quellensammelleitung 1 in F i g. 2 und 3,
Fig. 15 Einzelheiten der Quellensammelleitung 2 in F i g. 2 und 3,
Fig. 16 Einzelheiten der arithmetischen Einheit (AMU) 202 in F ig. 2,
Fig. 17 Einzelheiten der MAC- und MRS-Register
219 und 220 in F ig. 2.
Fig. 18 Einzelheiten des MikroSpeichers 222 in F i g. 2.
Fig. 19 Einzelheiten des Bestimmungsdecoderteils
der Decodierlogik 226 in F i g. 2,
F i g. 20 weitere Einzelheiten der Decodierlogik 222 in F i g. 2, ,0
Fig. 21 bis 24 typische Programmbefehle hoher Stufe, die der Verarbeiter ausführen kann,
F i g. 25 und 26 typische Mikrospeicherbefehle,
Fig. 27, 28 und 29 den Inhalt der Speicher RM und
TM an verschiedenen Punkten typischer Schiebe· und Rotieroperationen, die der Verarbeiter durchführen
kann,
Fig. 30 die Wahrheitstabelle für das A ROM- Verarbeiterelement
1602 in F i g. 16.
F i g. 31 ein Zeitdiagramm für die zeitliche Beziehung zwischen den verschiedenen, vom Verarbeiter benutzten
Steuerimpulsen,
Fig. 32 in tabellarischer Form die Quellenschaltungen
für die verschiedenen, vom Verarbeiter benutzten Steuerleitungen und Steuersignale,
Fig. 34 und 35 Zeitdiagramme für die zeitliche
Beziehung zwischen den verschiedenen Steuerimpulsen, die an die Mikrospeicherelemente 219, 220, 221 und 222
des Datenverarbeiters angelegt werden.
Die in Fig. 1 gezeigte Fernsprechanlage enthält einen Prozessor 101, der nachfolgend als Verarbeiter
bezeichnet wird, einen Speicher 102, Teilnehmerleitungsschalter 105 und einen Verbindungsleitungsschalter
104. Die Teilnehmerleitungsschalter sind mit Fernsprechapparaten 109 verbunden. Der Verbindungsleitungsschalter
ist an ein Amt 107 angeschlossen. Die Teilnehmerleitungsschalter und der Verbindungsleitungsschalter
sind außerdem über individuelle Leitungswege 106 mit einer Netzwerksteuerung 103 verbunden.
Die Anlage enthält außerdem eine Datensammelleitung 110, eine Adressensammelleitung 111. eine Speichersteuersammelleitung
112 und eine Eingabe-Ausgabe-Steuersammelleitung 113. Die Adressensammelleitung und die Datensammelleitung sind gemeinsam mit dem
Speicher, dem Verarbeiter und der Netzwerksteuerung verbunden. Die Speichersteuersammelleitung 112 ist
nur mit dem Verarbeiter und dem Speicher verbunden. Die Eingabe-Ausgabe-Steuersammelieitung ist nur an
den Verarbeiter und das Eingabe-Ausgabe-System angeschlossen, von dem die Netzwerksteuerung 103 ein
Teil ist.
Der Verarbeiter 101 arbeitet unier Steuerung von Programmbefehlen und Daten, die entweder zeitweilig
oder dauernd im Speichersystem 102 gespeichert sind. Der Verarbeiter steuert mit Unterstützung des
Speichersystems das im unteren. Teil der F i g. 1 gezeigte Zeitmultiplex-Koppelfeld 108. Dies geschieht durch
Oberwachen des Zustandes jedes Teilnehmerleitungs-
und Verbindungsleitungs-Schalters und durch selektives Ändern des Zustandes verschiedener Bauelemente
sowohl in der Netzwerksteuerung als auch in den Teilnehmerleitungs- und Verbindungsleitungsschaltem.
Befehle werden vom Verarbeiter zur Netzwerksteuerung über die Datensammelleitung 110 übertragen.
Abtastantworten und andere Zustandsinformationen werden von der Netzwerksteuemng zurück zum
Verarbeiter über die Datensammelleitung 110 gegeben.
Die Netzwerksteuerung wird durch die Adressensammelleitung 111 ausgewählt.
Entsprechend dem üblichen Zeitmultiplexverfahren werden zwei Teilnehmerleitungsschalter oder ein
Teilnehmerleitungsschalter und ein Verbindungsleitungsschalter bei einem Anruf dadurch miteinander
verbunden, daß die Verfügbarkeit einer freien Zeitlage bestimmt, die beiden zu verbindenden Schaltungen der
freien Zeitlage zugeordnet und dann die Zeitmultiplex·
schalter in den beiden Schaltungen bei jedem Auftreten der Zeitlage geschlossen werden. Ein Teilnehmerleitungsschalter,
beispielsweise 105-0, wrd einer Zeitlage dadurch zugeordnet, daß eine binäre 1 in eine
Teilnehmerleitungsschalter-Schieberegisterstelle eingeschrieben wird, die der Zeitlage eindeutig zugeordnet
ist. Dadurch wird das Schließen des Schalters bei jedem Auftreten der Zeitlage veranlaßt, so daß der Teilnehmerleitungsschalter
bei jedem Auftreten der Zeitlage, der er zugeordnet ist, mit der Zeitmultiplexsammelleitung
108 verbunden wird. Aul entsprechende Weise wird ein Teilnehmerleitungsschalter oder ein Verbindungsleitungsschalter
von einer Gesprächsverbindung abgetrennt, indem die binäre 1 in seinem Schieberegister
gelöscht wird. Dadurch wird der Teilnehmerleitungsschalter deaktiviert, so daß er beim nachfolgenden
Auftreten der Zeitlage, der er zugeordnet worden ist, nicht schließt.
Der Vorarbeiter kann selektiv Speicherplätze dadurch adressieren, daß er über die Sammelleitung 111
Adresseninformationen zum Speicher überträgt. Der Inhalt der adressierten Speicherstelle wird über die
Datensammelleitung 110 zum Verarbeiter zurückgegeben.
Der Verarbeiter verkehrt mit der Netzwerksteuerung auf entsprechende Weise durch Übertragung von
Adressenbefehlen über die Sammelleitung 111, wobei Antworten der Anlage über die Sammelleitung 110
zurückgegeben werden. Die Steuersammelleitungen 112 und 113 umfassen eine Vielzahl getrennter Adern, die je
für eine besondere Funktion benutzt werden, beispielsweise Einschreiben in den Speicher, Lesen aus dem
Speicher und Angaben für die Vervollständigung des Speichers. Die verschiedenen Adern der Sammelleitung
113 erfüllen ähnliche Funktionen. Die Sammelleitungen
110, 111 und 113 führen außerdem zu weiteren Eingabe-Ausgabe-Geräten, beispielsweise Datenverbindungen
und ähnlichem.
Fig. 2 und 3 zeigen einen mikroprogrammierten Verarbeiter. Er enthält eine arithmetische Einheit AMU
202. eine Quellensammelleitung 1 (Element 203) und eine Quellensammelleitung 2 (Element 204). Die
Quellensammelleitungen geben an die arithmetische Einheit diejenigen Informationen, die arithmetischen
oder logischen Operationen zu unterwerfen sind. Der Verarbeiter enthält außerdem eine Bestimmungssammelleitung
205, die die Ausgangsinformationen der arithmetischen Einheit aufnimmt
Der Verarbeiter enthält darüber hinaus einen TM-Speicher 206 mit wahlfreiem Zugriff, einen
CM-Festwertspeicher 207 (Nurlesespeicher) und einen ÄM-Speicher 208 mit wahlfreiem Zugriff. Die Ausgangssignale
des TM-Speichers werden über die Leitung 249 und den Sammelleitungs-Multiplexer 204-M zur Quellensammelleitung 2 gegeben. Die
Ausgangssignale der Speicher CMund RMwerden über
die Wege 250,251 und den Sammelleitungs-Multiplexer 203-M zur Quellensammelleitung 1 übertragen. Die
Bestimmungssammeiieitung 205 kann die ihr von der arithmetischen Einheit zugeführte Information selektiv
zum TM-Speicher 206, zum SC-Register 218, zum
77M-Register 217, zum /.-Register 216, zum RM-Spe'icher
208, zum Datenregister 212 sowie zum 5-4W-Register
215 geben. Das Register SC speichert die beiden niedrigststelligen Bits der Schiebe- und Rotierinformation.
— Die Register TPA und L speichern die Adresseninformationen für die Speicher TM, CM und
RM.
Der vcrarbeiter weist außerdem einen Weg 210 auf,
über den. Daten an die im unteren Teil der Fig.3
gezeigten Datensammelleitung 110 gegeben bzw. aufgenommen werden. Alle Daten, die der Verarbeiter
an die Datensammelleitung 110 gibt, werden zunächst in
das Datenregister 212 eingegeben und dann über den Weg 210 zur Sammelleitung 110 übertragen. Die
Informationen, die der Verarbeiter von der Sammelleitung UO erhält, können alternativ über den Multiplexer
221 in das Datenregister 212, die R 1- und /?2-Register 209 oder das MAC-Register 220 eingegeben werden.
Der Verarbeiter überträgt Adresseninformationen an die Adressensammelleitung 111 (Fig.3) über das
SA«-Register 215 und den Weg 229. Das S,4Ä-Register
nimmt diese Adresseninformation von der arithmetischen Einheit über die Bestimmungssammelleitung 205
auf.
Bei dem Verarbeiter handelt es sich um einen mikroprogrammierten Verarbeiter, der demgemäß
einen Festwert-Mikrospeicher 222 aufweist, welcher durch Informationen vom MAC-Register 220 adressiert
wird. Das Ausgangssignal des Mikrospeichers 222 läuft über den Weg 230 zur Decodierlogik 226 und zum
Zeitsfuerungsgenerator 225. Die Decodierlogik 226 umfallt eine Vielzahl von Decodierern, die das
Ausgangssignal des Mikrospeichers 222 aufnehmen und decodieren, um die Gattersignale, Synchronisiersignale
und weitere Signale zu erzeugen, die für die Steuerung des Verarbeiters erforderlich sind. Der Zeitsteuerungsgenerator
225 enthält außerdem diejenigen Schaltungen, welche zur Erzeugung von vielen der für den
Verarbeiter erforderlichen Steuersignalen benötigt werden. Diese Signale sind in den Zeitdiagrammen der
Fig.28. 4 und 5 gezeigt. Das Eingangssignal des Generators 225 auf dem Weg 230 verändert und steuert
selektiv den Zustand des Generators zur Anpassung an die verschiedenen Verarbeiterfunktionen. Der Zeitsteuerungsgenerator
wird außerdem durch den Taktgeber 224 gesteuert. Das MAC-Register 220 kann aus dem
MRS-Register, durch den Mikrospeicher 222 oder die
Sammelleitung 210 geladen werden. Die vom Mikrospeicher 222 ankommende Information schaltet das
MA C- Register auf eine neue Adresse von einem Abzweigbefehl des Mikrospeichers 222. Die über die
Sammelleitung oder den Weg 210 ankommende Information kann das M4C-Register auf jede Adressenposition
einstellen. Das Λ/ÄS-Register speichert Unterprogramm-Rückkehradressen
und stellt am Ende des Unterprogramms den Mikrospeicher auf die richtige Rückkehradresse ein. Der Taktgeber 224, der Zeitsteuerungsgenerator
225 und die Decodierlogik 226 interpretieren und decodieren zusammen die vom Mikrospeicher
222 ankommenden Mikroprogrammwörter und erzeugen alle notwendigen Zeitsteuerungs- und sonstigen
Steuersignale, die zur Ausführung dieser Befehle erforderlich sind.
Die Steuerflipflops 228 enthalten eine Vielzahl von Flipflops, die durch Signale einstellbar sind, welche von
der Decodieriogik 226 sowie von den Sammelleitungen 112 und 113 ankommen. Nach Einstellung durch die
Decodierlogik geben diese Flipflops dann Steuersignale, beispielsweise Lese- oder Schreibkommandos, an die
Sammelleitungen 112 und 113. Bei Einstellung aufgrund
von Signalen, die über die Sammelleitungen 112 und 113 ankommen, speichern die Flipflops Informationen und
machen sie für den Verarbeiter verfügbar, wodurch angezeigt wird, daß ein Speicherkommando oder eine
Eingabe-Ausgabe-Funktion durchgeführt worden ist.
Es sei beispielsweise und zur Erläuterung angenommen, daß die Datensammelleitung 110 und die
Adressensammelleitung 111 16-Bit-Parallelsammelleitungen
sind. Demgemäß tauscht der Verarbeiter Daten und Informationen mit dem Speicher und den
Eingabe-Ausgabe-Systemen über die Sammelleitungen 110 und 111 mit Hilfe von 16-Bit-Wörtern aus. Der
Verarbeiter behandelt intern die ihm über die Sammelleitung 110 zugeführten 16-Bit-Wörter durch
eine Unterteilung in vier 4-Bit-Bytes und bewegt dann jedes Wort, manipuliert es und führt logische und
arithmetische Operationen mit ihm Byte für Byte durch.
M Mit Ausnahme der für den iviikroprogramm-Äbschnin
des Verarbeiters und die Decodierlogik erforderlichen Informationen werden alle Informationen innerhalb des
Verarbeiters über die Quellensammelleitung 1, die Quellensammelleitung 2, die arithmetische Einheit und
die Bestimmungssammelleitung 205 Byte für Byte übertragen.
Das Datenregister 212 gibt Informationen auf die Datensammelleitung 110 und empfängt Informationen
von dieser. Alle über die Sammelleitungen 110 zum Speichersystem 102 oder zu einem Eingabe-Ausgabe-Gerät,
beispielsweise der Netzwerksteuerung 103 übertragenen Informationen müssen durch interne
Bauteile des Verarbeiters erzeugt, an die Bestimmungssammelleitung 205 angelegt und Byte für Byte in das
Datenregister 212 eingegeben werden. Von dort werden die Informationen als 16-Bit-Wörter auf die Sammelleitung
110 gegeben. Auf entsprechende Weise werden alle Informationen, die das Datenregister 212 vom
Speichersystem oder dem Eingabe-Ausgabe-System über die Sammelleitung 110 empfängt, im 16-Bit-Wortformat aufgenommen und eingegeben. Jedes solche
Wort wird nachfolgend vom Register 212 zu den verschiedenen internen Bauelementen des Verarbeiters
byteseriell übertragen.
Die internen Datensammelleitungen sind die Quellensammelleitung
1, die Quellensammelleitung 2 und die Bestimmungssammelleitung 205. Ein 16-Bit-Wort, das
entweder Daten oder Programminformationen darstellt, kann Byte für Byte auf eine der Quellensammelleitungen
gegeben, zur arithmetischen Einheit übertragen und dann Byte für Byte an die Bestimmungssammelleitur.g
angelegt werden. Von dieser wird jedes Byte dann 1) in Register oder einen Speicher des Verarbeiters
eingegeben, 2) an das Register 215 gegeben, dort in ein 16-Bit-Format umgewandelt und dann als Adresseninformation
auf die Adressensammelleitung 111 übertragen, oder 3) in das Datenregister 212 eingegeben, wo es
in das 16-Bit-Format umgesetzt und dann als Datenwort über den Weg 210 zur Sammelleitung 110 übertragen
wird.
Zur weiteren Beschreibung des Verarbeiters sei angenommen, daß ein 16-Bit-Wort von der Sammelleitung
110 ankommt und über den Weg 210 an das Datenregister 212 übertragen wird, wo es zeitweilig im
16-Bit-Format gespeichert wird. Wenn das Wort nachfolgend von der arithmetischen Einheit verarbeitet
werden soll, wird es Byte für Byte vom Register 212 über den Weg 231 zur Quellensammelleitung 1 oder 2
und dann zur arithmetischen Einheit 202 übertragen. Die vier letztstelligen Bits (Byte 0) werden zuerst auf die
Quellensammelleitung gegeben, durch die arithmetische Einheit verarbeitet und dann auf die Bestimmungssammclleitung
205 übertragen. Von dort kann dieses Byte dann in irgendeine Schaltung gegeben werden, die mit
der Sammelleitung 205 verbunden ist, beispielsweise in das SAR-Register. Diese Operation kann dann dreimal
wiederholt werden, um das gesamte 16-Bit-Wort aus dem Datenregister 212 zu lesen und in geänderter Form
in das 5-4/?-Register zu übertragen.
Die Zeit, die der Verarbeiter zur byteseriellen Verarbeitung eines I6-Bit-Wortes benötigt, wird Mikrozyklus
genannt. Ein Mikrozyklus ist in vier Phasen 0,1,2
und 3 unterteilt. Für jedes der vier Bytes, die zusammen ein 16-Bit-Wort bilden, ist eine Phase vorhanden. Jede
Phase ist in zwei Unterphasen unterteilt, die Laden und Takt genannt werden. Die arithmetische Einheit enthält
für jede der beiden Quellensammelleitungen ein getrenntes 4-Bit-Regisier. Während der Lade-uriierphase
gibt eine gewählte Quellenschaltung, beispielsweise der TM-, der CM- oder der RM-Speicher, das
Register 209 oder das Datenregister 212 seine Information auf eine Quellensammelleitung. Am Ende
der Lade-Unterphase wird diese Information unter Takteinfluß in das jeweilige 4-Bit-Register der arithmetischen
Einheit übertragen. Am Ende der Takt-Unterphase für diese Phase werden die Ergebnisse der von
der arithmetischen Einheit mit diesen Daten in ihren 4-Bit-Registern durchgeführten Operation unter Takteinfluß
in eine Bestimmungsschaltung übertragen, beispielsweise das 5/4/?-Register 215, das Datenregister
212, den KM-Speicher 208 oder den TM-Speicher 206.
Der /?M-Speicher ist ein kleiner bipolarer Speicher
(64x4) und stellt einen Systemprogrammierer mit sechzehn Allzweckregistern dar. Die R 1- und ^-Eingänge
dieses Speichers sind fest mit den Ausgängen der R \-R 2-Register 209 verbunden und ermöglichen die
schnelle Adressierung des Speichers mit Informationen, die über die Sammelleitung 110 ankommen und in das
R i-R 2-Register eingegeben werden. Der Adresseneingang 256 des ΛΜ-Speichers liefert nur die Anfangsadresse eines 16-Bit-Wortes, das in Form von
4-Bit-Bytes gespeichert ist. Die einzelnen Bytes dieses Wortes werden unter Steuerung der Phaseninformation
adressiert, die vom Zeitsteuerungsgenerator ankommt.
Der CM-Speicher ist ein bipolarer Festwertspeicher (ROM) mit einer Kapazität von 256x4 Bits. Dieser
Speicher iiefert Konstanten zur Verwendung durch das Mikroprogramm. Eine häufig benutzte Konstante ist
beispielsweise ein 16-Bit-Wort, das Byte für Byte gespeichert ist und nur 0-Werte enthält. Das L-Register
wird für Adressierzwecke benutzt und ist ein 6-Bit-Register, das entweder von der Bestimmungssammelleitung
über den Weg 240 oder mit einem Mikrobefehl über den Weg 258 geladen werden kann. Das /.-Register wird
vom Mikroprogramm für Index-Operationen verwendet
Der TM-Speicher ist ein bipolarer Speicher mit beliebigem Zugriff (RAM), der eine Kapazität von 24 χ 4
Bits besitzt. Dies entspricht einer Speicherkapazität von sechs 16-Bit-Registern.
Der Verarbeiter gemäß Fig.2 und 3 ist ein Allzwecktyp und kann eine Vielzahl von Operationen
ausführen. Faßt man seine Möglichkeiten summarisch zusammen, so kann dsr Verarbeiter veranlassen, daß
Informationen an eine der oder beide Quellenstirnmelleitungen
von irgendeiner gewählten Schaltung aus angelegt werden, deren Ausgang mit diesen Sammelleitungen
verbunden >st. Die arithmetische Einheit nimmt diese Informationen von den Sammelleitungen auf,
verarbeitet sie auf die durch den Befehl aus dem Mikrospeicher 222 angegebene Weise und legt sie dann
an die Bestimmungssammelleitung an. Von dort können die Informationen dann zu irgendeiner Schaltung
übertragen werden, deren Eingang mit der Bestimmungssammelleitung verbunden ist.
ίο Die Möglichkeiten des Verarbeiters lassen sich besser
anhand der Beschreibung einiger weniger typischer Operationen verstehen. F i g. 21 zeigt einen Maschinenbefehl,
mit dem der Inhalt eines Wortes /?2 des /?M-Speichers 208 zum Inhalt des Wortes R 1 addiert
und das Ergebnis im Wort R 1 gespeichert wird. Die Wörter R 1 und R 2 sind nicht das erste und zweite Wort
des ΛΜ-Speichers. Ihre Adresse wird durch den Inhalt der R 1- und /?2-Felder des Befehls angegeben. Das
R 2-FeId umfaßt die Bits 0 bis 3 und das R 1-Feld die Bits
4 bis 7. Der öperationscode für diesen Befehl isi 03 unu ist in den Bits 8 bis 14 des Feldes gespeichert. Die
Funktion des ß/4-Feldes ist nicht wichtig für die
vorliegende Erläuterung.
Den Befehl gemäß Fig. 21 nimmt der Verarbeiter vom Speichersystem 102 über die Datensammelleitung
HO und den Weg 210 auf. Die am weitesten rechts stehenden acht Bits dieses Befehls, nämlich die R 1- und
/?2-Felder werden in die R\- und /?2-Register 209
eingegeben. Die Operationscodebits laufen über den
JO Weg 210 zum mittleren Eingang des Multiplexers 221 und dann *.um M4C-Register 220, wo eine binäre 03 in
das Register eingegeben wird. Diese beinäre 03 gibt die Anfangsadresse der Mikrospeicherbefehle an, die zur
Steuerung der Decodierlogik 226 und des Zeitsteuemngsgenerators 225 erforderlich sind, derart, daß die in
Fig.21 angegebenen Operationen ausgeführt werden. Das erste Wort dieses Mikrobefehls hat die in Fig. 26
gezeigte Art und wird Bewegungsbefehl (MOV) genannt. Für diesen Befehl ist der KM-Speicher die
Quellenschaltung und der TM-Speicher die Bestimmungsschaltung. Es wird jetzt unter Steuerung des
Befehls gemäß F i g. 26 das Wort R 2 im RM-^peicher
an die Quellensammelleitung 1 gegeben, über die arithmetische Einheit geführt und in diejenige Adressenstelle
des TW-Speichers eingegeben, die das DES-FeId in F i g. 26 angibt.
Danach wird das AMC-Register um eine Position
weitergeschaltet und auf einen arithmetischen Befehl der in F i g. 25 gezeigten Art gebracht Bei diesem
so Befehl gibt der TM-Speicher das Wort R 2 auf die Quellensammelleitung 2, der /?M-Speicher legt das
Wort ßl an die Quellensammelleitung 1 an, und die
arithmetische Einheit addiert die beiden Wörter und gibt die Summe in das Wort R 1 des ΛΜ-Speichers. Für
diese Operation ist der 7?M-Speicher die durch das 51-Feld angegebene Quellenschaltung, der TM-Speicher
ist die durch das 5 2-Feld angegebene Quellenschaltung
und der ÄM-Speicher ist die durch das Bestimmungsfeld (DES) angegebene Schaltung. Der
Inhalt des arithmetischen Feldes veranlaßt die arithmetische Einheit die auf den beiden Quellensammelleitungen
zugeführten Informationen zu addieren.
Bei der Durchführung dieser Operation wird das Wort ß2 im TM-Speicher Byte für Byte an die
Quellensammelleitung 2 angelegt und das Wort R I aus
acrn ÄAi-Speicher v/ird Byte für Byte an die
Quellensammelleitung 1 gegeben. Die arithmetische Einheit bestimmt die Summe für jedes Paar von Bytes,
das ü'uer die beiden Quellensammelleitungan ankommt,
und gibt die Summe auf die Bestimmungssammelleitung. Von dort wird jedes von der arithmetischen Einheit
kommende Byte in das R 1-Wort des ΛΜ-Speichers
gegeben, da der /JM-Speicher die durch das DES-FeId in
der arithmetischen Anordnung gemäß F i g. 25 angegebene Bestimmungsschaltung ist.
Eine weitere Art von Befehl, die die Anlage ausführen kann, ist in Fig. 22 angegeben. Dabei wird ein
angegebenes Binärwort I zum Inhalt des Wortes R 1 des )0
/?M-Speichers addiert und das Ergebnis in das Wort R 1 gegeben. Wie in Fig. 22 angegeben, benötigt diese
Operation zwei Befehlswörter. Beim ersten V/ort wird der inhalt des R 1-Feldes von der Datensammelleitung
110 aufgenommen und in das R 1-Register 209 gegeben. Die Information wird dann über den Weg 253 als
Adressierinformation zum ΛΜ-Speicher übertragen und gibt dasjenige Wort an, das zu verarbeiten ist.
Außerdem identifiziert beim ersten Befehlswort der Operationscode 07 den Befehl und wird über den
Multiplexer ?,21 in das M,4C-Register 220 eingegeben,
um den Mikrospeicher auf die richtige Adresse weiterzuschalten. Diese Adresseninformation bringt
den Mikrospeicher 222 auf einen Bewegungsbefehl der in Fig. 26 dargestellten Art, bei dem das R 1-Wort des
ftM-Speichers an die Quellensammelleitung 1 gegeben, zur arithmetischen Einheit übertragen und über diese in
ein entsprechendes Wort des TM-Speichers gegeben wird.
Danach wird das zweite Wort des in Fig. 22 gezeigten Befehls vom Verarbeiter aufgenommen. Das
gesamte Wort stellt die Binärzahl dar, die zum augenblicklichen Inhalt von R 1 zu addieren und dann in
R 1 zu speichern ist. Dieses 16-Bit-Wort wird über die Sammelleitung 110 aufgenommen und in das Datenregister
212 gegeben. Danach geht der Mikrospeicher auf einen arithmetischen Befehl entsprechend der Angabe
in Fig. 25 weiter. Zu diesem Zeitpunkt wird das 16-Bit-Wort im Datenregister 212 ausgelesen und Byte
für Byte während jeder Phase auf die Quellensammelleitung 1 übertragen, während gleichzeitig das Wort R 1
im TM-Speicher ausgelesen und Byte für Byte auf die Quellensammelleitung 2 gegeben wird. Die arithmetische
Einheit empfängt die beiden Wörter gleichzeitig Byte für Byte, addiert sie, und die Summe wird auf die
Bestimmungssammelleitung 205 übertragen und dann in das Wort R 1 des /?M-Speichers eingegeben.
Wie bereits erwähnt, ist der CM-Speicher 207 ein Festwertspeicher, der nur Konstanten speichert. Er
kann bei Operationen ähnlich den gerade beschriebenen Operationen verwendet werden. Beispielsweise kann
ein Befehl verlangen, daß ein bestimmtes Wort des QVf-Speichers zu einem bestimmten Wort des RM-Speichers
addiert und die Summe im gleichen oder einem anderen Wort des ftM-Speichers aufgenommen
oder alternativ auf entweder die Datensammelleitung 110 oder die Adressensammelleitung 111 gegeben wird.
Ein Befehl dieser Art wird durch Operationen ausgeführt, die den eben beschriebenen Operationen
analog sind.
F i g. 23 zeigt einen Maschinenbefehl hoher Stufe, der in Verbindung mit den Schiebe- und Rotiermöglichkeiten
des Verarbeiters benutzt wird. Eine 11 im Operationscodefeld identifiziert den Befehl und gibt an,
daß ein Wort R1, dessen Adresse im /?M-Speicher
durch das R t-Feid bezeichnet wird, um eine Anzahl von Bitpositionen zu verschieben ist, die durch das JV-FeId
bezeichnet wird. Dieser Befehl kommt über die Datensammelleitung 110 an und wird dem Verarbeite
über den Weg 210 zugeführt, wobei die Bits des Operationscode durch den Multiplexer 221 in das
/VMC-Register 220 gegeben werden. Die am weitesten
rechts stehenden acht Bits, nämlich das R 1- und /V-FeId,
werden in die R 1-und R 2- Register 209 einjegsben.
Der vorgenannte Befehl erfordert die Ausführung von zwei Mikrospeicherbefehlen. Der erste Mikrobefehl
gibt den Inhalt des R 2-Registers über den Weg 234 auf die Quellensammelleitung 2. Von dort werden die
Informationen über die arithmetische Einheit und den Weg 236 zum SC- und T/M-Register 218 und 217
übertragen. Der Inhalt dieser Register stellt dann zusammen die angegebene Anzahl von Bitpositionen
dar, um die das R 1-Wort zu verschieben ist. Beim nächsten Mikrobefehl adressiert der Inhalt des R !-Registers
209 den ΛΜ-Speicher 208 derart, daß er den Inhalt des Ri-Wortes an die Quellensammelleitung 1
anlegt, über die es zur arithmetischen Einheit übertragen wird. Diese schreibt die Information Byte tür Byte in
einer besonders geordneten Folge in den TM-Speicher. Die besonders geordnete Folge wird durch die im
T/M-Register 217 gespeicherte Schiebeinformation definiert. Das ursprüngliche R 1-Wort bleibt weiter im
/?M-Speicher. Danach wird das ursprüngliche R 1-Wort aus dem R 1-Abschnitt des ÄM-Speichers auf die
Quellensammelleitung 1 ausgelesen. Gleichzeitig wird die neugeordnete Abwandlung des Wortes Byte für
Byte vom TM-Speicher auf die Quellensammelleitung 2 gegeben. Beide Sammelleitungen sind jetzt mit einer
Schiebeschaltung in der arithmetischen Einheit verbunden, und beim gleichzeitigen Auslesen jedes Byte aus
den beiden Speichern wird die durch jedes Paar von gleichzeitigen Bytes dargestellte Information von der
Schiebeschaltung aufgenommen und wieder in der verschobenen Form in den TM-Speicher eingeschrieben,
wobei die verschobene Form durch den augenblicklichen Inhalt des 5C-Registers angegeben wird. Aus dem
TM-Speicher wird dann das Wort je nach Bedarf über die Quellensammelleitung 2, die arithmetische Einheit
und die Bestimmungssammelleitung ausgelesen und an irgendeine der Schaltungen angelegt, die mit der
Bestimmungssammelleitung verbunden sind.
F i g. 24 zeigt eine etwas andere Art eines Soiebebefehls.
Bei diesem Befehl wird der Inhalt des R 1-Wortes
nach rechts um einen Betrag verschoben, den die unteren vier Bits des R 2-Wortes im /?M-Speicher
angeben. Der Verarbeiter nimmt diesen Befehl über die Datensammelleitung 110 auf, gibt den Operationscode
13 über den Multiplexer 221 in das AMC-Register 220 und lädt die Bits R1 und R 2 in das Ri- und
/?2-Register 209. Danach wird der Inhalt des ^-Registers
als Adressierinformation an den /?M-Speicher übertragen, der den Inhalt seines R 2-Wortes Byte für
Byte ausliest und an die Quellensammelleitung 1 anlegt, über die es der arithmetischen Einheit zugeführt wird.
Die ersten drei Bytes werden nicht beachtet und nicht benutzt Das letzte Byte, nämlich die niedrigstelligen
vier Bits, werden von der arithmetischen Einheit über Wege 236 und 237 den SC- und ΤΡΛ-Registern
zugeführt wo sie die Anzahl von Bitpositionen angeben, um die das R 1-Wort zu verschieben ist. Danach wird auf
ähnliche Weise, wie bereits für die Schiebe- und Rotierfunktion gemäß Fig.23 beschrieben, der Inhalt
des R 1-Wortes aus dem /?M-Speicher an die Quellensammeiieitung
i gegeben und über die arithmetische Einheit in veränderter Folge in den TM-Speicher
geschrieben. Das /?2-Wort im /?M-Speicher und das
Λ 2-Wort mit der geänderten Folge aus dein TM-Speicher
werden dann gleichzeitig Byte für Byte an die Quellensammelleitung 1 und die Quellensammelleitung
2 angelegt und in den TM-Speicher mit einer Bitverschiebung eingeschrieben, deren Betrag durch das
SC-Register angegeben wird.
Fig.4 zeigt die Eilemente des Verarbeiters in einer
Anordnung, die das Verständnis der Schiebe- und Rotierschaltung erleichtert. Viele der Bauteile in F i g. 4
sind auch in den F i g. 2 oder 3 dargestellt und tragen die gleichen Bezugszeichen. Beispielsweise enthält F i g. 4
den Zeitsteuerungsgenerator 225, den WM-Speicher 208, den TM-Speicher 206. das TR4-Register 217, das
SC-Register 218, die Quellensammelleitungen 1 und 2, die Bestimmungssammelleitung 205 und die arithmetische
Einhei· 202. Einige dieser Bauteile sind in F i g. 4 genauer als in den F i g. 2 und 3 gezeigt, um das
Verständnis für die Einzelheiten der Schiebe- und Rotieroperation zu vereinfachen.
Es sei anhand der obigen Erläuterungen der F i g. 2 und 3 daran erinnert, daß eine Schiebe- und Rotieroperation
durchgeführt wird, indem das zu verschiebende Wort in den WM-Speicher eingegeben wird. Informationen
in die SC- und T/M-Register 218, 217 gegeben werden, die die Anzahl von Bitpositionen angeben, um
die das Wort im WM-S^eicher zu verschieben ist. das Wort aus dem WM-Speicher gelesen und in den
TM Speicher in einer Byte-Folge eingeschrieben wird,
die durch die Schiebeinformation im T/M-Register bestimmt wird, die RM- und TM-Speicher gleichzeitig
Byte für Byte ausgelesen und gleichzeitig gelesenen Bytes über die Quellensammelleitungen 1, 2 zur
arithmetischen Einheit übertragen werden, deren Schaltungen die durch die beiden gleichzeitig eintreffenden
Bits dargestellte Information um die Anzahl von Bitpositionen verschiebt, die durch die Information im
SC-Register 218 dargestellt wird, und indem die vier Bytes der verschobenen Information in den TM-Speicher
gegeben werden.
Am Ende dieses Vorgangs und nach Eintreffen des letzten Byte aus den Speichern WM und TM und
Widereinschreiben in verschobener Reihenfolge in den Speicher TM, stellt die Folge, in der diese vier Bytes im
TM-Speicher erscheinen, jetzt das ursprüngliche Wort im WM-Speicher dar, verschoben um die angegebene
Anzahl von Bitpositionen. Von nun an kann das verschobene Wort im TM-Speicher für verschiedene
Zwecke benutzt werden, beispielsweise intern als Teil nachfolgender arithmetischer oder logischer Operationen.
Alternativ kann es über die Bestimmungssammelleitung zum Eingabe-Ausgabe-System ausgegeben werden,
und zwar entweder über das Datenregister 212 oder das S4/?-Register 215.
Als Beispiel wird jetzt eine 4-Bit-Rechtsschiebe- und
-Rotieroperation genauer beschrieben. Es sei angenommen, daß unmittelbar vor Beginn dieser Operation ein
Wort mit den Bytes A. B, C, D sequentiell in vier aufeinanderfolgenden Bytestellen des /?M-Speichers
gespeichert ist. wobei diese Speicherstellen zur Erläuterung mit 0, 1, 2, 3 bezeichnet werden. Die vier
Speicherstellen können irgendwo innerhalb des RM-Speichers
sein, der typischerweise eine Kapazität von sechzehn Wöricni oder vierundsechzig Bytes haben
kann. (ig. 27 /cigt den WM-Speicher mit den Bytes A,
I]. C. Din den Spcichersicllcn 0.1, 2. 3.
Vor Beginn der Schicbcoperation werden vier Bits,
die die Anzahl von Bitpositionen angeben, um die das
Wort im WM-Speicher zu verschieben ist, entweder
durch das W2-Register an die Quellerisammelleitung 2
(für einen Befehl gemäß F i g. 23) oder durch den WM-Speicher an die Quellensammelleitung 1 (für einen
Befehl gemäß F i g. 24) angelegt und zur arithmetischen Einheit geführt. Diese gibt die beiden niedrigststelligen
Bits der vier Bits von der Bestimmungssammelleitung in das SC-Register 218 und die beiden höchststelligen Bits
der vier Bits in komplementärer Form in das T/M-Register 217. Für eine Verschiebung um vier (01,
00) Bitpositionen wird eine binäre Null (00) in das SC-Register und eine binäre Zwei (10) in das
TPA- Register geschrieben. Das Ladesignal 403 gibt diese Schiebeinformation von der Bestimmungssammelleitung
in das T/M-Register 217 und das SC-Register 218.
Das zu verschiebende Wort im /?M-Speicher wird
ausgelesen, über die Quellensammelleitung 1 zur arithmetischen Einheit übertragen und in den TM-Speicher
eingeschrieben. Die Adern 256 und 404 liefern die Adresseninformation für das Lesen des WM-Speichers.
Die Ader 256 stellt die vier höchststelligen Bits der Information bereit. Diese vier Bits bleiben während der
Leseoperation konstant und steuern die Leseschaltungen auf das erste der vier Bytes des auszulesenden
Wortes, nämlich das Byte 0. Die Adern 404 liefern die beiden niedrigsteUigen Bits der Adresseninformation
und bringen nachfolgend die Leseschaltungen auf die Bytes 0.1,2,3 in dieser Reihenfolge.
Die DES-Leitung 260 liefert die drei höchststelligen Bits zur Einstellung der Adressenschaltung des TM-Speichers
auf das Byte 0 eines Wortes. Die Leitung 257 liefert die beiden niedrigststelligen Bits der Steuerinformation,
nämlich die Byte-Information. Diese beiden Bits sind im Augenblick 10.
Das Byte A in der Speicherstelle 0 des WM-Speichers wird ausgelesen und in die Speicherstelle 2 des
TM-Speichers eingeschrieben, da das ΤΡΛ-Register im Augenblick auf dem Zählwert 2 ist. Auf den Wert 2 ist es
durch das Komplement (10) der linken beiden Ziffern (01) der Schiebeinformation (01, 00) eingestellt worden.
Dieses Byte wird aus dem WM-Speicher ausgelesen und unter Steuerung des Ladeimpulses für die Phase 0 im
Zeitdiagramm gemäß F i g. 31 an die Quellensammelleitung 1 gegeben. Das Byte wird dann über die
ALU-Einheit 420 der arithmetischen Einheit 202 und über den Wähler 402 an die Bestimmungssammelleitung
205 übertragen. Von dort wird sie zum Taktzeitpunkl der Phase 0 in den TM-Speicher gegeben. Det
Taktimpuls ist in Fig.4 auf der vom Zeitsteuerungsgenerator
225 kommenden Leitung 401 gezeigt. Dei Impuls läuft über das ODER-Gatter 405 und schaltet da«
T/M-Register 421 um eine Position weiter. Für der vorliegenden Fall wird das Register 4?.l von dei
Position 2 auf die Position 3 geschaltet.
Die Byte-Adresse auf der Leitung 404 für der /?M-Speicher ändert sich von binär 0 auf I, nachdem da:
Byte 0 aus dem WM-Speicher gelesen und in die Positiot 2 des TM-Speichers eingeschrieben ist. Die Adressenin
formation auf der Leitung 256 bleibt während de gesamten Schiebe- und Rötieroperation fest. Danacl
wird das Byte 1 aus dem /?M-Speicher gelesen und übe die ALU-Einheit 420 und den Wähler 402 an dl·
Bestimmungssammelleitung 205 übertragen. Von dor wird sie in die Position 3 des TM-Speichers cingegeber
Unter Hinweis auf das Zeitdiagramm in F i g. 3 finden die gerade für das Byte B beschriebene
Operationen derart statt, daß das Byte H aus der
WM-Speicher während der Ladeimpuls/.cit für die Phas
1 gelesen, über die arithmetische Einheit an die Bestimmungssammelleitung angelegt und während der
Taktimpulszeit der Phase 1 in die Position 3 des TM-Speichers geschrieben wird. Die Rückflanke des
Taklimpulses schaltet das TPA-Register von seiner Position 3 in die Position 0, nachdem, das Byte B in die
Position 3 des TM-Speichers eingeschrieben worden ist
Danach wird ähnlich wie bereits beschrieben die Byte-Adresse auf der Leitung 404 von binär 1 auf 2
weitergeschaltet, um das Byte C aus dem ÄM-Speicher
zu lesen und in die Position 0 des TW-Speichers einzuschreiben. Danach wird die Byte-Adresse auf der
Leitung 404 auf 3 und das TPA-Regiister auf die Position 1 weitergeschaltet sowie das Byte D des Wortes aus
dem ΛΜ-Speicher gelesen und in die Position 1 des TM-Speichers eingeschrieben. Die Rückflanke des
Taktimpulses 401 schaltet jetzt das TPA-Register vom
Zählwert 1 auf den Zählwert 2.
Fig.27 zeigt den Zustand des RM- und TM-Speichers
mit Bezug auf die gerade beschriebenen Operationen. Es ergibt sich, daß die Bytes A, B.QD'.n
den Speicherstellen 0 bis 3 des /?M-Speichers in die
Speicherstelle 0 bis 3 des TM-Speichers in der Byte-Reihenfolge C, D, A, B für die Positionen 0,1, 2, 3
eingegeben worden sind.
Danach wird das T/M-Register um 1 erhöht und von
seiner Position 2 auf die Position 3 gebracht. Dies geschieht durch das ODER-Glied 405 und das
UND-Glied 406. Der AROM-Speicher 407 der arithmetischen
Einheit bringt die Ader zu diesem Zeitpunkt auf H. Die Ader führt zu einem Eingang des UND-Gliedes
406. Gleichzeitig wird die Ader 408 durch den Decodier-Logikabschnitt des Verarbeiters auf H gebracht.
Wenn beide Eingänge des UND-Gliedes 406 auf H sind, führt es ein Signal über das ODER-Glied 405, das
das T/M-Register von der Position 2 auf die Position 3
bringt. Das vom AROM-Speicher 407 auf die Ader 416 gegebene Signal aktiviert außerdem den Eingang des
Wählers 402, so daß dieser nachfolgend auf das Ausgangssignal der Schiebeschaltung 501 statt auf das
Ausgangssignal der ALU-Einheit anspricht.
Die vorstehende Beschreibung stellt den ersten Schritt der Schaltungsoperationen dar, die der Verarbeiter
zur Durchführung einer Schiebeoperation ausführen muß. Der zweite und letzte Schritt wird nachfolgend
unter Bezugnahme auf Fig.5 beschrieben, die die Schaltungseinzelheiten der Schiebeschaltung 501 darstellt.
Die Schiebeschaltung umfaßt im wesentlichen vier Datenwähler oder Multiplexer 502, die Quellensammelleitungsadern
203 und 204, die die Eingänge der Multiplexer mit den Ausgängen des RM- und TM-Speichers
verbinden, die Adern 505, die die Ausgänge der Multiplexer mit der Bestimmungssammelleitung 205
verbinden, und die Leitung 239, die den Ausgang des 5C-Registers 218 mit den Steueranschlüssen 503- der
Multiplexer 502- verbindet. Jeder Multiplexer besitzt vier Eingangsanschlüsse, die mit 0 bis 3 bezeichnet sind
und mit allen vier Ausgängen des ΛΜ-Speichers sowie nur den drei am weitesten rechts liegenden Ausgängen
des TM-Speichers verbunden sind. Diese Verbindungen geben der Schiebeschaltung die Möglichkeit, die sieben
Informationsbits, die gleichzeitig von den Speichern RM
und TM ankommen, um entweder 0, I, 2 oder 3 Bitpositionen zu verschieben.
Die im 5C-Register 218 gespeicherte Information bestimmt die Artzahl von Bitpositionen, um die die
ankommende Information zu verschieben ist. Wenn beispielsweise binär 00 im SC-Register gespeichert ist,
wird der Eingang O jedes Multiplexers über die Leitung
239 aktiviert, und nur die vier Bits, die vom ÄM-Speicher an die Schiebeschaltung angelegt sind,
werden über die Multiplexer geführt und über deren Ausgangsleitungen an die Sammelleitung 205 angelegt.
Wenn binär Ol im SC-Register ist, wird der Eingang 1 jedes Multiplexers aktiviert Dann werden die drei am
weitesten links stehenden Bits des ÄM-Speichers zusammen mit dem Bit O des TM-Speichers über die
Multiplexer geführt und über deren Ausgangsleitungen 505- an die Bestimmungssammelleitung 205 angelegt
Wenn binär 10 im SC-Register ist wird der Eingang 2 jedes Multiplexers aktiviert Es werden dann die beiden
am weitesten links stehenden Bits des ÄM-Speichers und die beiden am weitesten rechts stehenden Bits des
TM-Speichers über die Schiebeschaltung auf die Bestimmungssammelleitung übertragen. Wenn binär 11
im SC-Register steht wird das am weitesten links stehende Bit des ÄM-Speichers zusammen mit den drei
am weitesten rechts stehenden Bits des TM-Speichers an den Anschluß 3 der Multiplexer und dann an die
Sammelleitung 205 gegeben.
In Verbindung mit Fig.4 ist bereits festgestellt worden, daß für eine angegebene Verschiebung um vier
Bitpositionen das SC-Register die Binärziffern 00 enthält, die die beiden niedrigststelligen Ziffern für binär
4 (01 00) darstellen. Die Ziffern 00 im SC-Register aktivieren den Eingang 0 der Multiplexer, und die
Schiebeschaltung 501 gibt an die Sammelleitung 205 nur die vier Bits jedes vom ÄM-Speicher ankommenden
Bytes.
In Verbindung mit F i g. 4 und F i g. 27 ist beschrieben
worden, wie die Bytes A, B, C, D in den Positionen 0,1,2,
3 des ÄM-Speichers in die Positionen 0, 1, 2, 3 des TM-Speichers in der Bytefolge C, D, A, B eingeschrieben
werden. Damit ist nur der erste Schritt der für eine 4-Bit-Verschiebung erforderlichen Operation beendet.
Der zweite Schritt dieser Operation wird nachfolgend im einzelnen erläutert
Das TPA-Register befindet sich, wie bereits erwähnt, im Augenblick in seiner Position 3. Danach werden der
PA-Taktgeber 225A und das TPA-Register 217 jeweils um einen Schritt auf die bereits beschriebene Weise
weitcrgeschaltet, und während jeder Unterphase des Zyklus wird ein Byte aus dem ÄM-Speicher gelesen und
in den TM-Speicher geschrieben.
Das Byte A im /?M-Speicher wird zuerst ausgelesen
und in die Position 3 des TM-Speichers geschrieben. Dann wird das Byte S gelesen und in die Position 0 des
TM-Speichers eingegeben. Anschließend werden die Bytes Cund Dgelesen und in die Positionen I und 2 des
TM-Speichers geschrieben. Dann ist die 4-Bit-Schiebeoperation beendet, da die Bytes A, B, C, D des aus
dem ÄM-Speicher zu schiebenden Wortes jetzt irn TM-Speicher in der Bytefolge B, C, D, A gespeichert
sind. Der Inhalt der beiden Speicher zu diesem Zeitpunkt ist in Fig. 28 dargestellt. Der Inhalt des
TM-Speichers gemäß Fi g. 28 stellt eine 4-Bit-Verschiebung des Inhaltes des ÄM-Speichers gemäß F i g. 27 dar.
Anschließend wird eine ti-Bit-Verschiebung beschrieben,
die in der binären Darstellung 0110 lautet. Die beiden am weitesten links stehenden Bits 01 werden in
komplementärer Form 10 in das TPA-Register 217 eingegeben. Die beiden am weitesten rechts stehenden
Bits 10 werden in das SC-Register 218 übertragen. Die Operationen für diese 6-Bit-Verschiebung sind identisch
mit den bereits für eine 4-Bit-Verschiebung beschriebenen Operationen bis zu und einschließlich der
Übertragung der Bytes aus dem ΛΛί-Speicher in die
Positionen 0,1,2,3 des ΓΜ-Speichers in der Reihenfolge
C, D, A, B entsprechend der Darstellung in F i g. 27.
Beim zweiten Schritt dieser Operation werden die Bits 10 im SC- Register über die Leitung 239
weitergeführt und aktivieren den Eingang 2 jedes Multiplexers 502-. Dadurch spricht die Schiebeschaltung
501 während jeder Leseoperation auf die beiden am weitesten links stehenden Bits des /?M-Speichers und
die beiden am weitesten rechts stehenden Bits des ΓΜ-Speichers an. Dies bewirkt eine Verschiebung um
zwei Bitpositionen. Während der ersten Phase der Leseoperation aus beiden Speichern, die jetzt entsprechend
der Darstellung in Fig.27 angeordnet sind, werden die beiden am weitesten links stehenden Bits des
Byte A aus dem ΛΜ-Speicher und die beiden am weitesten rechts stehenden Bits des Byte ß aus dem
TM-Speicher empfangen und über die Schiebeschaltung übertragen. Die Steuerinformation für den RM-Spelcher
beim ersten Byte ist 00 und kommt vom Taktgeber 225A über die Läitung 404. Das T/M-Register ist im
Augenblick auf dem Zählwert 3 aus bereits in Verbindung mit der 4-Bit-Schiebeoperation beschriebenen
Gründen. Die Schiebeschaltung erhält also jetzt die beiden am weitesten links stehenden Bits des Byte A (die
in Fig.29 mit Al und A3 bezeichnet sind) und die beiden am weitesten rechts stehend in Bits (BO und B 1)
des Byte B aus dem TM-Speicher und gibt sie zu ihrem Ausgang. Die vier Bits werden jetzt in die Position 3 des
ΓΜ-Speichers in der in Fig.29 gezeigten Reihenfolge
eingeschrieben. Die Adresseninformation für die Speicher RM und TM wird um eine Position weitergeschaltet,
und die Schiebeschaliung erhält die beiden am
weitesten links stehenden Bits (B2 und S3) des nächsten Byte vom ΛΜ-Speicher vxJ die beiden am
weitesten rechts stehenden Bits (C0 und Cl) vom
TM-Speicher und gibt sie an ihren Ausgang. Die Bits werden in die Position 0 des ΓΜ-Speichers eingeschrieben.
Die Adresseninformation für die Speicher RM und TM wird wiederum um eine Position weitergeschaltet,
und die Schiebcschaltung erhält die beiden am weitesten links stehenden Bits des Byte C vom /?M-Speicher und
die beiden am weitesten rechts stehenden Bits des Byte D vom TM-Speicher. Die Bits werden in die Position 1
des TM-Speichers eingeschrieben. Die Adressierschaltungen für die Speicher werden erneut um eine Position
weitergeschaltet, und die Schiebeschaltung erhält die beiden am weitesten links stehenden Bits des Byte D
vom /?M-Speicher und die beiden am weitesten rechts stehenden Bits des Byte A vom TM-Speicher. Die Bits
werden entsprechend der Darstellung in Fig.9 in die
Position 2 des TM-Speichers geschrieben. F i g. 29 zeigt das 4-Byte-Wort des /?M-Speichers um sechs Bitpositionen
verschoben.
Die vorstehende Beschreibung hat die Operationen der Schiebeschaltung für Schiebegrößen 4 bzw. 6
erläutert. Mit Hilfe ähnlicher Operationen können andere Schiebebeträge durch ähnliche Operationen mit
zwei Schritten durchgeführt werden. Beim ersten Schritt jeder solchen Schiebeoperation wird der
WM-Speicher Byte für Byte ausgelesen und das Ergebnis in den TM-Speicher in einer Reihenfolge gegeben, die
durch das Komplement der beiden am weitesten links stehenden Bits der Schiebeinformation bestimmt wird, b5
die im TPA-Register gespeichert ist. Beim zweiten Openitionsschritt werden beide Speicher gleichzeitig
Byte für Byte gelesen und das Ergebnis an die Schiebeschaltung gegeben. Diese verschiebt die empfangenen
Informationen um entweder null, eins, zwei oder drei Bitpositionen und schreibt dann die verschobene
Information in den TM-Speicher in einer Reihenfolge, die das Wort im ΛΜ-Speicher, verschoben
um die erforderliche Anzahl von Bitpositionen, darstellt.
Das S/4/?-Register 215 in F i g. 3 ist in F i g. 6 genauer
gezeigt. Es handelt sich um ein 16-Bit-Register, das
Adresseninformationen speichert, die zum Speichersystem 102 oder zum Eingabe-Ausgabe-System zu
übertragen sind. Das &4/?-Register enthält vier 4-Bit-Schieberegister, beispielsweise integrierte Schaltungen
vom Typ SN 7496. Die Register sind unter Bildung enes Speichers vom Typ 4x4 angeordnet, der
in F i g. 6 als Bauteil 601 bezeichnet ist. Die Schieberegister nehmen die Information von der Bestimmungssammelleitung
205 Byte für Byte mit jeweils vier Bits gleichzeitig auf. Die ankommende Information wird
nachfolgend parallel als 16-Bit-Wort auf die Adressensammelleitung
111 gegeben. Das UND-Glied 602 steuert die Einführung von Informationen von der Sammelleitung 201 in das Register 601. Das Signa!
EWSAR auf der Leitung 604 wird auf 1 gebracht, um anzugeben, daß das &4/?-Register der Bestimmungsort
für die durch die arithmetische Einheit 202 auf die Sammelleitung 205 übertragene Information ist. Die
Taktleitung 603 führt die in Fig.31 angegebenen Taktsignale und ermöglicht die Eingabe der sequentiell
an die Bestimmungssammelleitung 205 angelegten Bytes in das Register 601. Das Signal EWSAR wird
durch die Decodierlcgikelemente 226 in F i g. 2 geliefert. Das Taktsignal wird vom Zeitsteuerungsgenerator 225
zugeführt. Dies ist in Fig.32 für das Register SAR
sowie für alle anderen Schaltungen dargestellt.
Die R 1- und R 2-Register 209 in F i g. 3 sind in F i g. 7
genauer gezeigt. Sie nehmen die niedrigststelligen acht Bits der vom Verarbeiter über die Datensammelleitung
110 ankommenden Befehlswörter auf und speichern sie zeitweilig. Die am weitesten links, stehenden acht Bits
werden durch weitere Bauteile izs Verarbeiters
aufgenommen und gespeichert, zu denen der MAC-Zähler
220 gehört, der die sieben Bits des Operationscode Gespeichert.
Die R 1- und /?2-Register enthalten zwei 4-Bit-Register,
die zusammen als Bauteil 702 in F i g. 7 bezeichnet sind. Die acht Informationsbits, die die Datensammelleitung
110 über den Weg 210 den Registern R 1 und R 2
zuführt, werden unter Steuerung eines Signals LDOP auf der Leitung 703 in die Register eingeführt. Dieses
Signal kommt vom Zeitsteuerungsgenerator 225 in F i g. 2 und wird erzeugt, nachdem das Speichersystem
102 mit einem Speichervollständigsignal auf einer bestimmten Ader der Speichersteuersammelleitung 112
geantwortet hat.
Die Ausgänge der R^- und /?2-Register sind
außerdem über Wege 253 und 254 mit der Adressensteuerschaltung des /?M-Speichers 208 verbunden.
Diese Verbindungen geben die Möglichkeit, daß der Inhalt der Rl- und /?2-Registe- direkt für Adressierzwecke
zum /?M-Speicher übertragen wird.
Der Multiplexer 701 wandelt die acht Bits in den R 1- und W2-Registern in zwei 4-Bit-Bytes um. Dies erfolgt
unter Steuerung des Signals PHO in Fig. 31, das das
niedrigststellige Bit der vom Zeitsteuerungsgenerator erzeugten codierten Phaseninformation ist. Diese
Information kommt über die Leitung 704 an. Wenn das PWO-Signal auf H ist, wird der Inhalt des R !-Registers
über den Multiplexer zu den Qucllensammclleitungen
übertragen. Wenn das WO-Signal auf L ist, so wird der
Inhalt des /?2-Registers durch den Multiplexer an die Quellensammelleitungen angelegt Das Bauteil 701 kann
eine integrierte Schaltung vom Typ SN 74 157 sein, Die
Register 702 können zwei integrierte Schaltungen SN 7495 sein. Das L-Register 216 in F i g, 3 ist in F i g. 8
genauer dargestellt Dieses Register hat die Funktion, die Adressierinformation für den CM- und ÄA/-Speicher
zu liefern. Das L-Register enthält ein Register 801, einen Multiplexer 802 und eine Schreiblogik 803. Das Register [0
801 ist ein 6-Bit-Register und kann unter Steuerung des Multiplexers 802 entweder von der Bestimmungssammelleitung
205 aus über den Weg 240 oder vom Feld EMITaer Decodierlogik 226 über den Weg 258 geladen
werden. Wenn das Register 801 vom Feld EMIT ausgeladen wird, so werden alle sechs Bits des Registers
aufgefüllt. Wenn jedoch das Register während des Bytes 0 von der Bestimmungssammelleitung aus geladen wird,
werden nur die niedrigstelligen vier Bits eingegeben, und die beiden höchststelligen Bits, die sich bereits im
Register befinden, werden nicht gestört. Das L-Register weist zwei integrierte Schaltungen, beispielsweise vom
Typ SN 7475 und SN 74 298 auf. Nur eine Hälfte der Schaltung SN 7475 wird für die beiden höchsutelligen
Bits benutzt und nur die beiden höchststelligen Bits der ΕΛί/Γ-Felder stellen Dateneingangssignale für die
Schaliung SN 7475 dar. Die vier niedrigstelligen Bits werden in der Schaltung SN 74 298 gespeichert, die den
Multiplexer 802 enthält.
Wenn das 6-Bit-Feld EMIT in das Register 801
eingegeben werden soll, so erzeugt die Decodierlogik 226 in F i g. 2 das Signal LDL 1 und gibt es auf die
Leitung 807. Dieses Signal steuert den Multiplexer 802 über den Weg 805 derart, daß er den Eingang EMIT
erregt und alle sechs Bits des Feldes EMIT in das Register 801 unter Takteinfluß einführt. Das Signal
LDL 1 tritt zu dem für den Steuerimpuls CTLPLS im Zeitdiagramm in F i g. 28 gezeigten Zeitpunkt auf.
Wenn die Information auf der Bestimmungssammelleitung 205 in die niedrigstelligen vier Bits des Registers (n
801 einzuscnreiben ist, so erzeugt die Decodierlogik während der Phase 0 das Signal WRL 1, dessen Dauer
gleich der Dauer des Taktimpulses in Fig.28 ist. Die
Schreiblogikschaltung 803 steuert den Multiplexer über den Weg 805 derart, daß die Sammelleitung 240 als
Dateneingang für das Register 801 ausgewählt wird. Der Ausgang des Registers führt über den Weg 256 zu
den in F i g. 2 und 3 gezeigten Speichern CMund RM.
Das logische Bauteil 803 enthält die logischen Verknüpfungsglieder, a\r. zum Anlegen eines Signals an -)0
den Weg 804 beim Eintreffen entweder eines WRL 1- oder eines LDL 1-Signals erforderlich sind. Das Signal
führt die Ausgangsinformation vom Multiplexer 802 in das Register 891. Die Logikschaltung 803 legt außerdem
das erforderliche Potential bei Empfang eines Signals LDL 1 oder WRL 1 an die Leitung 805.
Der CM-Speicher 207 in F i g. 3 ist genauer in F i g. 9
gezeigt. Es handelt sich um einen 256x4-Festwertspeicher,
der zweckmäßig ein Harris-Ha'bleiterspeicher vom Typ HPROM-1024 sein kann. Der CVW-Speicher b0
enthält im wesentlichen ein Register 901 und Registerausgangsschaltungen 902. Die Adressierinformationen
für das Register kommen über Wege 256 und 903 an. Da das Register 901 256 Adressenstellen besitzt, sind acht
Bits für die Adressierinformation erforderlich, um eine b-,
bestimmte Speiche.stelle anzugeben. Sechs Adressenbits kommen über den Weg 256 an und identifizieren die
Anfangsadresse des ersten Bytes eines auszulesenden Wortes. Die restlichen beiden Bits — die Byte-Information
— kommen über den Weg 903 an. Diese Information stellt die Phaseninformation dar und
kommt vom Zeitsteuerungsgenerator 225. Der CM-Speicher gibt dauernd das adressierte Wort als
Ausgangssignal über die Ausgangsschaltungen 902 und den Weg 250 auf die Quellensammelleitung 1.
Der /?M-Speicher 208 in F i g. 3 ist genauer in F i g. 10
veranschaulicht. Der Speicher enthält sechzehn Allzweckregister,
jedes Register besteht aus vier 4-Bit-Bytes, und alle Register zusammen bilden das Bauteil 1001
in Fig. 10. Der ΛΜ-Speicher enthält außerdem
Registereingangsschaltungen 1002, Registerausgangsschaltungen 1003, ein UND-Glied 1004 sowie Multiplexer
1005 und 1006.
Die Bauteile 1001,1002 und 1003 können zweckmäßig integrierte Schaltungen vom Typ SN 7489 sein, die
jeweils einen 16 χ 4-Bipolarspeicher darstellen. Die vier integrierten Schaltungen sind als 64x4-Bit-Speicher
organisiert Die Adressierinformation für diese Speicheranordnung wird über We.i 1008 und 1007
geliefert. Der Weg 1OO8 nimmt das Aus^angssigna! des
Multiplexers 1005 auf, der 4 :1-Multiplexer vom Typ
SN 74153 enthält. Der Multiplexer 1006 umfaßt einen 2 :1-Multiplexer vom Typ SN 74153.
Das Register 1001 stellt einen Speicherraum für sechzehn 16-Bit-Wörter bereit, die jeweils vier4-Bit-Bytes
umfassen. Jedes Wort entspricht einem Allzweckregister. Die Wortadresseninformation wird vom Multiplexer
1005 über den Weg 1008 und die Adressierung innerhalb des Wortes, also die Byte-Information, über
den Weg 1007 geliefert, der die Phasen- oder die Byteinformation vom Zeitsteuerungsgenerator 225
erhält. Die auf den Weg 1008 gegebene Information wird vom Multiplexer 1005 entweder über den Weg 256
vom L-Register. über den Weg 254 vom R 2-Register oder über den Weg 253 vom R 1-Register aufgenommen.
Zwei Informationbsbits geben an, welcher Eingang des Multiplexers 1005 zu erregen ist. Diese beiden
Auswahlbits werden vom Ausgang des Multiplexers 1006 auf den Weg 1009 gegeben. Die Eingänge des
Mutiplexers 1005 sind numerisch bezeichnet, um den Wert des Binärsignals anzugeben, das auf den Weg 1009
gegeben werden muß, um den jeweiligen Eingang zu erregen. Wenn also eine binäre 1 auf den Weg 1009
gegeben wird, so wird der Eingang 1 erregt und die Information auf dem Weg 253 über den Multiplexer
1005 und den Weg 1008 zum Register 1001 geführt. Die Eingänge A und S des Multiplexers 1006 sind über
Wege 1010 und 1011 mit der Decodierlogikschaltung 226 verbunden. Der Eingang A des Multiplexers 1006
nimmt die beiden niedrigststelligen Bits (5 und 6) des Quellenfeldes 1 (S 1) dps MikroSpeichers 222 für einen
Befev.i tier in den F i g. 25 oder 26 gezeigten Art auf. Der
Eingang B des Multiplexers nimmt die beiden niedrigststelligen öits (12 und 13) des Beslimmungsfeldes
(DES) eines Mikrobefehls der in Fig.25 oder 26 gezeigten Art auf. Der Weg 1012 führt zum Zeitsteuerungsgenerator
und die ihm zugeführten Signale bestimmen, welcner Eingang des Multiplexers 1006
aktiv sein soll, Wenn die Ader SEL eine 0 führt, so wird der Eingang A erregt. Wenn die Ader eine 1 iührt, so
wird der Eingang ßerregt.
Die Gesamtfunktion der beiden Multiplexer besteht darin, daß sie den Feldern 51 und DES eines
Mikrobefehls die Möglicnkeit geben, entweder das Register L. das Register R 1 oder das Register R 2 als
Adressierquclle für das Register RM zu wählen. Der
Mikioprogrammierer kann also nicht nur den Umstand
angeben, daß der Speicher WM eine Quellen- oder eine Bestimmungsschaltiing sein soll, sondern er kann
außerdem angeben, welche der drei möglichen Quellen für die Adresseninformation zur Steuerung des Speichers
WMbenutzt werden soll.
Ein Wort wird in das Register 1001 dadurch eingeschrieben, daß die gewünschten Daten von der
Bestirnmungssammelleitung auf den Weg 232 gegeben, d'e erforderliche Adresseninformation über den Multiplexer
1005 und den Weg 1008 an das Register 1001 übertragen und die Schreibleitung 1013 veranlaßt wird,
auf 1 zu gehen. Diese Leitung wird durch eine UND-Verknüpfung der RM- und der Taktsignale im
Gatter 1004 gesteuert. Das WM-Signal wird von der Decodierlogik 226 geliefert und das Taktsignal vom
Zeitsteuerungsgenerator, wobei es die in F i g. 28 gezeigte Form hat.
imiiici UiIIiIi. weim n\ciii mi das Register !0Gl
eingeschrieben wird, gibt die Ausgangsschaltung 1003
dauernd über den Weg 201 den Inhalt des im Augenblick über den Weg 1008 adressierten Wortes an die
Quellensammellcitung I.
Das WM-Signal kommt von der Deeodierlogikschaltung
226 und ist während aller vier Phasen eines Maschinenzyklus immer dann vorhanden, wenn eine
binäre 0. 1 oder 2 im Bcstimmungsfeld für einen liefehl
der in F i g. 25 und 26 gezeigten Art erscheint. Die zeitliche Einordnung des Taktsignals ist im /eitcliagramm
gezeigt.
Zusammengefaßt bestimmen ein Taktsignal und ein WM-Signal zum Gatter 1004 zusammen mit ei rom Teil
der Bestimmungsfeldinformation am ß-Fingang des Multiplexers I0O6 diejenige Schaltung, welche zur
Lieferung der Adresseninformation zum WM-Speicher bei einer Schreihoperation zu benutzen ist. Der
WM-Speicher isi bei diesen Operationen der Bestimmungsort
lur die Informationen, die im Augenblick an
die ßestimniungssammelleitung angelegt sind. Der
F.ingang A des Multiplexers 1006 bildet einen Teil des
Feldes .S' I eines Mikrobefehls, und wenn der F.ingang A aktiv ist. gibt das Feld .V I an. welches Schallungselement
des Vorarbeiters als Quelle zu benutzen ist. die die Adressierinformation für den WM-Speicher liefert. Der
Inhalt des adressierten WM-Speichers wird dann an die Quellensammelleiiung I gegeben. Wenn der Eingang B
des Multiplexers 1006 aktiv ist. so gibt das Feld DES die Quelle der Adressierinformation für den WM-Spcicher
an.
Der TM-Speicher 206 in F i g. 2 ist genauer in F i g. 11
dargestellt. Dieser speicher enthält im wesentlichen ein Register 1101. Eingangsschaltungen 1102. Ausgangsschaltungen
1103. ein UND-Glied 1104 und einen Multiplexer 1105.
Der ΓΜ-Speicher stellt Sonderzweckregister für den
Verarbeiter und insbesondere fur den Mikroprogrammabschnitt des Verarbeiters bereit. Die Bauteile 1001,
1002 und 1003 können zweckmäßig zwei integrierte Schaltungen SN 7489 enthalten. Sie sind unter Bildung
eines 32 x4-Speichers organisiert, der das Äquivalent '
von acht Registern mit je sechzehn Bits darstellt. Fünf Bits sind für die Adresseninformation erforderlich. Der
Weg 257 (TPHO-I) liefert die beiden niedrigststelligen
Adressenbits. Diese kommen vom T/M-Register 217 an
und bilden die Byte-Information. Der Ausgang des '
Multiplexer*· 1105 liefert die drei höchststelligen Bits.
Die drei vom Multiplexer gelieferten Adresseninformationsbits
können wahlweise entweder über den Weg 259 oder über den Weg 260 ankommen. Die an die
Wege angelegten Signale kommen vom Mikrospeich 222. Der Weg 259 svird auch als Weg 1503 bezeichne
und führt zu Fig. 15. Die Informationen auf dem We
1503 können entweder die Bits 5 bis 7 oder 9 bis 11 ein
Mikrobefehls gemäß F i g. 25 oder 26 sein. D Multiplexer 1505 in Fi g. 15 gibt auf die nachfolgend ii
einzelnen noch zu beschreibende Weise entweder d Bits 5 bis 7 oder 9 bis Il auf den Weg 1503. Di
Information auf dem Weg 260 besteht aus den Bits 12b 14 des Bestimmungsfeldes (DES) des Mikrobefeh
gemäß Fig. 25 und 26. Der Multiplexer, der ein integrierte Schaltung vom Typ SN 74153 sein kan
wählt das Eingangssignal vom Weg 259, wenn d S/TL-Eingangssignal 1110 eine 0 ist, und wählt d
Eingangssignal vom Weg 260. wenn das SEL-Eingang
signal eine I ist. Das 5i'L-Signal wird vom Zeitsteu
runesenerator 225 geliefert und besimmt. ob d Verarbeite:' sich 'n der Lac'c-I Inirrnhase oder d
Takt-Unterphase eines Mikrobefehls befindet. Di Ausgangsschaltungen 1103 geben dauernd den Inha
der durch die Adresseninformation angegebene Wortstelle auf den Weg 249 mit Ausnahme derjenige
Zeiten, zu denen das Schreibsignal vom Gatter 1104 a
dem Weg 1100 aktiv ist. Das Einschreiben eines Wort'
oder eines Bytes aus einem Wort in das Register 110
geschieht dadurch, daß Adresseninformationen an de Eingang ' !09 des Registers 1101 gegeben und dann e
Schreibsignal über den Weg 1100 an die Eingangsschal
tungen 1102 angelegt wird. Die in das Register HO
einzuschreibenden Daten stehen auf dem Weg 238 ai der von der Bestimmungssamme'leitung 205 ausgeh
Das Schreibsignai auf dem Weg 1100 ist d UND-Verknüpfung des Taktsignals auf dem Weg 110
und des Signals UD \5 auf dem Weg 1108. Das Sign
I'D 15 ist das fünfzehnte Bit des Mikrobefehls gemä
F i g. 25 und 26.
Es sei angenommen, daß bei einer gegebene Operation der ΓΜ-Speicher für einen bestimmte
Mikrobefehl sowohl die Quelle als auch die Bestimmun: ist. Die Phasensignale, die die Byteadresseninformatioi
darstellen, kommen über den Weg 257 an. Die restlich Adresseninformation wird vom Multiplexer 110
geliefert. Während der Lade-Unterphase wird di Adresseninformation am Ausgang des Multiplexer
über den Weg 259 geliefert, da der ΓΜ-Speiche während dieser Unterphase eine Quellenschaltung is
Unter Ansprechen auf diese Adresseninformation von Weg ^!59 geben die Ausgangsschaltungen 1103 de
Inhalt des adressierten Wortes auf den Weg 249, der zu Quellensammelleitung 2 führt.
Die arithmetische Einheit nimmt die Signale von de Quellensammelleitung auf. verarbeitet sie und gibt dan
die verarbeiteten Signale zur Bestimmungssammelle tung 205. Dann wird angenommen, daß diese Signale i
den ΓΜ-Speicher einzuschreiben sind. Bei eine Schreiboperation für den ΓΜ-Speicher wird di
Adresseninformation über den Multiplexer vom We 260 während der Takt-Unterphase geliefert. Da
Schreibsignal auf dem Weg 1106 wird zum Zeitpunk des Taktimpulses für die Unterphase erzeugt, wie ii
Zeitdiagramm angegeben.
Das Datenregister 212 in F i g. 3 ist in F i g. 12 genaue
geze'gt. Es enthält im wesentlichen ein Schieberegiste 1201, einen Eingangsempfänger 1202. Ausgangstreibe
1203 und einen Multiplexer 1204.
Das Datenregister hat vier Funktionen. Es git Informationen oder Daten auf die Datensammelleitun
110 bzw. empfängt von dort Informationen oder Daten.
Außerdem gibt es Informationen über den Weg 231 zu den Quellensamnielleitungen 1 und 2. Weiterhin
empfängt es Informationen über den Weg 232 von der Bestimmungssammelleitung. Daten werden an die
üatensammelleitung 110 gegeben bzw. von ihr aufgenommen,
in 16-Bit-Parallelform. Sie werden auf die
Quellensammclleitungen ausgegeben und von der Bestimmungssammelleitung aufgenommen, im 4-Bit-Byteformat.
Informationen oder Daten werden in das Schieberegister 1201 von der Sammelleitung 110 immer
dann eingegeben, wenn die Anlage· ein Speicherlese-
oder Eirigabe-Ausgabe-Lesekommando ausführt. Dieser Umstand wird durch ein Bestätigungssignal auf der
RDFF-Ader 1205 angegeben, die zu den Ausgangstreibern
1203 und zum Betriebsweise-Eingang (MODE) des Schieberegisters 1201 führt. Dieses Signal bereitet das
Schieberegister aut die Aufnahme von informationen von der Datensammelleiuing vor. Das Signal RDFFist
die logische ODER-Verknüpfung des Umstandcs, daß ein Lesedaten-Flipflop, ein Lesebefehls-Flipflop oder
ein Lese-Eingangs-Ausgangs-Flipflop der Steuerflipflops
226 eingestellt ist. Diese drei Flipflops werden unter Steuerung des Mikroprogramms über das
Steuerfeld des Mikrobefehls eingestellt. Der Bestätigungszustand des Signals RDFF auf dem Weg 1205
schaltet die Ausgangstreiber 1203 ab. Das Signal RDFF versetzt das Schieberegister in die Lage. Paralleldaten
von d^n Eingangsempfängern 1202 aufzunehmen, wenn
das bignal auf der Ader 1206 auf H und dann so
nachfolgend auf L geht. Dadurch wird das Schieberegister mit Paralleldaten aus den Eingangsempfängern
1202 geladen. Das Signal auf der Ader 1206 ist mit LDATA bezeichnet. Dieses Signal wird erzeugt, wenn
das Speichersystem 102 bei einer Speicherleseoperation t5
ein Speicher-Vollständig-Signal über den Weg 112 zurückgibt. Bei einer Ein-Ausgabeleseoperation erzeugt
ein Bitmuster im Steuerfeld des Mikrobefehls das Signal LDATA. Dieses Signal verbindet dann die Datensammelleitung
210 über die Eingangsempfänger 1202 mit -tn
den Paralleldateneingängen des Schieberegisters 1201. Das Schieberegister ist aus vier integrierten Schaltungen
SN 7495 zusammengesetzt, die als 4x4-Speieher
organisiert sind. Die Signale auf den Wegen 1207, 1206, 1209 und 1205 führen zu den entsprechenden Eingängen
aller vier integrierten Schaltungen vom Typ 41 CF. die das Schieberegister bilden.
Der Inhalt des Schieberegisters wird kontinuierlich immer dann über die Ausgangstreiber 1203 auf die
Datensammelleitung 210 gegeben, wenn das Signal RDFFauf dem Weg 1205 kein Bestätigungssignal ist. Es
ist dann nicht erforderlich, daß der Verarbeiter irgendwelche zusätzlichen Signale erzeugt, um eine
Speicherschreib- oder Ein Ausgabe-Schreiboperation mit Bezug auf die Datensammelleitung durchzuführen.
Das Schieberegister nimmt Daten von der Bestimmungssammelleitung
205 auf und gibt sie unter Steuerung der über den Weg 1207 ankommenden
Taktimpulse auf die Quellensammelleitungen. Die Taktimpulse sind in Fig. 28 gezeigt. Es ist ein solcher
Taktimpuls für jede Phase de:; Maschinenzyklus vorhanden. Jedes Eintreffen eines Taktimpulses bewirkt,
daß Informationen im Schieberegister 1201 Byte für Byte verschoben werden. Hinsichtlich der Bestimmungssammelleitung
ist. wenn das Datenregister nicht die durch den Mikrobefehl angegebene Bestimmung ist,
das Signal auf dem Weg 1208 auf L Dadurch aktiviert der Multiplexer 1204 seinen Eingang A. der mit dem
Ausgang des Schieberegisters über den Weg 231 verbunden ist. Dies führt dazu, daß die Datenbytes im
Schieberegister beim Eintreffen jedes Taktimpulses Byte für Byte umlaufen.
Wenn das Schieberegister entsprechend der Angabe durch den Mikrobefehl der Bestimmungsort ist, so ist
das Signal auf der Ader 1208 auf H, der Multiplexer aktiviert einen Eingang B und die Signale auf der
Bestimmungssammelleitung werden zum Multiplexer sowie über den Weg 1209 zum Eingang des Schieberegisters
geführt. Das Taktsignal auf dem Weg 1207 ist während jeder Phase vorhanden und das Eintreffen
dieses Signals für eine Phase läßt die Byte-Information von der Bestimmungssammelleitung in das Schieberegister
eintreten.
Über den Weg 231 werden Daten an die jeweilige Quellensammelleitung gegeben, wenn das Datenregister
durch den iviikrouefeiii als Quelle bc/lciCfinei "wird.
Diese Daten stehen immer zur Verfügung, da die Schieberegisterinformation dauernd umläuft und während
jeder Phase eines Maschinenzyklus über den Weg 231 an seinen Ausgang geliefert wird.
Die Eingangsempfänger sind integrierte Schaltungen SN 7404. Die Ausgangstreiber bestehen aus vier
integrierten Schaltungen SN 7426. Der Multiplexer ist eine integrierte Schaltung SN 74157.
Die Register SC und TPA. die in Fig. 2 als Bauteile
218 bzw. 217 dargestellt sind, werden genauer in Fi g. 13
gezeigt. Das Register SChat die Aufgabe, zwei der vier
Bits der bei Schiebe- und Rotieroperationen ankommenden Information zu speichern, um die Anzahl von
Bitpositionen anzugeben, um die die Schiebeschaltung 501 in F i g. 5 die an ihre Eingänge angelegte
Binärinformation verschieben soll. Da das Register SC /wei Bits speichert, kann es eine Verschiebung um 0, 1, 2
oder 3 Bits angeben.
Das Register SC ist eine 2-Bit-Speicherschaltung. die
aus einer Hälfte einer integrierten Schaltung SN 7475 besteht. Das Eingangssignal des Registers SC umfaßt
die beiden niedrigststelligen Bits der 4-Bit-Schiebeinformation auf der Bestimmungssammelleitung 205. Das
Ausgangssignal des Registers SC geht über den Weg 239 zurück zur arithmetischen Einheit 202, um die
Schiebeschaltung 501 zu veranlassen, die erforderliche Bitverschiebung durchzuführen.
Wenn das Register SC Informationen von der Bestimmungssammelleitung aufnehmen soll, ist das
Signal auf dem Weg 1301 eine 1. Das Signal auf dem Weg 1303 ist 1 während des Taktsignals der in Fig. 28
gezeigten Phase 0. Das UND-Glied 1302 schaltet ein, wenn beide, an seine Eingänge angelegten Signale 1
sind. Dann werden die beiden niedrigststelligen Bits der Schiebeinformation auf der Bestimmungssammelleitung
über den Weg 236 zur nachfolgenden Verwendung durch die arithmetische Einheit in die Speicherschaltung
1301 geführt.
Das 77M-Register 217 enthält einen 2-Bit-Zähler
1305 und Verknüpfungsglieder 1306 und 1311. Der
Zähler 1305 kann eine integrierte Schaltung SN 74161 sein. Das T/M-Register hat die Aufgabe, die durch den
7M-Speicher benötigte Phasen- oder Byteinformation zu erzeugen. Der Zähler 1305 wird jedesmal dann
weitergeschaltet, wenn das Taktsignal auf dem Weg 1307 eine negativ gerichtete Flanke besitzt. Dieses
Signal wird über das Gatter 1306 und den Weg 402 dem Zähler 1305 zugeführt. Der Zähler spricht auf das
Taktsignal nur an, wenn das Signa! LDCNT auf H ist Der Zähler wird auf 0 zurückgestellt, wenn ein Signal L
auf die zum Eingang RS des Zählers führende Leitung 1310 gegeben wird. Das Riickstellsignal auf der Leitung
1310 erzeugt die Decodierlogik 226 in F i g. 2 aufgrund einer Information im Steuerfeld eines Mikrobefehls.
Der Zähler 1305 wird außerdem über die Verknüpfungsglieder 1306 und 1311 immer dann weitergeschaltet,
wenn ein Signal gleichzeitig an beide Adern 1308 und 1309 angelegt wird. Diese Weiterschaltmöglichkeit
ist für eine Schiebeoperation vo 0 bis 3 Bit vorgesehen. Das Signal auf dem Weg 1309 wird durch die
arithmetische Einheit und speziell durch das AROM-Bauteil 1602 innerhalb der arithmetischen Einheit
erzeugt. Das Signal tritt auf dem Weg 1308 zum Vortakt-Zeitpunkt auf. der im Zeitdiagramm dargestellt
ist. Das Register TPA kann parallel mit dem Register SC geladen werden. Dies geschieht über den Weg 403. der
vom Ausgang des Gliedes 1302 im Register SCüber die Steuerlogik 1306 zum Eingang des Zählers 1305 führt.
Zu diesem Zeitpunkt wird das Komplement der beiden höchststeüigen Bits auf der Sammeiieiuing 205 über den
Weg 237 in das Register TPA gegeben.
Fig. 14 zeigt weitere Einzelheiten der Quellensammelleitung
1. Gemäß F i g. 2 und 3 ist die Quellensammelleitung I mit dem Auspnnp des Multiplexers 203-Af
verbunden, dessen Eingänge an die verschiedenen Schaltungen angeschlossen sind, die Informationen über
den Multiplexer und die Qucllensammclleitung I an die arithmetische Einheit geben können.
In F i g. 14 sind die Eingänge des Multiplexers 203-M
auf der linken Seite gezeigt. Sie kommen vom ftM-Speicher 208. vom Datenregister 212. von den R 1-
und /?2-Registern 209 und vom CA/-Speicher 207. Der
Ausgang des Multiplexers ist auf der rechten Seite dargestellt. Er ist mit der Quellensammelleitung 1
verbunden, die zur arithmetischen Einheit 202 führt. Das UND-Glied 1402 und die an die Leitungen 1403 und
1404 angelegten Signale steuern den Multiplexer 203-M und bestimmen, welche der mit seinen Eingängen
verbundenen Quellenschaltungen bei einer Rechneroperation ihre Ausgangsinformationen über den Multiplexer
zur Sammelleitung 203 führen kann. Die Leitung 1404 niir.mt die Bits 5 bis 8 des Mikrobefehlsfeldes 5 1
auf. Gemäß F i g. 25 geben diese Bits an, welche mit dem Eingang des Multiplexers verbundene Schaltung die
Quellenschaltung ist, die ihre Information an die Sammelleitung 203 geben soll. Die vier auf die Leitung
1404 gegebenen Bits stellen die Adresseninformation dar und legen fest, welcher Eingang des Multiplexers
aktiv sein soll.
Die Eingänge des Multiplexers von den Ri- und /?2-Registem umfassen die Wege 234 und 235, die an
einem mit 15 bezeichneten Eingangsanschluß enden. Diese numerische Bezeichnung bedeutet, daß der
Eingang immer dann aktiviert wird, wenn die Binäradresse 15 über den Weg 1404 zugeführt wird.
Entsprechend F i g. 3 werden die beiden in den Registern R1 und R 2 gespeicherten Bytes jeweils
zusammen und byteseriell an die Quellensammelleitungen gegeben. Unter Bezugnahme auf F i g. 7 und
insbesondere die zum Steuereingang des Multiplexers 701 führende Leitung 704 sei erläutert, daß das
Ausgangssignal des Registers R 1 während der Phase 0 über den Multiplexer auf die Wege 234 und 235 gegeben
wird. Aus F i g. 28 ergibt sich, daß das Signal PHO zu diesem Zeitpunkt nicht auf 1 ist, so daß der obere
Eingang des Multiplexers aktiv ist. Während der Phase 1 geht das P//O-Signal entsprechend der Darstellung in
F i g. 28 auf 1 und der untere Eingang des Multiplexers 701 wird aktiviert, so daß das Ausgangssignal des
Registers R 2 über den Multiplexer auf die Leitungen 234 und 235 gegeben wird.
Entsprechend Fig. 14 nimmt der Anschluß 15 des ■j Multiplexers 203-M den Inhalt des Registers R 1
während der Phase 0 und den Inhalt des Registers R 2 während der Phase 2 auf. Für die restlichen beiden
Phasen eines Zyklus, nämlich die Bytes 3 und 4, ist es erforderlich, daß der Ausgang des Multiplexers 203-M
eine 0 führt. Dies wird durch das zum UND-Glied 1402 gehende Signal PH 1 erreicht. Entsprechend F i g. 28 ist
das Signal PH 1 während der Phasen 3 und 4 auf H. Dadurch wird das UND-Glied 1402 eingeschaltet und
legt über die Leitung HOl ein Sperrpotential an den Multiplexer. Dadurch wird der Multiplexer 203-M
veranlaßt, über seinen Ausgang für die Zeit der Bytes 3 und 4 0-Werte auf die Sammelleitung 203 zu geben. Da;
Glied 1402 spricht nur auf eine binäre 15 (1111) an, da
nur dann alle Eingänge UD 5-8 auf H sind.
uii* /um uiiLy-wiicCi i402 laufende Signa! PH ! ist ?,\r,
.Sperrsignal oder Signal zur Erzeugung von 0-Werten am Ausgang des Multiplexers 203-M nur dann wirksam,
wenn eine binäre 15 auf den Weg 1404 gegeben wird, um die Zahl 15 am Eingang des Multiplexers auszuwählen.
Wenn irgendein anderer Eingang des Multiplexers aktiviert ist. steht keine binäre 1 5 auf der Leitung 1404.
Folglich kann das UND-Glied 1402 nicht eingeschaltet werden, obwohl das Signal PH 1 während der Phasen 3
und 4 aller Maschinenzyklen auf H geht. Demgemäß
ίο werden die vier Bytes, die durch alle anderen
Quellenschaltungen an den Eingang des Multiplexers angelegt sind, über den Multiplexer auf die Sammelleitung
203 weitergeführt, wenn der entsprechende Eingang aktiviert wird.
3s Die Quellensammelleitung 2 ist in den F i g. 2 und 3 als
Element 204 gezeigt und genauer in F i g. 15 dargestellt. Die Quellensammelleitung enthält einen Sammelleitungs-Multiplexer
204-M zusammen mit einem Adressensteuer-Multiplexer 1505 und einem Verknüpfungsglied
1502. Gemäß Fig. 2 und 3 kann der Multiplexer 204-M Daten oder Informationen vom ΓΜ-Speicher
206. vom Datenregister 212 sowie von du R\- und
/?2-Registern 209 aufnehmen. Die Ausgangssignale des Multiplexers 204-M werden über die Adern der
Quellensammelleitung 2 zur arithmetischen Einheit 202 geführt. Der Multiplexer 1505 bestimmt, ob die
Adresseninformation, die den Multiplexer 204-M steuert, über den Weg 1508 oder den Weg 1507
ankommt. Die Signale auf dem Weg 1506 bestimmen, welcher Eingang des Multiplexers 1505 aktiv sein soll.
Entsprechend F i g. 25 und 26 werden die Leitung 1507 und der Eingang B des Multiplexers bei einem
arithmetischen Befehl aktiviert. Dann wird der Inhalt des Feldes F2 (UD9-W) als Adresseninformation vom
Multiplexer 1550 über die Leitung 1503 zum Eingang des Multiplexers 204-Λί übertragen. Bei einem Bewegungsbefehl
gemäß F i g. 26 wird der Eingang A erregt und die Bits LJD 5-7 übertragen die Adresseninformation
über den Multiplexer 1505 zum Multiplexer 204-M.
Die Leitung 1503 führt außerdem zu Fig. Π und ist
dort mit dem Eingang A des Multiplexers 1105 verbunden. Dadurch kann der Multiplexer 1505 mit
seinen zugeordneten Schaltungen die Adressierung des ΓΜ-Speichers immer dann steuern, wenn dieser
Speicher eine Quellenschaltung für die Quellensammelleitung 2 sein so!!.
Die Leitung 1504 führt das Signal der Phase 0 und ist während der Bytes 1, 2 und 3 auf H. Dieses Signal H
schaltet zusammen mit einer 7 auf der Leitung 1503 das Glied 1502 ein und sperrt den Samhielleitungs-Multiplexer,
so daß über dessen Ausgangsleitung 204 während der Phasen I. 2 und 3 nur 0-Werte zur ariihmetischen
Einheit gegeben werden. Diese Möglichkeit wird bei den Mikrobefehlen gemäß F i g. 25 und 26 immer dann
ausgenutzt, wenn die Ri- und /?2-Register 209 die Quellenschaltungen sind. Diese sind mit dem Eingang 7
des Multiplexers 204-M verbunden. Wenn das Register 209 eine Quellenschaltung ist, wird nur der Inhalt des
Registers R 2 benutzt und der Inhalt des Registers R 1 nicht beachtet. Während der Phase 0 wird der Inhalt des
Registers R 2 zum Eingang 7 des Multiplexers gegeben, der zu diesem Zeitpunkt durch eine binäre 7 auf der
Leitung 1508 und ein Signal H auf der Leitung 1503 aktiviert ist. Demgemäß wird der Inhalt des Registers
R 2 über die Sammelleitung 204 zur arithmetischen Einheit übertragen.
Die Leitung 1504 ist während der Phase 0 auf L Die Leitung geht während der restlichen Phasen auf H und
schaltet das Ilied 1502 ein. da weiterhin eine biniire 7 an
der Leitung 1503 anliegt. Dadurch wird der Multiplexer 204-M über die Leitung 1501 gesperrt, so daß der
Multiplexer während der Phasen 1, 2 und 3 nur 0-Werte erzeugt.
Die arithmetische Einheit (AMU) 202 in F i g. 2 ist genauer in Fig. 16 dargestellt. Die arithmetische
Einheit ist das arithmetische und logische Herz des Verarbeiters. Alle Daten und Informationen, die
zwischen Bauteilen des Verarbeiters übertragen werden, müssen über die arithmetische Einheit laufen. Die
Einheit enthält ein /!-Register 1603 und ein S-Register
1604, die bei arithmetischen Mikrobefehlen Informationen von den Sammelleitungen 204 bzw. 203 aufnehmen.
Der Inhalt der 1-Quellensammelleitung 204 wird über den Multiplexer 1617 zum .4-Register gegeben. Der
Inhalt der 2-Quellensammeileitung 203 wird direkt zum
ß-Register 1604 gegeben. Dieses Laden der Register A und B aus den Quellensammelleitungen geschieht
während der im Zeitdiagramm angegebenen Lade-Impulszeit. Das tatsächliche Laden findet bei der negativen
Flanke des Impulses statt.
Während eines Bewegungs-Mikrobefehls wird die Information auf entweder der Quellensammelleitung 1
oder der Quellensammelieitung 2 in das Α-Register am
Ende des Ladeimpulses gegeben. Das Register B wird bei Bewegungs-Mikrobefehlen nicht benutzt. Die
Information auf der Quellensammelleitung 1 wird dann in das Λ-Regstier übertragen, wenn der Eingang 0 des
Multiplexers 1617 aktiviert ist. Die Information auf der Quellensammelleitung 2 wird dann über den Multiplexer
in das Register A geführt, wenn der Eingang 1 aktiviert ist. Die Eingangs-Auswahlleitung 1622 wird durch das
Gatter 1616 gesteuert, das eine UND-Verknüpfung des
Umstandes. daß ein Bewegungsbefehl ausgeführt wird (das Signal MOVE ist auf H), mit dem Signal UD09
bewirkt. Jedes Signal ist das Bit 9 des Bewegungsbefehls gemäß Fig. 26. Wenn das Signal eine 0 ist, wird die
Quellensammelleitung I über den Multiplexer mit dem Register A verbunden. Wenn das Signal eine 1 ist. wird
die Quellensammelleitung 2 durch den Eingang 1 des Multiplexers mit dem Α-Register verbunden. Das Glied
1616 verhindert bei arithmetischen Mikrobefehlen eine Auswahl der Information auf der Quellensammelieitung
2 durch den Multiplexer. In solchen Fällen wählt der Eingang 0 des Multiplexers 1617 das Eingangssignal der
Quellensammelleitung I, da die Leitung MOVE bei
arithmetischen Befehlen auf L ist.
Die Register A und B bestehen jeweils aus integrierten Schallungen SN 74298. In einer solchen
Schaltung ist der 2: !-Multiplexer 1617 als integraler
Bestandteil enthalten. Diese Möglichkeit wird bei dem Register B nicht ausgenutzt und nur ein Eingang,
nämlich der von der Quellensammelleit.ng 2, wird dauernd als Eingang des Registers ß6ewählt.
Die Ausgangssignale der Register A und ß gehen über die Leitungen 1638 und 1639 zu den Eingängen der
ALU-Einheit 1601 und der Schiebeschaltung 501. Das Ausgangssignal der ALU-Einheit wird vom Anschluß F
zum Eingang 0 des Multiplexers 1609 geführt. Das Ausgangssignal der Schiebeschaltung 501 wird über die
Leitung 1637 zum Eingang A des Multiplexers gegeben. Unter Steuerung von Signalen aus dem AROM-Speicher
1602 auf der Leitung 1633 können die Signale entweder am A- oder am ß-Eingang des Multiplexers
1609 selektiv über den Multiplexer /.1Jr Bestimmungssammelleitung 205 geführt werden. Die ALU-Einheit
wird außerdem bei Bewegungsoperationen benutzt. Dabei nimmt sie das Ausgangssignal des /4-Registers
auf, führt die erforderlichen Bewegungsoperationen aus und gibt die Ergebnisse dieser Operationen über den
Multiplexer 1609 zur Bestimmungssammelleitung. Die ALU-Einheit besteht aus einer integrierten Schaltung
SN 4181 und die Schiebeschaltung 501 aus zwei integrierten Schaltungen SN 74153.
Die Schiebeschaltung 501 wird bei Schiebeoperationen
benutzt. Dabei nimmt sie gleichzeitig die Ausgangssignale der Register A und B auf, verschiebt vier Bits
dieser Information bei jedem Byte um die erforderliche Anzahl von Positionen und gibt die vier verschobenen
Bits an den Eingang .4 des Multiplexers 1609 und über diesen zur Bcstimmungssammelleitung 205. Die beiden
Bits, die den Betrag der erforderlichen Verschiebung angeben, werden der Schiebeschaltung vom SC-Register
218 über die Leitung 239 zugeführt.
Fig. JD zeigt in Form einer Wahrheitstabelle die
verschiedenen Funktionen, die der AROM-Speicher 1602. die ALU-Einheit IbOl und die Schicbeschaltung
501 zusammen aufgrund von Eingangserregungen ausführen, die der AROM-Speicher in Form von
Adresseninformationen erhält. Die beiden am weitesten links stehenden Spalten in Fig. 30 geben die / :Vesseninformation
an. die der Speicher AROM bei jeder Operation aufnimmt, die er steuert. Das höchststellige
Bit der Α/?ΟΛ/-Adresseninformation ist in der ersten
Spalte dargestellt und kommt über die Ader ARTH der Leitung 1621 an. Wenn dieses Bit wahr ist (eine 0). so
gibt es an, daß ein arithmetischer Mikrobefehl ausgeführt werden soll. Diese Befehle werden durch die
Adressen 0 bis 15 in der zweiten Spalte in Fig. 30 dargestellt. Die vier niedrigststelligen Bits der Adresseninformation
sind in der zweiten Spalte angegeben. Diese vier Bits werden an die Leitung 1620 angelegt. Sie
enthalten den Inhalt des arithmetischen Feldes eines Mikrobefehls der in F i g. 25 angegebenen Art.
In der zweiten Spalte in F i g. 30 geben die Adressen 0
bis 5 logische Operationen oder Funktionen an. die jeweils in der vierten Spalte von links bezeichne·, sind.
Die Adressen 6 bis 12 stellen arithmetische Befehle und
Befehle zur Verschiebung nach links um eine Position der in der dritten Spalte von links angegebenen Art dar.
Die Adressen 13 und 14 sind leer und werden nicht benutzt. Die Adresse 15 ist eine Schiebeoperation mit
einem beliebig steuerbaren Betrag. Die Adressen !6 bis
31 sind alle gleich und betreffen Bewegungsoperationen.
Die dritte Spalte von rechts in Fig. 30 gibt denjenigen
Eingang des Multiplexers 1609 an, welcher für jede der
verschiedenen Adressen aktiviert ist. Die zweite Spalte von rechts gibt denjenigen Eingang des Multiplexers
1606 an, welcher für die jeweilige Adresse aktiviert ist. Die am weitesten rechts stehende Spalte gibt den
Zustand an, in welchen das Flipflop 1607 für jede der verschiedenen Adressen während des Vortaktintervalls
geschaltet wird. Die für die Adressen 16 bis 31 angegebenen Bewegungsbefehle sind alle untereinander
gleich, so daß nur die Einzelheiten des Befehls 16 dargestellt sind. F i g. 30 zeigt nur diejenigen Funktionen
der arithmetischen Einheit, bei der die ALU-Einheit 1601 beteiligt ist. Die von der Schiebeschaltung 501
durchgeführten Schiebeoperationen sind in Fig.30 nicht angegeben, da bei ihnen die ALU-Einheit nicht
beteiligt ist.
Zur genaueren Beschreibung der arithmetischen Einheit sei angenommen, daß sie eine Phase eines
arithmetischen Befehls gemäß Fig. 25 ausführt. Es sei
weiter angenommen, daß die Lade-Unterphase bereits durchgeführt ist. Dies bedeutet, daß die A- und
ß-Register 11603 und 1604 Daten von den Quellensammelleitungen
aufgenommen haben. Dann müssen diese Daten, die jetzt bearbeitet werden sollen, gegebenenfalls
über die Schiebeschaltung 501 zum richtigen Eingang des Multiplexers 1609 und dann über den
Multiplexer zur Bestimmungssammelleitung 205 geführt
werden. Die Art des arithmetischen Befehls, der jetzt ausgeführt werden soll, legt fest, ob der Inhalt der
Register A und B über die Einheit ALU oder über die Schiebeschaltung zum Multiplexer 1609 zu übertragen
ist. Die Einheit ALU wird bei Funktionen der in F i g. 30 angegebenen Art benutzt (links verschieben um 1.
arithmetische oder logische Funktionen). Die Schiebeschaltung wird bei allen Schiebeoperationen außer der
benutzt, die für die Adresse 12 dargestellt ist.
Zur Beschreibung einer typischen Operation des Verarbeiters sei angenommen, daß der für die Adresse 7
gezeigte Addierbefehl ausgeführt werden soll. In diesem Fall gibt entsprechend F i g. 30 der Speicher A ROM die
erforderlichen Ausgangssignale über Leitungen 1628 und 1629 zu den oberen beiden Eingängen der Einheit
ALU, um diese auf die Addieroperation vorzubereiten. Wie in Zeile 7 in Fig.30 angegeben, wird jetzt der
Eingang ßder Multiplexer 1606, 1609 aktiviert und das
Flipflop 1607 wird zurückgestellt. Zu diesem Zweck wird ein Signal H durch den Speicher AROM auf die
Leitung 1633 gegeben, um den Eingang B des Multiplexers 1609 zu wählen. Ferner wird ein Signal H
auf die Ader 1629 gegeben, um den S-Eingang des Multiplexers 1606 zu wählen. Die Ader 1632 wird auf H
und die Ader 1630 auf L gebracht. Diese beiden Signale bringen zusammen das Flipflop 1607 in den Rückstellzustand.
Die vorstehenden Operationen bewirken die Vorbereitung der Einheit ALU und der restlichen Schaltungen
gemäß Fig. 16 zur Durchführung einer Addieroperation.
Die Aktivierung des Eingangs B des Multiplexers 1609 bewirkt die Auswahl des Ausgangs F der Einheit
ALU. Wie in F i g. 30 angegeben, steht am Ausgang F zu diesem Zeitpunkt die Summe der Eingangssignale A und
B. Diese Ausgangsinformation wird über den Multiplexer 1604 auf die Bestimmungssammelleitung 205
gegeben. Wenn die Summe der Eingangssignale A und B einen Übertrag für das nächste Byte erfordert, wird das
Ubertnigssignal von der F.inheit ALU über die Ader
1635 zum /Mjneang des Multiplexers 1606 gegeben.
Von (inrt wird es zum D-Eingang des Flipflops 1607
übertragen. Entsprechend der Darstellung in Fig.31 wird zum Taktzeitpunkt der Übertrag'- oder Nichtübertrags-Zustand
des gerade durch die Einheit ALU verarbeiteten Bytes in das Flipflop übertragen. Wenn
ein Nichtübeurags-Zustand angegeben wird, bleibt das Flipflop im rückgestellten Zustand. Es wird eingestellt,
wenn ein Signal für einen Übertragszustand in Form eines Signals H am D-Eingang des Flipflops ankommt.
Der Übertrags- oder Einstellzustand des Flipflops wird
to beim nächsten Durchgang von der Einheit ALU verwendet und kommt in Form eines Signals vom
Ausgang Q des Ripflops über die Ader 1634 am Eingang Übertrag, Eingang der Einheit ALU an.
Die an die Sammelleitung 205, welche die Bestimmungssammelleitung ist, angelegte Information wird zu
einer der Bestimmungsschaltungen übertragen, die mit der Bestimmungssammelleitung verbunden ist Dies
kann beispielsweise der Speicher TM, der Speicher CM,
der Speicher RM. das Register SC. das Register SAR oder das Datenregister sein.
Nachfolgende Bytes des Wortes mit vier Byte werden von der arithmetischen tinheit auf entsprechende
Weise wie eben für das erste Byte beschrieben, addiert und verarbeitet. Wenn das letzte Byte einen Übertrag
enthält, so wird dies durch das Flipflop 1607 angezeigt und der Übertragszustand des Flipflops 1607 bewirkt
die Einstellung des Flipflops 1636. Dadurch wird ein diesen Zustand anzeigendes Signal an die CF-Ausgangslcitung
1641 der ar'.hmetischen Einheit gegeben. Das Flipflop 1636 wird nur dann eingestellt, wenn beide
Eingänge des Gatters 1612 zu diesem Zeitpunkt auf H sind.
Vorstehend ist beschrieben worden, wie die arithmetische Einheit eine Addieroperation durchführt. Ent-
J5 sprechend Fig.30 gibt eine Eingangsadresse 15 eine
Rcchtsschiebeoperation an. Diese benutzt die Einheit ALU nicht. Bei Eintreffen der Adresse 15 im Speicher
AROM wird der Eingang A der beiden Multiplexer 1609, 1606 gewählt und außerdem das Flipflop 1607
eingestellt. Die Schiebeschaltung 501 empfängt jetzt den Inhalt der Register A und B, verschiebt diese
Information um die Anzahl von Bitpositionen, die durch die über die Leitung 239 vom 5C-Register 218
ankommenden Signale angegeben werden, und über-
^5 trägt ein die verschobene Information darstellendes
4-Bit-Byte über die Leitung 1637 zum /4-Eingang des Multiplexers 1609. Von dort wird das verschobene Byte
über den Multiplexer zur Bestimmungssammelleitung 205 übertragen.
so Ein Zustand mit nur 0-Werten auf der Bestimmungssammelleitung
wird für bestimmte logische Operationen festgestellt, die der Verarbeiter durchführt. Dies
geschieht mit Hilfe der Verknüpfungsglieder 1614 und 1613, wobei das Ausgangssignal des Gliedes 1613 an der
Eingang A des Multiplexers 1606 angelegt wird. Solange ein Zustand mit nur 0-Werten für jedes Byte festgestellt
wird, bleibt das Flipflop 1607 im eingestellten Zustand Bei Auftreten eines Nichtnull-Zustandes auf der
Bestimmungssammelleitung wird das Flipflop jedoch in den Rückstellzustand umgeschaltet. Es kann dann nicht
bei der gleichen Operation eingestellt werden.
Ein Bewegungs-Mikrobefehl gemäß Fig. 26 bewirkt
daß die arithmetische Einheit mit folgenden Ausnahmer auf ähnliche Weise arbeitet, wie oben bereits beschrie·
ben. Die Einheit ALU wird über die Adern 1628 um: 162") auf den Empfang des Inhalts des Registers A
vorbereitet und überträgt ihn ohne Änderung an der Ausgang /-'der Einheit ALU. Beim Multiplexer 1606 ist
der Eingang A aktiviert und nimmt das Ausgangssignal
des Gliedes 1613 auf, um auf die bereits beschriebene Weise einen Zustand mit nur O-Werten auf der
Bestimmungssammelleitung festzustellen. Beim Multiplexer 1609 ist der Eingang B aktiviert und nimmt das
Signal am Ausgang Fder arithmetischen Einheit auf und ,
gibt es auf die Bestimmungssammelleitung 205. Das Flipflop 1607 ist vorher während der Vortaktzeit
eingestellt worden, wie in der rechten Spalte in F i g. 30 für einen Bewegungsbefehl mit den Adressen 16 bis 31 |
des Speichers AROM angegeben. Wenn die arithmetische Einheit auf die beschriebene Weise vorbereitet ist,
wird jedes Byte in das .A-Register 1603 eingegeben und ; dann über die arithmetische Einheit und den Multiplexer
1609 der Bestimmungssammelleitung zugeführt Wenn bei einer Phase ein Byte festgestellt wird, das nicht 0 ist,
so wird das Flipflop 1607 auf 0 zurückgestellt und dieser Zustand festgehalten.
F i g. 17 zeigt genauere Einzelheiten des M AC-(Mikroadressenzähler)-Zählers
220, des Multiplexers 221, des Registers 219 sowie der diesen Bauteilen zugeordneten
Steuerschaltungen. Der Zähler 220 ist ein 12-Bit-Binärzähler,
der parallel mit zwölf Bits gleichzeitig geladen, um 1 weitergeschaltet oder auf einen Zustand mit nur
0-Werten gelöscht werden kann. Dem Löscheingang wird das Signal RSMAC zugeführt, das den Zähler
löscht. Dies tritt in typischer Weise bei einer Programmunterbrechung oder bei Feststellung eines
Bauteilfehlers auf. Da das Signal zu jedem Zeitpunkt ankommen kann, handelt es sich um ein asynchrones
Signal. Der Lade-Eingang des Zählers ist mit der Ader LDCNT verbunden und der Takteingang mit der Ader
SRTUT. Die Lade- und Takt-Eingangssignale sind synchrone Signale. Wenn das Lade-Eingangssignal bei
einer positiv gerichteten Flanke des Takt-Eingangssignals auf L ist, wird das Ausgangssignal des Multiplexers
221 parallel in den Zähler 220 geladen. Wenn das Lade-Eingangssignal während einer positiven Flanke
des Takt-Eingangssignals auf H ist, wird der Zähler 220 lediglich um 1 weitergeschaltet. Der Zähler 220 enthält
drei integrierte Schaltungen SN 74161 und der Multiplexer 221 drei integrierte Schaltungen SN 74157.
Die Eingänge des Multiplexers 221 sind mit A und B
bezeichnet, wobei der Eingang A über die Leitung 243 mit dem Ausgang des MÄS-Zählers 219 verbunden ist,
und der Eingang B an der Leitung 230 liegt. Der Multiplexer 221 überträgt die ß-Eingangsinformation
an seinen Ausgang, wenn das Steuersignal SUBOP auf H ist. Die ,4-Eingangsinformation wird an den Ausgang
gegeben, wenn das Signal SUBOP auf L ist. Dem so Eingang ß wird das Ausgangssignal des MikroSpeichers
222 über die Adern UDO bis UD Il der Leitung 230
zugeführt. Diese Information stellt die Adresse des nächsten Mikrobefehls dar.
Das Ausgangssignal des Registers 219 kann die Rückkehradresse eines MikroUnterprogramms darstellen,
die vom Zähler 220 über die Leitung 244 und den Eingang A des Multiplexers 1702 ankommt. Alternativ
kann das Ausgangssignal die sieben Bits des Programm-Operätiönscode
darstellen, die der Multiplexer 1702 an &o seinen Eingang B über die Leitung 210 von der
Datensammelleitung aufnimmt. Entsprechend der Darstellung in den Fig. 21 -24 befinden sich diese sieben
Hits des Operationscode in den Bitpositionen 8-14 der Programmwörter, die der Venirbeiter vom Speichersystern
102 in F i g. I erhält.
Die Operalionscodebefehlc werden über die Leitung 210. den Multiplexer 1702. das Register 219 und den
Multiplexer 221 dem MAC-Zähler 220 zugeführt Jeder
Operationscode gibt auf besondere Weise das Anfangswort eines Blockes von Wörtern an, der jeweils im
Mikrospeicher 222 ein anderes MikroUnterprogramm umfaßt Wenn der AiAC-Zähler einen bestimmten
Operationscode empfängt, so wird der Mikrospeicher 222 auf das Anfangswort desjenigen Blockes von
Wörtern gebracht, welchen der Verarbeiter benötigt, um die durch den Operationscode angegebene Arbeit
durchzuführen. Dabei erfolgt ein sequentieller Zugriff zu den Wörtern des benötigten Blockes durch den
AiAC-Zähler 220. Der Zähler benötigt dabei keine
Adresseninformation vom Multiplexer 221, da er automatisch jeweils um einen Schritt weitergeschaltet
wird, wenn der Lade-Eingang während einer positiven Flanke des Takt-Eingangssignals auf H ist Demgemäß
wird für alle Mikrospeicher-AdressierfunktioDeij, bei
denen jeweils ein Zugriff zum unmittelbar folgenden Wort eines Mikrospeicherprogramms erfolgen soll, der
M/4C-Zähler mit diesem Hilfsmittel jeweils um einen
Schritt weitergcschaltet. Der Zähler 220 benötigt so
lange keine Adresseninformationen, bis der Mikrospeicher 222 auf eine Speicherstelle springen soll, die nicht
die nächste in der Folge ist, sondern der Anfang eines anderen Programms oder Unterprogramms.
Nachfolgend wird beschrieben, wie die Schaltungsanordnung gemäß F i g. 17 die Unterprogramm-Rückkehradresse
des Mikrospeichers zurückbehält. Es sei angenommen, daß die Mikrospeicher-Steuerung die für
ein bestimmtes Mikrowort erforderliche Arbeitsfunktion ausgeführt hat. Es sei ferner angenommen, daß der
MA C-Zähler 220 auf die bereits beschriebene Weise um einen Zählwert weitergeschaltet worden ist. Schließlich
sei angenommen, daß beim Lesen des letzten Wortes aus dem Mikrospeicher 222 ein Sprung auf ein
Mikrospeieher-Unterprogramm erforderlich ist. Dann wird die Steuerader INSREQ für den Multiplexer 1702
auf L gebracht, um dessen Eingang A zu aktivieren. Die Information am Eingang A wird dann mittels eines
Signals auf der Leitung 1706 in den MKS-Zähler 219 geführt. Diese Information enthält die Adresseninformation
auf der Leitung 244 und gibt die Position an, auf die der M/4C-Zähler weitergeschaltet worden ist.
Gleichzeitig wird der Eingang B des Multiplexers 221 aktiviert, indem die Steuerader SUBOP auf H gebracht
wird. Der Eingang B erhält jetzt über die Leitung 230 das Ausgangssignal des Mikrospeichers 222. Dieses
Ausgangssignal gibt die Mikrospeicher-Adressenstelle desjenigen Unterprogramms an, auf -velches der
Mikrospeicher springen soll. Die Information wird durch einen Multiplexer 221 an den MAC-Zähler 220
angelegt, der danr den Mikrospeicher 222 auf die angegebene Unterprogramm-Adressenstelle springen
läßt.
Der Multiplexer 1702 arbeitet derart, daß immer dann, wenn das Signal INSREQ auf L ist, der Eingang A
des Multiplexers aktiviert ist und die Information auf der vom Ausgang des /VMC-Zählers kommenden
Leitung 244 in das Register 219 geladen wird. Dieses Laden findet dann statt, wenn alle Eingänge des Gliedes
1704 a if dem richtigen Wert sind. Dadurch wird der Ladeeingang des M/?5-Registers 219 über das Glied
1703 auf I gebracht und dann das Alisgangssignal des /VMC-Zählers in das MRS-Register geladen. Wie bereits
beschrieben, findet diese Operation kurz vor Ausführung einer Anforderung nach einem Sprung auf ein
Unterprogramm statt. Auf diese Weise speichert das Register 219 die Unterprogramni-Rückkehradresse.
3Ψ
Es wird jetzt das Unterprogramm ausgeführt, wobei
der Mikrospeicher und der AMC-Zähler jeweils um
einen Schritt weitergeschaltet werden, um sequentiell einen Zugriff zu denjenigen Wörtern zu gewinnen, die
das Unterprogramm bilden. Das Endwort jedes Unterprogramms stellt ein »Unterprogramm-Ende«-
Kommarido dar. Dieses Kommando bewirkt, daß die im
MftS-Zähler 219 gespeicherte Adresseninformation
über den Multiplexer 221 zum MAC-Zähler geführt
wird, um diesen auf die angegebene Adresse einzustellen.
Nachfolgend wird beschrieben, wie die vom Speichersystem 102 kommenden sieben Bits des Operationscode
im Register 219 gespeichert werden. Das Signal INSREQ ist auf H und zeigt an, daß dem Verarbeiter ein
Speicherbefehl vom Speichersystem 102 zugeführt wird. Das Speichersystem erzeugt ein »Spetcher-fertig«-Signal,
wenn es seine Funktion beendet hat, und dann wird das Signal IMCOMPauf H gebracht. Dadurch erzeugen
die Glieder 1703 und 1703 ein Signal H, das ein Ladesignai für das Register /VmS ist. Das Register wird
dadurch veranlaßt, die jetzt am Eingang B des Multiplexers 1702 anstehende Information aufzunehmen.
Von dort wird der Operationscode im Register 219 über den Multiplexer 221 in den MAC-Zähter geführt,
der wiederum den Mikrospeicher 2?2 auf die erforderliche Adresse einstellt.
Man beachte, daß die Operationscodeinformation, die der Zähler MRS erhält, nur sieben Bits umfaßt, während
der MAC-Zähler 220 ein 12-Bit-Zähler ist. Die sieben
Bits des empfang nen Operationscode werden in den Bitpositionen 1-7 des Registers "M9 eingegeben. Die
restlichen Bits, die der Zähler 220 benötigt, sind fest mit dem ß-Eingang des Multiplexers 17P2 auf die folgende
Weise verdrahtet. Das Bit 0 ist dauernd eine Null, die Bits 8, 9 sind dauernd eine 1, und die Bits 10, 11 sind
dauernd Null. Diese feste Verdrahtung bringt den Operationscode auf eindeutige Weise in eine Starttabelle
im Mikrospeichersystem, so daß jeder ankommende Operationscode den MAC-Zäh\er und den Mikrospeicher
222 auf das Anfangswort des benötigten Blocks von Programmwörtern bringt.
Der Zähler MRS enthält drei integrierte Schaltungen
SN 74298. Diese Schaltungen sind Speicher-Multiplexer und enthalten sowohl den M/?S-Zähler 219 als auch den
Eingangsmultiplexer 1702.
Es sei jetzt erwähnt, daß die Schaltungen gemäß F i g. 2 sich von demjenigen der F i g. 17 im Hinblick auf
die Art und Weise geringfügig unterscheiden, wie die Information auf der Leitung 210 in Fig.2 an den
MAC-ZMzt 22Ü angelegt wird. In Fig.2 ist zur
Vereinfachung und zur Erleichterung des Verständnisses die Leitung 210 direkt an den Eingang des
Multiplexers 221 angeschaltet. In Fig. 17 liegt die Leitung 210 nicht direkt an einem Eingang des
Multiplexers 221, sondern ist statt dessen mit dem Eingang B des Multiplexers 1702 und dann mit dem
Eingang des M/?S-Registers 219 verbunden. Vom
Ausgang des Registers 219 werden die Signale auf der Leitung 210 zum Eingang A des Multiplexers 221 und
dann /.um MAC-Zäh\er 220 geführt. Insgesamt zeigt
fig. 17 die bevorzugten Schaltungseinzelheiten für die
Art und Weise, wie der M/AC-Zähler 220 mit der
Leitung 210 verbunden werden kann. Fig. 2 zeigt eine vereinfachte Version.
Fig. 18 enthält weitere Einzelheiten für die Schaltungen
und Bauteile, die den Mikrospeicher 222 in F i g. 2 bilden. Wie gezeigt, enthält der Mikrospeicher die
Mikrospeicher-FestwertspeicherfROM) 1801, Mikroregister
(latch) 1802 und einen Mikrospeicher-Zeitgeber 1803. Die Mikrofestwertspeicher 1801 enthalten sechs
integrierte Signetics-Schaltungen 2580, die so angeordnet und verdrahtet sind, daß sie ausschließlich des
Paritätsbits einen 2048 χ 23-Bit-Speicher bilden. Die Adresseninformation für die Festwertspeicher kommt
vom MAC-Zähler 220 über die Leitung 244. Das
ίο Synchron- oder Lesesignd kommt vom Mikrospticher-Zeitgeber
1803 über die Leitung 1804. Das Ausgangssignal der Festwertspeicher wird über die Leitung 1806 an
die Mikroregister 1802 gegeben.
Die Reihenfolge der Operationen ist die folgende:
Der Zeitsteuerungsgenerator erzeugt am Beginn eines Mikrobefehls das Signal SRTUT, das den Mikrospeicher-Zeitgeber
1803 veranlaßt, den Zugriff zu den Festwertspeichern 1801 beginnen zu lassen. Unter
Steuerung der Adresseninformation auf der Leitung 244
werden die Festwertspeicher gelesen und der Inhalt des adressierten Wortes wird über die Leitung 1806
ausgegeben und in die Mikroregister 1802 übertragen. Dies erfolgt unter Steuerung eines Ladesignals, das vom
Mikrospeicher-Zeitgeber 1803 erzeugt und über die
Leitung 1805 zu den Mikroregistem gegeben wird. Der Zeitgeber gibt ein Signal UCYCCP über die Leitung
1807 zurück, wenn er das Auslesen der Festwertspeicher und die Eingabe des ausgelesenen Inhalts in die
Mikroregister 1802 beendet hat. Das Ausgangssignal
der Mikroregister wird über die Leitung 230 an die Decodierlogik 226 übertragen, die die Steuersignale
erzeugt, welche die Anlage gemäß F i g. 2 und 3 benötigt, um die mit dem aus dem Mikrospeicher 222
gelesenen Wort zugeordneten Arbeitsfunktionen auszuführen.
Die Mikroregister 1802 umfassen sechs integrierte Schaltungen SN 74298. Der Mikrospeicher-Zeitgeber
1803 ist eine integrierte Schaltung SN 74161, die als Zeitgeber arbeitet, ferner eine integrierte Schaltung
SN 7474, die Flipflops bildet, un<i eine integrierte
Schaltung SN 7408, die Verknüpfungsglieder beinhaltet. F i g. 19 zeigt weitere Einzelheiten des Bestimmungsdecoders, der Teil der Decodierlogik 226 in F i g. 2 ist.
Der Bestimmungsdecoder legt fest, wo die Information zu speichern ist, die die arithmetische Einheit 202 an die
Bestimmungssammelleitung 205 gibt. Der Bestimmungsdecoder ist mit vier der Adern UD- verbunden,
die den Ausgang des Mikrospeichers 222 bilden. Der Decoder ist ein 4-auf-16-Decoder und decodiert die vier
Bits des Bestimmungsfeldes eines Mikrobefehls gemäß F i g. 25 und 26, um diejenige Schaltung festzulegen, die
die Information auf der Bestimmungssammelleitung aufnehmen soll. Das Verknüpfungsglied ERMnimmt die
Ausgangssignale der Positionen 0,1 und 2 des Decoders auf und erzeugt ein Signal RM. Dieses Signal gibt an,
daß der KM-Speicher 208 die Information von der Bestimmungssammelleitung aufnehmen soll. Die Positionen
7 und 8 des Decoders erzeugen über ein Gatter ESAR ein Signal EWSAR. Dieses Signal führt
entsprechend Fig.32 zum S/A/?-Register 215 und
veranlaßt dort, daß die Information auf der Bestimmungssammelleitung 205 in das Register SAR und dann
auf die Adressensammelleitung 111 gegeben wird. Das 6
Verknüpfungsglied WL 1 kombiniert das Ausgangssignal 4 des Decoders und das Taktsignalende im Signal
der Phase 0 (Signal CPHSO). um das zum Laden des L-Registers 216 erforderliche Taktsignal zu gewinnen.
Der obere Eingang des Gliedes WL1 ist mit dem
Ausgang 4 des Bestimmungsdecoders verbunden.
F i g. 20 zeigt weitere Einzelheiten des Steuerfelddecoders,
der ebenfalls Teil der Decodierlogik 226 In
F i g. 2 ist Der Steuerfelddecoder ist mit den i/D-Adern
0 bis 4 am Ausgang des Mikrospeichers 222 verbunden und decodiert diese Informationen zur Erzeugung der
auf der rechten Seite des Decoders gezeigten Ausgangssignale. Die entsprechenden Ausgangsanschlüsse
sinH mit 0 bis 15 bezeichnet Der. Decoder setzt
vom Binärsystem auf l-aus-16 um, wobei jede
Kombination von binären Eingangssignalen, die an die linke Seite, angelegt werden, zur Erzeugung eines
Signals an einen besonderen Ausgangsanschluß führt Der Eingang G 2 des Decoders ist ein Takteingang, der
den Zeitpunkt steuert zu dem die ankommende Binärinformation als l-aus-16-Signal an den Decoder- U
ausgang gegeben wird.
Fig.32 zeigt in tabellarischer Form die Quellenschaltungen
für die Steuersignale, die die verschiedenen Schaltungen des Verarbeiters erhalten. So ist beispielsweise
links oben gezeigt daß die arithmetische Einheit » 202 zwei Signale vom Mikrospeichcr (MS) 222 und sechs
unterschiedliche Signale vom Zeitsteuerungsgcnerator
(TG) 246 erhält Der Speicher RM erhält Signale von der Decodierlogik (DL) 226, dem Mikrospeicher und
dem Zeitsteuerungsgenerator. Die Register SC und TPA erhalten Steuersignale von der Decodierlogik, dem
Zeitsteuerungsgenerator und der arithmetischen Einheit (AMU). Die übrigen Teile der F i g. 32 dürften ohne
weitere Erläuterung verständlich sein.
F i g. 34 und 35 zeigen die zeitliche Beziehung » zwischen den verschiedenen Steuersignalen, die die
Schaltungen gemäß F i g. 17 und 18 erhalten. Die Signale ι
3401 und 3402 orientieren die restlichen Signale in;
Fig.34 zeitlich sowie mit Bezug auf die Signale in;
Fig.31. Das Signal 3401 ist das gleiche Signal wie das j
Phase-O-Signal in Fig.31, und das PÄDCLK-Signal
3402 ist das gleiche Signal wie das Signal PRECLK in Fig.31.
Das Signal 3403 stellt die Spannung auf der Ader 1805 dar. Ein Signal H auf dieser Ader bewirkt ein Laden der
Mikroregister 1802 vom Ausgang der Mikrofestwertspeicher 1801.
Das srÄL/T-Signal 3404, das von einem negativen auf
einen positiven Wert umschaltet wenn die Adern LDCNT und RSMAC auf H sind, schaltet den
M4C-Zähler 220 um eine Position weiter. Wie bereits beschrieben, erfolgt dadurch ein Zugriff zum nächsten j
Wort der Mikrofestwertspeicher 1801. Das nächste! Auftreten des Signals 3403 auf der Leitung 1805 bewirkt;
ein Laden der Mikroregister 1802 durch das neu
adressierte Wort der Mikrofestwertspeicher. j
Die Signale 3405 und 3406 beziehen sich auf | Bedingungen der Anlage, bei der das Mikroprogramm
einen Abzweig antrifft, bei dem das Ausgangssignal der! Mikroregister 1802 die nächste Mikroprogrammadresse.
angibt, auf die der M4C-ZähIer 220 eingestellt werden | soll. Diese Information wird über den Eingang B des !
Multiplexers 221 zum AMC-Zähler 220 zurückgegeben.
Daher ist es erforderlich, daß zu diesem Zeitpunkt die St/ßOP-Steuerader des Multiplexers auf H ist. Wenn *o
das Signal 3405 zum ersten Mal negativ wird, schaltet es den M4C-Zähler 220 um einen Schritt weiter. Wenn das
Signal 3405 zum zweitenmal negativ wird (Rückflanke des Signals), wird der MAC-ZMer mit der Adresseninformation
eingestellt die sich im Augenblick auf der Leitung 230 befindet da jetzt die Ader LDCNTtaif L ist
Der MAC-Zähler veranlaßt wiederum einen Zugriff zu
demjenigen Mikroprogrammwort auf den er durch dieses Signal eingestellt worden ist
Das Signal 3407 stellt das zusätzliche Steuersignal ι dar, das zur Ausführung einer Unterprogrammanforde-I
rung nötig ist Die Signale 3405 und 3406 führen die bereits erläuterten Funktionen aus. Bei einer Unterprogrammanforderung
ist es jedoch erforderlich, die Adresseninformation aufzubewahren, die die Position
angibt auf die der Zähler MAC weitergeschaltet worden ist Dies geschieht durch das Signal 3407, das die
Adresseninformation auf der Leitung 244 in den MKS-Zähler 219 eingibt Die Information wird dem
Register 219 über den Eingang A des Multiplexers 1702 zugeführt
Das Signal 3408 ist das Steuersignal, das am Ende einer UnterDrogrammanforderung erzeugt wird. Es
wird auf die Leitung 1706 gegeben und bewirkt daß der augenblickliche Inhalt des MAS-Registers 219 in den
MÄC-Zähler geladen wird. Dies geschieht unter Steuerung des an den Multiplexer 221 angelegten
Steuersignals SUBOP. Dieses Steuersignal ist auf L, um den Eingang A des Multiplexers 221 zu aktivieren, so
daß der Inhalt des Registers MRS in den M/lC-Zähler
gegeben werden kann.
Fig.35 zeigt die Anlagensteuersignale, die das
Eintreten eines Programmwortes aus dem Speichersystem in den MAC-Zähler 220 steuern. Das Signal 3501
gibt das Ende des Phase-3-Signals in Fig.31 an. Das Signal CTLPLSist identisch mit dem in F i g. 31 und tritt
unmittelbar bei Beendigung des Phase-3-Signals auf. Das /JVS/?E(?-Signal 3503 aktiviert, wenn es auf H geht
den Eingang B des Multiplexers 1701, so daß das an die Leitung 210 angelegte Programmbefehlswort über den
Multiplexer 1702 in das MKS-Register 219 eintreten kann. Dies geschieht zu dem durch den Pfeil oberhalb
des Signals 3503 angegebenen Zeitpunkt Das /M-COMP-Signal
3504 und das /MS/?£<?-Signal 3503
scha! en das UND-Gatter 1705 ein, so daß das
MKS-Register mit dem Programmwort auf der Leitung 210 über den Eingang B des Multiplexers 1702 geladen
werden kann.
Das SL/ßOP-Signal 3505 ist für die gesamte
Operation auf L Dadurch wird der Eingang A des Multiplexers 221 betätigt gehalten. Anschließend wird,
nachdem beide Signale 3506 und 3507 auf L sind, und wenn die Rückflanke des Signals 3506 auftritt der Inhalt
!des MKS-Registers 219 in den MAC-Zähler 220 geladen.
1 Das Signal 3508 gibt den Zeitpunkt an, zu dem das
ProgrpTimwort, zu dem die Signale 3506 und 3507 einen
Zugriff ermöglicht haben, ein Lesen der Festwertspeicher 1801 bewirken vnd die gelesene Information in die
Mikroregister 1802 eingeben kann. Die Mikrofestwertspeicher 1801 benötigen eine endliche Zeit nach
Eintreffen eines Lesesigna|s auf der Leitung 1804, um leine Leseoperatioi. durchzuführen. Daher wird das
Ladesignal 2508 um etwa 700 ns verzögert, um die Lesezeit zu berücksichtigen und um den Inhalt der durch
die Steuersignale auf der Leitung 244 Lngegebenen Stelle des Mikrofestwertspeichers 1801 in die Mikroregister
1802 einzugeben.
Hierzu 18 Blatt Zeichnungen
Claims (1)
1. Schiebe- und Rotierschaltung zum rotierbaren Verschieben von Bits eines Datenwortes um eine
Anzahl N von Bitpositionen, wobei das Datenwort eine Vielzahl von Mehrbit-Bytes enthält, die in einer
ersten Byte-Folge in einem ersten Speicher angeordnet sind, gekennzeichnet durch einen
zweiten Speicher (206), der die Bytes des Datenwortes in einer zweiten, von der Zahl N abhängenden
Byte-Folge aufnimmt, und einen Byte-Prozessor (202), der aufeinanderfolgende Byte-Paare des
Datenwortes aufnimmt, und zwar jeweils ein Byte aus dem ersten Speicher (208) und das andere Byte
aus dem zweiten Speicher (206) und der aus jedem Byte-Paar ein Byte des rotiert verschobenen
Datenwortes ableitet
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/533,454 US3996566A (en) | 1974-12-16 | 1974-12-16 | Shift and rotate circuit for a data processor |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2556617A1 DE2556617A1 (de) | 1976-07-01 |
DE2556617C2 true DE2556617C2 (de) | 1982-09-30 |
Family
ID=24126026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2556617A Expired DE2556617C2 (de) | 1974-12-16 | 1975-12-16 | Schiebe- und Rotierschaltung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3996566A (de) |
JP (1) | JPS5921056B2 (de) |
CA (1) | CA1039413A (de) |
DE (1) | DE2556617C2 (de) |
GB (1) | GB1522324A (de) |
NL (1) | NL7514584A (de) |
SE (1) | SE411603B (de) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4187551A (en) * | 1975-11-21 | 1980-02-05 | Ferranti Limited | Apparatus for writing data in unique order into and retrieving same from memory |
GB1524850A (en) * | 1975-12-23 | 1978-09-13 | Ferranti Ltd | Data processing apparatus |
US4106090A (en) | 1977-01-17 | 1978-08-08 | Fairchild Camera And Instrument Corporation | Monolithic microcomputer central processor |
FR2420167B1 (fr) * | 1978-03-14 | 1985-10-04 | Constr Telephoniques | Systeme de manipulation de champs d'elements binaires |
US4319325A (en) * | 1978-07-24 | 1982-03-09 | Intel Corporation | Digital processor for processing analog signals |
JPS5636741A (en) * | 1979-08-31 | 1981-04-10 | Fujitsu Ltd | Shift system |
US4340960A (en) * | 1980-07-25 | 1982-07-20 | Bell Telephone Laboratories, Incorporated | Time division switching system |
US4370743A (en) * | 1980-07-25 | 1983-01-25 | Bell Telephone Laboratories, Incorporated | Time division switching system |
DE3174595D1 (en) * | 1980-12-23 | 1986-06-12 | Sperry Corp | High-speed byte shifting apparatus |
US4577282A (en) * | 1982-02-22 | 1986-03-18 | Texas Instruments Incorporated | Microcomputer system for digital signal processing |
EP0122684B1 (de) * | 1983-01-18 | 1988-06-15 | Plessey Overseas Limited | Elektronisches Vermittlungssystem |
JP2520585B2 (ja) * | 1983-06-06 | 1996-07-31 | 日通工株式会社 | 時分割通話路における時間スイツチ |
ATE82412T1 (de) * | 1986-02-06 | 1992-11-15 | Mips Computer Systems Inc | Funktionseinheit fuer rechner. |
US4999808A (en) * | 1986-09-26 | 1991-03-12 | At&T Bell Laboratories | Dual byte order data processor |
JPH0748303B2 (ja) * | 1989-06-26 | 1995-05-24 | 株式会社東芝 | ワード長変換回路 |
US5442769A (en) * | 1990-03-13 | 1995-08-15 | At&T Corp. | Processor having general registers with subdivisions addressable in instructions by register number and subdivision type |
JPH05134848A (ja) * | 1991-03-06 | 1993-06-01 | Fujitsu Ltd | 中央処理装置のデータシフト回路 |
US10418125B1 (en) | 2018-07-19 | 2019-09-17 | Marvell Semiconductor | Write and read common leveling for 4-bit wide DRAMs |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3228005A (en) * | 1960-12-30 | 1966-01-04 | Ibm | Apparatus for manipulating data on a byte basis |
US3270324A (en) * | 1963-01-07 | 1966-08-30 | Ibm | Means of address distribution |
US3546676A (en) * | 1963-10-29 | 1970-12-08 | Singer Co | Calculator |
US3475730A (en) * | 1966-05-27 | 1969-10-28 | Gen Electric | Information shift apparatus in a computer system |
US3516069A (en) * | 1967-08-14 | 1970-06-02 | Collins Radio Co | Data character assembler and disassembler |
US3500466A (en) * | 1967-09-11 | 1970-03-10 | Honeywell Inc | Communication multiplexing apparatus |
US3781812A (en) * | 1971-06-28 | 1973-12-25 | Burroughs Corp | Addressing system responsive to a transfer vector for accessing a memory |
US3820079A (en) * | 1971-11-01 | 1974-06-25 | Hewlett Packard Co | Bus oriented,modular,multiprocessing computer |
-
1974
- 1974-12-16 US US05/533,454 patent/US3996566A/en not_active Expired - Lifetime
-
1975
- 1975-10-31 GB GB45480/75A patent/GB1522324A/en not_active Expired
- 1975-11-06 CA CA239,104A patent/CA1039413A/en not_active Expired
- 1975-12-02 SE SE7513579A patent/SE411603B/xx unknown
- 1975-12-15 NL NL7514584A patent/NL7514584A/xx not_active Application Discontinuation
- 1975-12-16 JP JP50149229A patent/JPS5921056B2/ja not_active Expired
- 1975-12-16 DE DE2556617A patent/DE2556617C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
GB1522324A (en) | 1978-08-23 |
NL7514584A (nl) | 1976-06-18 |
SE411603B (sv) | 1980-01-14 |
SE7513579L (sv) | 1976-06-17 |
JPS51102530A (de) | 1976-09-10 |
JPS5921056B2 (ja) | 1984-05-17 |
US3996566A (en) | 1976-12-07 |
CA1039413A (en) | 1978-09-26 |
DE2556617A1 (de) | 1976-07-01 |
USB533454I5 (de) | 1976-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2556617C2 (de) | Schiebe- und Rotierschaltung | |
DE1901228C3 (de) | Datenverarbeitungsanlage mit Einrichtungen zur Wiederholung von Operationen bei Auftreten eines Fehlers | |
DE2354521C2 (de) | Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln | |
DE2813128C2 (de) | Steuereinrichtung für Mikroprogrammspeicher | |
DE69132495T2 (de) | Verteilter Verarbeitungsspeicher | |
DE2355993C3 (de) | Programmierbare Datenverarbeitungsanlage | |
DE3586603T2 (de) | Datenprozessor fuer interpretierende und kompilierte sprache. | |
DE3638572C2 (de) | ||
CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
DE1449531B2 (de) | Prozessor, vorzugsweise fur ein modulares Mehrprozessorsystem | |
DE1928202B2 (de) | Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen | |
DE1218761B (de) | Datenspeidbereinrichtung | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE2839726A1 (de) | Datenverarbeitungsanlage mit verteilter steuerarchitektur in einem multiprozessor-system | |
DE2457612B2 (de) | Mikroprogrammier-Steuereinrichtung | |
DE2556641A1 (de) | Datenverarbeiter | |
DE3686828T2 (de) | Hochleistungsparalleler vektorprozessor mit modifizierter register/elementprozessor konfiguration. | |
DE2717658A1 (de) | Anordnung zur ansteuerung eines mikroprogrammspeichers | |
DE4334294C1 (de) | Prozessor für Zeichenketten variabler Länge | |
DE68929080T2 (de) | Anordnung zum Speichern von Informationen für einen Datenanbieterprozessor | |
DE1474095B1 (de) | Programmgesteuerte Datenverarbeitungsanlage | |
DE1549531A1 (de) | Digitale Rechenanlage | |
DE69130513T2 (de) | Verfahren zur Durchführung boolescher Operationen zwischen zwei beliebigen Bits von zwei beliebigen Registern | |
DE2854400C2 (de) | Anordnung zum Wechsel zwischen verzahnt zu verarbeitenden Programmen | |
DE1499224C3 (de) | Datenverarbeitungsanlage mit Kellerspeichereinrichtungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
8126 | Change of the secondary classification |
Ipc: ENTFAELLT |
|
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |