JPH01223565A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH01223565A
JPH01223565A JP4860888A JP4860888A JPH01223565A JP H01223565 A JPH01223565 A JP H01223565A JP 4860888 A JP4860888 A JP 4860888A JP 4860888 A JP4860888 A JP 4860888A JP H01223565 A JPH01223565 A JP H01223565A
Authority
JP
Japan
Prior art keywords
mask
register
data
array
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
JP4860888A
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 JP4860888A priority Critical patent/JPH01223565A/ja
Publication of JPH01223565A publication Critical patent/JPH01223565A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

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

Claims (1)

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

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

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

Family

ID=12808123

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JPH01223565A (ja)

Similar Documents

Publication Publication Date Title
US4879676A (en) Method and apparatus for precise floating point exceptions
US4539635A (en) Pipelined digital processor arranged for conditional operation
JPH0223431A (ja) 割込み処理システム
JPH0756892A (ja) マスク付きベクトル演算器を持つ計算機
US5390306A (en) Pipeline processing system and microprocessor using the system
JPH01223565A (ja) 情報処理装置
JPH0560629B2 (ja)
JPH07219766A (ja) 演算処理装置
JPH01223563A (ja) 情報処理装置
JPH01223564A (ja) 情報処理装置
JPH0616287B2 (ja) マスク付きベクトル演算処理装置
JPS60108973A (ja) 配列要素の最小値および最小要素の要素番号を求める方法
JPH06162067A (ja) ベクトル命令制御装置および制御方法
JPH0259961A (ja) 情報処理装置
JPS5999552A (ja) マイクロコンピユ−タ
JPH01271875A (ja) ベクトル演算制御方式
JPS5925264B2 (ja) ベクトル命令処理方式
JPH0222417B2 (ja)
JPH0398163A (ja) ベクトルデータ処理装置
JPH01319863A (ja) ベクトルマスク制御方式
JPH05250156A (ja) Riscプロセッサ
JPS60220468A (ja) ベクトル演算制御方式
JPH0234058B2 (ja)
JPS61143850A (ja) 処理装置
JPH02128223A (ja) 演算処理装置