DE2912287A1 - Datenverarbeitungsgeraet - Google Patents

Datenverarbeitungsgeraet

Info

Publication number
DE2912287A1
DE2912287A1 DE19792912287 DE2912287A DE2912287A1 DE 2912287 A1 DE2912287 A1 DE 2912287A1 DE 19792912287 DE19792912287 DE 19792912287 DE 2912287 A DE2912287 A DE 2912287A DE 2912287 A1 DE2912287 A1 DE 2912287A1
Authority
DE
Germany
Prior art keywords
data
memory
field
register
arithmetic
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
Application number
DE19792912287
Other languages
English (en)
Other versions
DE2912287B2 (de
DE2912287C3 (de
Inventor
Kazuhide Iwata
Nobuo Okuda
Shigeki Shibayama
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

2«. Wvl 1979
Die Erfindung betrifft ein Datenverai'beitungsgerät, insbesondere ein HilfsdatenVerarbeitungsgerät, welches speziell die von einem Hilfsrechner bzw. Primärrechner gelieferten Daten mit hoher Geschwindigkeit verarbeitet und das Ergebnis der Verarbeitung zum selben Rechner zurückleitet.
Bei Rechneranlagen wird seit einiger Zeit verbreitet ein Hilfsdabenverarbeitungsgerab verwendet, das ausschließlich und exklusiv Operationen so ausführt, daß bei deren Durchführung durch einen Mehrzweck-Hilfsrechner die Verarbeitungszeit verlängert wird, wodurch die Wirksamkeit der gesamten Rechneranlage verbessert wird. Im Betrieb des Ililfsdatenverarbeitungsgeräts müssen die zu verarbeitenden Daten vom Primärrechner zum Hilfsdatenverarbeibungsgerät übermittelt werden, weil letzteres einen Speicher kleiner Kapazität und eine hohe Verarbeitungsgeschwindigkeit im Vergleich zum Primärrechner besitzt. Aus diesem Grund lassen sich nicht alle zu verarbeitenden Daten gleichzeitig im Speicher des Hilfsdatenverarbeitungsgeräts speichern. Infolgedessen übermittelt der Primärrechner diesem Gerät die Daten nur in einer solchen Menge, die durch dieses Gerät verarbeitet werden kann, um ihm nach der Verarbeitung 'ler vorher übermittelten Daten dieselbe Datenmenge erneut zuzuführen. Diese Operation wird fortgesetzt, bis alle zu verarbeitenden Daten wie vorgesehen verarbeitet worden sind. Die für die Datenübertragung zum Hilfsdatenverarbeitungsgerät benötigte Zeit ist daher ziemlich lang, so daß sich auch dann, wenn der Primärrechner mit hoher Geschwindigkeit arbeitet, eine lange Gesamtverarbeitungszeit für die Daten ergibt und daher das Hilfsdatenverarbeitungsgerät hoher Leistung ungenügend und mit geringem Wirkungsgrad ausgelastet wird.
Zur wirksamen Auslastung des Hilfsdatenverarbeitungsgeräts müssen die Datenübertragung zwischen dem Hilfsrechner und
909840/081S
dem Hilfsdatenverarbeitungsgerät und die Operationsdurchführung durch letzteres parallel erfolgen. Beispielsweise wird gemäß Fig. 1 eine zuerst zu verarbeitende Datengruppe 1 vom Primärrechner zum Hilfsdatenverarbeitungsgerät übertragen. Während der nächsten Zeitspanne tf~ führt dann das Hilfsdatenverarbeitungsgerät die Operation an der Datengruppe 1 aus. Während dergleichen Zeitspanne c* wird auch eine zweite Datengruppe 2 vom Primärrechner zum Hilfsdatenverarbeitungsgerät übertragen. Während der nächsten Zeitspanne β führt das Hiirsdutenverarbeitungsgerät die Operation an den Daten 2 aus, und das Verarbeitungsergebnis 1a der Daten 1 wird vom Hilfsdatenverarbeitungsgerät zum Primärrechner zurück übertragen, worauf letzterer die Daten 3 zum Hilfsdatenverarbeitungsgerät überträgt. Anschließend erfolgen die Operationsausführung und die Datenübertragung auf ähnliche Weise auf parallelem Wege. Im allgemeinen wird die Datenübertragung nicht immer parallel mit der Verarbeitung in derselben Zeit durchgeführt. Da dies von der Art der Operation abhängt, sollte eine Entscheidung durch Vergleich der Datenübertragungsgeschwindigkeiten und der Operationsausführzeit in der Normalbetriebsart (ρ,^,ί ; Fig. 1) erfolgen. 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 das Hilfsdatenverarbeitungsgerät im wesentlichen der Zeit für die Operationsausführung gleich ist.
Zur Realisierung eines solchen Steuersystems ist das Hilfsdatenverarbeitungsgerät vorzugsweise mit drei oder mehr Sätzen von Speichereinheiten (storing memories) versehen. Gemäß Fig. 2A sind beispielsweise drei Speichereinheiten M1, M2 und M3 vorgesehen, die jeweils auf einmal die übertragenen oder verarbeiteten Daten zu speichern vermögen. Während
909840/OS1S
der Periode β gemäß Fig. 1 dient der Speicher MI zur Übertragung von Daten 1a und 3 zum und vom Primärreeimer, während die Daten 2, die in der vorhergehenden Periode oc im Speicher M2 gespeichert worden sind, aus dem Speicher M2 ausgelesen und verarbeitet werden, wobei das Ergebnis der Operation in den Speicher M3 geladen wird. Während der Zeitspanne Ύ werden die im Verlauf der vorhergehenden Periode β im Speicher M1 gespeicherten Daten 3 verarbeitet, und das Ergebnis wird sequentiell in den Speicher M2 geladen, während gleichzeitig das im Speicher M3 enthaltene Operationsergebnis 2a zum Primärreeimer übertragen wird und sodann die Daten 4- in den Speicher M3 übertragen werden (vgl. Fig. 2B). Während der Periode ό werden die Daten 4· im Speicher MJ verarbeitetT und das Ergebnis wird fortlaufend in den Speicher M1 geladen, während der Speicher M2 gleichzeitig die Übertragung der Daten 3a und 5 durchführt (vgl. Fig. 20). In der folgenden Periode erfolgt eine ähnliche Operation wie in Fig. 2A, und es werden ähnliche Operationen xtfie in Fig. 2B und 20 wiederholt.
Wenn auf die beschriebene Weise drei Speichersätze in Betrieb gesetzt wex'den, wird die Anforderung an die Software bzw. Programmausrüstung im Vergleich zu dem Fall mit einem Speicher gemildert, wobei Störungen beim Speicherzugriff vermieden werden können.
Es sei ein Fall betrachtet, in welchem bei einer Datenverarbeitungsanlage der vorstehend beschriebenen Art das Hilfsdatenverarbeitungsgerät die Operationen unter Verwendung von Mikroprogrammen durchführt. Wenn dabei im wesentlichen jeweils dieselbe Operation für die Daten 2, 3, 4- usw. diirchge führt werden muß, müssen bei einer bisherigen Anlage drei Mikroprogramme entsprechend den drei Zuständen der Speicherbelegung gemäß Fig. 2A "bis 20 benutzt werden. Bei-
909840/0815
spielsweise werden die Daten 2 aus dem Speicher H2 und die Daten 3 aus dem Speicher M1 ausgelesen. Die Operation muß daher unter Verwendung verschiedener Mikroprogramme für jede Periode ausgeführt werden. Bei der bisherigen Anlage müssen daher verschiedene Mikroprogramme für eine einzige Operation bereitgestellt werden. Dies führt zu einer Vergrößerung der Speicherkapazität für Mikroprogramme selbst.
Aufgabe der Erfindung ist damit die Schaffung eines Datenverarbeitungsgeräts, das eine Anzahl von Speichern anzusteuern und Daten nach einem einzigen Programm zu verarbeiten vermag und das weiterhin als mit hoher Geschwindigkeit arbeitendes Hilfsdatenverarbeitungsgerät einsetsbar ist..
Diese Aufgabe wird bei einem Datenverarbeitungsgerät der angegebenen Art erfindungsgemäß gelöst durch die Ansprüche.
In anderer Ausgestaltung der Erfindung besteht das Datenverarbeitungsgerät aus einer Anzahl von Speichereinheiten, mindestens einer Rechen- und Logikeinheit, einer Registerdatei und einem Mikroprogrammspeicher für Mikroprogramme zur Steuerung dieser Schaltungsbauteile, wobei die vom Mikroprogramm ausgeführten Operationen fortlaufend aus dem Mikroprogrammspeicher ausgelesen werden. Die Registerdatei umfaßt Adressenregister zur Aufnahme oder Speicherung von Adressen in den Speichereinheiten sowie Datenregister zur Speicherung von in die Speichereinheiten eingeschriebenen und aus ihnen ausgelesenen Daten. Diese Register besitzen spezifische Adressen die unmittelbar durch einen Mikrobefehl bestimmt werden. Der Mikrobefehl enthält ein erstes Feld zur Bezeichnung der Operation jeder Speichereinheit, ein zweites Feld (OP-FeId) zur Bezeichnung der Operation der Rechen- und Logikeinheit und ein drittes Feld
909840/0815
(SA-, SB- und DA-Felder) zur Bezeichnung der Operandenregisteradresse. Die Mikrobefehle werden sequentiell aus dein Mikroprogrammspeicher ausgelesen und in ein Befehlsregister eingegeben. Das erste Feld wird dabei dem ersten logischen Wandler augeführt, während das zweite Feld zur Rechen- und Logikeinheit und das dritte Feld zur zweiten logischen Umsetzschaltung geleitet werden.
Das Ausgangssignal der ersten logischen Umsetzschaltung steuert jede Speichereinheit an, und die zweite logische Umsetzschaltung koppelt einige der Register der Registerdatei mit der Rechen- und Logikeintieit. Die im angekoppelten Register gespeicherten Daten werden der Rechen- und Logikeinheit zugeliefert. Letztere führt an den zugelieferten Daten die durch das zweite Feld bezeichnete Operation aus und lädt das Operationsergebnis in das Register, das durch eines der Ausgangssignale der zweiten logischen Umsetzschaltung bezeichnet wird. Jede logische Umsetzschaltung ändert entsprechend dem von außen gelieferten Steuersignal eine Kombination der Jeweiligen betreffenden Felder eines Mikrobefehls.
Wenn die Speichereinheit beispielsweise aus drei Einheiten MU1, MU2 und MU3 besteht, bezeichnet das erste Feld des Mikrobefehls "Auslesen" aus Einheit MU1 und "Einschreiben" in Einheit MU2 (anstelle von MU wird später MS benutzt). Wenn ein solcher Mikrobefehl aus dem Mikroprograininspeicher ausgelesen wird, bezeichnet das Ausgangssignal· für die erste logische Umsetζschaltung entsprechend einem Steuersignal beispielsweise "Auslesen" aus Einheit MU2 und "Einschreiben" in Einheit MU3.
Das gleiche gilt entsprechend auch für den zweiten logischen Wandler bzw. die Umsetzschaltung. Auf diese Weise kann beim
9098Λ0/0815
erfindungsgemäßen üatenverarbeitungsgerät ein und dasselbe Programm gemäß den Fig. 2A bis 20 verschiedene PiOzesse durchführen.
Im folgenden sind bevorzugte Ausführuiigsroniien der .ßri'iiidung anhand der beigefügten Zeichnung näher erläutert. Eg nei'"t:
Fig. 1 schematische Darstellungen zur Erläuterung der und 2 Arbeitsweise eines bisherigen Schnell-Datenverarbeitungsgeräts,
Fig. 3A gemeinsam ein Blockschaltbild einer Ausfülmings- und 5B form eines Datenverarbeitungsgeräts gemäß der .Erfindung,
Fig. 4A ein Format eines beim erfixidungsgemüßeri Gerät. bis 4-C benutzten Mikrobefehls,
Fig. 5 ein Format eines beim erfindungsgemäßon Gerät benutzten privilegierten Befehls,
Fig. 6 ein Beispiel für das MUAT-PeId gemäß Fig. Ά1,
Fig. 7 das Format eines beim erfindungsgeniäßen Gerät benutzbaren Mikroprogramms,
Fig. F) ein Blockschaltbild einer logischen Wandler- bzw. Umsetzschaltung zum Umsetzen eines Speicherbereichs ,
Fig. 9 ein Blockschaltbild einer logischen Umsetzschaltung für das SA-, SB- u"-i DA-FeId,
Fig. 10 ein Blockschaltbild eines Beispiels für eine Speichereinheit und
9098A0/0816
Pig. 11 ein Blockschaltbild eines Datenverarbeitungsgeräts gemäß einer anderen Ausführungsform der Erfindung.
Das in Fig. 3 dargestellte erfindungsgemäße Datenverarbeitungsgerät ist, über Sammelleitungen wie allgemeine Ein-/ Ausgabevorrichtung, mit einem Hilfsrechner vei'bunden, das aus einem Primärrechner (CPU) 110 und einem Hauptspeicher (MM) 111 besteht. Das Datenverarbeitungsgerät" umfaßt einen Anschlußteil 112, einen Steuerteil 11$, einen Arbeibs- oder Operationsteil 114 und einen Speicherteil 115. Der Anschlußteil 112, welcher Ein- und Ausgang zwischen dem Datenverarbeitungsgerät und dem Primärrechnersystem überwacht und ausführt, besteht aus einem Befehlsübertragungs-Steuerteil (CTG) 116, einem Datenübertragungs-Steuerteil (DTC) 117, einem Ausführungs-Steuerteil (EC) 118, einem DMA-Steuerteil 119 und einem Ein-/Ausgangs-Schnittsteilenteil 120 (nachfolgend kurz I/O-Interface genannt).
Der Anschlußteil 120 ist mit dem Primärreclmersystem über eine DMA-Sammelleitung 121 und eine I/0-Sammelleitung 122 verbunden. Der CTC-Teil 116 empfängt über die I/O-Sammelleitung 122 und die I/O-Schnittstellenschaltung 120 einen Befehl vom Primärrechner 110, und er überträgt den Befehl zum DTC-Teil 117 und zum EC-Teil 118. Der DTC-Teil 117 steuert die Datenübertragung über die DMA-Sammelleitung 121 zwischen dem Hauptspeicher MM 111 und einem noch zu beschreibenden Speicherabschnitt. Der EC-Teil 118 startet einen noch zu beschreibenden Steuerabschnitt.
Der Steuerteil 113 besteht aus einem Mikroprogrammregler (MPC) 123, einem Mikroprogrammspeicher (MPM) 124 und einem Durchlaufregister (Pipelineregister) I25. Der Mikroprogramm-
909840/0815
speicher 124 speichert ein Mikroprogramm, das eine Prozedur zur Durchführung eines Operationsteils T14 und einen Zugriff zu einer noch zu erläuternden Speichereinheit bestimmt. Der Mikroprogrammspeicher 124 mit einer Speicherkapazität von beispielsweise 128 Worten (JO Bits/Wort) besteht aus einem RAM bzw. ROM. Der Mikroprograinmregler 123 bestimmt die Adresse eines aus dem Mikroprogrammspeicher 124 auszulesenden Mikrobefehls. Der ausgelesene Befehl wird im Durchlaufregister 125 gesetzt, das im vorliegenden Fall einem gewöhnlichen Befehlsregister äquivalent ist. Der EG-Teil 118 überträgt eine Startadresse eines Mikroprogramms zum Mikroprogrammregler 123 (MPC) zum Einschalten desselben, ivoraufhin dieser eine Adresse liefert, die als nächste in Abhängigkeit vom Inhalt des NA-Felds eines noch su beschreibenden Mikrobefehls und von den Zuständen dor. Kodes des Operationsteils ausgelsesen werden soll.
Der Operationsbereicli 114 besteht aus einer Registerdatei (register file RF) 126 und einer arithmetischen Logikeinheit (ALU) 127. Das RF 126 besteht aus einem 16 χ Ib-Bithauptregister RO bis R15 mit individuellen Adressen, die als Quell- und Bestimmungsregister für die ALU 127 ansteuerbar sind. In Jenen Registern sind den Registern RO bis R2 die Adressregister der Speichereinheiten MU1 bis MlPj, die nachfolgend noch beschrieben werden, jeweils zugeordnet und jeweils die Register R4 bis R6 dem Datenregister der Speichereinheit MU1 bis MU3 zugeordnet. Die ALU 127 kann parallel 16-Bit-Operationen durchführen.
Der Speicherbereich 115 schließt drei einzelne Speicher 128 bis 130 ein und sind ebenso als MU1 bis MU3 bezeichnet. Jede Speichereinheit weist eine Kapazität von 4 KW (16 Bit/W) z. B. und individuelle Adressen 0 bis 4095 (dezimal) auf. Jede Speichereinheit erlaubt das parallele
9098 /,0/081S
Lesen und Schreiben und ist des weiteren mit zwei Toren versehen; eines für die Schreib/Leseoperation des HF 126 und das andere zur Schreib/Leseoperation von dem .DMA Steuerteil 119.
In Fig. 'I- ist das Format eines MikroprogrammbefehlG dargestellt, der in dem MPM 124- gespeichert ist. In dem Format wird das ITA-Feld 140 zur Bestimmung der nächsten Mikrobefehlsadresse des Mikroprogramms verwendeb, d. h. der Adresse des nächst auszuführenden Mikrobefehls.Speziell wird das NA-FeId des in dem Durchlaufregister 125 gespeicherten Mikrobefehls an die MPC 123 geschickt. Der ALU-Bereich 141 wird verwendet, um den Operationsbereich 140 zu steuern und weist Felder auf, wie sie in -^ig. 4B dargestellt sind. In dem ALU-Bereich 141 bzeichnet ein OP-FeId 143 die durch die ALU 127 ausgeführte Operation. Ein SA-Feld 144 und ein SB-Feld 145 bezeichnen die Adresse des Quellr-^gisters in RF 156 zum Speichern der durch die ALU 127 zu verarbeitenden Daten. Ein DA-FeId 146 bezeichnet die Adresse des Registers in dem RF 126,in welchem das Ergebnis der Verarbeitung durch die ALU 127 gespeichert wird. Ein Speicherbereich 142 bezeichnet die Operationen von drei Speichern MS1 bis MS3» wie sie in Fig. 4C dargestellt sind, das bedeutet, daß sie den Speicherbereich 115 steuert. MS1 bis MS5 sind die Namen der Speicher in dem Mikroprogramm (software). Die Beziehung von jenen mit den Speichereinheiten MU1 bis MU3 (in hardware) werden nachfolgend beschrieben. Das GO-Bit 147 entspricht einem Freigabesignal des entsprechenden Speichers. R/W-Bit 148 bezeichnet das Einschreiben oder Auslesen für den entsprechenden Speicher.
Unter Bezugnahme auf die Fig. 3A und B werden, wenn der Mikrobefehl der von dem MPM 24 in das Register 125 geladen ist, der ALU-Bereich 141 und der Speicherbereich 142
909840/081S
BAD ORIGINAL
2312287
an den Ausführbereich 114 und den Speicherbereich 115 Jeweils über eine Sammelleitung 151 abgegeben. Das OF-FeId 143 wird in das Register 132 geladen und steueii; dann den Betrieb der ALU 12?.
Das SA-Feld 144, das SB-Feld 145 und das DA-FeId 146 werden an einen logischen Wandlerschaltkreis (LR) 133 abgegeben. Das Ausganp,-ssignal des LR 133 wählt darm die Register in der RF 126 aus. Der Speicherbereich 142 wird mit dem logischen Umwandlungsschaltkreis (LM) 134 zugeführt. Der Ausgang des LM 134 steuert die Speichereinheiten 128 bis I30. Ein Steuersignal zur Bestimmung der logischen Wandlerarb des LR 133 und des LM 134 wird von der EC 118 abgegeben.
Der Betrieb des Datenprozessors, wie er in den FJg. 3Λ und B beschrieben ist, wird nachfolgend beschrieben. Her Betrieb des Datenverarbeitungsgeräts beginnt, wenn die OPU 110 Anfangsdaten an die CTC 116 durch die im 1/0-Sammelleitimg 122 und das I/O-Interface 120 abgeben. Die Paten umfassen die Adressen der von dem MM 111 an die CTC 116 abzugebenden Daten. Diese steuert den DMA-Steuerbereich 119 und erhält; eine Reihe von Daten von dem MM 111 durch die DMA-Sammelleitung 121 und dem DMA-Steuerbereich 119. Die Daten werden dann klassifiziert in einen Datenübertragungssteuerblock (DTCB), der an die DTC 117 abgegeben wird, und einen Ausführungssteuerblock (ECB) , der der EC 118 zugeführt wird.
Ein Beispiel für DTCB ist in Fig. 5A dargestellt. Das DTC-Steuerfeld I50 bezeichnet die zu steuernde Operation durch das DTC 117» beispielsweise den Datentransport vom MFI 111 in den Speicherbereich 115 oder umgekehrt. Das MMSA-FeId und d.····· MMEA-FeId 152 stellen die Startadressen und die Endadressen des MM 111 dar. MUSA-FeId 153 und das HUEA-FeId 154 stellen die Startadressen und die Endadressen
909840/0815
jeder Speichereinheit MUI der Taste T'n, MU2 129 und MUJ dar. Das Verkettungsadressfeld 55 ist die Adresse des MM 111, in welchem das DTGB, das nächstfolgend ausgeführt wird, gespeichert ist.
Ein Bojispiel von ECB ist in Fig. 5B dargestellt. Das EO-Gteuerfeld 156 steuert die Operation, die durch das EC gesteuert v/erden soll. Das MICRO-GTA-FeId 157 stellt die Startadresse des Mikroprogramms dar. MUAT (Memory unit assignment table) 158 steuert die logischen Wandlerkreise 133 und 134. Das Verkettungsadressfeld 159 stellt die Adresse des MM 111 dar, wo das nächst auszuführende ECB gespeichert ist. In diesem Beispiel können DTCB und ECB als Befehl betrachtet werden, der im Wert höher als ein Mikroprogramm ist und der für jedes Segment der Verarbeitung durch das DaLenverarbeitungsgerät (innerhalb jedes in Fig. 1 dargestellten Zeitintervalle) vorgegeben ist. Die DTCB und ECB werden durch den DMA-Steuerbereich 119 abgerufen, bevor die Verarbeitung jedes Segments beginnt, ohne unabhängig von der CPU 110 zu sein.
Fig. 5C zeigt ein Beispiel eines MUAT-Feldes 158. Das MU1-FeId 116 bezeichnet eine entsprechende Beziehung zwischen dem operationsbestimmenden Teil der Speichereinheit MUI in hardware und einem speicherbezeichnenden Teil des Mikroprogramms. In gleicher Weise bezeichnen die MU2- und MU3-Felder 162 bzw. 162, welchen Speichern in dem Mikroprogrammspeicher MU2 129 und MU3 130 sie in hardware entsprechen. Der Inhalt des so gebildeten MUAT-Feldes wird ein Steuersignal bzw. Signale für die logischen Wandlerschaltkreise 133 und
Der Steuerbereich 115 startet mit dem Betrieb, wenn die EC 118 ο·η MlCRO-STA-FeId 157 der ECB an die MPC 123 ab-
909840/08 1 S
BAD ORSGiNAL
gibt. Das w™ 123 gibt dann die Startadressen eines Mikroprogramms in den MPM 124, d. h. den Inhalt des MIGRO-G L1A-Feldes 157 in die ΜΓΜ 124, wobei der entsprechende Mikrobefehl gebildet wird. Der aus dem MPM 124 ausgelesen© Mikrobefehl wird in das Durchlaufregister 125 geschrieben. Der ALU-Bereich 141 und der Speicherbereich 142 in dem Mikrobefehl werden an den Operationsbereich 1 14 und den Speicherbereich 115 über eine Sammelleitung 131 übermittelt und verarbeitet. Zu dieser Zeit wird das NA-FeId 140 an das MPC 123 abgegeben, wo die Adressen eines nächst auszuführenden Mikrobefehls bestimmt sind, und dann wird der Mikrobefehl ausgeführt und das Auslesen dos nächst auszuführenden Mikrobefehls parallel ausgeführt.
Unter der Steuerung der DTC 117 wird der Datentransport zwischen MM 111 und jeder der Speichereinheiten MUI, MU2 und MU3 ausgeführt. Die Richtung des Datentransports wird durch das DTC-Steuerfeld I50 bestimmt. Wenn beispielsweise Daten in dem MM 111 an die Speichereinheil; MU1 128 abgegeben werden, steuert der Inhalt des MMSA-Feldes und des MMEA-Feldes 152 den DMA-SteuerteilH9 um sequentiell Daten in dem MM 111 über die DMA-Sammelleitung 121 aunnulor.eu. Der Inhalt des MUSA-Feldes 152 und MUEA-Feldes 154 geben eine Adresse auf die Adressammelleitung 135 und die ausgelesenen Daten von dem MM 111 über die DMA Sammelleitung 121, den DMA Steuerbereich 119 und die Speichersammelleitung 136 in deren Adressort„ Die Verwendung des DTC 117 und des EC 118 läßt einen Datentransport und die Durchführung der auszuführenden Operation parallel und mit hoher Geschwindigkeit zu.
Wie vorstehend beschrieben, wird eine Operation durch das Datenverarbeitungsgerät gemäß der Erfindung derart durchgeführt, daß die Daten in einer Speichereinheit verarbeitet und das Ergebnis der Verarbeitung in einer anderen Speicher-
909840/0815
einheit gespeichert wird· Im Fall von drei Speichereinheiten können drei Fälle, wie sie in den Fig. 2A, B und C wie folgt dargestellt werden:
1) Die Daten von der Speichereinheit MU2 werden verarbeitet und das Ergebnis der Verarbeitung in der Speichereinheit MU 3 gespeichert,
2) die Daten von der Speichereinheit MU1 v/erden verarbeitet und das Ergebnis der Verarbeitung in der Speichereinheit MU2 gespeichert,
5) die Daten in MU3 werden verarbeitet und das Ergebnis der Verarbeitung wird in der Speichereinheit MUI gespeichert. Das MUAT-FeId (Fig. 5C) wird zur Bezeichnung der Beziehungen zwischen den Speichern MS1 bis Mo5 in einem Mikroprogramm, und die Speichereinheiten MU1 bis MU3 in hardware verwendet. Im erstgenannten Fall, ist das MUAT vorgegeben, wie es in Fig. 6A dargestellt ist. Das bedeutet, daß folgende Beziehungen festgelegt; werden:
MU1 : MS1
MU2 : MS2
MUJ :
Im zweiten Fall werden folgende Beziehungen bestimmt, wie sie in Fig. 6B dargestellt sind.
MU1 : MS2
MU2 : MS3
MJ? : MS1
Im dritten Fall bezeichnet das MUAT-FeId folgende Beziehung und ist :in Fig. 5C dargestellt.
909840/031S
BAD ORIGINAL
MUI : MS3 MU2 : MS1 MU3 : MS2
Es sei vorausgesetzt, daß jeweilige Register in dom RV in dem Mikroprogramm kodiert sind, wie in der Tabelle dargestellt ist.
Tabelle 1
Gode .Register
0000 Adressregister von MSI
0001 Adressregister von MS2
0010 Adressregister von MSJ
0011 R3
0100 Dateriregister von MS1
0101 Datenregister von MfI2
0110 Datenregister von MS5
0111 R7
1000 R8
1001 R9
1010 R10
1011 R11
1100 R12
1101 ß13
1110 im
1111
Der Speicherbereich 142, der durch die Sammelleitung übermittelt wird, wird, wie in der Beziehung gemäß der Tabelle 1 angegeben, durch das LM 13'+ umgesetzt. In gleicher Weise werden die SA, SE und DA-Felder in LR 13J> umgesetzt.
909840/0815
Es wird ein Mikroprogramm wie in Fig. 7 dargestellt, angenommen (wobei das ΝΛ—Feld weggelassen ist). Der Mikrobefehl auf Adresse A weist "0000" im Operationsfeld 180, d. h. keine Operation (NOP). In diesem Fall ist der Inhalb der SA-, GB- und DA-Felder 181 bis 183 unbedeutend, aber da der Inhalt des MS2-Feldes 184 "10" beträgt, wird das Auslesen des Speichers MS2 bezeichnet. Im ersten Falle entspricht der Speicher MS2 der Speichereinheit MU2, und auf diese Weise gibt das LM 134- ein Zugri-ffssignal an die Speichereinheit MU2 ab und gibt Daten an die Stelle von MU2 ab, die durch die Adresse in dem Register RI von KF bis Register R5 festgelegt sind. In diesem Flaschinenzyklus führt die ALU 127 ebenfalls keine Operation aus. Im nächsten Maschinenzyklus wird der Mikrobefehl in der Stelle, die durch die Adresse (A+1) festgelegt ist, abgearbeitet. Bei der Anweisung arbeitet der Speicher nicht, während die ALU 127 eine Operation durchführt. Da "0001" in dem OP-FeId 185 die Ausführung der Addition bezeichnet, werden die Inhalte der Register, die durch das SA-Feld 186 und das SB-Feld festgelegt sind, miteinander addiert und das Ergebnis der Addition wird in das Register, das durch das DA-FeId 188 festgelegt ist, eingeschrieben. "0101" des SA-Feldes 186 bestimmt das Datenregister des Speichers MS2 derart, daß in dem ersten Fall das Register R5 durch die LR 133 ausgewählt wird. Das SB-Feld 187 bezeichnet das Register R9 bei "1001". Das DA-FeId 188 ist "0110" und bezeichnet das Datenregister des Speichers MS3.
Demgemäß wird der Inhalt des Register's R5 und des Registers R9 an die ALU 127 durch die Sammelleitungen 137 und 138 abgegeben, und das Ergebnis der Operation wird in das Register R6 über die Sammelleitung 139 geladen. In dem nachfolgenden Maschinenzyklus wird der Maschinenbefehl an der Stelle, die durch die Adresse (A+2) festgelegt ist, aus-
909840/081S
geführt. Das OP-FeId 189 der Mikrobefehlsstelle, die durch die Adresse (Λ+2) festgelegt ist, beträgt "0000" und bedeutet NOP, weshalb die ALU 127 keine Operation in diesem Zyklus ausführt. Das MS3-Feld 190 beträgt "11", so daß das Einschreiben in den Speicher MS3 bezeichnet wird. Wenn das MLfAT-FeId 1) in Fig. 6A bezeichnet, entspricht der Speicher ΓΊ33 dem Speicher MLT3 und demzufolge legt das LM 134 ein Zugriffssignal an den Speicher MU3 an und lädt das Verarbeitungsergebnis in dem Register R6 an die Stelle des Speichers MÜ3, der durch die Adresse in r'^'n Register \12 festgelegt ist.
Ebenso wird das Datenverarbeitungsgerät keine Operation im zweiten Fall ausführen, wenn dasselbe Programm, wie es in Fig. 7 dargestellt ist, verwendet wird. In diesem Fall wird das MUAT, wie in Fig. 6B dargestellt, an das LR 133 und das LM 134 von der EC 118 abgegeben. In dem Mikrobefehl der Adresse A ist die ALU 127 in dem NOP-Betrieb, jedoch wird das "Auslesen" durch den Speicher MS2 bezeichnet. Wenn gegenwärtig der Speicher MS2 der Speichereinheit MU1 entspricht, gibt das LM 134· ein Zugriffssignal an die Speichereinheit MU1 ab, so daß die in den Adressen, die durch das Adressregister RO festgelegt sind, gespeicherten Daten an das Datenregister R4 ausgegeben werden. Im nachfolgenden Maschinenzyklus wird der Mikrobefehl in einer Adresse (A+1) ausgeführt. Dieser Befehl bezeichnet, daß die ALU 127 eine Addition ausführt. Die Summationsdaten sind in dem Datenregister des Speichers MS2 und in dem Register R9 durch das SA-Feld und das SB-Feld, wie in Tabelle 1 dargestellt, abgespeichert. Da der Speicher MS2 der Speichereinheit MU1 entspricht, wählt das LR 133 die Register R4 und R9 aus, von denen das erstere das Datenregister der Speichereinheit MU1 darstellt. Die Daten in den Registern R4 und R9 werden über Sammelleitungen 137 und 138 an die ALU 127 abgegeben. Diese führt eine Addition aus und das
909840/0815
BAD ORIGINAL
29Ί2287
Ergebnis der Addition wird in dem Datenregister des Speichers MS 3 gespeichert, der durch das DA-FeId spezifiziert ist;. Der Speicher MS3 wird so geschaltet, daß er der Speichereinheit MU2 entspricht. Das Ergebnis der Operation wird darm in dem Register R5 und dem MU2-Datenregiste.r gespeichert und die Ausführung des Mikrobefehls in der Adresse (A+1) endet;. Der Mikrobefehl in der Adresse (A+2) "Einschreiben" in den Speicher MSJ ist bezeichnet worden. Da die Speichereinheit MS3 so geschaltet ist, daß sie der Speichereinheit MU2 entspricht, wird der Inhalt des Registers R5 in eine Adresse geladen, die durch das Register R2 spezifiziert ist.
Ebenso in dem dritten Fall kann das Datenverarbeitungsgerät, wenn MUAT gemäß Fig. 60 vorgesehen ist, dieses durch die Instruktion verarbeiten, wie sie in Fig. 7 dargestellt ich.
In Fig. 8 ist ein Beispiel des LM 134- zum Konvertieren des Speicherbereichs gezeigt. Die Information in der Speichereinheit 210 wird selektiv an Multiplexer 211 bis 216 r.ele^t. Das M(JAT-FeId wird von der EO 118 als Steuersignal für die jeweiligen Multiplexer zugeführt. Beispielsweise stellt das MUI-FeId von MUAT das Steuersignal für die Multiplexer 211 und 212 dar« Das MU2-Feld ist das Steuersignal für die Multiplexer 213 und 214. Das MU3-Feld ist das Steuersignal für die Multiplexer 215 und 216. Wenn das MUI-FeId MS1 ist, geben die Multiplexer 211 und 212 Signale ab, die an die Eingangsanschlüsse 1 jeweils angelegt werden. Wenn das MU1-FeId MS2 oder MS3 darstellt, werden Ausg- -gssignale abgegeben, die an die Eingangsanschlüsse 2 oder 3 angelegt werden. In gleicher Weise werden den Multiplexern 213 und 214 sowie 215 und 216 Signale zugeführt. Die Ausgangssignale der Multiplexer 211 und 212 werden an die Speichereinheit MU1 abgegeben. Die Ausgangssignale der Multiplexer 213 und 214 werden der Speichereinheit MU2 zugeführt, und
9098AQ/081S
BAD ORIGINAL
die Ausgangssignale der Multiplexer 215 und 216 werden der Speichereinheit MU3 zugeführt.
In Fig. 9 ist ein Beispiel des LR 133 zum Durchführen dor Umwandlung im SA-, BA- und DA-FeId dargestellt, Das SA-Feld (BA-oder DA-FeId) 220 wird von 4 Bits gebildet. MIM, M[I2 und MU3, die dan MUAT 221 bilden, werden von der EG 113 zugeführt, und sind ebenfalls durch 4 Bits gebildet. In diesen Feldern bezeichnet die Information "0001" die ßpeichereinheit MU1, "0010" die Speichereinheit HU2 und "0011" die Speichereinheii f- MU3. Die Information im MU3-Feld wird an den Eingangsanschluß des Multiplexers 224 über die Gattergruppe 222 angelegt. Die Information im MU2-Feld wird an den Eingangs.-nschluß des Multiplexers 22.Γ3 über die Gaf-tergruppe 225 angelegt. Die unteren 2 Bits der Information zur Registerbestimmung 220 werden als Auswahlsignale für die Multiplexer 224 und 225 verwendet. Wenn das Auswahlsignal von 2 Bits "00" beträgt, wird der Eingangs ans chi Uli 0, und bei "01", "10" und "11" die Eingangsanschlüsse 1, 2 bzw. 3 jeweils ausgewählt. Die Ausgänge der Multiplexer 224 und 245 werden an die Eingangsanschlüsse 0 der Multiplexer 226 und 227 angelegt. Der andere Eingangsanschluß 1 der Multiplexer 226 und 227 wird mit den unteren 2 Bits der Registerbestimmungsinformation 220 verbunden. Die höheren 2 Bits der Registerbestimmungsinforniation 220, die durch die Gattergruppe 228 zugeführt wird, werden als Auswahlsignale für die Multiplexer 226 und 227 verwendet. Die höheren 2 Bits der Registerbestimmungsinformation 220 werden direkt für die oberen 2 Bits des Ausgangssignals des LR 133 ve endet. Die Ausgangssignale der Multiplexer 226 und 227 werden als die unteren Bits des Ausgangssignals des LR 133 verwendet. Wenn die Adressinformation "0101" beträgt, wird das Datenregister des Speichers MS2 bezeichnet, wie aus Tabelle 1 ersichtlich. Im ersten Fall mit dem MUAT
909840/081S
gemäß Fig. 6Λ beträgt das Ausgangssignal des LK 135 "ΟΙΟΙ" und bestimmt r>~>s Register R5 des RF 126. Im zweiten Fall mit dem MUAT gemäß ^ig. 6B beträgt das Ausgangssignal dec LR 133 "0100" und bezeichnet das Register R4 dec RF 126. In dem dritten Fall mit dem MUAT gemäß Fig. GC betrügt das AuGgangssignal des LR 133 "0110" und bestimmt das Register R6 des RF 126.
Wie in Tabelle 1 in diesem Beispiel dargestellt, ist der zur Adressumwandlung vorgesehene Code jener, bei dem die höheren 2 Bits "00" zur Bezeichnung des Adressregisters dient, und der Code mit den oberen 2 Bits "01" zur Bezeichnung des Datenregisters. Unter Bezugnahme auf die anderen Codes gibt das LR 133 dasselbe Ausgangssignal wie das Eingangssignal ab; jedoch selbst wenn alle Codes konvertiert sind, entsteht kein Problem insbesondere dadurch, daß ein Mikroprogramm ohne Rücksicht auf den früheren Registeiänhalt verarbeitet wird. Die in Fig. 9 dax-gestellten Schaltkreise sind entsprechend allen Feldern zur Bestimmung der Register mittels eines Mikroprogramms vorgesehen. Ea kann jedoch a\ich ein einzelner Schaltkreis im "time division"-Betrieb für die SiV, SB-und DA-Felder verwendet werden.
In FIg. 10 ist ein Beispiel einer Speichereinheit MU1 des Datenverarbeitungsgeräts gemäß Fig. 3B dargestellt. Die anderen ßpeichereinheiten MU2 und MU3 können ebenso wie vorstehend beschrieben ausgebildet sein. Die Speichereinheit MU1 wird sowohl durch den DTC 117 als auch das Mikroprogramm gesteuert und besteht aus einem Speicherdatenfeld 231, einem internen Datenregister 232, einem internen Adi'essregister 233 und einem Steuerschaltkreis 234. Der Multiplexer 255 ist an dem Anschluß 1 mit der Sammelleitung 136 und am Anschluß 2 mit dem Datenregister R4 der Speichereinheit MUI des RF 126 verbunden. Der Multiplexer 256 ist
909840/0815
- 23 -
mit dem Anschluß 1 mit der Adressensammelleifcung 135 und mit dem Anschluß 2 mit dem Adressregister RO der Gpeichereinheit MU1 in dem RF 126 verbunden. Wenn ein Steuersignal GO durch das LM 134- angelegt wird, wählen die Multiplexer 235 und 236 den Anschluß 2 aus und in dem internen Register 233 wird der Inhalt des Registers RO abgestellt. Zu dieser Zeit in Abhängigkeit von einem Steuersignal R/V/, das durch das LM 134-zugeführt wird, werden Daten in einem Lesebetrieb von dem Speicherdatenfeld 231 in das interne Datenregister 232 ausgelesen und an das Register R4- über· den Multiplexer 235 abgegeben. Im Schreibbetrieb wird der Inhalt des Registers R4 in der Adresse, die durch das interne Adressregister 233 innerhalb des Speicherdatenfeldes 231 festgelegt ist, gespeichert, nachdem es in das interne Dat-enregister 232 durch den Multiplexer 235 abgestellt wordon ist, Wenn kein Steuersignal GO zugeführt wird, werden die Multiplexer 235 und 236 den Anschluß 1 auswählen. Zu dieser Zelt wenn ein DTC-Befehl von der DTO 117 erhalten wird, bewir:!; die Speichereinheit MU1 ein .Einschreiben der Daten, d.ic von dem MM 111 über die Sammelleitung 136 und dem DMA-Steuerteil 119 zugeführt werden, oder ein Auslesen der von dein MM 111 sugeführten Daten.
Wie aus der vorstehenden Beschreibung ersieh'lieh ist, kann das Datenverarbeitungsgerät gemäß der Erfindung als ein Ililfsdatenverarbeitungsgerät verwendet iverden, das mit hoher Geschwindigkeit die von einem Primärrechner zugeführten Daten mit hoher Geschwindigkeit verarbeitet und das Ergebnis der Verarbeitung an den Primärrechner abgibt. Des weiteren kann das Datenverarbeitungsgerät die Verax'beitungsseit beträchtlich verkürzen. Insbesondere sind eine Anzahl von Operationen durch Verwendung desselben Mikroprogramms möglich, so daß ein schmales Fassungsvermögen für einen Mikroprogrammspeicher zur Steuerung genügt.
909840/0815
29Ί2287
In Fig. 11 ist eine weitere Ausführungsform des Datenverarbeitungsgeräts gemäß der Erfindung dargestellt. Gleiche Besugszeichen zeigen gleiche Teile oder Bereiche wie in den Fig. 3Λ und 3B· -Ein Block, der durch die gebrochene Linie 112 bezeichnet ist, stellt einen Verbindungsteil einschließlich der CTC 116, DTC 117, EC 118, des WA- ^teuerteils 119 und des I/O-Interfaces 120 dar, wie es in Fig. 3A gezeigt ist. Eines der Merkmale der Ausführungsform besteht in der Bereitstellung einer ersten Beti-iebseinheit 241 (ALU1), einer zweiten Betriebseinheit 242 (A.LU2) und einem Multiplizierer 243 (MUL). Durch diese Ausbildung sind höhere und komplexere Operationen verglichen mit dem in den Fig. 3A und 3B gezeigten Ausführungsbeispiel möglich. Beispielsweise, wenn Bilddaten verarbeitet worden, kann eine vorgegebene Operation für jede Stelle eines Bildelementes durchgeführt werden. Eine gewöhnliche Speicheranordnung speichert Bilddaten in der Ordnung der Bildstellungen; jedoch sind die zu verarbeitenden Daten nicht notwendigerweise in dieser Ordnung angeordnet. Tn einem solchen Fall wird die Ordnung der Daten wieder hergestellt, so daß sie sich in der Ordnung des Betriebsablaufs bzw. der auszuführenden Operation befinden, und werden dann dem Hilfsdatenverarbeitungsgerät zugeführt, um eine Verkürzung der Verarbeitungszeit zu erreichen. Andererseits werden die Bilddaten, die durch das MM 111 gespeichert sind, in den Cpeicherteil abgestellt werden, ohne daß die Ordnung geändert wird. Wenn beispielsweise die Summe von Produkten durch Verwendung der ALU2 242 und des MUL 243 gebildet wird, kann die ALU1 241 die Adresse der Daten berechnen, die von dem Gpeicherteil herausgenommen werden. In diesem Beispiel werden die Daten, die der durch die ALUI 241 berechne' ·η Adresse entsprechen, aus dem ßpeicherteil herausgenommen, und das Ergebnis der durch die ALU2 242 und den MUL 243 durchgeführte Operation wird wiederum in die Adresse geladen, die
909840/0815
BAD ORIGINAL
durch das ALU1 24-1 berechnet ist. Während dieser Operation kann die Verarbeitungszeit reduziert werden, ohne daß die Ordnung der Bilddaten verändert wird. Dieses Merkmal ist sehr nützlich, wenn jede Eingangs bilddaten jede Bildelementstellung der Ausgangsbilddafcen beeinflussen.
Das andere Merkmal des in -Fig. 11 dargestellten AusfüMruugsbeispiels besteht darin, daß der aus dem MPM 124- ausgelesene Mikrobefehl in Übereinstimmung mit dem MUAT durch den Logikwandlerschaltkreis (LU) 21Y1I geändert wird, bevor er in das Durchlaufregister 125 abgestellt wird. Eine Kombination derselben, wie sie in ^ig. 8 und 9 dargestellt ist, kann für den LU 24A verwendet werden. In dem von dem MPM 124 ausgelesenen Mikrobefehl wird das Fold, das die Betriebsweise des Speichers (Speicherbereich) spezifiziert, und das Feld zum Spezifizieren des Kegisters der Quelle oder der Bestimmung (SA, SB und DA-Felder) an den logischen Wandlerschaltkreis 21V1V abgegeben. Die anderen Felder werden in das Durchlaufregister 125 in ihrer ursprünglichen Sättigung bzw. Ordnung abgestellt. Ein MUAT-Tabellencpeicher kann in dem Steuerbereich vorgesehen werden, und zwar anstelle dor Spezifizierung eines MUAT von einem Primärrechner, um das verwendete MUAT zu bestimmen. Jegliche Anzahl von Speichereinheiten kann verwendet werden, obgleich in diesem Beispiel nur drei Speichereinheiten angegeben sind.
Ein Verarbeitungsgerät, in welchem jegliche der Betriebsoder Operationseinheiten aus einem Multiplikationsschaltkreis bestehen, kann als System eingesetzt werden, das ausschließlich die Faltung oder die Summe von Produkten mit hoher Geschwindigkeit durchführt. In der Berechnung von
N
D = Σ, Ai*Bi kann das Produkt (Ai#Bi) durch Verwendung
909840/0815
- 51 -
des MUL 243 berechnet werden, wobei die Summation durch das ALU2 242 durchgeführt wird. Der aufaddierte Wert kann nur in der Zeit zur Berechnung des Produkts erhalten werden, da der MUL 243 und die ALU2 243 parallel arbeiten.
Kurz zusammengefaßt betrifft die Erfindung also ein Datenverarbeitungsgerät mit einem Primärcomputer. Dieses ist durch eine Vielzahl von Speichereinheiten, zumindest einer arithmetischen und einer logischen Einheit, einer Eegisterdatei und einem Mikroprogrammspeicher zum Speichern von Mikroprogrammen zwecks Steuerung dieser Schaltkreiskomponenten gebildet. Das erste Feld jedes Mikrobefehls des Mikroprogramms wird einem ersten logischen Wandler zugeführt, dessen Ausgangssignal jede Speichereinheit ansteuert. Das dritte Feld des Mikrobefehls wird einem zweiten logischen Wandler zugeführt, dessen Ausgangssignal bewirkt, daß die in durch die Registerdatei ausgewählten Registern gespeicherten Daten an die arithmetische und logische Einheit abgegeben werden. Die Arithmetik- und Lofükeinheit verarbeitet die zugeführten Daten in Übereinstimmung mit der Bestimmung durch das zweite Feld und lädt das Ergebnis der Operation in das Register, das durch die Ausgangssignale des zweiten logischen Wandlers spezifiziert ist. Jeder logische Wandler ändert in Übereinstimmung mit dem von außen bestimmten Steuersignal eine Kombination des entsprechenden Feldes eines Mikrobefehls.
9098A0/0R1S
BAD ORIGINAL

Claims (1)

  1. He.ikel, Kern, Feiler & Hänzel Patentanwälte
    Möhlsfraße 37 D-8ü(.\> München 80
    Tel.: 089/982085-87 Telex: 0529802 hnkld Telegramme: ellipsoid
    18. he:. *m
    Tokyo Shibaura Denk! Kabushiki Kaisha 72 Horikawa-cho, Saiwai-ku, Kawasaki-shi, Japan
    Datenverarbeitungsgerat
    Patentansprüche
    1. Datenverarbeitungsgerät, gekennzeichnet durch
    eine Vielzahl von Speichereinheiten;
    eine Ref-;isterdatei mit einer Reihe spezieller Adressen einschließlich eines Datenregisters, das für jeweilige 3peichereinheiten vorgesehen ist und auszulesende und einzuschreibende Daten enthält, und mit Adressregistern, die für -jeweilige Speichereinheiten vorgesehen sind und die Adressen speichern, wo die Daten gespeichert werden so]len;
    zumindest eine Arithmetik- und Logikeinheit, die mit der Registerdatei verbunden ist;
    9098^0/0815
    einen Mikroprograinmspeicher, der mit den Speichereinheiten und der Arithmetik- und Logikeinheit zum Speichern einer Vielzahl von Mikrobefehlen verbunden ist, von denen jeder ein erstes Feld zur Bestimmung einer Operation der Cpeichereinheit, ein zweites Feld zur ^es'tininiung einer Operation der Arithmetik- und Logikeinheit und ein drittes Feld zur Bestimmung der Adressen der Regiotei' der iiegisterdatei aufweist, die mit der Arithmetik- und Logikeinheit zur Durchführung einer arithmetischen und logischen Operation gekuppelt ist;
    eine erste logische Wandlerschaltkreiseinrichtun;/;, die mit dem Mikroprogramm und den Speichereinheiten verbunden ist und der das erste Feld des aus dem Mikroprogramm-Speicher ausgelesenen Mikrobefehls zugeführt wird und den Speicher durch Ausgangssignale des ersten Feldes steuert;
    eine zweite logische Wandlerschaltkreiseinheit, der das dritte Feld des von dem Mikroprogrammspeicher aus— gelesenen Mikrobefehls zugeführt wird und ein Register der Registerdatei durch ein Ausgangssignal von dem dritten Feld auswählt und
    eine Einrichtung, die mit der ersten und zweiten logischen Wandlerschaltkreiseinheit verbunden ist und Steuersignale für diese abgibt.
    2. Gerät nach Anspruch 1, dadurch gekennzeichnet, daß die erste logische Schaltkreiseinrichtung aus einer Vielzahl von Multiplexern besteht, von denen jeder an einem Eingangs ans cliluß die Information des ersten Feldes und an dem anderen Eingangsanschluß das Steuersignal von der das Steuersignal abgebenden Einrichtung erhält, und daß dadurch ein Freigabesignal für den Speicher abgegeben wird, das einen der Speichereinheiten
    9098A0/O815
    BAD ORIGINAL
    aktiviert und ein Steuersignal von der Steuerung des Einschreibens in oder das Auslesen von dem aktivierten Speicher steuert.
    7). Speicher nach Anspruch 1, dadurch g ek e η η zeichnet , daß die zweite logische Wandlerschallkreiseinheit aus einer Gruppe von l'oren bzw· Gatlern , denen das Steuersignal von der das Steuersignal abgebenden Einrichtung zugeführt wird und von denen jede v/ahlweise und selektiv ein Ausgangssignal· bereitstellt; einem ersten Multiplexer, der mit der Gatfcergruppe verbunden ist und selektiv ein Ausgangssignal von der Gattergruppe produziert, und aus einem zweiten Multiplexer besteht, der ein Steuersignal zur Auswahl eines speziellen Registers in Abhängigkeit von der Information des dritten Feldes generiert, das an den anderen Eingangsanschluß des ersten Multiplexers angelegt ist.
    ;!. Gerät nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet , daß die das Steuersignal abgebende Einrichtung aus einer Vielzahl von Feldern besteht, zum Bewirken aufgrund eines Mikroprogramms eine Bestimmung, um die Kombination der Speichereinheiten in Übereinstimmung mit dem Operationszustand jeder der Speichereinheiten zu ändern.
    lj. Gerät nach einem der Ansprüche 1 bis zl-, dadurch gekennzeichnet , daß die zweite logische Wandlerschaltkreiseinrichtung eine logische Wandlung nur dann bewirkt, wenn das dritte Feld des von dem Mikroprogramm ausgelesenen Mikrobefehls die Adresse des Datenregisters oder die Adressen der Register bestimmt.
    909840/OR1S
    6. Gerät nach einem der Ansprüche 1 bis 5» dadurch gekennzeichnet, daß die Arithmetik- und Logikeinheit eine Vielzahl von arithmetischen und Logikeinheiten aufweist.
    7. Gerät nach einem der Ansprüche 1 bis 6, gekennzeichnet , durch
    eine Vielzahl von Speichereinheiten;
    eine Registerdatei mit einer Reihe spezieller Adressen einschließlich eines Datenregisters, das für jeweilige Speichereinheiten vorgesehen ist und auszulesende und einzuschreibende Daten enthält, und mit Adressregistern, die für jeweilige Speichereinheiten vorgesehen sind und die Adressen speichern, wo die Daten gespeichert werden sollen;
    arithmetischen und logischen Einrichtungen, die mit der Registerdatei verbunden sind;
    einen Mkroprogrammspeicher, der mit den ßpeichereinheiten und der Arithmetik- und Logikeinheit zum Speichern einer Vielzahl von Mikrobefehlen verbunden ist, von denen jeder ein erstes Feld zur Bestimmung einer Operation der Speichereinheit, ein zweites Feld zur Bestimmung einer Operation der Arithmetik- und Logikeinheit und ein drittes Feld zur Bestimmung der Adressen der Register der Registerdatei aufweist, zwecks Speichern von Daten, die der Arithmetik- und Logikeinrichtung zugeführt werden;
    eine logische Wandlereinrichtung, die mit dem Mikroprogrammspeicher, den Speichereinheiten, der Registerdatei und der Arithmetik- und Logikeinheit verbunden ist, der das erste Feld des aus dem Mikroprogrammspeieher ausryelesenen Mikrobefehls zugeführt wird und die Speichereinheiten durch das Ausgangssignal des ersten Feldes steuert,
    909840/0815
    der das dritte EeId des Mikrobefehls zugeführt wird und die Register in der Registerdatei durch das Ausgangssignal des dritten Feldes auswählt;
    eine Einrichtung, die mit der logischen Markiereinrichtung verbunden ist und ein steuersignal zur Bestimmung der logischen Wandlung für die logische Wandlereinricübung bereitstellt.
    8. Gerät nach einem der Ansprüche 1 bis 7» dadurch g e kennzeichnet , daß die Arithmetik- und Logikeinheit mit einer Vielzahl von Arithmetik- und Logikeinheiten, von denen jede eine Adressrechnung für die Speiehereinheiten bewirkt, und einem Multiplizierschaltkreis verbunden ist.
    9· Gerät nach einem der Ansprüche 1 bis 8, dadux'ch gekennzeichnet , daß jede Speichereinheit auf v/eist:
    einen Multiplexer, der mit einem Eingangsanschluß mit einer Datensammelleitung und dessen anderer Eingangsanschluß mit einem Register der Registerdatei verbunden ist;
    ein internes Datenregister, das mit dem Multiplexer zum Speichern der an den Multiplexer abgegebenen und von diesem erhaltenen Daten verbunden ist;
    ein Speicherdatenfeld, das mit dem internen Datenregister verbunden ist, um an das interne Datenregister abgegebene und von diesem erhaltene Daten zu speichern;
    ein internes Adressregister, das mit dem Speicherdatenfeld verbunden ist, um eine Adresse der an das Speicherdatenfeld abgegebenen und von diesem erhaltenen Daten zu speichern;
    einen Multiplexer, der mit u.m internen Adressregister verbunden ist, und selektiv eine Adresse abgibt, die in
    909840/081S
    dem internen Adressregister abgestellt ist und
    einen Gteuerschaltkreis zum Steuern des internen üalenregisfcers, des Speicherdatenfeldes und des internen Adressregisters.
    10. Gerät nach einem der Ansprüche 1 bis 9» dadurch <* e -kennzeichnet , daß es mit einem Priinürrechner verbunden ist und Daten verarbeitet, die von diesem Primärrechrier gefüttert werden, und das Ergebnis der Operation an den Primärcomputer abgibt, wobei das Gerät aufweist:
    eine erste Speichereinheit zum Speichern einer Gruppe von Daten, die von dem Primärcomputer übermittelt worden sind;
    eine Arithmetik- und Logikeinheit zum Verarbeiten der in der ersten Speichereinheit gespeicherten Daten und zum Durchführen von ßechen- oder logischen Operationen;
    eine zweite Speichereinheit zum Speichex-n der Ergebnisse der Operationen der Arithmetik- und Logikeinheit;
    eine dritte Speichereinheit zum Durchführen des Datentransports zwischen der dritten Speichereinheit und dem Primärrechner, wenn die Arithmetik- und Logikeinheit die Daten von der ersten Speichereinheit verarbeitet und das Ergebnis der Operation in die zweite Speichereinheit lädt;
    Mikroprogrammsteuereinrichtungen zum Steuern der jeweiligen Speichereinheit, die mit einem Mikroprogrammspeicher zum Speichern einer Anzahl von Mikrobefehlen versehen ist, die ein erstes Feld zur Bezeichnung einer auszuführenden Operation durch die Speichereinheiten und ein zweites Feld zur Bezeichnung der Art einer durch die Arithmetik- und Logikeinh'^it ausgeführten Operation aufweist, und dem
    909840/081S
    zv/ei ten Feld des aus dem Mxlcroprogrammspeicher ausgelesenen Mikrobefehls an die Arithmetik- und Logikeinheit abgibt und
    logische Wandlereinrichtungen, die in'logischer Art und Weise das erste Feld des von dem Mikroprogrammspeicher ausgelesenen Mikrobefehls wandeln und den Inhalt des solchermaßen logisch konverteten ersten Feldes an die Speichereinheiten abgeben, wobei die Operation jeder Speichereinheit so geschaltet ist, daß die Arithmetik- und Logikeinheit aufeinanderfolgend Daten von der dritten Speichereinheit verarbeitet und das Ergebnis der Verarbeitung in die erste Speichereinheit geladen wird, während zu dieser Zeit der Inhalt der zweiten Speichereinheit an den Primärrechner abgegeben wird.
    11. Gerät nach einem der Ansprüche 1 bis 10, g e k e η η zeichnet durch eine Registerdatei zum aaitlich aufeinanderfolgenden Speichern der zu verarbeitenden Daten durch die Arithmetik- und Logikeinheit oder des Ergebnisses der Operation, die Datenregister zum Speichern der zu schreibenden und auszulesenden Daten in bzw. von den Speichereinheiten und Adressregister zum Speichern der Adressen der Speichereinheiten, in denen die Daten gespeichert sind, aufweist.
    12. Gerät nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet , daß jeder durch den Mikroprogrammspeicher gespeicherte Mikrobefehl ein drittes Feld zum wahlweisen Bestimmen der Daten- und Adressregister in der Registerdatei und daß die Steuerungseinrichtung eine andere logische Wandlereinrichtung umfaßt, die das dritte Feld logisch wandelt und dieses logisch gewandelte Ergebnis an die Registerdatei abgibt.
    909840/081S
    13. Gerät nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet , daß das Datenverarbeitungsgerät aus einem Primärrechner und einem Ililfsdatenverarbeitungsgerät besteht und drei Gruppen von Speichereinheiten, von denen jede eine Gruppe von Daten speichert, eine Arithmetik- und Logikeinheit und einen Steuerbereich zum Steuern des E^ikroprogramms zur Uberwachunp,· der Speichereinheiten aufweist, wobei die Arithmetikeinheit aufeinander die in einer der Speichereinheiten gespeicherten Daten auf der Basis des Plontrollbereichs verarbeitet und dabei das Ergebnis in die verbleibende Speichereinheit lädt, während zu dieser Zeit die andere verbleibende Speichereinheit den Datentransport zwischen ihr und dem Primärcomputer durchführt, und daß das Ililfsdatenverarbeitungsgerät einen Mikroprograminspeichor in dom Kontrollbereich aufweist, der eine Anzahl von Mikrobofehlen speichert, von denen jeder ein erstes Feld zur Bestimmung der Operation Jeder der Speichereinheiten, Einrichtungen zur Erzeugung eines Steuersignals zum Inbetriebsetzen der Operation jeder der Speichereinheiten und logische Wandlereinrichtungen aufweist, die in logischer Art und Weise den Inhalt des ersten Feldes in Übei^einstimmuiig mit dem Steuersignal wandelt und dieses gewandelte Ergebnis an die Speichereinheiten abgibt.
    14-. Gerät nach Anspruch 13, dadurch gekennzeichnet, daß das erste Feld Daten zur Bestimmung der Operation jeder der Speichereinheiten aufweist, und daß die logische Wandlereinrichtung die Kombination von Daten zur Bestimmung der Operation der Speichereinheit ändert, wobei die Funktion jeder der Speichereinheiten geschaltet bzw. bestimmt wird.
    9098A0/081S
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 true DE2912287A1 (de) 1979-10-04
DE2912287B2 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)

* 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 株式会社日立製作所 並列プロセッサシステムおよび並列プロセッサによる複数の命令列の実行方法
EP0269995B1 (de) * 1986-11-27 1993-06-23 Nippon Telegraph And Telephone Corporation 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
US6085336A (en) * 1987-06-02 2000-07-04 Texas Instruments Incorporated Data processing devices, systems and methods with mode driven stops
US5329471A (en) * 1987-06-02 1994-07-12 Texas Instruments Incorporated Emulation devices, systems and methods utilizing state machines
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 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1285220B (de) * 1966-07-25 1968-12-12 Ibm Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1285220B (de) * 1966-07-25 1968-12-12 Ibm Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten

Also Published As

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

Similar Documents

Publication Publication Date Title
DE2912287A1 (de) Datenverarbeitungsgeraet
DE3210816C2 (de)
DE2817183C2 (de) Datenverarbeitungsanlage mit einer durch Mikroprogramm gesteuerten Zentraleinheit
DE3338345C2 (de)
DE2113890C2 (de) Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen
DE2753062C2 (de) Einrichtung zur wiederholten Durchführung von Programmschleifen
DE2819571C2 (de)
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE2712224A1 (de) Datenverarbeitungsanlage
DE1499200A1 (de) Datenverarbeitungsanlage mit vorranggesteuerter Programmunterbrechung
DE1549523B2 (de) Datenverarbeitungsanlage
DE2926589A1 (de) Anordnung zur verlaengerung einer logischen computeradresse
DE2910839A1 (de) Einrichtung zur ausfuehrung einer speziellen verzweigungsinstruktion
DE1178623B (de) Programmgesteuerte datenverarbeitende Maschine
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE2452214A1 (de) Mikroprozessor mit unmittelbarer und indirekter adressierung
DE2902496A1 (de) Digitale datenmultiplikationsanordnung
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE3043653A1 (de) Datenverarbeitungsanlage
DE2911909C2 (de) Digitales Datenverarbeitungsgerät
DE1801620B2 (de) Einrichtung zum ansteuern von speicherzellen eines rechenspeichers einer datenverarbeitungsanlage
DE3636105A1 (de) Digitaler signalprozessor
DE2830334C2 (de)
DE2245284A1 (de) Datenverarbeitungsanlage
DE3447530A1 (de) Vektorprozessor

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