JP2000242524A - プロセッサのソフトウエアシミュレータ - Google Patents
プロセッサのソフトウエアシミュレータInfo
- Publication number
- JP2000242524A JP2000242524A JP11039512A JP3951299A JP2000242524A JP 2000242524 A JP2000242524 A JP 2000242524A JP 11039512 A JP11039512 A JP 11039512A JP 3951299 A JP3951299 A JP 3951299A JP 2000242524 A JP2000242524 A JP 2000242524A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- state
- model
- information file
- processor
- 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 5
- 238000010586 diagram Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】 この発明は、デバック対象のプログラムの命
令実行後において、命令実行過程の途中の状態に容易に
戻ることができるプロセッサのソフトウエアシミュレー
タを提供することを目的とする。 【解決手段】 命令が1つ実行される毎に、レジスタモ
デルおよびメモリモデルのリソース値を状態情報ファイ
ルに保持させる手段、ならびに命令実行後において、1
命令分だけ状態を戻すための指令が入力された場合に、
状態情報ファイルの内容に基づいて、レジスタモデルお
よびメモリモデルのリソース値を、現在の状態より1命
令分だけ前の状態に戻す手段を備えている。
令実行後において、命令実行過程の途中の状態に容易に
戻ることができるプロセッサのソフトウエアシミュレー
タを提供することを目的とする。 【解決手段】 命令が1つ実行される毎に、レジスタモ
デルおよびメモリモデルのリソース値を状態情報ファイ
ルに保持させる手段、ならびに命令実行後において、1
命令分だけ状態を戻すための指令が入力された場合に、
状態情報ファイルの内容に基づいて、レジスタモデルお
よびメモリモデルのリソース値を、現在の状態より1命
令分だけ前の状態に戻す手段を備えている。
Description
【0001】
【発明の属する技術分野】この発明は、プログラムをデ
バックするために使用するプロセッサのソフトウエアシ
ミュレータに関する。
バックするために使用するプロセッサのソフトウエアシ
ミュレータに関する。
【0002】
【従来の技術】図3は、従来のプロセッサのソフトウエ
アシミュレータの構成を示している。
アシミュレータの構成を示している。
【0003】ソフトウエアシミュレータは、プロセッサ
と同じ動作を行うプログラムからなるシミュレータエン
ジン部11と、プロセッサが内蔵するレジスタ群をソフ
ト的に実現したレジスタ群モデル12と、プロセッサが
内蔵するデータメモリをソフト的に実現したデータメモ
リモデル13と、プロセッサが内蔵するプログラムメモ
リをソフト的に実現したプログラムメモリモデル14と
を備えている。プログラムメモリモデル14には、デバ
ック対象のプログラムが格納されている。
と同じ動作を行うプログラムからなるシミュレータエン
ジン部11と、プロセッサが内蔵するレジスタ群をソフ
ト的に実現したレジスタ群モデル12と、プロセッサが
内蔵するデータメモリをソフト的に実現したデータメモ
リモデル13と、プロセッサが内蔵するプログラムメモ
リをソフト的に実現したプログラムメモリモデル14と
を備えている。プログラムメモリモデル14には、デバ
ック対象のプログラムが格納されている。
【0004】シミュレータエンジン部11に実行開始命
令が入力されると、デバック対象のプログラムが実行せ
しめられる。このような従来のプロセッサのソフトウエ
アシミュレータでは、プログラムのデバック中に、デバ
ック対象のプログラムの命令を一旦実行してしまうと、
実行過程の途中の状態に戻れなかった。このため、実行
過程の途中の状態を検証する必要が生じた場合には、再
度その状態まで、シミュレーションを行う必要があっ
た。
令が入力されると、デバック対象のプログラムが実行せ
しめられる。このような従来のプロセッサのソフトウエ
アシミュレータでは、プログラムのデバック中に、デバ
ック対象のプログラムの命令を一旦実行してしまうと、
実行過程の途中の状態に戻れなかった。このため、実行
過程の途中の状態を検証する必要が生じた場合には、再
度その状態まで、シミュレーションを行う必要があっ
た。
【0005】
【発明が解決しようとする課題】この発明は、デバック
対象のプログラムの命令を実行した後において、ソフト
ウエアシミュレータの状態を命令実行過程の途中の状態
に容易に戻すことができるプロセッサのソフトウエアシ
ミュレータを提供することを目的とする。
対象のプログラムの命令を実行した後において、ソフト
ウエアシミュレータの状態を命令実行過程の途中の状態
に容易に戻すことができるプロセッサのソフトウエアシ
ミュレータを提供することを目的とする。
【0006】
【課題を解決するための手段】この発明による第1のプ
ロセッサのソフトウエアシミュレータは、命令が1つ実
行される毎に、レジスタモデルおよびメモリモデルのリ
ソース値を状態情報ファイルに保持させる手段、ならび
に命令実行後において、1命令分だけ状態を戻すための
指令が入力された場合に、状態情報ファイルの内容に基
づいて、レジスタモデルおよびデータメモリモデルのリ
ソース値を、現在の状態より1命令分だけ前の状態に戻
す手段を備えていることを特徴とする。
ロセッサのソフトウエアシミュレータは、命令が1つ実
行される毎に、レジスタモデルおよびメモリモデルのリ
ソース値を状態情報ファイルに保持させる手段、ならび
に命令実行後において、1命令分だけ状態を戻すための
指令が入力された場合に、状態情報ファイルの内容に基
づいて、レジスタモデルおよびデータメモリモデルのリ
ソース値を、現在の状態より1命令分だけ前の状態に戻
す手段を備えていることを特徴とする。
【0007】この発明による第2のプロセッサのソフト
ウエアシミュレータは、命令が1つ実行される毎に、レ
ジスタモデルおよびメモリモデルのリソース値を状態情
報ファイルに保持させる手段、ならびに命令実行後にお
いて、命令実行過程の途中の所定の段階に状態を戻すた
めの指令が入力された場合に、状態情報ファイルの内容
に基づいて、レジスタモデルおよびメモリモデルのリソ
ース値を、指定された段階の状態に戻す手段を備えてい
ることを特徴とする。
ウエアシミュレータは、命令が1つ実行される毎に、レ
ジスタモデルおよびメモリモデルのリソース値を状態情
報ファイルに保持させる手段、ならびに命令実行後にお
いて、命令実行過程の途中の所定の段階に状態を戻すた
めの指令が入力された場合に、状態情報ファイルの内容
に基づいて、レジスタモデルおよびメモリモデルのリソ
ース値を、指定された段階の状態に戻す手段を備えてい
ることを特徴とする。
【0008】
【0009】以下、図1および図2を参照して、この発
明の実施の形態について説明する。
明の実施の形態について説明する。
【0010】図1は、プロセッサのソフトウエアシミュ
レータの構成を示している。
レータの構成を示している。
【0011】ソフトウエアシミュレータは、プロセッサ
と同じ動作を行うプログラムからなるシミュレータエン
ジン部1と、プロセッサが内蔵するレジスタ群をソフト
的に実現したレジスタ群モデル2と、プロセッサが内蔵
するデータメモリをソフト的に実現したデータメモリモ
デル3と、プロセッサが内蔵するプログラムメモリをソ
フト的に実現したプログラムメモリモデル4と、シミュ
レータの状態を管理する状態管理部5と、状態情報ファ
イル6とを備えている。プログラムメモリモデル4に
は、デバック対象のプログラムが格納されている。
と同じ動作を行うプログラムからなるシミュレータエン
ジン部1と、プロセッサが内蔵するレジスタ群をソフト
的に実現したレジスタ群モデル2と、プロセッサが内蔵
するデータメモリをソフト的に実現したデータメモリモ
デル3と、プロセッサが内蔵するプログラムメモリをソ
フト的に実現したプログラムメモリモデル4と、シミュ
レータの状態を管理する状態管理部5と、状態情報ファ
イル6とを備えている。プログラムメモリモデル4に
は、デバック対象のプログラムが格納されている。
【0012】シミュレータエンジン部1には、実行開始
命令(実行すべきプログラムの範囲を指定することも可
能)とともに状態管理部5による動作を作動状態または
停止状態にするための指令が入力される。状態管理部5
による動作を停止状態にするための指令がシミュレータ
エンジン部1に入力された場合には、ソフトウエアシミ
ュレータの動作は従来と全く同じとなる。
命令(実行すべきプログラムの範囲を指定することも可
能)とともに状態管理部5による動作を作動状態または
停止状態にするための指令が入力される。状態管理部5
による動作を停止状態にするための指令がシミュレータ
エンジン部1に入力された場合には、ソフトウエアシミ
ュレータの動作は従来と全く同じとなる。
【0013】実行開始命令とともに状態管理部5による
動作を作動状態にするための指令がシミュレータエンジ
ン部1に入力された場合には、プログラム実行中におい
て、状態管理部5は次のような動作を行う。
動作を作動状態にするための指令がシミュレータエンジ
ン部1に入力された場合には、プログラム実行中におい
て、状態管理部5は次のような動作を行う。
【0014】つまり、状態管理部5は、シミュレータエ
ンジン部1が命令を1つ実行する毎に、レジスタ群モデ
ル2の各レジスタモデルのリソース値およびデータメモ
リモデル3のリソース値ならびに実行した命令の内容を
状態情報ファイル6に出力する。状態情報ファイル6
は、状態管理部5から出力された最新の所定命令数分、
例えば最新の10命令分のリソース値および実行命令を
保持する。
ンジン部1が命令を1つ実行する毎に、レジスタ群モデ
ル2の各レジスタモデルのリソース値およびデータメモ
リモデル3のリソース値ならびに実行した命令の内容を
状態情報ファイル6に出力する。状態情報ファイル6
は、状態管理部5から出力された最新の所定命令数分、
例えば最新の10命令分のリソース値および実行命令を
保持する。
【0015】このようにして、全ての命令が実行された
後において、1命令分だけ状態を戻すための指令がシミ
ュレータエンジン部1に入力されると、状態管理部5
は、状態情報ファイル6を逆にたどって、1命令分前の
リソース値に基づいて、レジスタ群モデル2およびデー
タメモリモデル3のリソース値を1命令分前の値に書き
換える。この例では、このように動作を順次行うことに
より9命令分前の状態まで戻ることができる。
後において、1命令分だけ状態を戻すための指令がシミ
ュレータエンジン部1に入力されると、状態管理部5
は、状態情報ファイル6を逆にたどって、1命令分前の
リソース値に基づいて、レジスタ群モデル2およびデー
タメモリモデル3のリソース値を1命令分前の値に書き
換える。この例では、このように動作を順次行うことに
より9命令分前の状態まで戻ることができる。
【0016】図2に示すように、レジスタモデルR1の
リソース値と、データメモリモデルのアドレス0x10
0のリソース値とを更新する命令Aが実行される場合に
は、実行前のリソース値が状態情報ファイル6に保持さ
れるため、A命令実行後において、状態情報ファイル6
を参照してA命令実行前の状態に戻ることができる。
リソース値と、データメモリモデルのアドレス0x10
0のリソース値とを更新する命令Aが実行される場合に
は、実行前のリソース値が状態情報ファイル6に保持さ
れるため、A命令実行後において、状態情報ファイル6
を参照してA命令実行前の状態に戻ることができる。
【0017】なお、命令実行後において、命令実行過程
の途中の所定の段階に状態を戻すための指令がシミュレ
ータエンジン部1に入力された場合に、状態情報ファイ
ルの内容に基づいて、レジスタモデルおよびデータメモ
リモデルのリソース値を、指定された段階のリソース値
に書き換えるようにしてもよい。
の途中の所定の段階に状態を戻すための指令がシミュレ
ータエンジン部1に入力された場合に、状態情報ファイ
ルの内容に基づいて、レジスタモデルおよびデータメモ
リモデルのリソース値を、指定された段階のリソース値
に書き換えるようにしてもよい。
【0018】
【発明の効果】この発明によれば、命令実行後におい
て、ソフトウエアシミュレータの状態を命令実行過程の
途中の状態に容易に戻すことができるようになる。
て、ソフトウエアシミュレータの状態を命令実行過程の
途中の状態に容易に戻すことができるようになる。
【図1】プロセッサのソフトウエアシミュレータの構成
を示すブロック図である。
を示すブロック図である。
【図2】レジスタモデルR1のリソース値とデータメモ
リモデルのアドレス0x100のリソース値とを更新す
る命令Aが実行される場合に、状態情報ファイルに保持
されている情報を示す模式図である。
リモデルのアドレス0x100のリソース値とを更新す
る命令Aが実行される場合に、状態情報ファイルに保持
されている情報を示す模式図である。
【図3】従来のプロセッサのソフトウエアシミュレータ
の構成を示すブロック図である
の構成を示すブロック図である
1 シミュレータエンジン部 2 レジスタ群モデル 3 データメモリモデル 4 プログラムメモリモデル 5 状態管理部 6 状態情報ファイル
Claims (2)
- 【請求項1】 命令が1つ実行される毎に、レジスタモ
デルおよびメモリモデルのリソース値を状態情報ファイ
ルに保持させる手段、ならびに命令実行後において、1
命令分だけ状態を戻すための指令が入力された場合に、
状態情報ファイルの内容に基づいて、レジスタモデルお
よびメモリモデルのリソース値を、現在の状態より1命
令分だけ前の状態に戻す手段、 を備えているプロセッサのソフトウエアシミュレータ。 - 【請求項2】 命令が1つ実行される毎に、レジスタモ
デルおよびメモリモデルのリソース値を状態情報ファイ
ルに保持させる手段、ならびに命令実行後において、命
令実行過程の途中の所定の段階に状態を戻すための指令
が入力された場合に、状態情報ファイルの内容に基づい
て、レジスタモデルおよびメモリモデルのリソース値
を、指定された段階の状態に戻す手段、 を備えているプロセッサのソフトウエアシミュレータ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11039512A JP2000242524A (ja) | 1999-02-18 | 1999-02-18 | プロセッサのソフトウエアシミュレータ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11039512A JP2000242524A (ja) | 1999-02-18 | 1999-02-18 | プロセッサのソフトウエアシミュレータ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2000242524A true JP2000242524A (ja) | 2000-09-08 |
Family
ID=12555106
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11039512A Pending JP2000242524A (ja) | 1999-02-18 | 1999-02-18 | プロセッサのソフトウエアシミュレータ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2000242524A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007004400A (ja) * | 2005-06-22 | 2007-01-11 | Oki Data Corp | プログラム・デバッグ方法 |
| JP6076576B1 (ja) * | 2016-06-07 | 2017-02-08 | 三菱電機株式会社 | シミュレーション装置およびシミュレーションプログラム |
-
1999
- 1999-02-18 JP JP11039512A patent/JP2000242524A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007004400A (ja) * | 2005-06-22 | 2007-01-11 | Oki Data Corp | プログラム・デバッグ方法 |
| JP6076576B1 (ja) * | 2016-06-07 | 2017-02-08 | 三菱電機株式会社 | シミュレーション装置およびシミュレーションプログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH06309177A (ja) | マイクロコンピュータ | |
| CN101271402A (zh) | 一种调用函数的方法及系统 | |
| JPH10171848A (ja) | アーキテクチャシステムを設計する方法 | |
| JP2000242524A (ja) | プロセッサのソフトウエアシミュレータ | |
| JP2003022182A (ja) | コントローラ | |
| JP2003122410A (ja) | コントローラの演算実行方法 | |
| JPH0410081B2 (ja) | ||
| JP2663895B2 (ja) | Cpuシミュレータ | |
| JP2747164B2 (ja) | ソフトウェア・シミュレータ | |
| JP2573391B2 (ja) | プログラマブルコントローラ | |
| US8751210B1 (en) | Suspending procedures in simulation of a circuit design | |
| JPH10240504A (ja) | 通信プログラムの作成方法 | |
| JPH05113882A (ja) | 中間フアイルによる外付けマン・マシン・インターフエース実現方式 | |
| JP3541094B2 (ja) | マルチタスク制御システムおよび制御方法 | |
| JPH03266080A (ja) | 論理シミュレーション方法 | |
| JPH02205143A (ja) | パケット交換網情報の管理方法 | |
| JPH0576660B2 (ja) | ||
| JPH0337719A (ja) | マスタフアイルの主記憶装置展開方式 | |
| JPS5949609A (ja) | 模擬実行機能を備えたプログラマブル・コントロ−ラ | |
| JPH05224711A (ja) | プログラマブルコントローラの制御方法 | |
| JPH08263527A (ja) | Cpu周辺装置のシミュレーション方式およびその方法 | |
| JPH0421028A (ja) | レジスタ管理方法 | |
| JPH04259085A (ja) | データ駆動形プロセッサのメモリアクセス制御方法 | |
| JPH03233703A (ja) | シーケンス制御装置 | |
| JPH09198415A (ja) | 論理シミュレータ |