JPS6198455A - デバイスシミユレ−ト方式 - Google Patents

デバイスシミユレ−ト方式

Info

Publication number
JPS6198455A
JPS6198455A JP59219855A JP21985584A JPS6198455A JP S6198455 A JPS6198455 A JP S6198455A JP 59219855 A JP59219855 A JP 59219855A JP 21985584 A JP21985584 A JP 21985584A JP S6198455 A JPS6198455 A JP S6198455A
Authority
JP
Japan
Prior art keywords
input
trap
instruction
output instruction
output
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
JP59219855A
Other languages
English (en)
Inventor
Kunio Tagami
田上 邦夫
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP59219855A priority Critical patent/JPS6198455A/ja
Publication of JPS6198455A publication Critical patent/JPS6198455A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、あるデバイスが存在しないデータ処理環境に
おいて、該デバイスへの入出力要求をシミュレートする
ためのシミュレート方式に関する。
〔従来の技術〕
従来、新規に開発されたデバイスを使用するシステムの
開発環境において、該デバイスの完成以前に、該デバイ
スを制御するプログラムを計画したり、該デバイスを使
用する利用者プログラムを評価する必要がある場合は、
デバイスをシミュレートすることが行なわれて来た。
しかしながら、従来のシミュレートの方法は、デバイス
を制御するプログラムに対して各入出力命令の直前にシ
ミュレータルーチンへの分岐命令を追加することにより
行なうものか、または、各入出力命令を不正命令に置換
えて、該命令が中央処理装置によりプログラム例外とさ
れ、その例外割込処理のなかでシミュレータルーチンへ
分岐スることにより行なうものであり、いずれも、該デ
バイスの入出力制御プログラムに変更を加えるものであ
る。
〔発明が解決しようとする問題点〕
このため従来のシミュレートの方法はデバイスの入出力
制御プログラムの最終評価にはなり得す、またデバイス
の完成の後、接続評価のためKは、入出力制御プログラ
ムのシミュレータのために変更した部分を正規の入出力
命令の実行のために削除するとい5工程が必要となって
いた。
本発明の目的は、実デバイスの存在しないシステム環境
において、デバイスのための入出力制御プログラムに何
の変更も加えることなく、デバイスを使用する利用者プ
ログラムが自由に未実装デ(バイスへの入出力要求を行
なえるようKし、デバ♂ 1   イスなしでも、デバイスのための入出力制御プ
ログラムとデバイスを使用する利用者プログラムの評価
を可能としたデバイスシミュレート方式を提供すること
にある。
〔問題点を解決するための手段〕
本発明は未実装デバイスのシミュレーションを中央処理
装置のトラップ機能とトラップ処理ルーチンとシミュレ
ータテーブルで行なわれるようにしたものである。
すなわち、本発明のデバイスシミュレート方式は、未実
装デバイスへの入出力命令の実行要求によりトラップ割
込を発生してトラップ処理ルーチンを起動する中央処理
装置と、前記゛入出力命令に示されたコマンドをシミュ
レートするための前記未実装デバイスの仮想状況情報を
保持するシミュレータテーブルと、トラップ割込の原因
となった入出力命令を解析し、前記未実装デバイスのデ
バイスアドレスと機能コードとデータアドレスとデータ
カウントを知り、前記シミュレータテーブルをアクセス
することで前記入出力命令に示された機能をシミーレー
トし、前記中央処理装置に入出力  !命令が受付けら
れたことを示す表示をセットし、前記入出力命令の次の
プログラムシーケンスK 制御を戻す機能を持つ前記ト
ラップ処理ルーテンとを備えることを特徴とする。
〔実 施 例〕
本発明の実施例を図面を参照しながら説明する。
第2図は本発明によるデバイスシミュレート方式が適用
されたデータ処理システムの構成図で、中央処理装置1
1主記憶装置2、デバイス3(・ただし、未実装)とバ
ス4からなる。
第1図は第2図の主記憶装置2中に存在するプログラム
およびテーブルの構成を示す図である。
シミュレータテーブル24は未実装デバイス3への実行
要求のあった入出力命令に示されたコマンドをシミュレ
ートするための未実装デバイス3の仮想状況情報(第8
図)を保持する。トラップ処理ルーチン23は、中央処
理装置IK未実装デバイス3への入出力命令の実行が要
求されるとトラップ割込を発生して起動され; トラッ
プ割込の原因となった入出力命令を解析し、未実装デバ
イス3のデバイスアドレスと機能コードとデータアドレ
スとデータカウントを知り、シミュレータテーブル24
をアクセスすることで前記入出力命令に示された機能を
シミュレートし、中央処理装置1に入出力命令が受付け
られたことを示す表示をセットし、前゛記入出力命令の
次のプログラムシーケンスに制御を戻す機能を有する。
トラップ割込が発生するとトラップセーブエリア22に
は中央処理装置により第7図の情報がセットされ、トラ
ップベクトル21でポイントされるトラップ処理ルーチ
ンが起動される。ドライバ25は未実装デバイス30入
出力今、ドライバ25が未実装デバイス8からデータを
読出す処理を例にとって説明する。ドライバ25は、未
実装デバイス8からデータを読出すためには、第3図で
示すように、3個の■0命令251.252、253を
必要とする。IO命令251は読出したデータの主記憶
装置2への格納場所を示すデータアドレスと、何バイト
までのデータを読出すかを示すデータカウントをデバイ
ス8に前もって指定する10命令である。■0命令25
2は、10命令251で指定した主記憶装置2の格納場
所へデバイス8の保持しているデータを書込む動作を起
動するIO命令である。10命令253は、読出したデ
ータの転送完了後、それが正常に終了したか否かを知る
ために、デバイス8のステータスを読込むIO命令であ
る。そして、■0命令251と253は、これらがデバ
イス8に受付けられた時点でその機能が終了する即時型
IO命令であり、工0命令252は、それがデバイス8
に受付けられた時点では、その機能が開始されるのみで
、その機能の終了は、別途入出力割込によって知らされ
る遅延型工0命令である。
以下、それぞれの■0命令251.252.253のシ
ミュレート手j蓼について説明スル。
(1)  データアドレス、カウント指定の10命令(
−IO命令251) I    IO命令251のオペランド部分を第4図に
示す。
)1  中央処理製□よ、10命令25、に出合うと、
第4図のデバイスアドレスに示されているデバイス8に
対して、機能コード、データアドレス、データカウント
を送ろうとするが、デバイス8が未実装のため、トラッ
プ割込を発生し、トラップセーブエリア22に第7図の
情報をセットして、トラップヘクトル21でポイントさ
れるトラップ処理ルーチン23を起動する◎ トラップ
処理ルーチン23はトラップセーブエリア22にセット
されたトラップ番号から、トラップの原因が未実装デバ
イス8に対するIO命令の実行によるものだと分かる。
同じくトラップセーブエリア22にセットされたIO命
令の次の命令のアドレスを元に、IO命令251のオペ
ランド(第4図)を参照する。オペランドの機能コード
から、データアドレス及びデータカウントを指定する要
求だと分かると、オペランドのデータアドレス、データ
カウントをシミュレータテーブル24ヘコピーする。木
工0命令251は即時型であるため、トラップ処理ルー
チン23ハ、トラップセーブエリア22のインディケー
タのコビーフィ号 一ルドのIOアクセプト表示ビットを1にして、トラッ
プ復旧命令を実行する。中央処理装置1はコノトラップ
復旧命令により、トラップセーブエリア22のインディ
ケータレジスタのコピーフィルドの内容を中央処理装置
1のインディケータレジスタにセットし、トラップセー
ブエリア22に示されるトラップが発生した命令の次の
命令から処理を再開する。ドライバ25の工0命令25
1の直後には、デバイスがこの■0命令251を受付け
たか否かのチェックがあるが、中央処理装置lのインデ
ィケータレジスタのIOアクセプトビットが1になって
いるため、ドライバ25は工0命令251が受付けられ
たと判断する。
(2)  読出し動作実行のIO命令(IO命令252
)IO命令252のオペランド部分を第5図に示す。
工0命令252によりトラップが発生し、トラップ処理
ルーチン23が起動され、トラップ処理ルーチン23が
工0命令252のオペ2ンド(第5図)を参照するとこ
ろまでは、(1)で述べたことと同じである゛ため説明
を省略する。トラップ処理ルーチン23は、オペランド
の機能コードから、IO命令252がコマンドコードを
持った遅延型IO命令であると分かると、オペランドの
コマンドコードを、シミュレータテーブル24ヘコピー
スル。シミュレータテーブル24でのコピー場所は、第
8図に示す。次に、このIO命令252が遅延型IO命
令であるため、擬似データ転送、擬似入出力割込を発生
させる目的で、シミュレータタスク26に処理要求を出
してお(。その後、トラップセーブエリア22のインデ
ィケータレジスタのコピーフィールドの10アクセプト
表示ビットを1にして、トラップ復旧命令を実行する。
このトラップ復旧命令により、制御がドライバ25に戻
り、工0命令252の直後から処理が続行される。ドラ
イバ25は、■0命令252がデバイス8により受付け
られたことが分かると、読出しによるデータ転送完了の
割込を待つため、制御をモニタのディスパッチャ忙返す
。モニタのディスパッチャは中央処理装置lのモードを
割込許可モードにし、先程トラップ処理ルーチン23が
出した処理要求を、シミュレータタスク26を活性化さ
せて渡す。シミュレータタスク26は、制御が渡される
と、シミュレータテーブル24を参照して、コマンドコ
ードが読出しだと分かると、シミュレ−タタスク26内
に前もって準備しである読出しデータを、シミュレータ
テーブル24のデータアドレスフィールドに示されるバ
ッファへ、シミュレータテーブル240カウントフイー
ルドに示されるカウント分か、シミュレータタスク26
で準備した読出しデータのカウント分だけ、メモリ間転
送をする。次に、シミュレータタスク26は、シミュレ
ータテーブル24の割込ステータス語フィールドに読出
しデータ転送完了のステータスをセットし、同じく、デ
バイス制御語フィールドには割込中フラグをセットする
。それからシミュレータタスク26は擬似割込マクロを
発行して、モニタに対し【デバイス8からの入出力割込
をシミュレータするように要求する。そニタの擬似割込
マクロ処理ルーチンは、入出力割込をシミュレートして
最終的に、ドライバ250入出力割込ルーチンに制御を
渡す。
((3)割込ステータスを入力するIO命令(fO命j 1    令253) IO命令253のオペランド部分を第6図に示す。
■0命令253によりトラップが発生し、トラップ処理
ルーチン23が起動され、トラップ処理ルーチン23が
工0命令253のオペランド(第6図)を参照するとこ
ろまでは、(1)で述べたことと同じであるため説明を
省略する。トラップ処理ルーチン23は、オペランドの
機能コードから割込ステータスを入力する要求だと分か
ると、シミュレータテーブル24の割込ステータス語フ
ィールドの情報をオペランドで示されるアドレスヘコピ
ーし、シミュレータテーブル24のデバイス制御語フィ
ールドの割込中フラグをリセットしたあと、トラップセ
ーブエリア22のインディケータレジスタのコピーフィ
ールドのIOアクセプト表示ビットを1にして、トラッ
プ復旧命令を実行する。このトラップ復旧命令により、
ドライバ25のIO命令253の直後の命令から処理が
再開される。ドライバ25は、■0命令253がデバイ
ス8により受付けられたことを確認したあと、入力した
割込ステータス情報によ9、わ、デー、1カ完7ケオす
い、カ8.えアあ  1ったことを知る。
〔発明の効果〕
本発明は以上説明したように、未実装デバイスのシミュ
レーションを中央処理装置のトラップ機能と、トラップ
処理ルーチンとシミュレータテーブルとで行なうように
構成することで、入出力制御プログラムには何の変更も
加えないで、未実装デバイスに対する入出力をシミュレ
ートできるという効果がある。
【図面の簡単な説明】
第1図は第2図に示した主記憶装置2内に展開されるプ
ログラムおよびテーブルの構成図、第2図は本発明のデ
バイスシミュレー ト方式の一実施例が適用されたデー
タ処理システムの構成図、第3図は第1図に示したドラ
イバ2において、第2図に示した未実装のデバイス3に
対するデータ読取処理を行なう場合のIO命令の実行順
序を示す流れ図、第4図は、第3図に示したIO命令2
51が使用するオペランド部分の形式図、第5図は、第
3図忙示したIO命令252が使用するオペランド部分
の形式図、第6図は第3図に示した工0命令253が使
用するオペランド部分の形式図、第7図は第2図に示し
たトラップセーブエリア22の形式図、第8図は第2図
に示したシミュレータテーブル24の形式図である。 l: 中央処理装置 2: 主記憶装置 23ニドラツプ処理ルーチン 24:  シミュレータテーブル 特許出願人  日本電気株式会社 第1図 第2図 第3図 第4図 第5図 第6図 第 8 図

Claims (1)

  1. 【特許請求の範囲】 トラップ割込を発生してトラップ処理ルーチンを起動す
    る機能を持つ中央処理装置を有するデータ処理システム
    において、 未実装デバイスへの入出力命令の実行要求によりトラッ
    プ割込を発生してトラップ処理ルーチンを起動する中央
    処理装置と、 前記入出力命令に示されたコマンドをシミュレートする
    ための前記未実装デバイスの仮想状況情報を保持するシ
    ミュレータテーブルと、 トラップ割込の原因となった入出力命令を解析し、前記
    未実装デバイスのデバイスアドレスと機能コードとデー
    タアドレスとデータカウントを知り、前記シミュレータ
    テーブルをアクセスすることで前記入出力命令に示され
    た機能をシミュレートし、前記中央処理装置に入出力命
    令が受付けられたことを示す表示をセットし、前記入出
    力命令の次のプログラムシーケンスに制御を戻す機能を
    持つ前記トラップ処理ルーチンを備えることを特徴とす
    るデバイスシミュレート方式。
JP59219855A 1984-10-19 1984-10-19 デバイスシミユレ−ト方式 Pending JPS6198455A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59219855A JPS6198455A (ja) 1984-10-19 1984-10-19 デバイスシミユレ−ト方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59219855A JPS6198455A (ja) 1984-10-19 1984-10-19 デバイスシミユレ−ト方式

Publications (1)

Publication Number Publication Date
JPS6198455A true JPS6198455A (ja) 1986-05-16

Family

ID=16742111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59219855A Pending JPS6198455A (ja) 1984-10-19 1984-10-19 デバイスシミユレ−ト方式

Country Status (1)

Country Link
JP (1) JPS6198455A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01234945A (ja) * 1988-03-16 1989-09-20 Hitachi Micro Comput Eng Ltd デバッグツール

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01234945A (ja) * 1988-03-16 1989-09-20 Hitachi Micro Comput Eng Ltd デバッグツール

Similar Documents

Publication Publication Date Title
JP4688862B2 (ja) 仮想マシン環境における仮想マシンのシングルステップ機能のサポートを提供すること
EP0814404B1 (en) Debugging apparatus for debugging a program
US6895460B2 (en) Synchronization of asynchronous emulated interrupts
US8170859B1 (en) Methods, apparatuses and computer program products for simulating arbitrary unmodified code
KR950009455A (ko) 디지탈 신호처리 프로세서
JPH0430053B2 (ja)
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
US20130173887A1 (en) Processor simulation environment
JPS6198455A (ja) デバイスシミユレ−ト方式
JPS6049352B2 (ja) デ−タ処理装置
JP3424548B2 (ja) 組み込み機器用ソフトウエア論理シミュレータ
JPS6095648A (ja) 仮想fba擬似処理装置
JP2502128B2 (ja) コンパイラ装置
Colson Enabling user-mode processes in the target OS for CSC 159 operating system pragmatics
JP2864496B2 (ja) 多重処理計算機
JPH02135545A (ja) デバッガの実行制御処理方式
JPH0677236B2 (ja) I/o割込みをシミュレートする装置及び方法
JPS6214240A (ja) プログラム検査方式
JPH0367340A (ja) シミュレータ
JPH02284236A (ja) プログラムデバッグ処理装置
JPH02231634A (ja) ソフトウェア互換性維持方法
JPH0429097B2 (ja)
JPH06208480A (ja) システムプログラムシミュレーション方式
Leap A computer system emulation operating system.
JPS61239345A (ja) I/oシミユレ−タ