JPS62194549A - Cpu―io並列動作シミュレーション方法 - Google Patents
Cpu―io並列動作シミュレーション方法Info
- Publication number
- JPS62194549A JPS62194549A JP61035164A JP3516486A JPS62194549A JP S62194549 A JPS62194549 A JP S62194549A JP 61035164 A JP61035164 A JP 61035164A JP 3516486 A JP3516486 A JP 3516486A JP S62194549 A JPS62194549 A JP S62194549A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- event
- model
- simulator
- control
- 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.)
- Granted
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 19
- 238000012544 monitoring process Methods 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 11
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 230000007547 defect Effects 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 abstract 1
- 230000000007 visual effect Effects 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000005856 abnormality Effects 0.000 description 3
- 239000013256 coordination polymer Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 210000000078 claw Anatomy 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010172 mouse model Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、マイコンプログラムを実機(ターゲットマシ
ン)と異なる汎用計算機でシミュレータ1ンし、マイコ
ンプログラムをテスト・デバッグする方式に関し、特に
IOを制御するプログラムをターゲットマシンに近い状
態でシミュレーションテストをするCPU −IO並行
動作シミュレーシ1ン方式に関する。
ン)と異なる汎用計算機でシミュレータ1ンし、マイコ
ンプログラムをテスト・デバッグする方式に関し、特に
IOを制御するプログラムをターゲットマシンに近い状
態でシミュレーションテストをするCPU −IO並行
動作シミュレーシ1ン方式に関する。
従来は、情報処理学会マイクロコンビ一一タ研究会資料
20−3に記載されるように、CPUとメモリのみをシ
ミュレートする方式であり、周辺IOを制御するプログ
ラムをテストする場合には中断点の設定、メモリ設定等
を行なうべきコマンドによって10動作をシミュレータ
スる。
20−3に記載されるように、CPUとメモリのみをシ
ミュレートする方式であり、周辺IOを制御するプログ
ラムをテストする場合には中断点の設定、メモリ設定等
を行なうべきコマンドによって10動作をシミュレータ
スる。
上記従来の方式は、中断点やメモリ設定用のコマンドで
IO動作を模擬するため、時間の経過(CPU芙行)に
よりIOの状態が変化するといった環境の設定は困難で
あった。このため、IO制御時のタイミング不良、プロ
グラムとIO両方の待ち状態(ハングアップ)等の検出
ができないという問題があった。
IO動作を模擬するため、時間の経過(CPU芙行)に
よりIOの状態が変化するといった環境の設定は困難で
あった。このため、IO制御時のタイミング不良、プロ
グラムとIO両方の待ち状態(ハングアップ)等の検出
ができないという問題があった。
本発明の目的は、CPU (プログラムの実行)とIO
の動作を見かけ上、並行動作させることにより、前述の
ようなマイクロコンビエータ用ソフトウェアの不良を検
出するCPU−l0並行動作シミエレーシ舊ン方式を提
供することにアル。
の動作を見かけ上、並行動作させることにより、前述の
ようなマイクロコンビエータ用ソフトウェアの不良を検
出するCPU−l0並行動作シミエレーシ舊ン方式を提
供することにアル。
上記目的は、IOモデルがイベントを要求したとき(I
O動作実行のために必要な時間を定義すること)、IO
モデルの処理を中断させ、中断点の情報を記憶し、CP
Uに制御を戻すイベント登録ステップと、 CPUの命
令シミュレーション中にイベントの発生監視をするイベ
ント監視ステップと、イベント発生時、CPUの命令実
行を中断し、イベント要求時にセーブした情報を回復し
IOモデルの処理を再開始するイベント制御ステップに
より、IO処理−■0処理中断−CPU処理−CPU処
理中断−IO処理再実行・・・と制御されて、CPU−
l0並行動作を実現することにより達成される。
O動作実行のために必要な時間を定義すること)、IO
モデルの処理を中断させ、中断点の情報を記憶し、CP
Uに制御を戻すイベント登録ステップと、 CPUの命
令シミュレーション中にイベントの発生監視をするイベ
ント監視ステップと、イベント発生時、CPUの命令実
行を中断し、イベント要求時にセーブした情報を回復し
IOモデルの処理を再開始するイベント制御ステップに
より、IO処理−■0処理中断−CPU処理−CPU処
理中断−IO処理再実行・・・と制御されて、CPU−
l0並行動作を実現することにより達成される。
IO−1:デルがイベントを要求したとき、IOモデル
の処理を中断させ、中断点の情報を記憶し、CPUに制
御を戻すイベントを登録し、CPUの命令シミュレーシ
ョン中にイベントの発生監視し、イベント発生時、CP
Uの命令実行を中断し、イベント要求時にセーブした情
報を回復しI10モデルの処理を再開始することにより
、CPU −I0並行動作が実現されて、実機では再現
しにくいハードウェアの異常を容易にシミュレーション
できる。
の処理を中断させ、中断点の情報を記憶し、CPUに制
御を戻すイベントを登録し、CPUの命令シミュレーシ
ョン中にイベントの発生監視し、イベント発生時、CP
Uの命令実行を中断し、イベント要求時にセーブした情
報を回復しI10モデルの処理を再開始することにより
、CPU −I0並行動作が実現されて、実機では再現
しにくいハードウェアの異常を容易にシミュレーション
できる。
以下、本発明の一実施例を図面を用いて詳細に説明する
。
。
第1図は、本発明のシミニレ−ジョン・システムの構成
を示すブロック図である。
を示すブロック図である。
第1図において、1は汎用計算機上で、前記汎用計算機
とは異なるアーキテクチャのCPU1i41’作をシミ
ュレーションするCPUシミュレータ。
とは異なるアーキテクチャのCPU1i41’作をシミ
ュレーションするCPUシミュレータ。
2はCPUシミュレータが実行するマイクロプログラム
を格納するメモリ、3は周辺デバイスの・動作をシミュ
レーションするIOモデル、4はavと周辺デバイスと
の信号線群の動作をシミュレ−ションするIOシミュレ
ータ、5は周辺デバイスが入出力するデータを格納する
データファイル、6はIOモデルの制御中に、IOモデ
ルが要求するイベント(時間経過要求〕を登録し、CP
Uシミュレータに制御を移すイベント登録機構。
を格納するメモリ、3は周辺デバイスの・動作をシミュ
レーションするIOモデル、4はavと周辺デバイスと
の信号線群の動作をシミュレ−ションするIOシミュレ
ータ、5は周辺デバイスが入出力するデータを格納する
データファイル、6はIOモデルの制御中に、IOモデ
ルが要求するイベント(時間経過要求〕を登録し、CP
Uシミュレータに制御を移すイベント登録機構。
7はイベントで要求した時間に達したか否かを判断する
イベント監視機構、8はイベントで要求した時間に達し
たとき、IOモデルに制御を移すイベント制御機構であ
る。
イベント監視機構、8はイベントで要求した時間に達し
たとき、IOモデルに制御を移すイベント制御機構であ
る。
第2図は、 CPU−l0並行動作シミーレーション方
式を示すフローチャートである。
式を示すフローチャートである。
第2図により、本発明のCPU−l0並行動作シミュレ
ーション方式を説明する。
ーション方式を説明する。
まス、CPUシミュレータでマイコンプログラムが実行
され、IO制御命令であればIOシミュレータを起動す
る(201 )。次に、IOシミュレータは、IO制御
命令に該当するIOモデルを起動する(202)。IO
モデルはIO動作を開始する。このときIO動作実行に
時間を必要としたとき、IOモデルはIOシミュレータ
に対し、イベントを要求する(203)。イベントの要
求は、イベント登録機構によりイベント値(イベント到
達までの時間)、IOモデル中断点情報(イベント要求
時のIOモデルの状態)を記憶した後、CPUシミュレ
ータに強制的に制御を移す(204)。CPUシミュレ
ータでは、マイコンプログラムの命令実行を開始する。
され、IO制御命令であればIOシミュレータを起動す
る(201 )。次に、IOシミュレータは、IO制御
命令に該当するIOモデルを起動する(202)。IO
モデルはIO動作を開始する。このときIO動作実行に
時間を必要としたとき、IOモデルはIOシミュレータ
に対し、イベントを要求する(203)。イベントの要
求は、イベント登録機構によりイベント値(イベント到
達までの時間)、IOモデル中断点情報(イベント要求
時のIOモデルの状態)を記憶した後、CPUシミュレ
ータに強制的に制御を移す(204)。CPUシミュレ
ータでは、マイコンプログラムの命令実行を開始する。
このとき1命令実行毎に命令実行サイクル数をカウント
し、イベント監視時刻に達すると、IOシミュレータの
イベント監視機構を起動する(205)。イベント監視
機構では登録されているイベントのイベント値をカウン
トし、要求したイベント値に達したイベントがあるか判
断し、該当するイベントがなげれば、CPUシミュレー
タに制御を戻し、該当するイベントがあれば、イベント
制御機構を起動する(206)。イベント制御機構では
、イベント要求時に記憶したIOモデル中断点情報を回
復させ、IOモデルに制御を移す(207)。IOモデ
ルは、時間経過後の状態(IO動作終了後のIOの状態
)を設定し、CPUシミュレータに制御を戻す(208
)。
し、イベント監視時刻に達すると、IOシミュレータの
イベント監視機構を起動する(205)。イベント監視
機構では登録されているイベントのイベント値をカウン
トし、要求したイベント値に達したイベントがあるか判
断し、該当するイベントがなげれば、CPUシミュレー
タに制御を戻し、該当するイベントがあれば、イベント
制御機構を起動する(206)。イベント制御機構では
、イベント要求時に記憶したIOモデル中断点情報を回
復させ、IOモデルに制御を移す(207)。IOモデ
ルは、時間経過後の状態(IO動作終了後のIOの状態
)を設定し、CPUシミュレータに制御を戻す(208
)。
以上のようにして、CPU −IO並行動作シミュンー
ションが可能となる。
ションが可能となる。
なお、CPUとIOの並行動作の状態図を第3図に示す
。
。
次に、フロッピー・ディスク・コントローラ(以下FD
Cと略す)のシーク動作例を第4図により説明する。
Cと略す)のシーク動作例を第4図により説明する。
まず、CPUシミュレータでFDC制御用マイコンプロ
グラムを実行し、IO制御命令(FDCに対するシーク
動作指示)を検出するとIOシミュレータを起動する(
401 )。IOシミュレータは、IO制御命令が鼠に
対する命令であることを認識し、浪モデルを起動する(
402)。FDCモデルは、IO制御命令がシーク動作
指示であることを認識し、鼠モデルの状態を示す状態レ
ジスタにシーク動作中であるフラグを設定。シーク動作
終了まで時間を要するため、IOシミュレータに対しイ
ベントを要求する(403)。IOシミュレータのイベ
ント登録機構は、爪モデルが要求した時間(イベント値
)を登録。さらに、FDCIモデルがイベントを要求し
たときの状態(イベント要求時のレジスタの内容)をセ
ーブし、CPUシミュレータに強制的に制御を戻す(F
DCモデルの処理中断) (404)。CPUシミュレ
ータは、FDC制御用マイコンプログラムの実行を再開
する。このとき、1命令実行毎に命令サイクル数をカウ
ントし、イベント監視時間に達したか判断する。監視時
間に達していなければ命令実行を継続し、監視時間に達
していれば、IOシミjLレータのイベント監視機構を
起動する(405)。
グラムを実行し、IO制御命令(FDCに対するシーク
動作指示)を検出するとIOシミュレータを起動する(
401 )。IOシミュレータは、IO制御命令が鼠に
対する命令であることを認識し、浪モデルを起動する(
402)。FDCモデルは、IO制御命令がシーク動作
指示であることを認識し、鼠モデルの状態を示す状態レ
ジスタにシーク動作中であるフラグを設定。シーク動作
終了まで時間を要するため、IOシミュレータに対しイ
ベントを要求する(403)。IOシミュレータのイベ
ント登録機構は、爪モデルが要求した時間(イベント値
)を登録。さらに、FDCIモデルがイベントを要求し
たときの状態(イベント要求時のレジスタの内容)をセ
ーブし、CPUシミュレータに強制的に制御を戻す(F
DCモデルの処理中断) (404)。CPUシミュレ
ータは、FDC制御用マイコンプログラムの実行を再開
する。このとき、1命令実行毎に命令サイクル数をカウ
ントし、イベント監視時間に達したか判断する。監視時
間に達していなければ命令実行を継続し、監視時間に達
していれば、IOシミjLレータのイベント監視機構を
起動する(405)。
イベント監視機構では、登録されたFDCモデルのシー
ク動作のイベント値をカウントダウンし、シーク動作終
了時刻に達したか判断。シーク動作終了時刻に達してい
なければ、CPUシミュレータに制御を戻し命令実行を
継続し、シーク動作終了時刻に達していれば、IOシミ
ュレータのイベント制御機構を起動する(406)。イ
ベント。
ク動作のイベント値をカウントダウンし、シーク動作終
了時刻に達したか判断。シーク動作終了時刻に達してい
なければ、CPUシミュレータに制御を戻し命令実行を
継続し、シーク動作終了時刻に達していれば、IOシミ
ュレータのイベント制御機構を起動する(406)。イ
ベント。
制御機構では、イベント要求時にセーブしf、l’Dc
モデルの状態を回復させ、FDCモデルに制御を移す(
CPUシミュレータの処理中断) (407)。
モデルの状態を回復させ、FDCモデルに制御を移す(
CPUシミュレータの処理中断) (407)。
爪モデルは、状態レジスタにシーク動作終了を示すフラ
グを設定し、IOシミュレータに対し割込み要求をした
後、制御をIOシミュレータに戻す(40B)。
グを設定し、IOシミュレータに対し割込み要求をした
後、制御をIOシミュレータに戻す(40B)。
以上のようにして、FDC制御用マイコンプロダラムと
ズモデルの並行動作シミュレーションが実現される。
ズモデルの並行動作シミュレーションが実現される。
また、ステップ405で五モデルがシーク動作中に面制
御用マイコンプログラムからデータ書き込み指示などの
IO制御命令を検出した場合、不当なタイミングのIO
制御命令として、マイコンプログラムの不良が検出可能
となる。
御用マイコンプログラムからデータ書き込み指示などの
IO制御命令を検出した場合、不当なタイミングのIO
制御命令として、マイコンプログラムの不良が検出可能
となる。
上記実施例では■0モデルをプログラム言語で記述し、
ロードプログラムとして実現する例を述べたが、IOモ
デルがある規則に従って動作仕様を記述した手続きデー
タの場合も次のようにして並行動作をシミユレートする
ことが可能となる。
ロードプログラムとして実現する例を述べたが、IOモ
デルがある規則に従って動作仕様を記述した手続きデー
タの場合も次のようにして並行動作をシミユレートする
ことが可能となる。
即ちステップ402において、FDCモデルに制御を渡
すかわりに、浪モデルの手続きデータを読み、記述され
た内容に従ってFDC動作をシミュレーションする。ま
た、ステップ404において、イベント要求時の手続き
データの位置を記憶しておく。さらにステップ407に
おいて、イベント要求時にセーブしたFDCモデルの状
態を回復するかわりに、イベント要求時に記憶した手続
きデータの位置からデータ読み込みを再開始する。
すかわりに、浪モデルの手続きデータを読み、記述され
た内容に従ってFDC動作をシミュレーションする。ま
た、ステップ404において、イベント要求時の手続き
データの位置を記憶しておく。さらにステップ407に
おいて、イベント要求時にセーブしたFDCモデルの状
態を回復するかわりに、イベント要求時に記憶した手続
きデータの位置からデータ読み込みを再開始する。
本実施例では、より実機に近い状態でマイクロコンピュ
ータ用ソフトウェアのテストが可能となり、実機では再
現しにくいハードウェアの異常を容易にシミュレーショ
ンできるため、より効率的なソフトウェアのテストが可
能となる。
ータ用ソフトウェアのテストが可能となり、実機では再
現しにくいハードウェアの異常を容易にシミュレーショ
ンできるため、より効率的なソフトウェアのテストが可
能となる。
また、ハードウェア完成前にソフトウェアの開発が可能
になるので、開発期間の短縮が図れる。
になるので、開発期間の短縮が図れる。
本発明によれば、実機では再現しにくいハードウェアの
異常を容易にシミニレ−ジョンできるため、より効率的
なソフトウェアのテストが可能となるという効果が得ら
れる。
異常を容易にシミニレ−ジョンできるため、より効率的
なソフトウェアのテストが可能となるという効果が得ら
れる。
第1図は本発明のシミエレーシ菌ンシステムの構成を示
すブロック図、第2図にCPU −IO並行動作シミュ
レーションの方式を示すフローチャート、第3図はCP
U −IO並行動作シミュレーションの状態図、第4図
は廉シーク動作による並行動作の実施例を示す概念図で
ある。 1・・・CPUシミュレータ、2・・・メモリ、6・・
・IOモモデル群 4・・・IOシミュレータ、
5・・・データファイル、 6・・・イベント登録機
構、7・・・イベント監視機構、8・・・イベント制御
機構。
すブロック図、第2図にCPU −IO並行動作シミュ
レーションの方式を示すフローチャート、第3図はCP
U −IO並行動作シミュレーションの状態図、第4図
は廉シーク動作による並行動作の実施例を示す概念図で
ある。 1・・・CPUシミュレータ、2・・・メモリ、6・・
・IOモモデル群 4・・・IOシミュレータ、
5・・・データファイル、 6・・・イベント登録機
構、7・・・イベント監視機構、8・・・イベント制御
機構。
Claims (1)
- 1、汎用計算機上において、マイクロプロセッサ等の前
記汎用計算機とは異なるアーキテクチャを有するCPU
と、該CPUに接続される記憶装置及び少なくとも1個
の周辺デバイスの動作をシミュレーションするために、
前記記憶装置上に置かれた命令を逐次取出して命令動作
をシミュレーションするCPUシミュレータと、前記周
辺デバイスの動作をシミュレーションするIOモデルと
、前記CPUと前記周辺デバイスを接続する信号線群の
動作をシミュレーションするIOシミュレータとを前記
汎用計算機上に形成し、シミュレーションの進行を計時
管理する時計により、IOモデル動作シミュレーション
の再開始時刻を予約するイベント要求がIOモデルから
発行されることに応じてIOモデルの動作実行を中断さ
せて中断点情報を一時退避し、前記CPUシミュレータ
に制御を戻すイベント登録のステップと、前記CPUシ
ミュレータの実行中にイベントの発生を監視するイベン
ト監視のステップと、イベント発生時前記CPUシミュ
レータの命令実行を中断し、前記IOモデルの動作実行
を再開始するイベント制御のステップから成ることを特
徴とするCPU−IO並行動作シミュレーション方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61035164A JPH07109592B2 (ja) | 1986-02-21 | 1986-02-21 | Cpu―io並列動作シミュレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61035164A JPH07109592B2 (ja) | 1986-02-21 | 1986-02-21 | Cpu―io並列動作シミュレーション方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62194549A true JPS62194549A (ja) | 1987-08-27 |
JPH07109592B2 JPH07109592B2 (ja) | 1995-11-22 |
Family
ID=12434227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61035164A Expired - Lifetime JPH07109592B2 (ja) | 1986-02-21 | 1986-02-21 | Cpu―io並列動作シミュレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07109592B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250890A (ja) * | 1993-02-26 | 1994-09-09 | Nec Corp | シミュレーションシステム |
JP6076576B1 (ja) * | 2016-06-07 | 2017-02-08 | 三菱電機株式会社 | シミュレーション装置およびシミュレーションプログラム |
-
1986
- 1986-02-21 JP JP61035164A patent/JPH07109592B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250890A (ja) * | 1993-02-26 | 1994-09-09 | Nec Corp | シミュレーションシステム |
JP6076576B1 (ja) * | 2016-06-07 | 2017-02-08 | 三菱電機株式会社 | シミュレーション装置およびシミュレーションプログラム |
Also Published As
Publication number | Publication date |
---|---|
JPH07109592B2 (ja) | 1995-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4740969A (en) | Method and apparatus for recovering from hardware faults | |
JPS62194549A (ja) | Cpu―io並列動作シミュレーション方法 | |
JP2823230B2 (ja) | 処理の継続実行方法 | |
JPH04352245A (ja) | シュミレ−ション方式 | |
JP2533489B2 (ja) | シミユレ−シヨン方式 | |
JPH1115661A (ja) | Cpuの自己診断方法 | |
TWI838264B (zh) | 電腦系統及其電腦系統除錯資訊處理之方法 | |
JPH0149975B2 (ja) | ||
JPH07105045A (ja) | 情報処理装置機能試験プログラムのデバッグ方式 | |
JPS62107354A (ja) | マイクロプログラム制御装置 | |
JP2849780B2 (ja) | 計算機システム | |
JP3685288B2 (ja) | マイクロプロセッサのエミュレーション方法およびエミュレータ装置 | |
JPH0628218A (ja) | マイクロコンピュータのプログラム開発支援装置 | |
JP2684966B2 (ja) | 入出力処理装置のデバッグ装置 | |
JPS6146535A (ja) | 擬似エラ−設定制御方式 | |
JPH05151021A (ja) | 常駐領域組み込み型デバツガによるデバツグ方式 | |
JPH02244232A (ja) | 情報処理装置 | |
JPH053033B2 (ja) | ||
JPH0440544A (ja) | テスト用入出力命令処理方式 | |
JPS6162944A (ja) | 情報処理装置の検査方式 | |
JPS6345659A (ja) | 周辺装置制御ioプロセツサ | |
JPS61101845A (ja) | 情報処理装置の試験方式 | |
JPS62126443A (ja) | シミユレ−タによる試験実行方式 | |
JPS59139457A (ja) | デ−タ処理装置の診断方法 | |
JPH03266127A (ja) | 情報処理システム |