JPH07121405A - Simulation system - Google Patents

Simulation system

Info

Publication number
JPH07121405A
JPH07121405A JP5268588A JP26858893A JPH07121405A JP H07121405 A JPH07121405 A JP H07121405A JP 5268588 A JP5268588 A JP 5268588A JP 26858893 A JP26858893 A JP 26858893A JP H07121405 A JPH07121405 A JP H07121405A
Authority
JP
Japan
Prior art keywords
model
simulator
monitor
mpu
input
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
JP5268588A
Other languages
Japanese (ja)
Inventor
Yasushi Yuasa
也寸志 湯浅
Yoshima Ikeuchi
義真 池内
Suketsugu Nagamatsu
祐嗣 永松
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 Keiyo Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Keiyo 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 Keiyo Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP5268588A priority Critical patent/JPH07121405A/en
Publication of JPH07121405A publication Critical patent/JPH07121405A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE:To reduce the load of a computer and to permit even a complicated system loading plural microprocessors to execute simulation equal to 3 real system by operating an MPU simulator, an I/O model and an I/O monitor by means of a different computer. CONSTITUTION:The MPU simulator 101 simulates the operation of MPU executing a tested program 103 which is read into a memory 104. An input/output simulator 102 simulates the operation of a peripheral equipment as against an input/output signal for the peripheral equipment which is out of the simulated object of the MPU simulator when it exists as the result of the execution/ simulation of the tested program in the MPU simulator. The input/output simulator 102 consists of the I/O model 106 simulating the operation of an input/ output device itself and of the I/O monitor 105 simulating the operation of a bus as against input/output from the MPU simulator and controlling the execution of the I/O model.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、機器組込み型マイクロ
コンピュータ用ソフトウェアを、実際にソフトウェアが
稼働するターゲットマシンと異なる汎用計算機でシミュ
レーションしてテスト/デバッグ作業を行うためのシミ
ュレーション方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a simulation system for simulating software for a device-embedded microcomputer by a general-purpose computer different from a target machine on which the software actually operates to perform a test / debug operation.

【0002】[0002]

【従来の技術】マイコンシステムの開発では、システム
設計の後にハードウェアとソフトウェアを並行に開発し
ている。このような機器組込み型ソフトウェアの開発に
おいては、ハードウェアの開発以前にソフトウェアのテ
ストを行わなければならないという前提があった。そこ
で、ソフトウェアのテストには、実際のコンピュータシ
ステムと論理的等価にシミュレーションを行なうシミュ
レータを用いて、テスト/デバッグを行っている。例え
ば、コンピュータのMPUとメモリ部を模擬するMPU
シミュレータを用いてコンピュータ用ソフトウェアを実
行することで、テスト/デバッグを行っている。又、M
PUシミュレータでの入出力命令(以下、I/O命令)
に対するシミュレーションは、疑似的なデータの設定を
行うなどしてテスト可能であったが、手間がかかるた
め、入出力制御部の制御動作を模擬する入出力モデル、
MPUとバスライン部の制御を模擬して前記入出力モデ
ルの実行を制御する入出力モニタ、前記各入出力モデル
の入出力データを一括管理する入出力ファイルで構成さ
れる入出力シミュレータを用いて、入出力命令に対する
シミュレーションを行っている。
2. Description of the Related Art In the development of a microcomputer system, hardware and software are developed in parallel after system design. In the development of such device-embedded software, there was a premise that software testing had to be performed before hardware development. Therefore, the software is tested / debugged by using a simulator that simulates the logical equivalent of an actual computer system. For example, MPU of computer and MPU simulating memory part
Testing / debugging is performed by executing computer software using a simulator. Also, M
Input / output instructions in the PU simulator (hereinafter, I / O instructions)
The simulation for was able to test by setting pseudo data, but since it takes time and effort, an input / output model that simulates the control operation of the input / output control unit,
Using an input / output monitor configured to simulate the control of the MPU and the bus line section to control the execution of the input / output model, and an input / output simulator configured to collectively manage the input / output data of each input / output model. , I / O instructions are simulated.

【0003】このような機器組込み型ソフトウェアのテ
スト/デバッグ作業を支援する従来技術として、「シミ
ュレーション方式」(特開昭62ー274436)、
「複数マイクロプロセッサシステムシミュレーション方
式」(特願平1ー288889)がある。
As a conventional technique for supporting the testing / debugging work of such device-embedded software, there is a "simulation system" (Japanese Patent Laid-Open No. 62-274436),
There is a "multiple microprocessor system simulation method" (Japanese Patent Application No. 1-288889).

【0004】[0004]

【発明が解決しようとする課題】上記従来技術は、独立
に動作可能であるが、I/Oシミュレータ(I/Oモニ
タ、I/Oモデル)はMPUシミュレータに付属し、M
PUシミュレータと一体となって動作していた。このた
め、複数のMPUと複数の入出力装置のあるシステムの
動作を模擬するためには、MPUシミュレータを複数動
作させ、複数の入出力装置の同期機能を個々のMPUシ
ミュレータに付属するI/Oシミュレータ(I/Oモニ
タ、I/Oモデル)各々に分散して設ける必要があっ
た。即ち、I/Oシミュレータ(I/Oモニタ、I/O
モデル)作成者は、複数の入出力装置の同期機能を個々
のMPUシミュレータに付属するI/Oモデルの数だけ
作成する必要があり、シミュレータの数が増大するほ
ど、作成作業も複雑化し、困難になる問題があった。
Although the above-mentioned conventional technique can operate independently, the I / O simulator (I / O monitor, I / O model) is attached to the MPU simulator, and M
It was working together with the PU simulator. Therefore, in order to simulate the operation of a system having a plurality of MPUs and a plurality of I / O devices, a plurality of MPU simulators are operated and the synchronization function of the plurality of I / O devices is attached to each I / O simulator. It was necessary to provide the simulators (I / O monitor, I / O model) separately. That is, I / O simulator (I / O monitor, I / O
It is necessary for the modeler to create the synchronization function of a plurality of input / output devices by the number of I / O models attached to each MPU simulator. As the number of simulators increases, the creation work becomes more complicated and difficult. There was a problem.

【0005】又、上記従来技術は、シミュレータの実行
動作も複雑化し、効率が悪くなるという問題があった。
又、上記従来技術は、MPUシミュレータ、I/Oモニ
タ、I/Oモデル各々の間で関数呼出しを行うことによ
り、シーケンシャルなシミュレーションを実現している
が、模擬対象マイコンシステムの装置構成に変更が起き
る度に、各々の関数の呼び出し先、そして呼び出し元の
モジュールを修正しなければいけないという問題があっ
た。
Further, the above-mentioned conventional technique has a problem that the operation of the simulator is complicated and the efficiency is deteriorated.
Further, although the above-mentioned conventional technique realizes a sequential simulation by calling a function between each of the MPU simulator, the I / O monitor, and the I / O model, the device configuration of the simulation target microcomputer system is changed. There was a problem that the call destination of each function and the calling module had to be modified each time it happened.

【0006】本発明の目的は、従来の方式における上述
の問題を解消するシミュレーション方式を提供すること
にある。
An object of the present invention is to provide a simulation method that solves the above problems in the conventional method.

【0007】[0007]

【課題を解決するための手段】本発明の目的を達成する
ため、本発明のシミュレーション方式は、マイクロプロ
セッサユニット(以下、MPU)、及びメモリを模擬す
るMPUシミュレータと、入出力装置を模擬する入出力
装置模擬部(以下、I/Oモデル)、及びMPUと1つ
以上の入出力装置を接続する信号線群を模擬する入出力
装置模擬部実行制御機構(以下、I/Oモニタ)とで構
成される入出力シミュレータ(以下、I/Oシミュレー
タ)であり、上記MPUシミュレータ、I/Oモデル、
I/Oモニタを別計算機において動作させ、それらの計
算機をネットワークで接続しデータを授受することによ
りシミュレーションを行うことを手段とする。
In order to achieve the object of the present invention, the simulation method of the present invention is such that a microprocessor unit (hereinafter referred to as MPU) and an MPU simulator for simulating a memory and an input / output device for simulating an input / output device. With an output device simulation unit (hereinafter, I / O model) and an input / output device simulation unit execution control mechanism (hereinafter, I / O monitor) that simulates a signal line group connecting the MPU and one or more input / output devices. It is an input / output simulator (hereinafter, I / O simulator) configured, and includes the above MPU simulator, I / O model,
The means is to perform the simulation by operating the I / O monitor in another computer, connecting these computers through a network, and exchanging data.

【0008】又、前記の方法において、MPUシミュレ
ータ、I/Oモデル、I/Oモニタを別プロセスで互い
に動作させ、それらのプロセスをネットワークで接続し
データを授受することによりシミュレーションを行うこ
とを手段とする。又、前記の方法において、 MPUシ
ミュレータとI/Oモデルの間での同期管理と割込み管
理を行なう機能をI/Oモニタに持たせることを手段と
する。又、前記の方法において、数のMPUシミュレー
タ、I/Oモデル、I/Oモニタを動作させる時、これ
らの同期管理と割込み管理を行なう機能を複数の MP
U、及び入出力装置間を接続する信号線群を模擬するシ
ステムバスI/Oモニタに持たせることを手段とする。
Further, in the above method, the MPU simulator, the I / O model, and the I / O monitor are operated in different processes with each other, the processes are connected through a network, and data is transmitted and received to perform a simulation. And In the above method, the I / O monitor is provided with a function of performing synchronization management and interrupt management between the MPU simulator and the I / O model. Further, in the above method, when a plurality of MPU simulators, I / O models, and I / O monitors are operated, a function for performing synchronization management and interrupt management for these is provided for a plurality of MPs.
A means is to have a system bus I / O monitor that simulates a signal line group that connects U and input / output devices.

【0009】[0009]

【作用】本発明の目的を達成するため、本発明は、MP
Uシミュレータ、I/Oモデル、I/Oモニタを別計算
機上で動作させることにより、計算機の負荷を減少可能
にし、かつ複数のマイクロプロセッサを搭載した複雑な
コンピュータシステムでも実際のコンピュータシステム
と同等の動作をシミュレート可能にし、ひいては、テス
ト/デバッグ作業を効率化することにある。
In order to achieve the object of the present invention, the present invention provides MP
By operating the U simulator, I / O model, and I / O monitor on another computer, the load on the computer can be reduced, and even a complex computer system equipped with multiple microprocessors is equivalent to the actual computer system. The goal is to be able to simulate behavior and thus streamline testing / debugging work.

【0010】又、前記の方法において、MPUシミュレ
ータ、I/Oモデル、I/Oモニタを別プロセス上で動
作させることにより、複数のマイクロプロセッサを搭載
した複雑なコンピュータシステムでも実際のコンピュー
タシステムと同等の動作をシミュレート可能に、かつ従
来では複数の入出力装置の同期機能をI/Oモデルの数
だけ作成したが、それを一つに統一できることができ、
ひいては、テスト/デバッグ作業を効率化することにあ
る。
In the above method, the MPU simulator, the I / O model, and the I / O monitor are operated in different processes, so that even a complicated computer system equipped with a plurality of microprocessors is equivalent to an actual computer system. Can be simulated, and in the past, the synchronization function of multiple I / O devices was created by the number of I / O models, but it can be unified into one.
As a result, it is to streamline the test / debug work.

【0011】又、前記の方法において、MPUシミュレ
ータとI/Oモデルの間での同期管理と割込み管理を行
なう機能をI/Oモニタに持たせることにより、複数の
マイクロプロセッサを搭載した複雑なコンピュータシス
テムでも実際のコンピュータシステムと同等の動作をシ
ミュレート可能に、かつ従来では複数の入出力装置の同
期機能をI/Oモデルの数だけ作成したが、それを一つ
に統一できることができ、ひいては、テスト/デバッグ
作業を効率化することにある。
In the above method, the I / O monitor is provided with a function of performing synchronization management and interrupt management between the MPU simulator and the I / O model, so that a complicated computer equipped with a plurality of microprocessors is provided. In the system, it is possible to simulate the same operation as an actual computer system, and in the past, the synchronization function of multiple I / O devices was created by the number of I / O models, but it can be unified into one, and eventually , To improve the efficiency of testing / debugging work.

【0012】又、前記の方法において、複数のMPUシ
ミュレータ、I/Oモデル、I/Oモニタを動作させる
時、これらの同期管理と割込み管理を行なう機能を複数
のMPU、及び入出力装置間を接続する信号線群を模擬
するシステムバスI/Oモニタに持たせることにより、
複数のマイクロプロセッサを搭載した複雑なコンピュー
タシステムでも実際のコンピュータシステムと同等の動
作をシミュレート可能に、かつ従来では複数の入出力装
置の同期機能をI/Oモデルの数だけ作成したが、それ
を一つに統一できることができ、ひいては、テスト/デ
バッグ作業を効率化することにある。
Further, in the above method, when a plurality of MPU simulators, I / O models, and I / O monitors are operated, a function of performing synchronization management and interrupt management between them is provided between a plurality of MPUs and input / output devices. By providing the system bus I / O monitor that simulates the connected signal line group,
A complex computer system equipped with multiple microprocessors can simulate the same behavior as an actual computer system, and in the past, multiple I / O device synchronization functions were created for each I / O model. Can be unified into one, which in turn makes the testing / debugging work more efficient.

【0013】又、前記の方法において、プロセス間通
信、計算機間通信はソケット通信を用いて行なうことに
より、計算機の機種を問わないオープン化システムを実
現することができ、かつ模擬対象マイコンシステムの装
置構成に変更が起きても、通信で送る相手先のデータを
変更するだけでシミュレーションの呼び出し先を動的に
変更でき、かつモジュールの修正作業を不要にし、ひい
ては、テスト/デバッグ作業を効率化することにある。
Further, in the above method, the inter-process communication and the inter-computer communication are performed by using socket communication, so that an open system can be realized regardless of the model of the computer, and the device of the simulation target microcomputer system can be realized. Even if the configuration changes, you can dynamically change the simulation call destination simply by changing the data of the other party sent by communication, and you do not need to modify the module, which in turn improves the efficiency of test / debug work. Especially.

【0014】[0014]

【実施例】以下、本発明の実施例を図面に基づいて詳細
に説明する。図1は本発明の対象であるシミュレータの
構成を示す図である。図2は本発明を適用したシミュレ
ータを動作させるハードウェア環境を示す図である。例
えば、図1について、101はMPUシミュレータであ
り、汎用計算機内のメモリ104に読み込んだ被テスト
プログラム103を実行するMPU(Micro Processer
Unit)の動作をシミュレーションするものである。10
2は入出力シミュレータであり、上記MPUシミュレー
タにおいて被テストプログラム103を実行シミュレー
ションした結果、MPUシミュレータが模擬する対象外
の周辺機器への入出力信号がある場合、その入出力信号
に対する周辺機器の動作をシミュレートするものであ
る。入出力シミュレータ102は、入出力装置自体の動
作を模擬するI/Oモデル106と、MPUシミュレー
タからの入出力信号に対するバスの動作をシミュレーシ
ョンすると共にI/Oモデルの実行を制御するI/Oモ
ニタ105とから構成されている。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 1 is a diagram showing a configuration of a simulator which is a target of the present invention. FIG. 2 is a diagram showing a hardware environment for operating a simulator to which the present invention is applied. For example, referring to FIG. 1, 101 is an MPU simulator, which is an MPU (Micro Processer) for executing the program under test 103 read in the memory 104 in the general-purpose computer.
Unit) to simulate the operation. 10
Reference numeral 2 denotes an input / output simulator. As a result of executing and simulating the program under test 103 in the MPU simulator, if there is an input / output signal to a peripheral device that is not targeted by the MPU simulator, the operation of the peripheral device with respect to the input / output signal. To simulate. The input / output simulator 102 simulates the operation of the input / output device itself and an I / O monitor that simulates the operation of the bus with respect to the input / output signals from the MPU simulator and controls the execution of the I / O model. And 105.

【0015】図2について、206は開発拠点内で複数
の計算機を接続する通信路を、208、209、210
はシミュレータを動作させる汎用計算機を、207は計
算機に接続された記憶装置をそれぞれ示している。ここ
で記憶装置207はソフトウェア開発で作成されるテス
トデータ、仕様書、プログラム等の全ての情報を一元管
理する。またネットワークで接続された汎用計算機の内
部構成で、外部記憶装置205は、本発明のシミュレー
ション方式の被テストプログラムを格納する。メモリ2
01は、システムを実行する場合に外部記憶装置205
より、シミュレーション方式の被テストプログラムを読
み込むといった一時的にデータやプログラム等を記憶す
る内部記憶装置を示す。MPU203は、メモリ201
に読み込んだシミュレーション方式のプログラムを実行
する演算装置や制御装置を、入力装置204は、利用者
が実行する指示を入力するキーボード、マウス等の装置
を、表示装置202は、利用者への確認事項などを表示
する装置をそれぞれ示す。
In FIG. 2, reference numeral 206 designates communication paths for connecting a plurality of computers in the development bases, 208, 209 and 210.
Is a general-purpose computer for operating the simulator, and 207 is a storage device connected to the computer. Here, the storage device 207 centrally manages all information such as test data, specifications, programs, etc. created by software development. Further, in the internal configuration of a general-purpose computer connected via a network, the external storage device 205 stores the program under test of the simulation method of the present invention. Memory 2
01 is the external storage device 205 when the system is executed.
An internal storage device for temporarily storing data, programs, etc., such as reading a program under test of a simulation method will be shown. The MPU 203 has a memory 201.
The arithmetic device and the control device for executing the simulation method program read in, the input device 204 is a device such as a keyboard and a mouse for inputting an instruction to be executed by the user, and the display device 202 is a confirmation item for the user. The devices for displaying, etc. are respectively shown.

【0016】図3、図4、図5は本発明の実施例におけ
るMPUシミュレータで入出力命令が起きた時のそれぞ
れの制御フローを示す図であり、図3はMPUの制御フ
ローを、図4はI/Oモニタの制御フローを、図5はI
/Oモデルの制御フローをそれぞれ示す。図6、図7は
MPUシミュレータとI/Oモニタ間、I/Oモニタと
I/Oモデル間をやりとりするメッセージの内容をそれ
ぞれ示す図である。
FIGS. 3, 4 and 5 are diagrams showing respective control flows when an I / O instruction occurs in the MPU simulator according to the embodiment of the present invention. FIG. 3 shows the control flow of the MPU. Shows the control flow of the I / O monitor, and FIG.
The control flow of the / O model is shown respectively. 6 and 7 are views showing the contents of messages exchanged between the MPU simulator and the I / O monitor, and between the I / O monitor and the I / O model.

【0017】本実施例ではI/Oモデル「モデル1」に
I/O命令としてアドレス値「656」、レジスタ値
「28」を設定したら、どのようなハードウェア動作を
行うか、という例を用いて、図3、図4、図5を基に本
実施例を説明する。但し、図2で示す計算機208には
MPUシミュレータが、計算機209にはI/Oモニタ
が、計算機210にはI/Oモデルがそれぞれ動作して
いるものとする。
In this embodiment, an example of what kind of hardware operation is performed when the address value "656" and the register value "28" are set as the I / O instruction in the I / O model "model 1" is used. The present embodiment will be described with reference to FIGS. 3, 4 and 5. However, it is assumed that the computer 208 shown in FIG. 2 is operating an MPU simulator, the computer 209 is operating an I / O monitor, and the computer 210 is operating an I / O model.

【0018】MPUシミュレータにコマンド入力が起き
た時、入力されたコマンドから、命令とクロックサイク
ル数の値が幾つになったら、周期メッセージをI/Oモ
ニタに送信するかを表す基準値を抽出する(ステップ3
01、ステップ302)。次に抽出した命令がI/O命
令かを検索する(ステップ303、ステップ304)。
When a command is input to the MPU simulator, a reference value is extracted from the input command to indicate how many values of the instruction and the number of clock cycles should be transmitted to the I / O monitor. (Step 3
01, step 302). Next, it is searched whether the extracted instruction is an I / O instruction (steps 303 and 304).

【0019】入力された命令がI/O命令でない場合は
ステップ302の処理を行なう。I/O命令の場合、M
PUシミュレータはI/O命令に対応したバス情報をP
IOメッセージとして、I/Oモニタに送信する(ステ
ップ305)。この時に、MPUシミュレータは送信先
がわからない、つまりどのI/Oモデルに対してのI/
O命令かは判断できない状態なので、PIOメッセージ
内の送信先には何も設定せず、I/Oモニタに送信す
る。図6で示す601がMPUシミュレータからI/O
モニタに送信されたPIOメッセージの内容である。例
えば、602はメッセージの種別を表し、ここではメッ
セージ601はI/O命令についてのメッセージである
ことを表す。「送信」603は信号を外部の伝送路に送
り出すという意味を表し、「MPU」604は送信元を
表す。605は送信先を表すが、どのI/Oモデルに対
してのI/O命令かわからないので、ここでは空白であ
る。「IO WR」606は実際の装置上での信号線の
名称を表し、信号線はレジスタライトを行う時に使用す
るバスの名称である。「656」607はI/O命令を
実行させるI/Oモデルのアドレス値を表し、「28」
608はアドレスのレジスタ値をそれぞれ示す。
If the input instruction is not an I / O instruction, step 302 is executed. M for I / O command
The PU simulator outputs the bus information corresponding to the I / O instruction to P
It is sent to the I / O monitor as an IO message (step 305). At this time, the MPU simulator does not know the destination, that is, the I / O model for which I / O
Since it is not possible to determine whether it is an O command, nothing is set in the destination in the PIO message and it is transmitted to the I / O monitor. Reference numeral 601 shown in FIG. 6 indicates I / O from the MPU simulator.
It is the content of the PIO message sent to the monitor. For example, 602 indicates the type of message, and here, the message 601 indicates that it is a message regarding an I / O command. “Send” 603 means to send a signal to an external transmission path, and “MPU” 604 means a transmission source. Reference numeral 605 represents a transmission destination, but it is blank here because it is unknown to which I / O model the I / O command is directed. “IO WR” 606 represents the name of the signal line on the actual device, and the signal line is the name of the bus used when register write is performed. “656” 607 represents the address value of the I / O model that executes the I / O instruction, and “28”
Reference numerals 608 respectively indicate address register values.

【0020】次に、PIOメッセージを受信したI/O
モニタは、PIOメッセージが送信か、または返信かを
メッセージ内から判別する(ステップ401)。送信で
あれば次に、アドレスバスの内容を管理しているI/O
マップと照合し(ステップ402)、合致するアドレス
のI/Oモデル名を該PIOメッセージ内の送信先に設
定(ステップ403)、そしてPIOメッセージをI/
Oモデルに送信する(ステップ404)。図8は、アド
レスバスの内容を管理しているI/Oマップの内容を示
す図である。例えば、図6で示す609がI/Oモニタ
からI/Oモデルに送信されたPIOメッセージの内容
である。ここで、入力命令の対象となるI/Oモデル
は、図8で示す801の内容から、該当するI/Oモデ
ルは「モデル1」610であることがわかる。
Next, the I / O which received the PIO message
The monitor determines from within the message whether the PIO message is a transmission or a reply (step 401). If it is transmission, next I / O that manages the contents of the address bus
The map is checked (step 402), the I / O model name of the matching address is set as the destination in the PIO message (step 403), and the PIO message is set to I / O.
It is transmitted to the O model (step 404). FIG. 8 is a diagram showing the contents of the I / O map that manages the contents of the address bus. For example, 609 shown in FIG. 6 is the content of the PIO message transmitted from the I / O monitor to the I / O model. Here, it can be seen from the contents of 801 shown in FIG. 8 that the I / O model that is the target of the input instruction is the corresponding I / O model “model 1” 610.

【0021】次に、PIOメッセージの送信先に合致す
るI/OモデルがPIOメッセージを受信すると、I/
OモデルはPIOメッセージ内の制御線に対応したレジ
スタリード/レジスタライトの処理を行う。レジスタリ
ードの場合は、PIOメッセージ内のデータバスに、リ
ードした結果を設定して、ステップ502の処理を行う
(ステップ513)。レジスタライトの場合、I/Oモ
デルはMPUの入出力命令に対応したハードウェア動作
を行う(ステップ512)。ここでハードウェアが動作
している状態でイベントが発生した場合(ステップ50
3)、以下の処理を行う。発生したイベントに必要な時
間を生成、そして生成した時間とI/Oモデル名をイベ
ント登録メッセージに設定してI/Oモニタに送信する
(ステップ504)。ここでの生成する時間は、I/O
モデルがI/Oモニタから送信されたPIOメッセージ
を受信してからI/Oモニタにイベント登録メッセージ
を送信するまでの時間を表す。イベント登録メッセージ
を受信したI/Oモニタは、イベント登録メッセージに
設定されているイベントに必要な時間とI/Oモデル名
をI/Oモニタで管理しているイベント登録テーブルに
登録する(ステップ406)。イベント登録テーブルに
登録し終えたら、イベント登録メッセージをI/Oモデ
ルに返信する(ステップ406)。
Next, when the I / O model matching the destination of the PIO message receives the PIO message, I / O model
The O model performs register read / register write processing corresponding to the control line in the PIO message. In the case of register read, the read result is set in the data bus in the PIO message, and the process of step 502 is performed (step 513). In the case of register write, the I / O model performs a hardware operation corresponding to the input / output instruction of the MPU (step 512). If an event occurs while the hardware is operating (step 50)
3), the following processing is performed. The time required for the generated event is generated, and the generated time and the I / O model name are set in the event registration message and transmitted to the I / O monitor (step 504). The time generated here is I / O
It represents the time from when the model receives the PIO message sent from the I / O monitor to when it sends the event registration message to the I / O monitor. Upon receiving the event registration message, the I / O monitor registers the time and I / O model name required for the event set in the event registration message in the event registration table managed by the I / O monitor (step 406). ). When the registration in the event registration table is completed, the event registration message is returned to the I / O model (step 406).

【0022】返信されてきたイベント登録メッセージを
受信したI/Oモデルは、現在動作しているハードウェ
アの処理を一旦放棄し、PIOメッセージをI/Oモニ
タに返信する(ステップ502)。本実施例では、ハー
ドウェア動作を行なっている最中にI/Oモデル「モデ
ル1」内にイベントが発生したものとして以下を説明す
る。図6で示す611がI/Oモデル「モデル1」から
I/Oモニタに送信されたイベント登録メッセージの内
容を、そして613がI/OモニタからI/Oモデル
「モデル1」に返信されたイベント登録メッセージの内
容である。ここで611内の「1」612は、I/Oモ
デル「モデル1」内で生成した時間を示す。
The I / O model that has received the returned event registration message once abandons the processing of the hardware currently operating and returns a PIO message to the I / O monitor (step 502). In the present embodiment, the following will be described on the assumption that an event has occurred in the I / O model "model 1" during the hardware operation. Reference numeral 611 shown in FIG. 6 indicates the content of the event registration message transmitted from the I / O model "model 1" to the I / O monitor, and reference numeral 613 indicates the reply from the I / O monitor to the I / O model "model 1". This is the content of the event registration message. Here, “1” 612 in 611 indicates the time generated in the I / O model “model 1”.

【0023】次に、返信されてきたPIOメッセージを
受信したI/Oモニタは、受信したPIOメッセージが
送信か、または返信かをPIOメッセージ内から判別し
(ステップ401)、返信であればPIOメッセージ内
の送信元、つまりMPUシミュレータに返信する(ステ
ップ405)。図6で示す614が、I/Oモデル「モ
デル1」からI/Oモニタ返信されてきたPIOメッセ
ージの内容を示す。I/OモニタからMPUシミュレー
タに返信したPIOメッセージの内容も614と同じで
ある。
Next, the I / O monitor that has received the returned PIO message determines from the PIO message whether the received PIO message is a transmission or a reply (step 401). If it is a reply, the PIO message is sent. It is returned to the transmission source in the above, that is, the MPU simulator (step 405). Reference numeral 614 shown in FIG. 6 shows the content of the PIO message returned from the I / O monitor “model 1” as an I / O monitor. The content of the PIO message returned from the I / O monitor to the MPU simulator is also the same as 614.

【0024】返信されてきたPIOメッセージを受信し
たMPUシミュレータは、次に1命令を処理する毎にク
ロックサイクル数をカウント(ステップ306)、そし
てステップ301で抽出したクロックサイクル数の基準
値と比較する(ステップ307)。比較した結果、等し
くない場合は、ステップ302の処理を行なう。等しい
場合はI/Oモニタに周期メッセージを送信する(ステ
ップ308)。図6で示す615がMPUシミュレータ
からI/Oモニタに送信した周期メッセージの内容であ
る。
The MPU simulator receiving the returned PIO message counts the number of clock cycles each time one instruction is processed next (step 306) and compares it with the reference value of the number of clock cycles extracted in step 301. (Step 307). If they are not equal as a result of the comparison, the process of step 302 is performed. If they are equal, the periodic message is transmitted to the I / O monitor (step 308). Reference numeral 615 shown in FIG. 6 is the content of the periodic message transmitted from the MPU simulator to the I / O monitor.

【0025】I/Oモニタは受信した周期メッセージか
ら、現在I/Oモニタにイベントが発生しているI/O
モデルが存在するか、同じI/Oモニタで管理している
イベント登録テーブルを検索する(ステップ408)。
検索した結果、現在I/Oモニタにイベントが発生して
いるI/Oモデルが存在しない場合は、ステップ412
の処理を行う。存在する場合、イベント登録テーブルに
設定されている情報全てのイベント発生周期数をー1す
る(ステップ409)。
The I / O monitor receives the periodic message from the I / O monitor at which an event is currently occurring.
A model exists or an event registration table managed by the same I / O monitor is searched (step 408).
As a result of the search, if there is no I / O model in which an event is currently occurring in the I / O monitor, step 412
Process. If it exists, the number of event occurrence cycles of all the information set in the event registration table is decremented by 1 (step 409).

【0026】イベント発生周期数を減算した際、イベン
ト登録テーブル内のイベント発生周期数が0になったI
/Oモデルが存在するか、再びイベント登録テーブルを
検索する(ステップ410)。イベント発生周期数が0
になったI/Oモデルが存在しない場合は、ステップ4
12の処理を行う。イベント発生周期数が0になったI
/Oモデルが存在する場合は、I/Oモデル名をイベン
ト実行メッセージの送信先に設定して、イベント実行メ
ッセージをI/Oモデルに送信する(ステップ41
1)。この時、イベント登録テーブル内のI/Oモデル
の情報は削除する。図6で示す616がI/Oモニタか
らI/Oモデル「モデル1」に送信したイベント実行メ
ッセージの内容である。図11はイベント発生周期数を
1減算した後のイベント登録テーブルの内容を示す図で
ある。例えば、図11で示す1101の内容から、I/
Oモニタは図6で示す616内の送信先として「モデル
1」618を設定し、I/Oモデル「モデル1」にイベ
ント実行メッセージを送信していることを示す。
When the number of event occurrence cycles is subtracted, the number of event occurrence cycles in the event registration table becomes 0 I
The event registration table is searched again for the existence of the / O model (step 410). Number of event occurrence cycles is 0
If there is no I / O model that became
12 processing is performed. The number of event occurrence cycles is 0
If the / O model exists, the I / O model name is set as the destination of the event execution message, and the event execution message is sent to the I / O model (step 41).
1). At this time, the information on the I / O model in the event registration table is deleted. Reference numeral 616 shown in FIG. 6 is the content of the event execution message transmitted from the I / O monitor to the I / O model “model 1”. FIG. 11 is a diagram showing the contents of the event registration table after subtracting 1 from the number of event occurrence cycles. For example, from the contents of 1101 shown in FIG.
The O monitor sets "model 1" 618 as a transmission destination in 616 shown in FIG. 6 and indicates that the event execution message is transmitted to the I / O model "model 1".

【0027】イベント実行メッセージを受信したI/O
モデルは、前回のイベント登録で一旦処理を放棄したハ
ードウェア動作を再開する(ステップ506)。I/O
モデルのハードウェア動作が終了したら、I/Oモニタ
にイベント実行メッセージを返信するが、ここで、ハー
ドウェア動作を行なっている最中に再びI/Oモデル内
にイベントが発生した場合(ステップ507)は、同様
にイベント登録メッセージをI/Oモニタに送信し、I
/Oモニタにイベントに必要な時間とI/Oモデル名を
イベント登録テーブルに登録する(ステップ508)。
またイベントが発生した時とは別に、ハードウェア動作
を行なっている最中にI/Oモデル内に割込みが発生し
た場合(ステップ509)、割込み登録メッセージをI
/Oモニタに送信し(ステップ510)、I/Oモニタ
で管理している割込み登録テーブルにモデル名を登録す
る。登録し終えたら、割込み登録メッセージをI/Oモ
デルに返信する(ステップ407)。本実施例では、ハ
ードウェア動作を行なっている最中にI/Oモデル「モ
デル1」内に割込みが発生したものとして以下を説明す
る。図10はI/Oモニタで管理している割り込み登録
テーブルの内容を示す図である。例えば、図10で示す
1001の内容から、ハードウェア動作中にI/Oモデ
ル「モデル1」で割込みが起きたことを示している。図
7で示す710がI/Oモデル「モデル1」からI/O
モニタに送信された割込み登録メッセージの内容を、そ
して711がI/OモニタからI/Oモデル「モデル
1」に返信された割り込み登録メッセージの内容をそれ
ぞれ示す。ここで割込み登録メッセージ710を受信し
たI/Oモニタは、割込み登録メッセージ710内の送
信元「モデル1」712から図10で示す「モデル1」
1002を設定していることがわかる。
I / O that received the event execution message
The model restarts the hardware operation that once abandoned the process in the previous event registration (step 506). I / O
When the hardware operation of the model is completed, an event execution message is returned to the I / O monitor. Here, if an event occurs again in the I / O model during the hardware operation (step 507). ) Similarly sends an event registration message to the I / O monitor,
The time required for the event and the I / O model name are registered in the event registration table in the / O monitor (step 508).
If an interrupt occurs in the I / O model during the hardware operation (step 509), the interrupt registration message is sent to the I
It is sent to the I / O monitor (step 510) and the model name is registered in the interrupt registration table managed by the I / O monitor. When the registration is completed, an interrupt registration message is returned to the I / O model (step 407). In the present embodiment, the following will be described on the assumption that an interrupt occurs in the I / O model "model 1" during the hardware operation. FIG. 10 is a diagram showing the contents of an interrupt registration table managed by the I / O monitor. For example, the content of 1001 shown in FIG. 10 indicates that an interrupt occurs in the I / O model “model 1” during hardware operation. Reference numeral 710 shown in FIG. 7 indicates I / O from the I / O model “model 1”.
The contents of the interrupt registration message sent to the monitor and the contents of the interrupt registration message 711 returned from the I / O monitor to the I / O model "model 1" are shown. Here, the I / O monitor that has received the interrupt registration message 710 has the transmission source “model 1” 712 in the interrupt registration message 710 to “model 1” shown in FIG.
It can be seen that 1002 is set.

【0028】I/Oモデルでのイベント発生、割込み発
生、もしくはI/Oモデルのハードウェア動作が終了し
たら、イベント実行メッセージをI/Oモニタに返信す
る(ステップ511)。図6で示す617がI/Oモデ
ル「モデル1」からI/Oモニタに返信されたイベント
実行メッセージの内容である。イベント実行メッセージ
を受信したI/Oモニタは、減算してイベント発生周期
数が0になったI/Oモデル全てについてイベント実行
メッセージの送信/返信の処理を行う。
When an event occurs in the I / O model, an interrupt occurs, or the hardware operation of the I / O model ends, an event execution message is returned to the I / O monitor (step 511). Reference numeral 617 shown in FIG. 6 is the content of the event execution message returned from the I / O model “model 1” to the I / O monitor. The I / O monitor that has received the event execution message performs transmission / return processing of the event execution message for all the I / O models whose event generation cycle number has become 0 by subtraction.

【0029】処理が終了したら、次に割込みが発生した
I/Oモデルが存在するか、同じI/Oモニタで管理し
ている割込み登録テーブルを検索する。割込みが発生し
たI/Oモデルが存在する場合のみ、周期メッセージ内
の制御線に、割込み要求が発生したI/Oモデルが存在
することを表す「REQ」を設定する(ステップ41
2)。
When the processing is completed, the next I / O model in which an interrupt has occurred is searched or the interrupt registration table managed by the same I / O monitor is searched. Only when there is an I / O model in which an interrupt has occurred, "REQ" indicating that there is an I / O model in which an interrupt request has occurred is set in the control line in the periodic message (step 41).
2).

【0030】次に、周期メッセージを送信元であるMP
Uシミュレータに返信する(ステップ418)。図7で
示す703が、I/OモニタからMPUシミュレータに
返信した周期メッセージの内容である。図10で示す1
001の内容から、I/Oモニタが周期メッセージをM
PUシミュレータに返信する前に図7で示す制御線「R
EQ」713を設定していることがわかる。
Next, the MP that is the transmission source of the periodic message
It returns to the U simulator (step 418). Reference numeral 703 shown in FIG. 7 is the content of the periodic message returned from the I / O monitor to the MPU simulator. 1 shown in FIG.
From the contents of 001, the I / O monitor sends a periodic message to M
Before returning to the PU simulator, the control line "R" shown in FIG.
It can be seen that “EQ” 713 is set.

【0031】返信されてきた周期メッセージを受信した
MPUシミュレータは、周期メッセージ内の制御線に割
込み要求が設定されているかを検索する。設定されてい
ない場合は、ステップ302の処理を行なう。割込み要
求が設定されている場合は、次に以下の処理を行なう。
The MPU simulator, which has received the returned periodic message, searches the control line in the periodic message for an interrupt request. If not set, step 302 is performed. When the interrupt request is set, the following processing is performed next.

【0032】MPUシミュレータは割込み要求を表すI
NT ACKメッセージをI/Oモニタに送信する(ス
テップ311)。この時に、MPUシミュレータは送信
先がわからない、つまりどのI/Oモデルで割り込みが
発生したかわからない状態なので、INT ACKメッ
セージ内の送信先には何も設定せず、I/Oモニタに送
信する。図7で示す704がMPUシミュレータからI
/Oモニタに送信されたINT ACKメッセージの内
容である。ここでINT ACKメッセージ内の送信先
705には何も設定されていないことがわかる。
The MPU simulator is an I which represents an interrupt request.
Send an NT ACK message to the I / O monitor (step 311). At this time, the MPU simulator does not know the destination, that is, the I / O model in which the interrupt has occurred. Therefore, nothing is set to the destination in the INT ACK message, and the I / O monitor sends it. The MPU simulator 704 shown in FIG.
The contents of the INT ACK message transmitted to the / O monitor. Here, it can be seen that nothing is set in the transmission destination 705 in the INT ACK message.

【0033】I/OモニタはINT ACKメッセージ
を受信すると、送信か返信かを判定し(ステップ41
3)、送信であればI/Oモニタで管理している割込み
登録テーブルを照合する(ステップ414)。照合した
結果、割込みが発生したI/Oモデルを送信先としてI
NT ACKメッセージ内の送信先にI/Oモデル名を
設定(ステップ415)、そしてINT ACKメッセ
ージをI/Oモデルに送信する(ステップ416)。図
7で示す706がI/OモニタからI/Oモデル「モデ
ル1」に送信されたINT ACKメッセージの内容で
ある。ここで図10で示す割込み登録テーブル内の10
01から、図7で示す706内の送信先「モデル1」7
07を設定していることがわかる。
When the I / O monitor receives the INT ACK message, it determines whether it is a transmission or a reply (step 41).
3) If it is transmission, the interrupt registration table managed by the I / O monitor is collated (step 414). As a result of collation, the I / O model in which the interrupt occurred is set as the destination
The I / O model name is set to the destination in the NT ACK message (step 415), and the INT ACK message is transmitted to the I / O model (step 416). Reference numeral 706 shown in FIG. 7 is the contents of the INT ACK message transmitted from the I / O monitor to the I / O model “model 1”. Here, 10 in the interrupt registration table shown in FIG.
01 to the destination “model 1” 7 in 706 shown in FIG.
It can be seen that 07 is set.

【0034】I/OモデルがINT ACKメッセージ
を受信すると、次にI/Oモデルで発生した割込みを取
り下げるために、I/Oモニタに対して割込み取り下げ
メッセージを送信する(ステップ505)。図7で示す
714がI/Oモデル「モデル1」からI/Oモニタに
送信した割込み取り下げメッセージの内容である割込み
取り下げメッセージを受信したI/Oモニタは、管理し
ている割込み登録テーブルの中から、割込み取り下げメ
ッセージの送信元に設定されているI/Oモデルについ
ての情報を削除し、割込み取り下げメッセージをI/O
モデルに返信する。図7で示す715がI/Oモニタか
ら該I/Oモデル「モデル1」に返信してきた割込み取
り下げメッセージの内容である。
When the I / O model receives the INT ACK message, it sends an interrupt withdraw message to the I / O monitor in order to withdraw the interrupt generated in the I / O model (step 505). The I / O monitor 714 shown in FIG. 7 receives the interrupt withdrawal message, which is the content of the interrupt withdrawal message transmitted from the I / O model “Model 1” to the I / O monitor, and manages the interrupt registration table. Delete the information about the I / O model set as the sender of the interrupt withdrawal message from the
Reply to the model. Reference numeral 715 shown in FIG. 7 is the content of the interrupt withdrawal message returned from the I / O monitor to the I / O model “model 1”.

【0035】返信されてきた割込み取り下げメッセージ
を受信したI/Oモデルはベクタ番号を抽出し、ベクタ
番号をINT ACKメッセージ内のデータバスに設定
して、INT ACKメッセージをI/Oモニタに返信
する(ステップ505)。I/OモニタはINT AC
Kメッセージの返信を受信すると、送信/返信を確認
し、返信であれば送信元であるMPUシミュレータに返
信する。図7で示す708がI/OモデルからI/Oモ
ニタに、そしてI/Oモニタから送信元であるMPUシ
ミュレータに返信したINT ACKメッセージの内容
である。例えば、708内の716から、I/Oモデル
「モデル1」はベクタ番号として「8」を抽出し、IN
T ACKメッセージに設定していることがわかる。
The I / O model receiving the returned interrupt withdrawal message extracts the vector number, sets the vector number in the data bus in the INT ACK message, and returns the INT ACK message to the I / O monitor. (Step 505). I / O monitor is INT AC
When the reply of the K message is received, the transmission / reply is confirmed, and if it is a reply, it is returned to the MPU simulator which is the transmission source. Reference numeral 708 shown in FIG. 7 is the content of the INT ACK message returned from the I / O model to the I / O monitor and from the I / O monitor to the MPU simulator that is the transmission source. For example, from 716 in 708, the I / O model “model 1” extracts “8” as the vector number and
It can be seen that the TACK message is set.

【0036】返信されてきたINT ACKメッセージ
を受信したMPUシミュレータは、次にINT ACK
メッセージ内のデータバスに設定されているベクタ番号
に対応する割込み処理ルーチンを起動する(ステップ3
12)。割込み処理ルーチンが終了した後、ステップ3
02の処理を行う。
The MPU simulator which has received the returned INT ACK message
The interrupt processing routine corresponding to the vector number set in the data bus in the message is started (step 3
12). After the interrupt processing routine ends, step 3
02 processing is performed.

【0037】以上の述べたように、実際のシステムにお
いては、MPU、I/Oデバイスそれぞれ並列に動作し
ており、システムクロック等により同期を採っている
が、シミュレータでクロックを模擬すれば実際のシステ
ムと同様に動作するが、周期が細かすぎてオーバヘッド
となる。本実施例では、MPUシミュレータが要求をだ
したら、要求の返信が返ってくるまで他の要求は実行で
きないようにすることにより、被テストプログラム実行
系とI/Oモデルをシーケンシャルに動作させ、交互に
同期時刻まで動作させることにより同期を採る。
As described above, in the actual system, the MPU and the I / O device are operating in parallel and are synchronized with each other by the system clock or the like. It works just like the system, but with too fine a period, it adds overhead. In the present embodiment, when the MPU simulator issues a request, other programs cannot be executed until a reply to the request is returned, so that the program under test execution system and the I / O model are operated sequentially and alternately. Synchronize by operating up to the synchronization time.

【0038】このように、内部的な論理状態の遷移を正
確に模擬し、入出力動作を時間に置き換えることによっ
て、割込み制御、バスライン制御等のコンピュータの制
御動作を実環境と等価に実現することができる。
As described above, by accurately simulating the transition of the internal logic state and replacing the input / output operation with time, the control operation of the computer such as the interrupt control and the bus line control is realized equivalent to the actual environment. be able to.

【0039】[0039]

【発明の効果】本発明は、以上に説明した処理手順を有
するので、以下に記載するような効果を奏する。MPU
シミュレータ、I/Oモデル、I/Oモニタを別計算機
上で動作させることにより、計算機の負荷を減少可能に
し、かつ複数のマイクロプロセッサを搭載した複雑なコ
ンピュータシステムでも実際のコンピュータシステムと
同等の動作をシミュレート可能にし、ひいては、テスト
/デバッグ作業を効率化することができる。
Since the present invention has the processing procedure described above, it has the following effects. MPU
By operating the simulator, I / O model, and I / O monitor on another computer, the load on the computer can be reduced, and even a complex computer system equipped with multiple microprocessors can operate in the same way as an actual computer system. Can be simulated and thus the test / debug work can be streamlined.

【0040】又、前記の方法において、MPUシミュレ
ータ、I/Oモデル、I/Oモニタを別プロセス上で動
作させることにより、複数のマイクロプロセッサを搭載
した複雑なコンピュータシステムでも実際のコンピュー
タシステムと同等の動作をシミュレート可能に、かつ従
来では複数の入出力装置の同期機能をI/Oモデルの数
だけ作成したが、それを一つに統一できることができ、
ひいては、テスト/デバッグ作業を効率化することがで
きる。
In the above method, the MPU simulator, the I / O model, and the I / O monitor are operated in different processes, so that even a complicated computer system equipped with a plurality of microprocessors is equivalent to an actual computer system. Can be simulated, and in the past, the synchronization function of multiple I / O devices was created by the number of I / O models, but it can be unified into one.
As a result, the test / debug work can be made efficient.

【0041】又、前記の方法において、MPUシミュレ
ータとI/Oモデルの間での同期管理と割込み管理を行
なう機能をI/Oモニタに持たせることにより、複数の
マイクロプロセッサを搭載した複雑なコンピュータシス
テムでも実際のコンピュータシステムと同等の動作をシ
ミュレート可能に、かつ従来では複数の入出力装置の同
期機能をI/Oモデルの数だけ作成したが、それを一つ
に統一できることができ、ひいては、テスト/デバッグ
作業を効率化することができる。
Further, in the above method, the I / O monitor is provided with a function of performing synchronization management and interrupt management between the MPU simulator and the I / O model, so that a complicated computer equipped with a plurality of microprocessors is provided. In the system, it is possible to simulate the same operation as an actual computer system, and in the past, the synchronization function of multiple I / O devices was created by the number of I / O models, but it can be unified into one, and eventually , It is possible to streamline the test / debug work.

【0042】又、前記の方法において、複数のMPUシ
ミュレータ、I/Oモデル、I/Oモニタを動作させる
時、これらの同期管理と割込み管理を行なう機能を複数
のMPU、及び入出力装置間を接続する信号線群を模擬
するシステムバスI/Oモニタに持たせることにより、
複数のマイクロプロセッサを搭載した複雑なコンピュー
タシステムでも実際のコンピュータシステムと同等の動
作をシミュレート可能に、かつ従来では複数の入出力装
置の同期機能をI/Oモデルの数だけ作成したが、それ
を一つに統一できることができ、ひいては、テスト/デ
バッグ作業を効率化することができる。
Further, in the above method, when a plurality of MPU simulators, I / O models, and I / O monitors are operated, the function of performing synchronization management and interrupt management between them is provided between the plurality of MPUs and input / output devices. By providing the system bus I / O monitor that simulates the connected signal line group,
A complex computer system equipped with multiple microprocessors can simulate the same behavior as an actual computer system, and in the past, multiple I / O device synchronization functions were created for each I / O model. Can be unified into one, which in turn makes the test / debugging work more efficient.

【0043】又、前記の方法において、プロセス間通
信、計算機間通信はソケット通信を用いて行なうことに
より、計算機の機種を問わないオープン化システムを実
現することができ、かつ模擬対象マイコンシステムの装
置構成に変更が起きても、通信で送る相手先のデータを
変更するだけでシミュレーションの呼び出し先を動的に
変更でき、かつモジュールの修正作業を不要にし、ひい
ては、テスト/デバッグ作業を効率化することができ
る。
Further, in the above method, the inter-process communication and the inter-computer communication are carried out by using the socket communication, so that an open system can be realized regardless of the model of the computer, and the device of the simulation target microcomputer system can be realized. Even if the configuration changes, you can dynamically change the simulation call destination simply by changing the data of the other party sent by communication, and you do not need to modify the module, which in turn improves the efficiency of test / debug work. be able to.

【0044】以上を纒めれば、本発明により、テスト/
デバッグ作業を効率化することができ、開発期間の短縮
を図ることができるので、組込み型マイコン用ソフトウ
ェアの生産性を上げることが出来る。
From the above, according to the present invention, a test /
Since the debugging work can be made efficient and the development period can be shortened, the productivity of the embedded microcomputer software can be improved.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明を適用するシミュレータの構成を示す図
である。
FIG. 1 is a diagram showing a configuration of a simulator to which the present invention is applied.

【図2】本発明を動作させる汎用計算機の構成を示す図
である。
FIG. 2 is a diagram showing a configuration of a general-purpose computer that operates the present invention.

【図3】MPUシミュレータの制御フローを示す図であ
る。
FIG. 3 is a diagram showing a control flow of an MPU simulator.

【図4】I/Oモニタの制御フローを示す図である。FIG. 4 is a diagram showing a control flow of an I / O monitor.

【図5】I/Oモデルの制御フローを示す図である。FIG. 5 is a diagram showing a control flow of an I / O model.

【図6】MPUシミュレータ、I/Oモニタ、I/Oモ
デルの間で送信/返信するメッセージのフォーマットを
示す図である。
FIG. 6 is a diagram showing a format of a message sent / replied between an MPU simulator, an I / O monitor, and an I / O model.

【図7】MPUシミュレータ、I/Oモニタ、I/Oモ
デルの間で送信/返信するメッセージのフォーマットを
示す図である。
FIG. 7 is a diagram showing a format of a message sent / replied between the MPU simulator, the I / O monitor, and the I / O model.

【図8】I/Oマップの内容を示す図である。FIG. 8 is a diagram showing the contents of an I / O map.

【図9】イベント登録テーブルの内容を示す図である。FIG. 9 is a diagram showing the contents of an event registration table.

【図10】割込み登録テーブルの内容を示す図である。FIG. 10 is a diagram showing the contents of an interrupt registration table.

【図11】イベント登録テーブルの内容を示す図であ
る。
FIG. 11 is a diagram showing the contents of an event registration table.

【符号の説明】[Explanation of symbols]

101;MPUシミュレータ、102;入出力シミュレ
ータ、103;被テストプログラム、104;メモリ、
105;I/Oモニタ、106;I/Oモデル、20
1;メモリ、202;表示装置、203;CPU、20
4;入力装置、205;外部記憶装置、301;コマン
ド入力待ち、302;命令フェッチ、303;命令解
析、305;I/O命令シミュレーション、306;ク
ロックサイクル数カウント、308;周期発生、30
9;クロックサイクル数リセット、311;割込み受付
処理、312;割込みベクタ番号、402;I/Oマッ
プと照合、404;送信フォーマット転送、405;返
信フォーマット転送、406;イベント登録、407;
割込み登録、411;イベント発生モデルの実行、41
2;割込み登録取得、414;割込み登録テーブルと照
合、416;送信フォーマット転送、417;返信フォ
ーマット転送、418;返信フォーマット転送、50
2;返信フォーマット転送、504;イベント発生時間
登録、505;割込み取り下げ、506;イベント実行
ハードウェア動作実行、508;イベント発生時間登
録、510;割込み要求、511;返信フォーマット転
送、512;レジスタライト処理、513;レジスタリ
ード処理、602;PIO、603;送信、604;M
PU、606;IO WR。
101; MPU simulator, 102; Input / output simulator, 103; Program under test, 104; Memory,
105; I / O monitor, 106; I / O model, 20
1; memory, 202; display device, 203; CPU, 20
4; input device, 205; external storage device, 301; command input wait, 302; instruction fetch, 303; instruction analysis, 305; I / O instruction simulation, 306; clock cycle number count, 308, cycle generation, 30
9: clock cycle number reset, 311; interrupt acceptance processing, 312: interrupt vector number, 402; collation with I / O map, 404; transmission format transfer, 405; reply format transfer, 406; event registration, 407;
Interrupt registration, 411; Execution of event generation model, 41
2; Interrupt registration acquisition, 414; Collation with interrupt registration table, 416; Transmission format transfer, 417; Reply format transfer, 418; Reply format transfer, 50
2; reply format transfer, 504; event occurrence time registration, 505; interrupt withdrawal, 506; event execution hardware operation execution, 508; event occurrence time registration, 510; interrupt request, 511; reply format transfer, 512; register write processing 513; register read processing, 602; PIO, 603; transmission, 604; M
PU, 606; IO WR.

フロントページの続き (72)発明者 永松 祐嗣 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内Front page continuation (72) Inventor Yuji Nagamatsu 1099, Ozenji, Aso-ku, Kawasaki-shi, Kanagawa Incorporated company Hitachi, Ltd. System Development Laboratory

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】マイクロプロセッサユニット(以下、MP
U)、及びメモリを模擬するMPUシミュレータと、入
出力装置を模擬する入出力装置模擬部(以下、I/Oモ
デル)、及びMPUと1つ以上の入出力装置を接続する
信号線群を模擬する入出力装置模擬部実行制御機構(以
下、I/Oモニタ)とで構成される入出力シミュレータ
(以下、I/Oシミュレータ)であり、上記MPUシミ
ュレータ、I/Oモデル、I/Oモニタを別計算機にお
いて動作させ、それらの計算機をネットワークで接続し
データを授受することによりシミュレーションを行うこ
とを特徴とするシミュレーション方式。
1. A microprocessor unit (hereinafter referred to as MP
U), and an MPU simulator that simulates a memory, an input / output device simulation unit that simulates an input / output device (hereinafter, I / O model), and a signal line group that connects the MPU and one or more input / output devices. It is an input / output simulator (hereinafter, I / O simulator) composed of an input / output device simulation unit execution control mechanism (hereinafter, I / O monitor), which includes the above MPU simulator, I / O model, and I / O monitor. A simulation method characterized in that a simulation is performed by operating in another computer, connecting those computers through a network, and exchanging data.
【請求項2】請求項1記載のシミュレーション方式にお
いて、上記MPUシミュレータ、I/Oモデル、I/O
モニタを別プロセスで互いに動作させ、それらのプロセ
スをネットワークで接続しデータを授受することにより
シミュレーションを行うことを特徴とするシミュレーシ
ョン方式。
2. The simulation method according to claim 1, wherein the MPU simulator, I / O model, and I / O are used.
A simulation method characterized in that monitors are operated in separate processes, and those processes are connected by a network and data is exchanged to perform a simulation.
【請求項3】請求項1、2記載のシミュレーション方式
において、 MPUシミュレータとI/Oモデルの間で
の同期管理と割込み管理を行なう機能をI/Oモニタに
持たせることを特徴とするシミュレーション方式。
3. The simulation method according to claim 1, wherein the I / O monitor has a function of performing synchronous management and interrupt management between the MPU simulator and the I / O model. .
【請求項4】請求項1、2、3記載のシミュレーション
方式において、複数のMPUシミュレータ、I/Oモデ
ル、I/Oモニタを動作させる時、これらの同期管理と
割込み管理を行なう機能を複数の MPU、及び入出力
装置間を接続する信号線群を模擬するシステムバスI/
Oモニタに持たせることを特徴とするシミュレーション
方式。
4. The simulation system according to claim 1, 2, or 3, wherein when a plurality of MPU simulators, I / O models, and I / O monitors are operated, a plurality of functions for performing synchronization management and interrupt management of these are provided. System bus I / that simulates a signal line group connecting between the MPU and the input / output device
A simulation method characterized by having an O monitor.
【請求項5】請求項1、2、3、4記載のシミュレーシ
ョン方式において、プロセス間通信、計算機間通信はソ
ケット通信を用いて行なうことを特徴とするシミュレー
ション方式。
5. The simulation method according to claim 1, 2, 3, or 4, wherein socket communication is used for interprocess communication and intercomputer communication.
JP5268588A 1993-10-27 1993-10-27 Simulation system Pending JPH07121405A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5268588A JPH07121405A (en) 1993-10-27 1993-10-27 Simulation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5268588A JPH07121405A (en) 1993-10-27 1993-10-27 Simulation system

Publications (1)

Publication Number Publication Date
JPH07121405A true JPH07121405A (en) 1995-05-12

Family

ID=17460623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5268588A Pending JPH07121405A (en) 1993-10-27 1993-10-27 Simulation system

Country Status (1)

Country Link
JP (1) JPH07121405A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222420A (en) * 2004-02-06 2005-08-18 Toyota Motor Corp Distribution processing support program
US7079999B2 (en) 2001-07-19 2006-07-18 Matsushita Electric Industrial Co., Ltd. Bus simulation apparatus and bus simulation program
JPWO2013145270A1 (en) * 2012-03-30 2015-08-03 三菱電機株式会社 Air conditioner test system, air conditioning system simulator and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7079999B2 (en) 2001-07-19 2006-07-18 Matsushita Electric Industrial Co., Ltd. Bus simulation apparatus and bus simulation program
JP2005222420A (en) * 2004-02-06 2005-08-18 Toyota Motor Corp Distribution processing support program
JPWO2013145270A1 (en) * 2012-03-30 2015-08-03 三菱電機株式会社 Air conditioner test system, air conditioning system simulator and program
US9817410B2 (en) 2012-03-30 2017-11-14 Mitsubishi Electric Corporation Air conditioner testing system, air-conditioning system simulator, and program

Similar Documents

Publication Publication Date Title
US5911059A (en) Method and apparatus for testing software
US5546562A (en) Method and apparatus to emulate VLSI circuits within a logic simulator
US5768567A (en) Optimizing hardware and software co-simulator
US6427224B1 (en) Method for efficient verification of system-on-chip integrated circuit designs including an embedded processor
US6859892B2 (en) Synchronous breakpoint system and method
US6014512A (en) Method and apparatus for simulation of a multi-processor circuit
Wulf et al. Overview of the Hydra operating system development
CN102508753A (en) IP (Internet protocol) core verification system
CN112115022B (en) AADL-based IMA system health monitoring test method
US5363501A (en) Method for computer system development verification and testing using portable diagnostic/testing programs
CN117422026B (en) RISC-V architecture-based processor verification system
US5592674A (en) Automatic verification of external interrupts
JPH11505645A (en) Apparatus and method for simulating a digital system based on a processor
Engblom et al. Full-system simulation from embedded to high-performance systems
Lai et al. Fast profiling framework and race detection for heterogeneous system
US9317636B1 (en) System and method for stopping integrated circuit simulation
JPH07121405A (en) Simulation system
JP2828590B2 (en) Microprogram verification method
US8914274B1 (en) Method and system for instruction set simulation with concurrent attachment of multiple debuggers
CN112329369A (en) Method for debugging software on chip simulation model
Lantreibecq et al. Model checking and co-simulation of a dynamic task dispatcher circuit using CADP
US20060070042A1 (en) Automatic clocking in shared-memory co-simulation
JP2000194610A (en) Synchronizing method and device using bus arbitration control for system analysis
JPS6349851A (en) Simulation system
JPH04352262A (en) Parallel simulation system of multiple cpu system

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees