JPS6125275A - ベクトル命令処理装置 - Google Patents

ベクトル命令処理装置

Info

Publication number
JPS6125275A
JPS6125275A JP14592884A JP14592884A JPS6125275A JP S6125275 A JPS6125275 A JP S6125275A JP 14592884 A JP14592884 A JP 14592884A JP 14592884 A JP14592884 A JP 14592884A JP S6125275 A JPS6125275 A JP S6125275A
Authority
JP
Japan
Prior art keywords
vector
mask
bit
address
register
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
Application number
JP14592884A
Other languages
English (en)
Other versions
JPH0418344B2 (ja
Inventor
Hajime Fukuzawa
福澤 一
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 JP14592884A priority Critical patent/JPS6125275A/ja
Publication of JPS6125275A publication Critical patent/JPS6125275A/ja
Publication of JPH0418344B2 publication Critical patent/JPH0418344B2/ja
Granted 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の
従来方式とよぶ)。
このような構成では、マスク・ベクトル命令演算実行の
抑止を示しているマスク・ビット、つまシ、論理レベル
“0”のマスク・ビットが多ければ多い程演算装置が演
算を行っていない時間が多くなり、ベクトル命令が終了
するまでの演算時間に無駄な時間が多くなるという問題
を抱えていた。
゛上記問題を解決する為に、従来、マスク・ベクトルを
一定ビット幅に区切シ、その中のマスク・ビットが全て
論理レベル″Onであることを検出したときのみ、対応
するベクトル・オペランドの読出しと無効な演算を飛ば
し、マスク・ベクトルが多くの論理レベル″0”を含む
性格(ス・ぐ−ス性)の強い場合の処理の時間を短縮し
ていた(この方式を以下、第2の従来方式とよぶ)。
〔発明が解決しようとする問題点〕
しかしながら、この第2の従来方式では、検出しようと
している一定個数のマスク・ベクトル中に、一つでも演
算実行の指示を示す論理レベル″1”のマスク・ビット
があυ、他のマスク・ビットの全てが演算実行の抑止を
示す論理レベル″0”であっても、記憶制御装置にベク
トル・オペランドの読出しリクエストを要求し、第1の
従来方式通りの処理を行うために、演算時間に無駄な時
間を多く費やすことになる。
換言すれば、ベクトル命令の処理を短縮するために、一
定個数の演算抑止ビット(論理レベル゛0”のマスク・
ビット)の検出のための一定個数幅を拡大しようとすれ
ばする程、スパーク性の強いマスク・ベクトルでちって
もその中に演算指示ビット(論理レベル″1”のマスク
・ビット)が含まれてしまい、第1の従来方式に戻って
しまう可能性が増大する。逆に、このことを防ぐために
、一定個数の演算抑止ビットの検出のための一定個数幅
を縮小すればする程、ベクトル・オペランドの読出しと
無効な演算を飛ばし無駄な処理の時間を短縮するという
本来の目的を達成できなくなるという欠点をもっていた
〔問題点を解決するための手段〕
本発明によれば、ベクトル要素を記憶する第1の記憶手
段と、マスクビットの列である複数のマスク・ベクトル
データで構成されるマスク・ベクトルを記憶する第2の
記憶手段と、前記マスク・ベクトルデータを前記第2の
記憶手段から読み出す手段と、該読み出されたマスク・
ベクトルデータを一時的に保持する手段と、該マスク・
ベクトルデータの先頭或いは演算指示ビットから次の演
算指示ビット若しくは新たに連続する次のマスク・ベク
トルデータの先頭ビット位置までの距離を算出する手段
と、前記算出された距離に前記第1の記憶手段土のベク
トル要素間距離を乗じてアドレス差分を生成し、該アド
レス差分をベクトル・アドレスに加算することによって
1次に演算すべきベクトル要素のアドレス若しくは前記
新たに連続する次のマスク・ベクトルデータの先頭ビッ
トに対応するベクトル要素のアドレスを得る手段と。
から読み出されたベクトル要素をマスク・ビットa値に
よって演算装置−\の供給を制御するのではなく、ベク
トル要素の読出しリクエストを要求する時点でマスク・
ビットによって示された有効なベクトル要素のみを読み
出すだめのアドレスを生成することによって、演算を抑
止されるベクトル要素の読出しに掛かる時間を削減した
高性能のベクトル命令処理装置が得られる。
〔実施例〕
次に本発明の実施例について図面を参照して詳細に説明
する。
第1図は本発明によるベクトル命令処理装置の一実施例
の構成を示したブロック図である。図において、1はマ
スク・ベクトルが格納されている記憶装置(以下、 M
VMともいう)、2はベクトル・オペランドが格納され
ている記憶装置(以下。
VOMともいう)でア″る。記憶装置1と2は、同一の
記憶装置内にあってもよい。10はマスク・ペランド1
,2及び3に対応するベクトル・アドレス(VHI 、
2及び3)レジスタ、14.15及び16はそれν賛i
””e” 5ンド1,2及び3に対応するベクトル要素
間距離(VII、’2.及び3)レジスタである。
本ベクトル命令処理装置がづクトル命令を受付けると、
当該ベクトル命令処理装置は信号線r、。
〜L6及びセレクタ20〜23を通じてレジスタ10〜
16にそれぞれの初期値を設定する。
MVA 10に初期値が設定されると、信号線L7を通
じてアドレス加算値レジスタ4に初期加算値司”が設定
される。MVA 10の初期値とレジスタ4の初期加算
値″0”がアドレス加算器31で加算されてマスク・ベ
クトルデータのアドレスが得られ、該アドレスに格納さ
れているマスク・ベクトルデータがMVM 1よシ信号
線L8を通じて読み出される。読み出されたマスク・べ
・クトルデータはセレクタ24を通じてマスク・ベクト
ルデー久・レジスタ(以下、 MVRと略称す)3に格
納される。
マスク・ベクトルデータがMVR3に格納されると。
レジスタ4には信号線L7を通じてMVR3のビット長
(n+1)で定まる定数が設定される。以後。
レジスタ4にはMVR3のビット長(n+1)で定まる
定数が保持されるものとする。
第2図は演算指示ビットに対するベクトル要素のアドレ
スの生成手順を詳細に表わしたものである。
一つのベクトル命令内では、ベクトル・アドレス(VH
)に一定のベクトル要素間距離(VI)を加算すると1
次のベクトル要素のベクトル・アドレスが得られる。ベ
クトル・アドレス(VHo)  は、マスク・ベクトル
データの0ビツト目に対応している。
第2図(a)を参照すると、いま、読み出されたビット
長(n+1)のマスク・ベクトルデータの値が。
3ビット、8ビツト、・・・、(n−3)ビット目に演
算指示ビット1”(その個数をmとする)を示しておシ
、他の(n−m+1)個のビット全てが演算抑止ビット
″0”を示している場合が示されている。
このとき、マスク・ベクトルデータの3ビツト目に対応
するベクトル要素のアドレス(VH3)は。
VH3=VHO+3 XVI で得られる。ここで、ベクトル要素間距離(VI )の
乗数3は、該マスク・ベクトルデータの先頭(0ビツト
目)よシ最初の演算指示ビ、ット″1″が見つかるまで
演算抑止ビット″0″の個数をカウントすることで求め
られる。
さらに9次に演算すべきマスク・ベクトルデータの8ビ
ツト目に対応するベクトル要素のアドレス(VH8)を
求めるために、第2図(b)に示されるように、該マス
ク・ベクトルデータを前記乗数に相当する3ビット分だ
け左シフトを行ない、それに伴い3ビツト目の演算指示
ビット目”を反転させて1次に用いるマスク・ベクトル
データとする。
この時、シフト・インに論理レベル″1”を入力させる
。前記シフトを行ったマスク・ベクトルデータに対して
、再び先頭よシ演算指示ビット″’1’75二見つかる
まで演算抑止ビット″0”の個数をカウントする操作を
行うことア乗数5が得られ、前記8ビツト目に対応する
ベクトル要素のアドレス(VHs)は。
VH8’=VH3+5XVI で得られる。
以上の操作をm回繰返し、第2図(C)に示され、るよ
うな、前記(n−3)ビット目の演算指示ビット1”が
反転を受けて先頭のビット位置にシフトされたマスク・
ベクトルデータに対して、前記操作で得られる乗数4を
用いて得られるベクトル要素のアドレス(v Ho ) VHo = VH(H=3.) +4 X V Iは、
新たに連続する次のマスク・ベクトルデータの先頭ビッ
トに対応するベクトル要素のアドレスである。
以上の操作は、各々の操作で得られる乗数を毎回加算し
、得られた加算値結果が前記読み出されたマスク・ベク
トルデータのビット長(n+1 )と一致するまで繰返
される。前記加算値結果が前記ビット長(n+1)と一
致すると、前記操作を終了する。
再び、第1図を参照すると、41はマスク・ベクトルデ
ータの先頭よシ最初の演算指示ビット″1”が見つかる
まで演算抑止ビット″′0”の個数をカウントするプラ
イオリティ・エンコーダ、42はプライオリティ・エン
コーダ41で得られた該個数分だけマスク・ベクトルデ
ータを左シ、フトさせ。
″1nシフト・インを行い先頭ビットを反転させて出力
させる7フト器、33はプライオリティ・エンコーダ4
1で得られた0″の個数を加算する加算器、5は加算器
33で得られた加算値結果を一時的に保持するレジスタ
、43はレジスタ4にセットされたMVR3のビット長
で定まる定数(本例では(n+1))とレジスタ5に一
時的に保持された加算値結果とを比較する比較器、6は
プライオリティ・エンコーダ41で得られた+Onの個
数。
すなわち(VI )の乗数を一時的に保持するレジスタ
である。
プライオリティ・エンコーダ41及゛びシフト器42に
送られる。ゾライオリテ)・エンコーダ41でカウント
された演算抑止ビット″0”の個数は、シフト器42の
シフト量、加算器33の加算値、レジスタ6に保持され
る(VI)の乗数として用いられる。シフト器42で左
シフト及び1”シフト・インされ、先頭ビットを反転さ
せられたマス名・ベクトルデータは信号線L9に表われ
、セレクタ24を通じてMVR3に再セットさせる。ま
た、加算器33に送られた加算値はレジスタ5の初期値
″Onと加算され、加算値結果がレジスタ5に再セット
される。また、レジスタ6に(VI )の乗数がセット
されると、信号線LIOを通じて乗算器30に送られ、
ここでセレクタ25によって選択されたベクトル・オペ
ランドのベクトル要素間距離と乗算されてアドレス差分
が生成される。該アドレス差分は、信号線Lllを通じ
てアドレス加算器32に送られ、ここでセレクタ26に
よって選択された対応するベクトル・オペランドのベク
トル・アドレスと加算されて、演算を行うべきベクトル
要・ 素のアドレスが得られ、’ VOM 2にオ被ラ
ンドリクエストが送出される。と同時に、信号線L12
及びセレクタ21〜23のいずれかのセレクタを通じて
対応するベクトル・オペランドのベクトル・アドレスレ
ジスタの値が更新される。
一方、比較器43でレジスタ4の値とレジスタ5の値の
一致が検出されると、一致信号が信号線L13に表、わ
れ、セレクタ20.24を、制御すると共にレジスタ5
の内容をリセットする。と同時に。
MVA 10のマスク・ベクトルデータアドレスの値が
レジスタ4の定数と加算器31で加算されて。
新たに連続する次のマスク・ベクトルデータのアドレス
が生成され、信号線L14及びセレクタ2゜を通じてM
VA 10の値が更新されると共に、MVMlよシ新た
に連続する次のマスク・ベクトルデータが読み出され、
信号aLs及びセレクタ24を通じてMVR3に格納さ
れる。
〔発明の効果〕
本発明は9以上説明したように、マスク・ビットの値に
よっそ演算実行を指示されたベクトル要素のアドレスの
みを生成することによって、無駄なベクトル要素の読み
出しに掛かる時間を削減できるという効果がある。
【図面の簡単な説明】
第1図は本発明によるベクトル命令処理装置の一実施例
の構成を示したブロック図、第2図線演算指示ビットに
対応するベクトル要素のアドレス生成子1鹸を示す図で
ある。 1.2・・・記憶装置、3・・・マスク・ベクトルデー
タ・レジスタ、4・・・アドレス加算値レジスタ。 5・・・加算結果を保持するレジスタ、6・・・(vr
 )の乗数を保持するレジスタ、10・・マスク・ベク
トルデータ・アドレスレジスタ、11,12.13・・
・ベクトル・アドレス・レジスタ、14.15゜16・
・・ベクトル要素間距離レジスタ、20〜26・・・セ
レクタ、30・・・乗算器、31.32・・・アドレス
加算器、33・・・加算器、41・・・プライオリティ
・エンコーダ。 42・・・シフト器、43・・・比較器、 LO−Li
2・・・信号線。

Claims (1)

    【特許請求の範囲】
  1. 1、ベクトル要素毎にマスク・ビットによってベクトル
    演算の実行を制御するデータ処理装置において、前記ベ
    クトル要素を記憶する第1の記憶手段と、前記マスク・
    ビットの列である複数のマスク・ベクトルデータで構成
    されるマスク・ベクトルを記憶する第2の記憶手段と、
    前記マスク・ベクトルデータを前記第2の記憶手段から
    読み出す手段と、該読み出されたマスク・ベクトルデー
    タを一時的に保持する手段と、該マスク・ベクトルデー
    タの先頭或いは演算指示ビットから次の演算指示ビット
    若しくは新たに連続する次のマスク・ベクトルデータの
    先頭ビット位置までの距離を算出する手段と、前記算出
    された距離に前記第1の記憶手段上のベクトル要素間距
    離を乗じてアドレス差分を生成し、該アドレス差分をベ
    クトル・アドレスに加算することによって、次に演算す
    べきベクトル要素のアドレス若しくは前記新たに連続す
    る次のマスク・ベクトルデータの先頭ビットに対応する
    ベクトル要素のアドレスを得る手段と、前記新たに連続
    する次のマスク・ベクトルデータを読み出す手段とを具
    備することを特徴とするベクトル命令処理装置。
JP14592884A 1984-07-16 1984-07-16 ベクトル命令処理装置 Granted JPS6125275A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14592884A JPS6125275A (ja) 1984-07-16 1984-07-16 ベクトル命令処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14592884A JPS6125275A (ja) 1984-07-16 1984-07-16 ベクトル命令処理装置

Publications (2)

Publication Number Publication Date
JPS6125275A true JPS6125275A (ja) 1986-02-04
JPH0418344B2 JPH0418344B2 (ja) 1992-03-27

Family

ID=15396317

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14592884A Granted JPS6125275A (ja) 1984-07-16 1984-07-16 ベクトル命令処理装置

Country Status (1)

Country Link
JP (1) JPS6125275A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4936157A (en) * 1988-04-22 1990-06-26 Koyo Seiko Co., Ltd. Rack and pinion type steering apparatus
US4939947A (en) * 1988-05-17 1990-07-10 Koyo Seiko Co., Ltd. Rack and pinion type steering apparatus
GB2476800A (en) * 2010-01-07 2011-07-13 Linear Algebra Technologies Ltd Sparse matrix vector multiplier using a bit map of non-zero elements to control scheduling of arithmetic operations

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5165844A (ja) * 1974-12-05 1976-06-07 Fujitsu Ltd Bekutoruenzanshorihoshiki
JPS56164471A (en) * 1980-05-21 1981-12-17 Hitachi Ltd Conditional vector operating control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5165844A (ja) * 1974-12-05 1976-06-07 Fujitsu Ltd Bekutoruenzanshorihoshiki
JPS56164471A (en) * 1980-05-21 1981-12-17 Hitachi Ltd Conditional vector operating control system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4936157A (en) * 1988-04-22 1990-06-26 Koyo Seiko Co., Ltd. Rack and pinion type steering apparatus
US4939947A (en) * 1988-05-17 1990-07-10 Koyo Seiko Co., Ltd. Rack and pinion type steering apparatus
GB2476800A (en) * 2010-01-07 2011-07-13 Linear Algebra Technologies Ltd Sparse matrix vector multiplier using a bit map of non-zero elements to control scheduling of arithmetic operations

Also Published As

Publication number Publication date
JPH0418344B2 (ja) 1992-03-27

Similar Documents

Publication Publication Date Title
JP2678183B2 (ja) デジタルプロセッサ制御装置および実行時記憶割当ての方法
JP2011118743A (ja) ベクトル型計算機及びベクトル型計算機の命令制御方法
JPH07210369A (ja) 並列加算および平均演算を行うための回路およびその方法
JPH0470662B2 (ja)
JPH053032B2 (ja)
GB1022897A (en) Program-controlled electronic digital computers
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPH0667851A (ja) オーバーフロー検出機能付き乗算装置
JP2500098B2 (ja) ディジタル・コンピュ―タ・システム
JP3476960B2 (ja) 算術論理演算装置及び制御方法
KR100222032B1 (ko) 디지탈 신호 처리기에서의 2배 정밀도 곱셈연산 수행방법
JPS6125275A (ja) ベクトル命令処理装置
JPS6227412B2 (ja)
JPH034936B2 (ja)
US5398319A (en) Microprocessor having apparatus for dynamically controlling a kind of operation to be performed by instructions to be executed
GB945773A (en) Variable increment computer
JP2793357B2 (ja) 並列演算装置
US7590677B2 (en) Processor with summation instruction using overflow counter
SU888131A1 (ru) Процессор дл вычислени элементарных функций
KR100246465B1 (ko) 마이크로프로세서 스택 명령어의 수행사이클을 줄이기 위한 장치 및 그 방법
JPH0580690B2 (ja)
JP3441847B2 (ja) データメモリを有するプロセッサ
JPH04195629A (ja) 演算フラグ生成装置
JPH0721796B2 (ja) ベクトル命令処理装置
JPH0260020B2 (ja)