JP2533489B2 - シミユレ−シヨン方式 - Google Patents

シミユレ−シヨン方式

Info

Publication number
JP2533489B2
JP2533489B2 JP61117379A JP11737986A JP2533489B2 JP 2533489 B2 JP2533489 B2 JP 2533489B2 JP 61117379 A JP61117379 A JP 61117379A JP 11737986 A JP11737986 A JP 11737986A JP 2533489 B2 JP2533489 B2 JP 2533489B2
Authority
JP
Japan
Prior art keywords
input
control
model
output
data
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 - Lifetime
Application number
JP61117379A
Other languages
English (en)
Other versions
JPS62274436A (ja
Inventor
武文 進藤
繁 水野
裕二 田中
心平 中田
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.)
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP61117379A priority Critical patent/JP2533489B2/ja
Publication of JPS62274436A publication Critical patent/JPS62274436A/ja
Application granted granted Critical
Publication of JP2533489B2 publication Critical patent/JP2533489B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピュータ、なかでも、バスインタフェー
ス方式のコンピュータのシミュレーション方式に係わ
り、特にコンピュータのソフトウェアを、CPU,メモリ,
バスライン,入出力制御回路および入出力装置までを模
擬するシミュレータ上で実行してテストするのに好適
な、コンピュータのシミュレーション方式に係わるもの
である。
〔従来の技術〕
従来の方式は、コンピュータのCPUとメモリを模擬す
るCPUシミュレータによってコンピュータ用ソフトウェ
アを実行することで、テスト・デバッグを行うものであ
った。この種の方式については、例えば、情報処理学会
のマイクロコンピュータ研究会資料20−3(1982.3.1
5)に記載された「16ビットマイコン68000用クロス型テ
スト・デバッグ支援システムHITS」によって知られてい
る。
〔発明が解決しようとする問題点〕
しかしながら、この方式には、入出力制御回路や入出
力装置の制御動作を模擬する手段がないため、マイクロ
コンピュータの入出力に係るソフトウェアをCPUとメモ
リだけの環境で、実際の装置の等価に実行することは困
難であるという問題があった。
具体的には、入出力命令を伴なうルーチンを被テスト
プログラムとしてテストするとき、従来のCPUシミュレ
ータだけの場合には、入出力命令に対してはCPUシミュ
レータが実行を中断するので、利用者が入力データに相
当するデータを設定して次の命令の実行に続けていた
が、実行が入出力命令の度に何度も停止するため、効率
が非常に悪いという問題があった。また、データのDMA
転送や割込みについては、更に複雑なテスト実行を行う
必要があるという問題があった。
本発明の目的は、従来の方式における上述の如き問題
を解消するため、入出力制御回路,入出力装置の制御動
作を模擬する機能を実行して、実際のコンピュータ・シ
ステムと論理的等価に、コンピュータのソフトウェアを
実行することのできるコンピュータのシミュレーション
方式を提供することにある。
〔問題点を解決するための手段〕
本発明は、コンピュータのシミュレーション・システ
ムを、CPUシミュレータ,ICシミュレータ,IOモデル群,IO
ファイルで構成し、上記CPUシミュレータを、コマンド
制御機能,命令実行機能,割込み受付け機能,並列動作
機能,メモリ入出力機能およびメモリ機構で構成し、上
記IOシミュレータを、コマンド処理機能,IOモデメ実行
制御機能,DMA制御機能,割込み制御機能,実時間管理機
能およびIOファイル入出力機能で構成するとともに、個
々の入出力装置に対して制御動作を記述したIOモデル群
および入出力データを一括管理するIOファイルを構成す
ることによって、入出力命令により上記IOモデルを動作
させ、メモリ機能とIOモデル間のDMA転送,IOモデルから
CPUへの割込み,プログラムとIOモデルの並行動作等の
実際のコンピュータ・システムと同等の動作を実行可能
としたことを特徴とするものである。
〔作用〕
前述の如く、入出力命令を伴なうルーチンを被テスト
プログラムとしてテストするとき、従来のCPUシミュレ
ータだけによるシミュレーション方式場合には、入出力
命令に対してCPUシミュレータが実行を中断するので、
利用者が入力データに相当するデータを設定して次の命
令を実行に続けていた。本発明はこれをプログラムから
送出された情報に従って、IOモニタがIOモデルを起動し
て制御するようにして、自動的なテストを可能にしたも
のである。
〔実施例〕
第10図は本発明のコンピュータのシミュレーション方
式の適用対象である電子計算機システムを示すものであ
る。図において、1は端末装置、2は処理装置、3は主
記憶装置、4はファイルを示している。
第1図は、本発明の一実施例を示すマイクロコンピュ
ータのシミュレーション方式の構成図である。図におい
て、記号1は第10図に示したと同じ端末装置、5は被テ
ストプログラムおよびテスト手続き、6はCPUシミュレ
ータ、7はIOシミュレータ、8はIOモニタ、9はIOモデ
ル、10はIOファイルを示している。
上記CPUシミュレータ6は、コマンド制御機構6a,シミ
ュレーション実行制御機構6b,メモリ6cおよびバステー
ブル6dから構成されており、IOモニタ8は、コマンド処
理機能8a,IOモデル実行制御機構8b,DMA制御機構8c,割込
み制御機構8d,実時間動作管理機構8eおよびIOファイル
入出力制御機構8fから構成されている。また、IOモデル
9は、種々の入出力制御機構を模したモデル9a,9b,……
から構成されている。
第2図および第3図は、本実施例において被テストプ
ログラムとするフロッピィ・ディスク・ドライブ(FDD:
入出力装置)制御プログラムのフローチャートである。
以下、このFDD制御プログラムを例として本方式を説明
する。
第4図〜第6図は、それぞれ、上記FDD制御プログラ
ムを被テストプログラムとする本シミュレーション方式
における、前記CPUシミュレータ6,IOモニタ8およびIO
モデル9の処理手順を示すフローチャートである。な
お、第6図のIOモデルの処理手順に関しては、第7図〜
第9図に、リンクモードの処理,リセットモードの処理
およびPIOモードの処理をそれぞれ示した。
まず、動作の概要を説明する。
第2図に示す如く、メインデータ処理プログラム11が
制御パラメータを設定すると(100)、FDD制御プログラ
ム12がコールされる。該FDD制御プログラム12は、上記
制御パラメータを解釈して(101)、リード・コマン
ド,ライト・コマンド,フォーマット・コマンド,イニ
シャライズ・コマンドのうちのどのコマンドを指定して
いるのかを判定し、指定しているコマンドに対応するル
ーチンをコールする(102〜105)。
例えば、リード・ルーチン(102)は、第3図に示す
如く、まず、FDDがレディ状態であるか否かを調べるた
めに入力命令を実行して、フロッピィ・ディスク・コン
トローラ(FDC)のステータスを入力する(109)。そし
て、その値を判定して、FDDがレディ状態であれば、ヘ
ッドを目的のシリンダまで移動させるための数バイトの
制御データ、すなわち、シーク・コマンドと制御パラメ
ータ群を、複数回の出力命令を実行して、上記FDCに出
力する(110)。FDCはそのデータ群に対応した動作を実
行する。リード・ルーチン(102)は、シーク・コマン
ド実行終了の割込みを待ち(111)、割込み要求を受付
けると、複数回の入力命令を実行してシーク・コマンド
実行完了時のステータスデータを入力し(112)、その
データの値に対しての処理を行う。
次に、リード・ルーチン(102)は、FDDの指定した位
置から、指定した量のデータを入力して、メモリDMA転
送させるための数バイトの制御データ、すなわちリード
・データ・コマンドと制御パラメータ群を、複数回の出
力命令を実行してFDCに出力する(113)。そして、前記
シーク・コマンドの場合と同様に、FDCはそのデータ群
に対応した動作を実行し、リード・ルーチン(102)
は、リード・データ・コマンド実行終了の割込みを待ち
(114)、割込みを受付けると、複数回の入力命令を実
行してリード・データ・コマンドの実行完了のステータ
ス・データを入力し(115)、そのデータの値に対して
の処理を行う。
以上のリード・ルーチンを実行して、メモリに入力し
たデータを、データ処理プログラム11が処理するのが、
本実施例の基本的な動作である。
なお、従来は、上述の如きルーチンを被テストプログ
ラムとしてテストするとき、入出力命令に対してはCPU
シミュレータが実行を中断するため、利用者が入力デー
タに相当するデータを設定して次の命令の実行に続けて
いたものであり、これを本発明では、プログラム(入出
力命令)から送出された情報に従って、前記IOモニタ8
がIOモデル9を起動して制御するようにして、自動的な
テストを可能にしているものである。
以下、上述の如き本実施例の特徴部分である、プログ
ラム(入出力命令)から送出された情報に従って、前記
IOモニタ8がIOモデル9を起動して制御するという動作
を、CPUシミュレータ6で実行されるリード・ルーチン
(102)が、フロッピィ・ディスクからデータを入力す
るための数バイトの制御データを複数回の出力命令でFD
Cに転送し、FDCがその制御データに基づいてFDDからデ
ータを入力し、メモリに設定する場合を例に挙げて説明
する。
第4図に示す如く、利用者がプログラムの実行開始前
に設定する(117)コマンドにより、CPUシミュレータ6
のコンマンド制御機構6aは、当該コマンドを解析して、
第5図に示したIOモニタをコールし、IOモデル9を定義
するものであれば、モデル定義テーブルにIOモデル情報
を設定して、IOモデル9をロードする。そして、ロード
したIOモデル9をリンクモードで起動する(128)。IO
モデル9(第6図参照)は、リンクモードでIOモデルの
実行を支援するルーチンのアドレス(第7図、137b)
や、他のIOモデルが参照するエリアを定義する。
利用者がCPUシミュレータ起動コマンドを入力する
と、シミュレーションが開始される。
CPUシミュレータ6のシミュレーション実行制御機構6
bは、リード・ルーチン(102)において、レジスタに設
定されているデータをデータバスに、アドレス情報をア
ドレスバスに、制御情報をコントロールバスにそれぞれ
設定して、IOモニタを起動する(123)。IOモニタ8のI
Oモデル実行制御機構8bは、PIOモードにおいて、アドレ
スに対応するIOモデルをサーチして(第5図、130)、
該当するIOモデル、この場合はFDCのモジュールであるF
DCモデル9aをPIOモードを指定してコールする(131)。
該当するIOモデルがなければ、例外モード指定のあるIO
モデルをサーチして、そのIOモデルをコールする(13
2)。例外モード指定のあるIOモデルもない場合は、リ
ターンコードにエラー値を設定して、CPUシミュレータ
6にリターンする。
FDCモデル9aは、PIOモードにおいて、CPUシミュレー
タ6からのデータの受付けが可能な状態であると判定し
たならば、リード・ルーチン(102)の出力命令によっ
てデータバス部6dに設定された最初の1バイトの情報を
取込み、その情報をコマンド(リード・データ・コマン
ド)と認識する(第9図、139a)。また、データの受付
けが不正な状態であるならば、エラーメッセージ情報を
設定してリターンする(139b)。FDCモデル9aは、最初
の1バイトの情報を取込むと、コマンドに対応したパラ
メータ受付け状態となりリターンする。FDCモデル9a
は、次の出力命令によってコールされたとき、データバ
ス部6dに設定されている制御パラメータを1バイト取込
んで内部レジスタに格納する。
以上のシーケンスが繰り返されて8バイト目のパラメ
ータが取込まれたとき、FDCモデル9aは、コマンドと制
御パラメータに基づいた制御を開始する。
FDCモデル9aは、FDDの状態に対応する値の設定を要求
し、設定された状態値の判定を行い(139c)、コマンド
と制御パラメータに基づく制御の実行が可能であるなら
ば、入力動作に必要となる時間を生成し、その時間をイ
ベントとして登録する(139e)。そして、該登録時間経
過後、処理が再開される。
イベント要録要求を受けた実時間管理機能8eは、イベ
ント値と再開始情報とを保持してCPUシミュレータ6に
リターンする。CPUシミュレータ6のシミュレーション
実行制御機能6bは、入出力命令の次の命令を実行してイ
ベント監視時刻に達すると(第4図、119)、イベント
モードでIOモニタをコールする(120)。実時間管理機
能8eは、イベント値の更新(1を減ずる)を行い(13
3)、イベント完了(イベント値=0)を判定してイベ
ント完了であればそのイベントを削除し(第5図、134
a)、イベントテーブルに保持していたIOモデルの再開
始情報を回復してFDCモデル9aの中断点にリンクする(1
34b)。
FDCモデル9aがイベント登録要求の次の処理、すなわ
ち、リード・データ・コマンドの付加情報によって指定
されたIOファイル10の位置から、指定されたデータを入
力することを要求すると(139f)、IOファイル入力制御
機構8fは、IOファイル10からデータを入力して、FDCモ
デル9aの内部バッファに設定する。FDCモデル9aが内部
バッファに設定されたデータをデータバス6dに1バイト
設定してDMA転送を要求すると、DMA制御機能8cは、DMA
コントローラのモジュールであるDMAコントローラモデ
ル9bをコールする。DMAコントローラモデル9bは、リク
エストモードで、DMA転送要求を出したIOモデルのレベ
ルを調べ(141)、データバス部6dのデータをCPUシミュ
レータ6のメモリ6cに書込む。
FDCモデル9aはIOファイル10から入力したデータのDMA
転送を完了すると、リード・データ・コマンド実行完了
に対する状態を設定して(139g)、割込み発生を要求す
る(139h)。
割込み発生要求を受けた割込み制御機構8dは、コント
ロールバス部6dに割込みレベルを設定する。
CPUシミュレータ6のシミュレーション実行制御機構6
bは、命令を1つ実行する毎に外部からの割込みの有無
をチェックし(第4図、124)、割込みを受付けたとき
は、割込み要求受付けモードを指定してIOモニタをコー
ルする(125)。割込み制御機構8dは、割込みを要求し
たIOモデルをサーチして(第5図、135)、そのIOモデ
ルを割込み要求受付けモードを指定して起動する(13
6)。IOモデル9は、割込み要求受付けモードにおい
て、データバス部6dに割込みタイプを設定する(14
0)。シミュレーション実行制御機構6bは、データバス
部6dの割込みタイプを参照して割込み処理を行い、割込
み処理ルーチンの命令を実行する。
本実施例では、リード・ルーチン(102)が入出力命
令を実行してFDDおよびFDCの状態を読取り、共にレディ
状態となっておりリード・データ・コマンドの実行完了
となっているのを判定すると(第3図、114)、実行結
果の状態を読取るために、複数の入力命令を実行する
(115)。そして、入力命令によってコールされたFDCモ
デル9aが、実行結果の状態を示すデータを1バイトデー
タバス部6dに設定する。
以上のシーケンスが繰り返されて、コマンドによって
指定されたバイト数目のデータをデータバス部6dに設定
したとき、FDCモデル9aはリード・データ・コマンド終
了となって、次のコマンド待ち状態となる。リード・ル
ーチン(102)は、読取った実行結果の状態に対応する
処理を実行する。
以上述べた如く、内部的な論理状態の遷移は正確に模
擬し、入出力動作は時間に置換えることによって、DMA
転送,割込み制御,バスライン制御等のコンピュータの
制御動作を実環境と等価に実現することができる。
〔発明の効果〕
以上述べた如く、本発明によれば、コンピュータのソ
フトウェアの実行を、開発マシン上でのシミュレーショ
ンによって実際の装置と等価な条件で行うことができる
ようにして、入出力データおよび入出力動作制御に対す
るソフトウェアのテストを自動的に行えるようにしたこ
とにより、ソフトウェアの品質を向上させることができ
るという顕著な効果を奏するものでいる。特に、今まで
困難であった異常状態等の種々のケースのテストも可能
とするとともに、今まで実機が完成してからしかテスト
できなかったものを、完成前に行えるようにしたので、
開発期間の短縮を図ることも可能になるという効果をも
奏するものである。
【図面の簡単な説明】
第1図は本発明の一実施例を示すマイクロコンピュータ
のシミュレーション方式の構成図、第2図および第3図
は本実施例において被テストプログラムとするFDD制御
プログラムのフローチャート、第4図〜第6図は上記FD
D制御プログラムを被テストプログラムとする本シミュ
レーション方式における、CPUシミュレータ6,IOモニタ
8およびIOモデル9の処理手順を示すフローチャート、
第7図〜第9図は第6図のIOモデルの処理手順に関す
る、リンクモードの処理,リセットモードの処理および
PIOモードの処理を示す図、第10図は本発明のコンピュ
ータのシミュレーション方式の適用対象である電子計算
機システムを示す図である。 1:端末装置、2:処理装置、3:主記憶装置、4:ファイル、
5:被テストプログラムおよびテスト手続き、6:CPUシミ
ュレータ、6a:コマンド制御機構、6b:シミュレーション
実行制御機構、6c:メモリ、6d:バステーブル、7:IOシミ
ュレータ、8:IOモニタ、8a:コマンド処理機構、8b:IOモ
デル実行制御機構、8c:DMA制御機構、8d:割込み制御機
構、8e:実時間動作管理機構、8f:IOファイル入出力制御
機構、9a,9b,……:種々の入出力制御機構を模したIOモ
デル、10:IOファイル。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 田中 裕二 秦野市堀山下1番地 日立コンピュータ エンジニアリング株式会社内 (72)発明者 中田 心平 勝田市市毛882番地 株式会社日立製作 所那珂工場内 (56)参考文献 特開 昭59−68034(JP,A) 特開 昭58−121461(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】処理装置、主記憶装置、ファイルおよび端
    末を有する電子計算機システムにおいて、 コンピュータのCPUとメモリ部を模擬するCPUシミュレー
    タと、 入出力制御部の制御動作を模擬する入出力制御模擬部、 CPUとのバスライン部の制御を模擬して前記入出力制御
    模擬部の実行を制御する入出力モニタ、 前記各入出力制御模擬部の入出力データを一括管理する
    入出力ファイルで構成されるIOシミュレータとで構成し
    たシミュレーション・システムを設け、 入出力命令により前記入出力制御模擬部を動作させ、 メモリ機構と前記入出力制御模擬部間のDMA転送を行な
    い、その間にCPUで実行されるプログラムの動作中に前
    記入出力制御模擬部からCPUへの割込みを行なうことに
    よって、プログラムと前記入出力制御模擬部の並行動作
    等の動作を実行可能としたことを特徴とするシミュレー
    ション方式。
JP61117379A 1986-05-23 1986-05-23 シミユレ−シヨン方式 Expired - Lifetime JP2533489B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61117379A JP2533489B2 (ja) 1986-05-23 1986-05-23 シミユレ−シヨン方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61117379A JP2533489B2 (ja) 1986-05-23 1986-05-23 シミユレ−シヨン方式

Publications (2)

Publication Number Publication Date
JPS62274436A JPS62274436A (ja) 1987-11-28
JP2533489B2 true JP2533489B2 (ja) 1996-09-11

Family

ID=14710190

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61117379A Expired - Lifetime JP2533489B2 (ja) 1986-05-23 1986-05-23 シミユレ−シヨン方式

Country Status (1)

Country Link
JP (1) JP2533489B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557774A (en) * 1993-03-22 1996-09-17 Hitachi, Ltd. Method for making test environmental programs
WO2017212549A1 (ja) * 2016-06-07 2017-12-14 三菱電機株式会社 シミュレーション装置およびシミュレーションプログラム

Also Published As

Publication number Publication date
JPS62274436A (ja) 1987-11-28

Similar Documents

Publication Publication Date Title
US5146460A (en) Logic simulation using a hardware accelerator together with an automated error event isolation and trace facility
JPH0533423B2 (ja)
JPH05216712A (ja) コンピュータシステムおよびこのコンピュータシステム上で内観的タスクを遂行する方法並びにi/oプロセッサアセンブリ
US4891773A (en) Logic simulation
JP2533489B2 (ja) シミユレ−シヨン方式
JP2005353020A (ja) コンピュータプログラムのシミュレーション方式
CN1383508A (zh) 自动评价方法、自动评价系统及存储自动评价程序的存储媒体
JPS62194549A (ja) Cpu―io並列動作シミュレーション方法
JPH08194634A (ja) テスト実行システム
JPH10221410A (ja) Lsiの自動論理検証方式
JPS6349851A (ja) シミユレ−シヨンシステム
JPH08263130A (ja) シミュレーション方式
JP2001236247A (ja) ソフトウェアシミュレータおよびシミュレーション処理方法
KR920003279B1 (ko) 데이타 처리장치의 os 및 nos 로딩방법
JP3424548B2 (ja) 組み込み機器用ソフトウエア論理シミュレータ
JP2638078B2 (ja) 情報処理装置
JPH07219980A (ja) テスト実行方式
JP2001209555A (ja) 入出力エミュレーション装置、入出力装置のエミュレーション方法および入出力装置エミュレーションプログラムを記録した記録媒体
JPS61239345A (ja) I/oシミユレ−タ
JP2570119B2 (ja) ソフトウェアシミュレータ
JP2967741B2 (ja) Cpu互換性テスト装置
JP3685288B2 (ja) マイクロプロセッサのエミュレーション方法およびエミュレータ装置
CN115145802A (zh) 学习型遥控器仿真开发的mcu软件仿真系统、方法及其装置
JPH10187494A (ja) シミュレーション装置
JPH02232744A (ja) シミュレータの構成制御方式