DE2912287B2 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE2912287B2 DE2912287B2 DE2912287A DE2912287A DE2912287B2 DE 2912287 B2 DE2912287 B2 DE 2912287B2 DE 2912287 A DE2912287 A DE 2912287A DE 2912287 A DE2912287 A DE 2912287A DE 2912287 B2 DE2912287 B2 DE 2912287B2
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- register
- field
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/30181—Instruction operation extension or modification
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/226—Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/28—Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
-
- 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, look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
Description
15
Die Erfindung betrifft eine Datenverarbeitungsanlage, mit einem Hauptrechner mit einem Hauptspeicher,
mit einem HQfsrechner mit einer Vielzahl von Speichcieinheiten, mit einer Registerdatei mit Datenregistern und Adressenregistern für die jeweiligen
Speichereinheiten zum Speichern der einzuschreibenden und auszulesenden Daten sowie der Adressen, wo
die. Daten gespeichert werden, mit mindestens diner an
die Registerdatei angeschlossenen arithmetisch-logischen Einheit und mit einem an die Speichereinheiten
und die arithmetisch-logische Einheit angeschlossenen Mikroprogrammspeicher zur Speicherung von Mikrobefehlen, der ein erstes Feld zur Angabe der Operation
der Speichereinheit, ein zweites Feld zur Angabe der
Operation der arithmetisch-logischen Einheit und ein drittes Feld zur Angabe der Adressen von bestimmten
Registern der Registerdatei aufweist, die an die arithmetisch-logische Einheit zur Durchführung der
arithmetisch-logischen Operationen angeschlossen sind.
Eine Datenverarbeitungsanlage dieser Art ist beispielsweise aus der DE-AS 12 85220 bekannt, ''obei
dort nur ein Speicher vorgesehen ist, so daß nur ein
vergleichsweise langsamer Rechnerbetrieb möglich ist Außerdem ist es mit der dort beschriebenen Anlage
kaum möglich, arithmetisch zu verarbeitende Daten abzurufen, während gleichzeitig eine arithmetische
Operation mit anderen Daten durchgeführt wird.
Ferner sind aus einem Prospekt der Firma CSP Inc.
über makro-arithmetische Prozessoren aus dem Jahre 1976 Anordnungen bekannt, bei denen zwar eine
Vielzahl von Speichern verwendet wird, jedoch ist dort jeder Speicher mit jedem Register körperlich verbunden. Die dort angegebenen Datenverarbeitungsanlagen
haben dabei einen komplizierten Aufbau und sind in der Herstellung kostspielig.
Bei Datenverarbeitungsanlagen werden seit einiger Zeit immer mehr Hilfsdatenverarbeitungsanlagen verwendet, die ausschließlich solche Operationen ausführen, daß bei deren Durchführung in einem Mehrzweck-Hilfsrechner die Verarbeitungszeit verlängert wird, um
die Wirksamkeit der gesamten Datenverarbeitungsanlage zu verbessern. Im Betrieb der Hilfsdatenverarbcitungsanlage müssen die zu verarbeitenden Daten vom
Primärrechner zur Hilfsdatenverarbeitungsanlage übertragen werden, da letztere einen Speicher kleiner
Kapazität und ein? hohe Verarbeitungsgeschwindigkeit im Vergleich zum Primärrechner besitzt, Aus diesem
Grunde können nicht alle zu verarbeitenden Daten im Speicher der Hilfsdatenverarbeitungsanlage gespeichert werden. Infolgedessen übermittelt der Primär-
rechner dieser Hilfsdatenverarbeitungsanlage nur eine solche Dateilmenge, welche die Hilfsdatenverarbeitungsanlage verarbeiten kann, und führt ihr nach
Verarbeitung der vorher übermittelten Daten die gleiche Menge an Daten erneut zn. Diese Operation
wird fortgesetzt, bis sämtliche z« verarbeitenden Daten
vollständig verarbeitet worden sind. Somit ist die für die
Datenübertragung zur Hilfsdatenverarbeitungsanlage erforderliche Zeit ziemlich lang, so daß auch dann, wenn
die Hilfsdatenverarbeitungsanlage mit hoher Geschwindigkeit arbeitet, sich eine lange Gesamtverarbeitungszeit fQr die Daten ergibt und die Hilfsdatenverarbeitungsanlage hoher Leistungsfähigkeit in ungenügender
Weise und mit geringem Wirkungsgrad ausgelastet wird. ■
Zur wirksamen Auslastung der Hilfsdatenverarbeitungsanlage müssen die Datenübertragung zwischen
der Hilfsdatenverarbeitungsanlage und dem Primärrechner sowie die Durchführung der Rechenoperationen durch die Hilfsdatenverarbeitungsanlage parallel
durchgeführt werden. Beispielsweise wird bei der Anordnung gemäß F i g. 1 eine zuerst zu verarbeitende
Datengruppe 1 vom Primärrechner zur Hilfsdatenverarbeitungsanlage fibertragen. Während der nächsten
Zeitspanne λ führt dann die Hilfsdaitiiverarbeitungsaniage die Operation bei der Datengruppe i aus. Während
der gleichen Zeitspanne <x wird auch eine zweite Datengruppe 2 vom Primärrechner zur Hilfsdatenverarbeitungsanlage übertragen. Während der nächsten
Zeitspanne β führt die Hilfsdatenverarbeitungsanlage die Operation an der Datengruppe 2 aus, und das
Verarbeitungsergebnis la der Datengruppe 1 wird von der Hilfsdatenverarbeitungsanlage zum Primärrechner
zurückübertragen, woraufhin letzterer die Datengruppe 3 zur Hilfsdatenverarbeitungsanlage fiberträgt Anschließend erfolgen die Operationsdurchführung und
die Datenübertragung parallel in gleicher Weise.
Im allgemeinen wird die Datenübertragung nicht immer parallel mit der Datenverarbeitung vollständig in
der gleichen Zeitspanne durchgeführt Da dies von der Art der Operation abhängt sollte eine Entscheidung
durch Vergleich der Datenübertragungsgeschwindigkeiten und der Operationsausführungszeiten im Normalbetrieb erfolgen (vgl. β, γ, δ in F i g. 1). Die für die
Datenübertragung benötigte Zeit liegt somit innerhalb der für die Ausführung der Operation erforderlichen
Zeit so daß die Gesamtzeit für die Datenverarbeitung durch die Hilfsdatenverarbeitungsanlage im wesentlichen gleich der Zeit für die Operationsaurführung ist
Um ein derartiges Steuersystem zu realisieren, ist die Hilfsdatenverarbeitungsanlage vorzugsweise mit drei
oder mehr Sätzen von Speichereinheiten versehen. Bei der Anordnung gemäß Fig.2A sind z.B. drei
Speichereinheiten AiI, A/2 und M3 vorgesehen, die
jeweils auf einmal die übertragenen oder verarbeiteten Daten speichern können. Während der Zeitspanne β
gemäß F i g. 1 dient die Speichereinheit M1 zur
Uberirtjgung von Daten la und 3 zum und vom
Primärrechner, während die Daten 2, die in der vorhergehenden Zeitspanne λ in der Spekihereinheit
M 2 gespeichert worden sind, aus der Speichereinheit M2 ausgelesen und verarbeitet werden, wobei das
Ergebnis der Operation in die Speichereinheit M 3 eingespeichert wird. Während der Zeitspanne γ werden
die im Verlauf der vorhergehenden Zeitspanne β in der Speichereinheit A/l gespeicherten Daten 3 verarbeitet
und das Verarbeitungsergebnis sequentiell in die Speichereinheit A/2 eingespeichert, während gleichzeitig das in der Spdchereinheit A/3 eingespeicherte
Operationsergebnis 2a zum Primärrechner übertragen wird und anschließend die Daten 4 in die Speicherein-
hett M3 übertragen werden (vgl. F i g. 2B). Während der
Zeitspanne werden die Daten in der Speichereinheit M3 verarbeitet und das Operationsergebnis nacheinander
in die Speichereinheit M 1 eingespeichert, während die Speichereinheit Ml gleichzeitig die Übertragung
der Daten 3a und 5 durchführt (vgl. F i g. 2C). In der anschließenden Zeitspanne erfolgt die gleiche Operation
wie bei der Darstellung nach Fig.2A, und es werden gleiche Operationen wiederholt, wie sie in den
F i g. 2B und 2C angedeutet sind.
Werden drei Sätze von Speichereinheiten in der vorstehend beschriebenen Weise im Betrieb verwendet,
so wird die Anforderung an die Software bzw. die Programme im Vergleich zu dem Fall mit einer
Speichereinheit verringert, so daß sich Schwierigkeiten beim Speicherzugriff vermeiden lassen.
Nachstehend soll ein Fall betrachtet werden, bei dem in einer Datenverarbeitungsanlage der oben erläuterten
Art die Hilfsdatenverarbeitungsanlage die Operationen
unter Verwendung von Mikroprogrammen durchführt. Wenn dabei im wesentliche η jeweils dieselben Operationen
für die Daten 2, 3, 4 usw. durchgeführt werden müssen, so sind beim herkömmlichen System drei
Mikroprogramme entsprechend den drei Zuständen der Speicherbelegung gemäß Fig. 2A, 2B und 2C zu
verwenden. Zum Beispiel werden die Daten 2 aus der Speichereinheit Ml und die Daten 3 aus der
Speichereinheit MX ausgelesen. Die Operation muß
dabei unter Verwendung unterschiedlicher Mikroprogramme für jede Zeitspanne durchgeführt werden. Beim
herkömmlichen System müssen somit unterschiedliche Mikroprogramme für eine, einzige Operation zur
Verfügung stehen. Dies führt jedoch zu einer Vergrößerung der Speicherkapazität für die Mikroprogramme
selbst.
Ausgehend von den bekannten Anordnungen von Datenverarbeitungsanlagen liegt der Erfindung die
Aufgabe zugrunde, eine Datenverarbeitungsanlage mit vergleichsweise einfachem Aufbau anzugeben, die in der
Lage ist, Daten nach einem einzigen Programm bei hoher Geschwindigkeit zu verarbeiten, so daß die
Datenverarbeitungsanlage als Zusatzgerät einsetzbar ist
Die erfindungsgemäße Lösung besteht darin, eine Datenverarbeitungsanlage der eingangs genannten Art
gemäß den Merkmalen im kennzeichnenden Teil des Hauptanspruches auszubilden.
Vorteilhafte Weiterbildungen der erfindungsgemäßen Datenverarbeitungsanlage sind in den Unteransprüchen
angegeben.
Im Gegensatz zu der aus der DE-AS 12 85 220 bekannten Datenverarbeitungsanlage sind gemäß der
Erfindung drei Spsiichereinheiten sowie drei Paare von Registern vorgesehen, während erste und zweite
logische Wandlerschaltungen dazu dienen, die jeweiligen Speichereinheiten zu wählen. Auf diese Weise
können die Daten weitaus schneller als bei dem bekannten System verarbeitet werden.
Gegenüber der Anlage gemäß dem Prospekt über makroarithmetische Prozessoren ist die erfindungsgemäße
Datenverarbeitungsanlage in vorteilhafter Weise mit ihrer logischen Umwandlungseinrichtung in der
Lage, den logischen Wert jeder Registereinheit zu ändern, so daß der jeweilige Speicher mit einer anderen
Registereinheit verbunden werden kann. Dadurch erfolgt eine logische Änderung der Paare von Speicher
und Register, die jeweils aus einem Speicher und einer Registereinheit bestehen. Auf diese Weise läßt sich der
Aufbau der Datenverarbeitungsanlage in vorteilhafter Weise vereinfachen und mit geringeren Kosten
herstellen.
Die Erfindung wird nachstehend anhand der Beschreibung von Ausführungsbeispielen und unter
Bezugnahme auf die Zeichnung näher erläutert. Die Zeichnung zeigt in
F i g. 1 und 2A bis 2C schematische Darstellungen zur Erläuterung der Arbeitsweise einer herkömmlichen
ίο Datenverarbeitungsanlage,
F i g. 3A und 3B ein Blockschaltbild einer 'Ausführungsform einer erfindungsgemäßen Datenverarbeitungsanlage,
F i g. 4A bis 4C ein Format eines bei der erfindungsge- !·■>
mäßen Datenverarbeitungsanlage verwendeten Mikrobefehls,
F i g. 5A bis 5C ein Format eines verwendeten privilegierten Befehls,
F i g. 6A bis 6C Beispiele für das Befehlsfeld gemäß :-. Fig.5C
F i g. 7 ein Format eines verwendeten Mikroprogramm ines,
F i g. 8 ein Blockschaltbild einer logischen Umwandlungseinrichtung
zum Umsetzen eines Speicherberei-2Ί ches,
F i g. 9 ein Blockschaltbild einer logischen Umwandlungseinrichtung
für bestimmte Befehlsfelder,
Fig. 10 ein Blockschaltbild eines Ausführungsbeispiels
für eine Speichereinheit, und in
!■ι Fig. U ein Blockschaltbild einer anderen Ausführungsform einer erfindungsgemäßen Datenverarbeitungsanlage.
!■ι Fig. U ein Blockschaltbild einer anderen Ausführungsform einer erfindungsgemäßen Datenverarbeitungsanlage.
Die in F i g. 3 dargestellte Datenverarbeitungsanlage ist über Sammelleitungen wie eine allgemeine Eingabe/
i" Ausgabe-Einrichtung an einen Verarbeitungsrechner
angeschlossen. Wie aus der Zeichnung ersichtlich, weist der Verarbeitungsrechner einen Hauptrechner 110 und
einen Hauptspeicher 111 auf. Die Datenverarbeitungsanlage weist einen Anschlußteil 112, einen Befehlssteuerteil
113, einen Arbeits- oder Operationsteil 114 und Speichereinheiten 115 auf. Der Anschlußteil 112, der die
Eingabe und Ausgabe zwischen der Datenverarbeitungsanlage und dem Verarbeitungsrechner überwacht
und ausführt, weist einen Befehlsübertragungsteil 116,
einen Datenübertragungssteuerteil 117, einen Ausführungssteuerteil
118, eine Zugriffssteuerung 119 und eine
Eingabe/Ausgabe-Schnittstelle 120 auf.
Der Anschlußteil 112 ist mit dem Verarbeitungsrechner
über eine Zugriffs-Sammelleitung 121 und eine "o Eingabe/Ausgabe-Sammelleitung 122 verbunden. Der
Befehlsübertragungsteil 116 erhält über die Sammelleitung
122 und die Eingabe/Ausgabe-Schnittstelle 120 einen Befehl vom Hauptrechner 110 und überträgt den
Befehl zum Datenübertragungssteuerteil 117 und zum Ausführungssteuerteil 118. Der Datenübertragungssteuerteil
117 steuert die Datenübertragung über die Sammelleitung 121 zwischen dem Hauptspeicher 111
und nachstehend näher beschriebenen Speichereinheiten. Der Ausführungssteuerteil 118 startet einen
nachstehend näher beschriebenen Steuerbereich.
Der Befehlssteuerteil 113 besteht aus einer Mikroprogrammsteuerung 123, einem Mikroprogrammspeicher
124 und einem Durchlaufregister 125. Der Mikroprogrammspeicher 124 speichert ein Mikroprogramm, das
eine Prozedur zur Durchführung eines Operationsteiles 114 und einen Zugriff zu nachstehend näher erläuterten
Speichereinheiten bestimmt Der Mikorprogrammspeicher 124 mit einer Speicherkapazität von beispielsweise
128 Worten (30 Bits/Wort) besteht aus einem RAM öder ROM. Die Mikroprogrammsteuerung 123 bestimmt
die Adresse eines aus dem Mikroprogrammspeicher 124 auszulesenden Mikrobefehls. Der ausgelesene
Befehl wird im Dcrchlaufregister 125 gesetzt, das im -> vorliegenden Falle einem gewöhnlichen Befehlsregister
äquivalent ist. Der Ausführungssteuerteil 118 überträgt eine Startadresse eines Mikroprogramms zur Mikroprogrammsteuerung
123 und startet dieses. Daraufhin liefert die Mikroprogrammsteuerung 123 eine Adresse, in
die als nächste in Abhängigkeit vom Inhalt des ersten Feldes NA 140 eines anhand der F i g. 4A br 4C näher
beschriebenen Mikrobefehls und von den codierten Zuständen des Operationsteiles ausgelesen werden soll.
Der Operationsteil 114 weist eine Registerdatei ;■·,
/?F126und eine arithmetisch-logische Einheit ALU 127
auf. Die Registerdatei RFX26 besteht aus 16 16-Bit-Hauptregistern
RO bis R 15 mit individuellen Adressen, die als Ausgangs- und Bestimmungsregister für die
arithmetisch-logische Einheit ALU 127 ansteuerbar :n sind. Bei diesen Registern sind die Register RO bis R 2
den Adressenregistern der Speichereinheiten MU \ bis Art/3 in der nachstehend beschriebenen Weise jeweils
zugeordnet, während die Register RA bis /?6 den
Datenregistern der Speichereinheiten MUX bis MU3 ji
jeweils zugeordnet sind. Die arithmetisch-logische Einheit ALUXTI ist in der Lage, parallele 16-Bit-Operationen
durchzuführen.
Der Speicherteil 115 weist drei einzelne Speichereinheiten
128 bis 130 auf. die auch mit MUX, MU2 und »<
Art/3 bezeichnet sind. Jede Speichereinheit weist beispielweise eine Kapazität von 4 kW (16 Bit/W) und
individuelle Adressen von 0 bis 4095 in dezimaler Schreibweise auf. Jede Speichereinheit ermöglicht ein
paralleles Auslesen und Einschreiben und ist außerdem r> mit zwei Toren versehen, einem für die Schreib/Lese-Operation
der Registerdatei RF\2% und einem für die Schreib/Lese-Operation der Zugriffssteuerung 119.
In den Fig.4A bis 4C ist das Format eines Mikroprogrammbefehls dargestellt, der im Mikropro- -in
grammspeicher 124 gespeichert ist. In diesem Format wird das erste Feld NA 140 zur Bestimmung der
nächsten Mikrobefehlsadresse des Mikroprogramms verwendet, d. h. der Adresse des nächsten auszuführenden
Mikrobefehls. Speziell wird das erste Feld NA 140 -»i
des im Durchlauf register 125 gespeicherten Mikrobefehls der Mikroprogrammsteuerung 123 zugeführt. Das
zweite Feld ALU141 wird verwendet, um den Operationsteil 114 zu steuern und weist Felder oder
Bereiche auf, die in F i g. 4B dargestellt sind. Im zweiten Feld ALUHi bezeichnet ein Feld OP143 die von der
arithmetisch-logischen Einheit ALUX27 ausgeführte Operation. Ein Feld SA144 und ein Feld SB 145
bezeichnen die Adresse des Ausgangsregisters in der Registerdatei RF126 zum Speichern der von der
arithmetischlogischen Einheit ALU 127 zu verarbeitenden Daten. Ein Feld DA 146 bezeichnet die Adresse des
Registers in der Registerdatei RF126, in dem das
Ergebnis der Verarbeitung durch die arithmetisch-logische Einheit ALU 127 gespeichert wird. Ein drittes Feld t>o
als Speicherbereich 142 bezeichnet die Operationen von drei Speichereinheiten MS1 bis MS3, wie sie in F i g. 4C
dargestellt sind, das heißt, damit wird der Speicherteil
115 gesteuert MSX bis MS3 sind die Bezeichnungen
der Speichereinheiten in den Mikroprogrammen, also der Software. Ihr Zusammenhang mit den Speichereinheiten
MUi bis MU3 in der Hardware ist nachstehend näher erläutert Das GO-Bit 147 entspricht einem
Freigabesignal des entsprechenden Speichers. Das R/W-Btt 148 gibt das Auslesen oder Einschreiben für
den entsprechenden Speicher an.
Unter Bezugnahme auf die Fig.3A und 3B werden,
wenn der Mikrobefehl vom Mikroprogrammspeicher 124 in das Durchlauf register 125 eingespeichert ist, das
Feld ALfJUX und der Speicherbereich im dritten Feld
142 an den Operationsteil 114 und den Speicherteil 115
jeweils über eine Sammelleitung 131 abgegeben. Das Feld OP 143 wird in das Register 132 geladen und
steuert dann den Betrieb der arithmetisch-logischen Einheit ALU 127.
Das Feld SA 144. das Feld SB 145 und das Feld
DA 146 werden einer logischen Wandlerschaltung LR 133 zugeführt. Das Ausgangssignal der logischen
Wandlerschaltung LR 133 wählt dann die Register in der Registerdatei RF126 aus. Der Speicherbereich oder
das dritte Feld 142 wird einer logischen Wandlerschaltung LM134 zugeführt. Das Ausgangssignal der
logischen Wandlerschaltung Ζ.Λ/134 steuert die
Speichereinheiten 128 bis 130. Ein Steuersignal zur Vorgabe der logischen Umschaltung der logischen
Wandlerschaltungen 133 bzw. 134 wird vom Ausführungssteuerteil 118 geliefert.
Der Betrieb der in Fig. 3A und 3B dargestellten Datenverarbeitungsanlage wird nachstehend näher
erläutert. Der Betrieb der Datenverarbeitungsanlage beginnt, wenn der Hauptrechner 110 über die
Sammelleitung 122 und die Eingabe/Ausgabe-Schnittstelle 120 dem Befehlsübertragungsteil 116 Anfangsdaten
liefert. Die Daten enthalten die Adressen der Daten, die vom Hauptspeicher 111 an den Befehlsübertragungsteil
116 abzugeben sind. Der Befehlsübertragungsteil 116 steuert die Zugriffssteuerung 119 und erhält eine
Reihe von Daten vom Hauptspeicher 111 durch die Sammelleitung 121 und die Zugriffssteuerung 119. Die
Daten werden dann klassifiziert in einen Datenübertragungssteuerblock DTCB, der an den Datenübertragungssteuerteil
117 abgegeben wird, und einen Ausführungssteuerblock ECB, der dem Ausführungssteuerteil
118 zugeführt wird.
Ein Beispiel für einen Datenübertragungssteuerblock DTCB ist in Fig.5A dargestellt. Der Steuerbefehl
DTC150 bezeichnet die vom Datenübertragungssteuerteil
117 zu steuernde Operation, z.B. den Datentransport vom Hauptspeicher Hl zum Speicherteil 115 oder
umgekehrt Das Feld MMSA151 und das Feld MMEA152 bezeichnen die Startadressen und die
Endadressen des Hauptspeichers 111. Das Feld MUSA 153 und das Feld MUEA 154 bezeichnen die
Startadressen und die Endadressen der jeweiligen Speichereinheiten MU1, MU2 und Art/3 bzw. 128,129
und 130. Das Feld der Kettenadresse 155 ist die Adresse des Hauptspeichers 111, in welchem der als nächstes
auszuführende Datenübertragungssteuerblock DTCB gespeichert ist
Ein Beispiel eines Ausführungssteuerblocks ECB ist in
Fig.5B dargestellt Das Feld £"C156 steuert die
Operation, die vom Ausführungssteuerteil 118 gesteuert
werden soll. Das Feld MIKRO-STA 157 bezeichnet die Startadresse des Mikroprogramms. Das Feld
MUAT158 für die Speichereinheiten-Zuordnungstabel-Ie
steuert die logischen Wandlerschaltungen 133 und 134. Das Feld der Kettenadresse 159 bezeichnet die
Adresse des Hauptspeichers 111, wo der als nächstes auszuführende Ausführungssteuerblock ECB gespeichert
ist Bei diesem Beispiel können die Steuerblöcke DTCB und ECBaIs Befehle betrachtet werden, die einen
höheren Wert als ein Mikroprogramm haben und die für jedes Segment der Verarbeitung durch die Datenverarbeitungsanlage
innerhalb des in F i g. 1 dargestellten Zeitintervalls vorgegeben sind. Diese Steuerblöcke
DTCB und ECB werden von der Zugriffssteuerung 119
abgerufen, bevor die Verarbeitung jedes Segments beginnt, ohne von dem Hauptrechner 110 unabhängig
zu sein.
Fig.5C zeigt ein Beispiel eines Feldes MUATiSS.
Dabei bezeichnet das Feld MUl 160 eine entsprechende Beziehung zwischen dem operationsbestimmenden
Teil der Speichereinheit MUi in der hardware und einem speicherbestimmenden Teil des Mikroprogramms.
In gleicher Weise bezeichnen die Felder MU2 und MU3 bzw. 161 und 162, welchen Speichern im ti
Mikroprogrammspeicher die Speichereinheiten MU2 und MU3 bzw. 129 und 130 in der hardware
entsprechen. Der Inhalt des so gebildeten Feldes MUATiSi ergibt die Steuersignale für die logischen
Wandlerschaltungen 133 und 134.
Der Befehlssteuerteil 113 startet den Betrieb, wenn der Ausführungssteuerteil 118 ein Feld MlKRO-STA
157 des Ausführungssteuerblocks ECB der Mikroprogrammsteuerung 123 zuführt. Die Mikroprogrammsteuerung
123 gibt dann die Startadessen eines r> Mikroprogramms im Mikroprogrammspeicher 124, d. h.
den Inhalt des Feldes MIKROSTA157, in den Mikroprogrammspeicher 124, so daß der entsprechende
Mikrobefehl geliefert wird, der aus dem Mikroprogrammspeicher 124 ausgelesene Mikrobefehl wird in in
das Durchlauf register 125 eingegeben. Das zweite Feld ALU 141 und der Speicherbereich im dritten Feld 142
im Mikrobefehl werden an den Operationsteil 114 und den Speicherteil 115 über eine Sammelleitung 131
übermittelt und ausgeführt. Zu diesem Zeitpunkt wird ;>
das erste Feld NA 140 an die Mikroprogrammsteuerung 123 abgegeben, wo die Adresse des nächsten auszuführenden
Mikrobefehls bestimmt wird, und anschließend werden die Ausführung des Mikrobefehls und das
Auslesen des als nächsten auszuführenden Mikrobefehls parallel durchgeführt.
Gesteuert von dem Datenübertragungssteuerteil 117 wird der Datentransport zwischen dem Hauptspeicher
111 und irgendeiner der Speichereinheiten MUi, MU2 bzw. Mi/3 ausgeführt. Die Richtung des Datentransports
wird vom Feld DFClSO des Datensteuerblocks DTCB bestimmt Wenn beispielsweise Daten im
Hauptspeicher 111 an die Speichereinheit MUi bzw.
128 abgegeben werden, so steuert der Inhalt des Feldes MMSA 151 und des Feldes MMEA 152 die Zugriffssteuerung
119, um sequentiell Daten im Hauptspeicher 111 über die Sammelleitung 121 auszulesen. Die Inhalte
der Felder MUSA 152 und MUEA154 liefern der
Adressen-Sammelleitung 135 eine Adresse und führen die aus dem Hauptspeicher 111 ausgelsenen Daten über
die Sammelleitung 121, die Zugriffssteuerung 119 und die Speicher-Sammelleitung 136 an ihren Adressenort
Die Verwendung des Datenübertragungssteuerteils 117 und des Ausführungssteuerteiles 118 ermöglicht eine
Datenübertragung und die Durchführung der auszufüh- e.o renden Operation im Parallelbetrieb und bei hoher
Geschwindigkeit
Wie bereits erwähnt, wird eine Operation mit der vorstehend beschriebenen Datenverarbeitungsanlage
so durchgeführt, daß die Daten in einer Speichereinheit verarbeitet und das Ergebnis der Verarbeitung in einer
anderen Speichereinheit gespeichert wird. Im Falle von
drei Sätzen von Speichereinheiten können drM Fälle der
nachstehend beschriebenen Art auftreten, wie es bereits in F i g. 2A, 2B und 2C angedeutet ist:
1) Die Daten aus der Speichereinheit MU2 werden
verarbeitet und das Ergebnis der Verarbeitung in der Speichereinheit MWi gespeichert;
2) die Daten aus der Speichereinheit MUl werden
verarbeitet und das Ergebnis der Verarbeitung in der Speichereinheit MU2 gespeichert;
3) die Daten aus der Speichereinheit MU3 werden verarbeitet und das Ergebnis der Verarbeitung in
der Speichereinheit MU1 gespeichert
Das in Fig. 5C dargestellte Feld MUAT wird
verwendet, um den Zusammenhang zwischen den Speichern MS1 bis MS3 in einem Mikroprogramm und
den Speichereinheiten MUi bis MU3 in der Hardware
zu bestimmen. Im ersten Falle ist das Feld MUATiSS
durch die Darstellung in Fig.6A gegeben. Das
bedeutet, daß folgende Beziehungen vorgegeben sind:
MU I: MSi
MU2-.MS2
MU 3 : MS 3
Im zweiten Falle gelten die folgenden Relationen, die in F i g. 6B dargestellt sind:
MUl :MS2
MU2 : MS3
MU3 : MS 1
Im dritten Fall gibt das Feld MUATXSS folgende
Relation vor, die in F i g. 6C angegeben ist:
MUX :MS3
MU2 : MS1
MU3-.MS2
Es wird angenommen, daß die jeweiligen Register in der Registerdatei RF126 im Mikroprogramm in der
Weise codiert sind, wie es in Tabelle 1 dargestellt ist.
Code | Register | |
0000 | Adressenregister des Speichers MS1 | |
0001 | Adressenregister des Speichers MS 2 | |
0010 | Adressenregister des Speichers MS 3 | |
0011 | /?3 | |
4 > | 0100 | Datenregister des Speichers MS1 |
0101 | Datenregister des Speichers MS 2 | |
0110 | Datenregister des Speichers MS 3 | |
Olli | Rl | |
1000 | RS | |
50 | 1001 | R9 |
1010 | RIO | |
1011 | RIl | |
1100 | R 12 | |
55 | 1101 | R 13 |
1110 | R 14 | |
1111 | RlS |
Der Speicherbereich im dritten Feld 142 wird über die Sammelleitung 131 übertragen und gemäß der Relation
nach Tabelle 1 durch die logische Wandlerschaltung 134 umgesetzt In gleicher Weise werden die Felder SA 144,
SB 145 und DA 146 in der logischen Wandlerschaltung 133 umgesetzt
Nachstehend soll ein Mikroprogramm befrachtet werden, wie es in F i g. 7 dargestellt ist wobei das Feld
NA140 weggelassen ist Der Mikrobefehl in der
A hat den Inhalt »0000« im Operationsfeld 180, d. h. keine Operation. In dieseir. Falle sind die Inhalte
der Felder SA 181, SB 182 und DA 183 unbedeutend, da
aber das Feld MS 2 184 den Inhalt »10« hat, bestimmt
dies das Auslesen des Speichers MS 2.
Im ersten Falle entspricht der Speicher MS 2 der Speichereinheit MU2, und somit liefert die logische
Wandlerschaltung 134 ein Zugriffssignal für die Speichereinheit MU2 und gibt Daten an der Stelle in
der Speichereinheit MU2, 'die durch die Adresse im Register Al der Registerdatei RF 126 definiert ist, an
das Register R 5 ab. Auch in diesem Maschinenzyklus führt die arithmatisch-logische Einheit ALU 127 keine
Operation aus. Im nächsten Maschinenzyklus wird der Mikrobefehl an der durch die Adresse (A+ 1) definierten
Stelle aufgeführt. Bei dem Befehl arbeitet der Speicher nicht, während die arithmetisch-logische
Einheit 127 eine Operation ausführt. Da der Inhalt »0001« im Operationsfeld OP185 die Ausführung einer
Addition vorgibt, werden die Inhalte der Register, die durch die beiden Felder SA 186 und 55187 bestimmt
sind, zueinarder addiert und das Ergebnis der Addition in das Register eingeschrieben, das durch das Feld
DA 188 vorgegeben ist.
Der Inhalt »0101« im Feld SA 186 bestimmt das Datenregister des Speichers MS 2, so daß im ersten
Falle das Register R 5 von der logischen Wandlerschaltung 133 ausgewählt wird. Das Feld SB 187 bestimmt
das Register /?9 beim Inhalt »1001«. Das Feld DA 188 hat den Inhalt »0110« und bestimmt das Datenregister
des Speichers MS3.
Dementsprechend werden die inhalte der Register R5 und R9 über die Sammelleitungen 137 und 138 an
die arithmetischlogische Einheit 127 abgegeben und das Ergebnis der Operation über die Sammelleitung 139 in
das Register R 6 geladen. Im anschließenden Maschinenzyklus wird der Mikrobefehl an der durcn die
Adresse (A + 2) vorgegebenen Stelle ausgeführt. Das Operationsfeld OP 189 an der durch eine Adresse
(Λ + 2) bestimmten Stelle des Mikrobefehls hat den Inhat »0000« und bedeutet keine Operation, so daß die
arithmetisch-logische Einheit 127 in diesem Zyklus nicht arbeitet. Das Feld 190 des Speichers MS3 hat den Inhalt
»11«, so daß das Einschreiben in den Speicher MS 3
vorgegeben ist. Wenn das Feld MUAT158 im ersten
Falle die Form gemäß F i g. 6A aufweist, entspricht der Speicher MS3 der Speichereinheit MU3, und somit legt
die logische Wandlerschaltung 134 ein Zugriffssignal an die Speichereinheit MU3 und lädt das Operationsergebnis
in das Register R 6 an die Stelle in der Speichereinheit MU3, die durch die Adresse im
Register R 2 definiert ist
Auch im zweiten Falle kann die Datenverarbeitungsanlage Operationen unter Verwendung desselben
Programmes ausführen, wie es in F i g. 7 dargestellt ist In diesem Falle wird das Feld MUA 7Ί58 der in F i g. 6B
dargestellten Art vom Ausführungssteuerteil 118 an die logischen Wandlerschaltungen 133 bzw. 134 übertragen.
Beim Mikrobefehl der Adresse A befindet sich die arithmetisch-logische Einheit 127 in dem Zustand für
keinen Betrieb, jedoch ist das Auslesen durch den Speicher MS2 vorgegeben. Da der Speicher MS2 in
diesem Zustand der Speichereinheit MU1 entspricht,
liefert die logische Wandlerschaltung 134 ein Zugriffssignal zur Speichereinheit MUl, so daß die in der
Adresse gespeicherten Daten, die durch das Adressenregister RO vorgegeben ist, an das Datenregister R 4
abgegeben werden. Im nächsten Maschinenzyklus wird der Mikrobefehl in der Adresse (A + 1) ausgeführt
Dieser Mikrobefehl bestimmt, daß die arithmetisch-logische Einheit 127 eine Addition ausführt. Die Summationsdaten
sind in das Datenregister des Speichers MS 2 und das Register R 9 durch die Felder SA und SB in der
in Tabelle 1 angegebenen Weise eingegeben. Da der Speicher MS 2 der Speichereinheit MU1 entspricht,
wählt die logische Wandlerschaltung 133 äie Register R 4 und R 9 aus, von denen das erste das Datenregister
ίο der Speichereinheit MU1 darstellt. Die Daten in den
Registern R 4 und R 9 werden über die Sammelleitungen 137 und 138 der arithmetisch-logischen Einheit 127
zugeführt. Diese führt eine Addition aus, und das Ergebnis der Addition muß in dem Datenregister des
r> Speichers MS 3 gespeichert werden, der durch das Feld
DA vorgegeben ist. Die Anordnung ist dabei so getroffen, daß der Speicher MS3 der Speichereinheit
MU2 entspricht. Das Ergebnis der Operation wird dann in dem Register R 5, dem Datenregister von MU 2,
jo gespeichert, und die Ausführung des Mikrobefehls in der
Adresse (A+1) endet, in der Adresse (A + 2) ist der
Mikrobefehl »Einschreiben« in den Speicher MS3
vorgegeben. Da der Speicher MS3 der Speichereinheit MU2 entspricht, wird der Inhalt des Registers RS in
2-, eine Adresse geladen, die durch das Register R i
vorgegeben ist.
Auch im dritten Falle, wenn das Feld MUA 7die Form
gemäß F i g. 6C hat, kann die Datenverarbeitungsanlage mit den Befehlen gemäß F i g. 7 arbeiten.
so In F i g. 8 ist ein Ausführungsbeispiel einer logischen
Wandlerschaltur.g 134 dargestellt, um den Speicherbereich umzusetzen. Bei der dargestellten Ausführungsform wird die Information im Speicherbereich 210
selektiv Multiplexern 211 bis 216 zugeführt. Das Feld
j-, MUAT wird von dem Ausführungssteuerteil 118 als
Steuersigna! für die jeweiligen Multiplexer geliefert.
Beispielsweise stellt das Feld MUi des Befehls MUAT
das Steuersignal für die Multiplexer 211 und 212 dar,
während das Feld MU2 das Steuersignal für die Multiplexer 213 und 214 darstellt und das Feld MU3 das
Steuersignal für die Multip.exer 215 und 216 darstellt. Wenn das Feld MU1 dem Speicher AiSl entspricht,
liefern die Multiplexer 211 und 212 Signale, die an die jeweiligen Eingangsanschlüsse 1 angelegt werden.
Wenn das Feld MUi den Speichern MS2 od· ■· MS3
entspricht, werden Ausgangssignale geliefert, die an die Eingangsanschiüsse 2 oder 3 angelegt werden. Dies gilt
entsprechend für die Multiplexer 213 und 214 bzw. 215 und 216. Die Ausgangssignale der Multiplexer 211 und
212 werden der Speichereinheit MUl zugeführt. Die
Ausgangssignale der Multiplexer 213 und 214 werden der Speichereinheit MU 2 zugeführt, und die Ausgangssignale
der Multiplexer 215 und 216 werden der Speichereinheit MC/3 zugeführt
In Fig.9 ist ein Beispiel einer logischen Wandlerschaltung
133 dargestellt um das Umsetzen im SA-Feld, ÄA-Feld und DA-FeId durchzuführen. Das SA-FeId
(bzw. das 5A-FeId oder DA-FeId) ist mit 220 bezeichnet
und besteht aus 4 Bits. Die Speichereinheiten MUi,
MU2 und MU3, die das Feld MUA T221 bilden, werden
von dem Ausführungssteuerteil 118 geliefert und bestehen ebenfalls aus 4 Bits. In diesen Feldern
bezeichnet die Information »0001« die Speichereinheit MUl, die Information »0010« die Speichereinheit Mt/2
und die Information »0011« die Speichereinheit Mt/3.
Die Information in der Speichereinheit Mt/3 wird dem Eingang des Multiplexers 224 über die Gruppe von
Gattern 222 zugeführt Die Information der Speicher-
einheit Ml/2 wird dem Eingang des Multiplexers 225
über die Gruppe von Gattern 223 zugeführt. Die beiden niedrigeren Bits der Registerbestimmungsinformation
im Feld 220 werden als Wählsignal für die Multiplexer 224 und 225 verwendet. Wenn das Wählsignal der
beiden Bits den Wert »00« hat, wird der Eingang 0 gewählt, und wenn die beiden Bits die Werte »01«, »10«
bzw. »11« haben, werden jeweils die Eingänge 1,2 bzw.
3 gewählt Die Ausgänge der beiden Multiplexer 224 und 225 werden an die Eingänge 0 der Multiplexer 226
und 227 angelegt Die anderen Eingänge 1 der beiden Multiplexer 226 und 227 sind an die beiden niedrigeren
Bits der Registerbestimmungsinformation im Feld 220 angeschlossen.
Die beiden höheren Bits der Registerbestimmungsinformation im Feld 220, die über die Gruppe von Gattern
228 zugeführt wird, werden als Wählsignale für die Multiplexer 226 und 227 verwendet Die beiden höheren
Bits der Registerbestimmungsinformalion im Feld 220 werden direkt für die beiden höheren Bits des
Ausgangssignals der logischen Wandlerschaltung 133 verwendet. Die Ausgangssignaie der Multiplexer 226
und 227 werden für die beiden niedrigeren Bits des Ausgangssignals der logischen Wandlerschaltung 133
verwendet Wenn die Adresseninformation den Wert »0101« hat wird das Datenregister des Speichers MS2
vorgegeben, wie sich aus Tabelle 1 entnehmen läßt
Im ersten Falle, wo das Feld MUATAk Form gemäß
Fig.6A hat hat das Ausgangssignal der logischen
Wandlerschaltung 133 den Wert »0101« und bestimmt das Register R 5 der Registerdatei RF126. Im zweiten
Falle, wo das Feld MUATdie Form gemäß Fi g. 6B hat,
hat das Ausgangssignal der logischen Wandlerschaltung 133 den Wert »0100« und bestimmt das Register R 4 der
Registerdatei ÄF126. Im dritten Falle, wo das Feld MUAT die Form gemäß Fig.6C hat, hat das
Ausgangssignal der logischen Wandlenchaltung 133 den Wert »0110« und bestimmt das Register R 6 der
Registerdatei RF126.
Wie bei diesem Beispiel in Tabelle 1 dargestellt, ist der
Code zur Adressenumwandlung so gewählt, daß der Code mit den höheren beiden Bits »00« zur Bezeichnung
des Adressenregisters und der Code mit den höheren beiden Bits mit dem Wert »01« zur Bezeichnung des
Datenregisters dienen. Bezüglich anderer Codes liefert die logische Wandlerschaltung 133 das gleiche Ausgangssignal wie das Eingangssignal; auch wenn jedoch
alle Codes umgewandelt sind, tritt kein Problem auf, insbesondere dann, wenn ein Mikroprogramm unabhängig von früheren Registerinhalten programmiert ist Die
in F i g. 9 dargestellte Schaltung ist entsprechend für alle Felder vorgesehen, um die Register mit einem
Mikroprogramm vorzugeben. Es kann jedoch auch eine einzige Schaltung im Zeitmultiplexbetrieb für das
SA-Feld, 5B-FeId und DA-FeId verwendet werden.
In F i g. 10 ist ein Ausführungsbeispiel einer Speichereinheit MU1 für die Datenverarbeitungsanlage gemäß
Fig.3B dargestellt Die anderen Speichereinheiten MU2 und MU3 können auch in der beschriebenen
Weise ausgebildet sein. Die Speichereinheit MUi wird
sowohl vom Datenübertragungssteuerteil 117 als auch vom Mikroprogramm gesteuert und weist ein Speicherfeld 231, ein internes Datenregister 232, ein internes
Adressenregister 233 und eine Steuerschaltung 234 auf. Ein Multiplexer 235 ist mit seinem Anschluß 1 an die
Sammelleitung 136 und mit dem Anschluß 2 an das Datenregister A4 der Speichereinheit MUi in der
Registerdatei RFiX angeschlossen.
Ein Multiplexer 236 ist mit seinem Anschluß 1 an die Sammelleitung 135 und mit seinem Anschluß 2 an das
Adressenregister RO der Speiichereinbeit MUl in der
Registerdatei RFi26 angeschlossen. Wenn ein Steuersi
gnal GO von der logischen Wandlerschaltung 134
angelegt wird, wählen die Multiplexer 235 und 236, und in dem internen Adressenregiister 233 wird der Inhalt
des Registers RO abgespeichert Zu diesem Zeitpunkt werden, wenn Lesebetrieb vorliegt, in Abhängigkeit von
ίο einem Steuersignal R/W von der logischen Wandlerschaltung 134 Daten aus dem Speicherfeld 231 in das
interne Datenregister 232 ausgelesen und über den Multiplexer 235 an das Register R 4 abgegeben.
Im Schreibzustand wird der Inhalt des Registers A4
in der Adresse eingespeichert, die durch das interne
Adressenregister 233 innerhalb des Speicherfeldes 231 vorgegeben ist, nachdem er über den Multiplexer 235 in
das interne Datenregister 232 eingegeben worden ist Wenn kein Steuersignal GO zugeführt wird, wählen die
Multiplexer 235 und 236 den Anschluß 1. Zu diesem Zeitpunkt bewirkt die Speichereinheit MUl, wenn ein
Steuerbefehl OTCvon dem Datenübertragungssteuerteil 117 erhalten wird, ein Einschreiben der Daten, die
vom Hauptspeicher 111 über die Sammelleitung 136 und
die Zugriffssteuerung 119 geliefert werden, oder ein
kann die Datenverarbeitungsanlage als Zusatzgerät
eingesetzt werden, das mit hoher Geschwindigkeit die
von einem Hauptrechner zugeführten Daten verarbeitet
und das Ergebnis der Verarbeitung an den Hauptrechner abgibt Dabei kann die Datenverarbeitungsanlage
die Verarbeitungszeit beträchtlich verkürzen. Insbesondere ist die Durchführung eimer Reihe von Operationen
unter Verwendung des gleichen Mikroprogramms möglich, so daß ein kleines Fassungsvermögen für einen
Mikroprogrammspeicher zur Steuerung ausreicht
In der nachstehend näher beschriebenen F i g. 11 ist
eine weitere Ausfühningsform der Datenverarbeitungs
anlage dargestellt Dabei bezeichnen gleiche Bezugszei
chen wie in Fig.3A und 3B entsprechende Elemente.
Ein Block, der mit der strich lierten Linie 112 bezeichnet
ist, stellt einen Verbindungsslcil dar, der den Befehlsübertragungsteil 116, den DateitUbertragungssteuerteil 117,
den Ausführungssteuerteil 118, die Zugriffssteuerung 119 sowie die Eingabe/Ausgabe-Schnittstelle 120
enthält, die im einzelnen in F i g. 3A dargestellt sind. Ein
wesentliches Merkmal dieser Ausführungsform besteht darin, daß eine erste arithmetisch-logische Einheit 241,
eine zweite arithmetisch-logische Einheit 242 und eine Multiplizierschaltung 243 vorgesehen sind. Mit einer
derartigen Anordnung sind schwierigere und kompliziertere Operationen möglich, wenn man es mit der
Ausführungsform nach Fig.3A und 3B vergleicht
Wenn beispielsweise Bilddaten verarbeitet werden,
kann eine vorgegebene Operation für jeden Ort eines Bildelements durchgeführt werden. Eine gewöhnliche
Speichereinrichtung speichert Bilddaten in der Reihenfolge der Bildpositionen; die :zu verarbeitenden Daten
sind jedoch nicht notwendigerweise in dieser Reihenfolge angeordnet In einem iiolchen Falle wird die
Reihenfolge der Daten so umgeordnet, daß sie in der Reihenfolge des Betriebsablaufes ist, und dann dem
Hilfsrechner zugeführt, um eine Verkürzung der
Verarbeitungszeit zu erreichen. Andererseits können
bei diesem Beispiel die im Hauptspeicher 111 gespeicherten Bilddaten in den Speicherbereich übertragen
werden, ohne die Reihenfolge zu ändern.
Wenn beispielsweise die Summe von Produkten unter Verwendung der zweiten arjthmetiscWogischen Einheit
242 und der Multiplizierschaltung 243 gebildet wird,
kann die erste arithmetisclHagische Einheit 241 die
Adressen der aus dem Speicherbereich genommenen
Daten berechnen, Bej diesem Beispiel werden die Daten, die der von der ersten arithmetischJogischen
Einheit 241 berechneten Adresse entsprechen, aus dem Speicherbereich herausgenommen, und das Ergebnis
der von der zweiten arithmetisch-logischen Einheit 242 und der Multiplizierschaltung 243 durchgeführten
Operation wird wieder, in die von der ersten arithmetisch-logischen Einheit 241 berechneten Adresse
geladen. Durch diese Operation kann die Verarbeitungszeit
reduziert werden, ohne die Reihenfolge der is
Bilddaten zu ändern. Diese Eigenschaft ist sehr nützlich,
wenn die jeweib'gen Eingangsbilddaten die jeweilige Position des Bildelements der Ausgangsbilddaten
beeinflussen.
Ein weiteres wesentliches Merkmal der Ausführungsform
nach F i g. 11 besteht darin, daß der aus dem Mikroprogrammspeicher 124 ausgelesene Mikrobefehl
in Obereinstimmung mit dem Feld ML£47"durch die
logische Wandlerschaltung 244 geändert wird, bevor er
in das Durchlaufregister 125 eingegeben wird. Eine Kombination der Bauformen nach F i g. 8 und 9 kann für
r"e logische Wandlerschaltung 244 verwendet werden. Bei dem aus dem Mikroprogrammspeicher 124 ausgelesenen
Mikrobefehl werden das Feld zur Angabe des Betriebes des Speichers (Speicherbereiches) und das
Feld zur Angabe des Registers als Ausgangsr oder
Bestimmungsort (M-FeId, ,SfrFeld und Z3A;Fe|d) der
logischen Wwdlerscbaltwng244 iugeflibrt, Dje anderen
Felder werden in ihrem ursprünglichen Zustand in das
Durchlaufregister 125 eingegeben, Jm Steuertefl kann
ein MUAT-TabeUeQspeicheT vorgesehen sein, anstatt
einen MUAT^efehl vom Hauptrechner vorzugeben,
um den verwendeten AfWT-Befehl zu bestimmen.
Obwohl bei diesem Beispiel drei Sätze von Speichereinheiten
verwendet werden, kann eine beliebige Anzahl von Speichereinheiten zum Einsatz gelangen.
Eine Datenverarbeitungsanlage, in der jede der Betriebseinheiten eine Multiplizierschaltung aufweist,
kann als System eingesetzt werden, das ausschließlich
Faltungen oder die Summation von Produkten bei
hoher Geschwindigkeit ausführt Bei der Berechnung von Ausdrücken der Form
V1
kann das Produkt (Ai*Bi) durch Verwendung der
Multiplizierschaltung 243 berechnet werden, während die Summation dann von der zweiten arithmetisch-logischen
Einheit 242 durchgeführt wird. Der aufaddierte Wert kann nur in der Zeit zur Berechnung des Produkts
erhalten werden, da die Multiplizierschaltung 243 und die zweite arithmetisch-logische Einheit 242 parallel
arbeiten.
Hierzu 8 Blatt Zeichnungen
Claims (7)
- Patentansprüche;1, Datenverarbeitungsanlage, mit einem Hauptredner mit einem Hauptspeicher, mit einem Hilfsrechner mit einer Vielzahl von Speichereinheiten,mit einer Registerdatei mit Datenregistern und Adressenregistern für die jeweiligen Speichereinheiten zum Speichern der einzuschreibenden und auszulesenden Daten sowie der Adressen, wo die Daten gespeichert werden, mit mindestens einer an die Registerdatei angeschlossenen arithmetisch-logischen Einheit, und mit einem an die Speichereinheiten und die arithmetischlogische Einheit angeschlossenen Mikroprogrammspeicher zur Speicherung von Mikrobefehlen, der ein erstes Feld zur Angabe der Operation der Speichereinheit, ein zweites Feld zur Angabe der Operation der arithmetisch-logischen Einheit azd ein drittes Feld zur Angabe der Adressen von bestimmtea Registern der Registerdatei aufweist, die an die arithmetischlogische Einheit zur Durchführung der arithmetisch-logischen Operationen angeschlossen sind, gekennzeichnet durcha) einen Befehlsübertragungsteil (116), der den vom Hauptrechner (110)1 an den Hilfsrechner übermittelten Befehl entschlüsselt und den Datenblock (Fig.5A) des Befehls an einen Datenübertragungssteuerteil (117) sowie den BefehlsWock (F i g. 5B) an einen Ausführungssteuerteil (118) fiberträgt;b) einen Datenfiber o-agun^^steuerteil (117), der an den BefehMbertijgtingsteil (116) angeschlossen ist und den Datents .ck (Fig.5A) eines Befehls erhält sowie die Datenübertragung zwischen den in Bereichen (151, 152) des Datenblocks (F i g. 5A) stehenden Anfangs- und Endadressen (MMSA, MMEA) im Hauptspeieher (111) und den in weiteren Bereichen (153, 154) stehenden Anfangs- und Endadressen (MUSA, MUEA) der Speichereinheiten (115) im Hilfsrechner in Abhängigkeit von einer im Datenblock enthaltenen Richtungsangabe (Bereich 150) steuert;c) eine erste logische Wandlerschaltung (134), die an das Mikroprogramm und die Speichereinheiten (115) angeschlossen ist, das erste Feld (140) eines aus dem Mikroprogrammspeicher (124) ausgelesenen Befehls (Fig.4A) erhält sowie den Speicher mit dem Ausgangssignal des ersten Feldes steuert;d) eine zweite logische Wandlerschaltung (133), die an das Mikroprogramm und die Registerdatei (126) angeschlossen ist, das dritte Feld (142) des aus dem Mikroprogrammspeicher (124) ausgelesenen Befehls (F i g. 4A) erhält sowie ein Register (RO-R6) in der Registerdatei (126) gemäß dem Apsgangssignal des dritten Feldes auswählt; unde) einen Ausführungssteuerteil (118), der an den Befehlsübertragungsteil (116) angeschlossen ist und den Befehlsblock (F i g. 5B) eines Befehls erhält, die in einem Bereich (157) des Befehlsblocks (Fig.5B) stehende Startadresse eines Mikroprogramms für die auszuführende Operation (Bereich 156) an einen Befehlssteuerteil Qbertrftgt und den Datenverkehr zwischen den Speichereinheiten {US) des Hilfsrechners und dessen arithmetisch-logischer Einheit (127) steuert und der außerdem an die erste und zweite logische Wandlerschaltung (134, 133) angeschlossen ist und diesen entsprechende Steuersignale liefert,
- 2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die erste logische Wandlerschaltung (134) aus einer VieltahJ von Mula'plexern (211—216) besteht, die jeweils auf einem Eingang die Information des ersten Feldes und auf einem anderen Eingang das Steuersignal des Ausführungssteuerteiles (118) erhalten, und ein Speichereinschaltsignal zur Aktivierung der jeweiligen Speichereinheiten sowie ein Steuersignal zum Steuern des Einschreibens und Auslesens in das bzw. aus dem aktivierten Speicher liefert (F ig. 8).
- 3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die zweite logische Wandlerschaltung (133) eine Gruppe von Gattern (22* 223), die das Steuersignal vom Ausführungssteuerteil (118) erhalten und jeweils selektiv ein Ausgangssignal liefern, einen an die Gatter (222, 223) angeschlossenen ersten Multiplexer (224, 225), der selektiv das Ausgangssignal der Gruppe von Gattern (222,223) erzeugt, sowie einen zweiten Multiplexer aufweist, der in Abhängigkeit von der Information des am anderen Eingang des ersten Multiplexers (224, 225) anliegenden ersten Feldes ein Steuersignal zur Auswahl eines bestimmten Registers (J26) erzeugt (F i g. 9).
- 4. Datenverarbeitungsanlage nach einem der Ansprüche 1—3, dadurch gekennzeichnet, daß das Ausführungssteuerteil (118) eine Vielzahl von Feldern aufweist, um mit dem Mikroprogramm eine Zuordnung zur Änderung der Kombination der Speichereinheiten (128, 129, 130) in Abhängigkeit vom Betriebszustand der jeweiligen Speichereinheiten vorzunehmen.
- 5. Datenverarbeitungsanlage nach einem der AnsprOche 1—4, dadurch gekennzeichnet, daß die zweite logische Wandlerschaltung (133) nur dann eine logische Umwandlung vornimmt, wenn das dritte Feld des aus dem Mikroprogramm ausgelesenen Befehls die Adresse des Datenregisters oder Adressenregisters angibt
- 6. Datenverarbeitungsanlage nach einem der Ansprüche 1 —5, dadurch gekennzeichnet, daß eine Vielzahl von arithmetischlogischen Einheiten (127, 241, 242), die jeweils eine Adressenberechnung für die Speichereinheiten vornehmen, sowie eine Multiplizierschaltung (243) vorgesehen sind.
- 7. Datenverarbeitungsanlage nach einem der Ansprüche 1—6, dadurch gekennzeichnet, daß jede Speichereinheit folgende Baugruppen aufweist: einen ersten Multiplexer (235), der mit einem Eingang an eine Datensammelleitung und mit einem anderen Eingang an ein Register der Registerdatei (126) angeschlossen ist;ein internes Datenregister (232), das an den Multiplexer (235) angeschlossen ist und die an den Multiplexer abgegebenen und von diesem erhaltenen Daten speichert;ein Speicherfeld (231), das an das interne Datenregister (232) angeschlossen ist und die von und zu dem internen Datenregister (232) übertragenen Daten speichert;ein internes Adressenregister (233), das an das Speicherfeld (231) angeschlossen ist und die Adressen der von und m dem Speicherfeld (231) übertragenen Daten speichert; einen weiten Multiplexer (236), der an das interne Adressenregister (233) angeschlossen ist und selektiv eine im internen Adressenregister gespeicherte Adresse liefert; undeine Steuerung (234), die den Betrieb von internem Datenregister (232), internem Adressenregister (233) ι ο und Speicherfeld (231) steuert
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3480778A JPS54127653A (en) | 1978-03-28 | 1978-03-28 | Data processor |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2912287A1 DE2912287A1 (de) | 1979-10-04 |
DE2912287B2 true DE2912287B2 (de) | 1981-03-26 |
DE2912287C3 DE2912287C3 (de) | 1981-11-19 |
Family
ID=12424481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2912287A Expired DE2912287C3 (de) | 1978-03-28 | 1979-03-28 | Datenverarbeitungsanlage |
Country Status (5)
Country | Link |
---|---|
US (1) | US4314333A (de) |
JP (1) | JPS54127653A (de) |
DE (1) | DE2912287C3 (de) |
GB (1) | GB2017361B (de) |
NL (1) | NL7902367A (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450525A (en) * | 1981-12-07 | 1984-05-22 | Ibm Corporation | Control unit for a functional processor |
US4577282A (en) | 1982-02-22 | 1986-03-18 | Texas Instruments Incorporated | Microcomputer system for digital signal processing |
US5854907A (en) * | 1982-02-22 | 1998-12-29 | Texas Instruments Incorporated | Microcomputer for digital signal processing having on-chip memory and external memory access |
JPS58195265A (ja) * | 1982-05-10 | 1983-11-14 | Sony Corp | マイクロコンピユ−タ |
US4680701A (en) * | 1984-04-11 | 1987-07-14 | Texas Instruments Incorporated | Asynchronous high speed processor having high speed memories with domino circuits contained therein |
US4761755A (en) * | 1984-07-11 | 1988-08-02 | Prime Computer, Inc. | Data processing system and method having an improved arithmetic unit |
US4704680A (en) * | 1984-08-15 | 1987-11-03 | Tektronix, Inc. | Address computation system for updating starting addresses of data arrays in an array processor within an instruction cycle |
JP2748359B2 (ja) * | 1986-08-01 | 1998-05-06 | 株式会社日立製作所 | 並列プロセッサシステムおよび並列プロセッサによる複数の命令列の実行方法 |
DE3786330T2 (de) * | 1986-11-27 | 1993-11-25 | Nippon Telegraph & Telephone | Paralleldatenverarbeitungsvorrichtung und -verfahren. |
JPS63170736A (ja) * | 1987-01-09 | 1988-07-14 | Toshiba Corp | マイクロプロセツサ |
US4912636A (en) * | 1987-03-13 | 1990-03-27 | Magar Surendar S | Data processing device with multiple on chip memory buses |
US5099417A (en) * | 1987-03-13 | 1992-03-24 | Texas Instruments Incorporated | Data processing device with improved direct memory access |
US6704895B1 (en) * | 1987-06-02 | 2004-03-09 | Texas Instruments Incorporated | Integrated circuit with emulation register in JTAG JAP |
US6085336A (en) * | 1987-06-02 | 2000-07-04 | Texas Instruments Incorporated | Data processing devices, systems and methods with mode driven stops |
US6522985B1 (en) | 1989-07-31 | 2003-02-18 | Texas Instruments Incorporated | Emulation devices, systems and methods utilizing state machines |
US5329471A (en) * | 1987-06-02 | 1994-07-12 | Texas Instruments Incorporated | Emulation devices, systems and methods utilizing state machines |
US5535331A (en) * | 1987-09-04 | 1996-07-09 | Texas Instruments Incorporated | Processor condition sensing circuits, systems and methods |
US5684721A (en) * | 1987-09-04 | 1997-11-04 | Texas Instruments Incorporated | Electronic systems and emulation and testing devices, cables, systems and methods |
US4991078A (en) * | 1987-09-29 | 1991-02-05 | Digital Equipment Corporation | Apparatus and method for a pipelined central processing unit in a data processing system |
JP2986104B2 (ja) * | 1988-03-15 | 1999-12-06 | 株式会社東芝 | 情報処理装置の自己試験回路 |
US5805792A (en) * | 1989-07-31 | 1998-09-08 | Texas Instruments Incorporated | Emulation devices, systems, and methods |
US5203002A (en) * | 1989-12-27 | 1993-04-13 | Wetzel Glen F | System with a multiport memory and N processing units for concurrently/individually executing 2N-multi-instruction-words at first/second transitions of a single clock cycle |
JPH06103599B2 (ja) * | 1990-11-16 | 1994-12-14 | 三菱電機株式会社 | 半導体集積回路装置 |
JPH09212411A (ja) * | 1996-02-06 | 1997-08-15 | Tokyo Electron Ltd | メモリシステム |
US20040098568A1 (en) * | 2002-11-18 | 2004-05-20 | Nguyen Hung T. | Processor having a unified register file with multipurpose registers for storing address and data register values, and associated register mapping method |
US20070134063A1 (en) * | 2005-12-14 | 2007-06-14 | Shaw And Sons, Inc. | Dowel device with closed end speed cover |
JP6500461B2 (ja) * | 2015-02-02 | 2019-04-17 | 日本電気株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3462741A (en) * | 1966-07-25 | 1969-08-19 | Ibm | Automatic control of peripheral processors |
US3748451A (en) * | 1970-08-21 | 1973-07-24 | Control Data Corp | General purpose matrix processor with convolution capabilities |
US3943495A (en) * | 1973-12-26 | 1976-03-09 | Xerox Corporation | Microprocessor with immediate and indirect addressing |
US4041466A (en) * | 1976-01-19 | 1977-08-09 | Dynamics Research Corporation | Multi-axis encoder processing and display system |
US4038533A (en) * | 1976-09-29 | 1977-07-26 | Allen-Bradley Company | Industrial control processor system |
US4101960A (en) * | 1977-03-29 | 1978-07-18 | Burroughs Corporation | Scientific processor |
-
1978
- 1978-03-28 JP JP3480778A patent/JPS54127653A/ja active Granted
-
1979
- 1979-03-20 US US06/022,353 patent/US4314333A/en not_active Expired - Lifetime
- 1979-03-21 GB GB7909929A patent/GB2017361B/en not_active Expired
- 1979-03-27 NL NL7902367A patent/NL7902367A/xx unknown
- 1979-03-28 DE DE2912287A patent/DE2912287C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2912287C3 (de) | 1981-11-19 |
JPS54127653A (en) | 1979-10-03 |
GB2017361A (en) | 1979-10-03 |
DE2912287A1 (de) | 1979-10-04 |
US4314333A (en) | 1982-02-02 |
JPS5744175B2 (de) | 1982-09-20 |
GB2017361B (en) | 1982-03-24 |
NL7902367A (nl) | 1979-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2912287C3 (de) | Datenverarbeitungsanlage | |
DE2540975C2 (de) | Datenverarbeitungseinrichtung zur Ausführung mehrerer gleichzeitig ablaufender Prozesse | |
DE2113890C2 (de) | Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
CH634939A5 (de) | Kanaldatenpufferanordnung in einer datenverarbeitungsanlage. | |
DE2130299A1 (de) | Eingabe/Ausgabe-Kanal fuer Datenverarbeitungsanlagen | |
DE1269393B (de) | Mikroprogramm-Steuerwerk | |
DE2813080A1 (de) | Einrichtung zur speicheradressierung | |
DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
DE1499730A1 (de) | Einrichtung zur Speicherauswahl | |
DE2935101C2 (de) | ||
DE2951040C2 (de) | ||
DE2522343C3 (de) | Anordnung zur Steuerung Von Verfahrensabläufen | |
DE3121046C2 (de) | ||
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE2558417A1 (de) | Datenverarbeitungssystem | |
DE2403669C3 (de) | SpezialComputer | |
DE1499224C3 (de) | Datenverarbeitungsanlage mit Kellerspeichereinrichtungen | |
DE2632277A1 (de) | Mikroprogrammierbarer computer fuer eine numerische steuervorrichtung | |
DE1285218B (de) | Datenverarbeitungsanlage | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE3207057C2 (de) | ||
DE2217565A1 (de) | Steuerteil eines Rechenautomaten, der die relative Basisadresse von Befehlen bildet | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE3435816A1 (de) | Vorrichtung zur numerischen signalverarbeitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
C3 | Grant after two publication steps (3rd publication) | ||
8328 | Change in the person/name/address of the agent |
Free format text: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZEL, W., DIPL.-ING., PAT.-ANW., 8000 MUENCHEN |
|
8320 | Willingness to grant licences declared (paragraph 23) | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: KABUSHIKI KAISHA TOSHIBA, KAWASAKI, KANAGAWA, JP |
|
8339 | Ceased/non-payment of the annual fee |