JPS6243775A - ベクトル演算装置 - Google Patents

ベクトル演算装置

Info

Publication number
JPS6243775A
JPS6243775A JP18473185A JP18473185A JPS6243775A JP S6243775 A JPS6243775 A JP S6243775A JP 18473185 A JP18473185 A JP 18473185A JP 18473185 A JP18473185 A JP 18473185A JP S6243775 A JPS6243775 A JP S6243775A
Authority
JP
Japan
Prior art keywords
mask
vector
data
mask data
main memory
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.)
Pending
Application number
JP18473185A
Other languages
English (en)
Inventor
Hideshi Ishii
石井 英志
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP18473185A priority Critical patent/JPS6243775A/ja
Publication of JPS6243775A publication Critical patent/JPS6243775A/ja
Pending 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

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命令で高速に実行するためのベ
クトル演算命令が川音されている。そしてこのようなヘ
クトル/jiX命令は、−CにFORTRANで記述さ
れたプログラムの最深Do小ループおいて使用される。
また、プログラムの最深DO小ループIF文を含む場合
には、以下に述べるマスクデータを使用することにより
ベクトル演算命令による実行が可能となる。
第2図はFORTRANで記述されたプログラムの最深
DO小ループ一例を示すもので、このDO小ループベク
トル演算命令により実行する場合には、ベクトルX(り
とベクトルY (1)の要素毎の比較が行なわれ、比較
の結果により1要素に対してlビットのマスクデータが
作成される。即ちベクトルX(1)とベクトルY (1
)の対応する要素が−敗したときは“1′、不一致のと
きは“0′がマスクテ−夕として発生される。次C二ベ
クトルA(1)sヘクトルB(1)のベクトル演算命令
が実行されるが、このとき対応するマスクデータが“1
”であるような要素のみがベクトルC(1):こ格納さ
れ、“0゛であるような要素は−、クトルC(+)には
格納されないように制御される。こうすることにより第
2図のDO小ループベクトル演算命令により実行引るこ
とかできる。第4図はこのようすを図示したもので、要
素X。と要素yo。
要素X、と要素y、のみが一致することから要素0と要
素lに対応する“マスクデータのビットのみが“loと
なり、要素a0と要素b0.要素a1と要素b3の演算
のみか実行され、他の要素C1゜C@、C,は同図の斜
線部に示すようにマスクされて変更は行なわれない。
次に第3図に辰すようなりoループを実行する場合を考
える。この場合も第21のDO小ループ+’q +Xに
ベクトルX(1) 、  Y(1)を比較することによ
(0マブζ7゛ノーゲータが作成され、次のベクトル演
算命令によめ参H9される。この場合、A(1)*Hす
l)のベクトル演算命名を実行するときは第2[メ]の
DO小ループ同様にマスクデータの対しL、rるヒ゛2
1が“1”であるような要素の演算のみが実行さね。
るが、ベクトルD(1)  *ベクトルE(1)のベク
トル演算命令を実行するときは前記のA (+)  ¥
B(1)の演算とは逆にベクトルX (1)  とベク
トルY (1)が不一致の要素に対する演算のみを実行
゛する必實があるため、前記のマスクデータをそ・D′
:Eま使用することはできない。
そこで、従来のヘクトル演算装置(こおいては、D(+
)  *E(+)の入りトル演算命令を実行する萌にソ
フトウェアによりマスクデータを反転するか、或いは再
度X(し とYN)からマスクデータを作成し直して反
転さ机たマスクデータで1戊していた。第5図はこのよ
うすを図示したもので、ベクトルA(1)、B(りの要
素a、 〜ai 、b、−b6については第4図と同様
にして求めたマスクデータ(マスク0)を用いて演算し
、ベクトルD(1)。
E(1)の要Mdo 〜da 、eo−eaについては
面体のようにってマスクOを反転したマスクデータ(マ
スク1)を作成し、要素d1と要素e、。
要素d2と要素eN+ 要素d、と要素e4のみの演算
を行ない、他の要素f。、f、は同図の斜線部に示すよ
うにマスクして変更を行なわせないよパ)にするもので
ある。
C発明が解決しようとする問題点〕 このように従来のベクトルfiX装置においては第3図
に示したようなりOループをベクトル演算命令により実
行する場合には、IF文が成立する場合と不成立の場合
とで同一のマスクデータを使用することができず、マス
クデータの作り直しが必要であった。しかし1、ソフト
ウェアによりマスクデータを反転するには、先ずマスク
データのビット数を認識し、そして全てのマスクビット
を反転しなければならないので多くの時間を要し、再度
ベクトルX(1) 、  Y(1)からマスクデータを
作り直す場合も同様に多くの時間を要するので、演算実
行性能が低下するという欠点があった。
本発明の目的は、IF文が成立する場合と不成立の場合
とで同一のマスクデータを使用し得るようにすることに
より、ヘクトル演X装置の性能を向上することにある。
[問題点を解決するための手段] 本発明は上記目的を達成するために、ベクトルデータの
各要素に対応したマスクデータの値によって要素毎にベ
クトル(′A算を実行するかしないかを指定することが
できるヘクトル演算装置において、 マスクモードビットを格納するマスクモードビット格納
手段と、 該マスクモードビット格納手段に格納されたマスクモー
ドビットの値に応してマスクデータレジスタにセットさ
れたマスクデータをそのまま出力し或いは反転して出力
するマスクモード切換手段とを設ける。
〔作用〕
マスクモートビ、ト格納手段に格納されたマスクモード
ビットの埴がマスクデータレジスタにセットされたマス
クデータをそのまま使用する旨を示すものである場合に
は、−7スクモ一ド切換手段からはマスクデータレジス
タにセットされたマスクデータがそのまま出力されて制
1111に使用され、そのマスクモードビットの値がマ
スクデータにセットされたマスクデータを反転して使用
する旨を示すものである場合は、マスクモード切換手段
からはマスクデータレジスタにセットされたマスクデー
タの各ビットを反転したものが出力されて制御Iに使用
されろ。
〔実施例〕
第1図は本発明の実施例のベクトル演算装置のブロック
図であり、このヘクトル演X′!i装置は、メインメモ
リlと、メモリアクセス制jnユニット2と、ベクトル
データ先取りユニット3と、ベクトルデータ供給ユニッ
ト14と、ベクトル演算実行ユニット8とから構成され
ている。また、ベクトルデータ供給ユニット14は、マ
スクモードレジスタ4と、マスクデータレジスタ5と、
ベクトルデータバッファ6.7と、NOTゲート9.1
0.  ANDゲートI1.12.  ORゲート13
から構成されるマスクモード切(四回路15とを含んで
いる。
メインメモリ1には、ベクトル演算命令の命令語、ベク
トルデータ、マスクデータか格納される他にベクトル演
算命令以外の命令(スカラー命令)の命令語やオペラン
ド等が格納される。
メモリアクセス制御0ユニット2は、ベクトルデータ先
取りユニット3から為されるメインメモリlに対するア
クセスの制j1を行ない、メインメモリ1からの読出し
データをベクトルデータ供給1ニツト14へ出カシ、ヘ
クトルi’!41にユニット8からのメインメモリ1へ
の書込みデータを受は取る。
ベクトルデータ先取りユニット3は、ベクトル演算実行
ユニット8で実行されるベクトル演算命令のオペランド
データの先取りを行なうユニ、トである。このベクトル
データ先取りユニット3はマスクモード切換回路15か
らlビ、トずつ送られてくるマスクデータを参照しなか
らメモリアクセス制御ユニット2に対してベクトルデー
タの続出しを指示する。すなわちマスクビットが“1“
である場合にはそのマスクビットに対応するベクトルデ
ータの続出し指示がメモリアクセス制御ユニット2に対
して出力され、マスクビットが0”である場合にはその
マスクビットに対応するベクトルデータの読出し指示は
出力されない、また、ベクトルデータ先取りユニット3
からベクトルデー 9 供給ユニノ目4内のマスクモー
ドレジスタ4゜マスクデータレジスタ5.ベクトルデー
タバッファ6.7等にセット信号、シフト信号等が送出
される。
マスクモードレジスタ4は、1ビツトのレジスタであり
、マスクデータの先頭に付加されたマスクモードビット
がセットされる。このマスクモードレジスタ4の内容(
マスクモードビットの値)によりメインメモリ1に格納
されているマスクデータの解釈が以下のように相違する
。即ち、マスクモードビットの値が“0″であるときに
は°0゛の値を持つマスクビットに対応するベクトル要
素に対する演算が抑止され、マスクモードビットの値が
“1”であるときには”1°の値を持つマスクビットに
対応するベクトル要素に対する演算が抑止されると解釈
される。
マスクデータレジスタ5は、メインメモリlから読出さ
れたlツー1分のマスクデータがセットされるレジスタ
で、セットされたマスクデータはlビットずつシフトさ
れて出力される。ただし、マスクデータの先頭の1ビツ
トをマスクモードビットとし、マスクモードビットをマ
スクモードレジスタ4にセットすると共にそのマスクモ
ードビットを含むマスクデータをマスクデータレジスタ
5にセットしたときは、最初にセットされたlツー1分
のマスクデータのうち先頭のビットはマスクモードビッ
トであるので、マスクデータレジスタ5の最初のlビッ
トは使用しないように構成する。
ベクトルデータバッファ6.7は、メインメモリ1から
読出されたベクトルデータを一時的に格納し、ベクトル
演算実行ユニット8へ送出するためのバッファである。
ベクトル演算実行ユニット8ではベクトルデータバッフ
ァ6.7から送られてくるベクトルデータを使用して演
lγが行なわれ、その結果:よメモリアクセス制御1ユ
ニット2を経由してメ・1′ンメモリlに書誌まれろ。
ただし、ベクトルデータに対范・して入りトルモード切
換回路15から送られてくるマスクビア、トが“0”の
場合には演1γ、j′9上びメインメモリ1へのS込み
は行なわれない。
マスクモート切換回路15は、この実施例ではNOTゲ
ート9.10.ANDゲート11.12、ORゲート1
3で喝成された排他的論理和回路が使用され−こいる。
従って、マスクモードレジスタ4のイ直が“0”17>
ときはマスクラ−−々l・7;スタ5の(直がそのまま
へクトルデーク先取りユニット3およびベクトル演算実
行ユニット8・\供給され、マスクモードレジ人・71
の値が“l”のとき:よマスクデータレシス・り5の出
力が反転されてベクトルデータ先取りユニット3および
ベクトル演算実行ユニット8へ供給されることになる。
次に第3図に示されたプログラムを本実施例のベクトル
演算装置において実行する手順を述べる。
第3図に’?<されたプログラムでは先ずベクトルX(
+) とへクトルY(+)、iの比較が行なわれ、マス
クデータが作成される。このとき、作成されたマスクデ
ータの先頭のビーノド (マスクデーートビ2・1)は
マスクモードの指定のために使用されろため、必ず“0
”にしておく。次にヘク[ルA(1)  *ベクトルE
(1)のベクトル演算命令が実ゼjさ7Lるか、こごで
使用されるマスクデータの先頭ピノ1は重連のように“
O”になっている。従って、このへ・2トル演算ではメ
インメモリ1−1−のマスクデータが“l”とな−、て
いるヒ゛ソト乙こ)4応したー\クトル要素に対する演
算のみ/1;行なわれる。
A (1)  * B (1)のへクトル演算命令が終
了すると、ソフトウェアC二よりマス、クチ゛−夕の先
頭ヒ゛ノドが′1″Gこされ即らマスクデータレ、ジス
タ4の内容を“l”に変更した後、ベクトルD(1)*
ベクトルE (+)のベクトル演算命令を実行する。従
って、このヘクトル演算ではメインメモリl上のマスク
データが“0”となっているビットに対応したベクトル
要素に対する演算のみが行なわれる。
:発明の効果〕 1:J l二説明5たように、本発明は、マスクモート
ビ、・トを格納するマスクモードビット格納手段と、こ
のマスクモードビット格納手段に格納されたマスクモー
ドビットのイ直に応してマスクデータレジスタにセ、・
トされたマスクデータをそのまま出力!、/或いは反転
じて出力するマスクモード切換手段とを設けたので、マ
スク付ベクトル演算の実行に先立ってマスクモードビッ
ト格納手段の内容を変更するだけで、ヘクトル演算の実
行に使用されるマスクデータを反転することができる。
従って、IF文が成立する場合と不成立の場合とで同一
のマスクデータの使用が可能となり、従来のソフトウェ
アによりマスクデータそのものを反転し或いこま最初か
らマスクデータを作り直す場合に比べ、ヘクトル演算を
高速化できるという効果がある。
【図面の簡単な説明】
第1図は本発明のベクトル演算装置の実施例のブロック
図、 第2図および第3図はFORTRANで記述されたプロ
グラムの1iDoループのそれぞれ異なる例を示す図、 第4図は第2図のプログラムをベクトル演)1令で実行
する場合の動作説明図および、第5図は第3図のプログ
ラムをベクトル演算命令で実行する場合の動作説明図で
ある。 図において、lはメインメモリ、2はメモリアクセス制
御ユニ、ト、3はへクトルデータ先取りユニット、4は
マスクモードレジスタ、5はマスクデータレジスタ、6
.7はへクトルデータバノファ、8はベクトル演算実行
ユニ、ト、9.lOはNOTゲート、11.12はAN
Dゲート、13はORゲート、14はベクトルデータ供
給ユニット、15はマスクモード切換回路である。 本発明の実施例のブロック図 FORTRANに誹るプログラム例を示す間第2図 FORTRANによるプログラム例を示す図第3図

Claims (1)

  1. 【特許請求の範囲】 ベクトルデータの各要素に対応したマスクデータの値に
    よって要素毎にベクトル演算を実行するかしないかを指
    定することができるベクトル演算装置において、 マスクモードビットを格納するマスクモードビット格納
    手段と、 該マスクモードビット格納手段に格納されたマスクモー
    ドビットの値に応じてマスクデータレジスタにセットさ
    れたマスクデータをそのまま出力し或いは反転して出力
    するマスクモード切換手段とを具備したことを特徴とす
    るベクトル演算装置。
JP18473185A 1985-08-21 1985-08-21 ベクトル演算装置 Pending JPS6243775A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18473185A JPS6243775A (ja) 1985-08-21 1985-08-21 ベクトル演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18473185A JPS6243775A (ja) 1985-08-21 1985-08-21 ベクトル演算装置

Publications (1)

Publication Number Publication Date
JPS6243775A true JPS6243775A (ja) 1987-02-25

Family

ID=16158378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18473185A Pending JPS6243775A (ja) 1985-08-21 1985-08-21 ベクトル演算装置

Country Status (1)

Country Link
JP (1) JPS6243775A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033446A (ja) * 2006-07-26 2008-02-14 Nec Computertechno Ltd ベクトル制御回路、ベクトル処理装置、ベクトル制御方法、および、ベクトル制御プログラム。

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033446A (ja) * 2006-07-26 2008-02-14 Nec Computertechno Ltd ベクトル制御回路、ベクトル処理装置、ベクトル制御方法、および、ベクトル制御プログラム。

Similar Documents

Publication Publication Date Title
JPH0414385B2 (ja)
US11830547B2 (en) Reduced instruction set processor based on memristor
JPH03286332A (ja) デジタルデータ処理装置
JPH0343827A (ja) ファジーマイクロコンピュータ
JPS6243775A (ja) ベクトル演算装置
US5812845A (en) Method for generating an object code for a pipeline computer process to reduce swapping instruction set
JP2553200B2 (ja) 情報処理装置
JPH05274143A (ja) 複合条件処理方式
JP2793357B2 (ja) 並列演算装置
JPH01273132A (ja) マイクロプロセッサ
JP2566009B2 (ja) データ処理装置
JPH033047A (ja) 演算機能付きメモリ
JPH05174047A (ja) ベクトル処理装置
JPH01271875A (ja) ベクトル演算制御方式
JPH0546389A (ja) 並列処理装置
JP3441847B2 (ja) データメモリを有するプロセッサ
JP2615746B2 (ja) ビット操作回路
JPS61141077A (ja) ベクトル演算装置
JPS5835660A (ja) マイクロプロセツサ
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH0222417B2 (ja)
JPH0820947B2 (ja) データ処理装置
JPH0553804A (ja) 並列処理装置
JPS6237413B2 (ja)
JPH04191929A (ja) マイクロプロセッサ