DE3930313A1 - Vektorprozessor - Google Patents

Vektorprozessor

Info

Publication number
DE3930313A1
DE3930313A1 DE3930313A DE3930313A DE3930313A1 DE 3930313 A1 DE3930313 A1 DE 3930313A1 DE 3930313 A DE3930313 A DE 3930313A DE 3930313 A DE3930313 A DE 3930313A DE 3930313 A1 DE3930313 A1 DE 3930313A1
Authority
DE
Germany
Prior art keywords
vector
register
data
time
write
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
DE3930313A
Other languages
English (en)
Other versions
DE3930313C2 (de
Inventor
Masamori Kashiyama
Koichi Ishii
Shun Kawabe
Masami Usami
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
Original Assignee
Hitachi 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 filed Critical Hitachi Ltd
Publication of DE3930313A1 publication Critical patent/DE3930313A1/de
Application granted granted Critical
Publication of DE3930313C2 publication Critical patent/DE3930313C2/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
    • G06F15/8084Special arrangements thereof, e.g. mask or switch
    • 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/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • 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/30098Register arrangements
    • G06F9/30141Implementation provisions of register files, e.g. ports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung betrifft einen Vektorprozessor, insbesondere einen solchen Vektorprozessor, der für die Anwendung in einem einen Ultrahochgeschwindigkeitsmaschinenzyklus aufweisenden Supercomputer geeignet ist.
Für die Erhöhung der Leistung eines Supercomputers ist es im allgemeinen höchst effektiv, eine Mehrzahl von Pipelinerechen- und Logikeinheiten und eine Mehrzahl von Vektorregistern vorzusehen, damit die Vektordaten zwischen unzusammenhängenden Befehlen parallel verarbeitet werden und damit die parallel zu verarbeitenden Vektordaten von den Vektorregistern an die Pipelinerechen- und Logikeinheiten und von den Rechen- und Logikeinheiten an die Vektorregister schnell übertragen werden, so daß der Maschinenzyklus verringert wird.
Oftmals treten bei der Vektoroperation sich wiederholende Operationen auf. In einer solchen Wiederholoperation gibt es den Fall, in dem ein ein Vektoroperationsergebnis haltendes Vektorregister einen Operanden für die nächste Befehlsausführung liefert. Um eine das gleichzeitige Lesen der Operan­ dendaten und das Schreiben des Operationsergebnisses für das eine einzige logische Adresse besitzende Vektorregister erlaubende Verkettung zu ermöglichen, ist ein das Vektorregister aufbauendes RAM so gestaltet, daß es zwei unabhängig adressierbare Bankfelder aufweist, wobei eines der Banken sämtliche geradzahligen Elemente der Vektordaten hält, während die andere Bank sämtliche ungeradzahligen Elemente der Vektordaten hält, so daß für jede Bank eine Schreib- und eine Lesegeschwindigkeit erreicht wird, die der Taktfrequenz des Maschinenzyklus entspricht. Ein solcher Vektorprozessor ist aus JP-58-114274-A bekannt. Aus JP-59-77574-A ist ferner eine Hochgeschwindigkeitstechnik für Vektorregister, die keine Banken aufweisen, bekannt.
Wenn die Vektorregister mittels des 2-Banken-RAMs aufgebaut werden und das Lesen und Schreiben des RAMs mit der Taktfrequenz des Maschinenzyklus erfolgt, sind die die Taktfrequenz des Maschinenzyklus bestimmenden Faktoren die Schreibzeit (pitch) und die Lesezeit (pitch), d. h. die Adressenzugriffszeit des die Vektordaten haltenden RAMs. Genauer überwiegt der durch die Summe der Rüstzeit, der Schreibimpulsbreite und der Haltezeit definierte Schreibpitch bei der Festlegung der Taktfrequenz, da er im Adresseneingabefall 1,5mal so lang ist wie der Lesepitch. Diese Tendenz bleibt auch dann unverändert bestehen, wenn ein Ultrahochgeschwindigkeitsverbindungshalbleiter (GaAs, HEMT) verwendet wird, da sie eine Eigenschaft der Speicherschaltung ist. Wie aus dem obenerwähnten Stand der Technik ersichtlich, ist es andererseits für die Erhöhung der Leistung des Vektorprozessors wesentlich, die Taktfrequenz des Maschinenzyklus zu erhöhen. In den die 2-Banken-RAMs aufweisenden Vektorregistern des Standes der Technik ist jedoch die Schreibtaktfrequenz gleich der Lesetaktfrequenz. Wenn daher der Lesepitch schneller als die Taktfrequenz ist, während der Schreibpitch langsamer als die Taktfrequenz ist, so stellt der Schreibpitch einen wichtigen Faktor dar, der eine Begrenzung für die Erhöhung der Taktfrequenz des Maschinenzyklus darstellt. Insbesondere in einem Ultrahochgeschwindigkeits-RAM mit einer Zugriffszeit von weniger als 1 Nanosekunde kann der Lesepitch nicht wirksam ausgenutzt werden.
Es ist daher die Aufgabe der vorliegenden Erfindung, einen Vektorprozessor zu schaffen, der die vom Schreibpitch bestimmte Leistung der die 2-Banken-RAMs aufweisenden Vektorregister verbessert, indem die Taktfrequenz des Maschinenzyklus gleich der Hälfte der aus dem Schreibpitch und dem Lesepitch des für die Vektorregister verwendeten Ultrahoch­ geschwindigkeits-RAMs zusammengesetzten Gesamtzeit gesetzt wird, wobei die Tatsache ausgenutzt wird, daß die Schreiboperation an eine RAM-Bank in den 2-Banken-RAM-Vektorregistern nicht in aufeinanderfolgenden Zyklen auftritt.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß die dieselbe logische Adresse besitzenden Vektorregister in einem Bankfeld angeordnet werden, wodurch die unabhängige Adressierung der zwei Ultrahochgeschwindigkeits-RAMs ermöglicht wird, daß sämtliche geradzahligen Elemente der Vektordaten in einer der Banken und sämtliche ungeradzahligen Elemente der Vektordaten in der anderen Bank gehalten werden, daß zur Erzeugung der an die zwei RAM-Banken zu liefernden Schreib- und Leseadressen ein Schreibadressen- und ein Leseadressengenerator vorgesehen sind, deren Ausgaben eine Phasenverschiebung von einer halben Periode aufweisen und deren Geschwindigkeit gleich der halben Taktfrequenz des Maschinenzyklus ist, und daß die Taktfrequenz des Maschinenzyklus gleich der halben, aus dem Schreibpitch und dem Lesepitch des Vektorregisters zusammengesetzten Gesamtzeit gesetzt wird.
Für die Festlegung der Taktfrequenz zum Lesen und Schreiben der Vektordaten ist ein Taktzeitsteuerungsregister vorgesehen, das auf eine Zykluszeit, die dem für die in einem Schreibmodus befindliche Vektorregisterbank verwendeten Schreibpitch des RAMs entspricht, und auf eine Zykluszeit, die dem Lesepitch des in einem Lesemodus befindlichen RAMs entspricht, einstellbar ist.
Für die Umwandlung der Zykluszeit der an das und vom RAM gelieferten Vektordaten in die Taktfrequenz des Maschinenzyklus des Vektorprozessors ist für ein Schreibdaten-Auffangflipflop und für ein Lesedaten-Auffangflipflop des RAMs ein Phasenumwandlungs-Auffangflipflop vorgesehen. Ferner ist für die Steuerung der an ein Auffangflipflop in einer Großintegrationsschaltung (LSI) der Vektorregister zu liefernden Taktzeit eine variable Verzögerungsschaltung vorgesehen, die von außerhalb der LSI steuerbar ist.
Erfindungsgemäß werden die Vektorregister durch zwei unabhängig adressierbare Bankfelder aufgebaut, das Schreibsteuersignal für die Erzeugung der Schreibadresse und das Lesesteuersignal für die Erzeugung der Leseadresse besitzen eine Phasenverschiebung von einer halben Periode und ihre Geschwindigkeit entspricht der Taktfrequenz des Maschinenzyklus. Daher kann mit dem Taktsteuerungsgenerator die Taktzeit zum Treiben der RAM-Bank-Adressen-Auffangflipflops gesetzt werden, so daß die Schreibadresse und die Leseadresse der RAM-Banken jeweils eine Taktzeit besitzen, die dem Schreibpitch und dem Lesepitch des RAMs entsprechen. Ferner wird die Taktzeit der an das und vom Vektorregister gelieferten Vektordaten durch das Phasenumwandlungs-Auffangflipflop, das durch die vom Taktzeitsteuerungsgenerator gelieferte Taktzeit getrieben wird, in die Taktfrequenz des Maschinenzyklus des Vektorprozessors umgewandelt. Folglich kann die Taktfrequenz des Maschinenzyklus des Vektorprozessors auf eine kürzere Zykluszeit als der für die Vektorregister verwendete Schreibpitch des RAMs gesetzt werden. Genauer kann die Taktfrequenz des Maschinenzyklus des Vektorprozessors auf die halbe, aus dem Schreibpitch und dem Lesepitch zusammengesetzte Gesamtzeit gesetzt werden. Das Verhältnis von Schreibpitch und Lesepitch des RAMs kann mittels Steuerung der variablen Verzögerungsschaltung in der LSI geändert werden.
Die Erfindung wird im folgenden anhand eines Ausführungsbeispiels unter Bezug auf die Zeichnungen näher erläutert; es zeigt
Fig. 1 ein Blockschaltbild des detaillierten Aufbaues eines erfindungsgemäßen Vektorregisters;
Fig. 2 ein Impulsdiagramm zur Erläuterung der Operation des Vektorregisters;
Fig. 3 ein Impulsdiagramm des Taktes, der die Operation des Vektorregisters bestimmt;
Fig. 4 ein Blockschaltbild des erfindungsgemäßen Zeitsteuerungsgenerators; und
Fig. 5 ein Blockschaltbild des Gesamtaufbaus des erfindungsgemäßen Vektorprozessors.
Der Vektorprozessor, wie er in Fig. 5 und ausschnittsweise in den Fig. 1 und 4 gezeigt ist, besitzt ein Vektorregister 101, Selektoren 102 und 103, Pipelinerechen- und Logikeinheiten 106, einen Hauptspeicher (HS) 109, Vektorladepipelines 110, Vektorspeicherpipelines 111, eine Schreibsteuerschaltung 112, eine Lesesteuerschaltung 115, Schreibadressenzähler (WA-Zähler) 118, Leseadressenzähler (RA-Zähler) 119, Selektoren 120, 121, 125, 131 und 132, eine A-RAM-Bank 122, eine B-RAM-Bank 123, Pitch-Steuerschaltungen 124 und 124 a, 124 b, 124 c, ein A-Bank-Adressenregister (AAD) 126, ein B-Bank-Adressenregister (BAD) 127, ein Datenregister (WDATA) 128, Phasenumwandlungs-Datenregister (WDATAA, WDATAB) 128 a bzw. 128 b, Auffangflipflops 129, 130, 136 und 137, ein Phasenumwandlungsdatenregister (RDATA) 138 und Datenregister (RDATAA, RDATAB) 138 a bzw. 138 b.
In Fig. 5 ist der Gesamtaufbau des Systems gezeigt, in dem die erfindungsgemäßen Vektorregister in einem Vektorprozessor eingebaut sind. Der in Fig. 5 gezeigte Vektorprozessor weist Vektorregister 101 (VR 0-VR 31), einen eine Schaltmatrixlogik verwendenden Selektor (DIST) 102, einen eine Schaltmatrixlogik verwendenden Selektor (SEL) 103, Pipelinerechen- und Logikeinheiten 106, Vektorladepipelines 110, Vektorspeichereinheiten 111 und einen Hauptspeicher (HS) 109 auf. Das Vektorregister 101 weist eine A-RAM-Bank 122, die die geradzahligen Elemente der Vektordaten hält, eine B-RAM-Bank 123, die die ungeradzahligen Elemente der Vektordaten hält, einen WA-Zähler 118 zur Erzeugung der Schreibadressen für die zwei RAM-Banken, einen RA-Zähler 119 zur Erzeugung der Leseadressen, einen Selektor 120 für die A-RAM-Bank 122, der die von den Zählern erzeugten Adressen in Zykluszeiten, die dank der Pitch-Steuerschaltung 124 dem Schreibpitch und dem Lesepitch des RAMs entsprechen, auswählt, einen Selektor 121 für die B-RAM-Bank 123, der eine ähnliche Funktion hat, und einen Selektor 125, der die von den Banken gelieferten Daten mit einer Geschwindigkeit auswählt, die dank der Pitch-Steuerschaltung 124 dem RAM-Lesepitch entspricht, auf. Das Vektorregister 101 kann 128 Vektorelemente halten. Das Schreibsteuersignal 113 von der Schreibsteuerschaltung 112 und das Lesesteuersignal 116 von der Lesesteuerschaltung 115 werden mit der Taktfrequenz des Maschinenzyklus und mit einer gegenseitigen Phasenverschiebung einer halben Periode an das Vektorregister 101 geliefert. Während des Betriebs des Vektorprozessors werden die Vektorregister 101 durch parallele Kommandos gesteuert.
Der DIST 102 wählt die über eine Operationsergebnisausgabeleitung 108 von der Pipelinerechen- und Logikeinheit 106 gesendeten Vektordaten und die vom HS 109 gelesenen und über die Vektorladepipeline 110 gesendeten Vektordaten aus. Die die Vektordaten auswählenden Selektoren arbeiten mit der Taktfrequenz des Maschinenzyklus; die Anzahl der vorgesehenen Selektoren entspricht der Anzahl der vorgesehenen Vektorregister 101, genauer sind 32 Selektoren vorgesehen, obwohl diese nicht in Fig. 5 gezeigt sind. Während des Betriebes des Vektorprozessors werden die Vektordaten an denjenigen Schreibdatenbus 104 ausgegeben, der dem Vektorregister 101 entspricht, das durch das von der Schreibsteuerschaltung 112 ausgegebene Vektorregister-Auswahlsignal 114 bezeichnet wird. Der SEL 103 hat einen solchen logischen Aufbau, daß er die über die 32 Busse 105, die mit dem Vektorregister 101 verbunden sind und mit der Taktfrequenz des Maschinenzyklus arbeiten, gelesenen Vektordaten für die Ausgabebusse 107, die mit den Pipelinerechen- und Logikeinheiten 106 und mit der für die Speicherung der Vektordaten im HS 109 verwendeten Vektorspeicherpipeline 111 verbunden sind, auswählt. Während des Vektorprozessorbetriebes werden die Vektordaten von demjenigen Lesedatenbus 105, der dem Vektorregister 101 entspricht, das durch das von der Lesesteuerschaltung 115 gelieferte Vektorregister-Auswahlsignal 117 bezeichnet wird, an diejenige Pipelinerechen- und Logikeinheit 106, die durch das im Vektorregister-Auswahlsignal 117 enthaltene Kommando bezeichnet wird, und an den Ausgabebus an die Vektorspeicherpipeline 111 geschickt.
Das Gesamtkonzept der Verarbeitung des in Fig. 5 gezeigten Vektorprozessors ist dem Gesamtkonzept des aus dem Stand der Technik bekannten Vektorprozessors ähnlich, der in JP-58-11427-A in Fig. 6 dargestellt ist; folglich wird dessen Erläuterung weggelassen. Das Vektorregister 101 weist physikalisch einen Hybridhalbleiterchip auf, der ein Ultra­ hochgeschwindigkeits-RAM und eine Zufallslogik besitzt.
In Fig. 1 sind Einzelheiten eines Vektorregisters 101-0, welches eines der 32 Vektorregister 101 VR 0-VR 31 ist, gezeigt. In Fig. 2 ist ein Impulsdiagramm zur Erläuterung der Operation des Vektorregisters 101-0 von Fig. 1 gezeigt.
(1) Takt
Der an das Vektorregister 101-0 gelieferte Takt besitzt als Grundlage einen Takt T 01, der, wie in Fig. 3 gezeigt, die gleiche Taktfrequenz wie der Maschinenzyklus besitzt, und ein TSEL-Signal, das um Δ t vor den Zeitpunkten t₀, t₁, . . . , an denen die T 01-Phase einen HOHEN Pegel annimmt, geschaltet wird und dessen Periode zweimal so lang ist wie die Periode der Taktfrequenz. Die Taktphasen T 0, T 0D, T 1, T 01 A, T 01 B, T 1 D und T 1 DD sind Taktzeitsteuerungen, die in der LSI des Vektorregisters 101-0 erzeugt werden. Der Taktzeitsteuerungsgenerator ist in der LSI enthalten, obwohl dies im Vektorregister 101-0 von Fig. 1 nicht gezeigt ist.
In Fig. 4 ist ein Taktzeitsteuerungsgenerator gezeigt, an den die Taktphasen T 01 und TSEL geliefert werden. Die in Fig. 3 gezeigten Taktphasen T 0, T 1, T 01 A, T 01 B, T 0 D, T 1 D und T 1 DD werden durch die in Fig. 4 gezeigte Schaltung erzeugt. Nun wird die genaue Operation dieser Schaltung erläutert.
Die T 01-Taktphase (die im folgenden kurz mit T 01 bezeichnet wird) wird über ein Eingangsverstärkergate 201 an die UND-Gatter 203 und 204 geliefert. Die TSEL-Taktphase (die im folgenden kurz mit TSEL bezeichnet wird), die ein Auswahlsignal für T 01 darstellt, wird über ein Eingangsverstärkergate 202 an das UND-Gatter 203 geliefert, wenn sie der Positiv-Ausgabe entspricht, während sie an das UND-Gatter 204 geliefert wird, wenn sie der Negativ-Ausgabe entspricht. Folglich erzeugen die UND-Gatter 203 und 204 Takte, die einen zeitlichen Abstand besitzen, der zweimal so lang ist wie die Taktfrequenz des Maschinenzyklus; ein internes Verstärkergate 205 erzeugt daraus die T 0-Taktphase (die im folgenden kurz mit T 0 bezeichnet wird), während ein internes Verstärkergate 206 die T 1-Taktphase (die im folgenden kurz mit T 1 bezeichnet wird) erzeugt; diese beiden Taktphasen werden an die Auffangflipflops in der Großintegrationsschaltung (LSI) geliefert. T 0 und T 1 besitzen eine gegenseitige Phasenverschiebung, die gleich einer halben Periode ihres Zyklus ist. Über ein Verstärkergate 207 wird T 01 außerdem an die Auffangflipflops in der LSI geliefert. Die T 01 A-Taktphase (die im folgenden kurz mit T 01 A bezeichnet wird) wird erzeugt, indem das Signal T 0 D; das durch die Verzögerung von T 0 um die Zeit dt₀ mittels einer Verzögerungsschaltung 208 erzeugt wird, mit dem Signal T 1 über ein ODER-Gatter 209 kombiniert wird. T 01 A wird über ein Verstärkergate 210 an die Auffangflipflops in der LSI geliefert. Über ein Verstärkergate 220 wird T 0 D an die Auffangflipflops in der LSI geliefert. Die T 01 B-Taktphase (die im folgenden kurz mit T 01 B bezeichnet wird) wird erzeugt, indem T 01 A um die Zeit dt₁ mittels einer Verzögerungsschaltung 212 verzögert wird; T 01 B wird über ein Verstärkergate 213 an die Auffangflipflops in der LSI geliefert. Die Verzögerungszeiten der Verzögerungschaltungen 208 und 212 sind über externe Anschlußstifte der LSI steuerbar, obwohl diese nicht gezeigt sind. Die Verzögerungszeiten dt₀ und dt₁ werden über die Eingangsverstärkergates 211 und 214 von einem T 0-Ver­ zögerungssteueranschlußstift bzw. von einem T 01 B-Verzöge­ rungssteueranschlußstift gesteuert. Die T 1 D-Taktphase (die im folgenden kurz mit T 1 D bezeichnet wird) wird dadurch erzeugt, daß T 1 um die Zeit dt₀ mittels einer Verzögerungsschaltung 215 verzögert wird; T 1 D wird über ein Verstärkergate 216 an die Auffangflipflops in der LSI geliefert. Die T 1 DD-Taktphase (die im folgenden kurz mit T 1 DD bezeichnet wird) wird dadurch erzeugt, daß T 1 D um die Zeit dt₁ mittels der Verzögerungsschaltung 218 verzögert wird; T 1 DD wird über ein Verstärkergate 219 an die Auffangflipflops der LSI geliefert. Die Verzögerungszeit der Verzögerungsschaltung 215 ist steuerbar, obwohl dies nicht gezeigt ist. Insbesondere ist die Verzögerungszeit dt₀ von einem T 1-Verzögerungssteue­ rungsanschlußstift über ein Eingangsverstärkergate 217 steuerbar. Die Verzögerungszeit dt₁ muß gleich einer Zeit gesetzt werden, die den Lesepitch des Hochgeschwindigkeits-RAMs erfüllt. Andererseits muß die Verzögerungszeit dt₀ so festgesetzt werden, daß die Summe der Taktfrequenz des Maschinenzyklus t c und der Verzögerungszeit dt₀, also t c + dt₀, den Schreibpitch des RAMs erfüllt. Wie in Fig. 3 gezeigt, ist die Taktfrequenz des Maschinenzyklus, der durch die Zeitdifferenz t₁-t₀ definiert ist, durch dt₀ + dt₁ gegeben.
(2) Pitch-Steuerschaltungen 124 a, 124 b und 124 c
Die Pitch-Steuerschaltung 124 a weist ein Auffangflipflop PIKOEA 124 a -0, das vom Takt T 0 getrieben wird, ein Auffangflipflop PIKOLA 124 a -1, das vom Takt T 1D getrieben wird, und ein E-ODER-Gatter 124 a -2, das die Ausgaben der beiden Auffangflipflops einer exclusiven ODER-Verknüpfung unterzieht, auf. Die Ausgabe des E-ODER-Gatters 124 a -2 wird als Pitchsignal 124 a -3 verwendet. Im Betrieb erzeugt bei Zuführung des PIKOA-Signals 139 a an das Auffangflipflop PIKOEA 124 a -0 ein mit dem T 0-Takt synchronisiertes Signal, das einen Zyklus besitzt, der zweimal so lang ist wie der Maschinenzyklus. Dieses Signal und ein dazu eine Zeitdifferenz von t c + dt₀ aufweisendes Signal vom Auffangflipflop PIKOLA 124 a -1 werden durch das E-ODER-Gatter 124 a -2 einer exclusiven ODER-Verknüpfung unterzogen, so daß das in Fig. 2 gezeigte Signal EOR 124 a -3 erzeugt wird.
Die Pitch-Steuerschaltung 124 b weist ein Auffangflipflop PIKOEB 124 b -0, das vom Takt T 1 getrieben wird, ein Auffangflipflop PIKOLB 124 b -1, das vom Takt T 0D getrieben wird, und ein E-ODER-Gatter 124 b -2, das die Ausgaben der beiden Auffangflipflops einer exclusiven ODER-Verknüpfung unterzieht, auf. Die Ausgabe des E-ODER-Gatters 124 b -2 wird als Pitchsignal 124 b -3 verwendet. Im Betrieb erzeugt bei Zuführung des PIKOB-Signals 139 b das Auffangflipflop PIKOEB 124 b -0 ein mit dem Takt T 1 synchronisiertes Signal, das einen Zyklus besitzt, der zweimal so lang ist wie der Maschinenzyklus. Dieses Signal und ein dazu einen vom Auffangflipflop PIKOLB 124 b -1 erzeugten Zeitunterschied von t c + dt₀ aufweisendes Signal werden durch das E-ODER-Gatter 124 b -2 einer exclusiven ODER-Verknüpfung unterzogen, so daß das in Fig. 2 gezeigte Signal EOR 124 b -3 erzeugt wird.
Die Pitch-Steuerschaltung 124 c weist ein Auffangflipflop PIKOEC 124 c -0, das vom Takt T 0 getrieben wird, ein Auf­ fangflipflop PIKOLC 124 c -1, das vom Takt T 1 getrieben wird und ein E-ODER-Gatter 124c -2, das die Ausgaben dieser beiden Auffangflipflops einer exclusiven ODER-Verknüpfung unterzieht, auf. Die Ausgabe des E-ODER-Gatters 124 c -2 wird als Pitchsignal 124 c -3 verwendet. Im Betrieb erzeugt bei Zuführung des PIKOA-Signals 139 a das Auffangflipflop PIKOLC 124 c -1 ein mit dem Takt T 0 synchronisiertes Signal, das einen Zyklus besitzt, der zweimal so lang ist wie der Maschinenzyklus. Dieses Signal und ein dazu einen durch das Auffangflipflop PIKOLC 124 c -1 erzeugten Zeitunterschied von t c aufweisendes Signal werden durch das E-ODER-Gatter 124 c -2 einer exclusiven ODER-Verknüpfung unterzogen, so daß das in Fig. 2 gezeigte Signal EOR 124 c -3 erzeugt wird.
(3) Schreibadressenzähler (WA-Zähler) 118
Der die Schreibadresse des RAM erzeugende WA-Zähler 118 weist ein Auffangflipflop WINC 118-0, das vom Takt T 0 getrieben wird, eine +1-Inkrementierschaltung 118-1 und ein 6-Bit-Adressenregister WAC 118-2, das vom Takt T 0 getrieben wird, auf. Der WA-Zähler 118 löscht das Adressenregister WAC 118-2, obwohl dies nicht gezeigt ist. Während des Vektorprozessorbetriebes werden die Adreßdaten durch das von der Schreibsteuerschaltung 112 gelieferte Schreibsteuersignal 113, etwa das in Fig. 2 gezeigte Signal WINC 118-0, hochgezählt, im Adressenregister WAC 118-2 gesetzt und als WA-Zähler-Adreßdaten 118-3 verwendet.
(4) Leseadressenzähler (RA-Zähler) 119
Der die Leseadressen des RAM erzeugende RA-Zähler 119 weist ein Auffangflipflop RINC 119-0, das vom Takt T 1 getrieben wird, eine +1-Inkrementierschaltung 119-1 und ein 6-Bit-Adressenregister RAC 119-2, das vom Takt T 1 getrieben wird, auf. Der RA-Zähler 119 löscht das Adressenregister RAC 119-2, obwohl dies nicht gezeigt ist. Während des Vektorprozessorbetriebes werden die Adreßdaten durch das von der Lesesteuerschaltung 115 gelieferte Lesesteuersignal 116, etwa das in Fig. 2 gezeigte Signal RINC 119-0, hochgezählt, im Adressenregister RAC 119-2 gesetzt und als RA-Zähler- Adreßdaten 119-3 ausgegeben.
(5) Selektor 120
Der die Adreßdaten der A-RAM-Bank 122 wählende Selektor 120 wählt die WA-Zähler-Adreßdaten 118-3, wenn das PITCH-Signal EOR 124 a -3 "0" ist, während er die RA-Zähler-Adreßdaten 119-3 wählt, wenn das PITCH-Signal EOR 124 a -3 "1" ist, wie in Fig. 2 gezeigt. Ferner wird die Ausgabe des Selektors 120 an das 6-Bit-A-Bank-Adressenregister AAD 126, das vom Takt T 01A getrieben wird, und als A-RAM-Bank-Adreßdatensignal 126-0 an die A-RAM-Bank 122 geliefert.
(6) Selektor 121
Der die Adreßdaten der B-RAM-Bank 123 auswählende Selektor 121 wählt die WA-Zähler-Adreßdaten 118-3, wenn das PITCH-Signal EOR 124 b -3 "0" ist, während er die RA-Zähler-Adreßdaten 119-3 wählt, wenn das PITCH-Signal EOR 124 b -3 "1" ist, wie in Fig. 2 gezeigt. Ferner wird die Ausgabe des Selektors 121 an das 6-Bit-B-Bank-Adressenregister BAD 127, das vom Takt T 01B getrieben wird, und als B-RAM-Bank-Adreßdatensignal 127-0 an die B-RAM-Bank 123 geliefert.
(7) Schreibdaten
Die Schreibdaten werden über den Schreibdatenbus 104 geliefert und dem Register WDATA 128, das vom Takt T 01 getrieben wird, zugeführt. Ferner wird das Ausgangssignal des Registers WDATA 128 über das Phasenumwandlungsdatenregister WDATAA 124 a für die A-RAM-Bank 122, das vom Takt T 1 getrieben wird, und über den Dateneingabebus (DI-Bus) 128a -0 an die A-RAM-Bank 122 geliefert. Außerdem wird das Ausgangssignal des Registers WDATA 128 über das Phasenumwandlungsdatenregister WDATAB 128 b für die B-RAM-Bank 123, das vom Takt T 0 getrieben wird, und über den Dateneingabebus (DI-Bus) 128b -0 an die B-RAM-Bank 123 geliefert.
(8) Schreibfreigabesteuerschaltung (WE-Steuerschaltung)
Für jedes Vektorregister 101 ist eine WE-Steuerschaltung vorgesehen, die so gesteuert wird, daß die Vektorregister 101 von der Schreibsteuerschaltung 112 durch ein Kommando parallel betrieben werden. Die WE-Steuerschaltung weist ein Auffangflipflop WEF 129, das vom TaktT 0 getrieben wird, ein Auffangflipflop WES 130, das vom Takt T 1 getrieben wird, einen Selektor 131, einen Selektor 132, ein Schreibmodus- Auffangflipflop WTMDA 133 der A-RAM-Bank 122, das vom Takt T 01A getrieben wird, ein Schreibmodus-Auffangflipflop WTMDB 134, das vom Takt T 01B getrieben wird, einen Schreibimpuls­ generator 135 a, der den Anstieg des Taktes T 1D so verzögert, daß die Schreibrüstzeit des RAMs mit der Impulsbreite des T 1D-Taktes überlappt, um die Impulsbreite der A-RAM-Bank- Schreibfreigabe und der Schreibhaltezeit zu erzeugen, einen Schreibimpulsgenerator 135 b, der den Anstieg des Taktes T 0 verzögert, um die B-RAM-Bank-Schreibfreigabe zu erzeugen, und UND-Gatter 136 und 137, die jeweils die entsprechenden Schreibmodi und jeden der Ausgangsimpulse des entsprechenden Schreibimpulsgenerators 135a bzw. 135 b einer UND-Verknüpfung unterziehen, auf. Während des Vektorprozessorbetriebes wählt der Selektor 131 die Ausgabe des Auffangflipflops WEF 129, wenn das PITCH-Signal 124 a -3 "0" ist, während der Selektor 132 die Ausgabe des Auffangflipflops WES 130 wählt, wenn das PITCH-Signal 124 b -3 "0" ist, wie in Fig. 2 gezeigt. Während des Betriebs dient das zum Halten der geradzahligen Elemente der Vektordaten erzeugte Schreibsteuersignal 113-0 zur Steuerung des WE-Signals 136 a, das an die A-RAM-Bank 122 geliefert wird. Ferner dient das zum Halten der ungeradzahligen Elemente der Vektordaten erzeugte Schreibsteuersignal 113-1 zur Steuerung des WE-Signals 136 b, das zur B-RAM-Bank 123 geliefert wird.
(9) Lesedaten
Während des Vektorprozessorbetriebs liefert die A-RAM-Bank 122 die Datenausgabe 122-0 der A-RAM-Bank 122 an das Datenregister RDATAA 138 a, das vom Takt T 1 getrieben wird, wenn das A-Bank-Adressenregister AAD 126 die Leseadreßdaten enthält. Die Datenausgabe 122-0 wird vorübergehend gehalten und dann an das Phasenumwandlungsdatenregister RDATA 138, das vom Takt T 01 getrieben wird, geliefert. Wenn das B-Bank- Adressenregister BAD 127 die Leseadreßdaten enthält, wird die Datenausgabe 123-0 der B-RAM-Bank 123 vorübergehend im Datenregister TDATAA 138 b, das vom Takt T 1DD getrieben wird, gespeichert, anschließend wird die Ausgabe dieses Datenregisters an das Phasenumwandlungsdatenregister RDATA 138, das vom Takt T 01 getrieben wird, geliefert. Wenn sich das Banken-RAM im Lesebetrieb befindet, empfängt der Selektor 125 das Ausgangssignal EOR 124 c -3 der Pitch-Steuerschaltung 124 c, um die Ausgabe des entsprechenden Datenregisters 138 a oder 138 b auszuwählen. Die Ausgabedaten des Phasenumwand­ lungsdatenregisters RDATA 138 werden an den Vektorregisterlesedatenbus 105 geliefert.
(10) RAM-Register
Zwei Ultrahochgeschwindigkeits-RAMs, die jeweils eines der Vektorregister 101 bilden, sind so angeordnet, daß sie bei gleichen Adreßdaten dasselbe Vektordatenelement darstellen. Die A-RAM-Bank 122, die die geradzahligen Elemente sämtlicher Vektordaten hält, wird durch die Ausgabe 126-0 des A-Bank-Adressenregisters AAD 126 adressiert. Die B-RAM-Bank 123, die sämtliche ungeradzahligen Elemente der Vektordaten hält, wird durch die Ausgabe 123-0 des B-Bank-Adressenregisters BAD 127 adressiert.
Nun wird mit Bezug auf Fig. 2 das Gesamtkonzept des Betriebs des in Fig. 1 gezeigten Vektorregisters 101 erklärt. In Fig. 2 ist die Verkettungsverarbeitung erläutert, durch die das Schreiben und das Lesen der Vektordaten parallel ausgeführt wird. Es wird angenommen, daß die Zahl der Vektorelemente 4 beträgt und daß diese mit e₀, e₁, e₂ und e₃ bezeichnet werden.
Zum Schreibzeitpunkt t₀ wird ein Löschsignal W₀ vom WA-Zähler 118 an das Auffangflipflop WINC 118-0 des WA-Zählers 118 ausgegeben. Da das Löschsignal W₀ durch den Selektor 120 gewählt wird, während das Pitchsignal EOR 124 a -3 "0" ist, hat es die Dauer t c + dt₀ und wird an das A-Bank-Adressenregister AAD 126 geliefert; die Ausgabe dieses Registers wird als Adresse AW₀ zwischen dem Zeitpunkt t₁ und dem Zeitpunkt t₂ + dt₀ an die A-RAM-Bank 122 geliefert. Ferner wird das Schreibsignal WT₀ zum Zeitpunkt t₀ an das Auffangflipflop WEF 129 geliefert, damit in die A-RAM-Bank 122 geschrieben werden kann; es wird vom Selektor 131 ausgewählt, wenn EOR 124 a -3 "0" ist. Daher besitzt es die Dauer t c + dt₀ und wird an das Auffangflipflop WTMDA 133 geliefert. Ferner wird durch die Ausgabe des Auffangflipflops WTDMA 133 das Schreibsignal WT₀ zwischen dem Zeitpunkt t₁ und dem Zeitpunkt t₂ + dt₀ bestätigt. Durch das UND-Gatter 136 wird das Schreibsignal WT 0 und der Ausgangsimpuls des Schreibimpulsgenerators 135 a einer UND-Verknüpfung unterzogen, woraufhin das Ergebnis als Schreibfreigabe WE 136 a zwischen dem Zeitpunkt t₁ und dem Zeitpunkt t₂ + dt₀ an die A-RAM-Bank 122 geliefert wird. Ferner werden die Schreibvektordaten e₀ zum Zeitpunkt t₀ an das Register WDATA 128 geliefert, dessen Ausgabe für die Dauer t₁ - t₀ positiv ist. Dann werden die Ausgangsdaten an das Register WDATAA 128 a geliefert, dessen Ausgabe während der Zeitspanne t₃ - t₁ positiv ist. Die Vektordaten e₀, die das erste geradzahlige Element der Vektordaten darstellen, werden während der Zeitperiode zwischen dem Zeitpunkt t₁ und dem Zeitpunkt t₂ + dt₀ in die A-RAM-Bank 122 geschrieben.
Nun wird der Ablauf für die B-RAM-Bank 123 erläutert. Da das Signal W₀ vom Selektor 121 gewählt wird, wenn EOR 124 b -3 "0" ist, besitzt es die Zeitdauer t₂ - t₁ und wird an das B-Bank-Adressenregister BAD 127 geliefert. Die Ausgabe dieses Registers wird als Adresse BW₀ zwischen dem Zeitpunkt t₁ + dt₁ und dem Zeitpunkt t₃ an die B-RAM-Bank 123 geliefert. Ferner wird zum Zeitpunkt t₁ das Schreibsignal WT 1 an das Auffangflipflop WES 130 geliefert, damit in die B-RAM-Bank 123 geschrieben werden kann; es wird vom Selektor 132 ausgewählt, solange EOR 124 b -3 "0" ist. Daher erstreckt sich seine Dauer zwischen den Zeitpunkten t₁ und t₂ + dt₀ und wird an das Auffangflipflop WTMDB 134 geliefert. Das Schreibsignal WT 1, das die Ausgabe des Ausgangsflipflops WTMDB 134 darstellt, ist zwischen dem Zeitpunkt t₁ + dt₁ und dem Zeitpunkt t₃ positiv. Es wird durch das UND-Gatter 137 zusammen mit dem Ausgangsimpuls des Schreibimpulsgenerators 135 b einer UND-Verknüpfung unterzogen. Das Ergebnis wird während der Zeitperiode zwischen dem Zeitpunkt t₁ + dt₁ und dem Zeitpunkt t₃ als Schreibfreigabe WE 137 b an die B-RAM-Bank 123 geliefert. Ferner werden zum Zeitpunkt t₁ die Schreibvektordaten e₁ an das Register WDATA 128 geliefert, dessen Ausgabe für die Dauer t₃ - t₂ positiv ist. Die Ausgangsdaten dieses Registers werden an das Register WDATAB 128 b geliefert, dessen Ausgabe wiederum während der Zeitperiode zwischen dem Zeitpunkt t₁ + dt₁ und dem Zeitpunkt t₃ + dt₁ positiv ist. Folglich werden die Vektordaten e₁, die das erste ungeradzahlige Element der Vektordaten darstellen, während der Periode zwischen den Zeitpunkten t₁ + dt₁ und t₃ in die B-RAM-Bank 123 geschrieben. Genauso werden für die Schreibvektordaten e₂ und e₃ die Aufwärtszählsignale W₁ und W₂ des WA-Zählers 118 an das Auffangflipflop des WINC 118-0 des WA-Zählers 118 als Adressen AW₁ und AW₂ der A-RAM-Bank 122 bzw. als Adresen BW₁ und BW₂ der B-RAM-Bank 123 geliefert. WT₂ und WT₃ sind die Schreibfreigaben zum Schreiben von e₂ und e₃. Dieser Fall kann allgemein beschrieben werden, wenn WT n dem Auffangflipflop WEF 129 (n = 2) bzw. dem Auffangflipflop WES 130 (n = 3) zugeordnet wird und wenn die Zeit zur Eingabe an das Auffangflipflop WES 130 gleich t n-1 gesetzt wird, wobei e n e₂ und e₃ darstellt, wobei WT n WT₂ und WT₃ darstellt und wobei t n den Zeitpunkt darstellt, zu dem e n in das Register WDATA 128 geladen wird.
Andererseits werden die Vektordaten e₀, e₁, e₂ und e₃ gelesen, indem zum Zeitpunkt t₁ ein Löschsignal R₀ des RA-Zählers 119 an das Auffangflipflop RINC 119-0 des RA-Zählers 119 geliefert wird. Da das Löschsignal R₀ vom Selektor 121 gewählt wird, solange EOR 124 b -3 "1" ist, ist es zwischen dem Zeitpunkt t₁ + dt₀ und dem Zeitpunkt t₂ positiv und wird an das A-Bank-Adressenregister AAD 126 geliefert. Die Ausgabe dieses Registers wird als Adresse AR₀ zwischen dem Zeitpunkt t₂ + dt₀ und dem Zeitpunkt t₃ an die A-RAM-Bank geliefert. Wenn das Pitchsignal EOR 124 c -3 "1" ist, wählt der Selektor 125 die Ausgabe des Datenregisters RDATAA 138 a, die von den Ausgabedaten der A-RAM-Bank 122 ge­ bildet wird. Daher werden die der Adresse AR₀ entsprechenden Vektordaten e₀, die in die A-RAM-Bank 122 eingegeben worden waren, zwischen dem Zeitpunkt t₂ + dt₀ und dem Zeitpunkt t₃ ausgegeben. Die Vektordaten e₀ werden an das Phasenumwand­ lungsdatenregister RDATA 138 geliefert, dessen Ausgabe wiederum während der Periode zwischen dem Zeitpunkt t₄ und dem Zeitpunkt t₅ an den Vektorregisterlesedatenbus 105 geliefert wird.
Nun wird der Lesebetrieb für die B-RAM-Bank 123 erläutert. Da das Löschsignal R₀ vom Selektor 121 gewählt wird, solange EOR 124 b -3 "1"ist, ist es während der Periode zwischen dem Zeitpunkt t₂ + dt₀ und dem Zeitpunkt t₃ positiv; die an das B-Bank-Adressenregister BAD 127 gelieferte Ausgabe des Selektors 121 wird als Adresse BR₀ zwischen dem Zeitpunkt t₃ und dem Zeitpunkt t₃ + dt₁ an die B-RAM-Bank 123 geliefert. Wenn das Pitchsignal EOR 124 c -3 "0" ist, wählt der Selektor 125 die Ausgabe des Datenregisters RDATAB 138 b, die die Ausgabedaten der B-RAM-Bank 123 enthält. Daher werden die der Adresse BR₀ entsprechenden Vektordaten e₁, die in die B-RAM-Bank 123 eingegeben worden waren, zwischen dem Zeitpunkt t₃ und dem Zeitpunkt t₃ + dt₁ ausgegeben. Die Vektordaten e₁ werden an das Phasenumwandlungsdatenregister RDATA 138 geliefert, dessen Ausgabe wiederum zwischen dem Zeitpunkt t₅ und dem Zeitpunkt t₆ an den Vektorregisterlesedatenbus 105 geliefert werden. Genauso werden zum Lesen der Vektordaten e₂ und e₃ das Aufwärtszählsignal R₁ des RA-Zählers 119 an das Auffangflipflop RINC 119-0 des RA-Zählers 119 geliefert und als Adresse AR₁ der A-RAM-Bank 122 bzw. als Adresse BR₁ der B-RAM-Bank 123 verwendet. Wie in Fig. 1 gezeigt, werden die Vektordaten e₂ und e₃ über das Datenregister RDATA 138 an den Vektorregisterlesedatenbus 105 geliefert.
Wie oben beschrieben, kann die Pipelinezykluszeit des Gesamtvektorprozessors auch dann gleich der Zeit t c sein, wenn die RAM-Schreibzykluszeit des in Fig. 1 gezeigten Vektorregisters 101-0 auf die Zeitdauer t c + dt₀ und die RAM-Lesezykluszeit auf die Zeitdauer dt₁ festgesetzt wird.
Ferner können Änderungen von Schreib- und Lesepitch des RAMs durch die Änderung der Verzögerungszeiten der in Fig. 4 gezeigten Verzögerungsschaltungen 208, 212 und 215 in guter Anpassung ausgeglichen werden. Genauer kann der Strom in einem Stromschalter des Gatters der Verzögerungsschaltung oder ein Ausgangsemitterfolger so gesteuert werden, daß die Gatterverzögerung um einige 10 Picosekunden geändert wird.
In der obigen, erfindungsgemäßen Ausführungsform können alle Zeitsteuerungstakte in der LSI aus einem Einphasentakt erzeugt werden. Dadurch können Taktverzerrungen verringert werden.

Claims (3)

1. Vektorprozessor mit einem Vektorregister (101), das von RAMs (122, 123) aufgebaut wird, deren Schreibzykluszeit länger ist als deren Lesezykluszeit, und mit einer Pipelineverarbeitungseinheit (106), dadurch gekennzeichnet, daß die Zykluszeit der Pipelineverarbeitungseinheit (106) gleich dem arithmetischen Mittel aus der Schreibzykluszeit in das Vektorregister (101) und der Lesezykluszeit aus dem Vektorregister (101) gesetzt wird.
2. Vektorprozessor gemäß Anspruch 1, dadurch gekennzeichnet, daß das Vektorregister (101) zwei RAM-Banken (122, 123) aufweist, die jeweils unabhängig adressierbar sind.
3. Vektorprozessor gemäß Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Schreibzykluszeit in das Vektorregister (101) und die Lesezykluszeit vom Vektorregister (101) jeweils veränderlich sind.
DE3930313A 1988-09-14 1989-09-11 Vektorprozessor Granted DE3930313A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63228326A JP2941817B2 (ja) 1988-09-14 1988-09-14 ベクトル処理装置

Publications (2)

Publication Number Publication Date
DE3930313A1 true DE3930313A1 (de) 1990-03-15
DE3930313C2 DE3930313C2 (de) 1992-12-24

Family

ID=16874697

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3930313A Granted DE3930313A1 (de) 1988-09-14 1989-09-11 Vektorprozessor

Country Status (3)

Country Link
US (1) US5115393A (de)
JP (1) JP2941817B2 (de)
DE (1) DE3930313A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4021784A1 (de) * 1989-07-10 1991-01-24 Hitachi Ltd Vektorprozessor
DE102011075019A1 (de) 2011-04-29 2012-10-31 BSH Bosch und Siemens Hausgeräte GmbH Filtersperre für einen Staubsauger

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2658397B2 (ja) * 1989-06-13 1997-09-30 日本電気株式会社 マルチプロセッサシステム
US5539891A (en) * 1989-10-13 1996-07-23 Texas Instruments Incorporated Data transfer control circuit with a sequencer circuit and control subcircuits and data control method for successively entering data into a memory
JP3035828B2 (ja) * 1989-12-28 2000-04-24 甲府日本電気株式会社 情報処理装置
US5838984A (en) * 1996-08-19 1998-11-17 Samsung Electronics Co., Ltd. Single-instruction-multiple-data processing using multiple banks of vector registers
KR100522177B1 (ko) * 2000-07-29 2005-10-18 죠지 잉-리앙 후앙 전기 커넥터 및 이를 전기 케이블에 장착하기 위한 방법
KR100476892B1 (ko) * 2002-04-29 2005-03-17 삼성전자주식회사 데이터의 부정조작을 방지하는 방법 및 그것을 이용한데이터 처리 시스템
DE10350281A1 (de) * 2003-10-28 2005-06-16 Infineon Technologies Ag Speicherzugriffsverfahren mit verzögertem Schreibsteuersignal und Datenverarbeitungsvorrichtung
US7797610B1 (en) * 2005-07-19 2010-09-14 Xilinx, Inc. Method and apparatus for virtual quad-port random access memory
US9575755B2 (en) 2012-08-03 2017-02-21 International Business Machines Corporation Vector processing in an active memory device
US9569211B2 (en) 2012-08-03 2017-02-14 International Business Machines Corporation Predication in a vector processor
US9632777B2 (en) 2012-08-03 2017-04-25 International Business Machines Corporation Gather/scatter of multiple data elements with packed loading/storing into/from a register file entry
US9594724B2 (en) * 2012-08-09 2017-03-14 International Business Machines Corporation Vector register file
US9268571B2 (en) 2012-10-18 2016-02-23 Qualcomm Incorporated Selective coupling of an address line to an element bank of a vector register file

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58114274A (ja) * 1981-12-28 1983-07-07 Hitachi Ltd デ−タ処理装置
JPS5977574A (ja) * 1982-10-25 1984-05-04 Hitachi Ltd ベクトル・プロセツサ
US4755931A (en) * 1983-12-26 1988-07-05 Hitachi, Ltd. Vector processing unit capable of reading vector data from a vector register simultaneously to plural resources

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4365294A (en) * 1980-04-10 1982-12-21 Nizdorf Computer Corporation Modular terminal system using a common bus
JPS58220291A (ja) * 1982-06-15 1983-12-21 Nec Corp 信号伝般時間制御回路
US4661900A (en) * 1983-04-25 1987-04-28 Cray Research, Inc. Flexible chaining in vector processor with selective use of vector registers as operand and result registers
JPS60253091A (ja) * 1984-05-30 1985-12-13 Fujitsu Ltd 半導体記憶装置
US4945479A (en) * 1985-07-31 1990-07-31 Unisys Corporation Tightly coupled scientific processing system
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58114274A (ja) * 1981-12-28 1983-07-07 Hitachi Ltd デ−タ処理装置
JPS5977574A (ja) * 1982-10-25 1984-05-04 Hitachi Ltd ベクトル・プロセツサ
US4755931A (en) * 1983-12-26 1988-07-05 Hitachi, Ltd. Vector processing unit capable of reading vector data from a vector register simultaneously to plural resources

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Siemens Forschungs- und Entwicklungsberichte, Bd. 15(1986), Nr. 5, S. 220-224 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4021784A1 (de) * 1989-07-10 1991-01-24 Hitachi Ltd Vektorprozessor
DE102011075019A1 (de) 2011-04-29 2012-10-31 BSH Bosch und Siemens Hausgeräte GmbH Filtersperre für einen Staubsauger

Also Published As

Publication number Publication date
US5115393A (en) 1992-05-19
JP2941817B2 (ja) 1999-08-30
JPH0277882A (ja) 1990-03-16
DE3930313C2 (de) 1992-12-24

Similar Documents

Publication Publication Date Title
DE2819571C2 (de)
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2703578C2 (de) Videodatenspeicher
DE3137292C2 (de) FIFO-Speicher und diesen verwendende Verarbeitungseinheit
DE69838852T2 (de) Verfahren und vorrichtung zur kopplung von signalen zwischen zwei schaltungen, in verschiedenen taktbereichen arbeitend
DE3930313C2 (de)
DE3303488C2 (de) Digitales Signalverarbeitungssystem
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE2953861C2 (de)
DE2855673C2 (de)
DE2360762A1 (de) Elementarschaltungsanordnung fuer schaltwerke zur durchfuehrung von datenverarbeitungsoperationen
DE4019135A1 (de) Serieller speicher auf ram-basis mit parallelem voraus-lesen
DE3400723C2 (de)
DE2750344C2 (de) Logikschaltung zum Betätigen irgendeiner Teilmenge einer Mehrzahl von Vorrichtungen
DE3827500A1 (de) Vektorprozessor
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
DE3447530C2 (de)
DE3314139C2 (de)
DE3214230A1 (de) Speicheranordnung mit mehrfach-zugriffsleitungen
DE2136210A1 (de) Zentraleinheit fur eine EDV-Anlage
DE60221515T2 (de) Speichersystem für schleifenbeschleunigung nach wunsch
EP0213584B1 (de) Schaltungsanordnung mit einer matrixförmigen Speicheranordnung zur variabel einstellbaren Verzögerung digitaler Signale
DE3923872A1 (de) Schaltungsanordnung zum steuern des zugriffs auf einen speicher
DE69910172T2 (de) Schaltkreis mit pseudo-mehrport-speicher
DE1957600C3 (de)

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