JPH01217524A - Data processing system - Google Patents

Data processing system

Info

Publication number
JPH01217524A
JPH01217524A JP63042063A JP4206388A JPH01217524A JP H01217524 A JPH01217524 A JP H01217524A JP 63042063 A JP63042063 A JP 63042063A JP 4206388 A JP4206388 A JP 4206388A JP H01217524 A JPH01217524 A JP H01217524A
Authority
JP
Japan
Prior art keywords
memory
data processing
accessed
tmpu
processor
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
JP63042063A
Other languages
Japanese (ja)
Inventor
Yutaka Sato
豊 佐藤
Hideyuki Usuha
薄葉 英幸
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP63042063A priority Critical patent/JPH01217524A/en
Publication of JPH01217524A publication Critical patent/JPH01217524A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To attain the display, etc., of a vicariously executing memory without affecting the execution of a user program and to secure immediacy by dividing an emulation memory into plural memory banks and controlling accesses to respective memories. CONSTITUTION:The emulsion memory, which stores the user program to be executed by a target processor TMPU and data, is divided into two memory banks EMEM0 and EMEM1. The EMEM0 is allocated to an even number address space and the EMEM1 is allocated to an odd number address space for the respective memory banks even with being observed from either the TMPU to a host processor HMPU. Namely, the bank to be accessed by an even number address can be accessed from the HMPU during the access of the odd number address of the TMPU and the bank to be accessed by the odd number address of the TMPU can be accessed from the HMPU during the access of the even number address. Accordingly, without stopping the operation of the TMPU, the access can be executed from the emulation memory from the HMPU.

Description

【発明の詳細な説明】 [産業上の利用分野コ 本発明は、システムデバッグ技術さらにはデバッグ対象
とされるプログラムの効率を評価する技術に関し、例え
ばインサーキット・エミュレータに適用して有効な技術
に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a system debugging technique and a technique for evaluating the efficiency of a program to be debugged, and relates to a technique that is effective when applied to, for example, an in-circuit emulator. It is something.

[従来の技術] マイクロコンピュータ応用機器の開発において、その応
用システム°のデバッグやそのシステムの詳細な評価を
行なうため、インサーキット・エミュレータが使用され
ている。断るインサーキット・エミュレータ2は、第2
図に示すごとく、ソフトウェア開発用の親計算機(ホス
トコンピュータ)などのシステム開発装置1と、開発中
の応用機器3との間に接続され、その応用機器に含まれ
るマイクロコンピュータ(ターゲット・マイクロコンピ
ュータ)の機能を代行する一方でデバッガ−としての機
能を持ち、詳細なシステムデバッグを支援するマイクロ
コンピュータシステム開発ツールである。 。
[Prior Art] In the development of microcomputer application equipment, in-circuit emulators are used to debug the application system and perform detailed evaluation of the system. Decline in-circuit emulator 2 is the second
As shown in the figure, a microcomputer (target microcomputer) is connected between a system development device 1 such as a parent computer (host computer) for software development and an application device 3 under development, and is included in the application device 3. It is a microcomputer system development tool that acts as a debugger and supports detailed system debugging. .

従来のインサーキット・エミュレータは、第3図に示す
ように、ターゲットマイクロコンピュータの機能を代行
するエミュレーション用のスレーブマイクロコンピュー
タ11と、エミュレーションや各種デバッグ機能を実現
するためのエミュレーション制御部12、プログラムの
実行やトレースの停止条件を設定し、条件が成立したと
きにプログラムもしくはトレースを停止させるブレーク
ポイント制御部13、トレースメモリ部14、応用機器
(ユーザシステム)のメモリが用意されていない場合に
貸し出される代行メモリ部15.3計算機とマイクロコ
ンピュータ間でデータ通信を行なうためのシリアルイン
タフェース16及びそれらの制御を司るためのマスクマ
イクロコンピュータ17などが内蔵されてなる。(昭和
59年11月30日オーム社発行のrLSIハンドブッ
ク」p562乃至p563参照)。
As shown in FIG. 3, a conventional in-circuit emulator includes a slave microcomputer 11 for emulation that performs the functions of a target microcomputer, an emulation control unit 12 for realizing emulation and various debugging functions, and a program controller. A breakpoint control unit 13 that sets execution or trace stop conditions and stops the program or trace when the conditions are met, a trace memory unit 14, and is lent when the application equipment (user system) memory is not available. Proxy memory section 15.3 includes a built-in serial interface 16 for data communication between the computer and the microcomputer, a mask microcomputer 17 for controlling them, and the like. (Refer to "rLSI Handbook" published by Ohm Publishing, November 30, 1980, p.562 to p.563).

斯るインサーキラ1−・エミュレータは、その本体から
延長されたケーブル4の先端が、応用機器に設けられた
ターゲットマイクロコンピュータ用ソケ71へ5に結合
されることにより、上記スレーブマイクロコンピュータ
11がターゲットマイクロコンピュータの機能を代行す
るようなエミュレーション機能を備える。更に、エミュ
レーション実行中に各種データやステータメ信号などを
サンプリングし、それをトレース用メモリ15などに格
納するトレース機能や、スレーブマイクロコンピュータ
11による応用機器の制御動作を停止させるブレーク機
能などを備えており、これらの機能を用いてトレースデ
ータを取得し、それを解析することで応用システムやユ
ーザプログラムのデバッグを行なうことができる。
In such an incircler emulator, the slave microcomputer 11 can be connected to a target microcomputer by connecting the tip of a cable 4 extending from the main body to a socket 71 for a target microcomputer provided in an application device. It has an emulation function that takes over the functions of a computer. Furthermore, it is equipped with a trace function that samples various data and status signals during emulation execution and stores them in a trace memory 15, etc., and a break function that stops the control operation of the application equipment by the slave microcomputer 11. By using these functions to acquire trace data and analyzing it, it is possible to debug application systems and user programs.

[発明が解決しようとする課題] 従来のエミュレータは、ユーザプログラムやデータが格
納された代行メモリの内容を表示させたり変更したりす
る場合に、ターゲットプロセッサによるユーザプログラ
ムの実行を一時中断させてホストプロセッサもしくはタ
ーゲットプロセッサにより代行メモリをアクセスせざる
を得なかった。
[Problem to be Solved by the Invention] When a conventional emulator displays or changes the contents of a proxy memory in which a user program or data is stored, the execution of the user program by the target processor is temporarily interrupted and the host Delegated memory had to be accessed by the processor or target processor.

そのため、従来方式ではエミュレーション中に代行メモ
リの内容の表示や変更を行なうと、ユーザプログラムが
停止して、例えばターゲットマイクロコンピュータがサ
ーボモータを制御しているような場合にはモータが暴走
したり、データ転送中であればオーバランエラーを起こ
して重要なデータが消滅したり、またウォッチドッグタ
イマを使用したシステムではタイムアウトにより割込み
ルーチンヘジャンプしてしまうなどして、システムが回
復困難な状態に陥るおそれがあるという問題点があった
Therefore, in the conventional method, if the contents of the proxy memory are displayed or changed during emulation, the user program will stop, and if the target microcomputer is controlling a servo motor, the motor may run out of control. If data is being transferred, an overrun error may occur and important data may be lost, or in a system that uses a watchdog timer, a timeout may cause the system to jump to an interrupt routine, leaving the system in a state where it is difficult to recover. There was a problem that there was.

この発明の前記ならびにそのほかの目的と新規な特徴に
ついては、本明細書の記述および添附図面から明らかに
なるであろう。
The above and other objects and novel features of the present invention will become apparent from the description of this specification and the accompanying drawings.

本発明の目的はエミュレーションシステムにおいて、ユ
ーザプログラムの実行に影響を与えることなく代行メモ
リの表示や変更を行なえるようにしてリアルタイ11性
を確保することにある。
An object of the present invention is to ensure real-time performance in an emulation system by making it possible to display and change proxy memory without affecting the execution of a user program.

[課題を解決するための手段] 本願において開示される発明のうち代表的なものの概要
を説明すれば、下記のとおりである。
[Means for Solving the Problems] Representative inventions disclosed in this application will be summarized as follows.

すなわち、エミュレーションのターゲットとなるシステ
ムのメモリを代行し、デバッグ対象となるプログラムが
格納されるメモリを2つのバンクに分割するとともに、
各バンクに対してマルチプレクサを付加し、ホストプロ
セッサとターゲットプロセッサのいずれの側からもアク
セス可能とし、この切換えをターゲットプロセッサより
出力されるアドレス信号の最下位により行なうようにす
るものである。
In other words, it takes over the memory of the system that is the target of emulation, divides the memory in which the program to be debugged is stored into two banks, and
A multiplexer is added to each bank so that it can be accessed from either the host processor or the target processor, and this switching is performed by the lowest address signal output from the target processor.

[作用コ 偶数アドレスによりアクセスされるバンクは。[Action Co. Banks accessed by even addresses are:

ターゲットプロセッサの奇数アドレスのアクセス中にホ
ストプロセッサよりアクセス可能であり。
Can be accessed by the host processor while accessing odd addresses of the target processor.

ターゲットプロセッサの奇数アドレスによりアクセスさ
れるバンクは、偶数アドレスのアクセス中にホストプロ
セッサよりアクセス可能であるため、ターゲットプロセ
ッサの動作を停止させることなくエミュレーションメモ
リに対してホストプロセッサ側のアクセスが可能となる
Banks accessed by odd addresses of the target processor can be accessed by the host processor while accessing even addresses, so the emulation memory can be accessed by the host processor without stopping the operation of the target processor. .

[実施例] 以下本発明の一実施例について説明する。[Example] An embodiment of the present invention will be described below.

まず本実施例に係るエミュレータシステムの構成を第1
図に示すブロック図に従い説明する。
First, the configuration of the emulator system according to this embodiment is explained in the first section.
The explanation will be given according to the block diagram shown in the figure.

第1図において、符号HM P Uで示されていのは、
エミュレータシステム全体の制御を行なうホストプロセ
ッサである。また符号T M P Uで示されているの
は、ターゲットプロセッサでこのターゲットプロセッサ
TMPUは、ユーザの開発したマイクロプロセッサ応用
システム(図示省略)内のマイクロプロセッサの機能を
代行しユーザプログラムを実行する。
In FIG. 1, the symbol HMPU is shown as
This is a host processor that controls the entire emulator system. Further, the reference numeral TMPU indicates a target processor, and this target processor TMPU executes a user program by acting as a microprocessor in a microprocessor application system (not shown) developed by a user.

この実施例では、ターゲットプロセッサTMPUの実行
するユーザプログラム及びデータを格納するエミュレー
ションメモリが2つのメモリバンクEMEMOおよびE
MEMIに分割され、ボストプロセッサI−I M P
 UとターゲットプロセッサTMPUのいずれの側から
もアクセスできるようにマルチプレクサMPX3を介し
てホストデータバスHD BとターゲットデータバスT
DBにそれぞれ接続されている。しかも、2つのメモリ
バンクE M E M O!;よびEMEMIは、いず
れのプロセッサより見ても偶数アドレス空間にメモリバ
ンクEMEMOが、また奇数アドレス空間にはメモリバ
ンクEMEMIが割り付けられている。
In this embodiment, the emulation memory for storing user programs and data to be executed by the target processor TMPU is comprised of two memory banks EMEMO and EMEMO.
divided into MEMI and boss processor I-I M P
The host data bus HD B and the target data bus T are connected via multiplexer MPX3 so that they can be accessed from either side of U and the target processor TMPU.
Each is connected to the DB. Moreover, two memory banks E M E M O! ; and EMEMI, the memory bank EMEMO is allocated to the even address space and the memory bank EMEMI is allocated to the odd address space from the perspective of any processor.

マルチプレクサMPX4〜MPX7は、2つのメモリバ
ンクEMEMO,EMEMIとターゲットアドレスバス
TABとホストデータバスHDBの接続を切り換える。
Multiplexers MPX4 to MPX7 switch connections between the two memory banks EMEMO and EMEMI, the target address bus TAB, and the host data bus HDB.

これらのマルチプレクサMPX4〜MPX7および上記
マルチプレクサMPXO−MPX3の切り換えはターゲ
ットプロセッサTMPUから出力されるアドレス信号の
最下位ビットTAOにより行なうようにされている。す
なわち、アドレス最下位ビットTAOが0” (偶数ア
ドレス)の時は、ターゲットプロセッサTMPUと偶数
側メモリバンクEMEMO,ホストプロセッサHM P
 Uと奇数側メモリバンクE M E M 1を接続し
、アドレス最下位ビットTAOが1 (奇数アドレス)
の時は、TMPUとEMEMI、HMPUとEMEMO
をそれぞれ接続する。
These multiplexers MPX4 to MPX7 and the multiplexers MPXO to MPX3 are switched by the least significant bit TAO of the address signal output from the target processor TMPU. That is, when the lowest address bit TAO is 0" (even address), the target processor TMPU, the even memory bank EMEMO, and the host processor HM P
Connect U to the odd memory bank E M E M 1, and the lowest address bit TAO is 1 (odd address)
At the time, TMPU and EMEMI, HMPU and EMEMO
Connect each.

ラッチ回路LATO−LAT3は、ホストプロセッサ)
(M P Uのアドレス空間に配置されたラッチ回路で
あり、ターゲットプロセッサHM P Uによるメモリ
バンクEMEM0.1へのアクセスはこれらの7ラツチ
回路を介してターゲットプロセッサTMPUのタイミン
グと同期して行なわれ、上記ラッチ回路LATO〜LA
T3のうちLATOはメモリバンクEMEM0.1への
ライトデータを、LATIはメモリバンクEMEM0.
1よりのリードデータを、またLAT2はデータ転送の
方向を、LAT3はアクセスするアドレスをそれぞれ保
持する。
The latch circuit LATO-LAT3 is the host processor)
(This is a latch circuit arranged in the address space of MPU, and access to memory bank EMEM0.1 by target processor HMPU is performed via these 7 latch circuits in synchronization with the timing of target processor TMPU. , the above latch circuit LATO~LA
Of T3, LATO writes write data to memory bank EMEM0.1, and LATI writes data to memory bank EMEM0.1.
1, LAT2 holds the data transfer direction, and LAT3 holds the address to be accessed.

タイミングコントローラC0NTは、ターゲットプロセ
ッサTMPUからのバス使用信号T 、A Sや、TM
PUまたはHMPUから出力されるアドレス信号の最下
位LAO,TAOに基づいてメモリバンクEMEM0.
1のチップセレクト信号C○N”l”、C0NTlおよ
びラッチ回路LAT2のラッチ信号C0NT2を作成す
る。
The timing controller C0NT receives bus use signals T, AS, and TM from the target processor TMPU.
Memory bank EMEM0.
1 chip select signal C○N"l", C0NTl and latch signal C0NT2 of latch circuit LAT2 are created.

ホストデコーダHD E CはホストプロセッサHMP
Uから出力されるアドレス信号をデコードしてホスト側
のアドレス空間に存在するラッチ回路LATO−LAT
3および上記タイミングコントローラC0NTをセレク
トする信号HS O−HS4を作成する。
The host decoder HDEC is the host processor HMP
A latch circuit LATO-LAT that decodes the address signal output from U and exists in the address space on the host side.
3 and the signals HS O-HS4 for selecting the timing controller C0NT are created.

一方、ターゲットデコーダTDECはターゲットプロセ
ッサTMPUから出力されるアドレス信号に基づいてタ
ーゲット側のアドレス空間のうちメモリバンクEM’E
MO,lの存在する範囲をデコードし、マルチプレクサ
MPX3の出力タイミングを制御する信号TSOを作成
する。
On the other hand, the target decoder TDEC decodes the memory bank EM'E in the address space on the target side based on the address signal output from the target processor TMPU.
The range in which MO,l exists is decoded to create a signal TSO that controls the output timing of multiplexer MPX3.

以上のように構成されたエミュレータシステムにおいて
ターゲットプロセッサTMPUがメモリバンクEMEM
0.1をアクセスする場合には、まず、アクセスするア
ドレスをターゲットアドレスバスTAB上に、またアク
セスの方向すなわちリードまたはライトを指定する信号
をリードライトバスTR/W上に出力し、次にバスの使
用中を示す信号TASをアサートする。この時出力され
たアドレス信号の最下位ビットTAOがII OIIな
らばバスTAB、TR/W上の信号はそれぞれマルチプ
レクサMPX5.MPX4を介して偶数側メモリバンク
EMEMOに与えられる。この時リード・ライト信号T
R/Wが“O”ならばターゲットプロセッサTMPUよ
りデータバスTDB上に出力されたライトデータは、マ
ルチプレクサMPXOを介してメモリバンクEMEMO
に供給され書き込まれる。一方、リード・ライト信号T
R/Wが1”ならばメモリバンクEMEMOより読み出
されたリードデータはマルチプレクサMPX3を介して
ターゲットデータバスTDB上に出力される。またアド
レス信号の最下位ビットTAOがIt I IIの時は
マルチプレクサM P X 7 、 M PI3.MP
XI、MPX3を介して奇数側メモリバンクE M E
 M 1が同様にアクセスされる。
In the emulator system configured as described above, the target processor TMPU is connected to the memory bank EMEM.
0.1, first output the address to be accessed onto the target address bus TAB and a signal specifying the access direction, read or write, onto the read/write bus TR/W. Asserts the signal TAS indicating that it is in use. If the least significant bit TAO of the address signal output at this time is II OII, the signals on buses TAB and TR/W are respectively sent to multiplexers MPX5. It is applied to the even-numbered memory bank EMEMO via MPX4. At this time, read/write signal T
If R/W is “O”, the write data output from the target processor TMPU onto the data bus TDB is sent to the memory bank EMEMO via the multiplexer MPXO.
is supplied and written to. On the other hand, read/write signal T
If R/W is 1", the read data read from the memory bank EMEMO is output onto the target data bus TDB via the multiplexer MPX3. Also, when the lowest bit TAO of the address signal is It I II, the read data read from the memory bank EMEMO is output to the target data bus TDB via the multiplexer MPX3. M P X 7, M P I3.MP
Odd number side memory bank E M E via XI and MPX3
M1 is similarly accessed.

次にホストプロセッサHMPUがメモリバンクEMEM
0.1をアクセスする場合の動作を説明する。
Next, the host processor HMPU connects the memory bank EMEM.
The operation when accessing 0.1 will be explained.

まずホストプロセッサHMPUはタイミングコントロー
ラC0NTからの制御信号Q4を監視しQ4がII O
IIとなるのを待つ。制御信号Q4はアクセスしようと
するメモリバンクの使用状態を表わすフラグで、Q4が
II O”の時ホストプロセッサI−(M P Uによ
るメモリのアクセスが可能であることを表わし、Q4が
LL I IIの時はアクセスが不能であることを表わ
す。ただし、初期状態はQ4=10”である。
First, the host processor HMPU monitors the control signal Q4 from the timing controller C0NT, and Q4
Wait until it becomes II. The control signal Q4 is a flag indicating the usage state of the memory bank to be accessed.When Q4 is ``II O'', it indicates that the memory can be accessed by the host processor I-(MPU), and when Q4 is LL I II When , it indicates that access is impossible. However, the initial state is Q4=10''.

制御信号Q4がOになると、ホストプロセッサI−I 
M P Uはラッチ回路LAT3にアドレスを、またラ
ッチ回路LAT2にアクセスの方向(リード/ライト)
を、それぞれ設定する。そして、ラッチ回路LAT2を
ライト状態に指定したときは、ライトデータをラッチ回
路LATOに設定する。
When the control signal Q4 becomes O, the host processor I-I
MPU provides the address to the latch circuit LAT3 and the direction of access (read/write) to the latch circuit LAT2.
Set each. When the latch circuit LAT2 is designated to the write state, write data is set in the latch circuit LATO.

しかる後、ホストプロセッサHMPUはタイミングコン
トローラC0NTの入力端子D4に“1”を入力してタ
イミングコントローラC0NTを起動する。タイミング
コントローラC0NTは起動とともに制御信号Q4を“
1”としてアクセス不能をホストプロセッサII M 
P Uに知らせる。
Thereafter, the host processor HMPU inputs "1" to the input terminal D4 of the timing controller C0NT to start the timing controller C0NT. Timing controller C0NT outputs control signal Q4 at startup.
1” as inaccessible to the host processor II M
Notify PU.

これとともに、タイミングコントローラC0NTは、起
動されるとラッチ回路LAT3の最下位ビットLAOと
ターゲットプロセッサTMPUのアドレス最下位ビット
TΔOおよびバス使用信号TASを監視り、(LAO@
TAO)−TAS=1となるのを待つ。すなわちホスト
プロセッサトlMPUが偶数アドレスをアクセスしたい
時はターゲットプロセッサTMPUが奇数アドレスをア
クセスするのを待ち、ホストプロセッサHM P Uが
奇数アドレスをアクセスしたい時はターゲットプロセッ
サTMPUが偶数アドレスをアクセスするのを待つ。こ
の条件が成立したときにホストプロセッサHM P T
JによるメモリバンクEMEM0,1のアクセスが可能
となる。
At the same time, when activated, the timing controller C0NT monitors the least significant bit LAO of the latch circuit LAT3, the least significant bit TΔO of the address of the target processor TMPU, and the bus use signal TAS, and (LAO@
Wait until TAO)-TAS=1. In other words, when the host processor HMPU wants to access an even address, it waits for the target processor TMPU to access an odd address, and when the host processor HMPU wants to access an odd address, it waits for the target processor TMPU to access an even address. wait. When this condition is met, the host processor HM P T
Memory banks EMEM0 and EMEM1 can now be accessed by J.

前記の条件が成立したときタイミングコントローラC0
NTは、アドレス最下位ビットTAOがIt OIIな
らば制御信号C0NT1を、またTAOがII I I
Tならば制御信号C0NTOをアサートし。
When the above conditions are met, the timing controller C0
NT outputs the control signal C0NT1 if the address least significant bit TAO is It OII, and if TAO is II I I
If T, assert control signal C0NTO.

メモリバンクEMEMIまたはメモリバンクEMEMO
のアクセスを可能とする。またラッチ回路LAT2にリ
ード状態が設定された時は、これと同時に制御信号C0
NT2をアサートしてメモリバンクEMEM0.1から
のリードデータをラッチ回路LAT1にラッチする。
Memory bank EMEMI or memory bank EMEMO
access. Also, when the latch circuit LAT2 is set to the read state, at the same time, the control signal C0
NT2 is asserted to latch the read data from memory bank EMEM0.1 into latch circuit LAT1.

ターゲットプロセッサTMPUのバス使用が終わりバス
使用信号TASがネゲート(非使用状態を示すレベル)
されると、コントローラC0NTは制御信号C0NTO
〜C0NT2をネゲートにし、メモリバンクEMEM0
.1のアクセスを終了させる。また同時に制御信号Q4
を′0″としホストプロセッサHMPUにアクセスの終
了を通知する。
When target processor TMPU has finished using the bus, bus use signal TAS is negated (level indicating non-use state).
When the controller C0NT outputs the control signal C0NTO
~ Negate C0NT2 and save memory bank EMEM0
.. 1's access is terminated. At the same time, control signal Q4
is set to '0' and notifies the host processor HMPU of the end of the access.

一方、ホストプロセッサHMPUは、ラッチ回路LAT
2にリードが設定された時はタイミングコントローラC
0NTの出力Q4がII O11となるのを待ってから
ラッチ回路LAT1をリードし。
On the other hand, the host processor HMPU has a latch circuit LAT.
When lead is set to 2, timing controller C
After waiting for the output Q4 of 0NT to become II O11, the latch circuit LAT1 is read.

メモリバンクEMEM0.1からのデータを得ることが
できる。
Data can be obtained from memory bank EMEM0.1.

このように上記実施例においては、ターゲットプロセッ
サとホストプロセッサのエミュレーションメモリに対す
るアクセス要求が競合した場合、必ずターゲットプロセ
ッサを優先し、ターゲットプロセッサによる一方のメモ
リのアクセスが開始されてから、ホストプロセッサによ
る他方のメモリのアクセスを許可するようにコントロー
ラが制御を行なうようになっている。
In this way, in the above embodiment, when access requests to the emulation memory between the target processor and the host processor conflict, the target processor is always given priority, and after the target processor starts accessing one memory, the host processor starts accessing the other memory. The controller takes control to allow access to the memory.

以上説明したように上記実施例においては、エミュレー
ションのターゲットとなるシステムのメモリを代行し、
デバッグ対象となるプログラムが格納されるメモリを2
つのバンクに分割するとともに、各バンクに対してマル
チプレクサを付加し、ホストプロセッサとターゲットプ
ロセッサのいずれの側からもアクセス可能とし、この切
換えをターゲットプロセッサより出力されるアドレス信
号最下位により行なうようにしたので、ターゲットプロ
セッサによりユーザプログラムを実行しているとき、タ
ーゲットプロセッサが偶数アドレスのメモリバンクをア
クセスしているバスサイクルではホストプロセッサが奇
数アドレスのメモリバンクを、また、ターゲットプロセ
ッサが奇数アドレスをアクセスしているバスサイクルに
おいては、ホストプロセッサが偶数アドレスのメモリバ
ンクに対してそれぞれアクセスが可能となる。従ってタ
ーゲットプロセッサによるユーザプログラム実行を停止
することなくホストプロセッサによるエミュレーション
メモリのアクセスが可能となる。
As explained above, in the above embodiment, the memory of the system that is the target of emulation is substituted,
2. Memory where the program to be debugged is stored.
In addition to dividing the system into two banks, a multiplexer was added to each bank so that it could be accessed from either the host processor or the target processor, and this switching was performed by the lowest address signal output from the target processor. Therefore, when a user program is being executed by the target processor, in bus cycles in which the target processor is accessing memory banks with even addresses, the host processor is accessing memory banks with odd addresses, and the target processor is accessing memory banks with odd addresses. In the bus cycle during which the host processor is accessed, each of the memory banks at even addresses can be accessed. Therefore, the emulation memory can be accessed by the host processor without stopping the execution of the user program by the target processor.

これによって、ユーザプログラム実行中にエミュレーシ
ョンメモリの内容をユーザプログラム実行を停止するこ
となく表示したり変更したりすることができるようにな
る。その結果、エミュレータによるシステムデバッグや
システム評価の効率が著しく向上されるという効果があ
る。
This makes it possible to display or change the contents of the emulation memory during execution of the user program without stopping execution of the user program. As a result, the efficiency of system debugging and system evaluation using the emulator is significantly improved.

以上本発明者によってなされた発明を実施例に基づき具
体的に説明したが、本発明は上記実施例に限定されるも
のではなく、その要旨を逸脱しない範囲で種々変更可能
であることはいうまでもない。例えば、上記実施例では
ホストプロセッサHMPUがエミュレーションメモリE
MEMO,EMEMIをアクセスするためのアドレスは
、ホストデータバスHDBを介してラッチ回路LAT3
に一旦ラッチさせてからメモリに供給するように構成さ
れているが、ホストアドレスバスHABを介して各メモ
リに与えるようにすることも可能である。 また、上記
実施例ではエミュレーションメモリを2つのメモリバン
クに分割しているが、3つ以上のバンクに分割するよう
にしてもよい。
Although the invention made by the present inventor has been specifically explained above based on Examples, it goes without saying that the present invention is not limited to the above Examples and can be modified in various ways without departing from the gist thereof. Nor. For example, in the above embodiment, the host processor HMPU emulates the emulation memory E.
The address for accessing MEMO and EMEMI is provided by the latch circuit LAT3 via the host data bus HDB.
Although the configuration is such that the data is latched once and then supplied to the memory, it is also possible to supply it to each memory via the host address bus HAB. Further, in the above embodiment, the emulation memory is divided into two memory banks, but it may be divided into three or more banks.

以上の説明ではエミュレータに本発明を適用した場合に
ついて説明したが、それに限定されるものでなく、複数
のデータ処理装置によってアクセス可能なメモリが含ま
れるシステムに広く適用できる。例えば、マイクロプロ
セッサとCRTコントローラよりアクセスされるビデオ
RAMシステムに本発明を適用すれば、アクセスの競合
によるちらつきのないデイスプレィシステムを作成でき
る。本発明は、少なくとも2つのデータ処理装置により
一つのメモリを共有する場合に、一方のデータ処理装置
の動作に影響を与えることなく他方のデータ処理装置に
よって共有メモリをアクセスできるようにしたいシステ
ムに適用できる。
In the above explanation, the present invention is applied to an emulator, but the present invention is not limited thereto, and can be widely applied to a system including a memory that can be accessed by a plurality of data processing devices. For example, if the present invention is applied to a video RAM system accessed by a microprocessor and a CRT controller, a display system that is free from flickering due to access contention can be created. INDUSTRIAL APPLICABILITY The present invention is applicable to a system where one memory is shared by at least two data processing devices, and it is desired to allow the shared memory to be accessed by one data processing device without affecting the operation of the other data processing device. can.

[発明の効果] 本願において開示される発明のうち代表的なものによっ
て得られる効果を簡単に説明すれば下記のとおりである
[Effects of the Invention] The effects obtained by typical inventions disclosed in this application are briefly explained below.

すなわち、エミュレーションシステムにおいて。That is, in an emulation system.

ターゲットプロセッサの動作を停止させることなくホス
トプロセッサによる代行メモリ(エミュレーションメモ
リ)のアクセスが可能になり、これによりユーザプログ
ラムの実行を停止することなく、エミュレーションメモ
リの内容の表示・変更が可能となる。これによって、デ
バッグ対象となるマイクロコンピュータ応用システムが
、エミュレーションメモリの内容の表示・変更操作によ
って暴走して回復困難な状態に陥るのを回避することが
できる。
The proxy memory (emulation memory) can be accessed by the host processor without stopping the operation of the target processor, and thus the contents of the emulation memory can be displayed and changed without stopping the execution of the user program. This makes it possible to prevent the microcomputer application system to be debugged from going out of control due to operations that display or change the contents of the emulation memory, and falling into a state in which it is difficult to recover.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明に係るエミュレータの一実施例のブロッ
ク図、 第2図はシステム開発装置の全体の構成を示すブロック
図、 第3図は従来のインサーキット・エミュレータの構成例
を示すブロック図である。 HMPU・・・・ホストプロセッサ、TMPU・・・・
ターゲットプロセッサ、EMEMO・・・・偶数メモリ
バンクO,EMEMI・・・・奇数メモリバンク1、C
0NT・・・・タイミングコントローラ、MPXO−M
PX7・・・・マルチプレクサ、HDEC・・・・ホス
トデコーダ、TDEC・・・・ターゲットデコーダ、L
ATO−LAT3・・・・データラッチ回路。 第  1  図
FIG. 1 is a block diagram of an embodiment of an emulator according to the present invention, FIG. 2 is a block diagram showing the overall configuration of a system development device, and FIG. 3 is a block diagram showing an example of the configuration of a conventional in-circuit emulator. It is. HMPU...Host processor, TMPU...
Target processor, EMEMO...even memory bank O, EMEMI...odd memory bank 1, C
0NT...Timing controller, MPXO-M
PX7...Multiplexer, HDEC...Host decoder, TDEC...Target decoder, L
ATO-LAT3...Data latch circuit. Figure 1

Claims (1)

【特許請求の範囲】 1、2つのデータ処理装置と、それらのデータ処理装置
の側からもアクセス可能なメモリとを備えたデータ処理
システムにおいて、上記メモリを複数個のメモリバンク
によって構成するとともに、一方のデータ処理装置によ
る上記メモリへのアクセスを優先させ、優先された第1
のデータ処理装置が一つのメモリバンクをアクセスして
いる間に第2のデータ処理装置が他のメモリバンクをア
クセスできるように制御する制御手段を設けてなること
を特徴とするデータ処理システム。 2、上記第1のデータ処理装置は、デバッグ対象となる
システムのマイクロコンピュータの機能を代行するエミ
ュレーション用マイクロコンピュータであることを特徴
とする請求項1記載のデータ処理システム。 3、上記メモリが偶数アドレスによってアクセス可能な
メモリバンクと奇数アドレスによってアクセス可能なメ
モリバンクとに分割され、データ処理装置への接続の切
換えが、第1のデータ処理装置から出力されるアドレス
信号の最下位ビットに基づいて行なわれるようにされて
なることを特徴とする請求項1または請求項2記載のデ
ータ処理システム。
[Scope of Claim] A data processing system comprising one or two data processing devices and a memory that can also be accessed from those data processing devices, wherein the memory is constituted by a plurality of memory banks, and Prioritizing access to the memory by one data processing device, the first
1. A data processing system comprising: control means for controlling a second data processing device to access another memory bank while a second data processing device is accessing one memory bank. 2. The data processing system according to claim 1, wherein the first data processing device is an emulation microcomputer that performs functions of a microcomputer of a system to be debugged. 3. The memory is divided into memory banks accessible by even addresses and memory banks accessible by odd addresses, and the connection to the data processing device is switched by the address signal output from the first data processing device. 3. The data processing system according to claim 1, wherein the processing is performed based on the least significant bit.
JP63042063A 1988-02-26 1988-02-26 Data processing system Pending JPH01217524A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63042063A JPH01217524A (en) 1988-02-26 1988-02-26 Data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63042063A JPH01217524A (en) 1988-02-26 1988-02-26 Data processing system

Publications (1)

Publication Number Publication Date
JPH01217524A true JPH01217524A (en) 1989-08-31

Family

ID=12625641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63042063A Pending JPH01217524A (en) 1988-02-26 1988-02-26 Data processing system

Country Status (1)

Country Link
JP (1) JPH01217524A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905886A (en) * 1997-07-18 1999-05-18 Mitsubishi Electric Semiconductor Software Co., Ltd. Emulator having single port memories for simultaneous recording and reading of measurement data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905886A (en) * 1997-07-18 1999-05-18 Mitsubishi Electric Semiconductor Software Co., Ltd. Emulator having single port memories for simultaneous recording and reading of measurement data

Similar Documents

Publication Publication Date Title
KR0168656B1 (en) Data processing system
US7010722B2 (en) Embedded symmetric multiprocessor system debug
US8473661B2 (en) System and method for providing multi-process protection using direct memory mapped control registers
EP0084431A2 (en) Monitoring computer systems
US5577230A (en) Apparatus and method for computer processing using an enhanced Harvard architecture utilizing dual memory buses and the arbitration for data/instruction fetch
US5047926A (en) Development and debug tool for microcomputers
EP0418932B1 (en) Microcomputer having easily testable interrupt controller
US7231568B2 (en) System debugging device and system debugging method
JP2001249823A (en) Microcomputer development assisting device
JPH01217524A (en) Data processing system
KR100223096B1 (en) Method and apparatus for observing internal memory-mapped registers
KR0177742B1 (en) Micro controller development system
US7689864B2 (en) Processor comprising an integrated debugging interface controlled by the processing unit of the processor
JP3323341B2 (en) Emulation processor and emulator equipped with it
JPS6356569B2 (en)
JP2876909B2 (en) Interrupt emulator
JP2902861B2 (en) Buffer device with trace function
JPH0285934A (en) Emulator
JP2520158B2 (en) Debugging method of digital signal processor
US20020147894A1 (en) Program-controlled unit
JP2632891B2 (en) System development equipment
JP2654105B2 (en) Microprocessor
JP2954006B2 (en) Emulation device and emulation method
JPS63106840A (en) Data processor unit
JPH0492932A (en) Emulation microcomputer