JPH0581075A - ソフトウエア開発装置 - Google Patents

ソフトウエア開発装置

Info

Publication number
JPH0581075A
JPH0581075A JP3266921A JP26692191A JPH0581075A JP H0581075 A JPH0581075 A JP H0581075A JP 3266921 A JP3266921 A JP 3266921A JP 26692191 A JP26692191 A JP 26692191A JP H0581075 A JPH0581075 A JP H0581075A
Authority
JP
Japan
Prior art keywords
instruction
register
data
contents
user program
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
Application number
JP3266921A
Other languages
English (en)
Inventor
Kiyohisa Kondo
聖久 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3266921A priority Critical patent/JPH0581075A/ja
Publication of JPH0581075A publication Critical patent/JPH0581075A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 ユーザプログラムを擬似的な環境で実行する
ものにおいて、レジスタやデータ領域の内容を、実行済
の任意の命令の実行前の状態にもどすことができる装置
を得る。 【構成】 データコントロール部5は、シミュレート部
2がユーザプログラムの各命令を実行するたびに、擬似
レジスタ3および擬似メモリ4のデータ領域の内容を、
データ蓄積部6に保存する。そして、要求に応じて、任
意の命令実行前の内容をデータ蓄積部6から取り出し、
それを擬似レジスタ3および擬似メモリ4に設定する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、作成したソフトウェ
アを擬似環境で動作させ、そのソフトウェアを試験する
ためのソフトウェア開発装置に関するものである。
【0002】
【従来の技術】図6は従来のソフトウェア開発装置を示
すブロック図である。図において、21はシミュレー
タ、2はプログラムを実行するシミュレータ、3はプロ
グラムが動作する実環境におけるCPUのレジスタ(C
PUの内部フラグおよびプログラムカウンタなどの特殊
レジスタを含む。)に相当する擬似レジスタ、4はその
CPUのメモリに相当する擬似メモリ(ユーザプログラ
ム領域とデータ領域が定義される)。9はシミュレート
結果を表示するCRTとシミュレータ21に対するコマ
ンド入力用のキーボードとを有する入出力装置、10は
シミュレート結果を保存しておくための記憶装置であ
る。
【0003】次に動作について図7のフローチャートを
参照して説明する。まず、作成されたプログラム(以
下、ユーザプログラムという。)が、擬似メモリ4に設
定される。そして、シミュレータ21が起動すると、シ
ミュレート部2は、擬似メモリ4から、ユーザプログラ
ムの中の実行される命令をフェッチし(ステップST3
1)、その命令を実行する(ステップST32)。
【0004】実行された命令が演算命令やストア命令で
あった場合には、その命令によって指定されたレジスタ
やメモリ番地に相当する擬似レジスタ3や擬似メモリ4
に実行結果を書き込む(ステップST33)。そして、
以上の処理が繰り返されて、シミュレータ21上でユー
ザプログラムのシミュレートが実行される。
【0005】
【発明が解決しようとする課題】従来のソフトウェア開
発装置は以上のように構成されているので、擬似レジス
タ3および擬似メモリ4の状態を過去の状態に復元した
り、その過去の状態において擬似メモリ4中のデータ値
や擬似レジスタ3の各値を変更した上でその状態からユ
ーザプログラムを実行したりする場合には、再度ユーザ
プログラムを、最初からその状態を設定した命令が存在
する位置まで実行させなければならず、プログラム開発
効率が低下するという問題点があった。
【0006】この発明は上記のような問題点を解消する
ためになされたもので、擬似レジスタや擬似メモリの状
態などのソフトウェア環境を、現在の状態にした命令を
実行する以前の任意の段階における状態にもどすことが
できるソフトウェア開発装置を得ることを目的とする。
【0007】
【課題を解決するための手段】請求項1記載の発明に係
るソフトウェア開発装置は、ユーザプログラムのための
レジスタおよびデータ領域を有し、そのユーザプログラ
ムを実行するシミュレート部と、レジスタおよびデータ
領域の内容をユーザプログラムの命令実行ごとに保存す
るデータ蓄積部と、レジスタおよびデータ領域の内容を
過去の状態にもどす指示に応じて、データ蓄積部からそ
の状態における内容を取り出し、それをレジスタおよび
データ領域に設定するデータコントロール部とを備えた
ものである。
【0008】また、請求項2記載の発明に係るソフトウ
ェア開発装置は、ユーザプログラムのためのレジスタお
よびデータ領域を有し、そのユーザプログラムを実行す
るシミュレート部と、レジスタおよびデータ領域の内容
のうち、命令の逆実行によっては復元できない内容を、
ユーザプログラムの命令実行ごとに保存するデータ蓄積
部と、レジスタおよびデータ領域の内容を過去の状態に
もどす指示に応じて、直前に実行された命令から指示さ
れた状態に対応する命令までの各命令の逆の動作を行っ
て、その各動作の結果復元された内容を順次レジスタお
よびデータ領域に設定する解析部と、解析部の動作によ
っては復元できない内容を、データ蓄積部から取り出
し、それを適宜解析部に与えるデータコントロール部と
を備えたものである。
【0009】
【作用】請求項1記載の発明におけるデータコントロー
ル部は、データ蓄積部に保存されているレジスタおよび
データ領域の各内容から、指示された過去の段階に対応
したものを取り出し、それをレジスタおよびデータ領域
に設定する。
【0010】また、請求項2記載の発明における解析部
は、最後に実行された命令から指示された過去の段階に
対応した命令までの各命令について、各命令による動作
とは逆の動作を、ユーザプログラムにおける各命令の実
行順とは逆に実行する。
【0011】
【実施例】
実施例1.図1はこの発明の第1の実施例によるソフト
ウェア開発装置を示すブロック図である。図において、
1はシミュレータ、2はユーザプログラムを実行するシ
ミュレート部、5は命令実行ごとに各レジスタおよびデ
ータ領域の内容をデータ蓄積部6に蓄積するとともに、
データ蓄積部6から所定の内容を取り出すデータコント
ロール部である。その他のものは同一符号を付して図6
に示したものと同一のものである。なお、データ蓄積部
6は、シミュレータ1の外部に別個に設けられることも
ある。
【0012】次に動作について図2および図3のフロー
チャートを参照して説明する。まずシミュレータ1のデ
ータコントロール部5は、データ蓄積部6の定義を行う
(ステップST1)、すなわち、データ蓄積部6に保存
領域を確保する。そして、シミュレート部2は、従来の
場合と同様に動作してユーザプログラムを実行する(ス
テップST2〜ST4)。
【0013】ここで、データコントロール部5は、1命
令が実行されると、擬似レジスタ3の各内容および擬似
メモリ4のデータ領域の内容を、データ蓄積部6に保存
する(ステップST5)。以上の処理が、ユーザプログ
ラムが停止するまで繰り返される(ステップST6)。
その結果、データ蓄積部6には、実行された各命令に対
応したレジスタおよびデータ領域の内容が保存される。
【0014】入出力装置9から、過去の段階の状態にも
どる指示が入力されると、データコントロール部5は、
その段階に対応したレジスタ内容およびデータ領域の内
容をデータ蓄積部6から取り出す(ステップST1
1)。そして、取り出した内容を、擬似レジスタ3およ
び擬似メモリ4に設定する(ステップST12)。この
結果、擬似レジスタ3および擬似メモリ4の状態は、指
示された段階の状態に復元される。
【0015】なお、その状態でさらに前の段階の状態に
もどる指示が入力されると、ステップST11およびS
T12の処理が再度実行される(ステップST13)。
【0016】実施例2.図4はこの発明の第2の実施例
によるソフトウェア開発装置を示すブロック図である。
図において、11はシミュレータ、7は実行済の命令を
解析して、その命令による動作とは逆の動作を行う、あ
るいは逆の動作をシミュレート部2に行わせる解析部、
8は解析部7の動作だけでは前段階の状態に復元できな
いレジスタなどをデータ蓄積部6に保存するとともに、
それを取り出すデータコントロール部である。
【0017】次に動作について説明する。シミュレート
が実行される際のシミュレータ11の動作は、図2に示
す第1の実施例によるシミュレータ1の動作と同様であ
る。ただし、この場合には、データ蓄積部6に保存され
るものは、命令の逆動作によっては復元不能なものであ
り、例えば、CPUの内部フラグなどである。
【0018】入出力装置9から、過去の段階の状態にも
どる指示がなされると、シミュレータ11は、図5のフ
ローチャートに示すように動作する。すなわち、まず、
最後に実行した命令を擬似メモリ4から取り出してきて
(ステップST21)、その命令が何であるか解析す
る。そして、必要があればそのときの擬似レジスタ3お
よび擬似メモリ4の内容を用いて、その命令の動作とは
逆の動作を実行する。逆の動作とは、例えば、加算命令
に対する減算処理やロード命令に対するストア処理であ
る。(ステップST22)。
【0019】そして、処理の結果、レジスタやデータの
変更がある場合には、擬似レジスタ3や擬似メモリ4の
内容を変更する。ここで、解析部7は、逆の動作を行っ
ても擬似レジスタ3や擬似メモリ4の内容が正しく命令
実行前の状態にもどらないと判断したときには、データ
コントロール部8を介してデータ蓄積部6のデータを取
り出す。そして、そのデータをも用いて擬似レジスタ3
や擬似メモリ4を命令実行前の状態にもどす。
【0020】以上の処理によって、擬似レジスタ3およ
び擬似メモリ4の内容は、1命令実行前の段階の状態に
もどる。この段階が、指示された段階にまで達していな
いときには、さらに、ステップST21およびST22
の処理が実行され、さらにもう1段階前の状態にもどる
(ステップST23)。以上の処理が、指示された段階
にもどるまで繰り返され、最終的に、擬似レジスタ3お
よび擬似メモリ4の状態は、指示された段階の状態にも
どる。
【0021】
【発明の効果】以上のように、請求項1記載の発明によ
れば、ソフトウェア開発装置を、各命令実行のたびにレ
ジスタとデータ領域の内容を保存しておくように構成し
たので、ソフトウェア環境を直ちに任意の過去の段階の
状態にもどすことができるものが得られる効果がある。
【0022】また、請求項2記載の発明によれば、ソフ
トウェア開発装置を、指示された段階に達するまで、各
命令の動作とは逆の動作を、命令実行順とは逆に実行す
るように構成したので、データを保存しておく記憶領域
が小さくても、ソフトウェア環境を任意の過去の段階の
状態にもどすことができるものが得られる効果がある。
【図面の簡単な説明】
【図1】この発明の第1の実施例によるソフトウェア開
発装置を示すブロック図ある。
【図2】図1に示すシミュレータのユーザプログラム実
行時の動作を示すフローチャートである。
【図3】図1に示すシミュレータの過去の段階にもどる
際の動作を示すフローチャートである。
【図4】この発明の第2の実施例によるソフトウェア開
発装置を示すブロック図である。
【図5】図4に示すシミュレータの過去の段階にもどる
際の動作を示すフローチャートである。
【図6】従来のソフトウェア開発装置を示すブロック図
である。
【図7】図6に示すシミュレータのユーザプログラム実
行時の動作を示すフローチャートである。
【符号の説明】
2 シミュレート部 5 データコントロール部 6 データ蓄積部 7 解析部 8 データコントロール部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 ユーザプログラムを実行するシミュレー
    ト部と、前記ユーザプログラムが扱うレジスタおよびデ
    ータ領域の内容を、前記ユーザプログラムの命令実行ご
    とに保存するデータ蓄積部と、前記レジスタおよびデー
    タ領域の内容を過去の状態にもどす指示に応じて、前記
    データ蓄積部からその状態に対応した内容を取り出し、
    それを前記レジスタおよびデータ領域に設定するデータ
    コントロール部とを備えたソフトウェア開発装置。
  2. 【請求項2】 ユーザプログラムを実行するシミュレー
    ト部と、前記ユーザプログラムが扱うレジスタおよびデ
    ータ領域の内容のうち、命令の逆実行によっては復元不
    能な内容を、前記ユーザプログラムの命令実行ごとに保
    存するデータ蓄積部と、前記レジスタおよびデータ領域
    の内容を過去の状態にもどす指示に応じて、直前に実行
    された命令から指示された状態に対応する命令までの各
    命令の逆の動作を行って、各動作の結果復元されたレジ
    スタおよびデータ領域の内容を順次前記レジスタおよび
    データ領域に設定する解析部と、前記解析部の動作によ
    っては復元不能な内容を、前記データ蓄積部から取り出
    し、それを前記解析部に与えるデータコントロール部と
    を備えたソフトウェア開発装置。
JP3266921A 1991-09-19 1991-09-19 ソフトウエア開発装置 Pending JPH0581075A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3266921A JPH0581075A (ja) 1991-09-19 1991-09-19 ソフトウエア開発装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3266921A JPH0581075A (ja) 1991-09-19 1991-09-19 ソフトウエア開発装置

Publications (1)

Publication Number Publication Date
JPH0581075A true JPH0581075A (ja) 1993-04-02

Family

ID=17437530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3266921A Pending JPH0581075A (ja) 1991-09-19 1991-09-19 ソフトウエア開発装置

Country Status (1)

Country Link
JP (1) JPH0581075A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191875A (ja) * 1993-12-27 1995-07-28 Nec Corp デバッガー
JPH08320813A (ja) * 1995-05-26 1996-12-03 Nec Corp プログラムシミュレータ装置及びプログラムデバッグ方法
US7088618B2 (en) 2003-11-28 2006-08-08 Sharp Kabushiki Kaisha Method of evaluating characteristics of semiconductor memory element, and method of extracting model parameter of semiconductor memory element
JP6076576B1 (ja) * 2016-06-07 2017-02-08 三菱電機株式会社 シミュレーション装置およびシミュレーションプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158937A (ja) * 1989-11-17 1991-07-08 Hitachi Ltd プログラム実行制御方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03158937A (ja) * 1989-11-17 1991-07-08 Hitachi Ltd プログラム実行制御方式

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191875A (ja) * 1993-12-27 1995-07-28 Nec Corp デバッガー
JPH08320813A (ja) * 1995-05-26 1996-12-03 Nec Corp プログラムシミュレータ装置及びプログラムデバッグ方法
US7088618B2 (en) 2003-11-28 2006-08-08 Sharp Kabushiki Kaisha Method of evaluating characteristics of semiconductor memory element, and method of extracting model parameter of semiconductor memory element
JP6076576B1 (ja) * 2016-06-07 2017-02-08 三菱電機株式会社 シミュレーション装置およびシミュレーションプログラム

Similar Documents

Publication Publication Date Title
US20040073780A1 (en) Single-step processing and selecting debugging modes
JPH05505695A (ja) 多重アーキテクチャ環境内で特にコードのデバッグを行う改良したソフトウェア・デバッグ・システムと方法
JPS5975347A (ja) 論理回路のシミユレ−シヨン装置
JPH11505645A (ja) プロセッサに基づくデジタルシステムをシミュレートするための装置および方法
JPH0581075A (ja) ソフトウエア開発装置
JP4465081B2 (ja) Vliwプロセッサにおける効率的なサブ命令エミュレーション
US5893928A (en) Data movement apparatus and method
JPH0410081B2 (ja)
JPH08286896A (ja) ソフトウェア開発方法及びソフトウェア開発システム
JP2747164B2 (ja) ソフトウェア・シミュレータ
JP3270729B2 (ja) 拡張命令セット・シミュレータ
US20020143748A1 (en) Method and system for providing a generic scalar function
JP3270337B2 (ja) プログラム制御プロセッサおよびマシン語プログラム出力方法
JP2856784B2 (ja) 電子計算機
JP3095556B2 (ja) プロセッサ機構のオンライン試験方法
JPH0667896A (ja) シングルチップマイクロコンピュータ
JP2632964B2 (ja) 諭理装置の試験処理方式
JPH0566961A (ja) 情報処理装置のソフトウエアデバツグ方式
JPS62204341A (ja) デ−タ処理装置
JPH02146625A (ja) レジスタ個数の拡張方式
JPH05274142A (ja) 命令疑似実行装置
JPS6334644A (ja) 機能レベルシミユレ−タ
JPS6362046A (ja) フア−ム・ウエアシミユレ−タ
US20060225063A1 (en) Method for configuring non-script language library files to be run as scripts
JPH0333944A (ja) 命令アドレストレース方式