JPH0477347B2 - - Google Patents

Info

Publication number
JPH0477347B2
JPH0477347B2 JP62219152A JP21915287A JPH0477347B2 JP H0477347 B2 JPH0477347 B2 JP H0477347B2 JP 62219152 A JP62219152 A JP 62219152A JP 21915287 A JP21915287 A JP 21915287A JP H0477347 B2 JPH0477347 B2 JP H0477347B2
Authority
JP
Japan
Prior art keywords
memory
vector
register
data
pipeline
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP62219152A
Other languages
English (en)
Other versions
JPS6462764A (en
Inventor
Akira Maeda
Masahiko Yoshimura
Satoshi Hashimoto
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
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 Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP62219152A priority Critical patent/JPS6462764A/ja
Priority to US07/175,292 priority patent/US4967350A/en
Priority to EP88106314A priority patent/EP0305639B1/en
Priority to DE3854142T priority patent/DE3854142T2/de
Publication of JPS6462764A publication Critical patent/JPS6462764A/ja
Publication of JPH0477347B2 publication Critical patent/JPH0477347B2/ja
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/8061Details on data memory access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、パイプライン方式によるベクトル処
理を基本とするベクトル計算機に関する。
(従来の技術) メモリ上に規則的に配置されたベクトルデータ
に対し、同一演算を繰返し実行させる演算をベク
トル演算と呼ぶ。Fortranを例にとると、第5図
aに示すように、ベクトルA,B,CにおけるB
とCをオペランドとして演算を行ない、その結果
をデイステイネーシヨンAに代入し、これをDO
ループによつて添字Iを順次変化させながら繰返
し行なうような演算がベクトル演算である。
ベクトル演算の高速化の手法としてパイプライ
ン方式が知られている。このパイプライン方式に
よれば、第5図aの演算は、同図bのように行わ
れる。なお、この図は、パイプラインの段数をn
=3に設定した場合の例を示している。先ず、サ
イクル1でB(1),C(1)でリード要求を出し
てオペランドを参照し、演算を開始する。次のサ
イクル2では、サイクル1で始まつた演算の結果
を待たずにB(2),C(2)を参照し演算を始め
る。サイクル3では、サイクル1で開始された演
算の結果A(1)が求まるので、この結果を書込
むと同時にB(3),C(3)の参照を行ない演算
を始める。以後、同時にサイクルi+2ではサイ
クルiから開始された演算の結果のA(i)が求
まると同時にB(i+2),C(i+2)による演
算を始める。
このように、繰返しによる演算を一つの演算の
結果を待たずに連続的に処理することをベクトル
化するという。このベクトル化によれば、上記の
例のように演算に2サイクルを要する場合でも、
最初の演算結果A(1)が求まるまでに2サイク
ルの遅れはあるものの、それ以後は演算結果が毎
サイクル求まるという利点がある。
また、例えば第6図aに示すように、オペラン
ド(A(I))とデイステイネーシヨン(A(I+
3))のベクトルが同じである回帰的データ参照
の場合も、デイステイネーシヨンのベクトルAの
添字とオペランドのベクトルAの添字の差(3)
がパイプラインの段数n(=3)以上であれば、
第6図(b)に示すように、サイクル1で開始さ
れたA(1)+C(1)なる演算の閣下A(4)がサ
イクル3で終了するので、サイクル4ではA
(4),C(4)を参照可能である。したがつて、
この演算はベクトル化するとができる。
しかしながら、このような回帰的データ参照に
おいて、例えば第7図aに示すように、デイステ
イネーシヨンのベクトルAの添字とオペランドの
ベクトルAの添字との差(1)がパイプラインの
段数n(=3)未満であると、サイクル1で開始
されたA(1)+C(1)の演算結果A(2)がサイ
クル2では未だ求まつていないため、A(2),C
(2)の参照はこの演算が終了するサイクル4で
はないと行なえない。従つて、この場合には演算
をベクトル化するとはできない。
このように、パイプライン方式を採用していて
も、デイステイネーシヨンとオペランドのベクト
ルの添字の差がパイプラインの段数n未満のとき
には、ベクトル化は不可能である。
そこで、回帰的データ参照が起こる場合には、
コンパイラに予めパイプラインの段数nを覚えさ
せておき、コンパイル時に上記添字の差がパイプ
ライン段数nより大きいかどうかを判定し、この
判定結果に応じてベクトル化するかどうかを決定
することも考えられる。しかし、この場合にはパ
イプライン段数を増やした場合、コンパイラを新
しいパイプライン段数に合せて作り直さなければ
ならない。また、同一アーキテクチヤの計算機
で、パイプラインの段数だけが違つている場合に
は、各計算機毎にその計算機のパイプライン段数
に合わせたコンパイラを用意しなければならずコ
ンパイラの作成が非常に面倒になるという問題が
あつた。
また、第8図に示すように、デイステイネーシ
ヨンの添字に変数kが含まれている場合、この変
数kはコンパイル時には定まらず、実行時に定ま
るため、たとえ実行時にk≦nとなつてもベクト
ル化することは可能となる。
更に、第9図aのようなサブルーチンでは文番
号10のデイステイネーシヨンとオペランドとが表
面上は同一でないが、サブルーチンの呼び元で第
9図(b)に示すように第1引数と第3引数とを
同一の引数として呼出すと、上記と同様の回帰的
データ参照の問題が生じる。この場合、上記第1
引数と第2引数とに同一の変数を割当てない等の
制限を付して上記の問題を回避することも考えら
れるが、このようにすると、サブルーチンの汎用
性という特長が損われ、プログラムの移植性が低
下する。
以上のことから、従来のベクトル計算機では、
回帰的データ参照が行われる可能性のある演算に
ついてはベクトル化を断念している。このため、
ベクトル化した場合に比べて演算速度が数十倍も
遅くなるという問題があつた。
(発明が解決しようとする問題点) このように、従来のベクトル計算機では、回帰
的データ参照が起こる場合にベクトル化を行なわ
ないようにしているため、演算の実行速度を高め
ることができないという問題があつた。
本発明は、かかる問題点を解決すべくなされた
もので、その目的とするところは、回帰的データ
参照が生じる演算についてもベクトル化できる部
分は、全てベクトル化することができ、もつて演
算速度を大幅に高めることができるベクトル計算
機を提供することにある。
[発明の構成] (問題点を解決するための手段) 本発明は、ベクトルデータを格納したメモリか
ら演算処理部が順次ベクトルデータを読み出して
パイプライン方式によるベクトル演算処理を行な
うベクトル計算機において、次の手段を備えたこ
とを特徴としている。
即ち、本発明は、パイプラインの各ステージに
保持されている演算処理中のデータの書込みアド
レスを前記パイプラインの各ステージに対応させ
て格納するレジスタフアイルと、前記パイプライ
ンから順次出力される演算結果を前記レジスタフ
アイルから順次読出した前記書込みアドレスで指
定される前記メモリの記憶場所に格納する手段
と、前記演算処理部が前記メモリから前記ベクト
ルデータを読出す際に、その読出しアドレスが前
記レジスタフアイル内に格納されている場合には
前記メモリからの読出しを待たせる手段とを具備
している。
(作用) 本発明では、パイプラインの各ステージに格納
されたデータと対応させて該データの書込みアド
レスをレジスタフアイルに格納するようにしてい
るので、レジスタフアイルに格納されたアドレス
を参照すれば、そのアドレスに書込まれるべきデ
ータが現在演算処理中であることが分る。そこ
で、演算処理部がメモリからベクトルデータを読
出そうとしたとき、その読出しアドレスとレジス
タフアイルの内容とを比較して、上記読出しアド
レスがレジスタフアイルに格納されている場合に
は、メモリの読出しを待たせるようにしている。
従つて、演算処理部は、このような待機指示がな
されない限り、メモリからベクトルデータを順次
読み出し、パイプラインに乗せることができるた
め、ベクトル化できる部分は全てベクトル化され
ることになる。
このように、本発明によれば、回帰的データ参
照が起こる場合でも、メモリに対する読み出し禁
止指令が出ない限り、ベクトル化可能なものとし
て処理を進めるので、ベクトル化できる部分は全
てベクトル化されベクトル演算を大幅にスピード
アツプすることができる。
(実施例) 以下、図面に示した実施例に基づいて本発明の
詳細を説明する。
第2図は本発明の一実施例に係るベクトル計算
機の概略構成を示す図である。
ベクトル計算機は、ベクトルデータを格納する
メモリ11と、このメモリ11からベクトルデー
タを順次読み出して、パイプライン方式に基づく
ベクトル処理を行ない、その演算結果をメモリ1
1に格納する演算処理部12と、この演算処理部
12がメモリ11からデータを読み出すのを許可
するためのメモリライトコントローラ13とで構
成されている。
上記メモリライトコントローラ13は、具体的
には、第1図に示すように構成されている。
即ち、書込みアドレス格納レジスタ(以下、
「WAレジスタ」と呼ぶ)21〜25は、演算処
理部12からアドレスバスADを介して与えられ
る書込みアドレスWAを順次格納し、格納した順
に出力するFIFO(First in First out)メモリを
構成するもので、この段数は演算処理部13にお
けるパイプラインの段数nに対応している。ここ
では、パイプラインの段数n=5であると想定し
ている。このWAレジスタ21〜25には、現在
パイプラインのステージにある演算途中のデータ
の書込みアドレスWAが格納される。これらWA
レジスタ21〜25に対応して状態レジスタ31
〜35が設けられている。この状態レジスタ31
〜35は、1ビツトのレジスタで、WAレジスタ
21〜25内のデータが有効である場合には
“1”、無効である場合には、“0”を格納する。
各WAレジスタ21〜25の間には、セレクタ4
1〜44が配置されている。このセレクタ41〜
44は、書込みアドレスWAとWAレジスタ21
〜25の値とのいずれか一方を選択するセレクタ
で、状態レジスタ31〜35の値が“1”の場合
にはWAレジスタ21〜25の値、状態レジスタ
31〜35の値が“1”の場合には書込みアドレ
スWAを選択するものとなつている。
一方、演算処理部12からアドレスバスADを
介して与えられる読出しアドレスRAは読出しア
ドレス格納レジスタ(以下、「RAレジスタ」と
呼ぶ)45に格納される。このRAレジスタ45
の格納値と各WAレジスタ21〜25の格納値と
は比較器51〜55でそれぞれ比較される。比較
器51〜55は、両入力値が一致したときに
“1”を出力する。これら比較器51〜55の出
力と、状態レジスタ31〜35の出力とは、それ
ぞれANDゲート61〜65に入力されている。
従つて、ANDゲート61〜65は、状態レジス
タ31〜35が“1”、つまり有効なWAレジス
タ21〜25の内容が、RAレジスタの内容と一
致したときに“1”を出力する。ANDゲート6
1〜65の出力は、オアゲート71に入力されて
いる。オアゲート71は、いずれか一つのAND
ゲート61〜65の出力が“1”のときにメモリ
のリード禁止信号RIを出力する。
なお、図中75は、メモリライトコントローラ
13の全体の制御を司る制御部であり、演算処理
部12からの演算結果READY信号RR、書込み
アドレスREADY信号WAR及び状態レジスタ3
1〜35の出力に応じてWAレジスタ21〜25
駆動用のクロツク信号CK1〜CK5を出力する。
次に以上のように構成された本実施例に係るベ
クトル計算機の動作について説明する。
まず、初期状態では、状態レジスタ31〜35
の値は全て“0”であり、WAレジスタ21〜2
5の値は全て無効であることを示している。この
結果、セレクタ41〜44は、全て書込みアドレ
スWAを選択する。
この状態で書込みアドレスREADY信号WAR
と書込みアドレスWAが入力されると、制御部7
5は、全ての状態レジスタ31〜35が“0”で
あるから、クロツクCK5を“1”とする、これに
より、書込みアドレスWAはセレクタ44を介し
てWAレジスタ25に格納され、同時に状態レジ
スタ35が“1”にセツトされる。更に書込みア
ドレスREADYが“1”となり、次の書込みアド
レスWAが入力されると、制御部75は、状態レ
ジスタ35が“1”であるからクロツクCK4を
“1”にする。これにより、書込みアドレスWA
がセレクタ43を介してWAレジスタ24に格納
される。同時に状態レジスタ34が“1”にセツ
トされる。このように、書込みREARY信号
WARが“1”になると、書込みアドレスWAは、
順次空いてる最下段のWAレジスタに格納され
る。
次に、パイプライン演算器から演算結果が出力
される場合、即ち、上記WAレジスタ21〜25
内のデータで指定される書込みアドレスでメモリ
11に演算結果を書込む場合について説明する。
演算結果READY信号RRが“1”になると、
制御部75からのクロツク信号CK5が“1”に
なり、最下段のWAレジスタ25から書込みアド
レスWA′が読出される。このアドレスWA′はア
ドレスバスAD′を介してメモリ11のアドレス指
定に供される。これにより、レジスタ25が空に
なるため、制御部75の制御に従つてWAレジス
タ21〜24の内容は、順次下段に送られて格納
される。このとき、例えば、状態レジスタ34,
35が“1”でWAレジスタ24,25に有効な
データ側が存在する場合には、WAレジスタ24
の出力は、状態レジスタ34が“1”であるた
め、セレクタ44を通りWAレジスタ25に移さ
れ、状態レジスタ34は“0”になる。状態レジ
スタ35は“1”のままである。
更に書込みアドレスREADY信号WARと演算
結果READY信号RRとが同時に“1”になつた
場合には、WAレジスタ25のアドレスが取出さ
れると同時に書込みアドレスWAが空いている最
下段のWAレジスタに格納される。例えば、状態
レジスタ34,35が“1”でWAレジスタ2
4,25が有効なデータであつた場合は、WAレ
ジスタ25の内容がメモリ11のアドレスとして
読出され、WAレジスタ25には、WAレジスタ
24の内容が格納され、更にWAレジスタ24に
は書込みアドレスWAが格納される。この動作を
更に詳しく説明すると、状態レジスタ33は
“0”となつているので、セレクタ43は書込み
アドレスWAを選択し、WAレジスタ24に出力
している。状態レジスタ34は“1”になつてい
るので、セレクタ44はWAレジスタ24を選択
し、WAレジスタ25に出力している。このと
き、クロツクCK4,CK5は“1”となり、WA
レジスタ24,25はそれぞれセレクタ43,4
4から送られたアドレスを格納する。状態レジス
タ34,35は“1”のままである。
次に、制御部75の動作について説明する。制
御部75は、WAレジスタ21〜25のクロツク
CKi(i=〜5)及び状態レジスタ31〜35の
値Vi(i=1〜5)を次に示す論理式に従つて制
御している。
CKi=((Vi=0)・(Vi+1=1) ・(RR=〇)・(WAR=1) +(Vi=1)・(Vi−1=0) ・(RR=1)・(WAR=1) +(Vi=1)・(Vi−1=1) ・(RR=1)) Vi=(Vi=1) ・((RR=1)・(WAR=0) ・(Vi+1=1) +(RR=1)・(WAR=1) +(RR=0)・(WAR=1) +(RR=0)・(WAR=0)) +(Vi=0)・(Vi+1=1) ・(RR=0)・(WAR=1) 但し、ここで、Vo=0、V6=1とする。
式中(Vi=0)なる論理式は、Vi=0の時に
真、即ち、“1”となることを示している。この
ような論理演算を実現する回路は汎用ロジツク
ICによつて容易に実現できるので、ここではそ
の具体的構成については示さない。又、段数をパ
イプラインの段数に適合させるための構成の変更
は極めて容易である。
このように、5段のWAレジスタ21〜25
は、FIFOとしての動作を行なう。
次に、データの読み出し時において、読出しア
ドレスRAはRAレジスタ45に格納される。こ
のRAレジスタ45に格納されたアドレスと、各
WAレジスタ21〜25の内容とは比較器51〜
55においてそれぞれ比較され、もし1つでも一
致しているものがあれば、そのWAレジスタの値
が有効でない場合(状態レジスタの値Vi=0の
場合)を除き、ANDゲート61〜65及び及び
オアゲート71を介してリード禁止信号RIが出
力される。このリード信号RIが演算処理部12
に入力されると、演算処理部12はメモリ11か
らの次のベクトルデータの読出し待ち状態にな
る。これは、WAレジスタ21〜25に格納され
ている書込みアドレスに書込まれるべきデータが
現在演算中であるため、その値が未だメモリ11
内に格納されていないためである。
次に、このようなベクトル計算機で、例えば第
3図に示すような回帰的データ参照を行なうDO
ループを実行した場合について考える。この
Fortranプログラムは、文番号10のデイステイネ
ーシヨンの添字とオペランドの添字との差“3”
が、このベクトル計算機の段数“5”よりも少な
いので、従来はベクトル化することができなかつ
た。しかしながら、この装置においては、第4図
に示すようなベクトル化が可能である。
即ち、第1サイクルでは演算処理部12は、 A(4)=A(1)+B(1) を実行するためにA(1)とB(1)のリード要
求を出し、メモリ11の読出しを行なつて良いか
どうかを調べる。これは、第1図に示すRAレジ
スタ45にデータA(1)をセツトし、WAレジ
スタ21〜25との比較を比較器51〜55で行
なうことにより行われる。なお、第1図の構成で
は、A(I)の一系統の読出しアドレスしか調べ
ることができないが、実際にはB(I)の系統を
調べるためのRAレジスタや比較器が並列に設け
られている。第1サイクルでは、書込みアドレス
として有効なデータがなく、リード禁止信号RI
は“0”となる。RIが“0”である場合には読
出すデータは確定しているので、リード信号RD
が“1”となつてメモリ11からA(1),B(1)
が読み出され、演算が開始される。そして、パイ
プラインの4ステージ先に求まる演算結果をA
(4)に格納するため、A(4)のアドレスが
FIFO部に格納される。
第2サイクル、第3サイクルでは、第1サイク
ルと同じように読出しデータA(2),A(3),B
(2),B(3)が確定しているので、RIが“1”
となり、演算が開始され、A(5),A(6)の書
込みアドレスがFIFO部に格納される。したがつ
て、第3サイクルでは、FIFO部にA(4),A
(5),A(6)の書込みアドレスが順に格納され
ることになる。
次に、第4サイクルでは、演算処理部12はA
(4),B(4)のメモリリード要求を出すが。
FIFO部のWAレジスタ23にA(4)が格納され
ているので、比較器53が“1”になり、リード
禁止信号RIが“1”になる。これにより、演算
処理部12は、データA(4)が未だ確定してい
ないことが分かり、リード信号RDが“0”にな
つてメモリ11からA(4)を読出すのを待つ。
第5サイクルでは、第1サイクルで起動した演
算A(1)+B(1)が終了し、ライト信号WDが
“1”なつて演算結果がA(4)に書込まれる。こ
のサイクルでもA(4)がまだFIFO部に残つてい
るので、リード禁止信号が“1”になり、読出し
待機状態が維持される。
第6サイクルでは、第2サイクル目で起動した
A(2)+B(2)の演算結果を書込むサイクルで
ある。このサイクルでは、A(4)が既にFIFO部
から排出されているので、リード禁止信号RIは
“0”になり、A(4)の読出しが行われる。これ
により、A(7)=A(4)+B(4)の命令が起動
され、A(7)の書込みアドレスWAが新たに
FIFO部に格納される。
第7サイクルでは、第6サイクルと同様の動作
を行なう。
このように、本実施例に係るベクトル計算機に
よれば、A(4)の読出しが2サイクル待たされ
る他は、全てベクトル化でき、効率良い演算を行
なうことができる。そして、このベクトル計算機
によれば、回帰的な参照関係が生ずる演算におい
ても、ベクトル化可能であるかどうかに拘りなく
ベクトル演算を実行できる。
なお、本発明は、上記実施例に限定されるもの
ではない。例えばWAレジスタの段数やレジスタ
及び比較器の系統数等は適宜変更可能である。そ
の他本発明は、その要旨を逸脱しない範囲で種々
変更して実施可能である。
[発明の効果] 以上のように、本発明似寄れば、パイプライン
方式に基づくベクトル処理を行なうベクトル計算
機において、回帰的な参照関係にあるベクトル演
算でも、ベクトル化できる部分は全てベクトル的
に処理することができるので、ベクトル計算を極
めて高速に行なうことができる。
【図面の簡単な説明】
第2図は本発明に一実施例に係るベクトル計算
機の要部の構成を示すブロツク図、第2図は同ベ
クトル計算機の全体的な構成を示すブロツク図、
第3図は回帰的データ参照を行なうベクトル演算
プログラムの一例を示す図、第4図は同ベクトル
演算を前記ベクトル計算機でパイプライン処理し
た場合のタイムチヤート、第5図乃至第9図は従
来の問題点を説明するための図である。 11……メモリ、12……演算処理部、13…
…メモリライトコントローラ、21〜25……書
込みアドレス格納レジスタ(WRレジスタ)、3
1〜35……状態レジスタ、41〜44……セレ
クタ、45……読出しアドレス格納レジスタ
(RAレジスタ)、51〜55……比較器、61〜
65……ANDゲート、71……ORゲート、75
……制御部。

Claims (1)

    【特許請求の範囲】
  1. 1 ベクトルデータを格納するメモリと、このメ
    モリから順次ベクトルデータを読み出してパイプ
    ライン方式によるベクトル演算処理行ない、その
    演算結果を前記メモリに格納する演算処理部と、
    パイプラインの各ステージに保持されている演算
    処理中のデータの書込みアドレスを前記パイプラ
    インの各ステージに対応させて格納するレジスタ
    フアイルと、前記パイプラインから順次出力され
    る演算結果を前記レジスタフアイルから順次読出
    した前記書込みアドレスで指定される前記メモリ
    の記憶場所に格納する手段と、前記演算処理部が
    前記メモリから前記ベクトルデータを読出す際
    に、その読出しアドレスが前記レジスタフアイル
    内に格納されている場合には前記メモリからの読
    出しを待たせる手段とを具備したことを特徴とす
    るベクトル計算機。
JP62219152A 1987-09-03 1987-09-03 Vector computer Granted JPS6462764A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP62219152A JPS6462764A (en) 1987-09-03 1987-09-03 Vector computer
US07/175,292 US4967350A (en) 1987-09-03 1988-03-30 Pipelined vector processor for executing recursive instructions
EP88106314A EP0305639B1 (en) 1987-09-03 1988-04-20 Vector computer
DE3854142T DE3854142T2 (de) 1987-09-03 1988-04-20 Vektorrechner.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62219152A JPS6462764A (en) 1987-09-03 1987-09-03 Vector computer

Publications (2)

Publication Number Publication Date
JPS6462764A JPS6462764A (en) 1989-03-09
JPH0477347B2 true JPH0477347B2 (ja) 1992-12-08

Family

ID=16731019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62219152A Granted JPS6462764A (en) 1987-09-03 1987-09-03 Vector computer

Country Status (4)

Country Link
US (1) US4967350A (ja)
EP (1) EP0305639B1 (ja)
JP (1) JPS6462764A (ja)
DE (1) DE3854142T2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257394A (en) * 1988-10-18 1993-10-26 Japan Atomic Energy Research Institute Logical expression processing pipeline using pushdown stacks for a vector computer
JPH02109160A (ja) * 1988-10-18 1990-04-20 Japan Atom Energy Res Inst ベクトル計算機用演算装置
JPH0810451B2 (ja) * 1989-03-28 1996-01-31 日本電気株式会社 情報処理装置
EP0475209A3 (en) * 1990-09-14 1993-09-29 Siemens Aktiengesellschaft Arrangement for the determination of instructions modified by the cpu of a processor
US5247696A (en) * 1991-01-17 1993-09-21 Cray Research, Inc. Method for compiling loops having recursive equations by detecting and correcting recurring data points before storing the result to memory
US5623685A (en) * 1994-12-01 1997-04-22 Cray Research, Inc. Vector register validity indication to handle out-of-order element arrival for a vector computer with variable memory latency
US5835747A (en) * 1996-01-26 1998-11-10 Advanced Micro Devices, Inc. Hierarchical scan logic for out-of-order load/store execution control
US5754812A (en) * 1995-10-06 1998-05-19 Advanced Micro Devices, Inc. Out-of-order load/store execution control
US6038657A (en) * 1995-10-06 2000-03-14 Advanced Micro Devices, Inc. Scan chains for out-of-order load/store execution control
US6115756A (en) * 1997-06-27 2000-09-05 Sun Microsystems, Inc. Electro-optically connected multiprocessor and multiring configuration for dynamically allocating time
JP3733842B2 (ja) 2000-07-12 2006-01-11 日本電気株式会社 ベクトルスキャタ命令制御回路及びベクトル型情報処理装置
US8954484B2 (en) * 2009-06-12 2015-02-10 Cray Inc. Inclusive or bit matrix to compare multiple corresponding subfields
US20100115232A1 (en) * 2008-10-31 2010-05-06 Johnson Timothy J Large integer support in vector operations
US8433883B2 (en) 2009-06-11 2013-04-30 Cray Inc. Inclusive “OR” bit matrix compare resolution of vector update conflict masks
US8458685B2 (en) * 2009-06-12 2013-06-04 Cray Inc. Vector atomic memory operation vector update system and method
US8583898B2 (en) * 2009-06-12 2013-11-12 Cray Inc. System and method for managing processor-in-memory (PIM) operations
US8826252B2 (en) * 2009-06-12 2014-09-02 Cray Inc. Using vector atomic memory operation to handle data of different lengths
JP5658556B2 (ja) * 2010-12-24 2015-01-28 富士通株式会社 メモリ制御装置、及びメモリ制御方法
US9021233B2 (en) * 2011-09-28 2015-04-28 Arm Limited Interleaving data accesses issued in response to vector access instructions

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR860001434B1 (ko) * 1980-11-21 1986-09-24 후지쑤 가부시끼가이샤 데이타 처리시 스템
JPS57134774A (en) * 1981-02-13 1982-08-20 Hitachi Ltd Vector operating device
JPS57193842A (en) * 1981-05-22 1982-11-29 Hitachi Ltd Request conflict detecting system
JPS58114274A (ja) * 1981-12-28 1983-07-07 Hitachi Ltd デ−タ処理装置
JPS58181165A (ja) * 1982-04-16 1983-10-22 Hitachi Ltd ベクトル演算プロセツサ
JPS59160267A (ja) * 1983-03-02 1984-09-10 Hitachi Ltd ベクトル処理装置
JPS59176874A (ja) * 1983-03-28 1984-10-06 Hitachi Ltd ベクトル処理装置
JPS60136875A (ja) * 1983-12-26 1985-07-20 Hitachi Ltd ベクトル演算器
US4789925A (en) * 1985-07-31 1988-12-06 Unisys Corporation Vector data logical usage conflict detection
US4734852A (en) * 1985-08-30 1988-03-29 Advanced Micro Devices, Inc. Mechanism for performing data references to storage in parallel with instruction execution on a reduced instruction-set processor

Also Published As

Publication number Publication date
DE3854142D1 (de) 1995-08-17
DE3854142T2 (de) 1995-11-09
JPS6462764A (en) 1989-03-09
EP0305639B1 (en) 1995-07-12
US4967350A (en) 1990-10-30
EP0305639A2 (en) 1989-03-08
EP0305639A3 (en) 1990-02-28

Similar Documents

Publication Publication Date Title
JPH0477347B2 (ja)
US5872987A (en) Massively parallel computer including auxiliary vector processor
US6088783A (en) DPS having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word
JP2966085B2 (ja) 後入れ先出しスタックを備えるマイクロプロセッサ、マイクロプロセッサシステム、及び後入れ先出しスタックの動作方法
US5822606A (en) DSP having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word
JP3983857B2 (ja) ベクトルレジスタの複数バンクを用いた単一命令複数データ処理
US5293500A (en) Parallel processing method and apparatus
US5121502A (en) System for selectively communicating instructions from memory locations simultaneously or from the same memory locations sequentially to plurality of processing
US5083267A (en) Horizontal computer having register multiconnect for execution of an instruction loop with recurrance
US5276819A (en) Horizontal computer having register multiconnect for operand address generation during execution of iterations of a loop of program code
US4819155A (en) Apparatus for reading to and writing from memory streams of data while concurrently executing a plurality of data processing operations
GB2293671A (en) Reducing delays due to branch instructions
US5036454A (en) Horizontal computer having register multiconnect for execution of a loop with overlapped code
US5438669A (en) Data processor with improved loop handling utilizing improved register allocation
US5226128A (en) Horizontal computer having register multiconnect for execution of a loop with a branch
JP3137117B2 (ja) 高速処理計算機
JPS63253468A (ja) ベクトル処理装置
JPH04336378A (ja) 情報処理装置
JPH01309178A (ja) マルチプロセッサのプロセッサ切換え装置
JPH0412503B2 (ja)
US20030154469A1 (en) Apparatus and method for improved execution of a software pipeline loop procedure in a digital signal processor
JP3182591B2 (ja) マイクロプロセッサ
JPH0512751B2 (ja)
GB2380283A (en) A processing arrangement comprising a special purpose and a general purpose processing unit and means for supplying an instruction to cooperate to these units
US4935849A (en) Chaining and hazard apparatus and method

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term