JPS6027070A - ベクトル処理装置 - Google Patents
ベクトル処理装置Info
- Publication number
- JPS6027070A JPS6027070A JP13540283A JP13540283A JPS6027070A JP S6027070 A JPS6027070 A JP S6027070A JP 13540283 A JP13540283 A JP 13540283A JP 13540283 A JP13540283 A JP 13540283A JP S6027070 A JPS6027070 A JP S6027070A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- error
- vector
- arithmetic error
- 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.)
- Granted
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
【発明の詳細な説明】
〔発明の技術分野〕
この発明は第1のベクトル・データと第2のベクトル・
データとの間で対応する要素毎゛に順次指定された演算
を行なうベクトル処理装置に関する。
データとの間で対応する要素毎゛に順次指定された演算
を行なうベクトル処理装置に関する。
この種のベクトル処理装置では、各要素毎の演算結果は
ベクトル・レジスタ(ベクトル・レジスタ群)に一時格
納される。そして各要素毎−の演算がすべて終了した後
、ベクトル・レジスタに格納された演算結果が主メモリ
にストアされる。また、この種のベクトル処理装置では
、ベクトル処理中に演算エラーが発生すると、その時点
で割込みが入シ、演算が中断される。この場合、上述し
たように、すでにめられている演算結果はベクトル・レ
ジスタの中にのみ存在し、主メモリにはストアされてい
ないため問題であった。ところで、要素数が多動あシ、
全要素の演算結果がベクトル・レジスタに格納できない
場合にはベクトル・データ(プレイ・オペランド・デー
タ)を複数ブロックに分けてベクトル処理が行なわれる
。この場合にも、演算ニジ−が発生して演算が中断する
と、該当ブロックの結果は主メモリにストアされないこ
とになる。
ベクトル・レジスタ(ベクトル・レジスタ群)に一時格
納される。そして各要素毎−の演算がすべて終了した後
、ベクトル・レジスタに格納された演算結果が主メモリ
にストアされる。また、この種のベクトル処理装置では
、ベクトル処理中に演算エラーが発生すると、その時点
で割込みが入シ、演算が中断される。この場合、上述し
たように、すでにめられている演算結果はベクトル・レ
ジスタの中にのみ存在し、主メモリにはストアされてい
ないため問題であった。ところで、要素数が多動あシ、
全要素の演算結果がベクトル・レジスタに格納できない
場合にはベクトル・データ(プレイ・オペランド・デー
タ)を複数ブロックに分けてベクトル処理が行なわれる
。この場合にも、演算ニジ−が発生して演算が中断する
と、該当ブロックの結果は主メモリにストアされないこ
とになる。
そこで、この問題を解消するために、演算エラー割込み
の後、演算エラーが発生した次のステップから演算を再
開することが考えられる。
の後、演算エラーが発生した次のステップから演算を再
開することが考えられる。
しかし、これを実現するためには繁雑な手続きが必−要
となるので実用性に乏しかった。これは、処理の高速比
のために、ベクトル処理が演算パイプライン制御にニジ
行なわれていることによる。
となるので実用性に乏しかった。これは、処理の高速比
のために、ベクトル処理が演算パイプライン制御にニジ
行なわれていることによる。
この発明は上記亭(・rlに鑑みでなされたものでその
目的は、ベクトル処理の際に演算エラーが発生しても当
該演算エラー発生以後の演算も簡単に実行できるベクト
ル処理装置を提供することにある。
目的は、ベクトル処理の際に演算エラーが発生しても当
該演算エラー発生以後の演算も簡単に実行できるベクト
ル処理装置を提供することにある。
〔発明の概要J
この発明はマイクロブ日グラム制御方式のベクトル処理
装置において、フリップフロップの出力と演算器からの
演算エラー信号とが”供給されるゲート回路から演算エ
ラー割込みが発生した場合に、当該割込みに応じて上記
フリップフロップをセットしてゲート回路からの以降の
演算エラー割込みの発生を禁止するようにしている。ま
た、この発明は、演算エラー割込みに応じて該当するベ
クトル・データの要素番号を保持し、かつ演算エラー割
込みの有無を示すフラグを笠で、ベクトル処理を屓初か
ら再実行するようにしている。こうすることに↓す、再
び同一要素での演算で演算エラーが発生しても演算エラ
ー割込みが発生しないため、最後までベクトル処理が行
なえる。また、ベクトル処理終了時に上記フラグを参照
し、当該フラグが立っていgは上記保持しておいた要素
番号に基づいてエラー処理が行なえる。
装置において、フリップフロップの出力と演算器からの
演算エラー信号とが”供給されるゲート回路から演算エ
ラー割込みが発生した場合に、当該割込みに応じて上記
フリップフロップをセットしてゲート回路からの以降の
演算エラー割込みの発生を禁止するようにしている。ま
た、この発明は、演算エラー割込みに応じて該当するベ
クトル・データの要素番号を保持し、かつ演算エラー割
込みの有無を示すフラグを笠で、ベクトル処理を屓初か
ら再実行するようにしている。こうすることに↓す、再
び同一要素での演算で演算エラーが発生しても演算エラ
ー割込みが発生しないため、最後までベクトル処理が行
なえる。また、ベクトル処理終了時に上記フラグを参照
し、当該フラグが立っていgは上記保持しておいた要素
番号に基づいてエラー処理が行なえる。
第1図はこの発明の一実施例に係るベクトル処理装置の
椛成を示す。符号11で示される主メモリには例えば2
段のベクトル・デ〜り(アレイ・オペランド・データ)
A、13が格納されている。ベクトル・データAはaO
palsa2v ・a で示す各要素(エレメント)の
列である。ベクトル・データBはl)O*blyb7.
・・・bnで示す各要素の列である0ベクトル処理に際
し、ベクトル・データA、Hのいずれか一方、例えばベ
クトル・データAが主メモリ11から読み出され、ベク
トル・レジスタ12に転送される。そして、ベクトル・
データーAの各要!’+ ao + al v a2
+・°anが順次ベクトル・レジスタ12に格納される
。次にベクトル・レジスタ12に格納されたベクトル・
データAと、主メモリ11に格納されているベクトル・
データBとが一要素ずつ説み出され、演算器13に供給
される。しかして、演算器13では各要素毎の演算、例
えば加算が行なわれる。
椛成を示す。符号11で示される主メモリには例えば2
段のベクトル・デ〜り(アレイ・オペランド・データ)
A、13が格納されている。ベクトル・データAはaO
palsa2v ・a で示す各要素(エレメント)の
列である。ベクトル・データBはl)O*blyb7.
・・・bnで示す各要素の列である0ベクトル処理に際
し、ベクトル・データA、Hのいずれか一方、例えばベ
クトル・データAが主メモリ11から読み出され、ベク
トル・レジスタ12に転送される。そして、ベクトル・
データーAの各要!’+ ao + al v a2
+・°anが順次ベクトル・レジスタ12に格納される
。次にベクトル・レジスタ12に格納されたベクトル・
データAと、主メモリ11に格納されているベクトル・
データBとが一要素ずつ説み出され、演算器13に供給
される。しかして、演算器13では各要素毎の演算、例
えば加算が行なわれる。
これら各要素毎の演算(加算)結果
co (=ao +b0) t CI (”lL+ 十
b+ ) +−Cn(−=an+bn)は、その都度ベ
クトル・レジスタ12の(ベクトル・データ人の)要素
読み出し済みのレジスタ位置に書き込まれる。“そして
、全要素の演算終了後に、ベクトル・レジスタ12に書
き込まれていた演算結果、すなわち結果の要素列COv
CI *・・・Cnからなるデータ(アレイ・データ
)Cが主メモリ11に転送され、当該主メモリ11にス
トアされる。これによシベクトル処理が終了となる0こ
れら一連の処理の制御は制御装置14内のマイクロプロ
グラム制御部15によ多制御ライン16〜18を介して
行なわれる。なお、ベクトル・レジスタをソース・レジ
スタおよびデスティネーション・レジスタとして兼用す
るベクトル処理装置については、昭和58年3月23日
提出の特願昭58−48134号の明細書に詳述されて
いるO上述のベクトル演算においC1例えばオーバフロ
ーなどの演算エラーが発生するのは、演算器13で演算
が行なわれているときである。演算エラーが発生すると
演算器13から演算器2−信号ERRORが出力される
。この信号ERRORは第2図に示すように制御装置1
4内のゲート回路、例えばアンドゲート21の一方の入
力端子に導かれる。アンドゲート2ノの他方の入力端子
には演算エラー割込み禁止用の7リツプフロツブ(以下
、 F/F と称する)22の百出力が導かれる。今、
F/F22がリセットしているものとすると、同出力は
論理at 1nとなっている。この場合、アンドゲート
2ノはQ −” 1 ”の期間中に入力される演算エラ
ー信号ERRORを演算器2−割込み信号INTとして
マイクロプログ2ム制御部15に出力する。これによυ
マイクロプログラムの分岐が強制的に行なわれ、マイク
ロプログラム制御部15は以下に示すエラー5処理を開
始する。なお、この時点では、演算結果Cは途中までし
かめられていない。勿論、演算結果Cの主メモリ1ノへ
のストア処理も行なわれていない。
b+ ) +−Cn(−=an+bn)は、その都度ベ
クトル・レジスタ12の(ベクトル・データ人の)要素
読み出し済みのレジスタ位置に書き込まれる。“そして
、全要素の演算終了後に、ベクトル・レジスタ12に書
き込まれていた演算結果、すなわち結果の要素列COv
CI *・・・Cnからなるデータ(アレイ・データ
)Cが主メモリ11に転送され、当該主メモリ11にス
トアされる。これによシベクトル処理が終了となる0こ
れら一連の処理の制御は制御装置14内のマイクロプロ
グラム制御部15によ多制御ライン16〜18を介して
行なわれる。なお、ベクトル・レジスタをソース・レジ
スタおよびデスティネーション・レジスタとして兼用す
るベクトル処理装置については、昭和58年3月23日
提出の特願昭58−48134号の明細書に詳述されて
いるO上述のベクトル演算においC1例えばオーバフロ
ーなどの演算エラーが発生するのは、演算器13で演算
が行なわれているときである。演算エラーが発生すると
演算器13から演算器2−信号ERRORが出力される
。この信号ERRORは第2図に示すように制御装置1
4内のゲート回路、例えばアンドゲート21の一方の入
力端子に導かれる。アンドゲート2ノの他方の入力端子
には演算エラー割込み禁止用の7リツプフロツブ(以下
、 F/F と称する)22の百出力が導かれる。今、
F/F22がリセットしているものとすると、同出力は
論理at 1nとなっている。この場合、アンドゲート
2ノはQ −” 1 ”の期間中に入力される演算エラ
ー信号ERRORを演算器2−割込み信号INTとして
マイクロプログ2ム制御部15に出力する。これによυ
マイクロプログラムの分岐が強制的に行なわれ、マイク
ロプログラム制御部15は以下に示すエラー5処理を開
始する。なお、この時点では、演算結果Cは途中までし
かめられていない。勿論、演算結果Cの主メモリ1ノへ
のストア処理も行なわれていない。
マイクロプログラム制御部15はエラー処理において演
算エラー割込みの有無を示すフラグ(図示せず)、お裏
びF/F22をセットすると共に、演算ニジ−となった
要素の要素番号を回示せぬ保持部に保持する。そして、
マイクロプログラム制御部15はniJ述したベクトル
処理が最初から再開されるように各部を制御する。これ
にニジ、まず、ベクトル・データ人が再び主メモリ11
からベクトル・レジスタ12に転送され、当該ベクトル
・レジスタ12に格納される。次に、ベクトル・レジス
タ12に格納されたベクトル−データAと、主メモリ1
1に格納されているベクトル・データBとが一要素ずつ
読み出され、演算器13にて指定された演算器+bi(
i=o、1.・・・n)が施される。この演算結果C1
c=Li+b6)はベクトル・レシンスタ12の要素読
み出し済みのレジスタ位置に書き込まれる。
算エラー割込みの有無を示すフラグ(図示せず)、お裏
びF/F22をセットすると共に、演算ニジ−となった
要素の要素番号を回示せぬ保持部に保持する。そして、
マイクロプログラム制御部15はniJ述したベクトル
処理が最初から再開されるように各部を制御する。これ
にニジ、まず、ベクトル・データ人が再び主メモリ11
からベクトル・レジスタ12に転送され、当該ベクトル
・レジスタ12に格納される。次に、ベクトル・レジス
タ12に格納されたベクトル−データAと、主メモリ1
1に格納されているベクトル・データBとが一要素ずつ
読み出され、演算器13にて指定された演算器+bi(
i=o、1.・・・n)が施される。この演算結果C1
c=Li+b6)はベクトル・レシンスタ12の要素読
み出し済みのレジスタ位置に書き込まれる。
上述したベクトル処理再開後の演算では、演算エラー割
込みの要因となった要素の演算時に再び演算エラーが発
生し、演算器13から演算エラー信号E RRORが出
力される。しかし、前述したように演算エラー割込み時
の処理でF/F22がセットされているのでアンドゲー
ト21が閉じ、演算エラー信号E RRORが演算エラ
ー割込み信号INTとしてマイクロプログラム制御部1
5に出力されるのが禁止される。この結、果、演算エラ
ー割込みは発生せず、演算器13からの演算エラー信号
ERRに無関係に、すなわち、演算エラーの有無にかか
わらずに演算が継続される。そして、全要素の演算が終
了すると、ベクトル・レジスタ12に貫き込まれていた
演算結果Cが主メモリ1ノにストアされる。
込みの要因となった要素の演算時に再び演算エラーが発
生し、演算器13から演算エラー信号E RRORが出
力される。しかし、前述したように演算エラー割込み時
の処理でF/F22がセットされているのでアンドゲー
ト21が閉じ、演算エラー信号E RRORが演算エラ
ー割込み信号INTとしてマイクロプログラム制御部1
5に出力されるのが禁止される。この結、果、演算エラ
ー割込みは発生せず、演算器13からの演算エラー信号
ERRに無関係に、すなわち、演算エラーの有無にかか
わらずに演算が継続される。そして、全要素の演算が終
了すると、ベクトル・レジスタ12に貫き込まれていた
演算結果Cが主メモリ1ノにストアされる。
マイクロプログラム制御部15は演算結果Cが主メモリ
1ノにストアされると、演算エラー割込みの有無を示す
フラグをチェックする。このフラグがリセットしている
場合、すなわち、一連の演算が演算エラーなしに行なわ
れた場合、マイクロプログラム制御部15はベクトル処
理を終了する。これに対し、上記フラグがセットしてい
る場合、すなわち演算器2−が発生し演算エラー割込み
が11なわれた場合、マイクロプログラム制御部15は
命令レベルの浪算エラー割込み処理を行なう。この際、
マイクロプログラム制御部15は要素番号保持部をアク
セメし、当該保持部(二保持されている要素番号(演算
器2−となった要素番号)を用いる。これにより、例え
ば演算器2−となった要素番号を付したエラーメツセー
ジの出力が可能となる。
1ノにストアされると、演算エラー割込みの有無を示す
フラグをチェックする。このフラグがリセットしている
場合、すなわち、一連の演算が演算エラーなしに行なわ
れた場合、マイクロプログラム制御部15はベクトル処
理を終了する。これに対し、上記フラグがセットしてい
る場合、すなわち演算器2−が発生し演算エラー割込み
が11なわれた場合、マイクロプログラム制御部15は
命令レベルの浪算エラー割込み処理を行なう。この際、
マイクロプログラム制御部15は要素番号保持部をアク
セメし、当該保持部(二保持されている要素番号(演算
器2−となった要素番号)を用いる。これにより、例え
ば演算器2−となった要素番号を付したエラーメツセー
ジの出力が可能となる。
なお、前記実施例では、ベクトル・レジスタがソース・
レジスタおよびデヌテイオ・−ジョン・レジスタの両レ
ジスタとして使用されるベクトル処理装置について説明
したが、これに限るものではない。この発明は、例えば
第1.第2のベクトル・データのソース・レジスタとし
てのit、szのベクトル・レジスタと、第1゜第2の
ベクトル・データの演算結果のデステイオ、−ジョン・
レジスタ、としての第3のベクトル・〔発明の効果〕 以上詳述したようにこの発明によれば、ベクトル処理の
際に演算エラーが発生しても、繁雑な1絖きを行なうこ
となく、演算エラー発生以後の演算も而単に実行できる
。したがって、演算エラーが発生しても、全ての演算結
果の要素列を主メモリにストアすることができる。この
ため、例えば累算演算では、演算エラ一時は近似値(オ
ーバフローであれば正の最大値)がセットされるので、
最終結果は救われることがある。
レジスタおよびデヌテイオ・−ジョン・レジスタの両レ
ジスタとして使用されるベクトル処理装置について説明
したが、これに限るものではない。この発明は、例えば
第1.第2のベクトル・データのソース・レジスタとし
てのit、szのベクトル・レジスタと、第1゜第2の
ベクトル・データの演算結果のデステイオ、−ジョン・
レジスタ、としての第3のベクトル・〔発明の効果〕 以上詳述したようにこの発明によれば、ベクトル処理の
際に演算エラーが発生しても、繁雑な1絖きを行なうこ
となく、演算エラー発生以後の演算も而単に実行できる
。したがって、演算エラーが発生しても、全ての演算結
果の要素列を主メモリにストアすることができる。この
ため、例えば累算演算では、演算エラ一時は近似値(オ
ーバフローであれば正の最大値)がセットされるので、
最終結果は救われることがある。
第1図はこの発明の一実施例に係るベクトル処理装置の
構成を示すブロック図、第2図は第1図に示す制御装置
の内部構成を示すブロック図である。 11・・・主メモリ、12・・・ベクトル・レジスタ、
13・・・演算器、14・・・制御装置、15・・・マ
イクロプログラム化!l j1部、2ノ・・・アンドゲ
ート、22・・・フリップフロップ(F/F)。
構成を示すブロック図、第2図は第1図に示す制御装置
の内部構成を示すブロック図である。 11・・・主メモリ、12・・・ベクトル・レジスタ、
13・・・演算器、14・・・制御装置、15・・・マ
イクロプログラム化!l j1部、2ノ・・・アンドゲ
ート、22・・・フリップフロップ(F/F)。
Claims (1)
- 第1のベクトル・データと第2のベクトル・データとの
間で対応する要素毎に順次指定された演算を行なう演算
器を備えたマイクロプログラム制御方式のベクトル処理
装置において、演算エラー割込みの有無を示すフラグと
、演算エラー割込みを禁止するフリップフロップと、こ
の7リツブフロツブの出力と上記演算器からの演算エラ
ー信号とによシ演算エラー割込みを発するゲート回路と
、このゲート回路からの演算エラー割込みに応じ該尚す
るベクトル・データの要素番号を保持する保持手段と、
上記ゲート理を最初から再実行する手段と、この手段に
よるベクトル処理終了時に上記フラグを参照し、上記フ
ラグが演算エラー割込み有りを示しているときに上記保
持手段の保持内容に基づいてエラー処理を行なう手段と
を具備することを特徴とするベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13540283A JPS6027070A (ja) | 1983-07-25 | 1983-07-25 | ベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13540283A JPS6027070A (ja) | 1983-07-25 | 1983-07-25 | ベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6027070A true JPS6027070A (ja) | 1985-02-12 |
JPH0519745B2 JPH0519745B2 (ja) | 1993-03-17 |
Family
ID=15150876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13540283A Granted JPS6027070A (ja) | 1983-07-25 | 1983-07-25 | ベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6027070A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS623345A (ja) * | 1985-06-28 | 1987-01-09 | Yokogawa Hewlett Packard Ltd | 割込方式 |
-
1983
- 1983-07-25 JP JP13540283A patent/JPS6027070A/ja active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS623345A (ja) * | 1985-06-28 | 1987-01-09 | Yokogawa Hewlett Packard Ltd | 割込方式 |
Also Published As
Publication number | Publication date |
---|---|
JPH0519745B2 (ja) | 1993-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0207665A1 (en) | Bidirectional branch prediction and optimization | |
EP0101596A2 (en) | A data processor with parallel-operating operation units | |
CA1180455A (en) | Pipelined microprocessor with double bus architecture | |
JP2003029986A (ja) | プロセッサ間レジスタ継承方法及びその装置 | |
US5497496A (en) | Superscalar processor controlling fetching of instructions based upon number of empty instructions registers detected for each cycle | |
CA1240800A (en) | Distributed control store word architecture | |
KR920001100B1 (ko) | 논리연산장치 | |
US4677549A (en) | Pipelined data processor system having increased processing speed | |
US4318172A (en) | Store data buffer control system | |
JP3338488B2 (ja) | データ処理装置の検証方法及び装置 | |
JPS58121457A (ja) | 情報処理装置 | |
JPS6027070A (ja) | ベクトル処理装置 | |
JPH1196006A (ja) | 情報処理装置 | |
JPH0147818B2 (ja) | ||
JPS6049952B2 (ja) | メモリ制御装置のビジ−制御方式 | |
EP0211487A1 (en) | Conditional operations in computers | |
JPH0335327A (ja) | 多数決障害処理装置 | |
JPH05100883A (ja) | データ処理用半導体装置 | |
JPH04230533A (ja) | 割込制御回路 | |
JPH0560141B2 (ja) | ||
JPS6149695B2 (ja) | ||
JPS58166454A (ja) | デ−タ処理装置 | |
JPS6012656B2 (ja) | リトライ制御方式 | |
JPS62166463A (ja) | デ−タ転送方式 | |
JPH0136137B2 (ja) |