DE3401995A1 - Vektorprozessor - Google Patents
VektorprozessorInfo
- Publication number
- DE3401995A1 DE3401995A1 DE3401995A DE3401995A DE3401995A1 DE 3401995 A1 DE3401995 A1 DE 3401995A1 DE 3401995 A DE3401995 A DE 3401995A DE 3401995 A DE3401995 A DE 3401995A DE 3401995 A1 DE3401995 A1 DE 3401995A1
- Authority
- DE
- Germany
- Prior art keywords
- vector
- processing
- command
- register
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000013598 vector Substances 0.000 title claims description 136
- 230000005540 biological transmission Effects 0.000 claims description 33
- 101000887307 Arabidopsis thaliana Short-chain dehydrogenase reductase ATA1 Proteins 0.000 claims 1
- 101000713305 Homo sapiens Sodium-coupled neutral amino acid transporter 1 Proteins 0.000 claims 1
- 102100036916 Sodium-coupled neutral amino acid transporter 1 Human genes 0.000 claims 1
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
- G06F15/8084—Special arrangements thereof, e.g. mask or switch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
Description
HITACHI, LTD., Tokyo Japan
Die Erfindung betrifft einen Vektorprozessor, der jeweils mehrere Datenübertragungsschaltungen, Vektorregister und
Vektorarithmetikeinheiten aufweist.
Bei herkömmlichen Vektorprozessoren verwendet man zur Erhöhung der Verarbeitungsgeschwindigkeit bei simultaner Ausführung
mehrerer Vektorbefehle mehrere Vektorarithmetikeinheiten (weiterhin einfach als Arithmetikeinheiten bezeichnet) und/
oder mehrere Datenübertragungsschaltungen (weiterhin als Datenübertragungsschaltungen
bezeichnet), die dem Datentransfer zwischen einem Hauptspeicher und Vektorregistern dienen. Falls
jedoch die Anzahl der Befehle einer Vektorbefehlsgruppe, die eine aktuelle Vektorvefarbeitung darstellt, klein ist, gibt
es Fälle, wo diese Vielzahl der Arithmetikeinheiten und der Datenübertragungsschaltungen nicht simultan verwendet werden,
so daß sich die Frage der effektiven Nutzung der Betriebsmittel ergibt.
Man könnte, um dieses Problem zu lösen, in einem zwei Arithmetikeinheiten
enthaltenden Vektorprozessor, die zwei Arithmetikeinheiten als eine Arithmetikeinheit vom Standpunkt der Soft-
81-A8323-03/AtAl
COPY
Datenübertragungsschaltungen und Vektorarithmetikeinheiten verwenden, wodurch die Vektorverarbeitungen jeweils in der
ersten oder zweiten Steuerbetriebsart abhängig von der Art der Vektorrechnung ausgeführt werden.
2. Vektorprozessor nach Anspruch 1,
dadurch gekennzeichnet,
daß Vektorrechnungen aus einfachen Vektorbefehlen, die nur jeweils Datengruppen oder Datenpaare mit jeweils gleicher
Elementanzahl verarbeiten/ in der ersten Steuerbetriebsart ausgeführt, werden, und daß
die Verarbeitung komplizierter Vektorbefehle, die Operationen zwischen Datengruppen oder Datenpaaren mit jeweils unterschiedlicher
Anzahl von Elementen erfordern,in der zweiten Steuerbetriebsart erfolgt
ware betrachten und die Verarbeitung der Elemente mit geraden
Elementnummern durch die eine Arithmetikeinheit und die Verarbeitung der Elemente mit ungeraden Nummern gleichzeitig
durch die andere Arithmetikeinheit ausführen und dadurch die Verarbeitungsgeschwindigkeit auf das Doppelte der normalen
Geschwindigkeit erhöhen. Diese Erhöhung der Verarbeitungsgeschwindigkeit ist bei einfachen Vektorbefehlen (weiterhin
als einfache Befehle bezeichnet) wirksam, die nur Datengruppen derselben Elementzahl verarbeiten, wie zum Beispiel
bei einem Vektoradditionsbefehl.
A(i) = B(i) + C(i) (wobei i = 0, 2, 3, ..., n)
Zusätzlich zu solchen einfachen Befehlen gibt es jedoch auch komplizierte Befehle, die die Verarbeitung von Datengruppen
mit unterschiedlicher Elementzahl erfordern (und weiterhin als Makrobefehle bezeichnet werden), wie zum Beispiel den
folgenden Iterationsbefehl
A(i+1) = A(i)*B(i) + C(i)
(wobei i = 0, 1, 2, .... n)
(wobei i = 0, 1, 2, .... n)
ist. · ..-V
Wenn ein Vektorprozessor, bei dem die Vektorverarbeitung durch Teilung der Elemente in geradzahlige und in ungeradzahlige Elemente
erfolgt, einen solchen Makrobefehl ausführt, ist ein Datenbus zwischen zwei Arithmetikeinheiten und damit eine komplexe
Steuerung erforderlich, weshalb eine Realisierung tatsächlich unmöglich ist. Deshalb verwenden herkömmliche Vektorprozessoren
eines der folgenden Verfahren:
Ein Verfahren, bei dem kein Makrobefehl geliefert wird; ein Verfahren,
das keinen Aufbau, der die Vektorelemente in geradzahlige und ungerad-
zahlige einteilt zur Ausführung der oben beschriebenen Verarbeitung
aufweist; ferner ein Verfahren, das Makrobefehle als Sealare anstatt Vektoren verarbeitet. Jede Methode
ist bezüglich Verarbeitungsgeschwindigkeit und Leistungsfähigkeit unbefriedigend.
Es ist deshalb Aufgabe der Erfindung,einen Vektorprozessor
mit erhöhter Verarbeitungsgeschwindigkeit und verbesserter Leistungsfähigkeit im Vergleich mit einem herkömmlichen Vek- '
torprozessor zu ermöglichen.
Zur Lösung dieser Aufgabe be.steht ein erfindungsgemäßer Vektorprozessor
aus jeweils mehreren Datenübertragungsschaltungen und/oder Arithmetikeinheiten, die eine schnelle Verarbeitung
durch gleichzeitige und parallele Verarbeitung mehrerer Vektorbefehle ermöglicht. Dabei findet eine Kennzeichnung der
Art der Vektorverarbeitung statt, wobei bei solchen Vektorverarbeitungen, die nur einfache Befehle aufweisen, die Daten- ·
Übertragungsschaltungen, Vektorregister und arithmetischen Einheiten entsprechend der Kennzeichnung eines Flipflops für
die Betriebsartsteuerung in mehrere Sätze eingeteilt werden, wodurch die Vektorverarbeitung durch diese Sätze in eine
Parallelverarbeitung eingeteilt wird. Die Vektorverarbeitung von Makrobefehlen wird ohne diese Einteilung ausgeführt.
Die Erfindung wird anhand der Zeichnung näher beschrieben. Es zeigen:
Fig. 1 ein Blockschaltbild eines Ausführungsbeispiel der Erfindung;
Fig. 2A
bis 2C Beispiele der Formatierung eines EXVP-Befehls und
Beispiele des davon abhängigen Datenformats;
Fig. 3A
und 3Β ein Programmbeispiel sowie eine daraus sich ergebende
Vektorbefehlsfolge, um die Verarbeitung gemäß der Erfindung zu beschreiben;
Fig. 4 eine Vektorbefehlsfolge in einem Hauptspeicher und
den Aufbau der Vektordaten darin;
Fig. 5 ein Detailschaltbild der Adressregistergruppen und der Datenübertragungsschaltungen in Fig. 1;
Fig. 6 Anfangswerte der Adressregistergruppe; und
Fig. 7
.und 8 jeweils Zeitdiagramme der Verarbeitung in der je-
.und 8 jeweils Zeitdiagramme der Verarbeitung in der je-
weiligen erfindungsgemäßen Betriebsart.
Figur 1 zeigt ein Blockschaltbild eines Ausführungsbeispiels gemäß der Erfindung. Anhand dieses Blockschaltbilds wird ein
Überblick über die gesamte Verarbeitung gegeben. Es werden nämlich aus einem Hauptspeicher (weiterhin als MS abgekürzt) 1 ausgelesene
Scalarbefehle, gesteuert von einer Hauptspeichersteuereinheit 111 von einem Scalarprozessor 3 über einen Scalar-Befehls-Auslesebus
2 ausgelesen. Dabei ist der Scalarprozessor 3 ein gewöhnlicher Computer und enthält eine allgemeine Registergruppe
3-1. Durch das Auslesen eines Befehls, der den Verarbeitungsbeginn einer Vektorbefehlsfolge kennzeichnet
(weiterhin als EXVP-Befehl bezeichnet), wird eine Vektorprozessor-Steuereinheit
5 in einem Vektorprozessor 4 durch den Scalarprozessor 3 aktiviert. Die Vektorprozessor-Steuereinheit
5 liest die Vektorbefehlsfolge beginnend von der vom EXVP-Befehl angegebenen Vektorbefehlskopfadresse aus, interpretiert
diese und weist zur Ausführung der Vektorbefehle Datenübertragungsschaltungen 6-11, Vektorregister 12-0 bis 12-7
und Vektorarithmetikeinheiten 13 und 14 entsprechend dem Interpretationsergebnis an. Dabei werden die Datenübertragungsschaltungen 6 bis 9 für das Laden der Daten und die Datenübertragungsschaltungen
10 und 11 zum Speichern der .Daten verwendet. Eine Adressregistergruppe 16 speichert die Speicher-
adressen, die von den Datenübertragungsschaltungen.6-11 verwendet
werden.
Die Vektorprozessor-Steuereinheit 5 weist ein Betriebsart-^
Steuerflipflop (FF) 5-1 auf. Der Scalarprozessor 3 aktiviert
die Vektorprozessor-Steuereinheit 5, indem er den EXVP-Befehl ausführt und weist gleichzeitig die Betriebsart bezüglich
der geteilten Verarbeitung oder der ungeteilten Verarbeitung __
der oben genannten Vektorbefehlsfolge an.Die Betriebsart, bei der die Vektorverarbeitung geteilt erfolgt, wird im
folgenden PP (Paarverarbeitung) und die Betriebsart, wo die Verarbeitung ungeteilt erfolgt SP (Einfachverarbeitung)
genannt. Der vom Scalarprozessor 3 angewiesene
PP- oder SP-Modus wird in das Betriebsart-Steuerflipflop
5-1 innerhalb der Vektorprozessor-Steuereinheit 5 gesetzt, j so daß die Vektorprozessor-Steuereinheit 5 befehlsabhängig
mittels des Betriebsart-Steuerflipflops 5-1 steuert, ob
die Datenübertragungsschaltungen 6-11, die Vektorregister 12-0 bis 12-7 und die Vektorarithmetikeinheiten 13 und 14.
in mehrere Sätze eingeteilt werden oder nicht.
Fig. 2A zeigt ein Format des EXVP-Befehls. Dabei haben die
Felder dieses Befehls folgende Bedeutung:
R1: Die Anzahl der zu verarbeitenden Vektorelemente
(erster Operand)
R3: Unbenutzt
B2 + D2: Kopfadresse der Vektorbefehlsfolge.
Der Inhalt der Bitstelle 0 des durch das B2-Feld angegebenen «
allgemeinen Registers wird nicht zur Erzeugung der Kopfadresse der Vektorbefehlsfolge verwendet, sondern kennzeichnet, ob
die Betriebsart der geteilten Verarbeityng der Vektorbefehlsfolge vorliegt oder nicht. Dazu wird der. Inhalt der Bitstelle
0 des allgemeinen Registers in das Betriebsart-Steuer-
COPY
flipflop 5-1 innerhalb der Vektorprozessor-Steüereinheit 5 gesetzt.
Fig. 3A zeigt eine Do-Schleife in FORTRAN, die nach der Umsetzung eine in Fig. 3B dargestellte Vektorbefehlsfolge ergibt.
Wir nehmen an, daß im MS 1 die Vektorbefehlsfolge 15—1
bis 15-5 und Vektordaten A(i), B(i), C(i) (wobei i = 0, 1, ..., 31 ist) in der in Figur 4 dargestellten Anordnung gespeichert
sind. Wenn diese Vektorbefehle in der SP-Betriebsart verarbeitet werden, werden durch Ausführung des EXVP-Befehls die
allgemeinen Register (weiterhin mit GR bezeichnet) 1 und 2 von Figur 2B gesetzt. Falls jedoch die Verarbeitung in der
PP-Betriebsart erfolgt, wird die Bitstelle 0 des Registers GR1 auf "1" gesetzt.Figur 2C .zeigt, daß in den vier niederwertigsten
Bitstellen des GR1 eine 8=1000 steht.
Anhand des in Figur 1 dargestellten Ausführungsbeispiels gemäß der Erfindung wird im folgenden die Verarbeitung der
FORTRAN Do-Schleife von Figur 3 in der SP- und PP-Betriebsart beschrieben.
SP-Betriebsart:
Beim Auslesen des in Figur 2B dargestellten EXVP-Befehs erkennt der Scalarprozessor 3 die Kopfadresse 100 (16) der
Vektorbefehlsfolge und die zu verarbeitende Vektorlänge VL = 1F (16) jeweils anhand der Inhalte des GR1 und GR2 der all- ''
gemeinen Registergruppe 3-1 und überträgt diese Informationen der Vektorprozessor-Steuereinheit 5. Die damit vom Scalarprozessor
3 aktivierte Vektorprozessor-Steuereinheit 5 liest laut Anweisung durch den Scalarprozessor 3 die Vektorbefehlsfolge
von der Kopfadresse 1 0 0 (16) an, interpretiert diese aufeinanderfolgend und weist zu deren Ausführung vorgegebene
Datenübertragungsschaltungen, Vektorregister und Vektorarithmetikeinheiten an. Für die in Figur 3B dargestellte Vektorbefehlsfolge
werden folgende Verarbeitungen ausgeführt:
ner Befehl 15-1 entspricht dem Laden des Originalvektors
BCi) (mit i = 0, ..., 31) des in Figur 3A dargestellten FORTRAN-Programms. Bei diesem Ausführungsbeispiel wird
dazu die Datenübertragungsschaltung 6 verwendet, obwohl die Ausführung des Befehls 15-1 mit dem Laden der Datenübertragungsschaltung
6-9 erfolgen könnte. Die Vektorprozessor-Steuereinheit 5 addiert VL = 1F (16) zum Adressregisterwert
und aktiviert zur Ausführung des Befehls 15-1 die Datenübertragungsschaltung 6. Gleichzeitig addiert
die Vektorprozessor-Steuereinheit 5 VL = 1F (16) zum VR (4) 12-4 auf der zu speichernden Seite und aktiviert
das Schreiben. Die Datenübertragungsschaltung 6 berechnet unter Verwendung des durch die Steuereinheit 5 angegebenen
Adressregisters der Adressregistergruppe 16 die Adresse und liest die Vektordaten aus. Die Ausführung des Befehls' 15-1 j
wird im folgenden anhand Figur 5 beschrieben. " |
Figur 5 zeigt eine Detailschaltung der Adressregistergruppe 16'
und der Datenübertragungsschaltungen 6 und 7 von Figur 1. Die Adressregistergruppe 16 weist vier VARs (0 - 3) 16-1,
vier VIRs (0 - 3) 16-2 und vier VBRs (0 - 3) 16-3 auf. Die Datenübertragungsschaltung 6 besteht aus einem Register VARN
(0) 6-0, einem Register VBRN (O) 6-1, einem VAR-Wähler 6-2,
einem VIR-Wähler 6-3, einem VBR'-Wähler 6-4, einem Register
WVAR (0) 6-5, einem WVAR (O)-Eingangswähler 6-6, einer VIR-Verdoppelungsschaltung 6-7, einem Wähler 6-8, Addierern
6-9 und 6-10 und deren nicht dargestellte Steuerlogik. Genauso besteht die Datenübertragungsschaltung aus entsprechenden Elementen
7-1 bis 7-10. Die weiteren Datenübertragungsschaltungen 8 bis 11 sind in Figur 5 nicht dargestellt. ·
Durch die Aktivierung des Befehls 5-1 von Figur 4 in der Datenübertragungsschaltung 6 wird das R2-Feld des Befehls
in das Register VARN (0) 6-0 gesetzt und für die Auswahl jeweils der Register VAR (0-3) und VIR (0-3) verwendet.
Gleichzeitig Wird das R3-Feld in das Register VBRN (0) 6-1
gesetzt und für die Auswahl eines der Register VBR (0-3) verwendet. Bei diesem Ausführungsbeispiel sind , wie Figur
zeigt, die Register VBR (0) = 0, VAR (2) = 300 (16) und VIR (2) = 8 vor der Ausführung des EXVB-Befehls gesetzt.
Die Adressberechnung der durch den Befehl 15-1 in das Register VR (4) 12-4 zu ladenden Vektordaten B(i) (i = 0, 1, ...,
31) wird in der nachfolgend beschriebenen Weise ausgeführt Der Inhalt des Registers VAR (2) = 300 (16), der von dem
VAR-Wähler 6-2 abhängig vom Wert 0 2 (16) des VARN (0) 6-0 ausgewählt ist, wird über den WVAR (0)-Eingangswähler 6-6
geleitet und in das Register WVAR (0) 6-5 gesetzt und danach dem Addierer 6-10 eingegeben. Dann wird es zum Inhalt
des VBR (0) = 0 (16), das durch den VBR-Wähler 6-4 in Abhängigkeit
des Wert 0 0 (16) im VBRN (0) 6-1 gewählt wird, addiert, so daß die Adresse 3 0 0 (16) des Elements B (0)
als Ausgang des Addierers 6-10 erzeugt wird. Die Adresse 3 0 8 (16) des Elements B (1) erhält man dadurch, daß das
Ergebnis der Addition des Registers VIR (2) = 8 (16), das genauso wie das VAR (2) gewählt wurde, zum WVAR (0) 6-5 =
3 0 0 (16) durch den Wähler 6-6 geht und dem WVAR (0) 6-5 eingegeben wird und dann wiederum mittels des Addierers 6-10
zum Register VBR (0) = 0 (16) addiert wird. Die weiteren Adressen der Elemente B (2) bis B(31) werden in derselben
Weise wie oben berechnet. Die durch die Hauptspeicher-Steuerschaltung 17 aus dem MS 1 mit diesen Adressen ausgelesenen
Vektordaten werden jeweils dem Register VR(2) 12-2 über die Datenübertragungsschaltung 6 und eine Schaltereinheit
18 eingeschrieben.
Jeder der obigen Verarbeitungsschritte wird in einem Maschinenzyklus
ausgeführt. Auf diese Weise wird sich, wenn man den Überhang, der durch Befehlsaktivierung und ähnliche Vorgänge
entsteht, ignoriert; eine Verarbeitungszeit von etwa der Vektorlänge χ der Maschinenzykluszeit ergeben, also: bei diesem
Ausführungsbeispiel etwa 32 Maschinenzyklen.
COPY
Der Befehl 15-2 kann im wesentlichen auf die gleiche Weise durch das Laden der Datenübertragungsschaltung 8 ausgeführt
werden.
Der Befehl 15-3 wird durch die Arithmetikeinheit 13 ausgeführt, indem die Inhalte des Registers VR (2) 12-2 und des
Registers VR (3) 12-3 addiert werden und das Ergebnis in das Register VR (1) 12-1 eingeschrieben wird. Die Verarbeitung
dieses Befehls wird in etwa 32 Maschinenzyklen in derselben Weise wie die Verarbeitung des Befehls 15-1 ausgeführt.
Die Ausführung des Befehls 15-4 kann mittels der Datenübertragungsschaltung
10 zum Einspeichern ausgeführt werden. Wenn das aus dem Register VR (1) 12—1 ausgelesene Datum
über eine Schalteinheit 19 der Datenübertragungsschaltung zugesandt wird, berechnet letztere die Adresse unter Verwendung
der Inhalte der Register VBR (0), VAR (1) und VIR CD in der im wesentlichen gleichen Art wie bei der Verarbeitung
der Befehle 5-1 und 5-2 durch die oben genannten Datenübertragungsschaltungen 6 und 8 und addiert dieAdresse zu dem
vom Register VR 1 (1) 12-1 übertragenen Datum . und sendet dieses der Hauptspeicher-Steuerschaltung 17, die damit die
Vektordaten A(i) (mit i = 1,2, ..., 31) in.den Hauptspeicher
MS 1 abspeichert. Auch diese Befehlsverarbeitung benötigt etwa 32 Maschinenzyklen.
Der Befehl 15-5 ist ein Steuerbefehl, der das Ende der
Vektorbefehlsfolge angibt, so daß dieser die Vektorverarbeitung nicht betrifft.
In dem in Figur 1 dargestellten Vektorprozessor erfolgt die Verarbeitung solcher Befehle, wie sie oben beschrieben
wurden,allgemein im Pipeline-Prinzip. Dabei sind die Pipeline-Abläufe
für jeden Befehl miteinander verbunden, wodurch die Verarbeitung auf der Vektorelementebene sequentiell, auf der
COPY
BefehlsSberte jedoch parallel ausgeführt wird. Beim vorliegenden
Ausführungsbeispiel werden die Ausleseoperationen der Vektorelemente B(O) und C(O) aus dem Hauptspeicher MS 1
und das Setzen in die Register VR (4) und VR (6) gleichzeitig ausgeführt. Danach werden die Vektorelement.e sofort
aus den Registern VR (4) und VR (6) ausgelesen, von der Arithmetikeinheit 13 addiert und das Ergebnis in das Register
VR (2) abgespeichert. Danach wird das Ergebnis unverzüglich aus dem VR (2) ausgelesen und 8-byteweise von der Adresse
2 0 0 (16) an in den Hauptspeicher MS 1 eingespeichert. Diese Verarbeitung wird 32 mal im Maschinenzyklusabstand ausgeführt,
so daß die Verarbeitung der genannten fünf Befehle parallel ausgeführt wird. Wir nehmen nun an, daß die Zeitdauer
für das Auslesen der Daten aus dem MS 1 und das Einschreiben in das Vektorregister VR cc 1 Maschinenzyklen, das
Auslesen und Berechnen der im Vektorregister VR stehenden Daten sowie das Einschreiben des Ergebnisses in das Vektorregister
VR o(.2 Maschinenzyklen und das Auslesen der im
Vektorregister VR stehenden Ergebnisdaten und deren Einschreiben in den Hauptspeicher MS 1 <& 3 Maschinenzyklen
benötigt. Es sei ferner ^ = cc 1 + ot 2 + CC 3 . In diesem
Fall ergeben sich die in Figur 7 dargestellten schematischen Zeitdiagramme für die oben beschriebenen Verarbeitungen der
Vektorbefehlsfolge laut Figur 3B. Figur 7 macht deutlich, daß die Gesamtverarbeitungszeitdauer 32 + ö°Maschinenzyklen
beträgt.
Die folgende Tabelle 1 enthält die in der SP-Betriebsart verwendeten Datenübertragungsschaltungen und den Zuordnungs- ■
algorithmus für die arithmetischen Einheiten. :
copy
It ft * · * * «
-13-
Tu^u^V befehle Priorität -Derenie |
Lade- und Speicher befehle |
Arithmetik- Befehl |
1 | Datenübertrag.- schaltung 6 |
Arithmetik- Einheit 13 - |
2 | 7 | ■ 14 |
3 | 8 | ^^^^ |
4 | ,ι 9 | |
5 | 10 | |
6 | " 11 |
Zum Beispiel wird gemäß den in Tabelle 1 dargestellten Algorithmus
während die Datenübertragungsschaltungen 6 und 7 benutzt sind und als nächster Befehl der Ladebefehl oder
Speicherbefehl dekodiert wird, die Datenübertragungsschaltung 8 diesem Befehl zugeteilt. Die Zuteilung des Vektorregisters
erfolgt durch die Angabe im Registerkennzeichenfeld des Vektorbefehls.
PP-Betriebsart:
Nach dem Auslesen des in Figur ZC dargestellten EXVP-Befehls
erkennt der Scalarprozessor 3 die Kopfadresse 1 0 0 C16) der
Vektorbefehlsfolge und die Verarbeitungs-Vektorlänge VL = 1F (16) jeweils aufgrund der Inhalte der allgemeinen Register
GR1 und GR2 in der allgemeinen Registergruppe 3-1 und überträgt diese Informationen zur Vektorregister-Steuereinheit 5.
Gleichzeitig erkennt der Scalarprozessor 3, daß die Verarbeitung in der PP-Betriebsart erfolgt, wegen der "1" der
Oten Bitstelle des Registers GR1 und überträgt diese Information der Vektorprozessor-Steuereinheit 5. Letztere setzt
nach Aktivierung durch den Scalarprozessor 3 in der PP-Betriebsart das Betriebsart-Steuerflipflop 5-1 und liest die
Vektorbefehlsfolge von der Kopfadresse 1 0 0 (16) an, die
durch den Scalarprozessor 3 angewiesen ist, interpretiert diese aufeinanderfolgend und weist deren Ausführungen an.
Für die in Figur 3B gezeigte Vektorbefehlsfolge werden folgende Verarbeitungen ausgeführt.
In der zuvor beschriebenen SP-Betriebsart wurde der Befehl 15-1 durch die Datenübertragungsschaltung 6 ausgeführt und
die Vektordaten B(i) (i = 0, ..., 31) wurden in das Vektorregister
VR (4) 12-4 gespeichert. Dagegen sei angenommen, daß der Befehl 15-1 in der PP-Betriebsart in den Datenübertragungsschaltungen
6 und 7 ausgeführt wird und daß die Vektordaten BCi) (i = 0, ..., 31) in den Vektorregistern
VR (4) 12-4 und VR (5) 12-5 gespeichert werden. Für diesen Zweck addiert die Steuereinheit 5 VL = F (16) zur Adressregisternummer,
weist die PP-Betriebsart an und aktiviert die Datenübertragungsschaltungen 6 und 7, die den Befehl
15-1 ausführen. Gleichzeitig addiert die Steuereinheit 5 VL = F (16) zum Register VR (4) 12-4 und zum Register VR (5)
12-5 auf der Speicherseite und aktiviert den Einschreibvorgang. Die.Angabe der PP-Betriebsart für die Vektorregister VR
ist zu dieser Zeit unnötig.
Die Ausführung des Befehls 15-1 in der PP-Betriebsart wird nachfolgend anhand der Figur 5 beschrieben. Die VAR (2) =
3 0 0 (16) und VBR (0) = 0 werden genauso wie.in der SP-Betriebsart
vom Addierer 6-10 addiert und als Ergebnis die Adresse 3 00 (16) des Elements B (0) ausgegeben. Gleichzeitig
mit dieser Addition wird der Inhalt des VIR (2) =8 (16)
vom VIR-Wähler 6-3 gewählt und von der VIR-Verdoppelungsschaltung
6-7 verdoppelt. Dann wird der Wert 1 0 (16), der dem
Addierer 6-9 über den Wähler 6-8 eingegeben wurde, mit dem im WVAR (0) 6-5
gespeicherten VAR (2) = 3 0 0 (16) addiert und das Ergebnis in das WVAR (0) 6-5 über den WVAR (O)-Eingangswähler 6-6 |
gesetzt. Im nächsten Zyklus wird dieser neue Wert 3 1 0 (16)" des WVAR (0) und der Inhalt des VBR (0) = 0 (16) addiert,
so daß die Adresse 3 1 0 (16) des Elements B(2) ausgegeben wird. Wie in der oben beschriebenen Weise führt die Datenübertragungsschaltung
6 die Adressberechnung der geradzahligen Elemente der Vektordaten B(i) (i = 0, 1, ...., 31) aus
und liest die Daten aus dem Hauptspeicher MS 1 mittels ihrer Adressen aus. Danach werden diese Daten in das VR (4) 12-4
gesetzt. Zu dieser Zeit sind 16 Daten entsprechend dem Wert VL = F (16), der der Datenübertragungsschaltung 6 angewiesen
ist,· im Register VR (4) 12-4 nach dessen Aktivierung geladen.
Gleichzeitig mit dem Laden der geradzahligen Elemente durch die Datenübertragungsschaltung 6 erfolgt das Laden der ungeradzahligen
Elemente durch die Datenübertragungsschaltung 7 in der gleichen Weise. Auf die Aktivierung des Befehls hin
wird das vom VAR-Wähler 7-2 abhängig vom Wert 02 (16) des
zuvor gesetzten VARN (1) 7-0 gewählte Register VAR (2)= 3 0 0 (16) durch den WVAR (1)-Eingangswähler 7-6 geleitet
und in das WVAR (1) 7-5 gesetzt und außerdem dem Addierer 7-9 ' eingegeben. Genauso wird dem Addierer 7- 9 über den Wähler
7-8 das vom VIR-Wähler 7-3 abhängig vom Wert 0 2 (16) des VAR (1) 7-0 gewählte VIR (0) =8 (16) eingegeben.' Das Additionsergebnis
wird in das Register WVAR (1) 7-5 durch den . ■ WVAR (1)-Eingangswähler 7-6 gesetzt. Dieser Ausgang des
WVAR (1) wird zum VBR (0) = 0 (16), das vom VBR-Wähler 7-4
abhängig vom Wert 0 0 (16) des VBRN (1) 7-1 durch den Addierer. 7-10 addiert, so daß die Adresse 3 0 8 (16) des Elements (B)1
ausgegeben wird. Danach wird der Inhalt des .VIR zweimal im Abstand eines Zyklus durch den Addierer 7-9 summiert und
COPY
- ι ο-
zwar gleichzeitig mit der Adressberechnung der Elemente B(i) (i =0, 2, 4, ..., 30) in der Datenübertragungsschaltung 6,
wodurch die Adressen für die Elemente Bfi) Ci = 1, 3, S,..., 31) ausgegeben werden. Auf diese Weise werden 16 ungeradzahlige
Elemente durch die Datenübertragungsschaltung 7 mittels der auf diese Weise erzeugten Adressen in das. Register
VR (5) gespeichert. l
Genauso wird in der PP-Betriebsart der Befehl 15-2 von der Datenübertragungsschaltung 8 und 9 ausgeführt und die Vektordaten
CCi) (i = 0, 1, 2, ...,31) entsprechend ihrer Geradzahligkeit und Ungeradzahligkeit in die Vektorregister VR (6)
12-6 und VR (7) 12-7 gespeichert. Der Befehl 15-3 wird von den Arithmetikeinheiten 13 und 14 ausgeführt und das Ergebnis
der Addition der Inhalte der Register VR (4) 12-4 und
VR C6) 12-6 in das Register VR C2) 12-2 abgespeichert. Außerdem wird das Ergebnis der Addition der Register VR C5) 12-5
und VR (7) 12-7 in das Register VR (3) 12-3 gespeichert.
Der Befehl 15-4 wird von den Datenübertragungsschaltungen 10 und 11 ausgeführt und (die Daten der Register VR C2) 12-2
und VR (3) 12-3 als ACi) (i » 0, 1, ..., 31) in den Haupt-
• 'n'
speicher MS 1 von der Adresse 2 0 0 C16) an gespeichert.
Dazu zeigt Figur 8 die schematischen Zeitdiagramme, aus denen ersichtlich ist, daß die gesamte Verarbeitungszeit 16 + cc Zyklen
beträgt.
Tabelle 2 zeigt die Datenübertragungsschaltungen in der PP-Betriebsart
und den Zuordnungsalgorithmus für die arithmetischen Einheiten .
- "T "-—^ Vektor- Zuordnungs*^. f h] Priorität ^--fieien^e |
Lade- und Speicher befehle |
Arithmetik- Befehl |
1 | Datenübertrag. Schaltungen 6 und 7 |
Arithmetikein heiten 13 und 14 |
. 2 | 11 8 und 9 . | _——-—~~~— |
3 | " 10 und 11 |
COPY
Beispielsweise werden,während die Datenübertragungsschaltung
6 benutzt ist, wenn der folgende Befehl der Ladebefehl oder Speicherbefehl ist, entsprechend dem in Tabelle 2 angeführten
Algorithmus die Datenübertragungsschaltungen 8 und 9 diesem Befehl zugeordnet. Auch wenn die Datenübertragungsschaltungen
8 und 9 auf diese Weise gleichzeitig aktiviert werden, werden sie nicht immer gleichzeitig freigegeben. Deshalb werden, falls
als folgender Befehl der Ladebefehl oder Speicherbefehl deko- -diert
wird und nur eine der Datenübertragungsschaltungen 8 und
9 freigegeben ist und die andere noch nicht frei ist , die Datenübertragungsschaltungen 10 und 11 diesem Befehl zugeteilt.
Man kann jedoch annehmen, daß bis zu diesem Zeitpunkt die Datenübertragungsschaltung 6 noch nicht freigegeben ist.
Zusätzlich muß in der PP-Betriebsart der Wert des Kennzeichnungsfeldes
für die Vektorregister im Befehl 0, 2, 4 oder 6 sein. Beispielsweise werden dem Befehl 15-1 die Register
VR (4) und VR (5) zugeteilt, da der Wert des R1-Feldes 4 ist.
Aus der obigen Beschreibung wird deutlich, daß durch geeignete Mittel
die Art der Vektoroperation festgestellt und, falls zur Verarbeitung von Vektorbefehlsfolgen,
die nur aus einfachen Befehlen bestehen, nur wenige Vektorregister, Datenübertragungsschaltung und Arithmetikeinheiten
zur Verfügung stehen, auf die Aktivierung der Vektorbefehlsfolge hin die PP-Betriebsart durch den EXVP-Befehl angegeben
wird. Dadurch wird in der oben angeführten Weise die Vektorverarbeitung in die Verarbeitung geradzahliger Vektorelemente
und die Verarbeitung ungeradzahliger Vektorelemente eingeteilt , wodurch sich die Verarbeitungsgeschwindigkeit
erhöhen läßt. Außerdem besteht zur Verarbeitung einer Vektorbefehlsfolge, die Makrobefehle enthält, falls durch Angabe
der SP-Betriebsart Verarbeitungseinheiten vorgesehen sind, die die Makrobefehle jeweils durch eine einzelne arithmetische
Einheit ausführen, die Möglichkeit, die Vektorverarbeitung ohne zusätzliche Bussysteme zwischen mehreren arithmetischen
Einheiten auszuführen.
COPY
Erfindungsgemäß wird die Art der Vektoroperationen programmgesteuert
oder auf eine andere geeignete Weise erkannt und für die Vektorverarbeitung aufgrund nur einfacher
Befehle die Datenübertragungsschaltungen, Vektorregister und Arithmetikeinheiten in mehrere Sätze entsprechend der
erkannten Art eingeteilt und damit die Vektor-'
Verarbeitungen mittels dieser Sätze parallel ausgeführt. Dadurch läßt sich eine hohe Verarbeitungsgeschwindigkeit
verwirklichen.
Selbstverständlich kann die Identifikation der Art der
Vektoroperationen auch durch geeignete Hardware-Maßnahmen erfolgen.
COPY
■/!{■
- Leerseite -
Claims (1)
- Patentansprüchegekennzeichnet durch folgende •Komponenten::■:".'einen Hauptspeicher (1),
- mehrere Vektorregister (12-0 bis 12-7), mehrere Datenübertragungsschaltungen (6 - 11), die die Datenverbindung zwischen dem Hauptspeicher (1) und den Vektorregistern(12-0 bis 12-7) durchführen, undmehrere Vektorarithmetikeinheiten (13 und 14), die die arithmetische Vektorverarbeitung von aus den Vektorregistern zugeführten Vektordaten ausführen und die Ergebnisse den Vektorregistern zusenden, unddadurch gekennzeichnet, ■daß der Vektorprozessor in zwei Steuerbetriebsarten betreibbar ist, nämlich in einer Steuerbetriebsart, bei der die Datenübertragungsschaltungen (6 - 11), die Vektorregister (12-0 bis·12-7) und die Vektorarithmetikeinheiten (13 und 14) in mehrere Sätze eingeteilt sind, wobei die Vektorverarbeitung geteilt und parallel unter Verwendung der Sätze ausgeführt wird, undin einer zweiten Steuerbetriebsart, bei der die Vektorverarbeitungen ungeteilt ausgeführt werden und die Vektorregister, die von den Vektorbefehlen angegeben sind, und die mit den jeweiligen Vektorregistern zusammenarbeitenden81-A8323-03/ATA1COPY
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58034197A JPS59160267A (ja) | 1983-03-02 | 1983-03-02 | ベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3401995A1 true DE3401995A1 (de) | 1984-09-06 |
DE3401995C2 DE3401995C2 (de) | 1988-07-28 |
Family
ID=12407435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3401995A Granted DE3401995A1 (de) | 1983-03-02 | 1984-01-20 | Vektorprozessor |
Country Status (4)
Country | Link |
---|---|
US (1) | US4641275A (de) |
JP (1) | JPS59160267A (de) |
DE (1) | DE3401995A1 (de) |
GB (1) | GB2136172B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5389835A (en) * | 1991-04-12 | 1995-02-14 | Hewlett-Packard Company | Vector logic method and dynamic mousetrap logic gate for a self-timed monotonic logic progression |
DE19735348B4 (de) * | 1996-08-19 | 2006-10-05 | Samsung Electronics Co., Ltd., Suwon | Vektorprozessor zur Einzelbefehl-Mehrdaten-Verarbeitung unter Verwendung von mehreren Bänken von Vektorregistern und zugehöriges Verfahren zum Betreiben desselben |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6027984A (ja) * | 1983-07-27 | 1985-02-13 | Hitachi Ltd | デ−タ処理装置 |
JPS6057467A (ja) * | 1983-09-09 | 1985-04-03 | Nec Corp | ベクトルデ−タ処理装置 |
JPS6072069A (ja) * | 1983-09-28 | 1985-04-24 | Nec Corp | ベクトル演算処理装置 |
JPS6077265A (ja) * | 1983-10-05 | 1985-05-01 | Hitachi Ltd | ベクトル処理装置 |
JPH077385B2 (ja) * | 1983-12-23 | 1995-01-30 | 株式会社日立製作所 | データ処理装置 |
JPH0640337B2 (ja) * | 1984-10-03 | 1994-05-25 | 株式会社日立製作所 | パイプライン演算装置 |
US4890220A (en) * | 1984-12-12 | 1989-12-26 | Hitachi, Ltd. | Vector processing apparatus for incrementing indices of vector operands of different length according to arithmetic operation results |
JPS621067A (ja) * | 1985-02-25 | 1987-01-07 | Hitachi Ltd | ベクトル処理装置 |
JPS62120574A (ja) * | 1985-11-20 | 1987-06-01 | Fujitsu Ltd | ベクトル処理装置 |
JPS62208167A (ja) * | 1986-03-10 | 1987-09-12 | Hitachi Ltd | ベクトル処理装置 |
JPS6353678A (ja) * | 1986-08-22 | 1988-03-07 | Hitachi Ltd | ベクトル処理装置 |
JPH0648486B2 (ja) * | 1986-10-08 | 1994-06-22 | 日本電気株式会社 | ベクトルデ−タ処理装置 |
JP2760790B2 (ja) * | 1986-10-09 | 1998-06-04 | 株式会社日立製作所 | データ処理装置 |
JPS63253468A (ja) * | 1987-04-10 | 1988-10-20 | Hitachi Ltd | ベクトル処理装置 |
US4980817A (en) * | 1987-08-31 | 1990-12-25 | Digital Equipment | Vector register system for executing plural read/write commands concurrently and independently routing data to plural read/write ports |
JPS6462764A (en) * | 1987-09-03 | 1989-03-09 | Agency Ind Science Techn | Vector computer |
US5115497A (en) * | 1987-10-01 | 1992-05-19 | California Institute Of Technology | Optically intraconnected computer employing dynamically reconfigurable holographic optical element |
US5261113A (en) * | 1988-01-25 | 1993-11-09 | Digital Equipment Corporation | Apparatus and method for single operand register array for vector and scalar data processing operations |
US4949250A (en) * | 1988-03-18 | 1990-08-14 | Digital Equipment Corporation | Method and apparatus for executing instructions for a vector processing system |
US5113521A (en) * | 1988-03-18 | 1992-05-12 | Digital Equipment Corporation | Method and apparatus for handling faults of vector instructions causing memory management exceptions |
US5210834A (en) * | 1988-06-01 | 1993-05-11 | Digital Equipment Corporation | High speed transfer of instructions from a master to a slave processor |
JP3068138B2 (ja) * | 1989-04-06 | 2000-07-24 | 甲府日本電気株式会社 | ベクトル演算処理装置 |
US5208490A (en) * | 1991-04-12 | 1993-05-04 | Hewlett-Packard Company | Functionally complete family of self-timed dynamic logic circuits |
JPH04336378A (ja) * | 1991-05-14 | 1992-11-24 | Nec Corp | 情報処理装置 |
US5418973A (en) * | 1992-06-22 | 1995-05-23 | Digital Equipment Corporation | Digital computer system with cache controller coordinating both vector and scalar operations |
EP0681236B1 (de) * | 1994-05-05 | 2000-11-22 | Conexant Systems, Inc. | Raumzeigersdatenpfad |
US6681315B1 (en) * | 1997-11-26 | 2004-01-20 | International Business Machines Corporation | Method and apparatus for bit vector array |
ATE443885T1 (de) * | 2004-12-17 | 2009-10-15 | Nxp Bv | Arithmetik- oder logikoperations-baum-berechnung |
JP5182284B2 (ja) * | 2007-03-08 | 2013-04-17 | 日本電気株式会社 | ベクトル処理装置 |
GB2484906A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing unit with scalar processor and vector processor array |
WO2012052774A2 (en) | 2010-10-21 | 2012-04-26 | Bluwireless Technology Limited | Data processing units |
GB2489914B (en) * | 2011-04-04 | 2019-12-18 | Advanced Risc Mach Ltd | A data processing apparatus and method for performing vector operations |
US9355061B2 (en) | 2014-01-28 | 2016-05-31 | Arm Limited | Data processing apparatus and method for performing scan operations |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
US4174514A (en) * | 1976-11-15 | 1979-11-13 | Environmental Research Institute Of Michigan | Parallel partitioned serial neighborhood processors |
US4287566A (en) * | 1979-09-28 | 1981-09-01 | Culler-Harrison Inc. | Array processor with parallel operations per instruction |
US4412303A (en) * | 1979-11-26 | 1983-10-25 | Burroughs Corporation | Array processor architecture |
KR860001434B1 (ko) * | 1980-11-21 | 1986-09-24 | 후지쑤 가부시끼가이샤 | 데이타 처리시 스템 |
US4541046A (en) * | 1981-03-25 | 1985-09-10 | Hitachi, Ltd. | Data processing system including scalar data processor and vector data processor |
US4524455A (en) * | 1981-06-01 | 1985-06-18 | Environmental Research Inst. Of Michigan | Pipeline processor |
US4524428A (en) * | 1982-01-26 | 1985-06-18 | Hughes Aircraft Company | Modular input-programmable logic circuits for use in a modular array processor |
US4498134A (en) * | 1982-01-26 | 1985-02-05 | Hughes Aircraft Company | Segregator functional plane for use in a modular array processor |
US4594682A (en) * | 1982-12-22 | 1986-06-10 | Ibm Corporation | Vector processing |
US4589067A (en) * | 1983-05-27 | 1986-05-13 | Analogic Corporation | Full floating point vector processor with dynamically configurable multifunction pipelined ALU |
-
1983
- 1983-03-02 JP JP58034197A patent/JPS59160267A/ja active Granted
-
1984
- 1984-01-12 GB GB08400729A patent/GB2136172B/en not_active Expired
- 1984-01-20 US US06/572,521 patent/US4641275A/en not_active Expired - Lifetime
- 1984-01-20 DE DE3401995A patent/DE3401995A1/de active Granted
Non-Patent Citations (1)
Title |
---|
US-Z.: Computing Surveys Vol. 9, No. 1, March 1977, S. 95-100 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5389835A (en) * | 1991-04-12 | 1995-02-14 | Hewlett-Packard Company | Vector logic method and dynamic mousetrap logic gate for a self-timed monotonic logic progression |
DE19735348B4 (de) * | 1996-08-19 | 2006-10-05 | Samsung Electronics Co., Ltd., Suwon | Vektorprozessor zur Einzelbefehl-Mehrdaten-Verarbeitung unter Verwendung von mehreren Bänken von Vektorregistern und zugehöriges Verfahren zum Betreiben desselben |
Also Published As
Publication number | Publication date |
---|---|
JPS6367705B2 (de) | 1988-12-27 |
GB2136172B (en) | 1986-06-11 |
GB2136172A (en) | 1984-09-12 |
DE3401995C2 (de) | 1988-07-28 |
GB8400729D0 (en) | 1984-02-15 |
JPS59160267A (ja) | 1984-09-10 |
US4641275A (en) | 1987-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3401995C2 (de) | ||
DE3248215C2 (de) | ||
DE2350884C2 (de) | Adreßumsetzungseinheit | |
DE3638572C2 (de) | ||
DE2457612C3 (de) | Mikroprogrammier-Steuereinrichtung | |
DE3400723C2 (de) | ||
DE3741953A1 (de) | Multiprozessorsystem und verfahren zur arbeitslastverteilung bei einem solchen | |
DE4118331A1 (de) | Bussystem zur anwendung bei einem informationsverarbeitungsgeraet | |
DE2145120A1 (de) | Digitales Datenverarbeitungsgerat | |
DE3606650A1 (de) | Hardware logik-simulator | |
DE3210816A1 (de) | Datenverarbeitungssystem mit getrennten einrichtungen zur verarbeitung von skalar- und vektordaten | |
DE3424962A1 (de) | Datenverarbeitungsverfahren und vorrichtung zur durchfuehrung desselben | |
DE2536622C2 (de) | Verzweigungssteuerung mit flexibler Auswahl von Steuerworten | |
DE69632655T2 (de) | Pipeline-Datenverarbeitungsanordnung zur Durchführung einer Mehrzahl von untereinander datenabhängigen Datenprozessen | |
DE3726168A1 (de) | Verfahren und vorrichtung zur steuerung der datenuebertragung zwischen speichern eines datenverarbeitungssystems | |
DE2054830A1 (de) | Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher | |
DE3043653A1 (de) | Datenverarbeitungsanlage | |
DE2548720C2 (de) | Mikroprogramm-Steuerwerk | |
DE3446957A1 (de) | Vektor-prozessor | |
DE1925427A1 (de) | Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern | |
DE3447530A1 (de) | Vektorprozessor | |
DE19905541A1 (de) | Verfahren zum Steuern des Speicherzugriffs in einer Maschine mit einem Speicher mit ungleichmäßigem Zugriff und Maschine zur Ausführung eines solchen Verfahrens | |
DE1916377C3 (de) | ||
DE2459476A1 (de) | Schaltungsanordnung fuer nichtzyklische datenpermutationen | |
DE3633898C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G06F 9/38 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |