DE4021784A1 - Vektorprozessor - Google Patents

Vektorprozessor

Info

Publication number
DE4021784A1
DE4021784A1 DE4021784A DE4021784A DE4021784A1 DE 4021784 A1 DE4021784 A1 DE 4021784A1 DE 4021784 A DE4021784 A DE 4021784A DE 4021784 A DE4021784 A DE 4021784A DE 4021784 A1 DE4021784 A1 DE 4021784A1
Authority
DE
Germany
Prior art keywords
vector
data
byte
main memory
entries
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
DE4021784A
Other languages
English (en)
Other versions
DE4021784C2 (de
Inventor
Masamori Kashiyama
Tomoo Aoyama
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.)
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Publication of DE4021784A1 publication Critical patent/DE4021784A1/de
Application granted granted Critical
Publication of DE4021784C2 publication Critical patent/DE4021784C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • G06F15/8076Details on data register access

Description

Die vorliegende Erfindung bezieht sich auf einen Vektorprozessor, insbesondere auf einen Vektorprozessor zur effizienten Steuerung des Speicherzugriffs, wobei unter Verwendung einer byteweisen Datenübertragung zwischen einem Vektorregister und einer Verarbeitungs­ einheit ein Speicherbankkonflikt vermieden wird.
Wenn insbesondere bei Anwendungen im Bereich der künstlichen Intelligenz Bildverarbeitung oder Datenver­ arbeitung in einem Datenprozessor durchzuführen ist, wird normalerweise eine byteweise Speicherzugriffsfunktion benötigt.
Ein Vektorprozessor kann dabei mehrere Verarbeitungs­ einheiten in überlappender Weise durch eine Verkettungs­ funktion benützen. Um gute Datenverarbeitungseigenschaf­ ten zu erhalten, wird im Vektorprozessor der Speicherzu­ griff nicht byteweise, sondern auf Wort- oder Doppelwort­ basis durchgeführt.
In wissenschaftlichen und technischen Berechnungen wird ein Großteil der Datenverarbeitung auf Wort- oder Doppelwortbasis durchgeführt, und hohe Verarbeitungs­ geschwindigkeit wird durch ein Speicherzugriffssteuer­ system erreicht.
Bei der Bildverarbeitung wird andererseits die Ver­ arbeitung byteweise durchgeführt, so daß es wegen eines Speicherbankkonflikts schwierig ist, eine hohe Verarbei­ tungsgeschwindigkeit in der Speicherzugriffssteuerung zu erhalten.
Zur Lösung dieses Problems bechreibt die JP-A­ 60-1 86 964 Speicherzugriffsmittel für einen Vektorpro­ zessor, die byteweise zugreifen.
Es ist sehr schwierig, byteweise auf Speicher zuzu­ greifen und gleichzeitig eine Zunahme der Hardware zu unterbinden.
Der Hardwareaufwand ist beispielsweise relativ klein, wenn Daten in aufeinanderfolgenden Adressen gespeichert sind, selbst wenn die Daten im Byteformat vorliegen. Bei Anwendungen insbesondere aber im Bereich der künstlichen Intelligenz ist es schwierig, Daten in aufeinanderfolgenden Adressen zu speichern.
Bei Vektorprozessoren gemäß dem Stand der Technik, bei denen Bildverarbeitung byteweise durchgeführt wird, ist es schwierig, Daten mit hoher Geschwindigkeit zu ver­ arbeiten, weil in der Speicherzugriffssteuerung ein Speicherbankkonflikt auftritt.
Aufgabe der Erfindung ist es, einen Vektorprozessor zu ermöglichen, der beim Speicherzugriff des Vektorpro­ zessors den byteweisen Speicherzugriff zu den Vektor­ registern steuert, ohne den Hardwareaufwand zu erhöhen.
Erfindungsgemäß wird diese Aufgabe durch die Merk­ male des Patentanspruchs 1 gelöst. Die abhängigen An­ sprüche kennzeichnen vorteilhafte Weiterbildungen davon.
Erfindungsgemäß führt der Vektorprozessor den Zu­ griff auf in einem Speicher byteweise angeordnete Daten in zwei Schritten durch: einen Datentransfer in Mehr­ bytebreite zwischen dem Speicher und je einem Vektor­ register und einen Datentransfer zwischen dem Vektor­ register und einer Verarbeitungsseinheit.
Der Vektorprozessor umfaßt eine Logikeinheit zur Bestimmung einer indirekten Adresse für den Speicherzu­ griff und zum Senden/Empfangen von Bytedaten in irgend­ einem Vektorregister durch ein Zeichen-Bit im Datentrans­ fer zwischen dem Vektorregister und der Verarbeitungs­ einheit zur und von der Verarbeitungseinheit, eine Adres­ senerzeugungs-Logikeinheit zur Erzeugung einer Liste von Marken- bzw. Zeichen-Bits, eine Datenstack-Logikeinheit zum Speichern der Zeichen-Bit-Liste, eine Steuerlogik zur Steuerung der Schreib/Leseoperation der Vektorregister in Abhängigkeit von der Zeichen-Bit-Liste, die von dem Datenstack gelesen wird, und eine Vektorelement-Kompres­ sionslogikeinheit.
Im folgenden wird die Erfindung anhand der Zeichnung beschrieben. Es zeigen:
Fig. 1 zeigt ein Blockdiagramm eines Vektorpro­ zessors, der ein erfindungsgemäßes Zeichen- Bit hat,
Fig. 2 die Beziehung zwischen einem Vektorregister und einem Zeichen-Bit-Stack und einem Wortadressen-Stack,
Fig. 3 und 4 weitere Details der Beziehungen aus Fig. 2, und
Fig. 5 einen Ladevorgang bei der Speicherverarbei­ tung.
Zunächst wird die vorliegende Erfindung kurz um­ rissen.
Die Operation für einen Vektorladespeicherbefehl wird durch drei Elemente festgelegt, durch eine Basis­ adresse (BR), durch Inkrementdaten (ID) und durch eine Vektorlänge (VL). Die Speicherzugriffsadresse eines Vektorelementes j ist gegeben durch
A(j) = BR + (j-1) · ID, (1)
wobei 1 ≦ j ≦ VL.
Wenn der Speicher aus Worten (= 8 B) besteht, werden zwei Größen WA und MK wie folgt definiert:
WA(j) = | A(j)/8 | (2)
MK(j) = Mod (A(j), 8) (3).
WA gibt eine Wortadresse wieder, unter der das Vek­ torelement j im Speicher gespeichert ist, und MK gibt ein Zeichen-Bit wieder, das eine Position festlegt, an der das Vektorelement j von Daten (Wortlänge), die zu dieser Wortadresse gehören, gespeichert ist. Die Zeichen-Bits werden gezählt wie 0, 1, 2, ---.
Die WA- und MK-Listen, die so erzeugt wurden, werden in einen Datenstack gespeichert. Dieser Datenstack kann eine Struktur ähnlich der des Vektorregisters haben.
Normalerweise besteht ein Wort aus vier Bytes und ein Doppelwort aus acht Bytes, in dieser Beschreibung sei aber als Beispiel angenommen, daß ein Wort aus acht Bytes besteht.
Bei einer Vektorladeprozedur werden die folgenden Tätigkeiten durchgeführt. Die WA-Liste wird aus dem Stack gelesen und eine indirekte Adressierung des Speichers durchgeführt. Die indirekte Adressierung ist bekannt. Bei der indirekten Adressierung wird das Datenwort, das das Vektorelement aus dem Speicher enthält, in das Vektor­ register geschrieben.
Im Lesemodus des Vektorregisters wird die MK-Liste aus dem Datenstack gelesen, die aus dem Vektorregister gelesenen Daten gemäß dem Zeichen-Bit modifiziert (um den Dezimalpunkt auf den der Verarbeitungseinheit auszu­ richten) und an die Verarbeitungseinheit übersendet. Die von dieser verarbeiteten Daten werden in die Zeichen-Bit- Position der ursprünglichen wortweisen Daten der MK-Liste geschrieben.
Beim Speichern eines Vektors kann eines der beiden folgenden Verfahren verwendet werden.
Beim ersten Verfahren werden die Daten aus dem Speicher entsprechend der WA-Liste in das Vektorregister übertragen, und gemäß der MK-Liste wird ein Arbeitser­ gebnis in das Vektorregister geschrieben, um Vektordaten in einem Vorspeicherstadium vorzubereiten.
Beim zweiten Verfahren werden Daten aus einen zu überschreibenden Bereich in das Vektorregister über­ tragen, und eine Ausgabe der Verarbeitungseinheit wird mittels des Zeichen-Bits in das Vektorregister geschrieben, um die Vektordaten in einem Vorspeicherstadium bereitzu­ stellen. Bei diesem zweiten Verfahren kann durch den verbesserten Gebrauch des Vektorregisters durch Software der Hardwareumfang reduziert werden.
Die folgende Beschreibung basiert auf der zweiten Methode.
Wenn mehrere Vektorelemente in derselben Wortadresse enthalten sind, müssen die Vektordaten im Vorspeichersta­ dium auf den Vektor editiert werden. Hierfür wird eine Vektorelementreduzierlogik benutzt. Durch den indirekten Adressierspeicherzugriff mit der WA-Liste kann der Vek­ torprozessor auf jedes Byte der auf das Vektorregister editierten Daten zugreifen.
Erlaubt man die Verarbeitung des Zeichen-Bits zu­ sammen mit den Daten des Vektorregisters, dann hat ein Vektorbefehl:
  • (1) einen Befehlscode,
  • (2) ein Bestimmungsfeld für Operandenregister,
  • (3) ein Bestimmungsfeld für Maskenregister ebenso wie
  • (4) ein Bestimmungsfeld für ein Zeichen-Bit-Stack und
  • (5) ein Bestimmungsfeld für den WA-Adressenlisten- Stack.
Der Vektorlade/Speicherbefehl wird in der Form eines Makrobefehles ausgeführt, der durch mehrere Einzel­ schritte realisiert wird.
Fig. 1 zeigt ein Blockdiagramm eines Vektorpro­ zessors, der erfindungsgemäß ein Zeichen-Bit-Stack hat.
Es sei nun angenommen, daß Vektordaten in Byte­ einheiten in den Vektorprozessor geladen werden und daß sie nach der Vektoroperation gespeichert werden.
Beim Ladevorgang des Vektorbefehles erzeugt eine Adreßerzeugungslogikeinheit 1 eine Wortadresse WA(j), die eine 8-Byte-Startadresse ist, die die Adresse A(j) eines in einem Hauptspeicher 2 gespeicherten 1-Byte-Zielvektor­ elements enthält, sowie ein Zeichen-Bit MK(j), das eine Byte-Position in der durch die Wortadresse ausgewählten 8-Byte-Länge festlegt. Die Wortadresse WA(j), das Zei­ chenbit MK(j) und die Adresse A(j) des Vektorelementes j sind durch die Formeln (1), (2) und (3) gegeben. Die Zeichen-Bit-Liste (MK-Liste) und die Wortadressenliste (WA-Liste), die von der Adressenerzeugungslogikeinheit 1 erzeugt wurden, werden in einer Datenstack-Logikeinheit 3 gespeichert.
Das Zielvektorelement wird in ein Vektorregister (VR) 4 gespeichert, das durch einen Befehl über eine Leitung 5 und durch eine Schaltmatrix-Logik(DIST) 6 be­ stimmt wird. Die Datenstack-Logikeinheit 3 umfaßt einen Wortadressenstack (WA) 3a zur Speicherung der Wort­ adressen WA (j) und einen Zeichenbitstack (MK) 3b zur Speicherung der Zeichenbits MK(j) und hat 32 Sätze, was der Anzahl der Vektorregister 4 entspricht.
Die 32 Vektorregister 4 und die 32 Datenstack- Logikeinheiten 3 arbeiten in einer logisch entsprechenden Weise.
Wie in Fig. 2 dargestellt, entspricht im zugehöri­ gen Vektorregister 4 und dem Wortadressenstack 3b das Vektorelement 1 dem WA (1) und MK (1), und das Vektor­ element 2 entspricht dem WA (2) und MK (2). Die 128 Elemente die ein Vektorregister speichern kann, stehen untereinander in gleichartiger Beziehung.
Beim Laden eines Vektors wird gemäß der im Wort­ adressenstack 3a gespeicherten WA-Liste die Wortadresse WA (j) für das Vektorelement j ausgegeben und einer Logikeinheit 7 für die Hauptspeicherzugriffssteuerung zugeführt, so daß der Hauptspeicher 2 indirekt adressiert wird.
Fig. 3 zeigt die Beziehung zwischen einem im Haupt­ speicher 2 gespeicherten 1-Byte-Vektorelement j ( ≧ VL<j, 8 ≦ ID) und dem Zeichenbitstack 3b, wenn das Vektor­ element j in das Vektorregister 4 geladen wird.
Das Vektorregister 4 ist 8 Byte (ein Wort) breit und der Ladevorgang wird wortweise durchgeführt. Dement­ sprechend werden gleichzeitig, ausgehend von WA(1) als Startadresse, die Daten des Vektorelements 1 entsprechend der Adresse A (1) in das Vektorregister 8B geschrieben.
Alle Vektorelemente werden in gleichartige Weise eingeschrieben, bis das Vektorelement A (j) eingeschrie­ ben wird. Wenn beispielsweise das Vektorelement 2 einge­ schrieben wird, ist es im Zeichenbitstack 3b das vierte Byte, so daß das B4-Bit des entsprechenden MK (2) auf "1" gesetzt wird und die anderen Bits auf "0" (die Bytes in einem Wort werden von 0 bis 7 durchgezählt). Die anderen Vektorelemente werden ebenso eingeschrieben. Der Zeichen­ bitstack 3b umfaßt 8 Bits B0, B1, B2, --- B7, so daß sie den Bytes eines Wortes entsprechen.
Fig. 4 zeigt ein Beispiel, bei dem daß Vektorele­ mentinkrement (ID) Vergleich 5 ist. Wenn ID < 8 ist, können Fälle auftreten, in denen ausgehend von der Wort­ adresse WA(j) zwei Vektorelemente in einem Wort enthalten sind. In diesem Fall wird dieselbe Wortadresse WA(j) kontinuierlich in den Wortadressenstack 3a abgespeichert wie in Fig. 4 gezeigt.
Für die Vektorelemente j-1 und j werden somit die­ selben Daten in einer Breite von 8 Bytes in das Vektor­ register 4 geschrieben. Im Zeichenbitstack 3b spiegelt sich aber der Unterschied zwischen den Bytepositionen der Vektorelemente j-1 und j wider. Bei MK (j-1) ist B0 nämlich "1" und die anderen Bits sind "0", und in MK (j) ist B5 "1" und die anderen Bits sind "0".
Wie oben beschrieben, wird somit das Laden eines Vektors unter paarweiser Verwendung der im Zeichen- Bitstack 3b gespeicherten MK-Liste der in dem Wortadres­ senstack 3a gespeicherten WA-Liste durchgeführt.
Die in das Vektorregister 4 geschriebenen Vektor­ daten werden einem Schieber 9 über eine Schaltmatrixlogik (SEL) 8 zugeführt. Der Schieber 9 erlaubt byteweise Schiebeoperationen, wobei die Schiebebedingungen durch die Bitposition eines Vektorelementes bestimmt werden, die gemäß der Beziehungen zwischen den Vektordaten und dem Stack aus dem Zeichenbitstack 3b entsprechend dem Vektorelement gelesen werden. Das von dem Schieber 9 ausgegebene Vektorelement hat eine Dezimalpunktposition, die auf die der Verarbeitungseinheit 10 ausgerichtet ist und wird dann in der Verarbeitungseinheit 10 verarbeitet. Die in der Verarbeitungseinheit 10 verarbeiteten Vektor­ daten werden einem Schieber 11 zugeführt. Der Schieber 10 erlaubt byteweise Schiebeoperationen. Es schiebt die vom Schieber 9 verschobenen Vektorelemente auf der Grundlage von aus dem Zeichenbitstack 3b gelieferten Daten zurück auf die ursprüngliche Byteposition. Durch das DIST 6 wird dann das Vektorelement zur Speicherung des Verarbeitungs­ ergebnisses in das Vektorregister 4 geschrieben.
Zuletzt wird das Verarbeitungsergebnis auf die ur­ sprüngliche Adresse des Hauptspeichers 2 geschrieben. Nach dem Speichervorgang sollten andere Daten als das Zielvektorelementes j nicht geändert werden. Somit werden die Vektordaten aus dem Hauptspeicher 2 in das Vektor­ register 4 gemäß der Wortadresse WA(j) der WA-Liste der Datenstack-Logikeinheit 3 entsprechend dem Vektorelement j der Vektorladeoperation geladen, um dort das Arbeitsergebnis zu speichern.
Fig. 5 stellt Details der Ladeoperation im Vor­ speicherstadium dar.
Jedes der in Fig. 1 dargestellten 32 Vektorregister 4 beinhaltet acht 1-Byte RAM′s, die ein Vektorregister 4a bilden. Das WE-Signal wird zum unabhängigen Schreiben angelegt und UND-verknüpft mit den invertierten Ausgangs­ signalen der Bits B0, B1 --- B7 des mit dem Vektorre­ gister 4 gepaarten Zeichenbitstack 3b, das UND-Ausgangs­ signal wird dem Vektorregister 4a zugeführt.
Beim Ladevorgang eines Vektors wird das Vektor­ element j aus dem Hauptspeicher 2 in das Vektorregister 4 geschrieben, in dem das Verarbeitungsergebnis gespeichert war. Dabei werden nur diejenigen Bytes gemäß der in dem Zei­ chenbit-Stack 3b gespeicherten MK-Liste überschrieben, die durch "0" Zeichenbits B0 , B1, --- B7 gekennzeich­ net sind. Über eine Leitung 8 wird dann der Inhalt des Vektorregisters 4 auf dieselbe durch die WA-Liste festge­ setzte Adresse des Hauptspeichers 2 geschrieben wie vor dem Ladevorgang.
Die Hauptspeicheradresse beim obigen Vorgang wird gemäß der WA-Liste aus der Datenstack-Logikeinheit 3 durch indirektes Adressieren mittels der logischen Ein­ heit 7 für die Hauptspeicherzugriffssteuerung erzeugt.
Im Beispiel der Fig. 4 wird die WA-Liste des Wort­ adressenstacks 3a verglichen, und die Ausgabe des Zeichen Bit-Stacks 3b, die fortlaufend dieselbe Adresse beinhal­ tet, wird ODER-verknüpft. Es ist effizienter, wenn der obige Vorgang in Form von Makroinstruktionen, bestehend aus vielen Einzeloperationen, durchgeführt wird.
Wie oben beschrieben, kann erfindungsgemäß auf die byteweise im Hauptspeicher gespeicherten Vektordaten zu­ gegriffen werden.
Beim Speicherzugriff während der Vektorverarbeitung wird die byteweise Speicherzugriffssteuerung ohne Zu­ nahme des Hardwareaufwands erreicht.
Der Vektorprozessor kann außerdem in nicht­ numerischen Aufgaben wie beispielsweise Bildverarbeitung oder Informationsverarbeitung, die zum Bereich der künst­ lichen Intelligenz gehören, durch byteweise Speicherzu­ griffssteuerung angewendet werden.
Erfindungsgemäß wird somit ein byteweiser Speicher­ zugriff des Vektorprozessors mit geringerer Zunahme der Hardwaremenge erreicht, und der Speicherkonflikt wird vermieden, weil die Hauptspeicherzugriffe wortweise durchgeführt werden.

Claims (10)

1. Vektorprozessor bei dem Ein- und Ausgaben von Vektordaten in ein oder von einem Vektorregister (4) über eine Lade/Speicherpipeline (8) von einem Hauptspeicher (2) her durchgeführt wird, gekennzeichnet durch Lesemittel (6) zum Lesen von Daten in einer Breite von mehrere Byte aus dem Hauptspeicher (2) bei einem Zugriff; mehrere Vektorregister (4) zur Speicherung der von den Lesemitteln (6) zugeführten Daten, wobei jedes der Vektorregister (4) Vektordateneinträge in einer Breite von mehreren Byte speichert; Zeichenspeichermittel (3b), von denen eines für je eines der Vektorregister (4) vorgesehen ist und von denen jedes dieselbe Anzahl von Einträgen hat wie die Vektorregister (4), wobei die Einträge der Zeichenspeichermittel (3b) Marken­ bits sind, die angeben, welche der in den entsprechenden Vektorregistern (4) gespeicherten aus mehreren Byte bestehenden Daten gültig sind; und Übertragungsmittel (8, 9) zur Übertragung der gültigen Daten, wenn die aus den Vektorregistern (4) gelesenen Daten an eine Verarbeitungseinheit (10) zu senden sind, gemäß den in den Zeichenspeichermitteln (3b) gespei­ cherten Marken.
2. Vektorprozessor nach Anspruch 1, dadurch gekennzeichnet, daß die Lesemittel (6) wortweise auf den Hauptspeicher (2) zugreifen.
3. Vektorprozessor nach Anspruch 1, dadurch gekennzeichnet, daß eine Datenstacklogik (3) die Position eines Bytes in einer Wortadresse von im Hauptspeicher (2) gespeicherten Vektordaten speichert.
4. Vektorprozessor nach Anspruch 1, gekennzeichnet durch Adreßspeichermittel (3a), von denen je eines für jedes der Vektorregister (4) vorgesehen ist und von denen jedes zumindest dieselbe Anzahl von Einträgen hat, wie die Vektorregister (4), wobei die Einträge in jedem der Adreßspeichermittel eine Adresse zur Festlegung von Daten in einer Breite von mehreren Byte, die in den Einträgen der entsprechenden Vektorregister (4) gespeichert sind, enthalten; Lademittel (6) zum Laden eines Verarbeitungsergebnisses einer Operation in ein Vektorregister (4); Speichermittel zum Speichern von Daten aus dem Haupt­ speicher (2) in ungültigen Datenbereichen der Einträge des Vektorregisters (4), die gemäß den in den Adreß­ speichermitteln gespeicherten Adressen durch die Marken bestimmt sind; und Schreibmittel (8) zum Schreiben der Daten aus dem Vektor­ register (4) in den Hauptspeicher (2).
5. Vektorprozessor nach Anspruch 4, dadurch gekennzeichnet, daß in die Vektorregister (4) Bytes eingeschoben sind, um simultanen Zugriff auf die Daten der Einträge in der Breite von mehrere Byte zu erlauben.
6. Vektorprozessor nach Anspruch 1, gekennzeichnet durch eine Datenstacklogik (3) zur Angabe eines Attributes von Vektordaten; wobei der Zugriff auf die Vektorregister (4) entsprechend der in der Datenstacklogik (3) gespeicherten Informa­ tionen gesteuert wird.
7. Vektorprozessor nach Anspruch 6, dadurch gekennzeichnet, Übertragungsmittel (8, 9) zum Übertragen von Daten zwischen die Vektordaten byteweise während des Daten­ transfers gemäß den in der Datenstacklogik (3) gespei­ cherten Informationen verarbeitet werden.
8. Vektorprozessor nach Anspruch 6, dadurch gekennzeichnet, daß die Datenstacklogik (3) die Position eines Bytes in einer Wortadresse der im Hauptspeicher (2) gespeicherten Vektordaten speichert.
9. Vektorprozessor nach Anspruch 6, dadurch gekennzeichnet, daß die Datenstacklogik (3) so ausgebildet ist, daß die Anzahl der Elemente des Vektorregisters (4) und die Anzahl der Stacks der Datenstacklogik (3) gleich sind.
10. Vektorregister nach Anspruch 7, dadurch gekennzeichnet, daß auf Vektordaten im Hauptspeicher (2) zugegriffen wird, die 1-Byte breite Vektorelemente 2) haben.
DE4021784A 1989-07-10 1990-07-09 Vektorprozessor Granted DE4021784A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1175468A JP2607689B2 (ja) 1989-07-10 1989-07-10 ベクトル処理装置

Publications (2)

Publication Number Publication Date
DE4021784A1 true DE4021784A1 (de) 1991-01-24
DE4021784C2 DE4021784C2 (de) 1992-10-08

Family

ID=15996589

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4021784A Granted DE4021784A1 (de) 1989-07-10 1990-07-09 Vektorprozessor

Country Status (3)

Country Link
US (1) US5247695A (de)
JP (1) JP2607689B2 (de)
DE (1) DE4021784A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2665111B2 (ja) * 1992-06-18 1997-10-22 日本電気株式会社 ベクトル処理装置
US6665790B1 (en) * 2000-02-29 2003-12-16 International Business Machines Corporation Vector register file with arbitrary vector addressing
US7299338B2 (en) * 2002-12-04 2007-11-20 Agere Systems Inc. Vector indexed memory unit and method
GB2399900B (en) * 2003-03-27 2005-10-05 Micron Technology Inc Data reording processor and method for use in an active memory device
US9501276B2 (en) 2012-12-31 2016-11-22 Intel Corporation Instructions and logic to vectorize conditional loops

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60186964A (ja) * 1984-03-05 1985-09-24 Hitachi Ltd ベクトル処理装置
DE3930313A1 (de) * 1988-09-14 1990-03-15 Hitachi Ltd Vektorprozessor

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR860001434B1 (ko) * 1980-11-21 1986-09-24 후지쑤 가부시끼가이샤 데이타 처리시 스템
JPS57209570A (en) * 1981-06-19 1982-12-22 Fujitsu Ltd Vector processing device
JPS5975365A (ja) * 1982-10-22 1984-04-28 Hitachi Ltd ベクトル処理装置
JPH0652530B2 (ja) * 1982-10-25 1994-07-06 株式会社日立製作所 ベクトル・プロセッサ
JPH077385B2 (ja) * 1983-12-23 1995-01-30 株式会社日立製作所 データ処理装置
JPS60136872A (ja) * 1983-12-26 1985-07-20 Hitachi Ltd ベクトル処理装置
JPS6160473A (ja) * 1984-08-21 1986-03-28 日本軽金属株式会社 生菓子等の保温配送方法
US4745577A (en) * 1984-11-20 1988-05-17 Fujitsu Limited Semiconductor memory device with shift registers for high speed reading and writing
JPH0731669B2 (ja) * 1986-04-04 1995-04-10 株式会社日立製作所 ベクトル・プロセツサ

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60186964A (ja) * 1984-03-05 1985-09-24 Hitachi Ltd ベクトル処理装置
DE3930313A1 (de) * 1988-09-14 1990-03-15 Hitachi Ltd Vektorprozessor

Also Published As

Publication number Publication date
JPH0341554A (ja) 1991-02-22
US5247695A (en) 1993-09-21
JP2607689B2 (ja) 1997-05-07
DE4021784C2 (de) 1992-10-08

Similar Documents

Publication Publication Date Title
DE3338345C2 (de)
DE2410491C2 (de)
DE3424962C2 (de)
DE2230102A1 (de) Rechenwerk fuer variable wortlaengen
DE1931966C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
CH650600A5 (de) Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister.
DE4022885C2 (de) Verfahren zum Verschieben von Speicherbereichen und Hierarchie-Speichersystem
DE2903349A1 (de) Datenverarbeitungseinrichtung
DE2948668A1 (de) Puffereinheit
DE2718110A1 (de) Datenverarbeitungseinheit
DE3900246C2 (de)
DE3338329C2 (de)
DE2047062A1 (de) Verfahren und Einrichtung zur Messung der Effektivität einer Daten Verarbeitungsanlage mit virtueller Adre»»ici uiig
DE4117672A1 (de) Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers
DE2458286A1 (de) Datenverarbeitungssystem zum verschieben von datenfeldern mit verschiedenen strukturen
DE3932695A1 (de) Datenverarbeitungssystem vom mehrfach virtuellen adressraum-typ
DE4021784C2 (de)
DE3107568A1 (de) Datenverarbeitungseinrichtung
DE3506592C2 (de) Aufzeichnungsgerät
DE2458259A1 (de) Datenverarbeitungssystem zum vergleichen verschiedener datenstrukturen
DE3121046C2 (de)
DE2233193A1 (de) Stapel-speichersystem
DE3931505C2 (de) Speichersteuerung in einer Datenverarbeitungsanlage
DE1956460B2 (de) Datenverarbeitungsanlage mit Assoziativspeichern
CH495584A (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee