JPH02244343A - プログラムのデバッグ方式 - Google Patents
プログラムのデバッグ方式Info
- Publication number
- JPH02244343A JPH02244343A JP1065604A JP6560489A JPH02244343A JP H02244343 A JPH02244343 A JP H02244343A JP 1065604 A JP1065604 A JP 1065604A JP 6560489 A JP6560489 A JP 6560489A JP H02244343 A JPH02244343 A JP H02244343A
- Authority
- JP
- Japan
- Prior art keywords
- new
- simulation
- instruction
- software
- function
- 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
- 238000004088 simulation Methods 0.000 claims abstract description 40
- 238000012360 testing method Methods 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 11
- 238000011161 development Methods 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[概要]
原コンピュータシステムのハードウェアに対応するソフ
トウェアのデバッグを行う試験実行部とソフトウェアシ
ミュレータを備えたプログラムのデバッグ方式に関し、 コンピュータシステムの開発による新規命令および機能
の追加に対しソフトウェアシミュレータ上でのサポート
以前に正常性の確認を行うことができるプログラムのデ
バッグ方式を提供することを目的とし、 新規に使用する命令を擬似的に実行する新規命令シミュ
レーション手段と、新規ハードウェア機能を擬似する新
規ハードウェア機能シミュレーシッン手段とを含む付加
シミュレート部を備え、原コンビエータシステムに無い
新規命令と新規ハードウェア機能を備えた新たなコンピ
ュータシステムに対応するソフトウェアのデバッグの際
に命令の実行において、オペレーション例外が発生する
と、付加シミュレート部が起動して対応するシミュレー
ションを実行するよう構成する。
トウェアのデバッグを行う試験実行部とソフトウェアシ
ミュレータを備えたプログラムのデバッグ方式に関し、 コンピュータシステムの開発による新規命令および機能
の追加に対しソフトウェアシミュレータ上でのサポート
以前に正常性の確認を行うことができるプログラムのデ
バッグ方式を提供することを目的とし、 新規に使用する命令を擬似的に実行する新規命令シミュ
レーション手段と、新規ハードウェア機能を擬似する新
規ハードウェア機能シミュレーシッン手段とを含む付加
シミュレート部を備え、原コンビエータシステムに無い
新規命令と新規ハードウェア機能を備えた新たなコンピ
ュータシステムに対応するソフトウェアのデバッグの際
に命令の実行において、オペレーション例外が発生する
と、付加シミュレート部が起動して対応するシミュレー
ションを実行するよう構成する。
[産業上の利用分野]
ソフトウェアシミュレータ上でのプログラムの正常動作
確認を行うためのデバッグ方式に関する。
確認を行うためのデバッグ方式に関する。
近年のコンピュータシステムの開発のテンポが早まり、
新たに開発されたハードウェアに対応するソフトウェア
の開発を迅速に行うことが要求されている。従来、コン
ピュータシステムが開発されると、設計障害およびハー
ド障害等の早期発見が要求される。従来は、そのために
ソフトウェアシミュレータが用意されているが、それら
は従来システム用のシミニレ−シランを行うことができ
るが、新たに加えられたハードウェア機構およびソフト
ウェア機能に対して対処することができない、そのため
従来のソフトウェアシミュレータに対して新規な命令や
新機能に対応する構造を付加すれば良いが−それらをサ
ポートするには多大な時間を要する。
新たに開発されたハードウェアに対応するソフトウェア
の開発を迅速に行うことが要求されている。従来、コン
ピュータシステムが開発されると、設計障害およびハー
ド障害等の早期発見が要求される。従来は、そのために
ソフトウェアシミュレータが用意されているが、それら
は従来システム用のシミニレ−シランを行うことができ
るが、新たに加えられたハードウェア機構およびソフト
ウェア機能に対して対処することができない、そのため
従来のソフトウェアシミュレータに対して新規な命令や
新機能に対応する構造を付加すれば良いが−それらをサ
ポートするには多大な時間を要する。
従って、コンピュータシステムの迅速な開発要求に対し
プログラムのデバッグを迅速に実行することが困難とな
っているのが現状であり、その改善が望まれている。
プログラムのデバッグを迅速に実行することが困難とな
っているのが現状であり、その改善が望まれている。
[従来の技術]
第4図に従来例の構成図を示す。
従来のプログラムのデバッグ方式は、ソフトウェアシミ
ュレータ40と試験実行部41とで構成され、ソフトウ
ェアシミュレータ40は現在のマシーンと同じレベルの
アーキテクチャ−を持ち、命令の解析、アドレス空間の
計算等を実行する機能をソフトウェア的に備えている。
ュレータ40と試験実行部41とで構成され、ソフトウ
ェアシミュレータ40は現在のマシーンと同じレベルの
アーキテクチャ−を持ち、命令の解析、アドレス空間の
計算等を実行する機能をソフトウェア的に備えている。
試験実行部41は、実際のハードウェアに対して試験を
行う機能を備えており、各種の命令を出力してその結果
を受は取るとその内容が予め予定された結果と一致する
かどうかを見て正常であるかエラーであるかを表示する
出力を発生する。プログラムのデバッグのシミニレ−シ
ランにおいて試験実行部はソフトウェアシミュレータに
対して試験を実行する。
行う機能を備えており、各種の命令を出力してその結果
を受は取るとその内容が予め予定された結果と一致する
かどうかを見て正常であるかエラーであるかを表示する
出力を発生する。プログラムのデバッグのシミニレ−シ
ランにおいて試験実行部はソフトウェアシミュレータに
対して試験を実行する。
従来は、コンピュータシステムの開発に合わせて、新た
に付加される新規の構成と新規な機能に対応するソフト
ウェアシミュレータを開発し、試験実行部から供給され
る命令(プログラム)に対してソフトウェアシミュレー
ションが命令を擬似的に実行し、その結果を試験実行部
で判別することにより、プログラムのデバッグが行われ
ている。
に付加される新規の構成と新規な機能に対応するソフト
ウェアシミュレータを開発し、試験実行部から供給され
る命令(プログラム)に対してソフトウェアシミュレー
ションが命令を擬似的に実行し、その結果を試験実行部
で判別することにより、プログラムのデバッグが行われ
ている。
[発明が解決しようとする課l!l!]上記した従来の
方式では、対象とするコンピュータシステムの構成が同
じである限り有効であるが、これを改良した新たなハー
ドウェアを開発し、それに伴って新たな命令や機能(制
御機能を含む)が増えた場合、それに対応するソフトウ
ェアも新たに開発される。その場合、以前のシステムに
対応する命令、すなわちサポート済みの命令およびハー
ドウェア機能のみの確認では新規命令および新規機能の
試験部分のプログラムバグを検出できずハードウェアシ
ミュレータ上でのプログラム走行で、ソフトウェアシミ
ュレータ上で確認できなかった部分のプログラムバグが
検出された。
方式では、対象とするコンピュータシステムの構成が同
じである限り有効であるが、これを改良した新たなハー
ドウェアを開発し、それに伴って新たな命令や機能(制
御機能を含む)が増えた場合、それに対応するソフトウ
ェアも新たに開発される。その場合、以前のシステムに
対応する命令、すなわちサポート済みの命令およびハー
ドウェア機能のみの確認では新規命令および新規機能の
試験部分のプログラムバグを検出できずハードウェアシ
ミュレータ上でのプログラム走行で、ソフトウェアシミ
ュレータ上で確認できなかった部分のプログラムバグが
検出された。
そして、開発された新たなソフトウェアのデバッグを行
う必要があるが、新たなハードウェアシステムが完成す
るのを待ってそのハードウェアを使ってデバッグを行う
方法では、開発の迅速化に対処することができない。
う必要があるが、新たなハードウェアシステムが完成す
るのを待ってそのハードウェアを使ってデバッグを行う
方法では、開発の迅速化に対処することができない。
これに対処するには、現在のコンピュータシステム用の
ソフトウェアシミュレータの内容を新たなシステムに対
応する内容に変更する必要がある。
ソフトウェアシミュレータの内容を新たなシステムに対
応する内容に変更する必要がある。
ところが、そのためには新たな命令や機能に対応するた
めのソフトウェアシミュレータを開発する必要があるが
、そのために膨大な時間と人手が必要であるという問題
があった。
めのソフトウェアシミュレータを開発する必要があるが
、そのために膨大な時間と人手が必要であるという問題
があった。
本発明はコンピュータシステムの開発による新規命令お
よび機能の追加に対しソフトウェアシミュレータ上での
サポート以前に正常性の確認を行うことができるプログ
ラムのデバッグ方式を提供することを目的とする。
よび機能の追加に対しソフトウェアシミュレータ上での
サポート以前に正常性の確認を行うことができるプログ
ラムのデバッグ方式を提供することを目的とする。
[課題を解決するための手段]
第1図は本発明の原理構成図である。
10は付加シミュレート部、11は試験実行部、12は
ソフトウェアシミュレータを表し、101は初期設定手
段、102は新規命令シミュレーション手段、103は
新規ハードウェア機能シミュレーシッン手段を表す。
ソフトウェアシミュレータを表し、101は初期設定手
段、102は新規命令シミュレーション手段、103は
新規ハードウェア機能シミュレーシッン手段を表す。
本発明は付加シミュレート部に新規命令シミュレーショ
ン手段と新規ハードウェア機能シミュレーション手段を
備え、試験実行において未サポート命令およびハードウ
ェアの新規機能に関係するシミュレーションが発生する
とそれぞれについて擬似的に実行して試験を行うもので
ある。
ン手段と新規ハードウェア機能シミュレーション手段を
備え、試験実行において未サポート命令およびハードウ
ェアの新規機能に関係するシミュレーションが発生する
とそれぞれについて擬似的に実行して試験を行うもので
ある。
[作用]
第1図において、付加シミュレート部10の初期設定手
段101は、この付加シミュレート部10の新規ハード
ウェア機能シミュレーション手段103において使用す
るレジスタをクリアする。
段101は、この付加シミュレート部10の新規ハード
ウェア機能シミュレーション手段103において使用す
るレジスタをクリアする。
新規命令シミュレーション手段102は新しく開発され
たシステムにより新たに使用する新規命令をシミュレー
トする。新規ハードウェア機能シミュレーション手段1
03は、新しく開発されたシステムに設けられたハード
ウェア(レジスタなど)機能をシミュレートする。
たシステムにより新たに使用する新規命令をシミュレー
トする。新規ハードウェア機能シミュレーション手段1
03は、新しく開発されたシステムに設けられたハード
ウェア(レジスタなど)機能をシミュレートする。
このような付加シミュレート部10と試験実行部11を
用意して、ソフトウェアシミュレータ12の制御により
試験実行部11をトレース状態に設定してシミュレーシ
ョンを実行する。
用意して、ソフトウェアシミュレータ12の制御により
試験実行部11をトレース状態に設定してシミュレーシ
ョンを実行する。
ソフトウェアシミュレータ12は、l命令単位で試験実
行部の状態を把握して、未サポート命令の実行によるオ
ペレーシヨンの例外が発生すると、付加シミュレート部
10の新規命令シミュレーション手段102においてシ
ミュレーションを行い、新規機能固有の部分に該当する
と、この機能を付加シミュレート部10の新規ハードウ
ェアシミュレーション手段103においてその機能をシ
ミュレートする。
行部の状態を把握して、未サポート命令の実行によるオ
ペレーシヨンの例外が発生すると、付加シミュレート部
10の新規命令シミュレーション手段102においてシ
ミュレーションを行い、新規機能固有の部分に該当する
と、この機能を付加シミュレート部10の新規ハードウ
ェアシミュレーション手段103においてその機能をシ
ミュレートする。
このように、付加シミュレート部10において未サポー
ト命令および新機能が擬似的に試験可能となる。
ト命令および新機能が擬似的に試験可能となる。
[実施例コ
第2図は実施例構成図であり、第3図は実施例の処理フ
ロー図である。
ロー図である。
第2図において、21〜23はそれぞれ試験実行プログ
ラム、新規命令・機能シミュレーションプログラムおよ
びソフトウェアシミュレーションプログラムの格納部、
24は情報処理装置、25はメモリ、26はCPUを表
す。
ラム、新規命令・機能シミュレーションプログラムおよ
びソフトウェアシミュレーションプログラムの格納部、
24は情報処理装置、25はメモリ、26はCPUを表
す。
初めに、ソフトウェアシミュレーションプログラムを格
納部23から情報処理装置24のメモリ25内のある番
地(図では8000番地)に格納して、シミュレータを
起動する。すると、ソフトウェアシミュレータが起動し
て、最初に試験実行プログラムをロードすることを指示
するメツセージが出力される。この指示により試験実行
プログラム名とメモリアドレス(この例では番地Oを指
定)を入力すると、格納部21から試験実行プログラム
がメモリ25の番地Oから順にロードされ7る0次に、
新規命令・機能シミュレーション、プログラム(第1図
の付加シミュレート部に対応)のロードが同様に行われ
る。この場合は、メモリ25のアドレス4000番地か
ら行われる。このように必要なプログラムがメモリにロ
ードされた後、ソフトウェアシミュレータの制御により
試験実行部のプログラムがシミュレーションを実行する
。
納部23から情報処理装置24のメモリ25内のある番
地(図では8000番地)に格納して、シミュレータを
起動する。すると、ソフトウェアシミュレータが起動し
て、最初に試験実行プログラムをロードすることを指示
するメツセージが出力される。この指示により試験実行
プログラム名とメモリアドレス(この例では番地Oを指
定)を入力すると、格納部21から試験実行プログラム
がメモリ25の番地Oから順にロードされ7る0次に、
新規命令・機能シミュレーション、プログラム(第1図
の付加シミュレート部に対応)のロードが同様に行われ
る。この場合は、メモリ25のアドレス4000番地か
ら行われる。このように必要なプログラムがメモリにロ
ードされた後、ソフトウェアシミュレータの制御により
試験実行部のプログラムがシミュレーションを実行する
。
次に実施例の処理フローを第3図により説明する。
まず、デバッグトレース機能をオンにする(第3図30
)、これによりCPUはデバッグトレースモードとなり
、1つの命令を実行する毎に割込みを発生して、それぞ
れの状態(各レジスタやメモリの状態)を検出して出力
することが可能となる。
)、これによりCPUはデバッグトレースモードとなり
、1つの命令を実行する毎に割込みを発生して、それぞ
れの状態(各レジスタやメモリの状態)を検出して出力
することが可能となる。
次に試験実行部はソフトウェアシミュレータから与えら
れた一つの命令を擬似的に実行しく同31 )−’−4
デバッグ割込みがあるかどうかを識別する。
れた一つの命令を擬似的に実行しく同31 )−’−4
デバッグ割込みがあるかどうかを識別する。
この時はトレース機能により割込みが発生しており、そ
の命令が従来のコンピュータシステムでサポートしてい
る一般命令か否かを判別し、一般命令の場合はステップ
37にジャンプし、そうでない時は、オペレーション例
外か否かを命令の形式により判別する(同34)、オペ
レーション例外でない場合は異常終了メツセージを発生
しく同38)、オペレーション例外の場合は、その命令
が予め分かっている新規命令であるか否かを判別する(
同35)。
の命令が従来のコンピュータシステムでサポートしてい
る一般命令か否かを判別し、一般命令の場合はステップ
37にジャンプし、そうでない時は、オペレーション例
外か否かを命令の形式により判別する(同34)、オペ
レーション例外でない場合は異常終了メツセージを発生
しく同38)、オペレーション例外の場合は、その命令
が予め分かっている新規命令であるか否かを判別する(
同35)。
ここで、新規命令でない場合(例えば命令が“OO”の
ような、定義されてないコードの時)は、異常終了メツ
セージが発生し、新規命令の場合は、新規命令・新機能
を実行する。この時、新規命令の場合は予めメモリにロ
ードされた新規命令のシミニレ−シランプログラムによ
りその命令の実行を擬領し、新規ハードウェア機能に関
係する命令であれば同じくメモリの新規ハードウェアシ
ミニレ−シランプログラムにより対応するレジスタやメ
モリを書き換えする処理を擬似する動作を行い、その結
果はトレースデータとして得られる(同36)、この後
、ソフトウェアシミュレータからの命令が終了したかど
うかを判別しく同37)、終了してない場合は、次の一
命令を実行し、終了した場合はシミュレーシゴン動作を
終了する。
ような、定義されてないコードの時)は、異常終了メツ
セージが発生し、新規命令の場合は、新規命令・新機能
を実行する。この時、新規命令の場合は予めメモリにロ
ードされた新規命令のシミニレ−シランプログラムによ
りその命令の実行を擬領し、新規ハードウェア機能に関
係する命令であれば同じくメモリの新規ハードウェアシ
ミニレ−シランプログラムにより対応するレジスタやメ
モリを書き換えする処理を擬似する動作を行い、その結
果はトレースデータとして得られる(同36)、この後
、ソフトウェアシミュレータからの命令が終了したかど
うかを判別しく同37)、終了してない場合は、次の一
命令を実行し、終了した場合はシミュレーシゴン動作を
終了する。
[発明の効果]
本発明によれば、ソフトウェアシミュレータにより未サ
ポートである機能および命令のデバッグが可能となるた
め、ハードウェアシミュレーション上での試験プログラ
ム走行時に、より信頼度の高いプログラムを提供するこ
とができる。これにより、論理設計段階での設計ミスを
早期に発見することができ、ハードウェアの信頌性向上
に寄与することができる。
ポートである機能および命令のデバッグが可能となるた
め、ハードウェアシミュレーション上での試験プログラ
ム走行時に、より信頼度の高いプログラムを提供するこ
とができる。これにより、論理設計段階での設計ミスを
早期に発見することができ、ハードウェアの信頌性向上
に寄与することができる。
【図面の簡単な説明】
第1図は本発明の原理構成図、第2図は実施例構成図、
第3図は実施例の処理フロー図、第4図は従来例の構成
図である。 第1図中、 10:付加シミエレート部 11:試験実行部 12:ソフトウェアシミュレータ 101:初期設定手段 102:新規命令シミュレーション手段103;新規ハ
ードウェア機能シミュレーション手段 特許出願人 富士通株式会社 復代理人弁理士 穂坂 相離 にへ 実施例の処理フロー図 11!3図
第3図は実施例の処理フロー図、第4図は従来例の構成
図である。 第1図中、 10:付加シミエレート部 11:試験実行部 12:ソフトウェアシミュレータ 101:初期設定手段 102:新規命令シミュレーション手段103;新規ハ
ードウェア機能シミュレーション手段 特許出願人 富士通株式会社 復代理人弁理士 穂坂 相離 にへ 実施例の処理フロー図 11!3図
Claims (1)
- 【特許請求の範囲】 原コンピュータシステムのハードウェアに対応するソフ
トウェアのデバッグを行う試験実行部(11)とソフト
ウェアシミュレータ(12)を備えたプログラムのデバ
ッグ方式において、 新規に使用する命令を擬似的に実行する新規命令シミュ
レーション手段(102)と、新規ハードウェア機能を
擬似する新規ハードウェア機能シミュレーション手段(
103)とを含む付加シミュレート部(10)を備え、 原コンピュータシステムに無い新規命令と新規ハードウ
ェア機能を備えた新たなコンピュータシステムに対応す
るソフトウェアのデバッグの際に命令の実行において、
オペレーション例外が発生すると、付加シミユレート部
(10)が起動して対応するシミュレーションを実行す
ることを特徴とするプログラムのデバッグ方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1065604A JPH02244343A (ja) | 1989-03-17 | 1989-03-17 | プログラムのデバッグ方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1065604A JPH02244343A (ja) | 1989-03-17 | 1989-03-17 | プログラムのデバッグ方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02244343A true JPH02244343A (ja) | 1990-09-28 |
Family
ID=13291788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1065604A Pending JPH02244343A (ja) | 1989-03-17 | 1989-03-17 | プログラムのデバッグ方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02244343A (ja) |
-
1989
- 1989-03-17 JP JP1065604A patent/JPH02244343A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8930912B2 (en) | Method and system for performing software verification | |
KR100463809B1 (ko) | 컴퓨터 시스템에서 에러를 보정하기 위한 방법과 장치 | |
US5438673A (en) | Automatic interface for CPU real machine and logic simulator diagnostics | |
JP2001273165A (ja) | 中央処理装置の挙動モデルの細粒度妥当性を検証するための方法および装置 | |
CN117422026B (zh) | 一种基于risc-v架构的处理器验证系统 | |
WO2005036402A1 (ja) | テストプログラムデバッグ装置、半導体試験装置、テストプログラムデバッグ方法、及び試験方法 | |
JP4957521B2 (ja) | ソフトウェア部分テストシステム、それに用いる方法およびプログラム | |
JP2828590B2 (ja) | マイクロプログラム検証方法 | |
JPH02244343A (ja) | プログラムのデバッグ方式 | |
JP3745968B2 (ja) | 試験システム及び試験方法及び試験プログラム及び試験プログラムを記録した計算機で読み取り可能な記録媒体 | |
JPH06282599A (ja) | 論理検証方法および装置 | |
JPH10177590A (ja) | 論理回路モデルのデバッグ装置およびデバッグ方法 | |
JP4149047B2 (ja) | シミュレータ | |
JPH05250221A (ja) | シミュレータ実行方式 | |
WO2024165828A1 (en) | Computer-implemented methods of verifying a processor design under test, and related systems | |
JPH07219980A (ja) | テスト実行方式 | |
JP2570119B2 (ja) | ソフトウェアシミュレータ | |
JPS6365540A (ja) | 装置設計評価方式 | |
JP2001236247A (ja) | ソフトウェアシミュレータおよびシミュレーション処理方法 | |
CN115858323A (zh) | 一种针对中央处理器cpu的功能及性能测试方法、系统及装置 | |
JPS63247842A (ja) | 試験プログラム評価方式 | |
JPS63300330A (ja) | ファ−ムウェアのデバッグ方法 | |
JPH03198132A (ja) | シミュレーション装置 | |
JPS5968034A (ja) | マイクロコンピユ−タ開発装置用入出力ポ−トシミユレ−タ | |
JPH0567164A (ja) | 論理シミユレーシヨン方式 |