JPH0357497B2 - - Google Patents

Info

Publication number
JPH0357497B2
JPH0357497B2 JP11191685A JP11191685A JPH0357497B2 JP H0357497 B2 JPH0357497 B2 JP H0357497B2 JP 11191685 A JP11191685 A JP 11191685A JP 11191685 A JP11191685 A JP 11191685A JP H0357497 B2 JPH0357497 B2 JP H0357497B2
Authority
JP
Japan
Prior art keywords
vector
circuit
operand
address
registers
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
JP11191685A
Other languages
English (en)
Other versions
JPS61269775A (ja
Inventor
Makoto Suwada
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP11191685A priority Critical patent/JPS61269775A/ja
Publication of JPS61269775A publication Critical patent/JPS61269775A/ja
Publication of JPH0357497B2 publication Critical patent/JPH0357497B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はベクトル処理装置におけるベクトルレ
ジスタ間のデータ移送処理に関し、特にベクトル
エレメントの置換に関する。
(従来の技術) ベクトルまたは行列の演算を行う場合、部分ベ
クトルや部分行列の概念は非常に重要であり、科
学演算を行う場合に頻繁に発生する。
従来、この種のベクトル処理装置では演算用の
ベクトルレジスタ間でベクトルエレメントを移送
する機能が具備されていなかつたため、部分ベク
トルや部分行列の置換や重ね合せの動作はメモリ
を介してストア動作およびロード動作を組合せて
行つていた。
(発明が解決しようとする問題点) 上述した従来のベクトル処理装置ではメモリを
介して置換が行われるため、メモリの入出力に関
するオーバヘツドが大きく、リザルトベクトルレ
ジスタ上に必要なデータを得るまでに時間がかか
り、ベクトルデータの置換と演算とを連続的に行
う場合にはメモリのデータ供給性能により演算が
大幅に待たされると云う欠点があつた。
本発明の目的は、ベクトルレジスタを使用した
ベクトル処理装置に比較的簡単な回路を付加する
ことにより上記欠点を除去し、ベクトル演算を高
速で実行できるように構成したベクトル処理装置
を提供することができる。
(問題点を解決するための手段) 本発明によるベクトル処理装置はn個(1より
大きい正の整数)と、n個のリザルトベクトルレ
ジスタと、アライン回路と、第1のmod n回路
と、第1のデコーダ回路と、第2のデコーダ回路
と、第2〜第4のmod n回路とを具備し、n個
のオペランドベクトルレジスタからn個のリザル
トベクトルレジスタにベクトルエレメントを並列
的に移送することができるように構成したもので
ある。
n個のオペランドベクトルレジスタは、同一ベ
クトルに属するn個のベクトルエレメントを1サ
イクル中に読出すためのものである。
n個のリザルトベクトルレジスタは、同一ベク
トルに属するn個のベクトルエレメントを1サイ
クル中に書込むためのものである。
アライン回路は、オペランドベクトルレジスタ
から読出されたn個のベクトルエレメントに対応
して設けられたn個の読出しデータパスを、それ
ぞれリザルトベクトルレジスタに書込まれるn個
のベクトルエレメントに対応して設けられたn個
の書込みデータパスに選択的に接続するためのも
のである。
第1のmod n回路は、オペランドベクトルレ
ジスタに格納されたベクトルデータのうち、移送
元の先頭ベクトルエレメントを示すアドレスデー
タA×n+i(0A,0i<n)をnで除算
した剰余i、および/またはオペランドベクトル
レジスタからリザルトベクトルレジスタへ移送さ
れるベクトルデータのうち、移送先の先頭ベクト
ルエレメントを示すアドレスデータB×n+j
(0B,0j<n)をnで除算した剰余jを
検出するためのものである。
第1のデコーダ回路は、第1のmod n回路よ
り検出されたiの値により0番目からi−1番目
のオペランドベクトルレジスタに対してはA+1
の読出しアドレスを与えるとともに、i番目から
n−1番目のオペランドベクトルレジスタに対し
てはAの読出しアドレスを与えるためのものであ
る。
第2のデコーダ回路は、第1のmod n回路よ
り検出されたjの値により0番目からj−1番目
のリザルトベクトルレジスタに対してはB+1の
書込みアドレスを与えるとともに、j番目からn
−1番目のリザルトベクトルレジスタに対しては
Bの書込みアドレスを与えるためのものである。
第2〜第4のmod n回路は、k番目(0k
<n)の書込みデータパスに対応した選択に対し
て、それぞれk+i,k−j、ならびにk+i−
jをnで除算した剰余をlk(0lk<n)として求
め、アライン回路に選択信号として与えるための
ものである。
(実施例) 次に、本発明において図面を参照して説明す
る。
第1図〜第3図は、本発明によるベクトル処理
装置の一実施例を示すブロツク図である。第1図
〜第3図において、1〜4はそれぞれ第0〜第3
のオペランドベクトルレジスタ、5〜8はそれぞ
れ第0〜第3のベクトルレジスタ、9はアライン
回路、10,14はそれぞれデコーダ、11〜1
3,15はそれぞれ第1〜第4のmod4回路であ
る。
第1図はn=4とし、読出し開始アドレスのみ
を指定可能とし、書込み開始アドレスは常に
“0”であるシステムに関する動作を説明するブ
ロツク図である。第2図は、逆に書込み開始アド
レスのみを指定可能とし、読出し開始アドレスは
常に“0”であるシステムに関する動作を説明す
るブロツク図である。第3図は、読出し開始アド
レス、および書込み開始アドレスをともに指定可
能としたシステムに関する動作を説明するブロツ
ク図である。
第1図において、第0〜第3のオペランドベク
トルレジスタ1〜4の出力は各読出しデータパス
100〜103を介してアライン回路9に入力
し、さらにアライン回路9の内部で選択的に並べ
換えられた出力データは、各書込みデータパス2
00〜203を介してて第0〜第3のリザルトベ
クトルレジスタ5〜8に接続される。また、オペ
ランドベクトルレジスタ1〜4に対して指定され
た読出し開始アドレス(A×n+i)は、第1の
mod4回路12に入力されて4で除算された剰余
iを出力し、第2のmod4回路11とデコーダ回
路10とに分配される。mod4回路11では各書
込みデータパス200〜203に対応して、0+
i,1+i,2+i,3+iをそれぞれnで除算
し、剰余l0,l1,l2,l3をそれぞれ選択信号として
アライン回路9に供給する。デコーダ回路9は読
出し開始アドレスA×n+iとその剰余iとを入
力し、第0〜第3のオペランドベクトルレジスタ
1〜4に対し、AまたはA+1のアドレスをそれ
ぞれ供給する。
第1図に示す実施例では、n=4およびA×n
+i=17を与えており、A=4であつてi=4で
ある。また、l0=1,l1=2,l2=3,l3=0であ
つて、第0のオペランドベクトルレジスタ1に対
して供給される読出しアドレスは5、第1〜第3
のオペランドベクトルレジスタ2〜4に対して供
給される読出しアドレスは4である。
いつぽう、第0〜第3のリザルトベクトルレジ
スタ5〜8に対して与えられる書込み開始アドレ
スは常に0であるので、第1サイクルでは第1図
の斜線で示すエレメントが移送され、第0〜第3
のオペランドベクトルレジスタ1〜4に格納され
ていたベクトルエレメント#17〜#20は第0〜第
3のリザルトベクトルレジスタ5〜8の第0〜第
3のベクトルエレメントとして格納される。従つ
て、以下に順次、各サイクルごとに各オペランド
ベクトルレジスタ1〜4の読出しアドレスと、各
リザルトベクトルレジスタ5〜8の書込みアドレ
スとを+1ずつ進ませてゆくことにより、第4図
に示すようなベクトルエレメントの移送が行われ
ることになる。本動作により行われる移送は、部
分ベクトルの抽出における置換に対応する。
第2図に示す構成は、第1図の構成に対して次
の各点で相違がある。すなわち、第1図のデコー
ダ回路10の出力がオペランドベクトルレジスタ
ではなく、リザルトベクトルレジスタに供給され
ており、第2のmod4回路11の代りに第3の
mod4回路13に設置されていることである。第
2のmod4回路11と第3のmod4回路13との相
違は、第2のmod4回路11が各書込みデータパ
ス200〜203に対応してそれぞれ0+i,1
+i,2+i,3+iををnで除算した剰余を選
択信号として供給しているのに対し、第3の
mod4回路13はそれぞれ0−j,1−j,2−
j,3−jをnで除算した剰余を供給しているこ
とにある。
第2図の実施例ではn=4ならびにB×n+j
=13を与えており、B=3ならびにj=1が得ら
れる。従つて、l0=3,l1=0,l2=1,l3=2と
なり、第0のリザルトベクトルレジスタ5には書
込み開始アドレスとして4が供給され、第1〜第
3のリザルトベクトルレジスタ6〜8には3が供
給される。斯くして、第1サイクルでは第2図の
斜線で示すエレメントが移送され、オペランドベ
クトルレジスタ1〜4の内部の第0〜第3のエレ
メントがリザルトベクトルレジスタ5〜8の第13
〜第16のエレメントとして格納される。以下に順
次、オペランドベクトルレジスタ1〜4とリザル
トベクトルレジスタ5〜8とのアドレスを進ませ
ることにより、第5図に示すようなベクトルエレ
メントの移送が行われることになる。上記の動作
により行われる移送は、ベクトルの合成における
置換に対応する。
第3図に示す構成は第1図および第2図に示す
機能を合成させたもので、第2のmod4回路11
または第3のmod4回路13が第4のmod4回路1
5となつている点のみが異なる。第2のmod4回
路11が各書込みデータパス(0〜3)に対応し
て0+i,1+i,2+i,3+iをnで除算し
た剰余を選択信号として供給し、且つ、第3の
mod4回路13ではそれぞれ0−j,1−j,2
−j,3−jをnで除算した剰余を選択信号とし
て供給しているのに対し、第4のmrd4回路15
ではそれぞれ0+i−j,1+i−j,2+i−
j,3+i−jを選択信号として供給している点
が異なる。
第3図の実施例ではn=4,A×n+i=17な
らびにB×n+j=13を与えている。従つて、l0
=0,l1=1,l2=2,l3=3が得られ、それぞ
れ第0のオペランドベクトルレジスタ1には読出
し開始アドレスとして5、第1〜第3のオペラン
ドベクトルレジスタ2〜4には読出し開始アドレ
スとして4、第0のリザルトベクトルレジスタ5
には書込み開始アドレスとして4、第1〜第3の
リザルトベクトルレジスタ6〜8には書込み開始
アドレスとして3が供給される。
斯くして、第1サイクルでは第3図の斜線で示
されるエレメントがオペランドベクトルレジスタ
1〜4からリザルトベクトルレジスタ5〜8へ移
送され、オペランドベクトルレジスタ1〜4の内
部の#17〜#28のエレメントがリザルトベクトル
レジスタの#13〜#16のエレメントとして格納さ
れる。以下に順次、オペランドベクトルレジスタ
1〜4とリザルトベクトルレジスタ5〜8とのア
ドレスを進ませることにより、第6図に示すよう
なベクトルエレメントの移送を行うことができ
る。斯かるシステムでは、第1図および第2図に
示す動作も含んだベクトルを自在に合成すること
ができる。
次に、n=4の場合について各mod4回路およ
びデコーデ回路について説明する。
第1のmod4回路12は、読出し開始アドレス
または書込み開始アドレスとして与えられる2値
数の下位2ビツトを、直接、第2〜第4のmod4
回路11,13,15およびデコーダ回路10,
14に供給する分配回路として与えられる。第2
のmod4回路11は、第1のmod4回路12から分
配されるiの値に0〜3の定数を加算した値を与
える2ビツトの加算器、またはデコーダ本体によ
り簡単に構成することができる。
第3のmod4回路13はjの値に対して0−j,
1−j,2−j,3−jを算出する2ビツトの減
算器(ただし、負の数は補助表示)またはデコー
ダ本体で構成される。第4のmod4回路15は同
様にiおよびjに関して、0+i+j,1+i−
J,2+i−j,3+i−jを算出する加算器に
より構成することができる。第2のmod4回路1
1および第3のmod4回路13は、iまたはjの
どちらか一方が“0”で与えられる場合には第4
のmod4回路15で構成することができる。
デコーダ回路10,14は読出し開始アドレス
A×n+iまたは書込み開始アドレスB×n+j
と、iまたはjを入力し、各オペランドベクトル
レジスタ1〜4または各リザルトベクトルレジス
タ5〜8に対し、AおよびB、あるいはA+1お
よびB+1を供給するために第7図に示すような
構成となる。第7図において、71は2ビツトシ
フタ、72は+1加算器、73はデコーダ本体、
74〜77はそれぞれ第0〜第3のセレクタであ
る。2ビツトシフタ71ではA×n+iまたはB
×n+jの下位2ビツト(iまたはjの値)をシ
フトして削除し、AまたはBを抜出す。+1加算
器72では、入力したデータに“1”だけ加算す
る。デコーダ本体73では、iまたはjを入力
し、AまたはBと、A+1またはB+1とのどち
らかを選択するための選択信号を発生する。実施
例ではiまたはjが“01”のときに選択状態とな
る。
本実施例ではn=4の場合について説明した
が、本発明は一般的なn(正の整数)についても
構成することが可能である。特に、n=2x(xは
整数)の場合には、本実施例に示したように回路
構成が最も簡単になる。
(発明の効果) 以上説明したように本発明は、ベクトルレジス
タを使用したベクトル処理装置に比較的簡単な回
路を付加することにより、ベクトルエレメントの
移送および置換に関して高速に処理できると云う
効果がある。
【図面の簡単な説明】
第1図は、本発明によるベクトル処理装置にお
いてn=4であつて、A×n+i=17とし、オペ
ランドベクトルレジスタの読出し開始アドレスの
みを指定可能とした実施例の構成ブロツク図であ
る。第2図は、本発明によるベクトル処理装置に
おいてn=4であつてB×n+j=13とし、リザ
ルトベクトルレジスタの書込み開始アドレスのみ
を指定とした実施例の構成ブロツク図である。第
3図は、本発明によるベクトル処理装置において
n=4、A×n+i=17,B×n+j=13とし、
オペランドベクトルレジスタとリザルトベクトル
レジスタとに対して、読出しおよび書込み開始ア
ドレスを指定可能とした実施例の構成ブロツク図
である。第4図は、第1図に示した実施例に対す
るベクトルエレメントの移送状態を示す説明図で
ある。第5図は、第2図に示した実施例に対する
ベクトルエレメントの移送状態を示す説明図であ
る。第6図は、第3図に示した実施例に対するベ
クトルエレメントの移送状態を示す説明図であ
る。第7図は、第1図〜第3図に示したデコーダ
回路の回路構成を示すブロツク図である。 1〜4…オペランドベクトルレジスタ、5〜8
…リザルトベクトルレジスタ、9…アライン回
路、10,14…デコーダ回路、11〜13,1
5…mod4回路、71…2ビツトシフタ、72…
+1加算器、73…デコーダ本体、74〜77…
セレクタ。

Claims (1)

    【特許請求の範囲】
  1. 1 同一ベクトルに属するn(1より大きい正の
    整数)個のベクトルエレメントを1サイクル中に
    読出すためのn個のオペランドベクトルレジスタ
    と、同一ベクトルに属するn個のベクトルエレメ
    ントを1サイクル中に書込むためのn個のリザル
    トベクトルレジスタと、前記オペランドベクトル
    レジスタから読出された前記n個のベクトルエレ
    メントに対応して設けられたn個の読出しデータ
    パスをそれぞれ、前記リザルトベクトルレジスタ
    に書込まれる前記n個のベクトルエレメントに対
    応して設けられたn個の書込みデータパスに選択
    的に接続するためのアライン回路と、前記オペラ
    ンドベクトルレジスタに格納されたベクトルデー
    タのうち、移送元の先頭ベクトルエレメントを示
    すアドレスデータA×n+i(0A,0i<
    n)をnで除算した剰余i、および/または前記
    オペランドベクトルレジスタから前記リザルトベ
    クトルレジスタへ移送されるベクトルデータのう
    ち、移送先の先頭ベクトルエレメントを示すアド
    レスデータB×n+j(0B,0j<n)を
    nで除算した剰余jを検出するための第1のmod
    n回路と、前記第1のmod n回路より検出され
    たiの値により0番目からi−1番目の前記オペ
    ランドベクトルレジスタに対してはA+1の読出
    しアドレスを与えるとともに、i番目からn−1
    番目の前記オペランドベクトルレジスタに対して
    はAの読出しアドレスを与えるための第1のデコ
    ーダ回路と、前記第1のmod n回路より検出さ
    れたjの値により0番目からららj−1番目の前
    記リザルトベクトルレジスタに対してはB+1の
    書込みアドレスを与えるとともに、j番目からn
    −1番目の前記リザルトベクトルレジスタに対し
    てはBの書込みアドレスを与えるための第2のデ
    コーダ回路と、k番目(0k<n)の書込みデ
    ータパスに対応した選択に対して、それぞれk+
    i,k−j、ならびにk+i−jをnで除算した
    剰余をlk(0lk<n)として求め、前記アライン
    回路に選択信号として与えるための第2〜第4の
    mod n回路とを具備し、前記n個のオペランド
    ベクトルレジスタから前記n個のリザルトベクト
    ルレジスタに前記ベクトルエレメントを並列的に
    移送することができるように構成したことを特徴
    とするベクトル処理装置。
JP11191685A 1985-05-24 1985-05-24 ベクトル処理装置 Granted JPS61269775A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11191685A JPS61269775A (ja) 1985-05-24 1985-05-24 ベクトル処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11191685A JPS61269775A (ja) 1985-05-24 1985-05-24 ベクトル処理装置

Publications (2)

Publication Number Publication Date
JPS61269775A JPS61269775A (ja) 1986-11-29
JPH0357497B2 true JPH0357497B2 (ja) 1991-09-02

Family

ID=14573328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11191685A Granted JPS61269775A (ja) 1985-05-24 1985-05-24 ベクトル処理装置

Country Status (1)

Country Link
JP (1) JPS61269775A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2394571B (en) 2002-10-23 2005-08-10 Motorola Inc Arrangement system and method for vector permutation in single-instruction multiple-data microprocessors

Also Published As

Publication number Publication date
JPS61269775A (ja) 1986-11-29

Similar Documents

Publication Publication Date Title
US5226171A (en) Parallel vector processing system for individual and broadcast distribution of operands and control information
EP0097834A2 (en) Circuits for accessing a variable width data bus with a variable width data field
JPH0731669B2 (ja) ベクトル・プロセツサ
GB1423397A (en) Multi-dimensional access solid state memory
JPS5977574A (ja) ベクトル・プロセツサ
US20170168775A1 (en) Methods and Apparatuses for Performing Multiplication
US5363322A (en) Data processor with an integer multiplication function on a fractional multiplier
GB2075227A (en) Double error correcting system in digital signal reproducing apparatus
JPH06274528A (ja) ベクトル演算処理装置
US5008852A (en) Parallel accessible memory device
GB2241598A (en) Six-way access ported ram array cell
EP0367995A2 (en) Vector data transfer controller
US3569684A (en) Sine-cosine generator comprised of a diode array
JPH0357497B2 (ja)
US4811213A (en) Vector processor with vector registers
US3235718A (en) Magnetic device for performing complex logic functions
Duller et al. Design of an associative processor array
US6507531B1 (en) Cache column multiplexing using redundant form addresses
CN115658011B (zh) 向量乘加器的sram存内计算装置和电子设备
JP2859645B2 (ja) ベクトル処理システム
SU1136176A1 (ru) Устройство дл сопр жени пам ти с процессором
JP2778478B2 (ja) 相関演算プロセッサ
RU2092912C1 (ru) Запоминающее устройство с переключаемой структурой
JPS6153665B2 (ja)
JPS6058503B2 (ja) デ−タ処理制御方式

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term