JPH01223564A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH01223564A
JPH01223564A JP4860788A JP4860788A JPH01223564A JP H01223564 A JPH01223564 A JP H01223564A JP 4860788 A JP4860788 A JP 4860788A JP 4860788 A JP4860788 A JP 4860788A JP H01223564 A JPH01223564 A JP H01223564A
Authority
JP
Japan
Prior art keywords
mask
register
data
instruction
vector
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
JP4860788A
Other languages
English (en)
Inventor
Toshiyuki Uda
右田 俊幸
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 JP4860788A priority Critical patent/JPH01223564A/ja
Publication of JPH01223564A publication Critical patent/JPH01223564A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数の配列要素からなる配列データの演算を
実行する情報処理装置に関し、特に、マスク機能付きの
ベクトル演算を実行する情報処理装置に関する。
〔従来の技術〕
従来、科学技術計算においては、配列データを扱う場合
が非常に多く、この配列データに対する演算はしばしば
各々の配列要素に対する同一演算の繰返しとなる。かか
る配列データを高速に扱うための専用の命令である。い
わゆるベクトル命令が従来の情報処理装置に使用されて
いる。
配列データに対する演算では、無条件に全配列要素に対
して演算を行なう場合ばかシでなく、特定の条件を満足
する配列要素に対してのみ演算操作を施す必要がある場
合もある。後者の一例として、第2図に示すような、 
FORTR,AN言語で記述したプログラムがある。
このプログラムの例では、各々N個の配列要素からなる
配列データA(I)、B(I)、C(I)、及びD(I
)と。
別の数値データEとがあり、配列データA(I)のi番
目(i=1〜N)の配列要素が”ゼロ”以上であるとき
は、配列データC(I)と配列データD(I)のそれぞ
れi番目の配列要素の積を計算し、その結果を配列デー
タB(I)のi番目の配列要素とし。
もし配列データA(I)のi番目の配列要素が負の値を
とるときには、配列データB(I)の1番目の配列要素
には固定値Eを入れるという動作を期待している。
上記のような条件付きのベクトル演算を高速に実行する
だめのサポート手段として、マスク制御付ベクトル命令
が一般に使用されている。これは。
第3図のフローチャートに示されるように、まずマスク
生成命令の実行により、第2図の文番号20に対応する
マスク用データを得ることから始められる。すなわち、
 Ai≧0の場合は、対応するマスクMASKiの内容
を1”とし、そうでない場合は′0′とする。一般には
、このマスクMASKi(i=1〜N)のデータは主記
憶上に格納されたシ、するいはベクトルマスクレジスタ
として専用に設けられたレジスタファイル等に格納され
たりする。
次に、上記生成されたマスクMASKiに従って。
マスク付ベクトル乗算命令を実行する。この命令はマス
クMASKi = 1に対応する配列要素iに関しての
み乗算結果を配列データB(I)に格納する動作を行う
。それが終了すると、さらにマスク付ベクトル移送命令
(これは、 MASKi = 0に対応する移送のみ行
う)が実行される。マスクMASKiがO”。
′1”のいずれのときに演算(あるいは移送等)を有効
にするかは、ソフトウェアが命令コードの指定等の方法
で切分は可能となっている。
〔発明が解決しようとする課題〕
上述したような従来のベクトルマスク制御によシ、ルー
プ中に条件文を含むような配列処理のプログラムであっ
ても、ベクトル演算処理装置上での実行比率を高めるこ
とが可能である。しかしながら、たとえば、第2図の文
番号20のIF文の結果生成されるマスクMASKiが
0”と1”とで均等に近い場合もあれば、逆に通常の入
力データであったら、マスクMASKiがたとえば0”
ということが起こり得ない(またはほとんどない)とい
うことがあらかじめ分かっている場合もある。
後者のような場合、無条件に第3図に示した処理を行な
うと、マスク付ベクトル命令(乗算及び移送)のうちの
一方は実質上の演算が無い(あるいはほとんど無い)に
もかかわらず、マスクMASKiの判定動作は実行する
ことになシ、高速にベクトル処理を実施することが出来
ないという欠点がある。
〔課題を解決するための手段〕
本発明による情報処理装置は、複数の配列要素からなる
配列データの演算を処理するためのベクトル命令を実行
する情報処理装置であって9条件によって前記複数の配
列要素の中の特定の配列要素の演算を抑止するためのベ
クトルマスクデータを生成する生成手段と、前記生成さ
れたベクトルマスクデータに従って、マスク指定されて
いる配置において、前記生成されたベクトルマスクデー
タに対して、演算抑止指示が抑止要から抑止不要へある
いは抑止不要から抑止要へと反転する回数の個数の情報
を表示する表示手段を有することを特徴とする。
〔実施例〕
次に本発明について図面を参照して説明する。
第1図は本発明の一実施例による情報処理装置の構成を
示すブロック図である。
マスク生成用オペランドレジスタ1,2にはマスク生成
用の配列データが入力される。第2図のプログラムの例
で言えば、配列データA(I)及び数値データ″O”が
それぞれこのレジスタ1,2にセットされる。命令語レ
ジスタ5にセットされたマスク生成命令は、命令デコー
ダ6でデコードされ。
比較回路3に対して大小比較指示が送出されて。
A(I)≧O”の条件が検出されると1”。
’A(I)(0”の条件が検出されれば′O”が、マス
クデータレジスタ4の最下位ビットに入力されるととも
に、それまでマスクデータレジスタ4に格納されていた
直前の要素までのマスクデータは1ビツトだけ上位ヘシ
フトされる。マスクデータレジスタ4に生成されるデー
タは1ワ一ド分が完成するたびに主記憶(図示せず)へ
格納されていく。
演算処理実行部7は、命令デコーダ6からの制御により
各種演算を実際に実行する。
カウンタレジスタ9は、比較回路3からの出力とマスク
データレジスタ4の最下位ビット出力とを排他的論理和
回路8により論理演算した結果が”1″の場合に限って
更新される。
この構成によれば、ベクトルマスク生成命令の実行開始
時点にカウンタレジスタ9を“0”に初期化しておくと
、命令の実行完了時点ではカランタレ・ゾスタ9は、生
成されたベクトルマスクデータの反転回数を表示してい
ることになる。
たとえば、この反転回数がOであるなら、わざわざマス
ク制御付ベクトル命令でなく1通常のベクトル命令を使
用して演算実行可能であることが判別できる。
クトル命令を無条件に実行することによシ生ずるオーバ
ヘッドを回避することが容易となシ、ベクトル演算の性
能を向上させることが出来る。
〔発明の効果〕
以上説明したように本発明は、ベクトルマスク生成時に
同時にそのマスクデータが反転する回数の情報をも得る
ことにより、無駄なマスクデータのチエツクを無くシ、
ベクトル演算の高速化を実現出来るという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例による情報処理装置の構成を
示すブロック図、第2図はFORTRAN プログラム
の一例を示す図、第3図は第2図のプログラムの実行手
順を説明するフローチャートである。 1.2・・・マスク生成用オペランドレジスタ。 3・・・比較回路、4・・・マスクデータレジスタ、5
・・・命令語レジスタ、6・・・命令デコーダ、7・・
・演算処理実行部、8・・・排他的論理和回路、9・・
・カウンタ反転回数の情報を利用すれば、マスク制御術
ペレジスタ。 第2図 10  Do 100  I=LN 20IF(A(1)、GE、0)THEN30  B(
I) = C(1)木D(I)40  ELSE 50  B(T−)=E +00  Co(へ)TINUE 第3図

Claims (1)

    【特許請求の範囲】
  1. 1、複数の配列要素からなる配列データの演算を処理す
    るためのベクトル命令を実行する情報処理装置であって
    、条件によって前記複数の配列要素の中の特定の配列要
    素の演算を抑止するためのベクトルマスクデータを生成
    する生成手段と、前記生成されたベクトルマスクデータ
    に従って、マスク指定されている配列要素以外の配列要
    素についてのみ、演算処理を実行する演算処理実行手段
    とを有する情報処理装置において、前記生成されたベク
    トルマスクデータに対して、演算抑止指示が反転する回
    数の個数の情報を表示する表示手段を有することを特徴
    とする情報処理装置。
JP4860788A 1988-03-03 1988-03-03 情報処理装置 Pending JPH01223564A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4860788A JPH01223564A (ja) 1988-03-03 1988-03-03 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4860788A JPH01223564A (ja) 1988-03-03 1988-03-03 情報処理装置

Publications (1)

Publication Number Publication Date
JPH01223564A true JPH01223564A (ja) 1989-09-06

Family

ID=12808097

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4860788A Pending JPH01223564A (ja) 1988-03-03 1988-03-03 情報処理装置

Country Status (1)

Country Link
JP (1) JPH01223564A (ja)

Similar Documents

Publication Publication Date Title
JP2645669B2 (ja) データ処理システム
JPH07248897A (ja) コンピュータ・システムにおける例外からの回復方法、及びそのための装置
JPH0756892A (ja) マスク付きベクトル演算器を持つ計算機
US4028670A (en) Fetch instruction for operand address calculation
JPH034936B2 (ja)
JPH01223564A (ja) 情報処理装置
JPH0560629B2 (ja)
JP2553200B2 (ja) 情報処理装置
JPS58178464A (ja) 並列演算処理装置
US7107478B2 (en) Data processing system having a Cartesian Controller
JPH01223563A (ja) 情報処理装置
JPH07219766A (ja) 演算処理装置
JPH01223565A (ja) 情報処理装置
JPH0222413B2 (ja)
JPH06162067A (ja) ベクトル命令制御装置および制御方法
JPH0259961A (ja) 情報処理装置
JPH0234058B2 (ja)
JPH05250156A (ja) Riscプロセッサ
JPS62293432A (ja) 情報処理装置
JPH02128223A (ja) 演算処理装置
JPH01319863A (ja) ベクトルマスク制御方式
JPH02100173A (ja) ベクトル処理装置
JPS62251930A (ja) 情報処理装置
JPH01241627A (ja) マイクロプログラム制御装置
JP2001147914A (ja) ベクトル演算装置