JPS62175831A - タグ付きパイプライン制御方式 - Google Patents
タグ付きパイプライン制御方式Info
- Publication number
- JPS62175831A JPS62175831A JP1689386A JP1689386A JPS62175831A JP S62175831 A JPS62175831 A JP S62175831A JP 1689386 A JP1689386 A JP 1689386A JP 1689386 A JP1689386 A JP 1689386A JP S62175831 A JPS62175831 A JP S62175831A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- tag
- input
- pipeline
- processing
- 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
- 238000000034 method Methods 0.000 claims abstract description 12
- 230000006866 deterioration Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 5
- 238000003672 processing method Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概 要〕
パイプライン制御方式において、命令として各命令間の
データ依存性を指示するタグを付加した命令を用い、パ
イプライン処理未終了の各命令のタグ内容と入力命令の
タグ内容に基づいて人力命令の実行順序を制御する。こ
れにより、データ依存性のある入力命令が続は入力され
てもパイプライン処理の流れが乱されることがな(、デ
ータ処理を高速に実行することが出来る。
データ依存性を指示するタグを付加した命令を用い、パ
イプライン処理未終了の各命令のタグ内容と入力命令の
タグ内容に基づいて人力命令の実行順序を制御する。こ
れにより、データ依存性のある入力命令が続は入力され
てもパイプライン処理の流れが乱されることがな(、デ
ータ処理を高速に実行することが出来る。
本発明は、パイプライン処理によりデータ処理を行う場
合のパイプライン制御方式、特にデータ依存性のある命
令が続けて現われても高速に処理出来る様に改良したパ
イプライン制御方式に関する。
合のパイプライン制御方式、特にデータ依存性のある命
令が続けて現われても高速に処理出来る様に改良したパ
イプライン制御方式に関する。
パイプライン処理方式は、データ処理を高速に実行する
ことが出来るので広く用いられている。
ことが出来るので広く用いられている。
このパイプライン処理方式は、複数の機能単位を直列に
接続し、並列処理形式でデータ処理を行うことにより、
データの高速処理を行っている。
接続し、並列処理形式でデータ処理を行うことにより、
データの高速処理を行っている。
このパイプライン処理方式は、各機能単位がそれぞれの
機能単位の命令を独立に実行しているときに、最も効率
的にデータ処理を行うことが可能である。
機能単位の命令を独立に実行しているときに、最も効率
的にデータ処理を行うことが可能である。
然しなから、命令間にデータ依存性がある場合、例えば
ある入力命令が先行する他の命令の処理結果を利用する
ものである場合は、その人力命令の実行は、他の先行命
令の処理が終了するまで留保されることになる。
ある入力命令が先行する他の命令の処理結果を利用する
ものである場合は、その人力命令の実行は、他の先行命
令の処理が終了するまで留保されることになる。
従来は、人力命令の実行が、先行する他の命令の処理結
果に依存する場合は、その入力命令及びそれ以降の各命
令の実行を停め、前記先行命令の終了後その処理結果に
基づいて入力命令を実行し、更にそれに続く各命令を実
行する様にしていた。
果に依存する場合は、その入力命令及びそれ以降の各命
令の実行を停め、前記先行命令の終了後その処理結果に
基づいて入力命令を実行し、更にそれに続く各命令を実
行する様にしていた。
従来のパイプライン処理方式は、入力命令がデータ依存
性を有する先行命令がパイプライン処理中であると、そ
の先行命令の処理が終了するまで入力命令及びそれ以降
の各命令の実行を留保していた。
性を有する先行命令がパイプライン処理中であると、そ
の先行命令の処理が終了するまで入力命令及びそれ以降
の各命令の実行を留保していた。
この為、パイプラインの流れが乱され、実行速度が全体
として低下するという問題があった。特に、データ依存
性のある命令が頻発する場合には、実行速度の低下が大
きく、パイプライン処理の特徴が損われるという問題が
あった。
として低下するという問題があった。特に、データ依存
性のある命令が頻発する場合には、実行速度の低下が大
きく、パイプライン処理の特徴が損われるという問題が
あった。
本発明は、データ依存性のある命令が続けて現われても
、それによるデータ処理速度の低下を極力抑え、高速な
データ処理が可能なパイプライン制御方式を提供するこ
とを目的とする。
、それによるデータ処理速度の低下を極力抑え、高速な
データ処理が可能なパイプライン制御方式を提供するこ
とを目的とする。
従来のパイプライン処理における前述の問題点を解決す
る為に本発明が講じた手段を、第1図を参照して説明す
る。
る為に本発明が講じた手段を、第1図を参照して説明す
る。
第1図(A)、本発明のタグ付きパイプライン制御方式
に用いられるタグ付き命令の説明図、同図(B)は、本
発明のタグ付きパイプライン制御方式の原理をブロック
図で示したものである。
に用いられるタグ付き命令の説明図、同図(B)は、本
発明のタグ付きパイプライン制御方式の原理をブロック
図で示したものである。
第1図(A)のタグ付き命令において、02部には命令
がセットされ、オペランド部には命令のオペランドがセ
ントされる。
がセットされ、オペランド部には命令のオペランドがセ
ントされる。
タグ部は本発明によって付加されたもので、その命令が
どの資源を活用するかを示すデータがセットされる。例
えば、各資源に対応するビット領域を設け、活動する資
源に対するビット領域にフラグを立てる様にする。
どの資源を活用するかを示すデータがセットされる。例
えば、各資源に対応するビット領域を設け、活動する資
源に対するビット領域にフラグを立てる様にする。
第1図(B)において、200は、公知のパイプライン
処理手段である。
処理手段である。
100は命令実行順序制御手段で、パイプライン処理手
段200における処理が未終了の各命令のタグ内容と入
力命令のタグ内容に基づいて入力命令の実行順序を制御
する。
段200における処理が未終了の各命令のタグ内容と入
力命令のタグ内容に基づいて入力命令の実行順序を制御
する。
入力命令があると、命令実行順序制御手段100は、パ
イプライン処理手段200における処理が未終了の各命
令のタグ内容と入力命令のタグ内容に基づいて入力命令
の実行順序を制御する。
イプライン処理手段200における処理が未終了の各命
令のタグ内容と入力命令のタグ内容に基づいて入力命令
の実行順序を制御する。
例えば、入力命令のタグ部に何もフラグが立っていない
場合又は入力命令のタグ内容とパイプライン処理未終了
の各命令のタグ内容のいずれとも一致しないときは、入
力命令がデータ依存性を有する先行命令が存在しないと
判断されるので、入力命令は留保されることなくパイプ
ライン処理手段200に加えられる。
場合又は入力命令のタグ内容とパイプライン処理未終了
の各命令のタグ内容のいずれとも一致しないときは、入
力命令がデータ依存性を有する先行命令が存在しないと
判断されるので、入力命令は留保されることなくパイプ
ライン処理手段200に加えられる。
又、人力命令のタグ内容がパイプライン処理未終了の各
命令のタグ内容のいずれかと一致する場合でも、その入
力命令の実行が後に回すことが出来る場合は、その入力
命令の実行のみを留保して次の入力命令を実行させる様
にする。
命令のタグ内容のいずれかと一致する場合でも、その入
力命令の実行が後に回すことが出来る場合は、その入力
命令の実行のみを留保して次の入力命令を実行させる様
にする。
実行を留保された入力命令があるときは、命令実行順次
制御手段100は、この留保された入力命令のタグ内容
もパイプライン処理未終了の各命令のタグ内容として次
の入力命令のタグ内容と対比し、それに基づいて前記例
示の様な命令順序の制御を行う。
制御手段100は、この留保された入力命令のタグ内容
もパイプライン処理未終了の各命令のタグ内容として次
の入力命令のタグ内容と対比し、それに基づいて前記例
示の様な命令順序の制御を行う。
パイプライン処理においては、入力命令がデータ依存性
を有する先行命令がパイプライン処理未終了の命令中に
存在しても、その入力命令の実行を後に回わせる場合が
多いので、以上の様なタグ付きパイプライン制御により
、データ保存性のある命令が続けて入力されても、パイ
プラインの流れが乱されることは大幅に減少し、データ
を高速に処理することが出来る。
を有する先行命令がパイプライン処理未終了の命令中に
存在しても、その入力命令の実行を後に回わせる場合が
多いので、以上の様なタグ付きパイプライン制御により
、データ保存性のある命令が続けて入力されても、パイ
プラインの流れが乱されることは大幅に減少し、データ
を高速に処理することが出来る。
本発明の実施例を、第2図を参照して説明する。
第2図は、本発明の実施装置の構成をブロック図で示し
たものである。
たものである。
第2図において、命令実行順序制御手段100及びパイ
プライン処理手段200については、第1図で説明した
通りである。
プライン処理手段200については、第1図で説明した
通りである。
命令実行順序制御手段100において、110はタグ保
持部で、内部にタグレジスタ111、オア回路112及
び排他的オア回路113を備え、パイプライン処理未終
了の各命令のタグ内容を保持する。
持部で、内部にタグレジスタ111、オア回路112及
び排他的オア回路113を備え、パイプライン処理未終
了の各命令のタグ内容を保持する。
タグレジスタ111は、第1図(A)のタグ部に対応し
たビット領域を有し、排他的オア回路113から入力さ
れたタグ内容を格納する。
たビット領域を有し、排他的オア回路113から入力さ
れたタグ内容を格納する。
オア回路112には、入力命令のタグ部とタグレジスタ
111が入力される。排他的オア回路113には、パイ
プライン処理手段200で処理の終った命令のタグ部と
オア回路113の出力とが加えられる。
111が入力される。排他的オア回路113には、パイ
プライン処理手段200で処理の終った命令のタグ部と
オア回路113の出力とが加えられる。
このオア回路112及び排他的オア回路113により、
タグレジスタ111内には、パイプライン処理未終了の
各命令のタグ内容が全て保持される。
タグレジスタ111内には、パイプライン処理未終了の
各命令のタグ内容が全て保持される。
各命令のタグ部は、活用の対象となる各資源に対応する
各ピッ) Sr1域を有し、その命令が活用する各資源
に対するビット領域にそれぞれフラグが立てられる。従
って、タグレジスタ111内の各ビットRM域における
フラグの有無により、パイプライン処理未終了の各命令
によって活用されている資源の内容を知ることが出来る
。・なお、パイプライン処理未終了の各命令には、パイ
プライン処理手段200において現在処理中の各命令及
び、次に説明する留保中の各入力命令が含まれる。
各ピッ) Sr1域を有し、その命令が活用する各資源
に対するビット領域にそれぞれフラグが立てられる。従
って、タグレジスタ111内の各ビットRM域における
フラグの有無により、パイプライン処理未終了の各命令
によって活用されている資源の内容を知ることが出来る
。・なお、パイプライン処理未終了の各命令には、パイ
プライン処理手段200において現在処理中の各命令及
び、次に説明する留保中の各入力命令が含まれる。
120は先行命令判定部で、入力命令のタグ部とタグレ
ジスタ111の内容を比較し、先ず人力命令がデータ依
存性を有する先行命令がパイプライン処理未終了の各命
令中に存在するか否かを判定する。即ち、人力命令のタ
グ部のフラグの立っているビット領域に対応するタグレ
ジスタ111のビット領域におけるフラグの有無により
、パイプライン処理未終了の命令中に入力命令がデータ
依存性を有する先行命令の有無を判定することが出来る
。
ジスタ111の内容を比較し、先ず人力命令がデータ依
存性を有する先行命令がパイプライン処理未終了の各命
令中に存在するか否かを判定する。即ち、人力命令のタ
グ部のフラグの立っているビット領域に対応するタグレ
ジスタ111のビット領域におけるフラグの有無により
、パイプライン処理未終了の命令中に入力命令がデータ
依存性を有する先行命令の有無を判定することが出来る
。
先行命令判定部120は、これら各場合に応じた制御信
号を発生して入力制御部130に加える。
号を発生して入力制御部130に加える。
入力制御部130は、内部に後に囲わされる命令を一時
格納する留保レジスタ131を備え、先行命令判定部1
20より加えられた各制御信号に応じて、入力命令の実
行順序を制御する。
格納する留保レジスタ131を備え、先行命令判定部1
20より加えられた各制御信号に応じて、入力命令の実
行順序を制御する。
入力命令のタグ部に何もフラグが立っていない場合又は
入力命令がデータ依存性を有する先行命令がパイプライ
ン処理未終了の各命令中に存在しない場合は、大力制御
部130は入力命令を留保することなく直ちにパイプラ
イン処理手段200に供給し、所定のパイプライン処理
を実行させる。
入力命令がデータ依存性を有する先行命令がパイプライ
ン処理未終了の各命令中に存在しない場合は、大力制御
部130は入力命令を留保することなく直ちにパイプラ
イン処理手段200に供給し、所定のパイプライン処理
を実行させる。
入力命令(入力命令(1)とする)がデータ依存性を有
する先行命令(先行命令(11とする)がパイプライン
処理未終了の各命令中に存在する場合は、その入力命令
(1)を留保レジスタ131に一時格納し、次の入力命
令(入力命令(2)とする)に対する処理を行う。この
とき、留保された入力命令(1)もパイプライン処理未
終了の命令となり、そのタグ部の内容は、タグレジスタ
111内に格納されている。
する先行命令(先行命令(11とする)がパイプライン
処理未終了の各命令中に存在する場合は、その入力命令
(1)を留保レジスタ131に一時格納し、次の入力命
令(入力命令(2)とする)に対する処理を行う。この
とき、留保された入力命令(1)もパイプライン処理未
終了の命令となり、そのタグ部の内容は、タグレジスタ
111内に格納されている。
前記次の人力命令(2)に対し、タグ保持部110、先
行命令判定部120及び入力制御部130は、前述の各
処理を行う。
行命令判定部120及び入力制御部130は、前述の各
処理を行う。
もし、次の人力命令(2)がデータ依存性を有する先行
命令(先行命令(2)とする)が存在する場合は、次の
入力命令(2)も留保レジスタ131内に留保される。
命令(先行命令(2)とする)が存在する場合は、次の
入力命令(2)も留保レジスタ131内に留保される。
1つの命令に対するパイプライン処理が終了すると、そ
の命令のタグ部は排他的オア回路113に入力される。
の命令のタグ部は排他的オア回路113に入力される。
排他的オア回路113の他方の入力端には、オア回路1
12を通ってタグレジスタ111の内容が加えられる。
12を通ってタグレジスタ111の内容が加えられる。
これにより、タグレジスタ111の内容は前記命令のタ
グの内容が除去されたものに更新される。
グの内容が除去されたものに更新される。
従って、最初の入力命令(1)が依存する先行命令(1
)に対するパイプライン処理が終了すると、タグレジス
タ111の内容は前記入力命令(1)のタグ部の内容が
除されたものとなる。
)に対するパイプライン処理が終了すると、タグレジス
タ111の内容は前記入力命令(1)のタグ部の内容が
除されたものとなる。
先行命令判定部120は、留保レジスタ131内に格納
されている入力命令(11のタグ部とタグレジスタ11
1の内容を対比し、入力命令(1)がデータ依存性を有
する先行命令(2)の処理が終了したときは、それまで
留保されていた人力命令(1)の実行を入力制御部13
0に指示する。
されている入力命令(11のタグ部とタグレジスタ11
1の内容を対比し、入力命令(1)がデータ依存性を有
する先行命令(2)の処理が終了したときは、それまで
留保されていた人力命令(1)の実行を入力制御部13
0に指示する。
先行命令判定部120からの前記指示を受けると、入力
制御部130は留保レジスタ131より入力命令(1)
を取り出してパイプライン処理手段200に供給し、そ
の命令を実行させる。
制御部130は留保レジスタ131より入力命令(1)
を取り出してパイプライン処理手段200に供給し、そ
の命令を実行させる。
留保されている入力命令(2)に対する処理も、同様に
して行われる。
して行われる。
以下、同様にして、各入力命令に対し、その実行順序が
順次制御される。
順次制御される。
もし、入力命令が依存する先行命令がパイプライン処理
未終了の命令中に存在し、且つ留保レジスタに空きがな
い場合は、従来方式と同様にその入力命令及びそれに続
く入力命令の実行は、その先行命令のパイプライン処理
が終了するまで留保される。
未終了の命令中に存在し、且つ留保レジスタに空きがな
い場合は、従来方式と同様にその入力命令及びそれに続
く入力命令の実行は、その先行命令のパイプライン処理
が終了するまで留保される。
以上の様にして、パイプライン処理未終了の各先行命令
中にデータ依存性のある入力命令が続けて入力された場
合も、パイプライン処理の流れが乱されることなく円滑
に行うことが出来る。
中にデータ依存性のある入力命令が続けて入力された場
合も、パイプライン処理の流れが乱されることなく円滑
に行うことが出来る。
なお、留保レジスタ131が一時格納することの出来る
人力命令の数は2個に限定されるものではなく、一般に
複数個の命令を格納することが出来る。
人力命令の数は2個に限定されるものではなく、一般に
複数個の命令を格納することが出来る。
以上説明した様に、本発明によれば、パイプライン処理
未終了の各先行命令中にデータ依存性のある人力命令が
続けて入力された場合も、その入力命令が後に回わせる
場合はその入力命令の実行のみを留保して他の入力命令
を続行することが出来るので、前記データ依存性のある
入力命令が続けて人力された場合も、パイプライン処理
の流れが乱されることなく、データ処理を高速に行うこ
とが出来る。
未終了の各先行命令中にデータ依存性のある人力命令が
続けて入力された場合も、その入力命令が後に回わせる
場合はその入力命令の実行のみを留保して他の入力命令
を続行することが出来るので、前記データ依存性のある
入力命令が続けて人力された場合も、パイプライン処理
の流れが乱されることなく、データ処理を高速に行うこ
とが出来る。
第1図・・・本発明の原理及び本発明に用いられるタグ
付き命令の説明図、 第2図・・・本発明の実施装置の説明図。 第1図及び第2図において、 100・・・命令実行順序制御手段、110・・・タグ
保持部、120・・・先行命令判定部、130・・・入
力制御部、200・・・パイプライン処理手段。
付き命令の説明図、 第2図・・・本発明の実施装置の説明図。 第1図及び第2図において、 100・・・命令実行順序制御手段、110・・・タグ
保持部、120・・・先行命令判定部、130・・・入
力制御部、200・・・パイプライン処理手段。
Claims (2)
- (1)パイプライン制御方式において、 (a)命令として各命令間のデータ依存性を支持するタ
グを付加した命令を用い、 (b)パイプライン処理未終了の各命令のタグ内容と入
力命令のタグ内容に基づいて、入力命令の実行順序を制
御する、 ことを特徴とするタグ付きパイプライン制御方式。 - (2)入力命令がデータ依存性を有する命令がパイプラ
イン処理未終了の各命令中に存在する場合、その入力命
令の実行のみを留保するものであることを特徴とする特
許請求の範囲第1項記載のタグ付きパイプライン制御方
式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1689386A JPS62175831A (ja) | 1986-01-30 | 1986-01-30 | タグ付きパイプライン制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1689386A JPS62175831A (ja) | 1986-01-30 | 1986-01-30 | タグ付きパイプライン制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62175831A true JPS62175831A (ja) | 1987-08-01 |
Family
ID=11928834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1689386A Pending JPS62175831A (ja) | 1986-01-30 | 1986-01-30 | タグ付きパイプライン制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62175831A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0277940A (ja) * | 1988-09-14 | 1990-03-19 | Hitachi Ltd | データ処理装置 |
JPH0628182A (ja) * | 1992-04-16 | 1994-02-04 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
US6782521B2 (en) * | 1992-03-31 | 2004-08-24 | Seiko Epson Corporation | Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip |
-
1986
- 1986-01-30 JP JP1689386A patent/JPS62175831A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0277940A (ja) * | 1988-09-14 | 1990-03-19 | Hitachi Ltd | データ処理装置 |
US6782521B2 (en) * | 1992-03-31 | 2004-08-24 | Seiko Epson Corporation | Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip |
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 |
JPH0628182A (ja) * | 1992-04-16 | 1994-02-04 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS63317828A (ja) | マイクロコ−ド読み出し制御方式 | |
JPS62175831A (ja) | タグ付きパイプライン制御方式 | |
JPH08320795A (ja) | プログラム制御システム | |
US6291757B1 (en) | Apparatus and method for processing music data | |
JPH07101385B2 (ja) | 情報処理装置 | |
JPH03288228A (ja) | 情報処理装置 | |
JPH0683624A (ja) | プロセッサの制御方法およびプロセッサ | |
JPH03201131A (ja) | ループ命令処理方式 | |
JPS5899843A (ja) | マイクロプログラムの条件分岐装置 | |
JPH0628183A (ja) | 情報処理装置のパイプライン処理機構 | |
JP2694774B2 (ja) | プログラム分岐方式 | |
JPS63240633A (ja) | 中央処理装置 | |
JPH01166153A (ja) | スチール制御方式 | |
JP2506591B2 (ja) | 補助処理装置 | |
JPS62204340A (ja) | デ−タ処理装置 | |
JPH0398163A (ja) | ベクトルデータ処理装置 | |
JPS63195735A (ja) | 命令実行方式 | |
JPH0449424A (ja) | 命令制御方式 | |
JPS6277651A (ja) | デ−タフロ−型計算機の分岐処理方式 | |
JPS59180634A (ja) | 編集命令処理方式 | |
JPS63261431A (ja) | マ−ジ・プロセス制御方式 | |
JPS62109132A (ja) | マイクロプログラム実行制御回路 | |
JPS6234239A (ja) | 論理定数設定方式 | |
JPS61292750A (ja) | サブル−チン制御方式 | |
JPH05159081A (ja) | データ駆動型情報処理装置 |