JPS5977574A - ベクトル・プロセツサ - Google Patents
ベクトル・プロセツサInfo
- Publication number
- JPS5977574A JPS5977574A JP57187828A JP18782882A JPS5977574A JP S5977574 A JPS5977574 A JP S5977574A JP 57187828 A JP57187828 A JP 57187828A JP 18782882 A JP18782882 A JP 18782882A JP S5977574 A JPS5977574 A JP S5977574A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- register
- registers
- write
- 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
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/8092—Array of vector units
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、ベクトル演1.が高速に実行i1能11ベク
トル処理向きディジタル形↑(1子計算槻(以F、ベク
トル・プロセッサと呼ぶ)に係り、詳しくはベクトル・
プロセッサに含まれるペク]・ル・レジスタの構成に関
するものである。
トル処理向きディジタル形↑(1子計算槻(以F、ベク
トル・プロセッサと呼ぶ)に係り、詳しくはベクトル・
プロセッサに含まれるペク]・ル・レジスタの構成に関
するものである。
従来、科学技術計算に頻緊に表われる大型行列計算等の
高速処理を行うベクトル・プロセッサが種々提案されて
いる。その一つに、ベクトル・プロセッサに含まれる複
数個のパイプライン演算器の高速性、並列性が有効に発
揮できるように、演算データの転送能力を向上させるべ
く、ベクトル・レジスタを備えたベクトル・プロセッサ
がある(米国特許4,128,880 )。
高速処理を行うベクトル・プロセッサが種々提案されて
いる。その一つに、ベクトル・プロセッサに含まれる複
数個のパイプライン演算器の高速性、並列性が有効に発
揮できるように、演算データの転送能力を向上させるべ
く、ベクトル・レジスタを備えたベクトル・プロセッサ
がある(米国特許4,128,880 )。
第1図は上記ベクトル・レジスタを備えた″=≠°゛吻
焼ベクトル・プロセッツの 一般的ブロック図である。第1図に於いて、ベクトル・
レジスタ(V It ) Jはベクトルな形成する一連
のエレメント・データを格納することができ、例えば、
各々のベクトル・レジスタは8バイト長のニレメンl−
に64個格納できる。演算に必要なベクトルのエレメン
トは、E1三’ii[2t!よ装[(MS)5よりフェ
ッチ・データl、d 10を辿して順次フェッチされ、
分配回路2を介して、ベクトル命令で指定されたIlf
号のベクトル・レジスタ1へ書込データ線6経由で一担
1(1,込まれる。その後、演算に応じて、適当なベク
トル・レジスタ1より読出f−タ線7経山でエレメント
が順次読出され、選択回路3を介して、演算オペランド
線)3経出で目的の演算器4にオペランドとして入力さ
れる。演算器4より出力された演算結果は、演算結果線
9経山で分配回路2を介し、指定されたベクトル・レジ
スタ■へ四込データ線6経出で順次寝込まれる。演算器
4は浮動小数点加算器、乗算器などの、それぞれ独立し
た演′r1器である。このような演算器4とベクトル・
レジスタ1間のゲータ転送を繰虜返した後で、得られた
最終結果ベクトルは、ベクトル・レジスタlから選択回
路3、書込データ線11を介して主記憶装置5へ順次ス
トアされる。
焼ベクトル・プロセッツの 一般的ブロック図である。第1図に於いて、ベクトル・
レジスタ(V It ) Jはベクトルな形成する一連
のエレメント・データを格納することができ、例えば、
各々のベクトル・レジスタは8バイト長のニレメンl−
に64個格納できる。演算に必要なベクトルのエレメン
トは、E1三’ii[2t!よ装[(MS)5よりフェ
ッチ・データl、d 10を辿して順次フェッチされ、
分配回路2を介して、ベクトル命令で指定されたIlf
号のベクトル・レジスタ1へ書込データ線6経由で一担
1(1,込まれる。その後、演算に応じて、適当なベク
トル・レジスタ1より読出f−タ線7経山でエレメント
が順次読出され、選択回路3を介して、演算オペランド
線)3経出で目的の演算器4にオペランドとして入力さ
れる。演算器4より出力された演算結果は、演算結果線
9経山で分配回路2を介し、指定されたベクトル・レジ
スタ■へ四込データ線6経出で順次寝込まれる。演算器
4は浮動小数点加算器、乗算器などの、それぞれ独立し
た演′r1器である。このような演算器4とベクトル・
レジスタ1間のゲータ転送を繰虜返した後で、得られた
最終結果ベクトルは、ベクトル・レジスタlから選択回
路3、書込データ線11を介して主記憶装置5へ順次ス
トアされる。
次に、ベクトル演、j寥の簡単な例を挙げて、第1図の
ようなベクトル・レジスタを備えるベクトル・プロセッ
サの特徴について考察する。いま、ド01じI’ It
A N文 DO101=i、 L 10、Y・(1)=A(1)十B(i )采(、’(1
)の処理を、ベクトル命令形式に表現すると、1、
Vector Load V R”0” <!=
A2、 Vector Load
V It ”l’、’ ぐ二 旧3、 Vect
or Load V R”2” $ C4、Ve
ctor Multiply V It ”3°’4
=VR”1”l V )じ2″5、 Vector
Add V )L ”4”# V It ”0
”+ V It ”3”(3,Vector 5to
re V IL ”4” +Yのようになる。たyし
、V Itはベクトル・レジスタを表わす。各ベクトル
命令は、演算および1′夕転送をエレメントL個分、繰
り返し実行する。
ようなベクトル・レジスタを備えるベクトル・プロセッ
サの特徴について考察する。いま、ド01じI’ It
A N文 DO101=i、 L 10、Y・(1)=A(1)十B(i )采(、’(1
)の処理を、ベクトル命令形式に表現すると、1、
Vector Load V R”0” <!=
A2、 Vector Load
V It ”l’、’ ぐ二 旧3、 Vect
or Load V R”2” $ C4、Ve
ctor Multiply V It ”3°’4
=VR”1”l V )じ2″5、 Vector
Add V )L ”4”# V It ”0
”+ V It ”3”(3,Vector 5to
re V IL ”4” +Yのようになる。たyし
、V Itはベクトル・レジスタを表わす。各ベクトル
命令は、演算および1′夕転送をエレメントL個分、繰
り返し実行する。
一般的に、ベクトル・レジスタを備えるベクトル・プロ
セッサは、演算の中間結果のヘクトルヲ一時的にベクト
ル・レジスタへ格納し、最終結果ベクトルのみを王d己
憶装置ヘスドアすることで、実質的に主6己憶装置dと
の間のデータ転送回数が減少するため、ベクトル・レジ
スタの舛込み、胱出し動作を高速化し、これに比べ主記
憶装置のアクセス能力を低り+14成しても、m>番に
必要なデータ転送能力を確保する事が可能である。
セッサは、演算の中間結果のヘクトルヲ一時的にベクト
ル・レジスタへ格納し、最終結果ベクトルのみを王d己
憶装置ヘスドアすることで、実質的に主6己憶装置dと
の間のデータ転送回数が減少するため、ベクトル・レジ
スタの舛込み、胱出し動作を高速化し、これに比べ主記
憶装置のアクセス能力を低り+14成しても、m>番に
必要なデータ転送能力を確保する事が可能である。
次に、前述(7た例の第4と5の命令に尉目してみると
、先行命令40乗算結果を格納するV It”3”は、
後続のベクトル加1′1節令5のオペランドを読出スべ
@Vatにもなっている。もしも、第4のベクトル乗算
命令により、L個の結果が全てV It”3”へ14込
れるまで待って、後続のベクトル加Wf、6令5を起l
1fVJするように制御→−れば、複数の演算器の並列
動作を有効に生かせず、処理時間は延びる、このように
、先行するベクトル命令の演算結果、あるいはフェッチ
データを格納するV Itを、後行のベクトル命令が
オペランドとし−(読出ずための待ち合せの関係は、前
述した例の第2または3のベクトル命令と第4のベクト
ル命令の間、第1と第5の間、第5と第6の間にもイj
、在している。
、先行命令40乗算結果を格納するV It”3”は、
後続のベクトル加1′1節令5のオペランドを読出スべ
@Vatにもなっている。もしも、第4のベクトル乗算
命令により、L個の結果が全てV It”3”へ14込
れるまで待って、後続のベクトル加Wf、6令5を起l
1fVJするように制御→−れば、複数の演算器の並列
動作を有効に生かせず、処理時間は延びる、このように
、先行するベクトル命令の演算結果、あるいはフェッチ
データを格納するV Itを、後行のベクトル命令が
オペランドとし−(読出ずための待ち合せの関係は、前
述した例の第2または3のベクトル命令と第4のベクト
ル命令の間、第1と第5の間、第5と第6の間にもイj
、在している。
この待ち合せを解決する方法がチェイニング機能である
。チェイニングとは、主記憶装置dより読出したデータ
、あるいは、先行のベクトル命令で得られる演算結果を
ベクトル・レジスタへ書込むと同時に、即時に後行のベ
クトルii1′i’t’i′のメベランドとして演算器
l\転送1゛るか、あるいは主記憶へ転送することであ
る。これに依り、長唄形のベクトル計算に於いても、複
数の演n器を有効に作動させて演算の並列性を高め、^
速処理を行うことができる。
。チェイニングとは、主記憶装置dより読出したデータ
、あるいは、先行のベクトル命令で得られる演算結果を
ベクトル・レジスタへ書込むと同時に、即時に後行のベ
クトルii1′i’t’i′のメベランドとして演算器
l\転送1゛るか、あるいは主記憶へ転送することであ
る。これに依り、長唄形のベクトル計算に於いても、複
数の演n器を有効に作動させて演算の並列性を高め、^
速処理を行うことができる。
このように、チェイニングをよベクトル節令間に着目し
て、その尚速比を計る方法である。これとは別に、成る
一つのベクトル命令をエレメント単位で分割し、これを
複数の演Jl〜器で並行処j、j14させ、高速化を計
る方法が考えられる。例えば、ベクトル命令をエレメン
ト”l”(Q、2、・・・・−4・・・)と、”l+1
′’(1,3、・・・・・・I +1・・・)に分割し
、この2つのエレメント列をベクトル・レジスタから同
時に読出し、2つの演11−器で並行して処理する。
て、その尚速比を計る方法である。これとは別に、成る
一つのベクトル命令をエレメント単位で分割し、これを
複数の演Jl〜器で並行処j、j14させ、高速化を計
る方法が考えられる。例えば、ベクトル命令をエレメン
ト”l”(Q、2、・・・・−4・・・)と、”l+1
′’(1,3、・・・・・・I +1・・・)に分割し
、この2つのエレメント列をベクトル・レジスタから同
時に読出し、2つの演11−器で並行して処理する。
その後、この2つの演J’E器より得られる結果を同時
にベクトル・レジスタへ湛込むという方法である。ご\
ではエレメントの2分ν?りを考えたが、一般的に11
11^1の演J¥器を並列に動作させれば、ベクトル・
エレメントをn列に分割して処理ずΦ−甲かできる。
にベクトル・レジスタへ湛込むという方法である。ご\
ではエレメントの2分ν?りを考えたが、一般的に11
11^1の演J¥器を並列に動作させれば、ベクトル・
エレメントをn列に分割して処理ずΦ−甲かできる。
以上、エレメント分′削によるa r−i処理も、チェ
イニングにし−こも、要となるのはベクトル・レジスタ
の7□氾出し、−11を込吟ril:力である。3なゎ
ち、エレメント分割による並行処理については、その並
行処理されるエレメ/1・列の数を11″とすると、1
1個のユ[/メントの読出し、k〕るいは田゛込みが1
ザ・fクルで同時に行われなければIIらない。又、チ
ェイニングについては、同一ベクトル・レジスタに対し
、1ザ・1クルで同時に読出し、■ト込みができなけれ
はならない。さらに、当i亥+1個にエレメントを分割
して並行処理をイjうベクトル・プロセッサに、チェイ
ニング機能を持たせる事も可能である。この場合、ベク
トル・レジスタとし゛(1サイクルに2n個の読出し、
書込みのできるものが要求される。
イニングにし−こも、要となるのはベクトル・レジスタ
の7□氾出し、−11を込吟ril:力である。3なゎ
ち、エレメント分割による並行処理については、その並
行処理されるエレメ/1・列の数を11″とすると、1
1個のユ[/メントの読出し、k〕るいは田゛込みが1
ザ・fクルで同時に行われなければIIらない。又、チ
ェイニングについては、同一ベクトル・レジスタに対し
、1ザ・1クルで同時に読出し、■ト込みができなけれ
はならない。さらに、当i亥+1個にエレメントを分割
して並行処理をイjうベクトル・プロセッサに、チェイ
ニング機能を持たせる事も可能である。この場合、ベク
トル・レジスタとし゛(1サイクルに2n個の読出し、
書込みのできるものが要求される。
第2図に並行処理されるエレメント夕1]の数”rl”
を2とした場合のベクトル・レジスタの従来方式を示す
。この方式はベクトル・レジスタ・−アレイとして周辺
回路系と同等の速度を持ったH、 A M (ランダム
・アクセス・メモリ)HJO&使用する41を前提とし
ている。図中、101.102で示ずW D It O
/1は書込データ・レジスタ、103、+04で示すi
t1月L(v1讐は続出データ・レジスタ、105.1
06で示すνVA1.tO/1・は書込アドレス・レジ
スタ、1(+7.108で示すRAN−□ヤ管は続出ア
ドレス・レジスタであり、109〜11.4はセレクタ
を示している。
を2とした場合のベクトル・レジスタの従来方式を示す
。この方式はベクトル・レジスタ・−アレイとして周辺
回路系と同等の速度を持ったH、 A M (ランダム
・アクセス・メモリ)HJO&使用する41を前提とし
ている。図中、101.102で示ずW D It O
/1は書込データ・レジスタ、103、+04で示すi
t1月L(v1讐は続出データ・レジスタ、105.1
06で示すνVA1.tO/1・は書込アドレス・レジ
スタ、1(+7.108で示すRAN−□ヤ管は続出ア
ドレス・レジスタであり、109〜11.4はセレクタ
を示している。
それぞれのレジスタに付加した番号 騎1は、II O
I+がベクトル・エレメント列I(Q、2.4・・・・
・・I・・・)、1”はL+1(1,3,5、・・・・
・・11−1・・・)を処理するレジスタである事を示
している。図はベクトル・レジスタ・プレイを形成して
いるR A Mを4バンクに分割することにより、1ザ
イクルで4エレメントの′アクセスを可能にしている。
I+がベクトル・エレメント列I(Q、2.4・・・・
・・I・・・)、1”はL+1(1,3,5、・・・・
・・11−1・・・)を処理するレジスタである事を示
している。図はベクトル・レジスタ・プレイを形成して
いるR A Mを4バンクに分割することにより、1ザ
イクルで4エレメントの′アクセスを可能にしている。
すなわら、バンクの幌合がなげれば、■サイクルに2エ
レメントの内込みと、2エレメントの読出しが同時にで
きる。例えば、WIJIは0) IOL W IJ i
t(,1)102のデータをW A R(0) 1.0
5、W A R(1) 106で示されるニレメン)
?fff号4.5に書込むと同時に、IL A R(0
+ 1.07、It A It (1) 108で示さ
れるエレメントi11号6.7のデータな■日月L(0
)103、It D几(1)104に読出すことがci
J’能である。
レメントの内込みと、2エレメントの読出しが同時にで
きる。例えば、WIJIは0) IOL W IJ i
t(,1)102のデータをW A R(0) 1.0
5、W A R(1) 106で示されるニレメン)
?fff号4.5に書込むと同時に、IL A R(0
+ 1.07、It A It (1) 108で示さ
れるエレメントi11号6.7のデータな■日月L(0
)103、It D几(1)104に読出すことがci
J’能である。
ところで、j:+42図のようなバンク分割の方法を採
用した場合、2つの読出動作の間、あるいは2つの一1
J込動作の間には、“アクセスのa倉は発生しないが、
同一エレメント列の読出動作と畳込動作の間でパンクの
競合が発生ずる。すなわち第2図のようなベクトル・レ
ジスタを有するベクトル・プロセッサでは、このような
競合の発生した時に備えて続出動作を待たせる等の機能
が付加されねばならない。又、2112図の方式はlt
A Mとその周辺のアトlメス・レジスタやデータ・
レジスタを構成する回路部との1妾続インタフエースを
大量に必要とする為、It A Mの実装エリアが大き
くなる欠点を持っている。
用した場合、2つの読出動作の間、あるいは2つの一1
J込動作の間には、“アクセスのa倉は発生しないが、
同一エレメント列の読出動作と畳込動作の間でパンクの
競合が発生ずる。すなわち第2図のようなベクトル・レ
ジスタを有するベクトル・プロセッサでは、このような
競合の発生した時に備えて続出動作を待たせる等の機能
が付加されねばならない。又、2112図の方式はlt
A Mとその周辺のアトlメス・レジスタやデータ・
レジスタを構成する回路部との1妾続インタフエースを
大量に必要とする為、It A Mの実装エリアが大き
くなる欠点を持っている。
本発明の目的は、ベクトル レジスタを前車に読出し、
書込みができる構造とし、ベクトル・プロセッサの高速
処理の為ベクトル命令のエレメント分割処理及びチェイ
ニング処理を円滑に行うことにある。
書込みができる構造とし、ベクトル・プロセッサの高速
処理の為ベクトル命令のエレメント分割処理及びチェイ
ニング処理を円滑に行うことにある。
上記の目的を達成するため、本発明はベクトル・レジス
タとして、周辺の演算器を++f成する回路糸よりも相
対的に2n倍品1塁な回路系を用いて、16nサイクル
でベクトル・レジスタのml[1L ;F)るいは書込
みを行い、1サイクルでは、当該同一ベクトル・レジス
タに対し、それぞれnpJの71F込み動作とn回の読
出し動作を同時に可能にするものである。
タとして、周辺の演算器を++f成する回路糸よりも相
対的に2n倍品1塁な回路系を用いて、16nサイクル
でベクトル・レジスタのml[1L ;F)るいは書込
みを行い、1サイクルでは、当該同一ベクトル・レジス
タに対し、それぞれnpJの71F込み動作とn回の読
出し動作を同時に可能にするものである。
第3図は本発明によるベクトル・レジスタの一実施例で
、ベクトル・レジスタ アレイとして1tA M 20
0 &用い、並行処jljされるエレメント列数を2と
した場合を73eず。ベクトル・プロセッサ全体の構成
は第1図と同様である。第3図中、201.202で示
すW D 140/、は書込データ・レジスタ、203
’、203.204で示ずP I’tD ROおよび几
IJI(、’將は続出データ・レジスタ、205.20
6で示すWAll ン’、は書込アドレス・レジスタ、
207.208で示ずtLARO/iは続出アドレス・
レジスタである。210と211はセレクタ、212は
2ビツト・カウンタを示している。第2図の場合と同様
に、それぞれのレジスタに旬した番号%のうち、”0”
は間数のベクトル・エレメント列1(0,2,4、・・
・I・・・)を、”1″は6y故のベクトル・エレメン
ト列i 十i(1,3,5・・・I +1・・・)を処
理するレジスタであることを意味する。
、ベクトル・レジスタ アレイとして1tA M 20
0 &用い、並行処jljされるエレメント列数を2と
した場合を73eず。ベクトル・プロセッサ全体の構成
は第1図と同様である。第3図中、201.202で示
すW D 140/、は書込データ・レジスタ、203
’、203.204で示ずP I’tD ROおよび几
IJI(、’將は続出データ・レジスタ、205.20
6で示すWAll ン’、は書込アドレス・レジスタ、
207.208で示ずtLARO/iは続出アドレス・
レジスタである。210と211はセレクタ、212は
2ビツト・カウンタを示している。第2図の場合と同様
に、それぞれのレジスタに旬した番号%のうち、”0”
は間数のベクトル・エレメント列1(0,2,4、・・
・I・・・)を、”1″は6y故のベクトル・エレメン
ト列i 十i(1,3,5・・・I +1・・・)を処
理するレジスタであることを意味する。
第4図は第3図の基本動作を表わしたタイムチャートで
ある。図中、I 7 It 1 / l + 2 /
I +3とあるのは、当該レジスタが、その時に処理し
ているベクトル・エレメント番号を示す。又、RA M
20(lの動作でWないし1tと記したものは、それ
ぞれ書込み、読出しの時間を示している。
ある。図中、I 7 It 1 / l + 2 /
I +3とあるのは、当該レジスタが、その時に処理し
ているベクトル・エレメント番号を示す。又、RA M
20(lの動作でWないし1tと記したものは、それ
ぞれ書込み、読出しの時間を示している。
第4図のタイムチャートは1列とIt1列に分割された
エレメント列が、lザイクル・ピッチでそれぞれWD
)LU (0) 201とW I) It (1) 2
02にセットされ、たyちにIt Aへ4200へ書込
まれ、一方では、RA M 200から読出されたIと
It1の各エレメント列がPI口月L (0) 203
経由の1tDR(0)203とRD R(1) 204
にセットされ、当該レジスタより1ザイクル・ピッチで
出力されるというように、エレメント分割による並行処
理及びチェイニング処理が最も理想的に行われている状
態を表わしている。
エレメント列が、lザイクル・ピッチでそれぞれWD
)LU (0) 201とW I) It (1) 2
02にセットされ、たyちにIt Aへ4200へ書込
まれ、一方では、RA M 200から読出されたIと
It1の各エレメント列がPI口月L (0) 203
経由の1tDR(0)203とRD R(1) 204
にセットされ、当該レジスタより1ザイクル・ピッチで
出力されるというように、エレメント分割による並行処
理及びチェイニング処理が最も理想的に行われている状
態を表わしている。
以下、第3図の動作を第4図で説明する。まず、第3図
のセレクタ210と211は暑サイクルで動作する2ビ
ツト・カウンタ212の出力でセレクトされる。すなわ
ち、セレクタ4!FiF#210はカウンタ212の上
位ビットに注目して、帰サイクル・ピッチ(第4図)i
″0− ’f’ 2.1’ 2−1” 0−11’示す
時間)でWD R(0) 201 、Wl) It (
1) 202を交互に選択する。セレクタ縛211はカ
ウンタ212の全ビット(2ビツト)に注目し℃、電サ
イクル・ピッチ(第0)2(17、W A IL (1
) 2(16、It A It (1) 208をl1
lfi欠;l’!4択する。この】1択!Tlb作は常
時性われる。
のセレクタ210と211は暑サイクルで動作する2ビ
ツト・カウンタ212の出力でセレクトされる。すなわ
ち、セレクタ4!FiF#210はカウンタ212の上
位ビットに注目して、帰サイクル・ピッチ(第4図)i
″0− ’f’ 2.1’ 2−1” 0−11’示す
時間)でWD R(0) 201 、Wl) It (
1) 202を交互に選択する。セレクタ縛211はカ
ウンタ212の全ビット(2ビツト)に注目し℃、電サ
イクル・ピッチ(第0)2(17、W A IL (1
) 2(16、It A It (1) 208をl1
lfi欠;l’!4択する。この】1択!Tlb作は常
時性われる。
第4図におい′C、W D R(0) 201ヘエレメ
ント11111、〜.v L) It (1) 202
へエレメント″i+1rが時刻’l’ oでセットされ
る。このW IJ R(0) 201及びWIJ IL
C1) 202の出力はセレクタ210により交互に
y、A 択すレル。スフK ワt、)、’r o −’
r 2−c−w [1it ((J)201カ、i’
2−’l’ 0 テW LI It (1) 202が
選択される。この間、セレクタ211はW A R(0
) 205.1tAIL (0) 207、W A I
t (1) 206、It A IL (1) 208
を仄々に選択する。すなわら、′l″0−1’ Iの間
でW A IL (0) 205 ヲ、’l’ 1−
’1’ 2 テIt A It ((1) 207を、
’l’ 2− ’l’ 3で〜V A 1t(1) 2
06習、’1’ 3− ’l’ 0でIt A It
(1) 208をそれぞれ選択する。このアドレスによ
りIt A M 200のエレメント錆号を指定する。
ント11111、〜.v L) It (1) 202
へエレメント″i+1rが時刻’l’ oでセットされ
る。このW IJ R(0) 201及びWIJ IL
C1) 202の出力はセレクタ210により交互に
y、A 択すレル。スフK ワt、)、’r o −’
r 2−c−w [1it ((J)201カ、i’
2−’l’ 0 テW LI It (1) 202が
選択される。この間、セレクタ211はW A R(0
) 205.1tAIL (0) 207、W A I
t (1) 206、It A IL (1) 208
を仄々に選択する。すなわら、′l″0−1’ Iの間
でW A IL (0) 205 ヲ、’l’ 1−
’1’ 2 テIt A It ((1) 207を、
’l’ 2− ’l’ 3で〜V A 1t(1) 2
06習、’1’ 3− ’l’ 0でIt A It
(1) 208をそれぞれ選択する。このアドレスによ
りIt A M 200のエレメント錆号を指定する。
コノ(vB )+B 合、It A IX/I 200
ハT O−’I’ l 、 i’2−− ’l’ 3
(7) 1iil テlj 込11flJ 作ヲ、’
l’ 1−1’ 2、’r 3−′l゛0で読出動作を
行う。したがって、’l’ U−’l’ ]の時間では
、W A It (0) 205の示1゛″It A
M鎖酸(エレメント番号11111)へ、νV IJ
It (0) 2(11のデータが書込まれ、i’ 2
− ’l’ 3の時間−(二゛はν〜AR(1)206
の示ずRA Nl領域(エレメント番号” 1−1−1
”)へ、W D IL (1) 202 ノデータが1
月込ま扛る。
ハT O−’I’ l 、 i’2−− ’l’ 3
(7) 1iil テlj 込11flJ 作ヲ、’
l’ 1−1’ 2、’r 3−′l゛0で読出動作を
行う。したがって、’l’ U−’l’ ]の時間では
、W A It (0) 205の示1゛″It A
M鎖酸(エレメント番号11111)へ、νV IJ
It (0) 2(11のデータが書込まれ、i’ 2
− ’l’ 3の時間−(二゛はν〜AR(1)206
の示ずRA Nl領域(エレメント番号” 1−1−1
”)へ、W D IL (1) 202 ノデータが1
月込ま扛る。
上記1” 0−T 1 及ヒT 2−1’ 30) 時
I”JJ テIL A M2O0へ書込まれたデータは
、i’ 1−’1’ 2及び′l゛3−1” 00時間
に、たgちに読出−J−事ができる。1なわち、’l’
1− T 2 及ヒi’ 3− ’l” 00時間&
tC於イて、セレクタ211はIt A R(0) 2
07、It A It、 (1)208を選択しており
、チェイニング48 +(1*により1(A lt (
0) 207がI”、It A It (1,) 20
8が”It1”エレメント番号を示し”〔いれば、容易
に1αOilにrJ込んだ”l”/”l+・1゛I I
t1目のエレメント・データを読出ず事ができる。第4
図はそれケ示していく)。
I”JJ テIL A M2O0へ書込まれたデータは
、i’ 1−’1’ 2及び′l゛3−1” 00時間
に、たgちに読出−J−事ができる。1なわち、’l’
1− T 2 及ヒi’ 3− ’l” 00時間&
tC於イて、セレクタ211はIt A R(0) 2
07、It A It、 (1)208を選択しており
、チェイニング48 +(1*により1(A lt (
0) 207がI”、It A It (1,) 20
8が”It1”エレメント番号を示し”〔いれば、容易
に1αOilにrJ込んだ”l”/”l+・1゛I I
t1目のエレメント・データを読出ず事ができる。第4
図はそれケ示していく)。
+11”番目のエレメント・データは、)’ )t J
、l )t (υ)203′ 八′l゛2でセットさ
れ、”l + + It−;片目のデータ&1R1)
It (1) 204へT Oテセツ)さ1しる。11
ItD R(0) 203’ヘセツトされた“I″番
エレメント・i′−夕は、1゛OでIt 1.I It
((+) 203へ転送され、”■+−]”ヤ1のエ
レメント・データと時間合わぜされる。
、l )t (υ)203′ 八′l゛2でセットさ
れ、”l + + It−;片目のデータ&1R1)
It (1) 204へT Oテセツ)さ1しる。11
ItD R(0) 203’ヘセツトされた“I″番
エレメント・i′−夕は、1゛OでIt 1.I It
((+) 203へ転送され、”■+−]”ヤ1のエ
レメント・データと時間合わぜされる。
10ノIt ((1) 203、It D it (1
) 204に揃ったデータは1′−夕1岑゛l経由で(
寅J′11.器あるいは主i己憶装置tffiへ出力さ
れる。
) 204に揃ったデータは1′−夕1岑゛l経由で(
寅J′11.器あるいは主i己憶装置tffiへ出力さ
れる。
以上かp)わかるように、槁3図で4I□q成されるべ
、りトル・レジスタは、lサイクルで°゛11パ′1+
1”の:Cレメント・データを書込み、さらにそのデー
タを即時にn/e出ずことができ、この謬込み、読出゛
しに[j しての時間的な競合は発生しない。したがっ
て、ベクトル命令のエレメント分割による各エレメント
列の並イj処理、及びチェイニング処理を1−リ゛イク
ル・ピッチで円(#にイIう事ができる。なお、It
A M 200としては、例えばカリウム砒素、ジョセ
フソン累子等の超亮速累子が最肩である。
、りトル・レジスタは、lサイクルで°゛11パ′1+
1”の:Cレメント・データを書込み、さらにそのデー
タを即時にn/e出ずことができ、この謬込み、読出゛
しに[j しての時間的な競合は発生しない。したがっ
て、ベクトル命令のエレメント分割による各エレメント
列の並イj処理、及びチェイニング処理を1−リ゛イク
ル・ピッチで円(#にイIう事ができる。なお、It
A M 200としては、例えばカリウム砒素、ジョセ
フソン累子等の超亮速累子が最肩である。
本元明によれは、+rrq 、t=な読出し、舊込み回
路系の付加で、1−リーイクルに複数回の吋貧のないベ
クトル・レジスタ・アクセスが可能となり、ベクトル・
プロセッサにおいてエレメントの)1し列処理、チェイ
ニング処j里を円滑に行わせるJJ(ができる1、
路系の付加で、1−リーイクルに複数回の吋貧のないベ
クトル・レジスタ・アクセスが可能となり、ベクトル・
プロセッサにおいてエレメントの)1し列処理、チェイ
ニング処j里を円滑に行わせるJJ(ができる1、
第1図はベクトル・プロセッサの一般的ブロック図、第
2図は第1図に世けるベクトル・レジスタの従来例の構
成例を示す図、第3図は本発明の一実施例を示す図、第
4図は亀3図の九本1ijj作を示すタイミング図であ
る。 1・・・ベクトル・レジスタ、2・・・分配回路、3・
・・選択回路、4・・・演算器、5・・・五屈1意装随
、2oO・・・ベクトル・レジスタ・アレイ(ItAM
)、 201.202・・・書込データ・レジスタ
、203.203′、204・・・mシ出データ・レジ
スタ、205.206・・・14込アドレス・レジスタ
、207. 208・・・読出アドレス・レジスタ、
210.211・・・セレクタ、212・・・2ビ、
ット・カウンタ。 代理人4P埋士 鈴 木 誠 ど ゛第1図 第2図
2図は第1図に世けるベクトル・レジスタの従来例の構
成例を示す図、第3図は本発明の一実施例を示す図、第
4図は亀3図の九本1ijj作を示すタイミング図であ
る。 1・・・ベクトル・レジスタ、2・・・分配回路、3・
・・選択回路、4・・・演算器、5・・・五屈1意装随
、2oO・・・ベクトル・レジスタ・アレイ(ItAM
)、 201.202・・・書込データ・レジスタ
、203.203′、204・・・mシ出データ・レジ
スタ、205.206・・・14込アドレス・レジスタ
、207. 208・・・読出アドレス・レジスタ、
210.211・・・セレクタ、212・・・2ビ、
ット・カウンタ。 代理人4P埋士 鈴 木 誠 ど ゛第1図 第2図
Claims (2)
- (1)複数のベクトル・レジスタ、演算器、メモリ・リ
クエスタ等をl1fffえ、ベクトル命令を実行するベ
クトル・プロセッサにおいて、前記ベクトル・レジスタ
を、周辺の演算器等を構成する回路系よりも相対的に2
11倍高速に動作する回路系で構成■ すると共に、7うnサイクルで前記ベクトル・レジスタ
のWl出しあるいは南込みを行い、1サイクルでは、当
該同一ベクトル・レジスタに対してn回の書込みN0作
とn回の読出し動作を可能としたことを特徴とするベク
トル・プロセッサ。 - (2)各ベクトル・レジスタは、n個の書込みデータ・
レジスタと、n個の続出データ・レジスタと、2n個の
書込/読出アドレス・レジスタと、これらのレジスタを
選択するセレクタとを具備し、前記ヒレフタにより所望
レジスタをII次選択し、1ザイクルで当該同一ベクト
ル・レジスタに対してn回の書込み110作と11回の
読出し動作を可能としたことを特徴とするq′ffF
i1N求の範囲第1項記載のベクトル・プロセッサ。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57187828A JPH0652530B2 (ja) | 1982-10-25 | 1982-10-25 | ベクトル・プロセッサ |
US06/545,160 US4725973A (en) | 1982-10-25 | 1983-10-25 | Vector processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57187828A JPH0652530B2 (ja) | 1982-10-25 | 1982-10-25 | ベクトル・プロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5977574A true JPS5977574A (ja) | 1984-05-04 |
JPH0652530B2 JPH0652530B2 (ja) | 1994-07-06 |
Family
ID=16212940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57187828A Expired - Lifetime JPH0652530B2 (ja) | 1982-10-25 | 1982-10-25 | ベクトル・プロセッサ |
Country Status (2)
Country | Link |
---|---|
US (1) | US4725973A (ja) |
JP (1) | JPH0652530B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62143176A (ja) * | 1985-12-17 | 1987-06-26 | Fujitsu Ltd | ベクトルレジスタアクセス制御方式 |
JPS6446162A (en) * | 1987-08-14 | 1989-02-20 | Hitachi Ltd | Vector processor |
DE3930313A1 (de) * | 1988-09-14 | 1990-03-15 | Hitachi Ltd | Vektorprozessor |
JPH0622034B2 (ja) * | 1987-08-31 | 1994-03-23 | ディジタル イクイプメント コーポレーション | マルチポートベクトルレジスタファイル |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3585972D1 (de) * | 1984-07-02 | 1992-06-11 | Nec Corp | Rechner-vektorregisterverarbeitung. |
JPH0640337B2 (ja) * | 1984-10-03 | 1994-05-25 | 株式会社日立製作所 | パイプライン演算装置 |
US4922543A (en) * | 1984-12-14 | 1990-05-01 | Sten Hugo Nils Ahlbom | Image processing device |
JPH0622035B2 (ja) * | 1985-11-13 | 1994-03-23 | 株式会社日立製作所 | ベクトル処理装置 |
US4949247A (en) * | 1988-02-23 | 1990-08-14 | Stellar Computer, Inc. | System for transferring multiple vector data elements to and from vector memory in a single operation |
EP0419499B1 (en) * | 1988-05-10 | 1992-10-21 | Cray Research, Inc. | Vector tailgating in computers with vector registers |
US5142685A (en) * | 1988-05-20 | 1992-08-25 | Nec Corporation | Pipeline circuit for timing adjustment of irregular valid and invalid data |
US5151995A (en) * | 1988-08-05 | 1992-09-29 | Cray Research, Inc. | Method and apparatus for producing successive calculated results in a high-speed computer functional unit using low-speed VLSI components |
JP2607689B2 (ja) * | 1989-07-10 | 1997-05-07 | 株式会社日立製作所 | ベクトル処理装置 |
US5333284A (en) * | 1990-09-10 | 1994-07-26 | Honeywell, Inc. | Repeated ALU in pipelined processor design |
WO1992009968A1 (en) * | 1990-11-27 | 1992-06-11 | Cray Research, Inc. | VECTOR WORD SHIFT BY Vo SHIFT COUNT IN VECTOR SUPERCOMPUTER PROCESSOR |
US6145071A (en) * | 1994-03-03 | 2000-11-07 | The George Washington University | Multi-layer multi-processor information conveyor with periodic transferring of processors' states for on-the-fly transformation of continuous information flows and operating method therefor |
JPH07271764A (ja) * | 1994-03-24 | 1995-10-20 | Internatl Business Mach Corp <Ibm> | 計算機プロセッサ及びシステム |
US5848286A (en) * | 1994-03-29 | 1998-12-08 | Cray Research, Inc. | Vector word shift by vo shift count in vector supercomputer processor |
US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
DE19625569A1 (de) * | 1996-06-26 | 1998-01-02 | Philips Patentverwaltung | Signalprozessor |
US6061521A (en) * | 1996-12-02 | 2000-05-09 | Compaq Computer Corp. | Computer having multimedia operations executable as two distinct sets of operations within a single instruction cycle |
US5909572A (en) * | 1996-12-02 | 1999-06-01 | Compaq Computer Corp. | System and method for conditionally moving an operand from a source register to a destination register |
US5893145A (en) * | 1996-12-02 | 1999-04-06 | Compaq Computer Corp. | System and method for routing operands within partitions of a source register to partitions within a destination register |
US6009505A (en) * | 1996-12-02 | 1999-12-28 | Compaq Computer Corp. | System and method for routing one operand to arithmetic logic units from fixed register slots and another operand from any register slot |
US5941938A (en) * | 1996-12-02 | 1999-08-24 | Compaq Computer Corp. | System and method for performing an accumulate operation on one or more operands within a partitioned register |
US6668316B1 (en) * | 1999-02-17 | 2003-12-23 | Elbrus International Limited | Method and apparatus for conflict-free execution of integer and floating-point operations with a common register file |
AU2002339867A1 (en) * | 2001-09-04 | 2003-03-18 | Microunity Systems Engineering, Inc. | System and method for performing multiplication |
US7196708B2 (en) * | 2004-03-31 | 2007-03-27 | Sony Corporation | Parallel vector processing |
US20050226337A1 (en) * | 2004-03-31 | 2005-10-13 | Mikhail Dorojevets | 2D block processing architecture |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5731080A (en) * | 1980-07-31 | 1982-02-19 | Fujitsu Ltd | Vector processor |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3541516A (en) * | 1965-06-30 | 1970-11-17 | Ibm | Vector arithmetic multiprocessor computing system |
US4127899A (en) * | 1977-12-05 | 1978-11-28 | International Business Machines Corporation | Self-quenching memory cell |
JPS6024985B2 (ja) * | 1978-08-31 | 1985-06-15 | 富士通株式会社 | デ−タ処理方式 |
US4193127A (en) * | 1979-01-02 | 1980-03-11 | International Business Machines Corporation | Simultaneous read/write cell |
US4302818A (en) * | 1979-07-10 | 1981-11-24 | Texas Instruments Incorporated | Micro-vector processor |
US4400768A (en) * | 1980-06-04 | 1983-08-23 | Burroughs Corporation | Parallel access computer memory system employing a power-of-two memory modules |
JPS5760586A (en) * | 1980-09-26 | 1982-04-12 | Matsushita Electric Ind Co Ltd | Random access memory |
KR860001434B1 (ko) * | 1980-11-21 | 1986-09-24 | 후지쑤 가부시끼가이샤 | 데이타 처리시 스템 |
JPS57134774A (en) * | 1981-02-13 | 1982-08-20 | Hitachi Ltd | Vector operating device |
JPS57209570A (en) * | 1981-06-19 | 1982-12-22 | Fujitsu Ltd | Vector processing device |
US4489381A (en) * | 1982-08-06 | 1984-12-18 | International Business Machines Corporation | Hierarchical memories having two ports at each subordinate memory level |
-
1982
- 1982-10-25 JP JP57187828A patent/JPH0652530B2/ja not_active Expired - Lifetime
-
1983
- 1983-10-25 US US06/545,160 patent/US4725973A/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5731080A (en) * | 1980-07-31 | 1982-02-19 | Fujitsu Ltd | Vector processor |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62143176A (ja) * | 1985-12-17 | 1987-06-26 | Fujitsu Ltd | ベクトルレジスタアクセス制御方式 |
JPS6446162A (en) * | 1987-08-14 | 1989-02-20 | Hitachi Ltd | Vector processor |
DE3827500A1 (de) * | 1987-08-14 | 1989-02-23 | Hitachi Ltd | Vektorprozessor |
JPH0622034B2 (ja) * | 1987-08-31 | 1994-03-23 | ディジタル イクイプメント コーポレーション | マルチポートベクトルレジスタファイル |
DE3930313A1 (de) * | 1988-09-14 | 1990-03-15 | Hitachi Ltd | Vektorprozessor |
Also Published As
Publication number | Publication date |
---|---|
US4725973A (en) | 1988-02-16 |
JPH0652530B2 (ja) | 1994-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS5977574A (ja) | ベクトル・プロセツサ | |
EP0240032B1 (en) | Vector processor with vector data compression/expansion capability | |
US11775313B2 (en) | Hardware accelerator for convolutional neural networks and method of operation thereof | |
CN112379930B (zh) | 产生并执行控制流的方法和设备 | |
US3970993A (en) | Cooperative-word linear array parallel processor | |
US6510510B1 (en) | Digital signal processor having distributed register file | |
US4187539A (en) | Pipelined data processing system with centralized microprogram control | |
CN114391135A (zh) | 用于对连续分配数据执行存储器内处理操作的方法及相关存储器装置和系统 | |
JPH0863586A (ja) | 画像処理等の並列処理用のキャッシュバーストアーキテクチャ | |
CN108205448B (zh) | 具有在每个维度上可选择的多维循环寻址的流引擎 | |
JPS59172065A (ja) | 幾何学的−算術的並列プロセツサ | |
EP1733300B1 (en) | Improvements relating to orthogonal data memory | |
JP2959104B2 (ja) | 信号処理プロセッサ | |
US6269435B1 (en) | System and method for implementing conditional vector operations in which an input vector containing multiple operands to be used in conditional operations is divided into two or more output vectors based on a condition vector | |
US8145804B2 (en) | Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor | |
US20210072987A1 (en) | Methods for performing processing-in-memory operations, and related memory devices and systems | |
CN107545914B (zh) | 用于智能存储器接口的方法和设备 | |
US4621324A (en) | Processor for carrying out vector operation wherein the same vector element is used repeatedly in succession | |
US5420997A (en) | Memory having concurrent read and writing from different addresses | |
US5197145A (en) | Buffer storage system using parallel buffer storage units and move-out buffer registers | |
CN116050492A (zh) | 一种扩展单元 | |
JPS62134763A (ja) | 3アドレス・コ−ドの指標づけ装置 | |
US8332447B2 (en) | Systems and methods for performing fixed-point fractional multiplication operations in a SIMD processor | |
US6405233B1 (en) | Unaligned semaphore adder | |
WO2002042906A1 (en) | Data addressing |