JP2799646B2 - パイプライン制御の計算機の診断方式 - Google Patents
パイプライン制御の計算機の診断方式Info
- Publication number
- JP2799646B2 JP2799646B2 JP4152866A JP15286692A JP2799646B2 JP 2799646 B2 JP2799646 B2 JP 2799646B2 JP 4152866 A JP4152866 A JP 4152866A JP 15286692 A JP15286692 A JP 15286692A JP 2799646 B2 JP2799646 B2 JP 2799646B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- pipeline
- diagnostic
- microprogram
- diagnosis
- 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.)
- Expired - Fee Related
Links
Landscapes
- Advance Control (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【0001】
【産業上の利用分野】本発明は、命令の解読及び実行を
パイプライン制御により実現する計算機の診断方式に関
するものである。
パイプライン制御により実現する計算機の診断方式に関
するものである。
【0002】
【従来の技術】図7は従来例を説明する図である。同図
において、10は診断対象プロセッサ、11はパイプラ
インを実現するハードウェア、12はマイクロプログラ
ム、20はシステム・メモリをそれぞれ示している。プ
ロセッサ10は、パイプラインを実現するためのハード
ウェア11と、マイクロプログラム12を有している。
パイプラインは、例えば5個のステージを有している。
マイクロプログラム12は、演算実行のステージで使用
される。システム・メモリ20には、機械語レベルの命
令コードa,b,c,d,…が格納されている。
において、10は診断対象プロセッサ、11はパイプラ
インを実現するハードウェア、12はマイクロプログラ
ム、20はシステム・メモリをそれぞれ示している。プ
ロセッサ10は、パイプラインを実現するためのハード
ウェア11と、マイクロプログラム12を有している。
パイプラインは、例えば5個のステージを有している。
マイクロプログラム12は、演算実行のステージで使用
される。システム・メモリ20には、機械語レベルの命
令コードa,b,c,d,…が格納されている。
【0003】
【発明が解決しようとする課題】従来の技術において
は、システム・メモリにロードされた命令コードによ
り、パイプラインを動作させたままでプロセッサを診断
していたが、その場合,プロセッサのパイプライン制御
部分が故障し、チェックする命令コード自体が動作不可
能な場合は、故障箇所を検出することは不可能となる。
本発明は、この点に鑑みて創作されたものであって、パ
イプライン制御部分が故障であった場合にも故障箇所を
検出できるパイプライン制御のプロセッサの診断方式を
提供することを目的としている。
は、システム・メモリにロードされた命令コードによ
り、パイプラインを動作させたままでプロセッサを診断
していたが、その場合,プロセッサのパイプライン制御
部分が故障し、チェックする命令コード自体が動作不可
能な場合は、故障箇所を検出することは不可能となる。
本発明は、この点に鑑みて創作されたものであって、パ
イプライン制御部分が故障であった場合にも故障箇所を
検出できるパイプライン制御のプロセッサの診断方式を
提供することを目的としている。
【0004】
【課題を解決するための手段】本発明の請求項1のパイ
プライン制御の計算機の診断方式は、パイプラインを実
現するためのハードウェア(11)並びにマイクロプログラ
ム及び診断用マイクロプログラムを記憶するマイクロプ
ログラム記憶部(12,13) を有するプロセッサ(10)と、診
断用命令(x) を含む機械語命令列を格納するシステム・
メモリ(20)とを備えるパイプライン制御の計算機の診断
方式であって、ハードウェア(11)は、パイプラインに投
入された機械語命令が診断用命令(x)である場合には、
パイプラインを停止させ、診断用マイクロプログラムを
実行するように構成され、診断用マイクロプログラム
は、診断用命令(x) より先行する機械語命令が正常に実
行されているか否かの診断を行い、診断終了後にパイプ
ライン再開指示を行うためのマイクロ命令列であること
を特徴とするものである。
プライン制御の計算機の診断方式は、パイプラインを実
現するためのハードウェア(11)並びにマイクロプログラ
ム及び診断用マイクロプログラムを記憶するマイクロプ
ログラム記憶部(12,13) を有するプロセッサ(10)と、診
断用命令(x) を含む機械語命令列を格納するシステム・
メモリ(20)とを備えるパイプライン制御の計算機の診断
方式であって、ハードウェア(11)は、パイプラインに投
入された機械語命令が診断用命令(x)である場合には、
パイプラインを停止させ、診断用マイクロプログラムを
実行するように構成され、診断用マイクロプログラム
は、診断用命令(x) より先行する機械語命令が正常に実
行されているか否かの診断を行い、診断終了後にパイプ
ライン再開指示を行うためのマイクロ命令列であること
を特徴とするものである。
【0005】
【作用】請求項1のパイプライン制御の計算機の診断方
式の作用について説明する。ハードウェア(11)は、パイ
プラインに投入された命令のオペレーション・コードを
解析し、投入された命令が診断用命令(x) である場合に
は、パイプラインを停止させ、診断用マイクロプログラ
ムを実行させる。診断用マイクロプログラムの実行によ
り、診断用命令(x) より先行する機械語命令が正常に実
行されているか否かの診断が行われ、診断終了後にパイ
プラインが動作を再開する。
式の作用について説明する。ハードウェア(11)は、パイ
プラインに投入された命令のオペレーション・コードを
解析し、投入された命令が診断用命令(x) である場合に
は、パイプラインを停止させ、診断用マイクロプログラ
ムを実行させる。診断用マイクロプログラムの実行によ
り、診断用命令(x) より先行する機械語命令が正常に実
行されているか否かの診断が行われ、診断終了後にパイ
プラインが動作を再開する。
【0006】
【実施例】図1は本発明の概要を示す図である。同図に
おいて、10は診断対象プロセッサ、11はパイプライ
ンを実現するハードウェア、12はマイクロプログラ
ム、13は診断用マイクロプログラム、20はシステム
・メモリをそれぞれ示している。プロセッサ10は、パ
イプラインを実現するハードウェア11、マイクロプロ
グラム12、診断用マイクロプログラム13を有してい
る。
おいて、10は診断対象プロセッサ、11はパイプライ
ンを実現するハードウェア、12はマイクロプログラ
ム、13は診断用マイクロプログラム、20はシステム
・メモリをそれぞれ示している。プロセッサ10は、パ
イプラインを実現するハードウェア11、マイクロプロ
グラム12、診断用マイクロプログラム13を有してい
る。
【0007】図示の例では、システム・メモリ20に
は、テスト・パターン1とテスト・パターン2とが格納
されている。テスト・パターン1は命令コードa,命令
コードb,命令コードc,診断用命令コードxから構成
され、テスト・パターン2は命令コードa,命令コード
c,命令コードb,診断用命令コードxから構成されて
いる。診断用命令コードxがパイプラインに投入される
と、パイプラインは停止し、診断用マイクロプログラム
が実行される。
は、テスト・パターン1とテスト・パターン2とが格納
されている。テスト・パターン1は命令コードa,命令
コードb,命令コードc,診断用命令コードxから構成
され、テスト・パターン2は命令コードa,命令コード
c,命令コードb,診断用命令コードxから構成されて
いる。診断用命令コードxがパイプラインに投入される
と、パイプラインは停止し、診断用マイクロプログラム
が実行される。
【0008】図2はハードウェアの構造の例を示す図で
ある。同図において、11はパイプラインを実現するハ
ードウェア、110はパイプライン制御部、111は命
令実行部、112は命令デコード部、113は命令フェ
ッチ部、114はメモリ制御部をそれぞれ示している。
パイプライン制御部110は、パイプライン全体を制御
するものである。メモリ制御部114は、メモリ・アク
セスを制御する部分である。命令フェッチ部113は、
命令をフェッチする部分である。命令デコード部112
は、命令をデコードする部分である。命令実行部111
は、命令を実行する部分である。
ある。同図において、11はパイプラインを実現するハ
ードウェア、110はパイプライン制御部、111は命
令実行部、112は命令デコード部、113は命令フェ
ッチ部、114はメモリ制御部をそれぞれ示している。
パイプライン制御部110は、パイプライン全体を制御
するものである。メモリ制御部114は、メモリ・アク
セスを制御する部分である。命令フェッチ部113は、
命令をフェッチする部分である。命令デコード部112
は、命令をデコードする部分である。命令実行部111
は、命令を実行する部分である。
【0009】図3は命令a,b,cのパイプライン動作
を説明する図である。診断対象となるプロセッサは、命
令の解読および実行を多段ステージのパイプライン方式
で実現している。図示の例においては、命令a,b,c
のそれぞれは5段ステージで実行されている。ステージ
1では命令フェッチが行われ、ステージ2では命令のデ
コードが行われ、ステージ3ではオペランド・フェッチ
が行われ、ステージ4では演算が実行され、ステージ5
では演算結果が格納される。
を説明する図である。診断対象となるプロセッサは、命
令の解読および実行を多段ステージのパイプライン方式
で実現している。図示の例においては、命令a,b,c
のそれぞれは5段ステージで実行されている。ステージ
1では命令フェッチが行われ、ステージ2では命令のデ
コードが行われ、ステージ3ではオペランド・フェッチ
が行われ、ステージ4では演算が実行され、ステージ5
では演算結果が格納される。
【0010】図4はパイプライン動作を乱す命令dのパ
イプライン動作を説明する図である。命令実行におい
て、5段ステージ以上必要な命令(パイプラインを乱す
命令)に関しては、パイプラインを中断させ、マイクロ
プログラムの制御により命令を実行する。また、パイプ
ライン動作の再開はマイクロプログラムの指示により行
われる。
イプライン動作を説明する図である。命令実行におい
て、5段ステージ以上必要な命令(パイプラインを乱す
命令)に関しては、パイプラインを中断させ、マイクロ
プログラムの制御により命令を実行する。また、パイプ
ライン動作の再開はマイクロプログラムの指示により行
われる。
【0011】図5は診断用命令xのパイプライン動作を
説明する図である。上述の命令dのようなパイプライン
を中断させる命令群の1つに診断用命令xを定義するこ
とによりパイプライン動作を中断させ、マイクロテスト
プログラム(診断用マイクロプログラムと同義)に命令
実行制御を移すことが出来る。診断用命令xはオペレー
ション・コード部のみで構成されており、このオペレー
ション・コード部は診断用命令であることを定義するも
のである。ハードウェア11は、このオペレーション・
コードをデコードした後、パイプラインを中断させ、マ
イクロテストプログラムに制御を渡す。
説明する図である。上述の命令dのようなパイプライン
を中断させる命令群の1つに診断用命令xを定義するこ
とによりパイプライン動作を中断させ、マイクロテスト
プログラム(診断用マイクロプログラムと同義)に命令
実行制御を移すことが出来る。診断用命令xはオペレー
ション・コード部のみで構成されており、このオペレー
ション・コード部は診断用命令であることを定義するも
のである。ハードウェア11は、このオペレーション・
コードをデコードした後、パイプラインを中断させ、マ
イクロテストプログラムに制御を渡す。
【0012】マイクロテストプログラムは前命令実行結
果の確認を行うことが出来る。即ち、マイクロテストプ
ログラムは、命令が格納されているメモリを参照するこ
とにより前命令列の内容を解析し、命令の実行後に更新
されるべきレジスタやメモリ,ステータス(ハードウェ
アの状態)などの期待値を作成する。そして、この期待
値と実際の実行結果とを比較し、一致するか否かを調べ
る。
果の確認を行うことが出来る。即ち、マイクロテストプ
ログラムは、命令が格納されているメモリを参照するこ
とにより前命令列の内容を解析し、命令の実行後に更新
されるべきレジスタやメモリ,ステータス(ハードウェ
アの状態)などの期待値を作成する。そして、この期待
値と実際の実行結果とを比較し、一致するか否かを調べ
る。
【0013】図6は本発明の診断動作のフローチャート
である。同図において、ステップS1ないしS5はハー
ドウェア11によって行われ、ステップS6とS7はマ
イクロプログラム12によって行われ、ステップS9な
いしS10はマイクロテストプログラム13(診断用マ
イクロプログラムと同義)によって行われる。なお、ス
テップS1はステージ1ないし2で行われ、ステップS
2,S4,S5はステージ3で行われ、ステップS3は
ステージ4ないし5で行われ、ステップS6ないしS1
0はマイクロ実行ステージ(パイプライン停止状態)で
行われる。
である。同図において、ステップS1ないしS5はハー
ドウェア11によって行われ、ステップS6とS7はマ
イクロプログラム12によって行われ、ステップS9な
いしS10はマイクロテストプログラム13(診断用マ
イクロプログラムと同義)によって行われる。なお、ス
テップS1はステージ1ないし2で行われ、ステップS
2,S4,S5はステージ3で行われ、ステップS3は
ステージ4ないし5で行われ、ステップS6ないしS1
0はマイクロ実行ステージ(パイプライン停止状態)で
行われる。
【0014】ステップS1では、次の命令コードをデコ
ードする。ステップS2では、その命令がパイプライン
中断命令か否かを調べる。Yesの場合にはステップS
4に進み、Noの場合にはステップS3に進む。ステッ
プS3では、その命令を実行する。ステップS4では、
パイプラインを停止する。ステップS5では、その命令
が診断用命令xか否かを調べる。Yesの場合にはステ
ップS8に進み、Noの場合にはステップS6に進む。
ードする。ステップS2では、その命令がパイプライン
中断命令か否かを調べる。Yesの場合にはステップS
4に進み、Noの場合にはステップS3に進む。ステッ
プS3では、その命令を実行する。ステップS4では、
パイプラインを停止する。ステップS5では、その命令
が診断用命令xか否かを調べる。Yesの場合にはステ
ップS8に進み、Noの場合にはステップS6に進む。
【0015】ステップS6では、その命令を実行する。
ステップS7では、パイプライン再開指示を行う。ステ
ップS8では、前命令列を解析し、期待値を作成する。
ステップS9では、前命令実行結果の正常性を確認す
る。ステップS10では、パイプライン再開指示を行
う。
ステップS7では、パイプライン再開指示を行う。ステ
ップS8では、前命令列を解析し、期待値を作成する。
ステップS9では、前命令実行結果の正常性を確認す
る。ステップS10では、パイプライン再開指示を行
う。
【0016】
【発明の効果】以上の説明から明らかなように、本発明
によれば、 (a) 診断用命令コードおよび診断用マイクロプログラム
を使用することにより、パイプライン動作を停止させて
命令の実行結果を判断することが可能となり、パイプラ
イン制御部分が故障であった場合に検出できる。 (b) 通常システムで使用するマイクロプログラム部分を
使用することにより、ハードウェアにとって実動作と同
じパターンとなる(診断用として作成する必要がな
い)。 (c) システム・メモリにロードする命令コードのパター
ンを変える(追加)するだけで、密度の濃い診断が可能
となる。等の顕著な効果を奏することが出来る。なお、
テストを行うに際しては、先ず診断用命令xのみを実行
させ、マイクロ診断プログラムに制御が渡ることを確認
し、その後で実際のテストを行う。
によれば、 (a) 診断用命令コードおよび診断用マイクロプログラム
を使用することにより、パイプライン動作を停止させて
命令の実行結果を判断することが可能となり、パイプラ
イン制御部分が故障であった場合に検出できる。 (b) 通常システムで使用するマイクロプログラム部分を
使用することにより、ハードウェアにとって実動作と同
じパターンとなる(診断用として作成する必要がな
い)。 (c) システム・メモリにロードする命令コードのパター
ンを変える(追加)するだけで、密度の濃い診断が可能
となる。等の顕著な効果を奏することが出来る。なお、
テストを行うに際しては、先ず診断用命令xのみを実行
させ、マイクロ診断プログラムに制御が渡ることを確認
し、その後で実際のテストを行う。
【図1】本発明の概要を示す図である。
【図2】パイプラインを実現するハードウェアの構造の
例を示す図である。
例を示す図である。
【図3】命令a,b,cのパイプライン動作を説明する
図である。
図である。
【図4】パイプライン動作を乱す命令dのパイプライン
動作を説明する図である。
動作を説明する図である。
【図5】診断用命令xのパイプライン動作を説明する図
である。
である。
【図6】診断動作のフローチャートである。
【図7】従来例を示す図である。
10 診断対象プロセッサ 11 パイプラインを実現するハードウェア 12 マイクロプログラム 13 診断用マイクロプログラム 20 システム・メモリ
Claims (1)
- 【請求項1】 パイプラインを実現するためのハードウ
ェア(11)並びにマイクロプログラム及び診断用マイクロ
プログラムを記憶するマイクロプログラム記憶部(12,1
3) を有するプロセッサ(10)と、 診断用命令(x) を含む機械語命令列を格納するシステム
・メモリ(20)とを備えるパイプライン制御の計算機の診
断方式であって、 ハードウェア(11)は、パイプラインに投入された機械語
命令が診断用命令(x)である場合には、パイプラインを
停止させ、診断用マイクロプログラムを実行するように
構成され、 診断用マイクロプログラムは、診断用命令(x) より先行
する機械語命令が正常に実行されているか否かの診断を
行い、診断終了後にパイプライン再開指示を行うための
マイクロ命令列であることを特徴とするパイプライン制
御の計算機の診断方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4152866A JP2799646B2 (ja) | 1992-05-20 | 1992-05-20 | パイプライン制御の計算機の診断方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4152866A JP2799646B2 (ja) | 1992-05-20 | 1992-05-20 | パイプライン制御の計算機の診断方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05324388A JPH05324388A (ja) | 1993-12-07 |
JP2799646B2 true JP2799646B2 (ja) | 1998-09-21 |
Family
ID=15549837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4152866A Expired - Fee Related JP2799646B2 (ja) | 1992-05-20 | 1992-05-20 | パイプライン制御の計算機の診断方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2799646B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012208662A (ja) * | 2011-03-29 | 2012-10-25 | Toyota Motor Corp | マルチスレッド・プロセッサ |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5878243A (ja) * | 1981-11-05 | 1983-05-11 | Fuji Xerox Co Ltd | 診断プログラム実行方式 |
JPS59218555A (ja) * | 1983-05-27 | 1984-12-08 | Fujitsu Ltd | マイクロプログラム制御装置 |
JPS60229147A (ja) * | 1984-04-26 | 1985-11-14 | Fujitsu Ltd | クロツクストツプ制御回路 |
-
1992
- 1992-05-20 JP JP4152866A patent/JP2799646B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05324388A (ja) | 1993-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4703718B2 (ja) | 選択的サブルーチンリターン構造 | |
US4736289A (en) | Microprogram controlled data processing apparatus | |
JP2799646B2 (ja) | パイプライン制御の計算機の診断方式 | |
US5524222A (en) | Microsequencer allowing a sequence of conditional jumps without requiring the insertion of NOP or other instructions | |
JPS6250934A (ja) | 処理装置の割込制御方式 | |
JP2531791B2 (ja) | フエッチアクセス時の異常処理方法 | |
JPH10124312A (ja) | 中央処理装置 | |
US6662296B1 (en) | Method and system for testing millicode branch points | |
JPS6122818B2 (ja) | ||
JPS6346542A (ja) | 情報処理装置 | |
JPS58200349A (ja) | マイクロプログラム制御装置 | |
JP3331599B2 (ja) | マイクロプログラム制御装置 | |
JPS6143347A (ja) | ベクトル命令シミユレ−シヨン方法 | |
JPH0683636A (ja) | 浮動小数点演算装置 | |
JPS58149571A (ja) | 情報処理装置のベクトル演算処理方式 | |
JPS635462A (ja) | マイクロプログラムローディング方法 | |
JPH0287237A (ja) | Execute命令制御方式 | |
JPH0157375B2 (ja) | ||
JPS595931B2 (ja) | 演算処理システムのアドレス停止方式 | |
JPH0954698A (ja) | データ処理装置及びその割り込み処理方法 | |
JPH0320830A (ja) | マイクロプロセッサの障害回避方式 | |
JPS59220844A (ja) | 命令再実行制御方式 | |
JPS61223952A (ja) | デ−タ処理装置のリトライ機能確認方式 | |
JPS604492B2 (ja) | 計算機 | |
JPH01220042A (ja) | 中央処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |