JPH05189267A - Operation control system for microprocessor and emulator - Google Patents
Operation control system for microprocessor and emulatorInfo
- Publication number
- JPH05189267A JPH05189267A JP4006202A JP620292A JPH05189267A JP H05189267 A JPH05189267 A JP H05189267A JP 4006202 A JP4006202 A JP 4006202A JP 620292 A JP620292 A JP 620292A JP H05189267 A JPH05189267 A JP H05189267A
- Authority
- JP
- Japan
- Prior art keywords
- break
- address
- microprocessor
- emulator
- factor
- 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.)
- Withdrawn
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、マイクロプロセッサの
動作制御方法、更には割込みあるいはインタラプト命令
などによる例外処理を使用してマイクロプロセッサの動
作状態の切換えを行う際の制御技術に関し、例えばソフ
トウェアデバッグ対象とされるターゲットプログラムを
マイクロプロセッサに実行させることにより、ターゲッ
トシステム上で動作するソフトウェアの開発支援を可能
とするエミュレータに適用して有効な技術に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of controlling the operation of a microprocessor, and more particularly to a control technique for switching the operating state of the microprocessor by using exception processing such as an interrupt or interrupt instruction. The present invention relates to a technique effective when applied to an emulator that enables development support of software operating on a target system by causing a microprocessor to execute a targeted target program.
【0002】[0002]
【従来の技術】マイクロプロセッサ(マイクロコンピュ
ータ)応用機器の開発において、その応用システムのデ
バッグやそのシステムの詳細な評価を行うため、エミユ
レータが使用されている。例えばエミュレータは、ソフ
トウェア開発用の親計算機などのシステム開発装置と、
開発中のターゲットシステムとの間に接続され、そのタ
ーゲットシステムに含まれるマイクロプロセッサ(ター
ゲットマイクロプロセッサ)の機能を代行する一方でデ
バッガとしての機能をもち、詳細なシステムデバッグを
支援する。かかるエミュレータは、その本体から延長さ
れたケーブルの先端が、ICソケットなどの接栓を介し
てターゲットシステムに結合可能とされ、さらに、エミ
ュレーション実行中に各種データやステータス信号など
を実時間でサンプリングし、それをトレースメモリ部な
どに格納する実時間トレース機能やエミュレーション動
作を実質的に停止させるブレーク機能などの各種デバッ
グ機能が備える。2. Description of the Related Art In developing a microprocessor (microcomputer) application device, an emulator is used to debug the application system and perform detailed evaluation of the system. For example, an emulator is a system development device such as a parent computer for software development,
It is connected to the target system under development and acts as a debugger while acting as a function of the microprocessor (target microprocessor) included in the target system, and supports detailed system debugging. In such an emulator, the tip of the cable extended from the main body can be coupled to the target system through a plug such as an IC socket, and further various data and status signals are sampled in real time during execution of emulation. , And various debug functions such as a real-time trace function for storing it in the trace memory unit and a break function for substantially stopping the emulation operation.
【0003】一般にエミュレータでは、リターン命令を
実行し、スタックの内容から戻りアドレスを読込むこと
を利用して、ユーザプログラムを任意のアドレスから実
行するようにしている。また、ブレークは、割込み入力
あるいはインタラプト命令実行により、ユーザプログラ
ムに実行の流れを変えることによって行われる。すなわ
ち、従来のブレーク方式においては、割込み入力あるい
はインタラプト命令実行の例外処理によるスタック前に
マイクロプロセッサの動作空間をユーザプログラム実行
状態からエミュレータ制御状態に切換え、ブレーク発生
時にエミュレータのステータスレジスタにブレーク要因
を示す情報をセットし、リスタート(再スタート)アド
レスからのエミュレータ制御プログラムにより、ステー
タスレジスタのブレーク要因を解析するようにしてい
る。Generally, an emulator executes a return instruction and reads a return address from the contents of the stack to execute a user program from an arbitrary address. A break is performed by changing the flow of execution to a user program by inputting an interrupt or executing an interrupt instruction. In other words, in the conventional break method, the operating space of the microprocessor is switched from the user program execution state to the emulator control state before stacking due to interrupt input or exception handling of interrupt instruction execution, and when the break occurs, the break factor is set in the emulator status register. The information shown is set and the break factor of the status register is analyzed by the emulator control program from the restart address.
【0004】尚、そのようなエミュレータの動作につい
て記載された文献の例としては、1989年6月20日
に電波新聞社から発行された「マイコン開発のすべて
(第78頁から第95頁)」がある。As an example of a document describing the operation of such an emulator, "All About Microcomputer Development (Pages 78 to 95)" issued by Denpa Shimbun on June 20, 1989. There is.
【0005】[0005]
【発明が解決しようとする課題】上記のように、割込み
入力あるいはインタラプト命令実行の例外処理によるス
タック前にマイクロプロセッサの動作空間をユーザプロ
グラム実行状態からエミュレータ制御状態に切換え、ブ
レーク発生時にエミュレータのステータスレジスタにブ
レーク要因を示す情報をセットし、リスタートアドレス
からのエミュレータ制御プログラムにより、ステータス
レジスタのブレーク要因を解析する従来方式では、マイ
クロプロセッサの処理速度の向上、周辺機能の搭載によ
る機能強化などにより、そのようなプロセッサを用いた
場合のエミュレーションの制御がますます複雑化される
中で、ブレーク処理の高速化が困難とされる。As described above, the operating space of the microprocessor is switched from the user program execution state to the emulator control state before stacking due to exception input of interrupt input or interrupt instruction execution, and the emulator status is generated when a break occurs. In the conventional method of setting break factor information in the register and analyzing the break factor of the status register by the emulator control program from the restart address, the processing speed of the microprocessor is improved and the function is enhanced by mounting peripheral functions. As the control of emulation using such a processor becomes more and more complicated, it is difficult to speed up break processing.
【0006】本発明の目的は、ブレーク処理の高速化を
図ることにある。An object of the present invention is to speed up break processing.
【0007】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
【0008】[0008]
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。The outline of a typical one of the inventions disclosed in the present application will be briefly described as follows.
【0009】すなわち、マイクロプロセッサが例外処理
アドレスの内容をフェッチする際の当該例外処理アドレ
スを、ハードウェアによりそのときのブレーク要因に応
じて生成し、上記例外処理後のリスタートアドレスをブ
レーク要因毎に異ならせるようにするものである。That is, the exception processing address when the microprocessor fetches the contents of the exception processing address is generated by the hardware according to the break factor at that time, and the restart address after the exception processing is generated for each break factor. It is intended to be different.
【0010】また、ブレーク要因を検出するためのブレ
ーク検出回路と、上記マイクロプロセッサが例外処理ア
ドレスをフェッチする際の当該例外処理アドレスを、上
記ブレーク検出回路の検出結果に基づいて生成すること
により、当該例外処理後のリスタートアドレスをブレー
ク要因毎に異ならせるためのベクタ生成回路とを含んで
エミュレータを構成するものである。Further, by generating a break detection circuit for detecting a break factor and the exception processing address when the microprocessor fetches the exception processing address, based on the detection result of the break detection circuit, The emulator is configured to include a vector generation circuit for making the restart address after the exception handling different for each break factor.
【0011】[0011]
【作用】上記した手段によれば、マイクロプロセッサが
例外処理アドレスの内容をフェッチする際の当該例外処
理アドレスを、ハードウェアによりそのときのブレーク
要因に応じて生成し、上記例外処理後のリスタートアド
レスをブレーク要因毎に異ならせることは、ブレーク要
因解析におけるソフトウェアの介入を不要とし、このこ
とが、ブレーク処理の高速化を達成する。According to the above means, the exception processing address when the microprocessor fetches the contents of the exception processing address is generated by the hardware according to the break factor at that time, and the restart is performed after the exception processing. Making the address different for each break factor eliminates the need for software intervention in the break factor analysis, which achieves a faster break process.
【0012】[0012]
【実施例】図1には、本発明の一実施例にかかるエミュ
レータの全体的な構成が示される。FIG. 1 shows the overall configuration of an emulator according to an embodiment of the present invention.
【0013】図1に示されるエミュレータは、ソフトウ
ェア開発用の親計算機などのシステム開発装置と、開発
中のターゲットシステムとの間に接続され、そのターゲ
ットシステムに含まれるマイクロプロセッサ(ターゲッ
トマイクロプロセッサ)の機能を代行する一方でデバッ
ガとしての機能をもち、詳細なシステムデバッグを支援
する。そのようなエミュレータは、それに接続されるイ
ンタフェースケーブル及びICソケット39を介して、
ターゲットシステムに結合され、エミュレーション実行
中に各種データやステータス信号などを実時間でサンプ
リングし、それをトレースメモリ36などに格納する実
時間トレース機能や、設定されたブレークポイントに従
ってエミュレーション動作を実質的に停止させるブレー
ク機能などの各種デバッグ機能が備えられている。The emulator shown in FIG. 1 is connected between a system development device such as a parent computer for software development and a target system under development, and is connected to a microprocessor (target microprocessor) included in the target system. It has a function as a debugger while substituting for functions, and supports detailed system debugging. Such an emulator, via the interface cable and IC socket 39 connected to it,
A real-time trace function that is connected to the target system and samples various data and status signals in real time during execution of emulation and stores them in the trace memory 36, etc. It has various debug functions such as a break function to stop.
【0014】図示されないターゲットシステムに搭載さ
れるターゲットマイクロプロセッサと等価なマイクロプ
ロセッサ(MPU)31は、NMI(ノンマスカブル割
込み)信号12の入力端子を有する。エミュレーション
バス32には、マイクロプロセッサ31がターゲットマ
イクロプロセッサの機能を代行する際に当該プロセッサ
31の所定の状態切換えを行うためのエミュレーション
制御部33、エミュレーション動作制御時に使用される
メモリ34、マイクロプロセッサ31の制御状態やエミ
ュレーションバス32の状態を監視することによってユ
ーザプログラムの実行停止要因を検出するためのブレー
ク検出回路35、エミュレーションバス32に与えられ
るアドレスやデータ並びに制御信号を逐次トレースして
蓄えるトレースメモリ36、ターゲットシステムに含ま
れるべきデータメモリやプログラムメモリを代行するた
めのエミュレーションメモリ37、及び図示されないタ
ーゲットシステムとの結合のためのユーザインタフェー
ス部38がそれぞれ結合される。上記NMI信号12
は、上記ブレーク検出回路35によってブレーク条件成
立が検出された場合にアサートされる。上記エミュレー
ション制御部33、メモリ34、ブレーク検出回路3
5、トレースメモリ36、及びエミュレーションメモリ
37は、システムバス13を通じてホストCPU(中央
処理装置)14の制御を受けるようになっている。シス
テムバス13には、システムメモリ15やI/Oインタ
フェース部16が結合され、このI/Oインタフェース
部16を介して、ディスク17を記録媒体とするディス
ク装置や、CRTディスプレイ18を含む親計算機が結
合される。A microprocessor (MPU) 31 equivalent to a target microprocessor mounted in a target system (not shown) has an input terminal for an NMI (non-maskable interrupt) signal 12. The emulation bus 32 includes an emulation controller 33 for switching a predetermined state of the target microprocessor 31 when the microprocessor 31 acts as a target microprocessor, a memory 34 used for controlling the emulation operation, and a microprocessor 31. Break detection circuit 35 for detecting the cause of execution stop of the user program by monitoring the control state of the emulation bus 32 and the state of the emulation bus 32, and a trace memory for sequentially tracing and storing the address, data and control signal given to the emulation bus 32. 36, an emulation memory 37 for substituting a data memory or a program memory to be included in the target system, and a user interface for coupling with a target system (not shown) Part 38 is coupled, respectively. The NMI signal 12
Is asserted when the break detection circuit 35 detects that the break condition is satisfied. The emulation control unit 33, the memory 34, the break detection circuit 3
5, the trace memory 36 and the emulation memory 37 are controlled by the host CPU (central processing unit) 14 through the system bus 13. A system memory 15 and an I / O interface unit 16 are coupled to the system bus 13, and a disk device having a disk 17 as a recording medium and a parent computer including a CRT display 18 are connected via the I / O interface unit 16. Be combined.
【0015】一般にエミュレータでは、割込み入力ある
いはインタラプト命令実行の例外処理によるスタック前
にマイクロプロセッサの動作空間をユーザプログラム実
行状態からエミュレータ制御状態に切換え、ブレーク発
生時にエミュレータのステータスレジスタにブレーク要
因を示す情報をセットし、リスタートアドレスからのエ
ミュレータ制御プログラムにより、ステータスレジスタ
のブレーク要因を解析するようにしているが、本実施例
エミュレータでは、ブレーク処理の高速化を図るため、
上記マイクロプロセッサ31が例外処理アドレスをフェ
ッチする際の当該例外処理アドレスを、上記ブレーク検
出回路35の検出結果に基づいて生成することにより、
当該例外処理後のリスタートアドレスをブレーク要因毎
に異ならせるためのベクタ生成回路40を含む。Generally, in an emulator, the operating space of the microprocessor is switched from the user program execution state to the emulator control state before stacking due to interrupt input or interrupt instruction execution exception processing, and when a break occurs, information indicating the break factor in the emulator status register is displayed. Is set and the break factor of the status register is analyzed by the emulator control program from the restart address.However, in the emulator of this embodiment, in order to speed up break processing,
By generating the exception processing address when the microprocessor 31 fetches the exception processing address based on the detection result of the break detection circuit 35,
It includes a vector generation circuit 40 for making the restart address after the exception processing different for each break factor.
【0016】図2には上記ベクタ生成回路40の構成例
が示され、図3にはブレーク要因別のリスタートアドレ
スマップが示される。FIG. 2 shows a configuration example of the vector generation circuit 40, and FIG. 3 shows a restart address map for each break factor.
【0017】図2に示されるように、本実施例における
マイクロプロセッサ31は、特に制限されないが、16
ビット構成(A15乃至A0)のアドレスバス19と、
8ビット構成(D7乃至D0)のデータバス20とに結
合される。マイクロプロセッサ31のNMIのベクタテ
ーブルアドレスは、H’0080(2進表示では、00
00000010000000)であり、ベクタテーブ
ルにはリスタートアドレス(プログラムカウンタPC値
に等しく、2バイトとされる)が設定されるようになっ
ている。エミュレーション起動はリターンインタラプト
命令により行われ、ブレーク処理はNMIがアサートさ
れることにより行われる。エミュレーションバス32で
は、リターンインタラプト命令による新たなプログラム
カウンタ値のフェッチから、ブレークによるNMI割込
み例外のスタック直前までを、ユーザ空間としてエミュ
レーション動作の制御を行う。また、本実施例では、特
に制限されないが、互いに異なる3種類のブレーク要因
が設定される。それをブレーク要因1、ブレーク要因
2、ブレーク要因3とする。As shown in FIG. 2, the microprocessor 31 in this embodiment is not particularly limited, but 16
An address bus 19 having a bit configuration (A15 to A0),
It is coupled to the data bus 20 having an 8-bit structure (D7 to D0). The NMI vector table address of the microprocessor 31 is H'0080 (00 in binary display).
00000010000000), and the restart address (equal to the program counter PC value and set to 2 bytes) is set in the vector table. The emulation activation is performed by a return interrupt instruction, and the break processing is performed by asserting NMI. The emulation bus 32 controls the emulation operation from the fetch of a new program counter value by a return interrupt instruction to immediately before the stack of an NMI interrupt exception due to a break as user space. Further, in this embodiment, although not particularly limited, three types of break factors different from each other are set. Let them be break factor 1, break factor 2, and break factor 3.
【0018】上記ベクタ生成回路40は、アドレスバス
19のアドレスを監視するための2つのコンパレータ2
1、22と、負論理のアンドゲートG1、G2、インバ
ータG3、及び上記負論理アンドゲートG1、G2の出
力状態によって活性化される2系統の出力バッファ2
3、24とを含む。上記コンパレータ21、22は、2
系統の入力端子群、すなわち入力端子A7乃至A0と入
力端子B7乃至B0とを有する。コンパレータ21で
は、アドレスバス19のアドレスA15乃至A8が入力
端子A7乃至A0に伝達され、入力端子B7乃至B0が
ローレベル(グランドレベル)に固定されるようになっ
ており、エミュレーション制御部33によって空間切換
えUSER信号11がローレベルにおアサートされた場
合にイネーブル状態にされることに上記2系統の入力端
子状態が比較されるようになっている。この比較におい
て双方の入力論理状態が等しい場合にはコンパレータ2
1の出力端子がローレベルとされる。そのような状態
は、コンパレータ22の入力端子A0に伝達されるよう
になっている。このコンパレータ22ではアドレスバス
19のアドレスA7乃至A1が入力端子A7乃至A1に
伝達され、入力端子B7はハイレベル(Vccレベル)
とされ、入力端子B6乃至B0がローレベルに固定され
るようになっている。読出し制御信号/READ(/は
当該信号がローアクティブであることを示す)がローレ
ベルにアサートされることによりコンパレータ22がイ
ネーブル状態とされ、当該コンパレータ22の比較出力
が後段の負論理アンドゲートG1、G2に伝達されるよ
うになっている。そのような構成によって、アドレスバ
ス19の状態が監視されることにより、図3に示される
ようなマイクロプロセッサ31のNMI割り込のベクタ
テーブルアドレスH’0080の検出が可能とされる。The vector generation circuit 40 includes two comparators 2 for monitoring the address of the address bus 19.
1 and 22, negative logic AND gates G1 and G2, an inverter G3, and two output buffers 2 activated by the output states of the negative logic AND gates G1 and G2.
3 and 24 are included. The comparators 21 and 22 are 2
The system has a group of input terminals, that is, input terminals A7 to A0 and input terminals B7 to B0. In the comparator 21, the addresses A15 to A8 of the address bus 19 are transmitted to the input terminals A7 to A0, and the input terminals B7 to B0 are fixed to the low level (ground level). When the switching USER signal 11 is asserted to a low level, the states of the input terminals of the two systems are compared with being enabled. If both input logic states are equal in this comparison, the comparator 2
The output terminal of 1 is set to low level. Such a state is transmitted to the input terminal A0 of the comparator 22. In the comparator 22, the addresses A7 to A1 of the address bus 19 are transmitted to the input terminals A7 to A1 and the input terminal B7 is at a high level (Vcc level).
Therefore, the input terminals B6 to B0 are fixed to the low level. When the read control signal / READ (/ indicates that the signal is low active) is asserted to the low level, the comparator 22 is enabled and the comparison output of the comparator 22 is the negative logic AND gate G1 in the subsequent stage. , G2. With such a configuration, by monitoring the state of the address bus 19, it is possible to detect the NMI interrupt vector table address H'0080 of the microprocessor 31 as shown in FIG.
【0019】上記負論理アンドゲートG1、G2の後段
には、それの出力状態によって活性化される出力バッフ
ァ23、出力バッファ24が配置される。出力バッファ
23の入力端子7乃至1はローレベル、入力端子0はハ
イレベルにそれぞれ固定される。出力端子はD7乃至D
0の8ビットとされ、それがデータバス20に結合され
る。出力バッファ24の入力端子7、3、2、1、0は
ローレベルに固定され、入力端子6、5、4にブレーク
検出回路35からのブレーク要因信号3、2、1が伝達
されるようになっている。この出力バッファ24の出力
端子も上記出力バッファ23と同様に8ビットとされ、
データバス20に結合される。アドレスバス19のアド
レスA0が負論理アンドゲートG1に、またインバータ
G3を介して負論理アンドゲートG2に伝達されるよう
になっており、アドレスA0の状態に応じて負論理アン
ドゲートG1、G2が相補的に活性化されるようになっ
ている。その結果、出力バッファ23、出力バッファ2
4が相補的にイネーブル状態とされ、ブレーク要因毎に
異なるリスタートアドレスが、偶数、奇数アドレスに合
せてデータバス20に出力される。An output buffer 23 and an output buffer 24, which are activated depending on the output state of the negative logic AND gates G1 and G2, are arranged at the subsequent stage. The input terminals 7 to 1 of the output buffer 23 are fixed to low level, and the input terminal 0 is fixed to high level. Output terminals are D7 to D
8 bits of 0, which are coupled to the data bus 20. The input terminals 7, 3, 2, 1, 0 of the output buffer 24 are fixed to a low level so that the break factor signals 3, 2, 1 from the break detection circuit 35 are transmitted to the input terminals 6, 5, 4. Is becoming The output terminal of the output buffer 24 is also 8 bits like the output buffer 23,
It is coupled to the data bus 20. The address A0 of the address bus 19 is transmitted to the negative logic AND gate G1 and the negative logic AND gate G2 via the inverter G3, and the negative logic AND gates G1 and G2 are changed depending on the state of the address A0. It is activated complementarily. As a result, the output buffer 23 and the output buffer 2
4 are complementarily enabled, and different restart addresses for each break factor are output to the data bus 20 in accordance with even and odd addresses.
【0020】エミュレーション中にブレーク検出回路3
5により、ブレーク条件成立が検出されると、このブレ
ーク検出回路35によって、NMI信号12がアサート
される。その後、エミュレーション制御部33でNMI
割込み例外のスタックサイクルが検出されると、エミュ
レーション制御空間となり、空間切換えUSER信号1
1がアサートされることにより、ベクタ生成回路40が
動作可能状態とされる。Break detection circuit 3 during emulation
When it is detected that the break condition is satisfied by 5, the break detection circuit 35 asserts the NMI signal 12. After that, the emulation control unit 33 causes the NMI
When the stack cycle of the interrupt exception is detected, it becomes the emulation control space and the space switching USER signal 1
When 1 is asserted, the vector generation circuit 40 is made operable.
【0021】ベクタ生成回路40では、アドレスバス1
9の状態がコンパレータ21、コンパレータ22によっ
て監視され、この監視において、NMI割込みベクタテ
ーブルアドレスH’0080へのリードサイクルが検出
される(尚、ベクタテーブルがワードサイズなのでアド
レスA0の監視は不要とされる)。このリードサイクル
が検出されると、コンパレータ22の出力状態がローレ
ベルにアサートされ、それにより負論理のアンドゲート
G1、G2が活性化される。このときアドレスバス19
のアドレスA0の状態に応じて負論理アンドゲートG1
又はG2の出力がローレベルにアサートされ、それによ
り、出力バッファ23又は出力バッファ24がイネーブ
ル状態とされる。出力バッファ23がイネーブル状態と
された場合にリスタートアドレスの上位8ビットが形成
され、出力バッファ24がイネーブル状態とされること
により、当該アドレスの下位8ビットが形成される。出
力バッファ24の入力端子0乃至7のうち4ビット目、
5ビット目、6ビット目にブレーク検出回路35からの
ブレーク要因1,2,3の各信号が入力されるようにな
っており、複数のブレーク要因が発生してもリスタート
アドレスの切換えが可能とされる。そのようにブレーク
要因に応じて生成されたリスタートアドレスは、データ
バス20を介してマイクロプロセッサ31にフェッチさ
れる。尚、データバス20に出力されたリスタートアド
レスの破壊を阻止するため、出力バッファ23、出力バ
ッファ24がイネーブル状態とされる期間においては、
データバス20に結合されるところの図示されない全て
のバッファは高インピーダンス状態とされる。In the vector generation circuit 40, the address bus 1
The state of 9 is monitored by the comparators 21 and 22. In this monitoring, a read cycle to the NMI interrupt vector table address H'0080 is detected (note that since the vector table is a word size, the monitoring of the address A0 is unnecessary). ). When this read cycle is detected, the output state of the comparator 22 is asserted to the low level, thereby activating the negative logic AND gates G1 and G2. At this time, the address bus 19
Logic AND gate G1 according to the state of address A0 of
Alternatively, the output of G2 is asserted to the low level, whereby the output buffer 23 or the output buffer 24 is enabled. When the output buffer 23 is enabled, the upper 8 bits of the restart address are formed, and when the output buffer 24 is enabled, the lower 8 bits of the address are formed. The fourth bit of the input terminals 0 to 7 of the output buffer 24,
The signals of break factors 1, 2, and 3 from the break detection circuit 35 are input to the 5th and 6th bits, and the restart address can be switched even if a plurality of break factors occur. It is said that. The restart address thus generated according to the break factor is fetched by the microprocessor 31 via the data bus 20. In order to prevent the restart address output to the data bus 20 from being destroyed, during the period in which the output buffer 23 and the output buffer 24 are enabled,
All buffers (not shown) coupled to the data bus 20 are in a high impedance state.
【0022】上記実施例によれば以下の作用効果が得ら
れる。According to the above embodiment, the following operational effects can be obtained.
【0023】(1)マイクロプロセッサ31が例外処理
アドレスの内容をフェッチする際の当該例外処理アドレ
スを、ベクタ生成回路40によりそのときのブレーク要
因に応じて生成し、上記例外処理後のリスタートアドレ
スをブレーク要因毎に異ならせることにより、ブレーク
要因解析におけるソフトウェアの介入が不要とされるの
で、ブレーク処理の高速化が達成される。(1) When the microprocessor 31 fetches the contents of the exception processing address, the exception processing address is generated by the vector generation circuit 40 according to the break factor at that time, and the restart address after the exception processing is performed. By differentiating each of the break factors, software intervention in the break factor analysis is not required, so that the break processing can be speeded up.
【0024】(2)また、ブレーク要因を検出するため
のブレーク検出回路35と、上記マイクロプロセッサが
例外処理アドレスをフェッチする際の当該例外処理アド
レスを、上記ブレーク検出回路35の検出結果に基づい
て生成することにより、当該例外処理後のリスタートア
ドレスをブレーク要因毎に異ならせるためのベクタ生成
回路40とを含んでエミュレータを構成することによ
り、当該エミュレータにおいて、ブレーク要因解析にお
けるソフトウェアの介入が不要とされるので、ブレーク
処理の高速化、さらにはそのようにブレーク処理が高速
化されることによりシステムデバッグに要する時間短縮
が可能とされる。(2) Based on the detection result of the break detection circuit 35, the break detection circuit 35 for detecting the break factor and the exception processing address when the microprocessor fetches the exception processing address are determined. By configuring the emulator by including the vector generation circuit 40 for making the restart address after the exception handling different for each break factor, software intervention in the break factor analysis is unnecessary in the emulator. Therefore, it is possible to shorten the time required for system debugging by speeding up the break processing and further speeding up the break processing.
【0025】(3)従来のブレーク方式においては、割
込み入力あるいはインタラプト命令実行の例外処理によ
るスタック前にマイクロプロセッサの動作空間をユーザ
プログラム実行状態からエミュレータ制御状態に切換
え、ブレーク発生時にエミュレータのステータスレジス
タにブレーク要因を示す情報をセットするようにした
が、上記実施例では、ブレーク要因解析におけるソフト
ウェアの介入が不要とされるので、ブレーク要因を示す
情報をセットするためのステータスレジスタが、不要と
される。(3) In the conventional break method, the operating space of the microprocessor is switched from the user program execution state to the emulator control state before stacking due to interrupt input or exception processing of interrupt instruction execution, and the emulator status register is generated when a break occurs. Although the information indicating the break factor is set in the above, since the software intervention in the break factor analysis is unnecessary in the above embodiment, the status register for setting the information indicating the break factor is unnecessary. It
【0026】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。Although the invention made by the present inventor has been concretely described based on the embodiments, the present invention is not limited thereto, and needless to say, various modifications can be made without departing from the scope of the invention. Yes.
【0027】例えば、上記実施例ではアドレスバス19
を16ビット構成とし、データバス20を8ビット構成
としたものについて説明したが、それに限定されるもの
ではなく、例えば32ビット構成とすることもできる。
また、ベクタ生成回路40によるリスタートアドレス生
成において、ブレーク要因に優先順位を付け、その優先
順位の最も高いものを出力バッファ24に取込むように
構成してもよい。さらに、複数種類のブレーク要因に対
応するようにエミュレーション用プロセッサに複数の割
込み端子を設け、ブレーク要因別に異なる割込み端子を
介して当該プロセッサに対する割込み信号をアサートす
るように構成しても、上記実施例と同様な効果を得るこ
とができる。For example, in the above embodiment, the address bus 19
16 has a 16-bit configuration and the data bus 20 has an 8-bit configuration. However, the configuration is not limited to this, and a 32-bit configuration, for example, is also possible.
Further, in the restart address generation by the vector generation circuit 40, the break factors may be prioritized and the one having the highest priority may be taken into the output buffer 24. Further, even if the emulation processor is provided with a plurality of interrupt terminals so as to correspond to a plurality of types of break factors and the interrupt signal to the processor is asserted via the interrupt terminals different for each break factor, The same effect as can be obtained.
【0028】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるエミュ
レータに適用した場合について説明したが、本発明はそ
れに限定されるものではなく、デバッグ対象プログラム
のシステムデバッグを可能とする各種デバッグシステム
に広く適用することができる。In the above description, the case where the invention made by the present inventor is mainly applied to an emulator which is a field of use which is the background of the invention has been described, but the present invention is not limited thereto, and the program to be debugged is not limited thereto. It can be widely applied to various debug systems that enable system debugging.
【0029】本発明は、少なくとも例外処理を使用して
マイクロプロセッサの動作状態の切換えを行うことを条
件に適用することができる。The present invention can be applied on the condition that at least exception processing is used to switch the operating state of the microprocessor.
【0030】[0030]
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.
【0031】すなわち、マイクロプロセッサが例外処理
アドレスの内容をフェッチする際の当該例外処理アドレ
スを、ハードウェアによりそのときのブレーク要因に応
じて生成し、上記例外処理後のリスタートアドレスをブ
レーク要因毎に異ならせることにより、ブレーク要因解
析におけるソフトウェアの介入が不要とされ、それによ
りブレーク処理の高速化が達成される。That is, the exception processing address when the microprocessor fetches the contents of the exception processing address is generated by the hardware according to the break factor at that time, and the restart address after the exception processing is generated for each break factor. The software intervention in the break factor analysis is unnecessary by making the difference between the two, and thereby the break processing can be speeded up.
【図1】本発明の一実施例であるエミュレータの構成ブ
ロック図である。FIG. 1 is a configuration block diagram of an emulator that is an embodiment of the present invention.
【図2】上記エミュレータにおける主要部の構成ブロッ
ク図である。FIG. 2 is a configuration block diagram of a main part of the emulator.
【図3】上記エミュレータにおけるブレーク要因別のリ
スタートアドレスの説明図である。FIG. 3 is an explanatory diagram of restart addresses for each break factor in the emulator.
11 空間切換えUSER信号 12 NMI割込み信号 13 システムバス 14 ホストCPU 15 システムメモリ 16 I/Oインタフェース部 17 ディスク 18 CRTディスプレイ 19 アドレスバス 20 データバス 21 コンパレータ 22 コンパレータ 23 出力バッファ 24 出力バッファ 31 マイクロプロセッサ 32 エミュレーションバス 33 エミュレーション制御部 34 メモリ 35 ブレーク検出回路 36 トレースメモリ 37 エミュレーションメモリ 38 ユーザインタフェース部 39 ICソケット 40 ベクタ生成回路 11 space switching USER signal 12 NMI interrupt signal 13 system bus 14 host CPU 15 system memory 16 I / O interface section 17 disk 18 CRT display 19 address bus 20 data bus 21 comparator 22 comparator 23 output buffer 24 output buffer 31 microprocessor 32 emulation Bus 33 Emulation control unit 34 Memory 35 Break detection circuit 36 Trace memory 37 Emulation memory 38 User interface unit 39 IC socket 40 Vector generation circuit
Claims (3)
システム空間に移行され、ベクタ領域からリスタートア
ドレスをフェッチするように動作されるマイクロプロセ
ッサの動作制御方式であって、マイクロプロセッサが例
外処理アドレスをフェッチする際の当該例外処理アドレ
スを、ハードウェアによりそのときのブレーク要因に応
じて生成し、上記例外処理後のリスタートアドレスをブ
レーク要因毎に異ならせることを特徴とする、マイクロ
プロセッサの動作制御方式。1. An operation control method of a microprocessor which is moved from a user space to a system space when a break condition is satisfied and is operated so as to fetch a restart address from a vector area, wherein the microprocessor fetches an exception processing address. An operation control method of a microprocessor, characterized in that the exception processing address at the time of occurrence is generated by hardware according to the break factor at that time, and the restart address after the exception processing is made different for each break factor. ..
若しくはインタラプト命令を実行した後に上記例外処理
アドレスをフェッチする請求項1記載のプロセッサの動
作制御方式。2. The microprocessor comprises an interrupt input,
Alternatively, the processor operation control system according to claim 1, wherein the exception processing address is fetched after executing an interrupt instruction.
ゲットプログラムをマイクロプロセッサに実行させるこ
とにより、ターゲットシステム上で動作するソフトウェ
アの開発支援を可能とするエミュレータにおいて、ブレ
ーク要因を検出するためのブレーク検出回路と、上記マ
イクロプロセッサが例外処理アドレスの内容をフェッチ
する際の当該例外処理アドレスを、上記ブレーク検出回
路の検出結果に基づいて生成することにより、当該例外
処理後のリスタートアドレスをブレーク要因毎に異なら
せるためのベクタ生成回路とを含むことを特徴とするエ
ミュレータ。3. A break detection circuit for detecting a break factor in an emulator capable of supporting development of software operating on a target system by causing a microprocessor to execute a target program to be software-debugged. By generating the exception handling address when the microprocessor fetches the contents of the exception handling address based on the detection result of the break detection circuit, the restart address after the exception handling is different for each break factor. An emulator including a vector generating circuit for causing the emulator.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4006202A JPH05189267A (en) | 1992-01-17 | 1992-01-17 | Operation control system for microprocessor and emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4006202A JPH05189267A (en) | 1992-01-17 | 1992-01-17 | Operation control system for microprocessor and emulator |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05189267A true JPH05189267A (en) | 1993-07-30 |
Family
ID=11631957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4006202A Withdrawn JPH05189267A (en) | 1992-01-17 | 1992-01-17 | Operation control system for microprocessor and emulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05189267A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6742142B2 (en) | 1999-12-27 | 2004-05-25 | Kabushiki Kaisha Toshiba | Emulator, a data processing system including an emulator, and method of emulation for testing a system |
-
1992
- 1992-01-17 JP JP4006202A patent/JPH05189267A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6742142B2 (en) | 1999-12-27 | 2004-05-25 | Kabushiki Kaisha Toshiba | Emulator, a data processing system including an emulator, and method of emulation for testing a system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR0168656B1 (en) | Data processing system | |
US5796984A (en) | Operating system independent apparatus and method for eliminating peripheral device functions | |
EP0702297A1 (en) | A data processor with breakpoint circuit and method therefor | |
EP0530816A2 (en) | Microprocessor with cache memory and trace analyzer therefor | |
JPH05189267A (en) | Operation control system for microprocessor and emulator | |
JP2760228B2 (en) | Microprocessor with built-in cache memory and its trace analyzer | |
JP2525492B2 (en) | Programmable controller | |
JPS62197831A (en) | Data processor | |
JP3068578B2 (en) | In-circuit emulator and saturation calculation processing method | |
JPH05173830A (en) | Abnormal operation detecting method and emulator | |
JP2808757B2 (en) | Microprocessor for debugging | |
JP2002163126A (en) | Event detecting circuit embedded in debugging cpu, event detecting method, and external peripheral circuit | |
JPH11102306A (en) | Emulator | |
JPS63271542A (en) | Rom debugger | |
JPS59202546A (en) | Debugging device | |
JPH08328903A (en) | Microprocessor and emulator | |
JPH0795288B2 (en) | Microcomputer | |
JPH0635760A (en) | Buffer device with tracing function | |
JP2001318802A (en) | In-circuit emulator | |
JP2002268916A (en) | Method and device for verifying program | |
JPH04199336A (en) | Microcomputer | |
JPS62168243A (en) | Emulator | |
JPH05216666A (en) | Stack control method and emulator | |
JPS6382525A (en) | Microprocessor with tracing function | |
JPH0793180A (en) | Microprocessor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990408 |