JPH01231126A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH01231126A JPH01231126A JP5638588A JP5638588A JPH01231126A JP H01231126 A JPH01231126 A JP H01231126A JP 5638588 A JP5638588 A JP 5638588A JP 5638588 A JP5638588 A JP 5638588A JP H01231126 A JPH01231126 A JP H01231126A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- stage
- read
- address
- 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
- 230000010365 information processing Effects 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 7
- GVBNSPFBYXGREE-UHFFFAOYSA-N Visnadine Natural products C1=CC(=O)OC2=C1C=CC1=C2C(OC(C)=O)C(OC(=O)C(C)CC)C(C)(C)O1 GVBNSPFBYXGREE-UHFFFAOYSA-N 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は情報処理装置に関し、特にパイプライン制御に
おけるレジスタ干渉制御回路に関するものである。
おけるレジスタ干渉制御回路に関するものである。
(従来の技術)
従来、複数の命令を同時に並行処理するパイプライン制
御の情報処理装置においては、特開昭58−15404
5号公報に記載されているように、レジスタファイルを
読出して各処理をする命令、例えば加算命令(以後、A
命令と称す)、即値加算命令(以後、AI命令と称す)
、比較命令(以後、C命令と称す)のような演算命令を
実行する際に、該各命令において、読出しを指定したレ
ジスタファイルの内容が、先行する命令、例えばロード
命令(以後、L命令と称す)のような、レジスタファイ
ルにデータを格納する命令の実行によってレジスタファ
イルの内容が変更される場合、即ち、レジスタ干渉が起
きる場合には、先行のし命令がレジスタファイルを変更
した後に当該演算命令が実行される。
御の情報処理装置においては、特開昭58−15404
5号公報に記載されているように、レジスタファイルを
読出して各処理をする命令、例えば加算命令(以後、A
命令と称す)、即値加算命令(以後、AI命令と称す)
、比較命令(以後、C命令と称す)のような演算命令を
実行する際に、該各命令において、読出しを指定したレ
ジスタファイルの内容が、先行する命令、例えばロード
命令(以後、L命令と称す)のような、レジスタファイ
ルにデータを格納する命令の実行によってレジスタファ
イルの内容が変更される場合、即ち、レジスタ干渉が起
きる場合には、先行のし命令がレジスタファイルを変更
した後に当該演算命令が実行される。
第2図は本発明に係わる演算命令の例を示す図、第3図
は第2図に示す命令をレジスタ干渉なしに実行している
タイムチャート、第4図はレジスタ干渉により先行命令
の終了を待機する場合のタイムチャートである。
は第2図に示す命令をレジスタ干渉なしに実行している
タイムチャート、第4図はレジスタ干渉により先行命令
の終了を待機する場合のタイムチャートである。
第2図において、OPは命令コード、Dはレジスタファ
イルの書込みアドレス、SO,Slはレジスタファイル
の読出しアドレス、■は即値データである。第2図に示
す各命令は、所定のマシンサイクルに従ってI、R,E
、P、Wの5つのステージにより第3図のようにバイブ
ライン制御され、!ステージでは命令読出しを、Rステ
ージでは、レジスタファイルの読出し及び命令解読と、
AI命令或はL命令による即値データ生成を、Eステー
ジでは、A命令或はAI命令による加算と、L命令によ
るアドレス計算と、C命令による比較等の演算を、Pス
テージではL命令によるデータアクセスを、Wステージ
では、A命令及びAI命令と、L命令によるレジスタ書
込みを実行する。
イルの書込みアドレス、SO,Slはレジスタファイル
の読出しアドレス、■は即値データである。第2図に示
す各命令は、所定のマシンサイクルに従ってI、R,E
、P、Wの5つのステージにより第3図のようにバイブ
ライン制御され、!ステージでは命令読出しを、Rステ
ージでは、レジスタファイルの読出し及び命令解読と、
AI命令或はL命令による即値データ生成を、Eステー
ジでは、A命令或はAI命令による加算と、L命令によ
るアドレス計算と、C命令による比較等の演算を、Pス
テージではL命令によるデータアクセスを、Wステージ
では、A命令及びAI命令と、L命令によるレジスタ書
込みを実行する。
第4図では、命令1がL命令で、命令2が例えばA命令
だとすれば、L命令によってEステージでアドレス計算
しPステージでキャッシュ、主記憶装置等から読出した
データを格納する動作と、A命令によってRステージで
レジスタ読出しをしてEステージで加算しようとする動
作とでレジスタ干渉してXで示す待ち状態が生ずる。
だとすれば、L命令によってEステージでアドレス計算
しPステージでキャッシュ、主記憶装置等から読出した
データを格納する動作と、A命令によってRステージで
レジスタ読出しをしてEステージで加算しようとする動
作とでレジスタ干渉してXで示す待ち状態が生ずる。
このようなレジスタ干渉はレジスタファイルの読出しア
ドレスと先行命令の書込みアドレスを示すビットを命令
中から抽出し、この2つのアドレスが一致するかどうか
を判定するための比較回路によって、その一致を判定し
た場合に検出される。
ドレスと先行命令の書込みアドレスを示すビットを命令
中から抽出し、この2つのアドレスが一致するかどうか
を判定するための比較回路によって、その一致を判定し
た場合に検出される。
(発明が解決しようとする課題)
しかしながら上記のようなレジスタ干渉を検出する方法
では、先行命令がレジスタファイルに書込まない命令で
あっても、或は実行する命令がレジスタファイルを読出
さない命令であっても命令中からアドレスを示すビット
を抽出し、比較器によりレジスタ干渉が検出されてしま
うことになる。
では、先行命令がレジスタファイルに書込まない命令で
あっても、或は実行する命令がレジスタファイルを読出
さない命令であっても命令中からアドレスを示すビット
を抽出し、比較器によりレジスタ干渉が検出されてしま
うことになる。
このように本来レジスタ干渉が生じていない場合でもレ
ジスタ干渉が検出されてしまうことから先行命令終了ま
での不必要な待ち時間が生じて、処理能力が低下すると
いう問題点があった。
ジスタ干渉が検出されてしまうことから先行命令終了ま
での不必要な待ち時間が生じて、処理能力が低下すると
いう問題点があった。
本発明は上記問題点に鑑み、レジスタ干渉が生じていな
いときは待ち時間が生じないようにした情報処理装置を
提供することを目的とする。
いときは待ち時間が生じないようにした情報処理装置を
提供することを目的とする。
(課題を解決するための手段)
本発明は前記問題点を解決するために、命令レジスタか
らの命令信号を読出すステージと、該命令信号に基づい
てレジスタファイルから演算用のデータを読出すステー
ジと、該演算用データを用いて演算器により演算するス
テージと、その演算結果をレジスタファイルに書込むス
テージとを有してパイプライン制御する情報処理装置に
おいて、先行命令によるレジスタファイルへの書込みア
ドレスを各ステージ、毎に保持するアドレス保持手段と
、当該命令によるレジスタファイルの読出しアドレスと
前記アドレス保持手段に保持された各ステージの書込み
アドレスとをそれぞれ比較して相互の一致信号或いは不
一致信号を出力する比較手段と、前記アドレス保持手段
が各保持対象とした先行命令の各ステージと現行命令の
ステージとにより該各ステージ毎にレジスタ干渉が生ず
るか否かを設定しているレジスタ干渉設定手段と、前記
レジスタ干渉が生ずるステージにおいて前記命令レジス
タの読出しを停止させる命令停止手段と、前記レジスタ
干渉が生じないステージにおいて前記比較手段が一致信
号を出力したとき先行命令による当該ステージのデータ
を現行命令によるレジスタファイルの読出しデータに代
えて前記演算器に与えるゲート手段とを備えた。
らの命令信号を読出すステージと、該命令信号に基づい
てレジスタファイルから演算用のデータを読出すステー
ジと、該演算用データを用いて演算器により演算するス
テージと、その演算結果をレジスタファイルに書込むス
テージとを有してパイプライン制御する情報処理装置に
おいて、先行命令によるレジスタファイルへの書込みア
ドレスを各ステージ、毎に保持するアドレス保持手段と
、当該命令によるレジスタファイルの読出しアドレスと
前記アドレス保持手段に保持された各ステージの書込み
アドレスとをそれぞれ比較して相互の一致信号或いは不
一致信号を出力する比較手段と、前記アドレス保持手段
が各保持対象とした先行命令の各ステージと現行命令の
ステージとにより該各ステージ毎にレジスタ干渉が生ず
るか否かを設定しているレジスタ干渉設定手段と、前記
レジスタ干渉が生ずるステージにおいて前記命令レジス
タの読出しを停止させる命令停止手段と、前記レジスタ
干渉が生じないステージにおいて前記比較手段が一致信
号を出力したとき先行命令による当該ステージのデータ
を現行命令によるレジスタファイルの読出しデータに代
えて前記演算器に与えるゲート手段とを備えた。
(作 用)
本発明によれば、先行命令による各ステージの書込みア
ドレスと当該命令によるステージとにより、レジスタ干
渉が生じているならば、命令レジスタの読出しが停止さ
れ、レジスタ干渉が生じていないならば、そのときの先
行命令の書込みアドレスと当該命令の読出しアドレスが
一致していると、現行命令によるレジスタファイルの読
出しデータに代えて、先行命令による当該ステージのデ
ータを演算器に与えて、継続して各ステージが実行され
る。
ドレスと当該命令によるステージとにより、レジスタ干
渉が生じているならば、命令レジスタの読出しが停止さ
れ、レジスタ干渉が生じていないならば、そのときの先
行命令の書込みアドレスと当該命令の読出しアドレスが
一致していると、現行命令によるレジスタファイルの読
出しデータに代えて、先行命令による当該ステージのデ
ータを演算器に与えて、継続して各ステージが実行され
る。
(実施例)
第5図は本発明の一実施例として情報処理装置の要部構
成を示すブロック図であり、1は演算回路、2は命令読
出し回路、3はデータアクセス回路、4はキャッシュメ
モリ、5は主記憶装置である。
成を示すブロック図であり、1は演算回路、2は命令読
出し回路、3はデータアクセス回路、4はキャッシュメ
モリ、5は主記憶装置である。
第1図は第5図の演算回路1の構成を示すブロック図、
第6図は第1図のレジスタ干渉検出回路8の構成を示す
ブロック図である。
第6図は第1図のレジスタ干渉検出回路8の構成を示す
ブロック図である。
第1図において、6は第1図に示す演算命令を格納する
命令レジスタ、ANDは命令停止手段としてのアンドゲ
ート、7はその命令コードOPを解読する命令解読器、
8は先行命令の各ステージと当該命令のステージとによ
るレジスタ干渉を検出するレジスタ干渉検出回路、9,
10.11はそれぞれ先行命令の各ステージE、P、W
による書込みアドレスDを格納するアドレス保持手段と
してのレジスタ、12はレジスタファイル、13はレジ
スタファイル12の読出しデータ(SO)等を格納する
レジスタ、14はレジスタファイル12の読出しデータ
(Sl)や命令レジスタ6の即値データI等を格納する
レジスタ、15はこれら各データ(So )、(Sl
)、Iに対する四則演算等を行なう演算器、16はeL
算器15の出力データを格納するレジスタ、17はレジ
スタ16のデータ或はデータアクセス回路3による読出
しデータとを切換える切換回路、18は切換回路17を
介するデータを格納するレジスタ、01〜GBは、レジ
スタ18、切換回路17、演算器15等のデータをバス
LO或はLlに迂回させるゲート手段としての各ゲート
である。
命令レジスタ、ANDは命令停止手段としてのアンドゲ
ート、7はその命令コードOPを解読する命令解読器、
8は先行命令の各ステージと当該命令のステージとによ
るレジスタ干渉を検出するレジスタ干渉検出回路、9,
10.11はそれぞれ先行命令の各ステージE、P、W
による書込みアドレスDを格納するアドレス保持手段と
してのレジスタ、12はレジスタファイル、13はレジ
スタファイル12の読出しデータ(SO)等を格納する
レジスタ、14はレジスタファイル12の読出しデータ
(Sl)や命令レジスタ6の即値データI等を格納する
レジスタ、15はこれら各データ(So )、(Sl
)、Iに対する四則演算等を行なう演算器、16はeL
算器15の出力データを格納するレジスタ、17はレジ
スタ16のデータ或はデータアクセス回路3による読出
しデータとを切換える切換回路、18は切換回路17を
介するデータを格納するレジスタ、01〜GBは、レジ
スタ18、切換回路17、演算器15等のデータをバス
LO或はLlに迂回させるゲート手段としての各ゲート
である。
第6図において、19〜24は、当該命令による各読出
しアドレスSO或はSlと、各レジスタ9.10.11
の各信号線De、Dp、DwのデータDとをそれぞれ比
較する比較器(比較手段)、25.26.27はレジス
タ9,10.11と同期して命令解読器7が解読した後
記する信号d1゜d2を格納するフラグレジスタ、M1
〜M6は各命令種別について各ステージ毎にレジスタ干
渉が生ずるか否かを設定しているレジスタ干渉設定手段
としての論理回路、Meは第1図のアンドゲートに対す
る作動信号geを生成する論理回路である。
しアドレスSO或はSlと、各レジスタ9.10.11
の各信号線De、Dp、DwのデータDとをそれぞれ比
較する比較器(比較手段)、25.26.27はレジス
タ9,10.11と同期して命令解読器7が解読した後
記する信号d1゜d2を格納するフラグレジスタ、M1
〜M6は各命令種別について各ステージ毎にレジスタ干
渉が生ずるか否かを設定しているレジスタ干渉設定手段
としての論理回路、Meは第1図のアンドゲートに対す
る作動信号geを生成する論理回路である。
次に第2図のA命令を例に、第5図、第1図による情報
処理装置の動作を説明する。
処理装置の動作を説明する。
第3図を参照し、■ステージでは、命令読出し回路2が
キャッシュメモリ4或は主記憶装置5から演算回路1の
命令レジスタ6に命令を読出す。
キャッシュメモリ4或は主記憶装置5から演算回路1の
命令レジスタ6に命令を読出す。
Rステージでは、アンドゲートANDを介するクロック
CLOCKの立上りで、命令レジスタ6に各命令OP、
D、So、Stをセットし、レジスタ読出しアドレスS
O,SLにより、レジスタファイル12の内容(So
) 、 (SL )をバスLO。
CLOCKの立上りで、命令レジスタ6に各命令OP、
D、So、Stをセットし、レジスタ読出しアドレスS
O,SLにより、レジスタファイル12の内容(So
) 、 (SL )をバスLO。
Llに読出す。同時にレジスタ干渉検出回路8ヘアドレ
スSO,Stをセットし、命令コードOPを命令解読器
7にセットし、命令解読器7による解読結果をレジスタ
干渉検出回路8ヘセツトする。
スSO,Stをセットし、命令コードOPを命令解読器
7にセットし、命令解読器7による解読結果をレジスタ
干渉検出回路8ヘセツトする。
Eステージでは、バスLO,Llに読出されたレジスタ
ファイルの内容(SO) 、 (SL )をレジスタ
13.14ヘセツトし、演算器15で加算(SO) +
(SL ’)を実行する。そしてレジスタ9は書込み
アドレスDをセットする。Pステージでは、演算器15
の出力(SO) + (SL )をレジスタ16ヘセツ
トし、切換回路17を介してレジスタ18へ演算結果(
So ) + (SL )をセットする。レジスタ10
はレジスタ9の内容(書込みアドレスD)をセットする
。Wステージでは、レジスタ10の内容(書込みアドレ
スD)をセットしてレジスタファイル12への書込みア
ドレスDとして出力し、演算結果(sO) + (SL
)をレジスタ18からレジスタファイル12へ書込む
。
ファイルの内容(SO) 、 (SL )をレジスタ
13.14ヘセツトし、演算器15で加算(SO) +
(SL ’)を実行する。そしてレジスタ9は書込み
アドレスDをセットする。Pステージでは、演算器15
の出力(SO) + (SL )をレジスタ16ヘセツ
トし、切換回路17を介してレジスタ18へ演算結果(
So ) + (SL )をセットする。レジスタ10
はレジスタ9の内容(書込みアドレスD)をセットする
。Wステージでは、レジスタ10の内容(書込みアドレ
スD)をセットしてレジスタファイル12への書込みア
ドレスDとして出力し、演算結果(sO) + (SL
)をレジスタ18からレジスタファイル12へ書込む
。
次に、C命令では、■ステージとRステージではA命令
と同じ動作であるが、Eステージでは演算器15で比較
演算(S・0)−(Sl)を実行した後、Pステージと
Wステージでは何も動作せず、レジスタファイル12へ
の書込みは実行しない。
と同じ動作であるが、Eステージでは演算器15で比較
演算(S・0)−(Sl)を実行した後、Pステージと
Wステージでは何も動作せず、レジスタファイル12へ
の書込みは実行しない。
次に、AI命令では、Rステージにおいて命令レジスタ
6の即値アドレス■をバスLlにセットする。他はA命
令と同様な加算動作(So)+1である。
6の即値アドレス■をバスLlにセットする。他はA命
令と同様な加算動作(So)+1である。
次にL命令では、EステージまではAI命令と同じ動作
(So)+Iであり、Pステージでは演算器15の出力
(So)+1をアドレスとしてレジスタ16、データア
クセス回路3を介してキャッシュメモリ4又は主記憶装
置5をアクセスし、その読出しデータ((So)+I)
を、切換回路17を介してレジスタ18ヘセツトする。
(So)+Iであり、Pステージでは演算器15の出力
(So)+1をアドレスとしてレジスタ16、データア
クセス回路3を介してキャッシュメモリ4又は主記憶装
置5をアクセスし、その読出しデータ((So)+I)
を、切換回路17を介してレジスタ18ヘセツトする。
WステージではA命令と同様にレジスタ11の書込みア
ドレスDとレジスタ18の読出しデータ((SO>+1
)をレジスタファイル12へ書込む。
ドレスDとレジスタ18の読出しデータ((SO>+1
)をレジスタファイル12へ書込む。
次に第6図に示すレジスタ干渉検出回路8について説明
する。
する。
命令解読器7の信号dlは、後記するレジスタ干渉検出
時に先行命令の終了を待ってレジスタ読出しを行なう2
時、即ちL命令で“1”になり、A命令、AI命令、C
命令で“0”となる。信号d2は、レジスタ書込みアド
レスDが有効である時、即ち人命台、AI命令、L命令
で“1°になり、C命令で“0”となる。信号d3は、
レジスタ読出しアドレスSOが有効な時、即ちA、AI
。
時に先行命令の終了を待ってレジスタ読出しを行なう2
時、即ちL命令で“1”になり、A命令、AI命令、C
命令で“0”となる。信号d2は、レジスタ書込みアド
レスDが有効である時、即ち人命台、AI命令、L命令
で“1°になり、C命令で“0”となる。信号d3は、
レジスタ読出しアドレスSOが有効な時、即ちA、AI
。
L、C命令で“1°となる。信号d4は、レジスタ読出
しアドレスStが有効な時、即ちA命令、C命令で1m
になり、L命令、AI命令で“0゛となる。信号線ro
、rlにはそれぞれ命令中のレジスタ読出しアドレスS
Oと、レジスタ読出しアドレスS1或は即値アドレスI
を、そして信号線De、Dp、DvにはそれぞれE、P
、Wステージを実行中の命令のレジスタ書込みアドレス
D(以後、適宜にこれらを書込みアドレスDe。
しアドレスStが有効な時、即ちA命令、C命令で1m
になり、L命令、AI命令で“0゛となる。信号線ro
、rlにはそれぞれ命令中のレジスタ読出しアドレスS
Oと、レジスタ読出しアドレスS1或は即値アドレスI
を、そして信号線De、Dp、DvにはそれぞれE、P
、Wステージを実行中の命令のレジスタ書込みアドレス
D(以後、適宜にこれらを書込みアドレスDe。
Dp、Dvと称す)を各レジスタ9.10.11から受
ける。比較器19.20,21,22゜23.24は各
ステージE、P、Wにおいて、これらの読出しアドレス
SO,Stと書込みアドレスDe、Dp、Dvとを比較
し、一致した時“1mを出力する。フラグレジスタ25
,26.27は書込みアドレスD(3,Dp、Dvと同
期して信号di、d2を順次セットする。
ける。比較器19.20,21,22゜23.24は各
ステージE、P、Wにおいて、これらの読出しアドレス
SO,Stと書込みアドレスDe、Dp、Dvとを比較
し、一致した時“1mを出力する。フラグレジスタ25
,26.27は書込みアドレスD(3,Dp、Dvと同
期して信号di、d2を順次セットする。
ここで比較器19に着目し、読出しアドレスSOと、書
込みアドレスDeが一致し、信号d3が1”、信号d2
eが“1”の時に信号dleが“0”であれば論理回路
Mlを介して信号g5を“1″としてレジスタ干渉なし
を検出し、信号dieが111であれば、論理回路Me
を介して信号geをmO”とすることにより、レジスタ
干渉を検出する。言い換えれば、例えば命令2によるレ
ジスタ読出しアドレスSOが有効(d3が′1つであり
、命令1がL命令(d leが“1”)であって、書込
みアドレスDeが有効(d 2eが“1”)であり、該
各読出しアドレスSOと書込みアドレスDeとが一致し
た時に、レジスタ干渉が検出される。
込みアドレスDeが一致し、信号d3が1”、信号d2
eが“1”の時に信号dleが“0”であれば論理回路
Mlを介して信号g5を“1″としてレジスタ干渉なし
を検出し、信号dieが111であれば、論理回路Me
を介して信号geをmO”とすることにより、レジスタ
干渉を検出する。言い換えれば、例えば命令2によるレ
ジスタ読出しアドレスSOが有効(d3が′1つであり
、命令1がL命令(d leが“1”)であって、書込
みアドレスDeが有効(d 2eが“1”)であり、該
各読出しアドレスSOと書込みアドレスDeとが一致し
た時に、レジスタ干渉が検出される。
信号geが“0°になると、第4図を参照し、命令1の
E、Pステージにより、アクセスデータ((So)+1
)がアクセス回路3、切換回路17を介してレジスタ1
8にセットされるまで、ゲートANDにより命令レジス
タ6へのセットを中止し、第4図におけるX状態のよう
に命令2で、例えばA命令によるレジスタ6の読出しを
待たせる。
E、Pステージにより、アクセスデータ((So)+1
)がアクセス回路3、切換回路17を介してレジスタ1
8にセットされるまで、ゲートANDにより命令レジス
タ6へのセットを中止し、第4図におけるX状態のよう
に命令2で、例えばA命令によるレジスタ6の読出しを
待たせる。
次に、命令1がA或はAI命令(d leが“0“)で
あって、比較器19が“1”で、信号g5が“1”の場
合を第3図、第4図を参照して説明する。
あって、比較器19が“1”で、信号g5が“1”の場
合を第3図、第4図を参照して説明する。
例えば命令1がA命令、命令2がAI命令で命令1の書
込みアドレスDと命令2の読出しアドレスSOがレジス
タファイル12の同じアドレスを指定した場合、先に述
べた様に、命令1のEステージ(マシンサイクル−3)
においては演算器15で加算を実行しており、この結果
がレジスタファイル12に書込まれるのは命令1のWス
テージ(マシンサイクル−5)である。命令2がこの書
込み内容をレジスタファイル12から読出して演算を実
行するとすれば、命令2のRステージをマシンサイクル
5以降まで待たせてレジスタファイルを読出し、その後
、演算を実行しなければならないため、第4図の様にX
状態を生じ、命令の実行が遅れてしまうが、第1図で信
号g5が“1″の場合にはゲートG5が開き、命令1の
Eステージで演算器15の演算結果がレジスタG5を介
してレジスタ13にセットされる。レジスタ13にセッ
トされた内容は、マシンサイクル5でレジスタファイル
12に書込むものと同一であり、命令2のRステージで
は、SOで指定したレジスタファイル12の内容を読出
すことなく、命令2のEステージで、レジスタ13とレ
ジスタ14(命令2によるAI命令のIで指定した値)
の内容によって演算器15で演算され(マシンサイクル
4)、その結果がマシンサイクル6でレジスタファイル
12に書込まれる。よって、第3図の様にX状態なしに
命令実行が可能となる。
込みアドレスDと命令2の読出しアドレスSOがレジス
タファイル12の同じアドレスを指定した場合、先に述
べた様に、命令1のEステージ(マシンサイクル−3)
においては演算器15で加算を実行しており、この結果
がレジスタファイル12に書込まれるのは命令1のWス
テージ(マシンサイクル−5)である。命令2がこの書
込み内容をレジスタファイル12から読出して演算を実
行するとすれば、命令2のRステージをマシンサイクル
5以降まで待たせてレジスタファイルを読出し、その後
、演算を実行しなければならないため、第4図の様にX
状態を生じ、命令の実行が遅れてしまうが、第1図で信
号g5が“1″の場合にはゲートG5が開き、命令1の
Eステージで演算器15の演算結果がレジスタG5を介
してレジスタ13にセットされる。レジスタ13にセッ
トされた内容は、マシンサイクル5でレジスタファイル
12に書込むものと同一であり、命令2のRステージで
は、SOで指定したレジスタファイル12の内容を読出
すことなく、命令2のEステージで、レジスタ13とレ
ジスタ14(命令2によるAI命令のIで指定した値)
の内容によって演算器15で演算され(マシンサイクル
4)、その結果がマシンサイクル6でレジスタファイル
12に書込まれる。よって、第3図の様にX状態なしに
命令実行が可能となる。
(発明の効果)
以上説明したように本発明によれば、レジスタ干渉が生
じないステージにおいては、先行命令の書込みアドレス
と当該命令の読出しアドレスが一致した場合に、先行命
令の書込みアドレスによるデータを当該命令の読出しデ
ータに代えて使用するようにして、当該命令による読出
しの動作のためのバイブラインの待ち状態を不要にした
ので、情報処理装置の処理能力の向上が図れる。
じないステージにおいては、先行命令の書込みアドレス
と当該命令の読出しアドレスが一致した場合に、先行命
令の書込みアドレスによるデータを当該命令の読出しデ
ータに代えて使用するようにして、当該命令による読出
しの動作のためのバイブラインの待ち状態を不要にした
ので、情報処理装置の処理能力の向上が図れる。
第1図は本発明の実施例を示す情報処理装置の演算回路
の構成を示すブロック図、第2図は演算命令の例を示す
図、第3図はバイブラインの演算命令実行中のタイムチ
ャート、第4図はバイブラインの先行命令実行の終了を
待機する場合のタイムチャート、第5図は第1図の演算
回路を含む情報処理装置の要部構成を示すブロック図、
第6図は第1図のレジスタ干渉検出回路の構成を示すブ
ロック図である。 6・・・命令レジスタ、7・・・命令解読器、8・・・
レジスタ干渉検出回路1.9.10.11・・・レジス
タ(アドレス保持手段)、12・・・レジスタファイル
、15・・・演算器、19,20,21,22,23゜
24・・・比較器(比較手段)、Ml、M2.M3゜M
4 、M5 、M6 、Mc・・・論理回路(レジスタ
干渉設定手段)、Gl、G2.G3.G4.G5゜G6
・・・ゲート(ゲート手段) 、AND・・・アンドゲ
ート(命令停止手段)。 特許出願人 沖電気工業株式会社 代理人 弁理士 吉 1)精 孝 A余4 m二仁イ[コニ丁■![]で≦巨=[I[二
■二三三三三三三](So)+(S+)−DC骨「【]
ヨ][「■ヨヨ(So)−(S+)Al析−[工■Σ口
]](So)+I−DL 命令 [コニに打玉=二I
EΣ二IHI■■二=]■ニニニ二=]年づ呂入装−,
,45x7 トレ1第3図
の構成を示すブロック図、第2図は演算命令の例を示す
図、第3図はバイブラインの演算命令実行中のタイムチ
ャート、第4図はバイブラインの先行命令実行の終了を
待機する場合のタイムチャート、第5図は第1図の演算
回路を含む情報処理装置の要部構成を示すブロック図、
第6図は第1図のレジスタ干渉検出回路の構成を示すブ
ロック図である。 6・・・命令レジスタ、7・・・命令解読器、8・・・
レジスタ干渉検出回路1.9.10.11・・・レジス
タ(アドレス保持手段)、12・・・レジスタファイル
、15・・・演算器、19,20,21,22,23゜
24・・・比較器(比較手段)、Ml、M2.M3゜M
4 、M5 、M6 、Mc・・・論理回路(レジスタ
干渉設定手段)、Gl、G2.G3.G4.G5゜G6
・・・ゲート(ゲート手段) 、AND・・・アンドゲ
ート(命令停止手段)。 特許出願人 沖電気工業株式会社 代理人 弁理士 吉 1)精 孝 A余4 m二仁イ[コニ丁■![]で≦巨=[I[二
■二三三三三三三](So)+(S+)−DC骨「【]
ヨ][「■ヨヨ(So)−(S+)Al析−[工■Σ口
]](So)+I−DL 命令 [コニに打玉=二I
EΣ二IHI■■二=]■ニニニ二=]年づ呂入装−,
,45x7 トレ1第3図
Claims (1)
- 【特許請求の範囲】 命令レジスタからの命令信号を読出すステージと、該命
令信号に基づいてレジスタファイルから演算用のデータ
を読出すステージと、該演算用データを用いて演算器に
より演算するステージと、その演算結果をレジスタファ
イルに書込むステージとを有してパイプライン制御する
情報処理装置において、 先行命令によるレジスタファイルへの書込みアドレスを
各ステージ毎に保持するアドレス保持手段と、 当該命令によるレジスタファイルの読出しアドレスと前
記アドレス保持手段に保持された各ステージの書込みア
ドレスとをそれぞれ比較して相互の一致信号或いは不一
致信号を出力する比較手段と、 前記アドレス保持手段が各保持対象とした先行命令の各
ステージと現行命令のステージとにより該各ステージ毎
にレジスタ干渉が生ずるか否かを設定しているレジスタ
干渉設定手段と、 前記レジスタ干渉が生ずるステージにおいて前記命令レ
ジスタの読出しを停止させる命令停止手段と、 前記レジスタ干渉が生じないステージにおいて前記比較
手段が一致信号を出力したとき先行命令による当該ステ
ージのデータを現行命令によるレジスタファイルの読出
しデータに代えて前記演算器に与えるゲート手段とを備
えた ことを特徴とする情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5638588A JPH01231126A (ja) | 1988-03-11 | 1988-03-11 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5638588A JPH01231126A (ja) | 1988-03-11 | 1988-03-11 | 情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01231126A true JPH01231126A (ja) | 1989-09-14 |
Family
ID=13025782
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5638588A Pending JPH01231126A (ja) | 1988-03-11 | 1988-03-11 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01231126A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04328637A (ja) * | 1991-04-30 | 1992-11-17 | Toshiba Corp | 並列プロセッサー |
| US7174525B2 (en) | 1992-03-31 | 2007-02-06 | Seiko Epson Corporation | Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip |
| CN100419638C (zh) * | 2005-03-14 | 2008-09-17 | 索尼计算机娱乐公司 | 使用指令相关性查看深度来改善处理性能的方法和装置 |
-
1988
- 1988-03-11 JP JP5638588A patent/JPH01231126A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04328637A (ja) * | 1991-04-30 | 1992-11-17 | Toshiba Corp | 並列プロセッサー |
| US7174525B2 (en) | 1992-03-31 | 2007-02-06 | Seiko Epson Corporation | Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip |
| US7555738B2 (en) | 1992-03-31 | 2009-06-30 | Seiko Epson Corporation | Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip |
| CN100419638C (zh) * | 2005-03-14 | 2008-09-17 | 索尼计算机娱乐公司 | 使用指令相关性查看深度来改善处理性能的方法和装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6028015B2 (ja) | 情報処理装置 | |
| JP2620511B2 (ja) | データ・プロセッサ | |
| JPH02287626A (ja) | パイプライン方式の分岐命令制御装置 | |
| JPH01231126A (ja) | 情報処理装置 | |
| JPH1196006A (ja) | 情報処理装置 | |
| JPH06124207A (ja) | サブルーチン分岐命令実行方法 | |
| JP2812610B2 (ja) | パイプライン制御方式 | |
| JPH0377137A (ja) | 情報処理装置 | |
| JPS61131047A (ja) | パイプライン制御方式 | |
| JPH0248733A (ja) | 情報処理装置 | |
| JPS63188230A (ja) | 情報処理装置 | |
| JPH0540629A (ja) | 情報処理装置 | |
| JPH0916399A (ja) | 計算機 | |
| JP2002024012A (ja) | マイクロプロセッサ | |
| JPH02206836A (ja) | データ処理装置 | |
| JPH11119995A (ja) | データ処理装置および方法 | |
| JPH0234058B2 (ja) | ||
| JPH06259250A (ja) | 情報処理装置 | |
| JPH0546389A (ja) | 並列処理装置 | |
| JPS62237533A (ja) | デ−タ処理装置 | |
| JPH0553804A (ja) | 並列処理装置 | |
| JPH02148226A (ja) | 情報処理装置 | |
| JPH01189727A (ja) | 情報処理装置 | |
| JPS58215779A (ja) | デ−タ処理装置 | |
| JPS58134350A (ja) | メモリ制御装置 |