JPH0338727A - 資源干渉制御装置とデータ処理装置 - Google Patents
資源干渉制御装置とデータ処理装置Info
- Publication number
- JPH0338727A JPH0338727A JP1174512A JP17451289A JPH0338727A JP H0338727 A JPH0338727 A JP H0338727A JP 1174512 A JP1174512 A JP 1174512A JP 17451289 A JP17451289 A JP 17451289A JP H0338727 A JPH0338727 A JP H0338727A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- information
- execution
- decoding
- word
- 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
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は複数命令を並列に処理するパイプライン制御方
式で制御されるデータ処理装置に関し、特に命令コード
の中に、パイプライン制御により実行される命令間の資
源干渉を制御するための情報をコンパイラがコンパイル
時に生威し、ハードウェアとして、上記資源干渉を制御
するためのコストの最小化を図るデータ処理装置に関す
る。
式で制御されるデータ処理装置に関し、特に命令コード
の中に、パイプライン制御により実行される命令間の資
源干渉を制御するための情報をコンパイラがコンパイル
時に生威し、ハードウェアとして、上記資源干渉を制御
するためのコストの最小化を図るデータ処理装置に関す
る。
従来の技術
従来のパイプライン制御により実行される命令間の資源
干渉を制御する装置としては、「インタフェースJ (
1987年6月号、P348〜350)「Mips R
ISC’ ArchitectureJ(Prenti
ce Hall出版1988年)に示されている。
干渉を制御する装置としては、「インタフェースJ (
1987年6月号、P348〜350)「Mips R
ISC’ ArchitectureJ(Prenti
ce Hall出版1988年)に示されている。
第2図は上記従来のデータ処理装置の構成を示す。図に
も・いて、1は主記憶、2は外部インタフェース、3は
演算ユニット、4は命令レジスタ、5は解読器、6は解
読器レジスタ、7は外部バス、8は命令用内部バス、9
はデータ用内部バスである。
も・いて、1は主記憶、2は外部インタフェース、3は
演算ユニット、4は命令レジスタ、5は解読器、6は解
読器レジスタ、7は外部バス、8は命令用内部バス、9
はデータ用内部バスである。
以上のよりに構成された従来のデータ処理装置における
動作を説明する。第3図はその動作を示すタイミング図
である。検3図においてIFは命令フェッチ、DECは
命令解読、EXは演算、Wは結果書込、Mは外部サイク
ルのステージ(パイプライン処理の基本となる処理単位
)を示す。tl。
動作を説明する。第3図はその動作を示すタイミング図
である。検3図においてIFは命令フェッチ、DECは
命令解読、EXは演算、Wは結果書込、Mは外部サイク
ルのステージ(パイプライン処理の基本となる処理単位
)を示す。tl。
I2.・・・・・I7は時間の経過、■1.工2.〜工
4 は処理される命令列を示す。時間I4においては、
I ノIF、 I ノDEC,I、ノEX、 I、
(7)4 3 Wの各ステージで4命令が並列に処理されている。
4 は処理される命令列を示す。時間I4においては、
I ノIF、 I ノDEC,I、ノEX、 I、
(7)4 3 Wの各ステージで4命令が並列に処理されている。
R−R演算命令は、演算ユニット3内のレジスタとレジ
スタ間の演算操作ロード命令は、主記憶1から演算ユニ
ット3内のレジスタへのデータ転送操作を行なう。
スタ間の演算操作ロード命令は、主記憶1から演算ユニ
ット3内のレジスタへのデータ転送操作を行なう。
命令列11.I2,1.、I。にふ・いて工、がロード
命令、■。がR−R演算命令の時、命令工、で利用され
るレジスタは命令I2の実行により影響を受けないもの
に限られる。
命令、■。がR−R演算命令の時、命令工、で利用され
るレジスタは命令I2の実行により影響を受けないもの
に限られる。
主記憶1に格納された命令列は外部バス7、外部インタ
フェース2、命令用内部バス8を経て命令レジスタ4に
転送される。命令レジスタ4に格納された命令は解読器
5により解読され、演算ユニット3を制御するための情
報に変換され解読器レジスタ6に格納される。
フェース2、命令用内部バス8を経て命令レジスタ4に
転送される。命令レジスタ4に格納された命令は解読器
5により解読され、演算ユニット3を制御するための情
報に変換され解読器レジスタ6に格納される。
第3図において命令工。は命令I2により主記憶1より
転送されるデータが格納されるレジスタ。
転送されるデータが格納されるレジスタ。
を必要としているが、外部サイクルステージ(M)の終
了を待って動作し、命令工、の2つ以後の命令はこの場
合、使用するレジスタに制限が付くことはなく、命令工
、の直後の命令即ち工、の使用するレジスタをコンパイ
ラが調整することにより、パイプライン処理による並列
実行を矛盾なく実現することができる。
了を待って動作し、命令工、の2つ以後の命令はこの場
合、使用するレジスタに制限が付くことはなく、命令工
、の直後の命令即ち工、の使用するレジスタをコンパイ
ラが調整することにより、パイプライン処理による並列
実行を矛盾なく実現することができる。
発明が解決しよりとする課題
しかしながら」二記のよりな方法では、外部サイクル命
令直後の命令として、この外部サイクル命令の格納先の
レジスタを必要としない命令をコンバイバラが生成する
必要があるが、適当な命令列のスケジュールができない
場合、外部サイクル命令直後の命令として、無効動作(
nop命令)を挿入する必要があシ、不用な命令を主記
憶よシフエッチしなければならない等の問題点を有して
いる。
令直後の命令として、この外部サイクル命令の格納先の
レジスタを必要としない命令をコンバイバラが生成する
必要があるが、適当な命令列のスケジュールができない
場合、外部サイクル命令直後の命令として、無効動作(
nop命令)を挿入する必要があシ、不用な命令を主記
憶よシフエッチしなければならない等の問題点を有して
いる。
本発明はかかる点に鑑み、命令フォーマットにおいて先
行する命令が必要とする資源との干渉を回避するため、
資源干渉が除去されるタイミングに関する情報をコンパ
イラが算出し、直接これを命令中に埋込むことができる
命令体系を利用することにより、不用な命令のフェッチ
を必要としない低コストなデータ処理装置を提供するこ
とを目的とする。
行する命令が必要とする資源との干渉を回避するため、
資源干渉が除去されるタイミングに関する情報をコンパ
イラが算出し、直接これを命令中に埋込むことができる
命令体系を利用することにより、不用な命令のフェッチ
を必要としない低コストなデータ処理装置を提供するこ
とを目的とする。
課題を解決するための手段
本発明は命令語解読後、命令を実行する曾ての遅延間開
に関する情報を命令語中に設定できる特定のフィールド
をもつ命令形式を含んだ命令体系を解読する手段を有し
、上記遅延時間に関する情報を有する命令に対して」二
記設定された情報に従い、先行する1つ筐たは複数の命
令の実行結果を後続する命令が必要とする場合、命令の
実行をこの命令語の特定のフィールドに設定された情報
によジ遅らせることにより先行する命令と後続する命令
間の資源干渉を回避することを動機とするデータ処理装
置および先行する命令結果が有効になるタイミングに関
する情報を後続する命令語中に設定できる命令体系を有
し、上記タイミングに関する情報として命令解読後、こ
の命令により指示される演算処理などの操作の対象とな
るレジスタ等に対する操作を先行する命令の種類により
決められた時間、あるいはメモリ装置または入出力装置
よシ送出される同期信号が有効となる時間せで遅延させ
るための情報を命令語中よシ取り出し格納する手段と、
この情報に従い決められた時間の計測あるいけ上記同期
信号の検出を行なう手段を備えた資源干渉制御製箔であ
る。
に関する情報を命令語中に設定できる特定のフィールド
をもつ命令形式を含んだ命令体系を解読する手段を有し
、上記遅延時間に関する情報を有する命令に対して」二
記設定された情報に従い、先行する1つ筐たは複数の命
令の実行結果を後続する命令が必要とする場合、命令の
実行をこの命令語の特定のフィールドに設定された情報
によジ遅らせることにより先行する命令と後続する命令
間の資源干渉を回避することを動機とするデータ処理装
置および先行する命令結果が有効になるタイミングに関
する情報を後続する命令語中に設定できる命令体系を有
し、上記タイミングに関する情報として命令解読後、こ
の命令により指示される演算処理などの操作の対象とな
るレジスタ等に対する操作を先行する命令の種類により
決められた時間、あるいはメモリ装置または入出力装置
よシ送出される同期信号が有効となる時間せで遅延させ
るための情報を命令語中よシ取り出し格納する手段と、
この情報に従い決められた時間の計測あるいけ上記同期
信号の検出を行なう手段を備えた資源干渉制御製箔であ
る。
作 用
本発明ばTi”11記した昂−或により、先行する命令
の実行結果を後続する命令が必要とする時、これに関す
る情報を後続する命令語の中に組込むことにより、パイ
プライン処理における命令間の資源干渉制御におけるハ
ードウェアコストの低減を図ることができる。
の実行結果を後続する命令が必要とする時、これに関す
る情報を後続する命令語の中に組込むことにより、パイ
プライン処理における命令間の資源干渉制御におけるハ
ードウェアコストの低減を図ることができる。
実施例
第1図は本発明の実施例におけるデータ処理装置の構成
図である。
図である。
第1図において10は主記憶、20は外部インタフェー
ス、30は演算ユニット、40は命令レジスタ、50は
解読器、60は解読器レジスタ、7oは外部バス、80
は命令用内部バス、90はデータ用内部バス、100は
遅延制御回路、110は遅延同期制御回路、120は同
期信号、130.131.140,140は遅延制御信
号である。
ス、30は演算ユニット、40は命令レジスタ、50は
解読器、60は解読器レジスタ、7oは外部バス、80
は命令用内部バス、90はデータ用内部バス、100は
遅延制御回路、110は遅延同期制御回路、120は同
期信号、130.131.140,140は遅延制御信
号である。
第4図は、第1図の実施例にち−ける命令語形式の説明
図である。第4図に釦いて○Pは、命令固有の機能を定
義するフィールドである。RA 、 RB 。
図である。第4図に釦いて○Pは、命令固有の機能を定
義するフィールドである。RA 、 RB 。
RCは操作の対象となるオペランドを定義するフィール
ドであシ、RAは第1ソースオペランド、RBは第2ン
ースオペランド、RCは第1+第2ソースオペランドを
加工して得られる結果を格納するディスティネーション
オペランドを示している。DCは本発明の中心をなす先
行命令との関係において資源干渉が発生する際、実行の
遅延時間に関する情報を定義するフィールドである。
ドであシ、RAは第1ソースオペランド、RBは第2ン
ースオペランド、RCは第1+第2ソースオペランドを
加工して得られる結果を格納するディスティネーション
オペランドを示している。DCは本発明の中心をなす先
行命令との関係において資源干渉が発生する際、実行の
遅延時間に関する情報を定義するフィールドである。
第5図、第6図は第1園の実施例の動作を示すタイミン
グチャートである。第5図、第6図に釦にてIFは命令
フェソチ、DECは命令解読、Exは演算実行、Wは演
算結果格納MOは内部マルチサイクル実行、Ml は外
部マルチサイクル実行の各ステージを示す。筐たt1〜
t8はマシンサイクルの時間系列、工、〜工、は命令系
列を示す。
グチャートである。第5図、第6図に釦にてIFは命令
フェソチ、DECは命令解読、Exは演算実行、Wは演
算結果格納MOは内部マルチサイクル実行、Ml は外
部マルチサイクル実行の各ステージを示す。筐たt1〜
t8はマシンサイクルの時間系列、工、〜工、は命令系
列を示す。
以上のよりに横取された本発明の実施例のi−夕処理装
置について以下その動作を説明する。
置について以下その動作を説明する。
第5図のI、、I、、1.の命令列においてI、、I。
は1サイクルのR−R演算命令、■2は2サイクルのマ
ルチサイク/l/R−R演算命令とする。
ルチサイク/l/R−R演算命令とする。
命令列工、〜工。は主記憶10よシ、外部バス70、外
部インタフェース20、命令用内部バス80を通じて命
令レジスタ40に順次転送される。命令列は解読、実行
、格納のステージで処理される。
部インタフェース20、命令用内部バス80を通じて命
令レジスタ40に順次転送される。命令列は解読、実行
、格納のステージで処理される。
第5図は、■。が先行する命令工、の実行結果を必要と
している場合を示している。工、は2サイクル命令なの
で後読する命令工。は1サイクル実行が遅延する必要が
ある。命令工、が解読され、解読結果が解読器レジスタ
60に格納される時間時に、命令工。の遅延を制御フィ
ールド(DC)の情報が信号線141を通して、遅延制
御回路100に転送され、次のサイクルでの演算ユニソ
1−30の実行を信号線140を送出することによ禁止
し、■、の実行ステージ(EX)を伸長させ資源干渉を
回避する。
している場合を示している。工、は2サイクル命令なの
で後読する命令工。は1サイクル実行が遅延する必要が
ある。命令工、が解読され、解読結果が解読器レジスタ
60に格納される時間時に、命令工。の遅延を制御フィ
ールド(DC)の情報が信号線141を通して、遅延制
御回路100に転送され、次のサイクルでの演算ユニソ
1−30の実行を信号線140を送出することによ禁止
し、■、の実行ステージ(EX)を伸長させ資源干渉を
回避する。
第6図の命令列I、、I、、I。において、11.I3
゜■ は1サイクルのR−R演算命令、■、はマルチサ
イクルを必要とするロード命令とする。
゜■ は1サイクルのR−R演算命令、■、はマルチサ
イクルを必要とするロード命令とする。
主記憶10に格納された命令列■1〜■4 は順次フェ
ッチされ、第6図に示すタイミングで処理される。第6
図は工。が先行する命令工、の実行0 結果(即ちこの場合主記憶10よシの読み出しデータ)
を必要としている場合を示している。工。
ッチされ、第6図に示すタイミングで処理される。第6
図は工。が先行する命令工、の実行0 結果(即ちこの場合主記憶10よシの読み出しデータ)
を必要としている場合を示している。工。
はマルチサイクルを必要とするロード命令であり、実行
サイクルは主記憶10の速度に同期させる必要がある。
サイクルは主記憶10の速度に同期させる必要がある。
命令工。が解読され、)Il/メ読済レジスタ60に格
納される時に、命令■4の遅延制御フィー)vド(DC
)の情報が信号線131を通して遅延同期制御回路11
0に転送され、命令工。の実行を外部インタフェース2
oよシ送出される同期信号120が有効となる咬で、実
行ユニソ)30の実行を信号線130を送出することに
より禁止し、■。の実行ステージ(EX)を伸長させ資
源干渉を回避する。
納される時に、命令■4の遅延制御フィー)vド(DC
)の情報が信号線131を通して遅延同期制御回路11
0に転送され、命令工。の実行を外部インタフェース2
oよシ送出される同期信号120が有効となる咬で、実
行ユニソ)30の実行を信号線130を送出することに
より禁止し、■。の実行ステージ(EX)を伸長させ資
源干渉を回避する。
以上のよりに本発明の実施例によれば、先行する命令の
実行結果を後述する命令が必要とする時、後述命令語の
中に資源干渉に関する待合せ時間、待合せ事象等の情報
を組込むことにより、パイプライン処理に釦ける命令間
の資源干渉回避装置1’Rのハードウェアコストの低減
訃よび、無効命令を命令列中に紹込む方式にトける、不
用な命令フユ、ソチのオーバヘッドを解消および、命令
コードサイズの圧縮を図ることができる。
実行結果を後述する命令が必要とする時、後述命令語の
中に資源干渉に関する待合せ時間、待合せ事象等の情報
を組込むことにより、パイプライン処理に釦ける命令間
の資源干渉回避装置1’Rのハードウェアコストの低減
訃よび、無効命令を命令列中に紹込む方式にトける、不
用な命令フユ、ソチのオーバヘッドを解消および、命令
コードサイズの圧縮を図ることができる。
発明の詳細
な説明したよりに本発明によれば、先行する命令の実行
結果を後続する命令が必要とする時、後続命令語の中に
資源干渉に関する待合せ時間、待合せ事象等に関する情
報を組込むことにより、パイプライン処理を行なう高速
、低コストのデータ処理装置を実現することができ、そ
の実用的効果は大きい。
結果を後続する命令が必要とする時、後続命令語の中に
資源干渉に関する待合せ時間、待合せ事象等に関する情
報を組込むことにより、パイプライン処理を行なう高速
、低コストのデータ処理装置を実現することができ、そ
の実用的効果は大きい。
第1図は本発明の一実施例のデータ処理装置の構成図、
第2図は従来のデータ処理装置の構成図、第3図は従来
のデータ処理装置の動作を説明するタイミング図、第4
図は本発明の実施例における命令語形式の説明図、第5
図、第6図は同実施例の動作を説明するタイミング図で
ある。 10・・・・・・主記憶、20・・・・・・外部インタ
フェース、30・・・・・・演算ユニット、40・・・
・・・命令レジスタ、50・・・・・・解読器、60・
・・・・・解読器レジスタ、70・・・・・・外部バス
、80・・・・・・命令用内部バス、90・・・・・デ
ータ用内部バス、100・・・・・・遅延制御回路、1
10・・・・・・遅延同期制御回路、120・・・・・
・同期信号、130,131.140,141 ・・−
・・遅延制御信号。
第2図は従来のデータ処理装置の構成図、第3図は従来
のデータ処理装置の動作を説明するタイミング図、第4
図は本発明の実施例における命令語形式の説明図、第5
図、第6図は同実施例の動作を説明するタイミング図で
ある。 10・・・・・・主記憶、20・・・・・・外部インタ
フェース、30・・・・・・演算ユニット、40・・・
・・・命令レジスタ、50・・・・・・解読器、60・
・・・・・解読器レジスタ、70・・・・・・外部バス
、80・・・・・・命令用内部バス、90・・・・・デ
ータ用内部バス、100・・・・・・遅延制御回路、1
10・・・・・・遅延同期制御回路、120・・・・・
・同期信号、130,131.140,141 ・・−
・・遅延制御信号。
Claims (2)
- (1)先行する命令の実行結果を後続する命令が必要な
時、後続命令コード中に先行命令に対する待合せ時間、
待合せ事象から成る情報が組込める命令コードを解読す
る解読器と、命令解読後、この命令により指定される演
算処理等の操作の対象となる資源の操作を上記組込まれ
た情報により、先行する命令の種類により決まる時間、
あるいはメモリ装置または入出力装置より送出される信
号が有効となる時間まで後続命令の実行を遅延させるた
め、上記命令コードから上記必要な情報を取り出す手段
と、この情報に従い決められた時間の計測あるいは上記
送出される信号の検出手段とを備えた資源干渉制御装置
。 - (2)命令解読後、実行までの遅延時間に関する情報を
命令語に設定するための特定の命令フィールドをもつ命
令体系を解読する手段と、命令の実行を命令語の特定の
フィールドに設定された情報により遅延させる手段と、
後読する命令が先行する命令の結果を必要としない時、
先行命令の終了を待たずに後読命令を実行させる手段を
備えたデータ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1174512A JPH0338727A (ja) | 1989-07-05 | 1989-07-05 | 資源干渉制御装置とデータ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1174512A JPH0338727A (ja) | 1989-07-05 | 1989-07-05 | 資源干渉制御装置とデータ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0338727A true JPH0338727A (ja) | 1991-02-19 |
Family
ID=15979807
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1174512A Pending JPH0338727A (ja) | 1989-07-05 | 1989-07-05 | 資源干渉制御装置とデータ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0338727A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6154829A (en) * | 1997-10-20 | 2000-11-28 | Matsushita Electric Industrial Co., Ltd. | Cascaded arithmetic pipeline data processor |
| US6370638B1 (en) | 1997-11-21 | 2002-04-09 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of computer program control in computer systems using pipeline processing |
| JP2007276870A (ja) * | 2006-04-12 | 2007-10-25 | Sanko Co Ltd | 箱型容器 |
| KR20190044573A (ko) * | 2017-10-20 | 2019-04-30 | 그래프코어 리미티드 | 컴퓨터 프로세싱의 타이밍 제어 |
-
1989
- 1989-07-05 JP JP1174512A patent/JPH0338727A/ja active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6154829A (en) * | 1997-10-20 | 2000-11-28 | Matsushita Electric Industrial Co., Ltd. | Cascaded arithmetic pipeline data processor |
| US6370638B1 (en) | 1997-11-21 | 2002-04-09 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of computer program control in computer systems using pipeline processing |
| JP2007276870A (ja) * | 2006-04-12 | 2007-10-25 | Sanko Co Ltd | 箱型容器 |
| KR20190044573A (ko) * | 2017-10-20 | 2019-04-30 | 그래프코어 리미티드 | 컴퓨터 프로세싱의 타이밍 제어 |
| US11416440B2 (en) | 2017-10-20 | 2022-08-16 | Graphcore Limited | Controlling timing in computer processing |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0272705B1 (en) | Loosely coupled pipeline processor | |
| JP2667849B2 (ja) | 情報処理装置 | |
| JPH0338727A (ja) | 資源干渉制御装置とデータ処理装置 | |
| EP0240606B1 (en) | Pipe-line processing system and microprocessor using the system | |
| JP2798121B2 (ja) | データ処理装置 | |
| JPS60178580A (ja) | 命令制御方式 | |
| JPH03136136A (ja) | 命令実行時刻制御方式 | |
| US5088035A (en) | System for accelerating execution of program instructions by a microprocessor | |
| JPS6120893B2 (ja) | ||
| JP2814683B2 (ja) | 命令処理装置 | |
| JPH09237186A (ja) | ループ制御装置およびプロセッサ | |
| JPS6212531B2 (ja) | ||
| JP2504263B2 (ja) | デ―タ処理装置 | |
| JPH0431134B2 (ja) | ||
| JPH0317135B2 (ja) | ||
| JP3414579B2 (ja) | プログラマブルコントローラ | |
| JP2806690B2 (ja) | マイクロプロセッサ | |
| JPH07113891B2 (ja) | パイプライン処理装置 | |
| JPH02183333A (ja) | データ処理装置 | |
| JPH0342721A (ja) | 情報処理装置 | |
| JPH0228724A (ja) | 分岐命令制御方式 | |
| JPH0419575B2 (ja) | ||
| JPH03154929A (ja) | 中央処理装置 | |
| JPH04239919A (ja) | 情報処理装置 | |
| JPS61165136A (ja) | バツフアアクセス要求制御方式 |