JPH0373011B2 - - Google Patents
Info
- Publication number
- JPH0373011B2 JPH0373011B2 JP61015086A JP1508686A JPH0373011B2 JP H0373011 B2 JPH0373011 B2 JP H0373011B2 JP 61015086 A JP61015086 A JP 61015086A JP 1508686 A JP1508686 A JP 1508686A JP H0373011 B2 JPH0373011 B2 JP H0373011B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- target
- emulation memory
- bus
- 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
Links
- 238000000034 method Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、インサーキツト方式でターゲツトシ
ステムをシミユレーシヨンすることのできるイン
サーキツト・エミユレータに関する。DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to an in-circuit emulator capable of simulating a target system using an in-circuit method.
(従来の技術)
従来よりインサーキツト方式でターゲツトシス
テムのプログラムをデバツグするデバツグ装置は
よく知られている。そしてこのようなデバツグ装
置の一つに、ターゲツトCPUとデバツグ装置側
のCPUとが異なるような場合には、デバツグ装
置側のCPU側にターゲツトCPUのレジスタ等の
資源を割りあて、ターゲツトCPUの命令を取出
してはその意味を解釈し、その意味に対応する操
作をターゲツトCPU側のイメージ上で行うこと
ができるような機能を有したエミユレータがあ
る。(Prior Art) Debugging devices for debugging programs in a target system using an in-circuit method are well known. In one of these debugging devices, if the target CPU and the CPU on the debugging device side are different, resources such as registers of the target CPU are allocated to the CPU on the debugging device side, and the instructions of the target CPU are There are emulators that have the ability to extract a file, interpret its meaning, and perform operations corresponding to that meaning on the image on the target CPU side.
しかしながら、従来のこの種のエミユレータで
は、入出力機器(入出力I/Oという)のプログ
ラムをデバツグする時、周辺I/O機器が搭載さ
れたCPU(中央処理装置)ボードと接続してはじ
めてI/O駆動用のプログラムのデバツグが可能
であつた。したがつて、実機がなければI/O駆
動用プログラムを開発することができず、このこ
とはI/Oソフトウエアのデバツグがハードウエ
アの動作確認の後に行わなければならないという
制約を受け、ソフトウエアの開発工程がハードウ
エアに左右され、開発効率が悪いという結果をも
たらす。 However, with conventional emulators of this type, when debugging a program for input/output devices (referred to as input/output I/O), it is necessary to connect the peripheral I/O devices to the CPU (central processing unit) board. It was possible to debug the /O drive program. Therefore, it is not possible to develop an I/O drive program without the actual device, and this is constrained by the fact that debugging of I/O software must be done after confirming the operation of the hardware. The software development process is dependent on the hardware, resulting in poor development efficiency.
本発明の目的は、この様な点に鑑み、実機なし
でI/O駆動用のプログラムをデバツグすること
のできるインサーキツト・エミユレータを提供す
ることにある。 SUMMARY OF THE INVENTION In view of the above, an object of the present invention is to provide an in-circuit emulator that can debug an I/O drive program without using an actual device.
(問題点を解決するための手段)
この様な目的を達成するために本発明では、イ
ンサーキツト・エミユレータにおいて、
ユーザの入出力ポート空間をエミユレーシヨン
できるエミユレーシヨン・メモリと、
ユーザの入出力機器の入出力の時間をターゲツ
トマイクロプロセツサのバスサイクル単位でカウ
ントできるバスサイクル・カウンタと、
このバスサイクル・カウンタの内容に基づき前
記エミユレーシヨン・メモリの内容を置換えるこ
とができる機能を有すると共にデバツグを行うに
必要な制御等を行うホストCPUと
を具備し、ターゲツト側の入出力機器の入出力を
シミユレートすることができるようにしたことを
特徴とする。(Means for Solving the Problem) In order to achieve such an object, the present invention provides an incircuit emulator that includes an emulation memory capable of emulating a user's input/output port space, and an input/output port space of a user's input/output device. It has a bus cycle counter that can count the time in bus cycle units of the target microprocessor, and a function that can replace the contents of the emulation memory based on the contents of this bus cycle counter, which is necessary for debugging. It is characterized in that it is equipped with a host CPU that performs various controls, etc., and can simulate the input/output of input/output equipment on the target side.
(実施例)
以下図面を用いて本発明を詳しく説明する。第
1図は本発明に係るインサーキツト・エミユレー
タの一実施例を示す構成図である。図において、
点線で囲んだ部分1はターゲツトであるが、本願
では実機を必要としないでデバツグができるよう
になつているため接続する必要はない。2はデバ
ツグ装置に用意されているターゲツトマイクロプ
ロセツサ(μP)であり、エミユレーシヨン・メ
モリ5に格納されたプログラムを実行するもので
ある。3はアクテイブ・プログラムが格納された
メモリである。アクテイブ・プログラムは、マイ
クロプロセツサ2がアクテイブ動作(例えばレジ
スタ内容表示やマイクロプロセツサの動作一時停
止等)を行う時に走行するプログラムである。(Example) The present invention will be explained in detail below using the drawings. FIG. 1 is a block diagram showing an embodiment of an in-circuit emulator according to the present invention. In the figure,
The part 1 surrounded by the dotted line is the target, but in this application, it is not necessary to connect it because debugging can be performed without requiring the actual machine. A target microprocessor (μP) 2 is provided in the debugging device and executes a program stored in the emulation memory 5. 3 is a memory in which active programs are stored. The active program is a program that runs when the microprocessor 2 performs an active operation (for example, displaying register contents, temporarily stopping microprocessor operation, etc.).
4はI/Oエミユレーシヨン・メモリで、ユー
ザの入力ポートや出力ポート空間を指定できるメ
モリである。なお、このI/Oエミユレーシヨ
ン・メモリ4やエミユレーシヨン・メモリ5はホ
ストCPU7によつてもリード(READ)あるい
はライト(WRITE)が可能となつている。6は
バスサイクル・カウンタで、マイクロプロセツサ
2のバスサイクルをカウントする。そのカウント
値のプリセツトやカウント値のREADはCPU7
側からアクセス可能となつている。 Reference numeral 4 denotes an I/O emulation memory, which is a memory in which a user's input port and output port space can be specified. The I/O emulation memory 4 and emulation memory 5 can also be read or written by the host CPU 7. A bus cycle counter 6 counts bus cycles of the microprocessor 2. The CPU 7 presets the count value and reads the count value.
It is accessible from the side.
8はバツフア、9は双方向性のバツフア、10
はターゲツトマイクロプロセツサ2側のアドレス
バス、11はターゲツトマイクロプロセツサ2側
のデータバス、12はホストCPU側のアドレス
バス、13はホストCPU側のデータバスである。 8 is a buffer, 9 is a bidirectional buffer, 10
1 is an address bus on the target microprocessor 2 side, 11 is a data bus on the target microprocessor 2 side, 12 is an address bus on the host CPU side, and 13 is a data bus on the host CPU side.
このような構成における動作を第2図に示すよ
うな具体例を用いて次に説明する。 The operation in such a configuration will be explained next using a specific example as shown in FIG.
出力ポートAにデータ#φ1をWRITEした後
入力ポートBからデータをREADし、その値が
#φφであれば出力ポートAの値を#φφにする。
ここで、入力ポートBは、出力ポートAが#φ1
にセツトされてから100msの時間経過後に#φφ
になるものとする。 After writing data #φ1 to output port A, data is read from input port B, and if the value is #φφ, the value of output port A is set to #φφ.
Here, input port B and output port A are #φ1
#φφ after 100ms has passed since it was set to
shall be.
このような場合、まずユーザは予めタイム・カ
ウンタの値100msに相当する数値をデバツグ装
置のキーボード入力部(図示せず)で指定する。
ホストCPU7はアドレスバス12およびバツフ
ア8を介してアドレス指定し、データバス13お
よびバツフア9を介してその数値(ここでは便宜
上100とする)をバスサイクル・カウンタ6にプ
リセツトする。 In such a case, the user first specifies in advance a numerical value corresponding to the time counter value of 100 ms using the keyboard input section (not shown) of the debugging device.
Host CPU 7 specifies an address via address bus 12 and buffer 8, and presets the value (here assumed to be 100 for convenience) into bus cycle counter 6 via data bus 13 and buffer 9.
第3図のタイムチヤートのイのバスサイクルは
マイクロプロセツサの動作状態を表わすが、図示
のようにマイクロプロセツサ2が出力ポートAに
データ#φ1を出力する命令を実行すると、スタ
ブ機能が起動する。スタブとは、デバツグ装置の
コマンド列による一連の手続きを指し、マイクロ
プロセツサ2がそのアドレス命令をアクセスする
際に、登録されているスタブの内容が実行される
ようになつている。このスタブはユーザが設定で
きるようになつており、バスサイクル・カウンタ
値が零になつたらI/Oエミユレーシヨン・メモ
リ4に“φ1”をセツトするような内容のプログ
ラムが格納されている。 The bus cycle A in the time chart in Figure 3 represents the operating state of the microprocessor, and as shown in the figure, when microprocessor 2 executes an instruction to output data #φ1 to output port A, the stub function is activated. do. A stub refers to a series of procedures based on a command string of a debugging device, and when the microprocessor 2 accesses the address instruction, the contents of the registered stub are executed. This stub can be set by the user, and stores a program that sets "φ1" in the I/O emulation memory 4 when the bus cycle counter value becomes zero.
バスサイクル・カウンタ6は、ダウンカウンタ
であり、第3図ロに示すバスサイクルクロツクが
ターゲツトマイクロプロセツサ2から与えられる
毎にダウンカウントし、第3図ホのように、カウ
ント値は100、99、98、…と減少する。カウント
値はホストCPU8でモニタされていて、カウン
ト値が零になると、スタブ内の命令により、I/
Oエミユレーシヨン・メモリ4の値が“φφ”に
書換えられる。これにより、入力ポートBは#φ
1が出てから100ms後に#φφとなつたこととな
る。 The bus cycle counter 6 is a down counter, and counts down every time the bus cycle clock shown in FIG. It decreases to 99, 98, etc. The count value is monitored by the host CPU 8, and when the count value reaches zero, an instruction in the stub causes the I/O
The value in the O emulation memory 4 is rewritten to "φφ". This makes input port B #φ
100ms after 1 appears, it becomes #φφ.
マイクロプロセツサ2は出力ポートAに#φ1
を出力した後入力ポートBのデータをモニターし
ており、#φφになつた時(100ms経過した時)
出力ポートAを#φφにする。 Microprocessor 2 connects #φ1 to output port A.
After outputting , the data of input port B is monitored, and when it becomes #φφ (when 100ms have passed)
Set output port A to #φφ.
以上のようにして実際にI/OがなくてもI/
Oの入出力データを生じさせることができ、これ
によりI/O機器等を搭載した実機を必要とする
ことなく、I/Oドライバのプログラムをシミユ
レートすることができる。 As described above, even if there is no actual I/O, I/O
O input/output data can be generated, thereby making it possible to simulate an I/O driver program without requiring an actual machine equipped with I/O equipment or the like.
なお、バスサイクル・カウンタ6は複数個あつ
てもよく、ユーザの割りつけ可能なI/Oの数が
その個数だけ多く指定できることになる。 Note that there may be a plurality of bus cycle counters 6, and the number of I/Os that can be assigned by the user can be specified as large as that number.
(発明の効果)
以上説明したように、本発明によれば、I/O
空間がエミユレーシヨン・メモリに割付けられ、
実機に似た動作が可能のため、実機なしでI/O
のソフトウエア開発の効率を上げることができ
る。(Effects of the Invention) As explained above, according to the present invention, the I/O
space is allocated in emulation memory,
Operation similar to the actual device is possible, so I/O is possible without the actual device.
can increase the efficiency of software development.
第1図はは本発明に係るインサーキツト・エミ
ユレータの一実施例を示す構成図、第2図および
第3図は動作を説明するためのタイムチヤートで
ある。
2……マイクロプロセツサ、3……アクテイブ
プログラム・メモリ、4……I/Oエミユレーシ
ヨン・メモリ、5……エミユレーシヨン・メモ
リ、6……バスサイクル・カウンタ、7……ホス
トCPU、8……バツフア、9……双方向バツフ
ア、10,12……アドレスバス、11,13…
…データバス。
FIG. 1 is a block diagram showing an embodiment of an in-circuit emulator according to the present invention, and FIGS. 2 and 3 are time charts for explaining the operation. 2... Microprocessor, 3... Active program memory, 4... I/O emulation memory, 5... Emulation memory, 6... Bus cycle counter, 7... Host CPU, 8... Buffer , 9... Bidirectional buffer, 10, 12... Address bus, 11, 13...
...data bus.
Claims (1)
ムをデバツグすることのできるインサーキツト・
エミユレータにおいて、 ユーザの入出力ポート空間をエミユレーシヨン
できるエミユレーシヨン・メモリと、 ユーザの入出力機器の入出力の時間をターゲツ
トマイクロプロセツサのバスサイクル単位でカウ
ントできるバスサイクル・カウンタと、 このバスサイクル・カウンタの内容に基づき前
記エミユレーシヨン・メモリの内容を書換えるこ
とができる機能を有すると共にデバツグを行うに
必要な制御等を行うホストCPUと を具備し、ターゲツト側の入出力機器の入出力を
シミユレートすることができるようにしたことを
特徴とするインサーキツト・エミユレータ。[Claims] 1. An in-circuit system that can debug a target program using an in-circuit method.
The emulator includes an emulation memory that can emulate the user's input/output port space, a bus cycle counter that can count the input/output time of the user's input/output device in bus cycles of the target microprocessor, and this bus cycle counter. The host CPU has a function of rewriting the contents of the emulation memory based on the contents of the emulation memory, and also has a host CPU that performs control necessary for debugging, and simulates the input/output of the input/output device on the target side. An in-circuit emulator that is characterized by being able to perform.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61015086A JPS62173539A (en) | 1986-01-27 | 1986-01-27 | In-circuit emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61015086A JPS62173539A (en) | 1986-01-27 | 1986-01-27 | In-circuit emulator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62173539A JPS62173539A (en) | 1987-07-30 |
JPH0373011B2 true JPH0373011B2 (en) | 1991-11-20 |
Family
ID=11879030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61015086A Granted JPS62173539A (en) | 1986-01-27 | 1986-01-27 | In-circuit emulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62173539A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04229337A (en) * | 1990-12-27 | 1992-08-18 | Hitachi Ltd | Emulator |
-
1986
- 1986-01-27 JP JP61015086A patent/JPS62173539A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS62173539A (en) | 1987-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5615331A (en) | System and method for debugging a computing system | |
JPS6017539A (en) | Emulation system | |
JPH0373011B2 (en) | ||
JPS6349851A (en) | Simulation system | |
JPH0550016B2 (en) | ||
JP3424548B2 (en) | Software logic simulator for embedded devices | |
JP3270729B2 (en) | Extended instruction set simulator | |
JPH0283749A (en) | Internal interruption control system for microprocessor | |
JPS6325742A (en) | Microprocessor with tracing function | |
JP2788353B2 (en) | Task trace method | |
KR100189977B1 (en) | Emulator system having trace function and trace method | |
JPH0368037A (en) | Program developing device | |
JPS63291135A (en) | Microcomputer developing device | |
JPS59202546A (en) | Debugging device | |
JPS59202547A (en) | Debugging device | |
JPH0219937A (en) | Electronic computer system | |
KR100195221B1 (en) | Instruction execution number measure device in program execution | |
JPS61239335A (en) | I/o simulator | |
JPH10198577A (en) | Device and method for electronic circuit analysis and medium for recording electronic circuit analysis program | |
JP2001209555A (en) | Device for input/output emulation, method for emulating input/output device and storage medium which stores input/output emulation program | |
JPH1083316A (en) | Multi cpu system | |
JPS58134338A (en) | Controlling system of digital computer | |
JPH02308342A (en) | Constituting method for simulating debugger | |
JPH07113900B2 (en) | Emulation chip | |
JPH0281235A (en) | Evaluation chip |