DE2912287C3 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2912287C3
DE2912287C3 DE2912287A DE2912287A DE2912287C3 DE 2912287 C3 DE2912287 C3 DE 2912287C3 DE 2912287 A DE2912287 A DE 2912287A DE 2912287 A DE2912287 A DE 2912287A DE 2912287 C3 DE2912287 C3 DE 2912287C3
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.)
Expired
Application number
DE2912287A
Other languages
English (en)
Other versions
DE2912287A1 (de
DE2912287B2 (de
Inventor
Kazuhide Iwata
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Publication of DE2912287A1 publication Critical patent/DE2912287A1/de
Publication of DE2912287B2 publication Critical patent/DE2912287B2/de
Application granted granted Critical
Publication of DE2912287C3 publication Critical patent/DE2912287C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent 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 Hilfsrechner mit einer Vielzahl von Speichereinheiten, mit einer Registerdatei init Datenregistern und Adressenregistern für die jeweiligen 2« 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 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 <^in 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 bei- J5 spielsweise aus der DE-AS 12 85 220 bekannt, wobei 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 Meh^zweck-Hiifsrechner die Verarbeitungszeit verlängert wird, um die Wirksamkeit der gesamten Datenverarbeitungsanlage zu verbessern. Im Betrieb der Hilfsdatenverarbeitungsanlage müssen die zu verarbeitenden Daten vom Primärrechner zur Hilfsdatenverarbeitungsanlage übertragen werden, da letztere einen Speicher kleiner t.o Kapazität und eine 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 Datenmenge, welche die Hilfsdatenverarbeitungsanlage verarbeiten kann, und führt ihr nach Verarbeitung der vo.-her übermittelten Daten die gleiche Menge an Daten erneut zu. Diese Operation wird fortgesetzt, bis sämtliche zu 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 Gesamiverarbeitungszeit für 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 übertragen. Während der nächsten Zeitspanne α führt dann die Hilfsdatenverarbeitungsanlage die Operation bei der Datengruppe 1 aus. Während der gleichen Zeitspanne tx wird auch eine zweite Datengruppe 2 vom Primärrechner zur Hilfsdatenverarbeitungsanlage übertragen. Während der nächsten Zeitspanne p 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 überträ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. β, γ, 6 in Fig. 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 Operationsausfü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äß F i g. 2A sind z. B. drei Speichereinheiten Ml, M2 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 Übertragung von Daten Xa und 3 zum und vom Primärrechner, während die Daten 2, die in der vorhergehenden Zeitspanne <x in der Speiehereinheit A/2 gespeichert worden sind, aus der Speichereinheit Ai 2 ausgelesen und verarbeitet werden, wobei das Ergebnis der Operation in die Speichereinheit Λ/3 eingespeichert wird. Während der Zeitspanne y werden die im Verlauf der vorhergehenden Zeitspanne β in der Speichereinheit M1 gespeicherten Daten 3 verarbeitet und das Verarbeitungsergebnis sequentiell in die Speichereinheit M2 eingespeichert, während gleichzeitig das in der Speichereinheit M 3 eingespeicherte Operationsergebnis 2a zum Primärrechner übertragen wird und anschließend die Daten 4 in die Speicherein-
heit M 3 übertragen werden (vgl. F i g. 2B). Während der Zeitspanne werden die Daten in der Speichereinheit MZ verarbeitet und das Operationsergebnis nacheinander in die Speichereinheit M1 eingespeichert, während die Speichereinheit M 2 gleichzeitig die Übertragung der Daten 3a und 5 durchführt (vgl. F i g. 2C). In der anschließender. 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 wesentlichen 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 M2 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 Speichereinheiten 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 Ober 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 ri Beschreibung von Ausführungsbeispielen und unter Bezugnahme auf die Zeichnung näher erläutert. Die Zeichnung 2;eigt in
F i g. 1 und 2A bis 2C schematische Darstellungen zur Erläuterung der Arbeitsweise einer herkömmlichen in Datenverarbeitungsanlage,
F i g. 3A und 3B ein Blockschaltbild einer 'Ausführungsform einer erfindungsgemäßen Datenverarbeitungsanlage,
F i g. 4A bis 4C ein Formal eines bei der erfindungsgemäß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 Mikroprogrammes,
F i g. 8 ein Blockschaltbild einer logischen Umwandlungseinrichtung zum Umsetzen eines Speicherberei-2") ches,
Fig.9 ein Blockschaltbild einer logischen Umwandlungseinrichtung für bestimmte Befehlsfelder,
Fig. 10 ein Blockschaltbild eines Ausführungsbeispiels für eine Speichereinheit, und in
π F i g. 11 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 Befehlssteu-4» erteil 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 ίο Eingabe/Ausgabe-Sammelleitung 122 verbunden. Der Befehlsübertragungsteil 116 erhält über die Sammelleitung J22 UKd die Eir.gsbe/Aasgabe-Schr.ittsteüe 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 Mikroprogrammsteuening 123, einem Mikroprogrammspeicher 124 und einem Durchlaufregister 125. Der Mikroprogrammspeicher 124 speichert ein Mikroprogramm, das f>5 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 oder ROM. Die Mikroprogrammsteuerung 123 bestimmt die Adresse eines aus dem Mikroprogrammspeicher 124 auszulesenden Mikrobefehls. Der ausgelesene Befehl wird im Durchlaufregister 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, die als nächste in Abhängigkeit vom Inhalt des ersten Feldes NA 140 eines anhand der F i g. 4A bis 4C näher beschriebenen Mikrobefehls und von den codierten Zuständen des Operationsteiles ausgelesen werden soll.
Der Operationsteil 114 weist eine Registerdatei RF126 und eine arithmetisch-iogische Einheit ALUXIl auf. Die Registerdatei RF126 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 sind. Bei diesen Registern sind die Register RO bis R 2 den Adressenregistern der Speichereinheiten MU1 bis MU3 in der nachstehend beschriebenen Weise jeweils zugeordnet, während die Register R 4 bis R 6 den Datenregistern der Speichereinheiten MUi bis MU 3 jeweils zugeordnet sind. Die arithmetisch-logische Einheit ALU 127 ist in der Lage, parallele 16-Bit-Operationen durchzuführen.
Der Speicherteil 115 weist drei einzelne Speichereinheiten 128 bis 130 auf, die auch mit MUi, MU2 und MU3 bezeichnet sind. Jede Speichereinheit weist beispielsweise 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 mit zwei Toren versehen, einem für die Schreib/Lese-Operation der Registerdatei RF12% 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 Mikroprogrammspeicher 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 des im Durchlaufregister 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 ALUUl bezeichnet ein Feld OP143 die von der arithmetisch-logischen Einheit ALU\27 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 Datea Ein Feld DA 146 bezeichnet die Adresse des Registers in der Registerdatei RF126, in dem das Ergebnis der Verarbeitung durch die arithmetisch-logische Einheit ALUXZJ gespeichert wird. Ein drittes Feld als Speicherbereich 142 bezeichnet die Operationen von drei Speichereinheiten MS1 bis MS 3, wie sie in F i g. 4C dargestellt sind, das heißt, damit wird der Speicherten 115 gesteuert. MSX bis M53 sind die Bezeichnungen der Speichereinheiten in den Mikroprogrammen, also der Software Ihr Zusammenhang mit den Speichereinheiten MUX bis MUZ in der Hardware ist nachstehend näher erläutert. Das GO-Bit 147 entspricht einem Freigabesignal des entsprechenden Speichers. Das R/W-Bit 148 gibt das Auslesen oder Einschreiben für den entsprechenden Speicher an.
Unter Bezugnahme auf die F i g. 3A und 3B werden,
■> wenn der Mikrobefehl vom Mikroprogrammspeicher 124 in das Durchlaufregister 125 eingespeichert ist, das Feld ALU 141 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 54 144, das Feld SB 145 und das Feld DA 146 werden einer logischen Wandlerschaltung
ι -j LR133 zugeführt. Das Ausgangssignal der logischen Wandierschaltung 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 LM134 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.
2Ί 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-Schnitt-
j(i stelle 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
S5 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ührungssteuertei! 118 zugeführt wird.
Ein Beispiel für einen Datenübertragungssteuerbiock DTCB ist in Fig.5A dargestellt. Der Steuerbefehl D7C150 bezeichnet die vom Datenübertragungssteuer-5 teil 117 zu steuernde Operation, z.B. den Datentransport vom Hauptspeicher 111 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 MUX, MU2 und MUi 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 £"C!B ist in Fig.5B dargestellt Das Feld EC156 steuert die Operation, die vom Ausführungssteuerteil 118 gesteuert werden solL Das Feld MIKRO-STA 157 bezeichnet die Startadresse des Mikroprogramms. Das Feld MUATX5S für die Speichereinheiten-Zuordnungstabelle 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 DTCBnnd 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 zusein.
Fig. 5C zeigt ein Beispiel eines Feldes MUATtSS. Dabei bezeichnet das Feld MU 1 160 eine entsprechen- ι ο de Beziehung zwischen dem operationsbestimmenden Teil der Speichereinheit MU1 in der hardware und einem speicherbestimmenden Teil des Mikroprogramms. In gleicher Weise bezeichnen die Felder MU 2 und MU3 bzw. 161 und 162, welchen Speichern im r> Mikroprogramrnspeieher die Speiehereinheiten MU2 und MU3 bzw. 129 und 130 in der hardware entsprechen. Der Inhalt des so gebildeten Feldes MUAT158 ergibt die Steuersignale für die logischen Wandlerschaltungen 133 und 134.
Der Befehlssteuerteil 113 startet den Betrieb, wenn der Ausführungssteuerteil 118 ein Feld MIKRO-STA 157 des Ausführungssteuerblocks ECS der Mikroprogrammsteuerung 123 zuführt. Die Mikroprogrammsteuerung 123 gibt dann die Startadessen eines Mikroprogramms im Mikroprogrammspeicher 124, d. h. den Inhalt des Feldes MIKRO-STA157, in den Mikroprogrammspeicher 124, so daß der entsprechende Mikrobefehl geliefert wird, der aus dem Mikroprogrammspeicher 124 ausgelesene Mikrobefehl wird in jo 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. MU 3 ausgeführt Die Richtung des Datentransports wird vom Feld D7U150 des Datensteuerblocks DTCB bestimmt Wenn beispielsweise Daten im Hauptspeicher 111 an die Speichereinheit MUX 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 IiI über die Ssmir.cilcitur.g 121 auszulesen. Die Inhalte der Felder MLtSA 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ührenden 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 drei 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 MU3 gespeichert;
2) die Daten aus der Speichereinheit MUX 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 MUA T wird verwendet, um den Zusammenhang zwischen den Speichern MSX bis MS3 in einem Mikroprogramm und den Speichereinheiten MUX bis MU 3 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:
MU1 : MS X
MU2-.MS2
MU3 : MS3
Im zweiten Falle gelten die folgenden Relationen, die in F i g. 6B dargestellt sind:
MUX :MS2
MU2-.MS3
MU 3 : MS X
Im dritten Fall gibt das Feld MUATXSS folgende Relation vor, die in F i g. 6C angegeben ist:
MUX :MS3
MU2 : MS X
MU3-.MS2
Es wird angenommen, daß die jeweiligen Register in der Registerdatei RFX26 im Mikroprogramm in der Weise codiert sind, wie es in Tabelle 1 dargestellt ist.
Tabelle 1 Register
Code Adressenregister des Speichers MS X
40 0000 Adressenregister des Speichers MS 2
0001 Adressenregister des Speichers MS 3
0010 R3
0011 Datenregister des Speichers MS X
45 0100 Datenregister des Speichers MS 2
0101 Datenregister des Speichers MS 3
0110 R7
Olli R8
1000 R9
50 1001 RXO
1010 RXX
1011 R12
1100 RX3
55 1101 Ä14
1110 Ä15
1111
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 SA144, SB 145 und DA 146 in der logischen Wandlerschaltung 133 umgesetzt
Nachstehend soll ein Mikroprogramm betrachtet werden, wie es in Fig. 7 dargestellt ist, wobei das Feld NA140 weggelassen ist Der Mikrobefehl in der
Adresse A hat den Inhalt »0000« im Operationsfeld 180, d. h. keine Operation. In diesem Falle sind die Inhalte der Felder SA 181, SB 182 und DA 183 unbedeutend, da aber das Feld MS2 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 Rl der Registerdatei RF126 definiert ist, an das Register R 5 ab. Auch in diesem Maschinenzyklus führt die arithmatisch-logische Einheit ALUXTH keine Operation aus. Im nächsten Maschinenzyklus wird der Mikrobefehl an der durch die Adresse (A + 1) definierten Stelle uUs^eführt Bei dem Befehl arbeitt ^^r 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 SB 187 bestimmt sind, zueinander 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 RS und /?9 über die Sammelleitungen 137 und 138 an die arithmetischlogische Einheit 127 abgegeben und das Ergebnis der Operation über die Sammelleitung 139 in das Register Ä6 geladen. Im anschließenden Maschinenzyklus wird der Mikrobefehl an der durch die Adresse (A + 2) vorgegebenen Stelle ausgeführt. Das Operationsfeld OP189 an der durch eine Adresse (A+ 2) bestimmten Stelle des Mikrobefehls hat den Inhat »0000« und bedeutet keine Operation, so daß die arithmetisch-logische Einheit i27 in diesem Zyklus nicht arbeitet. Das Feld 190 des Speichers MS 3 hat den Inhalt »11«, so daß das Einschreiben in den Speicher MS 3 vorgegeben ist Wenn das Feld MUATlSS 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 AfLZA T158 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 MS 2 vorgegeben. Da der Speicher AiS 2 in diesem Zustand der Speichereinheit MUX entspricht, liefert die logische Wandlerschaltung 134 ein Zugriffssignal zur Speichereinheit MUX, so daß die in der Adresse gespeicherten Daten, die durch das Adressenregister RO vorgegeben ist, an das Datenregister A4 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 55 in der in Tabelle 1 angegebenen Weise eingegeben. Da der Speicher MS 2 der Speichere'nheit MU1 entspricht, wählt die logische Wandlerschaltung 133 die 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 Speichers MS3 gespeichert werden, der durch das Feld DA vorgegeben ist. Die Anordnung ist dabei so getroffen, daß der Speicher M53 der Speichereinheit MU 2 entspricht. Das Ergebnis der Operation wird dann in dem Register RS, dem Datenregister von MU 2, gespeichert, und die Ausführung des Mikrobefehls in der Adresse (A+ 1) endet. In der Adresse (A + 2) is.' der Mikrobefehl »Einschreiben« in den Speicher M53 vorgegeben. Da der Speicher MS 3 der Speichereinheit MU2 entspricht, wird der Inhalt des Registers R 5 in eine Adresse geladen, die durch das Register R 2 vorgegeben ist
Auch im dritten Falle, wenn das Feld MUATdie Form gemäß F i g. 6C hat, kann die Datenverarbeitungsanlage mit den Befehlen gemäß F i g. 7 arbeiten.
In F i g. 8 ist ein Ausführungsbeispiel einer logischen Wandlerschaltung 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 MUA T wird von dem Ausführungssteuerteil 118 als Steuersignal für die jeweiligen Multiplexer geliefert. Beispielsweise stallt das Feld MU1 des Befehls MUA T das Steuersignal für die Multiplexer 211 und 212 dar, während das Feld MU 2 das Steuersignal für die Multiplexer 213 und 214 darstellt und das Feld MU3 das Steuersignal für die Multiplexer 215 und 216 darstellt Wenn das Feld MUi dem Speicher AiSl entspricht, liefern die Multiplexer 211 und 212 Signale, die an die jeweiligen Eingangsanschlüsse 1 angelegt werden. Wenn das Feld MUl den Speichern MS 2 oder MS 3 entspricht werden Ausgangssignale geliefert, die an die Eingangsanschlü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 Sneichereinheit MU"2. zugeführt, und die
signale der Multiplexer 215 und 216 werden der Speichereinheit MU3 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-Feld (bzw. das ΒΑ-Feld oder DA-FeId) ist mit 220 bezeichnet und besteht aus 4 Bits. Die Speichereinheiten MUX, MU2 und MU3, die das Feld MUAT22X bilden, werden von dem Ausnihningssteuertefl 118 geliefert und bestehen ebenfalls aus 4 Bits. In diesen Feldern bezeichnet die Information »0001« die Speichereinheit MU1, die Information »0010« die Speichereinheit MU 2 und die Information »0011« die Speichereinheit MU3. Die Information in der Speichereinheit MU3 wird dem Eingang des Multiplexers 224 über die Gruppe von Gattern 222 zugeführt Die Information der Speicher-
einheit MU 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 Registerbestimmungsinformation im Feld 220 werden direkt für die beiden höheren Bits des Ausgangssignals der logischen Wandlerschaltung 133 verwendet. Die Ausgangssignale 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 MUAT die Form gemäß F i g. 6A hat, hat das Ausgangssignal der logischen Wandlerschaltung 133 den Wert »0101« und bestimmt das Register R 5 der Registerdatei ÄF126. Im zweiten Falle, wo das Feld MUATdie Form gemäß Fig. 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 Wandlerschaltung 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, 5A-FeId und DA-FeId verwendet werden.
In F i g. 10 ist ein Ausführungsbeispiel einer Speichereinheit MU1 fü>- die Datenverarbeitungsanlage gemäß Fig.3B dargestellt. Die anderen Speichereinheiten MU2 und MUi können auch in der beschriebenen Weise ausgebildet sein. Die Speichereinheit MU1 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 RA der Speichereinheit MUX in der Registerdatei RF126 angeschlossen.
Ein Multiplexer 236 ist mit seinem Anschluß 1 an die Sammelleitung 135 und mit seinem Anschluß 2 an das Adressenregister RO der Speichereinheit MUi in der Registerdatei ÄF126 angeschlossen. Wenn ein Steuersignal GO von der logischen Wandlerschaltung 134 angelegt wird, wählen die Multiplexer 235 und 236, und in dem internen Adressenregister 233 wird der Inhalt des Registers R 0 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 RA 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 MUi, wenn ein Steuerbefehl DTC von dem Datenübertragungssteuerteil 117 erhalten wird, ein Einschreiben der Daten, die vom Hauptspeicher 111 über die Sammelleitung 136 und die ZugriffssU uerung 119 geliefert werden, oder ein Auslesen der vom Hauptspeicher 111 gelieferten Daten.
Wie sich aus der vorstehenden Beschreibung ergibt,
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 einer 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 Fig. 11 ist eine weitere Ausführungsform der Datenverarbeitungsanlage dargestellt. Dabei bezeichnen gleiche Bezugszeichen wie in Fig.3A und 3B entsprechende Elemente. Ein Block, der mit der strichlierten Linie 112 bezeichnet ist, stellt einen Verbindungsteil dar, der den Befehlsübertragungsteil 116, den Datenübertragungssteuerteil 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.
Vi 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
Mi sind jedoch nicht notwendigerweise in dieser Reihenfolge angeordnet. In einem solchen Falle wird die Reihenfolge der Daten so umgeordnet, daß sie in der Reihenfolge des Betriebsablaufes ist, und dann dem Hilfsrcchner zugeführt, um eine Verkürzung der
h5 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 arithmetisch-logischen Einheit 242 und der Multiplizierschaltung 243 gebildet wird, kann die erste arithmetisch-logische Einheit 241 die Adressen der aus dem Speicherbereich genommenen Daten berechnen. Bei diesem Beispiel werden die Daten, die der von der ersten arithmetischlogischen 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 Bilddaten zu ändern. Diese Eigenschaft ist sehr nützlich, wenn die jeweiligen 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 Übereinstimmung mit dem Feld MUA T 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 die 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 jo Feld zur Angabe des Registers als Ausgangs- oder Bestimmungsort (SA-Feld, SS-Feld und DA-FeId) der logischen Wandlerschaltung 244 zugeführt Die anderen Felder werden in ihrem ursprünglichen Zustand in das Durchlaufregister 125 eingegeben. Im Steuerteil kann ein MiMT-Tabellenspeicher vorgesehen sein, anstatt einen MUA T-Befehl vom Hauptrechner vorzugeben, um den verwendeten ΛίΙΜΓ-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
D= Σ Ai , Bi
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 Zeichnuimcn

Claims (7)

Patentansprüche:
1. Datenverarbeitungsanlage,
mit einem Hauptrechner, 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 arithmetisch-logische Einheit angeschlossenen Mikroprograrsimspeicher 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, gekennzeichnet durch
a) einen Befehlsübertragungsteil (116), der den vom Hauptrechner (110) an den Hilfsrechner übermittelten Befehl entschlüsselt und den Datenblock (F i g. 5A) des Befehls an einen jn Datenübertragungssteuerteil (117) sowie den Befehlsblock (Fig.5B) an einen Ausführungssteuerteil (118) überträgt;
b) einen Datenübertragungssteuerteil (117), der an den Befehlsübertragungsteil (116) angeschlossen ist und den Datenblock (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 (Be- 4r> reich 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) w 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 Ausgangssigna! des dritten Feldes auswählt; und
e) einen Ausführungssteuerteil (118), der an den Befehlsübertragungsteil (116) angeschlossen ist und den Befehlsblock (Fig.5B) eines Befehls erhält, die in einem Bereich (157) des Befehls- μ blocks (Fig.5B) stehende Startadresse eines Mikroprogramms für die auszuführende Operation (Bereich 156) an einen Befehlssteuerteil überträgt und den Datenverkehr zwischen den Speichereinheiten (115) 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 Vielzahl von Multiplexern (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 i g. 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ühfungssteuerteil (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 (126) 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 Ansprüche 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 zu dem Speicherfeld (231) übertragenen Daten speichert;
einen zweiten Multiplexer (236), der an das interne Adressenregister (233) angeschlossen ist und selektiv eine im internen Adressenregister gespeicherte Adresse liefert; und
eine Steuerung (234), die den Betrieb von internem Datenreeister (232), internem Adressenregister (233) ι ο und Speicherfeld (231) steuert
DE2912287A 1978-03-28 1979-03-28 Datenverarbeitungsanlage Expired DE2912287C3 (de)

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 DE2912287B2 (de) 1981-03-26
DE2912287C3 true 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)

* Cited by examiner, † Cited by third party
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
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
US6085336A (en) * 1987-06-02 2000-07-04 Texas Instruments Incorporated Data processing devices, systems and methods with mode driven stops
US5684721A (en) * 1987-09-04 1997-11-04 Texas Instruments Incorporated Electronic systems and emulation and testing devices, cables, systems and methods
US5535331A (en) * 1987-09-04 1996-07-09 Texas Instruments Incorporated Processor condition sensing circuits, 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)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
JPS54127653A (en) 1979-10-03
GB2017361A (en) 1979-10-03
US4314333A (en) 1982-02-02
DE2912287A1 (de) 1979-10-04
NL7902367A (nl) 1979-10-02
JPS5744175B2 (de) 1982-09-20
DE2912287B2 (de) 1981-03-26
GB2017361B (en) 1982-03-24

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
DE2355993C3 (de) Programmierbare Datenverarbeitungsanlage
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
CH634939A5 (de) Kanaldatenpufferanordnung in einer datenverarbeitungsanlage.
DE2354521A1 (de) Verfahren und einrichtung zum gleichzeitigen zugriff zu verschiedenen speichermoduln
DE1269393B (de) Mikroprogramm-Steuerwerk
DE2712224A1 (de) Datenverarbeitungsanlage
DE1929010B2 (de) Modular aufgebaute datenverarbeitungsanlage
DE1549480A1 (de) Datenverarbeitungsanlage
DE1499730A1 (de) Einrichtung zur Speicherauswahl
DE1115488B (de) Datenverarbeitungssystem
DE2935101C2 (de)
DE2846054C2 (de) Schaltungsanordnung zur Erweiterung des Adressierungsvolumens einer Zentraleinheit, insbesondere eines Mikroprozessors
DE2522343C3 (de) Anordnung zur Steuerung Von Verfahrensabläufen
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2233193B2 (de) Stapel-Speichersystem
DE2403669C3 (de) SpezialComputer
DE2558417A1 (de) Datenverarbeitungssystem
DE1499224C3 (de) Datenverarbeitungsanlage mit Kellerspeichereinrichtungen
DE2632277A1 (de) Mikroprogrammierbarer computer fuer eine numerische steuervorrichtung
DE3207057C2 (de)
DE1774421B1 (de) Mehrprogramm datenverarbeitungsanlage

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