JPS617976A - ベクトル演算処理装置 - Google Patents
ベクトル演算処理装置Info
- Publication number
- JPS617976A JPS617976A JP12865384A JP12865384A JPS617976A JP S617976 A JPS617976 A JP S617976A JP 12865384 A JP12865384 A JP 12865384A JP 12865384 A JP12865384 A JP 12865384A JP S617976 A JPS617976 A JP S617976A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- zero
- register
- zero element
- arithmetic
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector 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
【発明の詳細な説明】
〔発明の技術分野〕
この発明は、ベクトル演算を高速に処理するベクトル演
算処理装置に関するものである。
算処理装置に関するものである。
従来仁の稀の装置としては、情報処理学会論文誌にr汎
用計算機のための条件制御ベクトル演算万式J(198
3年7月N124P531〜P541)が紹介さnてい
る。そこで従来のベクトル演算処理装置を第1図に示す
。図において、1は命令。
用計算機のための条件制御ベクトル演算万式J(198
3年7月N124P531〜P541)が紹介さnてい
る。そこで従来のベクトル演算処理装置を第1図に示す
。図において、1は命令。
2はベクトル情報レジスタ、3はベクトル間接アドレス
を格納するベクトル間接アドレスレジスタ。
を格納するベクトル間接アドレスレジスタ。
4はオペランド・ベクトルのアドレスを格納するベクト
ル指定アドレスレ1ジスタ、six制御ベクトル・アド
レスを格納する制御ベクトルアドレスレジスタ、6は制
御ベクトルを格納する制御ベクトルレジスタ、7a、7
bt;tオペランド・ベクトルを保持するベクトル・レ
ジスタ、8は演算部、さらに命令1の1aはオペレーシ
ョン壷コー)”、1bはベクトル情報レジスタ20指定
部、1cはベクトル間接アドレス・レジスタ3の指定部
、1d[オペレーション・コード1&の拡張部、2at
!演算開始要素番号格納レジスタ、2bはベクトル長格
納レジスタ、4a、4bは各々ベクトル・レジスタ7a
、7bを指定するアドレスを格納したベクトルレジスタ
のアドレス格納レジスタである。
ル指定アドレスレ1ジスタ、six制御ベクトル・アド
レスを格納する制御ベクトルアドレスレジスタ、6は制
御ベクトルを格納する制御ベクトルレジスタ、7a、7
bt;tオペランド・ベクトルを保持するベクトル・レ
ジスタ、8は演算部、さらに命令1の1aはオペレーシ
ョン壷コー)”、1bはベクトル情報レジスタ20指定
部、1cはベクトル間接アドレス・レジスタ3の指定部
、1d[オペレーション・コード1&の拡張部、2at
!演算開始要素番号格納レジスタ、2bはベクトル長格
納レジスタ、4a、4bは各々ベクトル・レジスタ7a
、7bを指定するアドレスを格納したベクトルレジスタ
のアドレス格納レジスタである。
次に第1図の動作について説明する。今、命令1がCP
Uに読み込1れると演算対象となるベクトル・オペラン
ドのベクトル長と、演算開始の要素番号を格納するベク
トル情報レジスタ2を命令1のベクトル情報レジスタの
指定部1bで指示し。
Uに読み込1れると演算対象となるベクトル・オペラン
ドのベクトル長と、演算開始の要素番号を格納するベク
トル情報レジスタ2を命令1のベクトル情報レジスタの
指定部1bで指示し。
ベクトル間接アドレスレジスタの指示部1Cでベクトル
間接アドレスレジスタ3を参服して、ベクトル指示アド
レスレジスタ4を指示する。すると。
間接アドレスレジスタ3を参服して、ベクトル指示アド
レスレジスタ4を指示する。すると。
ベクトルレジスタのアドレス格納レジスタ4a。
4bでは演算を施すベクトルのアドレス指示がなさn、
各々のベクトル・レジスタ7a、7bにベクトル指定の
アドレスがロードされる。かくして。
各々のベクトル・レジスタ7a、7bにベクトル指定の
アドレスがロードされる。かくして。
ベクトル指定アドレスレジスタ4工クベクトル指足アド
レスが読みこ1れると同時に制御ベクトルアドレスレジ
スタ5工り、制御ベクトル−アドレスが読みこ’Ff’
L、制御ベクトル・レジスタ6を指示する。この制御ベ
クトル・レジスタ6の各ビットの’o”か111によっ
て、演算部8にそのビットに対応するベクトルの要素演
算を実行するか否かを判断する。演算部8で実行された
結果は。
レスが読みこ1れると同時に制御ベクトルアドレスレジ
スタ5工り、制御ベクトル−アドレスが読みこ’Ff’
L、制御ベクトル・レジスタ6を指示する。この制御ベ
クトル・レジスタ6の各ビットの’o”か111によっ
て、演算部8にそのビットに対応するベクトルの要素演
算を実行するか否かを判断する。演算部8で実行された
結果は。
再びベクトルレジスタ7bに帰還し格納される。
従来のベクトル演算処理装置は以上のように構成さnて
いるので、プログラム・コンパイル時に制御ベクトル・
レジスタ6をセットし、プログラムの内容から演算の実
行、非実行を制御している。
いるので、プログラム・コンパイル時に制御ベクトル・
レジスタ6をセットし、プログラムの内容から演算の実
行、非実行を制御している。
このため、演算するオペランドであるペクト/I/要素
が101か11”かによって演算の実行、非実行は判定
できず、′Ol要素を多く含むベクトルや行列の演算に
ついても、一般のベクトルや行列演算と同じ処理時間が
かかり命令の実行が遅くなるという欠点があった。
が101か11”かによって演算の実行、非実行は判定
できず、′Ol要素を多く含むベクトルや行列の演算に
ついても、一般のベクトルや行列演算と同じ処理時間が
かかり命令の実行が遅くなるという欠点があった。
で発明の概要〕
この発明は上記の工うな従来のものの欠点を除去するた
めになさf′したもので、零要素を多く含むベクトルや
行列から非零要素のみを自動抽出し演算実行するように
し零要素を含むベクトルや行列の演算を高速で処理でき
るベクトル演算処理装置を提供することを目的としてい
る。
めになさf′したもので、零要素を多く含むベクトルや
行列から非零要素のみを自動抽出し演算実行するように
し零要素を含むベクトルや行列の演算を高速で処理でき
るベクトル演算処理装置を提供することを目的としてい
る。
以下、この発明の一実施例を図について説明する。図中
第1図と同一の部分は同一の符号をもって図示した第2
図において、12はベクトル・レジスタ7aの各要素が
零か非零かを判別する非零要素判別器、13は演算を行
う非零要素に優先順位をつける優先順位発生器、14a
、14bは前記優先順位発生器13からの指示で、ベク
トル・レジスタ7a、7bから非零要素を選ぶ非零要素
セレクタ、15はベクトル情報レジスタと制御レジスタ
の制御部である。
第1図と同一の部分は同一の符号をもって図示した第2
図において、12はベクトル・レジスタ7aの各要素が
零か非零かを判別する非零要素判別器、13は演算を行
う非零要素に優先順位をつける優先順位発生器、14a
、14bは前記優先順位発生器13からの指示で、ベク
トル・レジスタ7a、7bから非零要素を選ぶ非零要素
セレクタ、15はベクトル情報レジスタと制御レジスタ
の制御部である。
次に第2図の動作について説明する。い1.ベクトル・
レジスタ7a、7bに零要素を含むオペランド・ベクト
ルが格納さnているとする。仄に非零要素判別器12で
そのオペランド・ベクトルの各要素が零か非零かを判別
し、さらに引続いて優先順位発生器13で演算を行う非
零要素に優先順位をつけ、その順位づけされた情報な非
零要素セレクタ14a、14bに転送し、遂久、オペラ
ンド・ベクトルから演算を行う要素を選び、演算部8で
演算を行う。また、優先順位発生器13で得らf′した
情報は、非零要素セレクタ14a、 14bに転送され
ると同時に、ベクトル情報レジスタ2゜制御ベクトルレ
ジスタ6の制御を行うベクトル情報レジスタと制御レジ
スタの制御部15に併せて転送し、零要素に対応する演
算を削除する。このようにして演算部8による結果は非
零要素に対応する要素のみをベクトル・レジスタ7bに
格納する。このとき演算器8が、7IO減算器である場
合にはベクトルレジスタ7bは、演算前のデータの土か
ら演算結果を書き込み、ya算器が乗除算器である場合
にはベクトルレジスタ7bの零要素に対応するものはリ
セットし、非零要素に対応するものには、演算結果を書
き込む。上述の制御動作の具体例を第3図で説明する。
レジスタ7a、7bに零要素を含むオペランド・ベクト
ルが格納さnているとする。仄に非零要素判別器12で
そのオペランド・ベクトルの各要素が零か非零かを判別
し、さらに引続いて優先順位発生器13で演算を行う非
零要素に優先順位をつけ、その順位づけされた情報な非
零要素セレクタ14a、14bに転送し、遂久、オペラ
ンド・ベクトルから演算を行う要素を選び、演算部8で
演算を行う。また、優先順位発生器13で得らf′した
情報は、非零要素セレクタ14a、 14bに転送され
ると同時に、ベクトル情報レジスタ2゜制御ベクトルレ
ジスタ6の制御を行うベクトル情報レジスタと制御レジ
スタの制御部15に併せて転送し、零要素に対応する演
算を削除する。このようにして演算部8による結果は非
零要素に対応する要素のみをベクトル・レジスタ7bに
格納する。このとき演算器8が、7IO減算器である場
合にはベクトルレジスタ7bは、演算前のデータの土か
ら演算結果を書き込み、ya算器が乗除算器である場合
にはベクトルレジスタ7bの零要素に対応するものはリ
セットし、非零要素に対応するものには、演算結果を書
き込む。上述の制御動作の具体例を第3図で説明する。
演算前のオペランド・ベクトル010.a31’aql
o101a7とbl。
o101a7とbl。
b2+b5+b4+b5+b6+137かベクトル−レ
ジスタ7a、7bに保持さ扛ているとする。このとき、
非零要素判別器12ば、ベクトル・レジスタ7aから非
零要素& 5 + a 4 + 87を見い出し、優先
順位発生器13でa3.a4.a7の順に演算する順番
をつけ、非零要素セレクタ14a。
ジスタ7a、7bに保持さ扛ているとする。このとき、
非零要素判別器12ば、ベクトル・レジスタ7aから非
零要素& 5 + a 4 + 87を見い出し、優先
順位発生器13でa3.a4.a7の順に演算する順番
をつけ、非零要素セレクタ14a。
14b、ベクトル情報レジスタ2及び制御ベクトルレジ
スタ6のベクトル情報レジスタと制御レジスタの制御部
15に情報を転送する。非零要素セレクタ14a 、
14bでは優先順位発生器13からの情報でオペランド
骨ベクトルa、とb 3 、 a4とb 及びa7と
b7とを選択する。そして仄4 。
スタ6のベクトル情報レジスタと制御レジスタの制御部
15に情報を転送する。非零要素セレクタ14a 、
14bでは優先順位発生器13からの情報でオペランド
骨ベクトルa、とb 3 、 a4とb 及びa7と
b7とを選択する。そして仄4 。
に演算部8が加減算器で加算を行うとき、演算結果ニ、
ベクトル・レジスタ7bのその要素に対応する場所に臀
き込1nる。演算部8が乗算器で乗算を行う場合には、
ベクトルレジスタ7aの零要素に対応するベクトル・レ
ジスタrbの要素b□。
ベクトル・レジスタ7bのその要素に対応する場所に臀
き込1nる。演算部8が乗算器で乗算を行う場合には、
ベクトルレジスタ7aの零要素に対応するベクトル・レ
ジスタrbの要素b□。
b2.b、、b6Hリセットさn、非零要素に対応する
場所に演算結果が書き込1f’Lる。
場所に演算結果が書き込1f’Lる。
この制御動作によって、むだな演算である0十b 1
、o+b 2 Ho+b 5 Ho+b 6やo *
b I HO*t12+O*b6.O*b7t!演算を
実行せずに必要とする演算のみを実行し処理時間の短縮
を自動的に図る。
、o+b 2 Ho+b 5 Ho+b 6やo *
b I HO*t12+O*b6.O*b7t!演算を
実行せずに必要とする演算のみを実行し処理時間の短縮
を自動的に図る。
なお、上記実施例ではベクトルレジスタ7aにだけ非零
要素判別器12と優先順位発生器13を信号転送可能に
構成したが、ベクトルレジスタ7bにつけて構成するよ
うにしてもよく、この場合には、若干の制御部を増やす
ことにエフ、さらに高速の演算が可能となる。さらに、
応用例として。
要素判別器12と優先順位発生器13を信号転送可能に
構成したが、ベクトルレジスタ7bにつけて構成するよ
うにしてもよく、この場合には、若干の制御部を増やす
ことにエフ、さらに高速の演算が可能となる。さらに、
応用例として。
ベクトル指定アドレスレジスタからベクトルレジスタ7
aヘロードされる前に1ワードのレジスタをベクトルレ
ジスタ7aの前段に設け、その1ワードのレジスタの内
容が零か非零かでベクトルレジスタへのロードの実行非
実行を決足するようにしてもよく、この時にはエフ少な
い非零要素判別器12で同じ動作が可能であり、ベクト
ルレジスタの容量の削減IC有効である。
aヘロードされる前に1ワードのレジスタをベクトルレ
ジスタ7aの前段に設け、その1ワードのレジスタの内
容が零か非零かでベクトルレジスタへのロードの実行非
実行を決足するようにしてもよく、この時にはエフ少な
い非零要素判別器12で同じ動作が可能であり、ベクト
ルレジスタの容量の削減IC有効である。
以上の工うに、この発明に工nば零要素を多く含むベク
トルや行列から非零要素のみを非零要素セレクタによっ
て自動的に抽出し、演算部において自動的に演算を行う
二うにレジスタを構成したので、大幅に演算時間の短縮
が可能になる効果がある。
トルや行列から非零要素のみを非零要素セレクタによっ
て自動的に抽出し、演算部において自動的に演算を行う
二うにレジスタを構成したので、大幅に演算時間の短縮
が可能になる効果がある。
第1図に従来のベクトル演算制御装置を示すレジスタの
構成図、第2図はこの発明の一実施例によるゼロ要素を
含むベクトル、行列演算を実行するベクトル演算制御装
置のレジスタの構成図、第3図はこの発明の装置による
演算の具体例を示す演算順序図である。 1・・・命令、2・・・ベクトル情報レジスタ、3・・
・ベクトル間接アドレスレ7スタ、4・・・ベクトル指
定アドレスレジスタ、5・・・制御ヘクトルアトレスレ
ジスタ、6・・・制御ベクトルレジスタ、7a、7b・
・・ベクトルレジスタ、12・・・非零要素判別器、1
3・・・優先順位発生器、14a、14b・・・非零要
素セレクタ、15・・・ベクトル情報レジスタと制御レ
ジスタの制御部。
構成図、第2図はこの発明の一実施例によるゼロ要素を
含むベクトル、行列演算を実行するベクトル演算制御装
置のレジスタの構成図、第3図はこの発明の装置による
演算の具体例を示す演算順序図である。 1・・・命令、2・・・ベクトル情報レジスタ、3・・
・ベクトル間接アドレスレ7スタ、4・・・ベクトル指
定アドレスレジスタ、5・・・制御ヘクトルアトレスレ
ジスタ、6・・・制御ベクトルレジスタ、7a、7b・
・・ベクトルレジスタ、12・・・非零要素判別器、1
3・・・優先順位発生器、14a、14b・・・非零要
素セレクタ、15・・・ベクトル情報レジスタと制御レ
ジスタの制御部。
Claims (1)
- ベクトル演算時にベクトルの零要素を判別する非零要素
判別器と、演算部において演算処理を行う非零要素ベク
トルに優先順位を施す優先順位発生器と、前記非零要素
判別器及び優先順位発生器から転送されるベクトル出力
信号に依つて、非零要素を選択する非零要素セレクタと
を有し、前記非零要素セレクタによつて零要素の演算を
除外することにより、零要素を多く含むベクトル及び行
列の演算を高速に実行できるように制御したことを特徴
とするベクトル演算処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12865384A JPS617976A (ja) | 1984-06-22 | 1984-06-22 | ベクトル演算処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12865384A JPS617976A (ja) | 1984-06-22 | 1984-06-22 | ベクトル演算処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS617976A true JPS617976A (ja) | 1986-01-14 |
Family
ID=14990125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12865384A Pending JPS617976A (ja) | 1984-06-22 | 1984-06-22 | ベクトル演算処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS617976A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03166824A (ja) * | 1989-11-27 | 1991-07-18 | Hitachi Ltd | 復号化方式 |
JP2010504594A (ja) * | 2006-09-22 | 2010-02-12 | インテル コーポレイション | 文字列を処理するための命令及び論理回路 |
-
1984
- 1984-06-22 JP JP12865384A patent/JPS617976A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03166824A (ja) * | 1989-11-27 | 1991-07-18 | Hitachi Ltd | 復号化方式 |
JP2010504594A (ja) * | 2006-09-22 | 2010-02-12 | インテル コーポレイション | 文字列を処理するための命令及び論理回路 |
JP2014063535A (ja) * | 2006-09-22 | 2014-04-10 | Intel Corp | 文字列を処理するための命令及び論理回路 |
US9069547B2 (en) | 2006-09-22 | 2015-06-30 | Intel Corporation | Instruction and logic for processing text strings |
US9632784B2 (en) | 2006-09-22 | 2017-04-25 | Intel Corporation | Instruction and logic for processing text strings |
US9645821B2 (en) | 2006-09-22 | 2017-05-09 | Intel Corporation | Instruction and logic for processing text strings |
US9804848B2 (en) | 2006-09-22 | 2017-10-31 | Intel Corporation | Instruction and logic for processing text strings |
US10261795B2 (en) | 2006-09-22 | 2019-04-16 | Intel Corporation | Instruction and logic for processing text strings |
US10929131B2 (en) | 2006-09-22 | 2021-02-23 | Intel Corporation | Instruction and logic for processing text strings |
US11023236B2 (en) | 2006-09-22 | 2021-06-01 | Intel Corporation | Instruction and logic for processing text strings |
US11029955B2 (en) | 2006-09-22 | 2021-06-08 | Intel Corporation | Instruction and logic for processing text strings |
JP2022050519A (ja) * | 2006-09-22 | 2022-03-30 | インテル コーポレイション | プロセッサ、システム及び方法 |
US11537398B2 (en) | 2006-09-22 | 2022-12-27 | Intel Corporation | Instruction and logic for processing text strings |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2539199B2 (ja) | デジタルプロセッサ制御装置 | |
US4745547A (en) | Vector processing | |
JPS58151655A (ja) | 情報処理装置 | |
JPH0242569A (ja) | ベクター処理システムに用いる文脈スイッチング方法及び装置 | |
JPS5852265B2 (ja) | デ−タ処理装置 | |
JPH0412503B2 (ja) | ||
JPS617976A (ja) | ベクトル演算処理装置 | |
US4816992A (en) | Method of operating a data processing system in response to an interrupt | |
JPS60178580A (ja) | 命令制御方式 | |
EP0297895A2 (en) | Apparatus and method using lockout for synchronization of access to main memory signal groups in a multiprocessor data processing system | |
JPH0222413B2 (ja) | ||
JPH0544049B2 (ja) | ||
JPS6125166B2 (ja) | ||
JPH07110769A (ja) | Vliw型計算機 | |
JPS6115453B2 (ja) | ||
JP2583614B2 (ja) | ベクトル演算装置 | |
JP2883489B2 (ja) | 命令処理装置 | |
JPS62210539A (ja) | 電子計算機装置 | |
JPH02214938A (ja) | データ処理装置 | |
JPS6119065B2 (ja) | ||
JPS6235694B2 (ja) | ||
JPS6057440A (ja) | 情報処理装置 | |
JPS59189452A (ja) | デ−タ処理装置用キユ−構造 | |
JPS6028014B2 (ja) | マイクロプロセツサ | |
JPS6337412B2 (ja) |