JPS63197233A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS63197233A
JPS63197233A JP3091187A JP3091187A JPS63197233A JP S63197233 A JPS63197233 A JP S63197233A JP 3091187 A JP3091187 A JP 3091187A JP 3091187 A JP3091187 A JP 3091187A JP S63197233 A JPS63197233 A JP S63197233A
Authority
JP
Japan
Prior art keywords
instruction
register
busy
signal
saving
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
JP3091187A
Other languages
English (en)
Inventor
Noriaki Sakai
則彰 境
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 JP3091187A priority Critical patent/JPS63197233A/ja
Publication of JPS63197233A publication Critical patent/JPS63197233A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はパイプライン処理を行なう情報処理装置に関す
る。
[従来の技術] 従来、この種の情報処理装置は、命令にしたがってアド
レス生成を行なう時に、そのアドレス生成に使用するレ
ジスタが未実行の先行命令によって更新される場合には
、これを検出してそのレジスタが先行命令の完了により
更新されるまで、その更新待ちの先行命令に後続する命
令のアドレス生成を遅らせていた。これにともない、さ
らに、この命令に後続する命令のアドレス生成やオペラ
ンドの読出し等も待たされていた。
また、上述の技術のほかに、データ生成装置を設けて命
令実行に先行してレジスタへの3込みデータの生成をお
こなうものもある(特公昭57−9088号公報)。
[発明が解決しようとする問題点] 上述した従来の情報処理装置は、アドレス計算をおこな
う場合に、そのアドレス計算に使用するレジスタが未実
行の先行命令により更新される場合には、その更新が完
了するまでアドレス計算をdらせていたため、後続する
命令の処理もすべて待たされており、その結果、間接修
輝があるような場合には、バイブラインの各ステージに
多数の空きが生じ、バイブライン処理効率が低下すると
いう欠点がある。
また、特公昭57−9088号公報に示される技術は、
データ生成装置を必要とするため装置の大型化をまねく
という欠点がある。
[問題点を解決するためのf段] 本発明の情報処理装置は、命令を格納する命令レジスタ
と、命令を−・時的に待避させるための命令待避レジス
タと、命令のアドレス生成に使用されるレジスタが先行
する命令により更新待ちである場合に、これを検出して
前記後続する命令を前記命令待避レジスタに待避させ、
その更新待ち状態が解除された時に、これを検出して前
記後続する命令の待避を解除する制御回路とを有してい
るゆ [作用] 命令のアドレス生成に使用すべきレジスタが先行する命
令により更新待ちである場合には、その後続する命令を
いったん命令待避レジスタに待避させ、それに続く次の
命令を取りこみ、その取りこまれた命令の処理をおこな
うので、バイブライン処理の効率向上が図れ、また、本
発明はデータ生成装置のような複雑な装置を必要とゼず
、比較的aSな構成の制御回路を用いて実現可能である
ため、装置の大型化も抑止できる。
[実施例] 次に、本発明の実施例について図面を参照して説明する
第1図は本発明の情報処理装置の一実施例の構成を示す
ブロック図である。本実施例の情報処理装置は命令処理
装置1と、記憶装置2と、演算実行装置3とを備えてい
る。命令処理装置1は、人力セレクタ4と、命令を格納
するための命令レジスタ5と、命令を一時待避させるた
めの命令待避レジスタ6と、命令をデコードするデコー
ダと命令待避および待避解除を制御する制御回路とから
なるデコーダおよび制御回路7と、4つの汎用レジスタ
8a〜8dと、アドレス生成装置12と、このアドレス
生成装置12の人力部に設けられたインデックスレジス
タ9.ベースレジスタ10゜ディスプレースメントレジ
スタ11と、オペランドやデータの先取りをするための
オペランドデータバッファ40とからなフている。
命令処理装置1は命令を記憶装置2より読出し、解読し
、必要ならばオペランドアドレスを生成して記憶装置2
よりオペランドを読出し、操作コード、オペランド、操
作情報等を演算実行装置3に送る。演算実行装置3は命
令処理装置lが設定した情報により演算を行い、各種レ
ジスタ、ステータスおよび記憶の更新をおこなう。記憶
装置2と演算実行装置3との間には、オペランドやデー
タを先取りするためのオペランドデータバッファ40が
設けられており、演算の実行と非同明にオペランドの先
取りをおこなうことができる。
命令処理装置1において命令レジスタ5の所定のビット
位置に示された情報に基づき汎用レジスタ88〜8dか
らインデックスおよびベースが読出され、おのおのがイ
ンデックスレジスタ9とペースレジスタ10にセットさ
れる。同時に命令により指定されるディスブレースメン
ドアドレスがディスプレースメントレジスタ11にセッ
トされる。これらのインデックスレジスタ9.ペースレ
ジスタ10.ディスプレースメントレジスタ11の値は
アドレス生成装置12により加算されてオペランドアド
レスが生成される。このアドレスは記憶装置2におくら
れオペランドが読出され、読出されたオペランドがオペ
ランドデータバッファ40を介して演算実行装置3に送
られる。
上述したアドレス生成において、汎用レジスタ88〜8
dよりインデックスとベースが読出されるが、このとき
に使用される汎用レジスタの値が先行する命令により更
新される場合、後続命令についてのアドレス生成は、使
用すべき汎用レジスタ88〜8dの更新が終了するまで
待たされる。
このような状態をレジスタビジーと呼ぶことにする。
第2図は第1図に示したデコーダおよび制御回路7の一
部の回路図である。このデコーダおよび制御回路7は、
命令デコーダ13と、レジスタビジー検出回路36と、
レジスタビジー終了検出回路37とからなっている。レ
ジスタビジー検出回路36は、汎用レジスタ8a〜8d
に1対1に対応して設けられたレジスタビジーカウンタ
18a〜18dと、各レジスタビジーカウンタ18a〜
18dに“1”を加算あるいは減算するための加算回路
16a〜16d、減算回路17a 〜17dと、加算回
路16a−16d、減算回路17a〜17dを指定する
ためのデコーダ14.15と、人力が“0”のときに1
”を出力する比較器19と、それぞれデコーダ22とア
ンドゲート38、デコーダ23とアンドゲート39とか
らなるレジスタビジーチェック回路20.21と、レジ
スタビジーチェック結果を送出するオアゲート24とか
らなっている。また、レジスタビジー終了検出信号37
は、インデックスビジーカウンタ27と、ペースビジー
カウンタ28と、それらの各カウンタ27,28に入力
すべきデータを選択するためのセレクタ25.26と、
演p実行により更新されるレジスタ番号が待避されてい
る命令のレジスタ番号と一致しているかどうかを判別す
るための比較529.31と、“1”を減算する減算回
路30.32と、比較器33.34と、レジスタビジー
状態の終了検出信号を送出するアンドゲート35とから
な7ている。
次に本実施例の動作を説明する。
(1) まず、レジスタの更新待ち状態が発生した場合
の後続命令の命令待避および命令待避解除の動作につい
て説明する。汎用レジスタ8a〜8dに1対lに対応し
て設けられたレジスタビジーカウンタ18a〜18dの
値は初期状態において“0”となっている。このときは
、汎用レジスタ88〜8dには先行する命令により更新
されない有効な値が入っている。次に、命令レジスタ5
から、信号線LIを介して送られてきた命令を命令デコ
ーダ13でデコードした結果、命令レジスタ5の命令が
汎用レジスタ8a〜8dの値を更新することがわかると
、命令デコーダ13は更新待ちとなる汎用レジスタの番
号をデコーダ14に送る。デコーダ14はこれを受けて
加算回路16a〜16dに指示し、更新待ちの汎用レジ
スタ8a〜8dに対応するレジスタビジーカウンタ18
a〜18dに“1”を加算させる。逆に、演算実行装置
3から汎用レジスタ8a〜8dに演算結果がセットされ
るときに更新されるレジスタ番号が信号線■4うを介し
て送られてきたときには、デコーダ15により減算回路
17a−17dが指示を受け、更新される汎用レジスタ
に対応するレジスタビジーカウンタ18a〜18dが“
1”減算される。このように、ある汎用レジスタが更新
待ちになってから実際に更新されるまでの間(レジスタ
ビジー状態の間)、その汎用レジスタに1対1に対応し
たレジスタビジーカウンタ18a〜18dは“0”以外
の値になる。比較器19はレジスタビジーカウンタの値
が“0″でないときに“1”を出力する。この間にも、
後続する命令は順次取込まれ、バイブライン処理が行わ
れるのであるが、それらの命令のアドレス生成に使用さ
れる汎用レジスタ8a〜8dが前述した更新待ちのレジ
スタと一致するかどうかを、レジスタビジーチェック回
路20.21で検出する。すなわち、命令レジスタ5か
ら信号線1,2.1.、を介してレジスタビジーチェッ
ク回路20.21に送られてくるアドレス生成に使用す
べき汎用レジスタの番号が、現在更新待ちとなっている
レジスタに一致するかどうかをデコーダ22.23とア
ンドゲート38゜39を用いて検出し、一致していると
きにアンドゲート38,39からレジスタビジー検出信
号“1”が出力される。この検出信号は、オアゲート2
4を介して次段の制御ブロックに送られ、これに応答し
て発生した命令退避を指示する制Ol信号が信号線L7
を介してセレクタ4および命令レジスタ5に送られる。
これを受けて命令レジスタ5は格納していた命令を信号
線り、・を介して命令待避レジスタ6に待避させる。そ
れと同時に、その命令が使用しようとした汎用レジスタ
8a〜8dに対応するレジスタビジーカウンタ18a〜
18dの埴がセレクタ25.26により選択されて、そ
れぞれ、インデックスビジーカウンタ27゜ペースビジ
ーカウンタ28にセットされる。このように、レジスタ
ビジー状態の汎用レジスタを使用しようとした後続命令
は命令待避レジスタ6に待避されたので、それに続く命
令の処理を行うことが可能となり、セレクタ4を介して
取込まれた後続命令についてアドレス生成、オペランド
の読出し等が行われる。読出されたオペランドはオペラ
ンドデータバッファ13に蓄えられる。
(2) 次に、命令待避レジスタ6に待避された命令の
復帰動作について説明する。レジスタビジー終了検出回
路37の比較器29.31により、演算実行結果がセッ
トされるとき更新されるレジスタ番号が命令待避レジス
タ6に待避された命令のインデックスレジスタおよびペ
ースレジスタの番号と一致していることが検出されると
、それに応答して減算回路30.32によりインデック
スビジーカウンタ27およびペースビジーカウンタ28
の値が“1″減算されて0”になる。インデックスビジ
ーカウンタ27およびペースビジーカウンタ2Bの値が
“0”になったことは、比較533.34で検出され、
インデックスビジーカウンタ27およびベースビジーカ
ウンタ2Bの双方の値が“0”になったときにアンドゲ
ート35からレジスタビジー状態の終了検出信号“1”
が送出される。これに応答して発生する命令退避解除信
号が4M号線L8を介して命令退避レジスタ6に送られ
るとともにセレクタ制御信号が信号線L7を介してセレ
クタ4に送られる。これを受けて2命令退避レジスタ6
に退避されていた命令は信号線L11.セレクタ4を介
して命令レジスタ5に再びセットされ、アドレス生成、
オペランドの読出しが行われる。
第3図(a)、(b)はそれぞれ従来例と本実施例の情
報処理装置におけるパイプライン処理の様子を示す図で
ある。図中、D、A、P、C,E。
Wの各ステージは以下の処理を行うや D−命令解読9Aニアドレス生成。
P:ベージ変換、C:記憶情報の読出し。
E:演算実行、W;演算結果格納。
なお、添字lは間接アドレス修筒によるサイクルである
ことを示している。従来のパイプライン処理では第3図
(a)に示すように3番目のアドレス生成が1番目の命
令のレジスタの更新が完了するまで待たされる。4番目
の命令は間接アドレス修飽があるために、オペランドの
読出しに余分なサイクルが必要であり、パイプラインの
乱れが大きい、これに対し、本実施例では、第3図(b
)に示されるようにレジスタビジー状態が発生したとき
1は、3番目の命令を退避させて4番目の命令のオペラ
ンドの読出しを先行させるため、従来例に比べて4サイ
クル高速に処理できる。
[発明の効果] 以上説明したように本発明は、アドレス生成に使用すべ
きレジスタが更新待ちであることを検出し、レジスタ更
新待ちの命令をレジスタ更新が終rするまで退避させて
、それに続く命令の解読、アドレス計党、オペランドの
読出しを先行させることにより、パイプライン処理の効
率向上を図ることができるという効果がある。
【図面の簡単な説明】
第1図は本発明の情報処理装置の一実施例の構成を示す
ブロック図、第2図は第1図のデコーダおよび制御回路
7の一部の回路図、第3図(a)は従来例の情報処理装
置におけるパイプライン処理の様子を示す図、第3図c
b>は本実施例の情報処理装置におけるパイプライン処
理の様rを示す図である。 !−命令処理装置、 2・・・記憶装置、 3−・演算実行結果、 4−・セレクタ、 5−・命令レジスタ、 6・・・命令退避レジスタ、 7・−デコーダおよび制御回路、 88〜8 d−・・汎用レジスタ、 9・・・インデックスレジスタ、 10 ・・・ペースレジスタ、 11−・・ディスプレースメントレジスタ、12−・・
アドレス生成装置、 13−・・命令デコーダ、 14.15−・・デコーダ、 ISa〜16d−加W回m、 17a〜17d・−減算回路、 IBa〜18d−レジスタビジーカウンタ、19−比較
器、 20.21−・レジスタビジーチェック回路、22.2
3−デコーダ、 24−オアゲート、 25.26−・・セレクタ、 27・・・インデックスビジーカウンタ、28・・・ペ
ースビジーカウンタ、 29.31,33.34−一比較器、 30.32−一減算器、 35−・アンドゲート、 36−・・レジスタビジー検出回路、 37−・レジスタビジー終了検出回路、38.39−−
アンドゲート、 40−・オペランドデータバッファ、 Ll””Lll””信号線。 第1図

Claims (1)

  1. 【特許請求の範囲】 命令の解読、アドレス生成およびオペランドの読出しを
    行なう情報処理装置において、 命令を一時的に待避させるための命令待避レジスタと、 命令のアドレス生成に使用されるレジスタが先行する命
    令により更新待ちである場合に、これを検出して前記先
    行する更新待ちの命令に後続する命令を前記命令待避レ
    ジスタに待避させ、その更新待ち状態が解除された時に
    、これを検出して前記先行する更新待ちの命令に後続す
    る命令の待避を解除する制御回路とを有することを特徴
    とする情報処理装置。
JP3091187A 1987-02-12 1987-02-12 情報処理装置 Pending JPS63197233A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3091187A JPS63197233A (ja) 1987-02-12 1987-02-12 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3091187A JPS63197233A (ja) 1987-02-12 1987-02-12 情報処理装置

Publications (1)

Publication Number Publication Date
JPS63197233A true JPS63197233A (ja) 1988-08-16

Family

ID=12316885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3091187A Pending JPS63197233A (ja) 1987-02-12 1987-02-12 情報処理装置

Country Status (1)

Country Link
JP (1) JPS63197233A (ja)

Similar Documents

Publication Publication Date Title
JPS6028015B2 (ja) 情報処理装置
JP3834145B2 (ja) ネスト可能な遅延分岐命令を有するマイクロプロセッサを備えたデータ処理装置及びそのマイクロプロセッサを動作させる方法
JPS63197233A (ja) 情報処理装置
JPS601655B2 (ja) デ−タプリフェツチ方式
JPH05241827A (ja) 命令バッファ制御装置
JP2783285B2 (ja) 情報処理装置
JPH0326862B2 (ja)
JP2812610B2 (ja) パイプライン制御方式
JP2819733B2 (ja) 情報処理装置
JP2843844B2 (ja) 並列演算処理装置
JPS60198640A (ja) パイプライン型情報処理装置
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JP2806690B2 (ja) マイクロプロセッサ
JPH07219771A (ja) 命令プロセッサ
JP3102846B2 (ja) ロードアドレスキャッシュ装置及び方法
JP3015565B2 (ja) 複数命令の並列実行機能を持つ情報処理装置
JP4564025B2 (ja) 情報処理装置における割り込み処理方法
JPH02254541A (ja) 条件分岐命令の制御方式
JPH03113535A (ja) パイプライン制御機構
JPH01147723A (ja) 情報処理装置のパイプライン処理方式
JPH0916399A (ja) 計算機
JPS6149695B2 (ja)
JPS61133440A (ja) デ−タ処理装置
JPS6257028A (ja) パイプライン制御の情報処理装置におけるブランチ制御方法
JPH03161834A (ja) 情報処理装置