JP2000207245A - In-circuit emulator - Google Patents

In-circuit emulator

Info

Publication number
JP2000207245A
JP2000207245A JP11005514A JP551499A JP2000207245A JP 2000207245 A JP2000207245 A JP 2000207245A JP 11005514 A JP11005514 A JP 11005514A JP 551499 A JP551499 A JP 551499A JP 2000207245 A JP2000207245 A JP 2000207245A
Authority
JP
Japan
Prior art keywords
trace
data
memory
trace data
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.)
Pending
Application number
JP11005514A
Other languages
Japanese (ja)
Inventor
Katsuto Tono
勝人 東野
Tsutomu Mikami
勉 三上
Toru Morikawa
徹 森河
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP11005514A priority Critical patent/JP2000207245A/en
Publication of JP2000207245A publication Critical patent/JP2000207245A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an in-circuit emulator capable of accelerating data transfer speed and executing tracing operation continuously, without any break even at the data transfer time by compressing and storing trace data in a memory. SOLUTION: This emulator is provided with a trace memory 103 and a data compressing circuit 102, and the trace data are compressed and stored in the trace memory 103. The data compression circuit 102 compresses the trace data outputted by a trace control circuit 101 in the tracing operation for decreasing data traffic intensity. Consequently, the trace data can be transferred quickly to a host computer. Consequently, the response of the host computer 2 to the in-circuit emulator 1 can be improved, and the time for which the tracing operation is stopped for transferring the trace data can be shortened.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、圧縮技術を用いた
インサーキットエミュレータに関するものである。
The present invention relates to an in-circuit emulator using a compression technique.

【0002】[0002]

【従来の技術】近年、インサーキットエミュレーターは
プログラムをデバッグするための装置として用いられて
いる。特にインサーキットエミュレータが持つトレース
機能はマイコン(マイクロコンピュータ)の実行履歴を
残すことができデバッグを行う上で有用な機能である。
2. Description of the Related Art In recent years, in-circuit emulators have been used as devices for debugging programs. In particular, the trace function of the in-circuit emulator is a useful function for debugging because it can leave the execution history of the microcomputer.

【0003】以下に、図4,図5を用いて従来のインサ
ーキットエミュレータについて説明する。
Hereinafter, a conventional in-circuit emulator will be described with reference to FIGS.

【0004】図4は従来のインサーキットエミュレータ
の一例の構成を示すブロック図であり、2はホストコン
ピュータ、3はマイコン、9はインサーキットエミュレ
ータ、10はトレース部、103はメモリ、101はトレース制
御回路、201はトレース開始フラグ、202はトレースデー
タ転送要求フラグ、501はアドレスバス、502はデータバ
ス、503はメモリアドレスバス、506はメモリデータ出力
バス、507はホストアドレスバス、508はホストデータバ
ス、521はトレースメモリデータ入力バスである。
FIG. 4 is a block diagram showing an example of the configuration of a conventional in-circuit emulator. 2 is a host computer, 3 is a microcomputer, 9 is an in-circuit emulator, 10 is a trace unit, 103 is a memory, and 101 is a trace control. Circuit, 201 is a trace start flag, 202 is a trace data transfer request flag, 501 is an address bus, 502 is a data bus, 503 is a memory address bus, 506 is a memory data output bus, 507 is a host address bus, and 508 is a host data bus , 521 are trace memory data input buses.

【0005】図4において、前記従来のインサーキット
エミュレータ9は、命令実行時のアドレスである実行ア
ドレスと、その命令が実行されるときのデータバスの値
とデバッグに必要な信号データとを含む実行データとか
らなるトレースデータをアドレスバス501とデータバス5
02とを介して出力する機能を有するマイコン3と、トレ
ース部10とから構成されている。
Referring to FIG. 4, the conventional in-circuit emulator 9 includes an execution address which is an address when an instruction is executed, a data bus value when the instruction is executed, and signal data required for debugging. Trace data composed of data is transferred to the address bus 501 and the data bus 5
The microcomputer 3 includes a microcomputer 3 having a function of outputting the data via an external device 02 and a tracing unit 10.

【0006】トレース部10は、アドレスバス501とデー
タバス502を介してマイコン3のトレースデータを取り
込む機能と、ホストアドレスバス507をデコードし、ホ
ストデータバス508に従いトレース開始フラグ201と、ト
レースデータ転送要求フラグ202とを設定する機能と、
マイコン3からの実行アドレスおよび実行データを含む
トレースデータをトレースメモリデータ入力バス521へ
出力する機能と、トレースデータをメモリ103に対して
読み書きするためのアドレスをメモリアドレスバス503
へ出力する機能と、トレースデータをメモリデータ出力
バス506を介して読み込む機能と、ホストコンピュータ
2へトレースデータを転送する機能と、メモリアドレス
バス503に出力するアドレスを管理することによりメモ
リ103がいっぱいになったことを検出するとトレース開
始フラグ201をトレース停止状態とする機能を有するト
レース制御回路101を備え、さらに、メモリアドレスバ
ス503の示すアドレスに、トレースメモリデータ入力バ
ス521を介して伝達されるトレースデータを書き込む機
能と、メモリアドレスバス503の示すアドレスからトレ
ースデータをメモリデータ出力バス506へ出力する機能
を有するメモリ103を備えている。
The tracing unit 10 has a function of taking in trace data of the microcomputer 3 via the address bus 501 and the data bus 502, a function of decoding the host address bus 507, a trace start flag 201 according to the host data bus 508, and a function of transferring trace data. A function for setting the request flag 202;
A function of outputting trace data including an execution address and execution data from the microcomputer 3 to the trace memory data input bus 521, and an address for reading and writing the trace data to and from the memory 103 are stored in a memory address bus 503.
Memory 103, a function to read trace data via the memory data output bus 506, a function to transfer trace data to the host computer 2, and a function to manage addresses to be output to the memory address bus 503 to fill the memory 103. The trace control circuit 101 has a function of setting the trace start flag 201 to a trace stop state when it is detected that the state has been changed, and further transmitted to the address indicated by the memory address bus 503 via the trace memory data input bus 521. The memory 103 has a function of writing trace data and a function of outputting trace data from the address indicated by the memory address bus 503 to the memory data output bus 506.

【0007】また、トレース制御回路101は、トレース
開始状態(Low)とトレース停止状態(High)の2つの状態
を示す1ビットのレジスタであるトレース開始フラグ20
1と、トレースデータ転送状態(Low)とトレースデータ転
送停止状態(High)の2つの状態を示す1ビットのレジス
タであるトレースデータ転送要求フラグ202とを備えて
いる。
The trace control circuit 101 has a trace start flag 20 which is a 1-bit register indicating two states of a trace start state (Low) and a trace stop state (High).
1 and a trace data transfer request flag 202 which is a 1-bit register indicating two states of a trace data transfer state (Low) and a trace data transfer stop state (High).

【0008】また、ホストコンピュータ2は、トレース
制御回路101のトレース開始フラグ201,トレースデータ
転送要求フラグ202を設定するためのアドレスをホスト
アドレスバス507へ出力し、かつデータをホストデータ
バス508へ出力する機能と、ホストデータバス508を介し
てトレースデータを読み込む機能とを有し、トレース制
御回路101に接続されている。
The host computer 2 outputs an address for setting the trace start flag 201 and the trace data transfer request flag 202 of the trace control circuit 101 to the host address bus 507, and outputs data to the host data bus 508. And a function of reading trace data via the host data bus 508, and is connected to the trace control circuit 101.

【0009】以上のように構成されたインサーキットエ
ミュレータについて、以下、その動作を、1)トレース
時と、2)トレースデータ転送時に分けて説明する。
The operation of the in-circuit emulator configured as described above will be described below by dividing the operation into 1) a trace operation and 2) a trace data transfer operation.

【0010】1)トレース時 まず、ホストコンピュータ2からトレース開始フラグ20
1をトレース開始状態にするためのアドレスをホストア
ドレスバス507へ、データをホストデータバス508へと出
力する。
1) At the time of tracing First, a trace start flag 20 is sent from the host computer 2.
An address for setting 1 to a trace start state is output to the host address bus 507, and data is output to the host data bus 508.

【0011】トレース制御回路101は、ホストアドレス
バス507と、ホストデータバス508とを介してトレース開
始フラグ201をトレース開始状態とする命令を受け取
り、そのときトレースデータ転送要求フラグ202がトレ
ースデータ転送停止状態となっている場合、トレース開
始フラグ201をトレース開始状態にセットし、トレース
動作を開始する。しかし、トレースデータ転送要求フラ
グ202がトレースデータ転送状態となっている場合、ト
レース開始フラグ201をトレース開始状態とせずにトレ
ース動作を開始しない。
The trace control circuit 101 receives an instruction for setting the trace start flag 201 to a trace start state via the host address bus 507 and the host data bus 508, and at that time, sets the trace data transfer request flag 202 to stop the trace data transfer. If so, the trace start flag 201 is set to the trace start state, and the trace operation is started. However, when the trace data transfer request flag 202 is in the trace data transfer state, the trace operation is not started without setting the trace start flag 201 to the trace start state.

【0012】トレース動作が開始されるとトレース制御
回路101は、アドレスバス501,データバス502を介して
マイコン3の実行アドレスと実行データからなるトレー
スデータを取り込み、メモリ103に記録するためのアド
レスをメモリアドレスバス503を介して出力し、トレー
スデータをメモリデータ出力バス506を介して出力し
て、メモリ103にトレースデータを記録する。
When the tracing operation is started, the trace control circuit 101 takes in the trace data including the execution address and the execution data of the microcomputer 3 via the address bus 501 and the data bus 502, and stores the address for recording in the memory 103. The trace data is output via the memory address bus 503, the trace data is output via the memory data output bus 506, and the trace data is recorded in the memory 103.

【0013】また、ホストコンピュータ2から、トレー
ス開始フラグ201をトレース停止状態にするためのアド
レスをホストアドレスバス507へ、データをホストデー
タバス508へ出力した場合、およびメモリアドレスバス5
03を介してメモリ103に記録するトレースデータがいっ
ぱいになったことを検出した場合、トレース制御回路10
1は、トレース開始フラグ201をトレース停止状態とし、
トレース動作を停止する。
When the host computer 2 outputs an address for setting the trace start flag 201 to a trace stop state to the host address bus 507 and outputs data to the host data bus 508, and when the memory address bus 5
When it is detected that the trace data to be recorded in the memory 103 through the memory 03 is full, the trace control circuit 10
1 sets the trace start flag 201 to the trace stop state,
Stop the trace operation.

【0014】2)トレースデータ転送時 まず、ホストコンピュータ2からトレース制御回路101
へトレースデータ転送要求フラグ202をトレースデータ
転送状態とするために、ホストアドレスバス507を介し
てアドレスを出力し、かつホストデータバス508を介し
てデータを出力する。トレース制御回路101は、ホスト
アドレスバス507,ホストデータバス508をデコードし、
トレースデータ転送要求フラグ202をトレースデータ転
送状態とする命令を受け取り、そのときトレース開始フ
ラグ201がトレース停止状態となっている場合、トレー
スデータ転送要求フラグ202をセットし、トレースデー
タ転送を開始する。トレースデータ転送状態となると、
トレース制御回路101は、メモリ103からトレースデータ
を読み出すためのアドレスをメモリアドレスバス503を
介してメモリ103に出力し、メモリ103からトレースデー
タをメモリデータ出力バス506を介して読み込み、ホス
トデータバス508を介してホストコンピュータ2へ転送
する。
2) When transferring trace data First, the trace control circuit 101 is sent from the host computer 2.
In order to set the trace data transfer request flag 202 to the trace data transfer state, an address is output via the host address bus 507, and data is output via the host data bus 508. The trace control circuit 101 decodes the host address bus 507 and the host data bus 508,
When an instruction for setting the trace data transfer request flag 202 to the trace data transfer state is received and the trace start flag 201 is in the trace stop state at that time, the trace data transfer request flag 202 is set and the trace data transfer is started. When the trace data is transferred,
The trace control circuit 101 outputs an address for reading trace data from the memory 103 to the memory 103 via the memory address bus 503, reads the trace data from the memory 103 via the memory data output bus 506, and outputs the host data bus 508 To the host computer 2 via.

【0015】また、トレース制御回路101は、ホストコ
ンピュータ2からホストアドレスバス507,ホストデー
タバス508を介してトレースデータ転送要求フラグ202を
トレースデータ転送停止状態とする命令を受けたとき、
およびメモリアドレスバス503を介してメモリ103に記録
されているトレースデータがなくなったことを検出した
とき、トレースデータ転送要求フラグ202をトレースデ
ータ転送停止状態とし、トレースデータ転送動作を停止
する。
When the trace control circuit 101 receives an instruction from the host computer 2 via the host address bus 507 and the host data bus 508 to set the trace data transfer request flag 202 to the trace data transfer stop state,
When it is detected that the trace data recorded in the memory 103 has run out via the memory address bus 503, the trace data transfer request flag 202 is set to a trace data transfer stop state, and the trace data transfer operation is stopped.

【0016】また、トレース制御回路101は、ホストコ
ンピュータ2からトレースデータ転送要求フラグ202を
トレースデータ転送状態とする命令を受け取ったとき
に、トレース開始フラグ201がトレース開始状態となっ
ている場合には、トレース動作を一時中断し、トレース
データ転送要求フラグ202をトレースデータ転送状態と
して、トレースデータ転送を開始する。また、ホストコ
ンピュータ2からトレースデータ転送要求フラグ202を
トレースデータ転送停止状態とする命令を受けたとき、
またはメモリ103に記録されているトレースデータがな
くなったときには、トレースデータ転送要求フラグ202
をトレースデータ転送停止状態とし、トレースデータ転
送動作を停止して、トレース動作を再開する。
When the trace control circuit 101 receives an instruction from the host computer 2 for setting the trace data transfer request flag 202 to the trace data transfer state, and the trace start flag 201 is in the trace start state, Then, the trace operation is suspended, the trace data transfer request flag 202 is set to the trace data transfer state, and the trace data transfer is started. When receiving an instruction from the host computer 2 to set the trace data transfer request flag 202 to the trace data transfer stop state,
Alternatively, when the trace data recorded in the memory 103 runs out, the trace data transfer request flag 202
Is set to a trace data transfer stop state, the trace data transfer operation is stopped, and the trace operation is restarted.

【0017】図5は従来のインサーキットエミュレータ
の他例の構成を示すブロック図であり、2はホストコン
ピュータ、3はマイコン、11はインサーキットエミュレ
ータ、12はトレース部、106はトレース制御回路、107は
メモリ、108はメモリ、109は読み出し用セレクタ、110
はNOT回路、201はトレース開始フラグ、202はトレー
スデータ転送要求フラグ、204はリードライト選択フラ
グ、501はアドレスバス、502はデータバス、507はホス
トアドレスバス、508はホストデータバス、513はメモリ
アドレスバス、514はメモリアドレスバス、515はリード
ライト選択信号線、516はメモリデータ出力バス、517は
メモリデータ出力バス、519は選択メモリデータ出力バ
ス、520はリードライト選択反転信号線、522はメモリデ
ータ分岐入力バスである。
FIG. 5 is a block diagram showing the configuration of another example of a conventional in-circuit emulator, wherein 2 is a host computer, 3 is a microcomputer, 11 is an in-circuit emulator, 12 is a trace section, 106 is a trace control circuit, 107 Is a memory, 108 is a memory, 109 is a read selector, 110
Is a NOT circuit, 201 is a trace start flag, 202 is a trace data transfer request flag, 204 is a read / write selection flag, 501 is an address bus, 502 is a data bus, 507 is a host address bus, 508 is a host data bus, and 513 is a memory. Address bus, 514 is a memory address bus, 515 is a read / write select signal line, 516 is a memory data output bus, 517 is a memory data output bus, 519 is a selected memory data output bus, 520 is a read / write select inversion signal line, 522 is This is a memory data branch input bus.

【0018】図5に示す従来のインサーキットエミュレ
ータは、命令実行時のアドレスである実行アドレスとそ
の命令が実行されるときのデータバスの値とデバッグに
必要な信号データとを含む実行データからなるトレース
データを、アドレスバス501とデータバス502を介して出
力する機能を有するマイコン3と、トレース部12とから
構成されている。
The conventional in-circuit emulator shown in FIG. 5 includes an execution address which is an address at the time of executing an instruction, a data bus value when the instruction is executed, and execution data including signal data required for debugging. The microcomputer 3 has a function of outputting trace data via an address bus 501 and a data bus 502, and the trace unit 12.

【0019】トレース部12は、アドレスバス501とデー
タバス502を介してマイコン3の実行アドレスと実行デ
ータからなるトレースデータを取り込む機能と、ホスト
アドレスバス507をデコードし、ホストデータバス508に
従いトレース開始フラグ201と、トレースデータ転送要
求フラグ202と、リードライト選択フラグ204とを設定す
る機能と、マイコン3からの実行アドレス,実行データ
を含むトレースデータをメモリデータ分岐入力バス522
へ出力する機能と、トレースデータを一方のメモリ107
に対して読み書きするためのアドレスをメモリアドレス
バス513へ出力する機能と、トレースデータを他方のメ
モリ108に対して読み書きするためのアドレスをメモリ
アドレスバス514へ出力する機能と、リードライト選択
フラグ204がリード状態(Low)に設定されている場合に
は、リードライト選択信号線515へリード信号(Low)を出
力し、リードライト選択フラグ204がライト状態(High)
に設定されている場合には、リードライト選択信号線51
5へライト信号(High)を出力する機能と、トレースデー
タを選択メモリデータ出力バス519を介して読み込む機
能と、ホストコンピュータ2へトレースデータを転送す
る機能と、メモリアドレスバス513および切り替えメモ
リアドレスバス514に出力するアドレスを管理して、ト
レースデータ書き込み時に一方のメモリがいっぱいにな
ったことを検出するとトレース開始フラグ201をトレー
ス停止状態とし、他方のメモリのトレースデータの転送
が終了すると、リードライト選択フラグ204をリード状
態ならライト状態に、ライト状態ならリード状態に切り
替えて、リードライト選択フラグ204に対応した信号を
リードライト選択信号線515へ出力し、トレース開始フ
ラグ201をトレース状態とする機能を有するトレース制
御回路106を備え、さらにリードライト選択信号線515を
介して出力されている信号がライト信号のとき、メモリ
アドレスバス513の示すアドレスにメモリデータ分岐入
力バス522を介して出力されるトレースデータを記録
し、リードライト選択信号線515を介して出力されてい
る信号がリード信号のとき、メモリアドレスバス513の
示すアドレスに記録されているトレースデータをメモリ
データ出力バス516へ出力する機能を有するメモリ107
と、リードライト選択反転信号線520を介して出力され
ている信号がライト信号のとき、メモリアドレスバス51
4の示すアドレスにメモリデータ分岐入力バス522を介し
て出力されるトレースデータを記録し、リードライト選
択反転信号線520を介して出力されている信号がリード
状態のとき、メモリアドレスバス514の示すアドレスに
記録されているトレースデータをメモリデータ出力バス
517へ出力する機能を有するメモリ108と、リードライト
選択信号線515がリード信号のとき、メモリデータ出力
バス516の信号を、選択メモリデータ出力バス519へ出力
し、リードライト選択信号線515がライト信号のとき、
メモリデータ出力バス517の信号を、選択メモリデータ
出力バス519へ出力する機能を有する読み出し用セレク
タ109と、リードライト選択信号515がリード信号のとき
リードライト反転信号線520へライト信号を出力し、リ
ードライト選択信号515がライト信号のときリードライ
ト反転信号線520へリード信号を出力する機能を有する
NOT回路110とを備えている。
The tracing unit 12 has a function of taking in trace data composed of an execution address and execution data of the microcomputer 3 via the address bus 501 and the data bus 502, decodes the host address bus 507, and starts tracing according to the host data bus 508. A function of setting a flag 201, a trace data transfer request flag 202, and a read / write selection flag 204, and a memory data branch input bus 522 for transferring trace data including an execution address and execution data from the microcomputer 3;
Function to output the trace data to one memory 107
A function to output an address for reading / writing to / from the memory address bus 513, a function to output an address to read / write the trace data to / from the other memory 108 to the memory address bus 514, and a function to read / write Is set to the read state (Low), the read signal (Low) is output to the read / write select signal line 515, and the read / write select flag 204 is set to the write state (High).
, The read / write selection signal line 51
5, a function of outputting a write signal (High) to the memory, a function of reading trace data via the selected memory data output bus 519, a function of transferring trace data to the host computer 2, a memory address bus 513, and a switching memory address bus. The address to be output to 514 is managed, and when it is detected that one memory is full at the time of writing the trace data, the trace start flag 201 is set to the trace stop state, and when the transfer of the trace data of the other memory is completed, the read / write is performed. A function that switches the selection flag 204 to the write state if in the read state and switches to the read state if the write state, outputs a signal corresponding to the read / write selection flag 204 to the read / write selection signal line 515, and sets the trace start flag 201 to the trace state. And a trace control circuit 106 having When the signal output via the select signal line 515 is a write signal, the trace data output via the memory data branch input bus 522 is recorded at the address indicated by the memory address bus 513, and the read / write select signal line 515 Has a function of outputting trace data recorded at the address indicated by the memory address bus 513 to the memory data output bus 516 when the signal output through the memory 107 is a read signal.
When the signal output through the read / write selection inversion signal line 520 is a write signal, the memory address bus 51
The trace data output via the memory data branch input bus 522 is recorded at the address indicated by 4, and when the signal output via the read / write select inversion signal line 520 is in the read state, the signal indicated by the memory address bus 514 is indicated. The trace data recorded at the address is transferred to the memory data output bus.
When the memory 108 having a function of outputting to the memory 517 and the read / write selection signal line 515 are read signals, the signal of the memory data output bus 516 is output to the selected memory data output bus 519, and the read / write selection signal line 515 is written. For signals,
A read selector 109 having a function of outputting the signal of the memory data output bus 517 to the selected memory data output bus 519, and outputting a write signal to the read / write inversion signal line 520 when the read / write selection signal 515 is a read signal; A NOT circuit 110 having a function of outputting a read signal to the read / write inversion signal line 520 when the read / write selection signal 515 is a write signal.

【0020】また、トレース制御回路106は、トレース
開始状態(Low)とトレース停止状態(High)の2つの状態
を示す1ビットのレジスタであるトレース開始フラグ20
1と、トレースデータ転送状態(Low)とトレースデータ転
送停止状態(High)の2つの状態を示す1ビットのレジス
タであるトレースデータ転送要求フラグ202と、リード
状態(Low)とライト状態(High)の2つの状態を示す1ビ
ットのレジスタであるリードライト選択フラグ204とを
備えている。
The trace control circuit 106 has a trace start flag 20 which is a 1-bit register indicating two states of a trace start state (Low) and a trace stop state (High).
1; a trace data transfer request flag 202 which is a 1-bit register indicating two states of a trace data transfer state (Low) and a trace data transfer stop state (High); a read state (Low) and a write state (High) And a read / write select flag 204 which is a 1-bit register indicating the two states.

【0021】また、ホストコンピュータ2は、トレース
制御回路106のトレース開始フラグ201,トレースデータ
転送要求フラグ202,リードライト選択フラグ204をそれ
ぞれ設定するためのアドレスをホストアドレスバス507
へ出力し、かつデータをホストデータバス508へと出力
する機能、ホストデータバス508からトレースデータを
読み込む機能を有しており、トレース制御回路106に接
続されている。
Further, the host computer 2 assigns addresses for setting the trace start flag 201, the trace data transfer request flag 202, and the read / write selection flag 204 of the trace control circuit 106 to the host address bus 507.
And has a function of outputting data to the host data bus 508 and a function of reading trace data from the host data bus 508, and is connected to the trace control circuit 106.

【0022】以上のように構成されたインサーキットエ
ミュレータについて、以下、その動作を説明する。
The operation of the in-circuit emulator configured as described above will be described below.

【0023】まず、初期設定として仮にホストコンピュ
ータ2からホストアドレスバス507,ホストデータバス5
08を介してリードライト選択フラグ204をライト状態と
する。このとき、リードライト選択信号線515を介して
出力されるライト信号により一方のメモリ107はライト
状態となり、他方のメモリ108はリード状態となってい
る。ホストコンピュータ2からトレース制御回路106へ
ホストアドレスバス507,ホストデータバス508を介して
トレース開始フラグ201をトレース開始状態とするため
のアドレスおよびデータを出力する。
First, as an initial setting, a host address bus 507, a host data bus 5
The read / write selection flag 204 is set to a write state via 08. At this time, one memory 107 is in a write state and the other memory 108 is in a read state by a write signal output via the read / write selection signal line 515. The host computer 2 outputs an address and data for setting the trace start flag 201 to a trace start state via the host address bus 507 and the host data bus 508 to the trace control circuit 106.

【0024】トレース制御回路106は、ホストアドレス
バス507,ホストデータバス508をデコードし、トレース
開始フラグ201をトレース開始状態とする命令であり、
かつそのときトレースデータ転送要求フラグ202がトレ
ースデータ転送停止状態となっている場合、トレース開
始フラグ201をトレース開始状態とし、トレース動作を
開始して、マイコン3のアドレスバス501,データバス5
02から実行アドレスと実行データからなるトレースデー
タを取り込み、一方のメモリ107に記録するためのアド
レスをメモリアドレスバス513を介して一方のメモリ107
に出力し、トレースデータをメモリデータ分岐入力バス
522を介して一方のメモリ107に記録する。
The trace control circuit 106 is an instruction for decoding the host address bus 507 and the host data bus 508 and setting the trace start flag 201 to a trace start state.
If the trace data transfer request flag 202 is in the trace data transfer stop state at that time, the trace start flag 201 is set to the trace start state, the trace operation is started, and the address bus 501 and the data bus 5 of the microcomputer 3 are started.
02, the trace data including the execution address and the execution data is taken in, and an address for recording in the one memory 107 is stored in the one memory 107 via the memory address bus 513.
Output to the memory data branch input bus
The data is recorded in one memory 107 via 522.

【0025】このとき、読み出し用セレクタ109は、リ
ードライト選択信号線515によりメモリデータ出力バス5
17が選択されており、トレース制御回路106は、他方の
メモリ108からトレースデータを読み出すためのアドレ
スをメモリアドレスバス514を介して他方のメモリ108に
出力し、トレースデータをメモリデータ出力バス517,
読み出し用セレクタ109,選択メモリデータ出力バス519
を介して読み込みホストデータバス508を介してホスト
コンピュータ2へ転送する。
At this time, the read selector 109 is connected to the memory data output bus 5 by the read / write selection signal line 515.
17 is selected, the trace control circuit 106 outputs an address for reading trace data from the other memory 108 to the other memory 108 via the memory address bus 514, and outputs the trace data to the memory data output bus 517,
Read selector 109, selected memory data output bus 519
And transferred to the host computer 2 via the host data bus 508.

【0026】また、一方のメモリ107に記録するための
アドレスから一方のメモリ107がいっぱいになったこと
を検出すると、トレース開始フラグ201をトレース停止
状態とし、他方のメモリ108のトレースデータの転送が
終了すると、リードライト選択フラグ204をリード状態
にセットする。これにより、リードライト選択信号線51
5を介して出力されるリード信号により、一方のメモリ1
07はリード状態となり、他方のメモリ108はライト状態
となり、他方のメモリ108に記録するためのアドレスを
メモリアドレスバス514を介して他方のメモリ108に出力
し、トレースデータをメモリデータ分岐入力バス522を
介して他方のメモリ108に記録する。
When it is detected from one of the addresses to be recorded in one memory 107 that one memory 107 is full, the trace start flag 201 is set to a trace stop state, and the transfer of the trace data in the other memory 108 is stopped. Upon completion, the read / write selection flag 204 is set to a read state. As a result, the read / write selection signal line 51
The read signal output via 5 causes one memory 1
07 is in a read state, the other memory 108 is in a write state, an address to be recorded in the other memory 108 is output to the other memory 108 via a memory address bus 514, and the trace data is output to a memory data branch input bus 522. Through the other memory 108.

【0027】このとき、読み出し用セレクタ109は、リ
ードライト選択信号線515によりメモリデータ出力バス5
16が選択されており、他方のメモリ108にトレースデー
タを記録するとともに、トレース制御回路106は、一方
のメモリ107から読み出すためのアドレスをメモリアド
レスバス513を介して一方のメモリ107に出力し、トレー
スデータをメモリデータ出力バス516,読み出し用セレ
クタ109,選択メモリデータ出力バス519を介して読み込
み、ホストデータバス508を介してホストコンピュータ
2へ転送する。
At this time, the read selector 109 is connected to the memory data output bus 5 by the read / write selection signal line 515.
16 is selected, the trace data is recorded in the other memory 108, and the trace control circuit 106 outputs an address to be read from the one memory 107 to the one memory 107 via the memory address bus 513, The trace data is read via the memory data output bus 516, the read selector 109, and the selected memory data output bus 519, and is transferred to the host computer 2 via the host data bus 508.

【0028】また、他方のメモリ108に記録するための
アドレスから他方のメモリ108がいっぱいになったこと
を検出したときは、トレース開始フラグ201をトレース
停止状態とし、一方のメモリ107のトレースデータの転
送が終了するとリードライト選択フラグ204をライト状
態にセットし、一方のメモリ107をライト状態とし、他
方のメモリ108をリード状態として、以後、上記動作を
繰り返す。
When it is detected from the address to be recorded in the other memory 108 that the other memory 108 is full, the trace start flag 201 is set to the trace stop state, and the trace data of the one memory 107 is When the transfer is completed, the read / write selection flag 204 is set to the write state, one memory 107 is set to the write state, and the other memory 108 is set to the read state. Thereafter, the above operation is repeated.

【0029】また、トレース動作が停止している場合に
も、ホストコンピュータ2のホストアドレスバス507,
ホストデータバス508を介してトレースデータ転送要求
フラグ202がトレースデータ転送状態にセットされる
と、リード状態となっているいずれか一方ののメモリか
らデータを読み込みトレース制御回路106を介してホス
トコンピュータ2へトレースデータを転送する。
Even when the trace operation is stopped, the host address bus 507 of the host computer 2
When the trace data transfer request flag 202 is set to the trace data transfer state via the host data bus 508, data is read from either one of the memories in the read state, and the host computer 2 is read via the trace control circuit 106. Transfer the trace data to

【0030】また、トレース制御回路106は、ホストコ
ンピュータ2からホストアドレスバス507,ホストデー
タバス508を介してトレース開始フラグ201をトレース停
止状態にする命令を受けたときは、トレース開始フラグ
201をトレース停止状態とし、トレース動作を停止す
る。
When the trace control circuit 106 receives an instruction from the host computer 2 via the host address bus 507 and the host data bus 508 to set the trace start flag 201 to the trace stop state, the trace control circuit 106
201 is set to the trace stop state, and the trace operation is stopped.

【0031】[0031]

【発明が解決しようとする課題】しかしながら、前記従
来のインサーキットエミュレータの構成では、トレース
データを無圧縮で転送するため、データトラフィック量
が増加し、またホストコンピュータとトレース制御回路
間の転送速度が、インサーキットエミュレータ内の転送
速度あるいはホストコンピュータ内の転送速度に比べて
遅いため、ホストコンピュータへ転送する際に多くの時
間がかかり、インサーキットエミュレータに対してホス
トコンピュータからのレスポンスが悪くなり、またトレ
ースデータ転送時にはトレース動作を停止させる必要が
あるため、連続してトレース動作を行うことができな
い、という問題を有していた。
However, in the configuration of the conventional in-circuit emulator, since the trace data is transferred without compression, the amount of data traffic increases, and the transfer speed between the host computer and the trace control circuit increases. However, since it is slower than the transfer speed in the in-circuit emulator or the transfer speed in the host computer, it takes a lot of time to transfer data to the host computer, and the response from the host computer to the in-circuit emulator becomes poor. At the time of trace data transfer, it is necessary to stop the trace operation, so that there is a problem that the trace operation cannot be performed continuously.

【0032】本発明は、上記従来の問題を解決するもの
であり、データトラフィック量を減少させる手段を設け
ることによりホストコンピュータとトレース制御回路間
のデータ転送を高速化し、ホストコンピュータからイン
サーキットエミュレータに対するレスポンスを向上させ
ることと、トレースデータ転送時においてもトレース動
作を停止することなく連続してトレース動作を行えるよ
うにしたインサーキットエミュレータを提供することを
目的とする。
The present invention solves the above-mentioned conventional problem. By providing means for reducing the amount of data traffic, the speed of data transfer between the host computer and the trace control circuit is increased. It is an object of the present invention to provide an in-circuit emulator capable of improving response and performing a trace operation continuously without stopping the trace operation even when transferring trace data.

【0033】[0033]

【課題を解決するための手段】前記目的を達成するため
に、本発明に係るインサーキットエミュレータは、トレ
ースデータを圧縮してメモリへ格納することを可能にし
たインサーキットエミュレータであって、トレースデー
タを記録するためのメモリと、命令実行時のアドレスで
ある実行アドレスと、その命令が実行されるときのデー
タバスの値とデバッグに必要な信号データを含む実行デ
ータとからなるトレースデータを出力する演算処理部
と、トレース動作を開始するためのトレース開始フラグ
とトレースデータ転送を開始するためのトレースデータ
転送要求フラグとを備え、トレースデータを前記演算処
理部から取り込み出力する機能と、前記メモリに対して
トレースデータを読み書きするためのアドレスを出力す
る機能と、前記メモリからトレースデータを読み込む機
能とを有するトレース制御回路と、前記トレース制御回
路と前記メモリとに接続されトレースデータを圧縮する
ためのデータ圧縮回路とを備えたものである。
In order to achieve the above object, an in-circuit emulator according to the present invention is an in-circuit emulator capable of compressing trace data and storing the compressed data in a memory. And trace data including an execution address which is an address at the time of execution of the instruction, and a data bus value at the time of execution of the instruction and execution data including signal data necessary for debugging. An arithmetic processing unit, including a trace start flag for starting a trace operation and a trace data transfer request flag for starting trace data transfer, a function of capturing and outputting trace data from the arithmetic processing unit, and A function for outputting an address for reading and writing trace data to the A trace control circuit having a function to read trace data from, connected to said said trace control circuit memory is that a data compression circuit for compressing the trace data.

【0034】前記構成によって、トレース時に、前記デ
ータ圧縮回路により前記トレース制御回路から出力され
るトレースデータを圧縮しデータトラフィック量を減少
させることにより、トレースデータ転送時に、トレース
データをホストコンピュータへ高速に転送することがで
きるようになり、ホストコンピュータからインサーキッ
トエミュレータに対するレスポンスを向上させることが
でき、またトレースデータを転送するためにトレース動
作を停止させなければならないトレース動作停止時間を
減少させることができる。
According to the above configuration, at the time of tracing, the trace data output from the trace control circuit is compressed by the data compression circuit to reduce the amount of data traffic. The transfer can be performed, the response from the host computer to the in-circuit emulator can be improved, and the trace operation stop time required to stop the trace operation for transferring the trace data can be reduced. .

【0035】また、本発明に係るインサーキットエミュ
レータは、トレースデータを圧縮してメモリへ格納する
か、あるいはトレースデータを圧縮せずにメモリへ格納
するかを選択することを可能にしたインサーキットエミ
ュレータであって、トレースデータを記録するためのメ
モリと、命令実行時のアドレスである実行アドレスと、
その命令が実行されるときのデータバスの値とデバッグ
に必要な信号データを含む実行データとからなるトレー
スデータを出力する演算処理部と、トレース動作を開始
するためのトレース開始フラグとトレースデータ転送を
開始するためのトレースデータ転送要求フラグと圧縮選
択フラグとを備え、トレースデータを前記演算処理部か
ら取り込み出力する機能と、前記メモリに対して前記ト
レースデータを読み書きするためのアドレスを出力する
機能と、前記メモリからトレースデータを読み込む機能
と、トレースデータを圧縮するか否かを示す信号を出力
する機能を有するトレース制御回路と、前記トレース制
御回路と前記メモリとに接続され、トレースデータを圧
縮するためのデータ圧縮回路と、前記トレース制御回路
からの信号に従い、前記データ圧縮回路により圧縮され
たトレースデータか、あるいは無圧縮のトレースデータ
かを選択するためのセレクタとを備えたものである。
An in-circuit emulator according to the present invention is capable of selecting whether to compress trace data and store it in a memory or to store trace data in a memory without compression. And a memory for recording trace data, an execution address which is an address at the time of instruction execution,
An arithmetic processing unit that outputs trace data consisting of a data bus value when the instruction is executed and execution data including signal data necessary for debugging, a trace start flag for starting a trace operation, and trace data transfer A trace data transfer request flag and a compression selection flag for initiating the trace data, and a function of capturing and outputting the trace data from the arithmetic processing unit and a function of outputting an address for reading and writing the trace data from and to the memory. A trace control circuit having a function of reading trace data from the memory, and a function of outputting a signal indicating whether or not to compress the trace data; a trace control circuit connected to the trace control circuit and the memory to compress the trace data; A data compression circuit for performing The data compression trace data or compressed by the circuit, or those with a selector for selecting whether trace data uncompressed.

【0036】前記構成によって、トレース動作時にトレ
ースデータに冗長な信号が多く含まれデータ圧縮により
データトラフィック量が減少する場合にはトレースデー
タを圧縮、逆にトレースデータに冗長な部分が少なく圧
縮によりデータトラフィック量が増加してしまう場合に
はトレースデータを無圧縮とすることができ、トレース
データ転送時にホストコンピュータへ転送するデータト
ラフィック量がトレースデータを圧縮することにより増
加することを防ぐことができる。
According to the above configuration, when the trace data contains many redundant signals during the trace operation and the data traffic volume is reduced by the data compression, the trace data is compressed. When the traffic volume increases, the trace data can be uncompressed, and the data traffic volume transferred to the host computer at the time of the trace data transmission can be prevented from increasing by compressing the trace data.

【0037】また、本発明に係るインサーキットエミュ
レータは、2つのメモリを備え、前記メモリの一方に対
してトレースデータを圧縮して書き込むと同時に、他方
のメモリからトレースデータを読み出すことを可能にし
たインサーキットエミュレータであって、トレースデー
タを記録するための2つのメモリと、命令実行時のアド
レスである実行アドレスと、その命令が実行されるとき
のデータバスの値とデバッグに必要な信号データを含む
実行データとからなるトレースデータを出力する演算処
理部と、トレース動作を開始するためのトレース開始フ
ラグとトレースデータ転送を開始するためのトレースデ
ータ転送要求フラグと前記メモリのリードライト状態を
示すリードライト選択フラグとを備え、トレースデータ
を前記演算処理部から取り込み出力する機能と、前記メ
モリに対してトレースデータを読み書きするためのアド
レスを出力する機能と、前記メモリからトレースデータ
を読み込む機能と、前記メモリのリード状態とライト状
態を切り替えるためのリードライト選択信号を出力する
機能とを有するトレース制御回路と、前記トレース制御
回路と前記メモリとに接続されトレースデータを圧縮す
るためのデータ圧縮回路と、2つのメモリから前記トレ
ース制御回路に読み込むトレースデータを選択するため
のセレクタとを備えたものである。
Further, the in-circuit emulator according to the present invention has two memories, and is capable of compressing and writing trace data to one of the memories and reading the trace data from the other memory at the same time. An in-circuit emulator comprising two memories for recording trace data, an execution address which is an address at the time of execution of an instruction, a value of a data bus when the instruction is executed, and signal data necessary for debugging. An arithmetic processing unit for outputting trace data composed of execution data including the data, a trace start flag for starting a trace operation, a trace data transfer request flag for starting trace data transfer, and a read indicating the read / write state of the memory A write selection flag, and A function to read and write trace data from and to the memory; a function to read trace data from the memory; and a read / write to switch between a read state and a write state of the memory. A trace control circuit having a function of outputting a selection signal; a data compression circuit connected to the trace control circuit and the memory for compressing trace data; and a trace data read from two memories into the trace control circuit. And a selector for selection.

【0038】前記構成によって、トレース動作時、一方
のメモリをリード状態、他方のメモリをライト状態と
し、データトラフィック量が減少しているため一方のメ
モリにトレースデータを記録している間に、他方のメモ
リから記録されているすべてのトレースデータを読み出
し、ホストコンピュータへ転送することができ、記録し
ている側のメモリがいっぱいになると、リード状態であ
ったメモリをライト状態に、ライト状態であったメモリ
をリード状態に切り替え、ライト状態のメモリにトレー
スデータを記録し、リード状態のメモリからトレースデ
ータを読み出し、ホストコンピュータへ転送するという
動作を繰り返すことによりトレースデータ転送中におい
てもトレース動作を停止する必要がなく連続してトレー
ス動作を行うことができる。
With the above configuration, during the trace operation, one of the memories is set to the read state and the other memory is set to the write state. All the recorded trace data can be read out from the memory and transferred to the host computer. When the memory on the recording side becomes full, the memory that was in the read state is changed to the write state and the memory in the write state is changed to the write state. The trace operation is stopped during the trace data transfer by repeating the operation of switching the read memory to the read state, recording the trace data in the write state memory, reading the trace data from the read state memory, and transferring it to the host computer The trace operation can be performed continuously without the need to Kill.

【0039】[0039]

【発明の実施の形態】以下、本発明の好適な実施形態を
図1から図3を参照しながら説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A preferred embodiment of the present invention will be described below with reference to FIGS.

【0040】図1は本発明の第1実施形態におけるイン
サーキットエミュレータの構成を示すブロック図であ
り、1はインサーキットエミュレータ、2はホストコン
ピュータ、3は演算処理部としてのマイコン、4はトレ
ース部、101はトレース制御回路、102はデータ圧縮回
路、103はメモリ、201はトレース開始フラグ、202はト
レースデータ転送要求フラグ、501はアドレスバス、502
はデータバス、503はメモリアドレスバス、504はトレー
スデータバス、505はメモリデータ入力バス、506はメモ
リデータ出力バス、507はホストアドレスバス、508はホ
ストデータバスである。
FIG. 1 is a block diagram showing a configuration of an in-circuit emulator according to a first embodiment of the present invention, wherein 1 is an in-circuit emulator, 2 is a host computer, 3 is a microcomputer as an arithmetic processing unit, and 4 is a trace unit. 101, a trace control circuit, 102, a data compression circuit, 103, a memory, 201, a trace start flag, 202, a trace data transfer request flag, 501, an address bus, 502
Is a data bus, 503 is a memory address bus, 504 is a trace data bus, 505 is a memory data input bus, 506 is a memory data output bus, 507 is a host address bus, and 508 is a host data bus.

【0041】第1実施形態のインサーキットエミュレー
タは、命令実行時のアドレスである実行アドレスと、そ
の命令が実行されるときのデータバスの値とデバッグに
必要な信号データとを含む実行データとからなるトレー
スデータを、アドレスバス501、データバス502を介して
出力する機能を有するマイコン3と、トレース部4とか
ら構成される。
The in-circuit emulator according to the first embodiment uses an execution address, which is an address when an instruction is executed, and execution data including a data bus value when the instruction is executed and signal data necessary for debugging. The microcomputer 3 has a function of outputting trace data through the address bus 501 and the data bus 502, and a trace unit 4.

【0042】トレース部4は、アドレスバス501とデー
タバス502を介してマイコン3の実行アドレスと実行デ
ータからなるトレースデータを取り込む機能と、ホスト
アドレスバス507をデコードし、ホストデータバス508に
従いトレース開始フラグ201と、トレースデータ転送要
求フラグ202とを設定する機能と、マイコン3からの実
行アドレスおよび実行データを含むトレースデータをト
レースデータバス504へ出力する機能と、トレースデー
タをメモリ103に対して読み書きするためのアドレスを
メモリアドレスバス503へ出力する機能と、トレースデ
ータをメモリデータ出力バス506を介して読み込む機能
と、ホストコンピュータ2へトレースデータを転送する
機能と、メモリアドレスバス503に出力するアドレスを
管理することにより、メモリ103がいっぱいになったこ
とを検出するとトレース開始フラグ201をトレース停止
状態とする機能を有するトレース制御回路101を備え、
さらにトレースデータバス504を介してトレースデータ
を読み込み、トレースデータを圧縮しメモリデータ入力
バス505へ出力する機能を有するデータ圧縮回路102と、
メモリアドレスバス503の示すアドレスに、メモリデー
タバス505を介して伝達されるトレースデータを書き込
む機能、およびメモリアドレスバス503の示すアドレス
からトレースデータをメモリデータ出力バス506へ出力
する機能を有するメモリ103とを備えている。
The tracing unit 4 has a function of taking in trace data consisting of an execution address and execution data of the microcomputer 3 via the address bus 501 and the data bus 502, decodes the host address bus 507, and starts tracing according to the host data bus 508. A function of setting a flag 201 and a trace data transfer request flag 202; a function of outputting trace data including an execution address and execution data from the microcomputer 3 to a trace data bus 504; A function to output trace data to the memory address bus 503, a function to read trace data via the memory data output bus 506, a function to transfer trace data to the host computer 2, and an address to be output to the memory address bus 503. By managing the When it is detected that became equipped with a trace control circuit 101 having a function of a trace stopped trace start flag 201,
A data compression circuit 102 having a function of reading trace data via the trace data bus 504, compressing the trace data, and outputting the compressed data to the memory data input bus 505;
The memory 103 having a function of writing trace data transmitted via the memory data bus 505 to an address indicated by the memory address bus 503 and a function of outputting trace data from the address indicated by the memory address bus 503 to the memory data output bus 506 And

【0043】また、トレース制御回路101は、トレース
開始状態(Low)とトレース停止状態(High)の2つの状態
を示す1ビットのレジスタであるトレース開始フラグ20
1と、トレースデータ転送状態(Low)とトレースデータ転
送停止状態(High)の2つの状態を示す1ビットのレジス
タであるトレースデータ転送要求フラグ202とを備えて
いる。
The trace control circuit 101 also includes a trace start flag 20 which is a 1-bit register indicating two states of a trace start state (Low) and a trace stop state (High).
1 and a trace data transfer request flag 202 which is a 1-bit register indicating two states of a trace data transfer state (Low) and a trace data transfer stop state (High).

【0044】また、ホストコンピュータ2は、トレース
制御回路101のトレース開始フラグ201,トレースデータ
転送要求フラグ202を設定するためのアドレスをホスト
アドレスバス507へ出力し、かつデータをホストデータ
バスへと出力する機能と、ホストデータバス508からト
レースデータを読み込む機能と、圧縮されたトレースデ
ータを解凍する機能とを有し、トレース制御回路101に
接続されている。
The host computer 2 outputs an address for setting the trace start flag 201 and the trace data transfer request flag 202 of the trace control circuit 101 to the host address bus 507, and outputs data to the host data bus. , A function of reading trace data from the host data bus 508, and a function of decompressing the compressed trace data, and are connected to the trace control circuit 101.

【0045】以上のように構成された第1実施形態のイ
ンサーキットエミュレータについて、以下、その動作を
1)トレース時、2)トレースデータ転送時に分けて説
明する。
The operation of the in-circuit emulator of the first embodiment configured as described above will now be described separately for 1) trace operation and 2) trace data transfer operation.

【0046】1)トレース時 まず、ホストコンピュータ2から、トレース開始フラグ
201をトレース開始状態にするためのアドレスをホスト
アドレスバス507へ出力し、データをホストデータバス5
08へ出力する。トレース制御回路101は、ホストアドレ
スバス507,ホストデータバス508を介してトレース開始
フラグ201をトレース開始状態とする命令を受け取り、
かつそのときトレースデータ転送要求フラグ202がトレ
ースデータ転送停止状態となっている場合、トレース開
始フラグ201をトレース開始状態として、トレース動作
を開始する。
1) At the time of tracing First, the host computer 2 sends a trace start flag
An address for putting 201 in a trace start state is output to the host address bus 507, and the data is output to the host data bus 5
Output to 08. The trace control circuit 101 receives an instruction to set the trace start flag 201 to a trace start state via the host address bus 507 and the host data bus 508,
If the trace data transfer request flag 202 is in the trace data transfer stop state at that time, the trace operation is started with the trace start flag 201 set to the trace start state.

【0047】トレース動作が開始されるとトレース制御
回路101は、アドレスバス501,データバス502を介して
マイコン3の実行アドレスと実行データとからなるトレ
ースデータを取り込み、メモリ103に記録するためのア
ドレスをメモリアドレスバス503を介して出力し、かつ
前記トレースデータをトレースデータバス504を介して
出力する。データ圧縮回路102は、連長圧縮法を用いた
場合、トレースデータバス504を介してトレースデー
タ、例えばAAABBBBBCCを受け取るとA3B5C2に圧縮し、メ
モリデータバス505を介して出力する。圧縮法として
は、この他にもhuffman法,算術圧縮,LZ法などがあ
る。
When the tracing operation is started, the trace control circuit 101 fetches the trace data including the execution address and the execution data of the microcomputer 3 via the address bus 501 and the data bus 502 and records the trace data in the memory 103. Is output via a memory address bus 503, and the trace data is output via a trace data bus 504. When the run length compression method is used, the data compression circuit 102 receives trace data, for example, AAABBBBBCC via the trace data bus 504, compresses the data into A3B5C2, and outputs the compressed data via the memory data bus 505. Other compression methods include the huffman method, arithmetic compression, and LZ method.

【0048】メモリ103は、メモリアドレスバス503を介
して出力されるアドレスにデータ圧縮回路102からメモ
リデータバス505を介して出力されるトレースデータを
記録する。また、ホストコンピュータ2からトレース開
始フラグ201をトレース停止状態にするためのアドレス
をホストアドレスバス507へ出力し、データをホストデ
ータバス508へ出力した場合、およびメモリアドレスバ
ス503を介してメモリ103に記録するトレースデータがい
っぱいになったことを検出した場合、トレース制御回路
101はトレース開始フラグ201をトレース停止状態とし
て、トレース動作を停止する。
The memory 103 records the trace data output from the data compression circuit 102 via the memory data bus 505 at the address output via the memory address bus 503. Further, the host computer 2 outputs an address for setting the trace start flag 201 to the trace stop state to the host address bus 507, and outputs data to the host data bus 508 and to the memory 103 via the memory address bus 503. When it is detected that the trace data to be recorded is full, the trace control circuit
101 sets the trace start flag 201 to the trace stop state and stops the trace operation.

【0049】また、トレース制御回路101は、ホストコ
ンピュータ2からトレース開始フラグ201をトレース開
始状態にするためのアドレスをホストアドレスバス507
へ出力し、かつデータをホストデータバス508へ出力し
たときに、トレースデータ転送要求フラグ202がトレー
スデータ転送状態となっている場合、トレース開始フラ
グ201をトレース開始状態とせずトレース動作を開始し
ない。
The trace control circuit 101 sends an address for setting the trace start flag 201 from the host computer 2 to the trace start state by the host address bus 507.
When the trace data transfer request flag 202 is in the trace data transfer state when the data is output to the host data bus 508 and the data is output to the host data bus 508, the trace operation is not started without setting the trace start flag 201 to the trace start state.

【0050】2)トレースデータ転送時 まず、ホストコンピュータ2からトレース制御回路101
へホストアドレスバス507,ホストデータバス508を介し
てトレースデータ転送要求フラグ202をトレースデータ
転送状態とするためのアドレスおよびデータを出力す
る。トレース制御回路101は、ホストアドレスバス507お
よびホストデータバス508をデコードし、トレースデー
タ転送要求フラグ202をトレースデータ転送状態とする
命令を受け取り、かつそのときトレース開始フラグ201
がトレース停止状態となっている場合、トレースデータ
転送要求フラグ202をトレースデータ転送状態にし、ト
レースデータ転送を開始する。トレースデータ転送状態
となると、トレース制御回路101は、メモリ103からトレ
ースデータを読み出すためのアドレスをメモリアドレス
バス503を介してメモリ103に出力し、メモリ103からト
レースデータをメモリデータ出力バス506を介して読み
込み、ホストデータバス508を介してホストコンピュー
タ2へ転送する。
2) When transferring trace data First, the trace control circuit 101 is sent from the host computer 2.
Via the host address bus 507 and the host data bus 508 to output the address and data for setting the trace data transfer request flag 202 to the trace data transfer state. The trace control circuit 101 decodes the host address bus 507 and the host data bus 508, receives an instruction for setting the trace data transfer request flag 202 to the trace data transfer state, and then, at that time, starts the trace start flag 201
Is in the trace stopped state, the trace data transfer request flag 202 is set to the trace data transfer state, and the trace data transfer is started. In the trace data transfer state, the trace control circuit 101 outputs an address for reading trace data from the memory 103 to the memory 103 via the memory address bus 503, and outputs the trace data from the memory 103 via the memory data output bus 506. And transfers it to the host computer 2 via the host data bus 508.

【0051】ホストコンピュータ2は、圧縮されたトレ
ースデータを必要に応じてハードまたはソフトで解凍す
る。また、トレース制御回路101は、ホストコンピュー
タ2からホストアドレスバス507、ホストデータバス508
を介してトレースデータ転送要求フラグ202をトレース
データ転送停止状態とする命令を受けたとき、およびメ
モリアドレスバス503を介してメモリ103に記録されてい
るトレースデータがなくなったことを検出したときに
は、トレースデータ転送要求フラグ202をトレースデー
タ転送停止状態として、トレースデータ転送動作を停止
する。
The host computer 2 decompresses the compressed trace data by hardware or software as needed. Further, the trace control circuit 101 sends a host address bus 507 and a host data bus 508 from the host computer 2.
When an instruction to set the trace data transfer request flag 202 to the trace data transfer stop state via the memory address bus 503 is detected, and when it is detected that the trace data recorded in the memory 103 is exhausted via the memory address bus 503, the trace The trace data transfer operation is stopped by setting the data transfer request flag 202 to the trace data transfer stop state.

【0052】また、トレース制御回路101は、ホストコ
ンピュータ2からトレースデータ転送要求フラグ202を
トレースデータ転送状態とする命令を受け取り、そのと
きトレース開始フラグ201がトレース開始状態となって
いる場合、トレース動作を一時中断し、トレースデータ
転送要求フラグ202をトレースデータ転送状態とし、ト
レースデータ転送を開始して、ホストコンピュータ2か
らトレースデータ転送要求フラグ202をトレースデータ
転送停止状態とする命令を受けたとき、またはメモリ10
3に記録されているトレースデータがなくなったとき、
トレースデータ転送要求フラグ202をトレースデータ転
送停止状態とし、トレースデータ転送動作を停止し、ト
レース動作を再開する。
The trace control circuit 101 receives an instruction from the host computer 2 for setting the trace data transfer request flag 202 to the trace data transfer state. At this time, if the trace start flag 201 is in the trace start state, the trace operation is started. Is temporarily suspended, the trace data transfer request flag 202 is set to the trace data transfer state, the trace data transfer is started, and when an instruction to set the trace data transfer request flag 202 to the trace data transfer stop state is received from the host computer 2, Or memory 10
When the trace data recorded in 3 runs out,
The trace data transfer request flag 202 is set to the trace data transfer stop state, the trace data transfer operation is stopped, and the trace operation is restarted.

【0053】以上のように第1実施形態によれば、トレ
ース時に、データ圧縮回路102によりトレース制御回路1
01より出力されるトレースデータを圧縮してデータトラ
フィック量を減少させることにより、トレースデータ転
送時に、トレースデータをホストコンピュータ2へ高速
に転送することができるため、ホストコンピュータ2か
らインサーキットエミュレータ1に対するレスポンスを
向上させることができ、またトレースデータを転送する
ためにトレース動作を停止させなければならないトレー
ス動作停止時間を減少させることができる。
As described above, according to the first embodiment, at the time of tracing, the trace control circuit 1 is controlled by the data compression circuit 102.
By reducing the amount of data traffic by compressing the trace data output from 01, the trace data can be transferred to the host computer 2 at a high speed during the transfer of the trace data. The response can be improved, and the trace operation stop time in which the trace operation must be stopped to transfer the trace data can be reduced.

【0054】図2は本発明の第2実施形態におけるイン
サーキットエミュレータの構成を示すブロック図であ
り、2はホストコンピュータ、3はマイコン、5はイン
サーキットエミュレータ、6はトレース部、102はデー
タ圧縮回路、103はメモリ、104はトレース制御回路、10
5はセレクタ、201はトレース開始フラグ、202はトレー
スデータ転送要求フラグ、203は圧縮選択フラグ、501は
アドレスバス、502はデータバス、503はメモリアドレス
バス、504はトレースデータバス、506はメモリデータ出
力バス、507はホストアドレスバス、508はホストデータ
バス、509は圧縮トレースデータバス、510は無圧縮トレ
ースデータバス、511はセレクト信号線、512はセレクタ
メモリデータ入力バスである。
FIG. 2 is a block diagram showing the configuration of an in-circuit emulator according to a second embodiment of the present invention. Reference numeral 2 denotes a host computer, 3 denotes a microcomputer, 5 denotes an in-circuit emulator, 6 denotes a trace unit, and 102 denotes data compression. Circuit, 103 is memory, 104 is trace control circuit, 10
5 is a selector, 201 is a trace start flag, 202 is a trace data transfer request flag, 203 is a compression selection flag, 501 is an address bus, 502 is a data bus, 503 is a memory address bus, 504 is a trace data bus, and 506 is memory data. An output bus, 507 is a host address bus, 508 is a host data bus, 509 is a compressed trace data bus, 510 is an uncompressed trace data bus, 511 is a select signal line, and 512 is a selector memory data input bus.

【0055】第2実施形態のインサーキットエミュレー
タは、命令実行時のアドレスである実行アドレスとその
命令が実行されるときのデータバスの値とデバッグに必
要な信号データとを含む実行データとからなるトレース
データを、アドレスバス501およびデータバス502へ出力
する機能を有するマイコン3と、トレース部6とから構
成されている。
The in-circuit emulator according to the second embodiment includes an execution address which is an address at the time of execution of an instruction, a value of a data bus when the instruction is executed, and execution data including signal data necessary for debugging. The microcomputer 3 has a function of outputting trace data to the address bus 501 and the data bus 502, and the trace unit 6.

【0056】トレース部6は、トレースデータバス504
を介してトレースデータを読み込み、トレースデータを
圧縮して圧縮トレースデータバス509へ出力する機能を
有するデータ圧縮回路102と、メモリアドレスバス503の
示すアドレスに、セレクタメモリデータ入力バス512を
介して伝達されるトレースデータを書き込む機能、およ
びメモリアドレスバス503の示すアドレスからトレース
データをメモリデータ出力バス506へ出力する機能を有
するメモリ103を備え、さらにマイコン3の実行アドレ
スと実行データとからなるトレースデータをアドレスバ
ス501,データバス502を介して取り込む機能と、ホスト
アドレスバス507をデコードして、ホストデータバス508
に従いトレース開始フラグ201と、トレースデータ転送
要求フラグ202,圧縮選択フラグ203とを設定する機能
と、マイコン3からの実行アドレスおよび実行データを
含むトレースデータをトレースデータバス504と無圧縮
トレースデータバス510へ出力する機能と、トレースデ
ータをメモリ103に対して読み書きするためのアドレス
をメモリアドレスバス503へ出力する機能と、トレース
データをメモリデータ出力バス506を介して読み込む機
能と、ホストコンピュータ2へトレースデータを転送す
る機能と、メモリアドレスバス503に出力するアドレス
を管理することにより、メモリ103がいっぱいになった
ことを検出するとトレース開始フラグ201をトレース停
止状態とする機能と、圧縮選択フラグ203が圧縮状態(Lo
w)にセットされているときは、セレクト信号線511へ圧
縮信号(Low)を出力し、無圧縮状態(Low)にセットされて
いるときには無圧縮信号(Low)を出力する機能とを有す
るトレース制御回路104を備えている。
The tracing unit 6 includes a trace data bus 504
And a data compression circuit 102 having a function of reading the trace data, compressing the trace data, and outputting the compressed trace data to the compressed trace data bus 509, and transmitting the data to the address indicated by the memory address bus 503 via the selector memory data input bus 512. And a memory 103 having a function of writing trace data to be written and a function of outputting trace data from the address indicated by the memory address bus 503 to the memory data output bus 506. And a function of taking in the data via the address bus 501 and the data bus 502, and decoding the host address bus 507 to obtain the host data bus 508.
A trace start flag 201, a trace data transfer request flag 202, and a compression selection flag 203, and a trace data bus 504 and a non-compressed trace data bus 510 from the microcomputer 3 including an execution address and execution data. A function of outputting trace data to the memory 103 via the memory data bus 506, a function of outputting an address for reading / writing trace data to / from the memory 103, a function of reading trace data via the memory data output bus 506, By managing the data transfer function and the address output to the memory address bus 503, when the memory 103 becomes full, the trace start flag 201 is set to the trace stop state, and the compression selection flag 203 is set to Compressed state (Lo
w) outputs a compressed signal (Low) to the select signal line 511 when set, and outputs a non-compressed signal (Low) when set to the uncompressed state (Low). The control circuit 104 is provided.

【0057】さらにトレース部6は、セレクト信号線51
1を介して伝わる圧縮セレクト信号により、データ圧縮
回路102から圧縮トレースデータバス509を介して伝達さ
れるトレースデータか、あるいはトレース制御回路104
から無圧縮トレースデータバス510を介して伝達される
トレースデータかを選択し、セレクタメモリデータ入力
バス512へ出力する機能を有するセレクタ105を備えてい
る。
The trace section 6 further includes a select signal line 51
1 according to the compressed select signal transmitted via the data compression circuit 102 via the compressed trace data bus 509 or the trace control circuit 104
And a selector 105 having a function of selecting whether the data is trace data transmitted through a non-compressed trace data bus 510 and outputting it to a selector memory data input bus 512.

【0058】また、トレース制御回路104は、トレース
開始状態(Low)とトレース停止状態(High)の2つの状態
を示す1ビットのレジスタであるトレース開始フラグ20
1と、トレースデータ転送状態(Low)とトレースデータ転
送停止状態(High)の2つの状態を示す1ビットのレジス
タであるトレースデータ転送要求フラグ202と、圧縮状
態(Low)と無圧縮状態(High)の2つの状態を示す1ビッ
トのレジスタである圧縮フラグ203とを備えている。
Further, the trace control circuit 104 includes a trace start flag 20 which is a 1-bit register indicating two states of a trace start state (Low) and a trace stop state (High).
1, a trace data transfer request flag 202 which is a 1-bit register indicating two states of a trace data transfer state (Low) and a trace data transfer stop state (High), a compressed state (Low) and an uncompressed state (High ) And a compression flag 203 which is a 1-bit register indicating the two states.

【0059】また、ホストコンピュータ2はトレース制
御回路104のトレース開始フラグ201,トレースデータ転
送要求フラグ202,圧縮選択フラグ203をそれぞれ設定す
るためのアドレスをホストアドレスバス507へ出力し、
データをホストデータバスへ出力する機能、ホストデー
タバス508からトレースデータを読み込む機能、圧縮さ
れたトレースデータを解凍する機能を有し、トレース制
御回路104に接続されている。
The host computer 2 outputs an address for setting the trace start flag 201, the trace data transfer request flag 202, and the compression selection flag 203 of the trace control circuit 104 to the host address bus 507.
It has a function of outputting data to the host data bus, a function of reading trace data from the host data bus 508, and a function of decompressing compressed trace data, and is connected to the trace control circuit 104.

【0060】以上のように構成された本発明の第2実施
形態のインサーキットエミュレータについて、以下、そ
の動作を1)トレース時、2)トレースデータ転送時に
分けて説明する。
The operation of the in-circuit emulator according to the second embodiment of the present invention configured as described above will now be described separately for 1) trace operation and 2) trace data transfer operation.

【0061】1)トレース時 まず、ホストコンピュータ2から圧縮選択フラグ203に
トレースデータを圧縮するか否かを設定するためのアド
レスをホストアドレスバス507へ出力し、かつデータを
ホストデータバス508へ出力し、圧縮選択フラグ203を設
定して、ホストコンピュータ2からトレース開始フラグ
201をトレース開始状態にするためのアドレスをホスト
アドレスバス507へ出力し、データをホストデータバス5
08へ出力する。
1) At the time of tracing First, an address for setting whether or not to compress the trace data is output from the host computer 2 to the compression selection flag 203 to the host address bus 507, and the data is output to the host data bus 508. Then, the compression selection flag 203 is set and the trace start flag is
An address for putting 201 in a trace start state is output to the host address bus 507, and the data is output to the host data bus 5
Output to 08.

【0062】トレース制御回路104は、ホストアドレス
バス507,ホストデータバス508を介してトレース開始フ
ラグ201をトレース開始状態とする命令を受け取り、そ
のときトレースデータ転送要求フラグ202がトレースデ
ータ転送停止状態となっている場合、トレース開始フラ
グ201をトレース開始状態として、トレース動作を開始
する。トレース動作が開始されるとトレース制御回路10
4は、アドレスバス501,データバス502を介してマイコ
ン3の実行アドレスと実行データとからなるトレースデ
ータを取り込み、メモリ103に記録するためのアドレス
をメモリアドレスバス503へ出力し、トレースデータを
トレースデータバス504と、無圧縮トレースデータバス5
10とへ出力する。また、トレース制御回路104は圧縮選
択フラグ203がトレースデータを圧縮する圧縮状態にな
っている場合、セレクタ105へ圧縮信号を出力し、トレ
ースデータを圧縮しない無圧縮状態になっている場合、
無圧縮信号を出力する。
The trace control circuit 104 receives an instruction for setting the trace start flag 201 to the trace start state via the host address bus 507 and the host data bus 508, and at this time, sets the trace data transfer request flag 202 to the trace data transfer stopped state. If so, the trace operation is started with the trace start flag 201 set to the trace start state. When the trace operation starts, the trace control circuit 10
4 fetches trace data including the execution address and execution data of the microcomputer 3 via the address bus 501 and the data bus 502, outputs an address to be recorded in the memory 103 to the memory address bus 503, and traces the trace data. Data bus 504 and uncompressed trace data bus 5
And output to 10. Further, the trace control circuit 104 outputs a compressed signal to the selector 105 when the compression selection flag 203 is in a compressed state for compressing the trace data, and is in a non-compressed state where the trace data is not compressed,
Outputs uncompressed signal.

【0063】データ圧縮回路102は、トレースデータバ
ス504を介してトレースデータを受け取るとトレースデ
ータを圧縮して、圧縮トレースデータバス509へ出力す
る。セレクタ105は、セレクト信号線511を介して圧縮信
号を得た場合、圧縮トレースデータバス509を介して得
られるトレースデータを選択し、またセレクト信号線51
1を介して無圧縮信号を得た場合、無圧縮トレースデー
タバス510を介して得られる無圧縮のトレースデータを
選択し、セレクタメモリデータ入力バス512を介してメ
モリ103へ出力する。
When receiving the trace data via the trace data bus 504, the data compression circuit 102 compresses the trace data and outputs it to the compressed trace data bus 509. When the selector 105 obtains the compressed signal via the select signal line 511, the selector 105 selects the trace data obtained via the compressed trace data bus 509, and
When a non-compressed signal is obtained via 1, non-compressed trace data obtained via an uncompressed trace data bus 510 is selected and output to the memory 103 via a selector memory data input bus 512.

【0064】メモリ103は、メモリアドレスバス503を介
して出力されるアドレスにメモリデータバス505を介し
て出力されるトレースデータを記録する。また、ホスト
コンピュータ2から、トレース開始フラグ201をトレー
ス停止状態にするためのアドレスをホストアドレスバス
507へ出力し、データをホストデータバス508へ出力した
場合、およびメモリアドレスバス503を介してメモリ103
に記録するトレースデータがいっぱいになったことを検
出した場合、トレース制御回路104はトレース開始フラ
グ201をトレース停止状態として、トレース動作を停止
する。
The memory 103 records the trace data output via the memory data bus 505 at the address output via the memory address bus 503. Also, an address for setting the trace start flag 201 to the trace stop state from the host computer 2 is transmitted to the host address bus.
507 and the data to the host data bus 508 and the memory 103 via the memory address bus 503.
When the trace control circuit 104 detects that the trace data to be recorded in the trace data is full, the trace control circuit 104 sets the trace start flag 201 to the trace stop state and stops the trace operation.

【0065】また、トレース制御回路104は、ホストコ
ンピュータ2からトレース開始フラグ201をトレース開
始状態にするためのアドレスをホストアドレスバス507
へ出力し、データをホストデータバス508へ出力したと
きに、トレースデータ転送要求フラグ202がトレースデ
ータ転送状態となっている場合、トレース開始フラグ20
1をトレース開始状態とせず、トレース動作を開始しな
い。
The trace control circuit 104 sends an address for setting the trace start flag 201 from the host computer 2 to the trace start state by the host address bus 507.
When the trace data transfer request flag 202 is in the trace data transfer state when the data is output to the host data bus 508, the trace start flag 20
Does not set 1 to the trace start state and does not start the trace operation.

【0066】2)トレースデータ転送時 まず、ホストコンピュータ2からトレース制御回路104
へホストアドレスバス507,ホストデータバス508を介し
てトレースデータ転送要求フラグ202をトレースデータ
転送状態とするためのアドレスおよびデータを出力す
る。トレース制御回路104は、ホストアドレスバス507お
よびホストデータバス508をデコードし、トレースデー
タ転送要求フラグ202をトレースデータ転送状態とする
命令を受け取り、かつそのときトレース開始フラグ201
がトレース停止状態となっている場合、トレースデータ
転送要求フラグ202をトレースデータ転送状態にセット
し、トレースデータ転送を開始する。トレースデータ転
送状態となると、トレース制御回路104は、メモリ103か
らトレースデータを読み出すためのアドレスをメモリア
ドレスバス503を介してメモリ103に出力し、メモリ103
からトレースデータをメモリデータ出力バス506を介し
て読み込み、ホストデータバス508を介してホストコン
ピュータ2へ転送する。ホストコンピュータ2は必要に
応じて圧縮されたトレースデータをハードまたはソフト
で解凍する。
2) When transferring trace data First, the trace control circuit 104
Via the host address bus 507 and the host data bus 508 to output the address and data for setting the trace data transfer request flag 202 to the trace data transfer state. The trace control circuit 104 decodes the host address bus 507 and the host data bus 508, receives the instruction for setting the trace data transfer request flag 202 to the trace data transfer state, and then, at that time, starts the trace start flag 201
Is set to the trace stopped state, the trace data transfer request flag 202 is set to the trace data transfer state, and the trace data transfer is started. In the trace data transfer state, the trace control circuit 104 outputs an address for reading trace data from the memory 103 to the memory 103 via the memory address bus 503, and
, Via the memory data output bus 506 and transferred to the host computer 2 via the host data bus 508. The host computer 2 decompresses the compressed trace data by hardware or software as needed.

【0067】また、トレース制御回路104は、ホストコ
ンピュータ2からホストアドレスバス507,ホストデー
タバス508を介してトレースデータ転送要求フラグ202を
トレースデータ転送停止状態とする命令を受けたとき、
およびメモリアドレス503を介してメモリ103に記録され
ているトレースデータがなくなったことを検出したと
き、トレースデータ転送要求フラグ202をトレースデー
タ転送停止状態として、トレースデータ転送動作を停止
する。
When the trace control circuit 104 receives an instruction from the host computer 2 via the host address bus 507 and the host data bus 508 to set the trace data transfer request flag 202 to the trace data transfer stop state,
When it is detected that the trace data recorded in the memory 103 is exhausted via the memory address 503, the trace data transfer request flag 202 is set to the trace data transfer stop state, and the trace data transfer operation is stopped.

【0068】また、トレース制御回路104はホストコン
ピュータ2からトレースデータ転送要求フラグ202をト
レースデータ転送状態とする命令を受け取り、かつその
ときトレース開始フラグ201がトレース開始状態となっ
ている場合、トレース動作を一時中断し、トレースデー
タ転送要求フラグ202をトレースデータ転送状態とし
て、トレースデータ転送を開始し、ホストコンピュータ
2からトレースデータ転送要求フラグ202をトレースデ
ータ転送停止状態とする命令を受けたとき、またはメモ
リ103に記録されているトレースデータがなくなったと
き、トレースデータ転送要求フラグ202をトレースデー
タ転送停止状態とし、トレースデータ転送動作を停止し
て、トレース動作を再開する。
The trace control circuit 104 receives an instruction from the host computer 2 for setting the trace data transfer request flag 202 to the trace data transfer state, and if the trace start flag 201 is in the trace start state at that time, the trace operation is performed. Is temporarily suspended, the trace data transfer request flag 202 is set to the trace data transfer state, the trace data transfer is started, and when an instruction to set the trace data transfer request flag 202 to the trace data transfer stop state is received from the host computer 2, or When there is no more trace data recorded in the memory 103, the trace data transfer request flag 202 is set to the trace data transfer stop state, the trace data transfer operation is stopped, and the trace operation is restarted.

【0069】以上のように第2実施形態によれば、トレ
ース動作時にトレースデータに冗長な信号が多く含まれ
データ圧縮によりデータトラフィック量が減少する場合
にはトレースデータを圧縮、逆にトレースデータに冗長
な部分が少なく圧縮によりデータトラフィック量が増加
してしまう場合にはトレースデータを無圧縮とすること
ができ、トレースデータ転送時にホストコンピュータ2
へ転送するデータトラフィック量がトレースデータを圧
縮することにより増加することを防ぐことができる。
As described above, according to the second embodiment, when a large amount of redundant signals are included in the trace data during the trace operation and the data traffic volume decreases due to the data compression, the trace data is compressed. If the amount of data traffic increases due to compression due to a small number of redundant portions, the trace data can be uncompressed, and the host computer 2 can transfer the trace data when the trace data is transferred.
It is possible to prevent the amount of data traffic to be transferred from being increased by compressing the trace data.

【0070】図3は本発明の第3実施形態におけるイン
サーキットエミュレータの構成を示すブロック図であ
り、2はホストコンピュータ、3はマイコン、7はイン
サーキットエミュレータ、8はトレース部、102はデー
タ圧縮回路、106はトレース制御回路、107,108はメモ
リ、109は読み出し用セレクタ、110はNOT回路、201
はトレース開始フラグ、202はトレースデータ転送要求
フラグ、204はリードライト選択フラグ、501はアドレス
バス、502はデータバス、504はトレースデータバス、50
7はホストアドレスバス、508はホストデータバス、513
はメモリアドレスバス、514はメモリアドレスバス、515
はリードライト選択信号線、516はメモリデータ出力バ
ス、517はメモリデータ出力バス、518は圧縮メモリデー
タ入力バス、519は選択メモリデータ出力バス、520はリ
ードライト選択反転信号線である。
FIG. 3 is a block diagram showing a configuration of an in-circuit emulator according to the third embodiment of the present invention. Reference numeral 2 denotes a host computer, 3 denotes a microcomputer, 7 denotes an in-circuit emulator, 8 denotes a trace unit, and 102 denotes data compression. Circuit, 106 is a trace control circuit, 107 and 108 are memories, 109 is a read selector, 110 is a NOT circuit, 201
Is a trace start flag, 202 is a trace data transfer request flag, 204 is a read / write selection flag, 501 is an address bus, 502 is a data bus, 504 is a trace data bus, 50
7 is the host address bus, 508 is the host data bus, 513
Is the memory address bus, 514 is the memory address bus, 515
Is a read / write selection signal line, 516 is a memory data output bus, 517 is a memory data output bus, 518 is a compressed memory data input bus, 519 is a selected memory data output bus, and 520 is a read / write selection inversion signal line.

【0071】第3実施形態のインサーキットエミュレー
タは、命令実行時のアドレスである実行アドレスと、そ
の命令が実行されるときのデータバスの値とデバッグに
必要な信号データとを含む実行データからなるトレース
データを、アドレスバス501,データバス502へと出力す
る機能を有するマイコン3と、トレース部8とから構成
されている。
The in-circuit emulator according to the third embodiment comprises an execution address which is an address at the time of execution of an instruction, an execution data including a data bus value when the instruction is executed, and signal data necessary for debugging. The microcomputer 3 includes a microcomputer 3 having a function of outputting trace data to an address bus 501 and a data bus 502, and a trace unit 8.

【0072】トレース部8は、トレースデータバス504
を介してトレースデータを読み込み、トレースデータを
圧縮して圧縮メモリデータ入力バス518へ出力する機能
を有するデータ圧縮回路102を備え、さらにマイコン3
の実行アドレスおよび実行データからなるトレースデー
タをアドレスバス501,データバス502を介して取り込む
機能と、ホストアドレスバス507をデコードして、ホス
トデータバス508に従いトレース開始フラグ201とトレー
スデータ転送要求フラグ202とリードライト選択フラグ2
04とを設定する機能と、マイコン3からの実行アドレス
および実行データとを含むトレースデータをトレースデ
ータバス504へ出力する機能と、トレースデータを一方
のメモリ107に対して読み書きするためのアドレスをメ
モリアドレスバス513へ出力する機能と、トレースデー
タを他方のメモリ108に対して読み書きするためのアド
レスをメモリアドレスバス514へ出力する機能と、リー
ドライト選択フラグ204がリード状態(Low)に設定されて
いる場合には、リードライト選択信号線515へリード信
号(Low)を出力し、リードライト選択フラグ204がライト
状態(High)に設定されている場合には、リードライト選
択信号線515へライト信号(High)を出力する機能と、ト
レースデータを選択メモリデータ出力バス519を介して
読み込む機能と、ホストコンピュータ2へトレースデー
タを転送する機能と、メモリアドレスバス513およびメ
モリアドレスバス514に出力するアドレスを管理しトレ
ースデータ書き込み時にメモリがいっぱいになったこと
を検出するとリードライト選択フラグ204をリード状態
ならライト状態に、またライト状態ならリード状態に切
り替えて、リードライト選択フラグ204に対応した信号
をリードライト選択信号線515へ出力する機能を有する
トレース制御回路106を備えている。
The trace section 8 has a trace data bus 504
A data compression circuit 102 having a function of reading trace data through the memory, compressing the trace data, and outputting the compressed data to a compressed memory data input bus 518;
And a function to capture trace data consisting of the execution address and execution data of the host through the address bus 501 and the data bus 502, decode the host address bus 507, and execute the trace start flag 201 and the trace data transfer request flag 202 according to the host data bus 508. And read / write select flag 2
04, a function of outputting trace data including an execution address and execution data from the microcomputer 3 to the trace data bus 504, and an address for reading / writing the trace data to / from one memory 107. A function to output to the address bus 513, a function to output an address for reading / writing trace data to / from the other memory 108 to the memory address bus 514, and a function to set the read / write selection flag 204 to the read state (Low). If the read / write select flag 204 is set to the write state (High), the read signal (Low) is output to the read / write select signal line 515, (High), a function of reading trace data through the selected memory data output bus 519, and a function of outputting trace data to the host computer 2. The data transfer function and the addresses output to the memory address bus 513 and the memory address bus 514, and when it is detected that the memory is full at the time of writing the trace data, the read / write selection flag 204 is set to the write state if the read state, In addition, a trace control circuit 106 having a function of switching to a read state in a write state and outputting a signal corresponding to the read / write selection flag 204 to a read / write selection signal line 515 is provided.

【0073】さらにトレース部8は、リードライト選択
信号線515を介して出力されている信号がライト信号の
とき、メモリアドレスバス513の示すアドレスに圧縮メ
モリデータ入力バス518を介して出力されるトレースデ
ータを記録し、リードライト選択信号線515を介して出
力されている信号がリード信号のとき、メモリアドレス
バス513の示すアドレスに記録されているトレースデー
タをメモリデータ出力バス516へ出力する機能を有する
一方のメモリ107と、リードライト選択反転信号線520を
介して出力されている信号がライト信号のとき、メモリ
アドレスバス514の示すアドレスに圧縮メモリデータ入
力バス518を介して出力されるトレースデータを記録
し、リードライト選択反転信号線520を介して出力され
ている信号がリード信号のとき、メモリアドレスバス51
4の示すアドレスに記録されているトレースデータをメ
モリデータ出力バス517へ出力する機能を有する他方の
メモリ108と、リードライト選択信号線515がリード信号
のとき、メモリデータ出力バス516の信号を選択メモリ
データ出力バス519へ出力し、リードライト選択信号線5
15がライト信号のとき、メモリデータ出力バス517の信
号を、選択メモリデータ出力バス519へ出力する機能を
有する読み出し用セレクタ109と、リードライト選択信
号線515がリード信号のときリードライト反転信号線520
へライト信号を出力し、リードライト選択信号線515が
ライト信号のときリードライト反転信号線520へリード
信号を出力する機能を有するNOT回路110を備えてい
る。
Further, when the signal output via the read / write selection signal line 515 is a write signal, the trace section 8 outputs the trace output via the compressed memory data input bus 518 to the address indicated by the memory address bus 513. A function of recording data and outputting the trace data recorded at the address indicated by the memory address bus 513 to the memory data output bus 516 when the signal output via the read / write selection signal line 515 is a read signal. One of the memories 107 and the trace data output via the compressed memory data input bus 518 to the address indicated by the memory address bus 514 when the signal output via the read / write selection inversion signal line 520 is a write signal Is recorded, and when the signal output through the read / write selection inversion signal line 520 is a read signal, Resubasu 51
The other memory 108 having the function of outputting the trace data recorded at the address indicated by 4 to the memory data output bus 517, and selecting the signal of the memory data output bus 516 when the read / write selection signal line 515 is a read signal. Output to memory data output bus 519 and read / write select signal line 5
A read selector 109 having a function of outputting a signal of the memory data output bus 517 to the selected memory data output bus 519 when 15 is a write signal, and a read / write inversion signal line when the read / write selection signal line 515 is a read signal. 520
And a NOT circuit 110 having a function of outputting a write signal to the read / write inversion signal line 520 when the read / write selection signal line 515 is a write signal.

【0074】また、トレース制御回路106は、トレース
開始状態(Low)とトレース停止状態(High)の2つの状態
を示す1ビットのレジスタであるトレース開始フラグ20
1と、トレースデータ転送状態(Low)とトレースデータ転
送停止状態(High)の2つの状態を示す1ビットのレジス
タであるトレースデータ転送要求フラグ202と、リード
状態(Low)とライト状態(High)の2つの状態を示す1ビ
ットのレジスタであるリードライト選択フラグ204とを
備えている。
The trace control circuit 106 has a trace start flag 20 which is a 1-bit register indicating two states of a trace start state (Low) and a trace stop state (High).
1; a trace data transfer request flag 202 which is a 1-bit register indicating two states of a trace data transfer state (Low) and a trace data transfer stop state (High); a read state (Low) and a write state (High) And a read / write select flag 204 which is a 1-bit register indicating the two states.

【0075】また、ホストコンピュータ2は、トレース
制御回路106のトレース開始フラグ201と、トレースデー
タ転送要求フラグ202と、リードライト選択フラグ204と
をそれぞれ設定するためのアドレスをホストアドレスバ
ス507へ出力し、データをホストデータバス508へと出力
する機能と、ホストデータバス508からトレースデータ
を読み込む機能と、圧縮されたトレースデータを解凍す
る機能とを有し、トレース制御回路106に接続されてい
る。
The host computer 2 outputs an address for setting the trace start flag 201, the trace data transfer request flag 202, and the read / write select flag 204 of the trace control circuit 106 to the host address bus 507. , A function of outputting data to the host data bus 508, a function of reading trace data from the host data bus 508, and a function of decompressing compressed trace data, and are connected to the trace control circuit 106.

【0076】以上のように構成された第3実施例のイン
サーキットエミュレータについて、以下、その動作を説
明する。
The operation of the thus configured in-circuit emulator of the third embodiment will be described below.

【0077】まず、初期設定として仮にホストコンピュ
ータ2からホストアドレスバス507,ホストデータバス5
08を介してリードライト選択フラグ204をライト状態と
する。このとき、リードライト選択信号線515を介して
出力されるライト信号により一方のメモリ107はライト
状態となり、他方のメモリ108はリード状態となってい
る。ホストコンピュータ2からトレース制御回路106へ
ホストアドレスバス507,ホストデータバス508を介して
トレース開始フラグ201をトレース開始状態とするため
のアドレスおよびデータを出力する。
First, as an initial setting, it is temporarily assumed that the host computer 2 sends the host address bus 507 and the host data bus 5
The read / write selection flag 204 is set to a write state via 08. At this time, one memory 107 is in a write state and the other memory 108 is in a read state by a write signal output via the read / write selection signal line 515. The host computer 2 outputs an address and data for setting the trace start flag 201 to a trace start state via the host address bus 507 and the host data bus 508 to the trace control circuit 106.

【0078】トレース制御回路106は、ホストアドレス
バス507,ホストデータバス508をデコードし、トレース
開始フラグ201をトレース開始状態とする命令であり、
かつそのときトレースデータ転送要求フラグ202がトレ
ースデータ転送開始状態となっている場合、トレース開
始フラグ201をトレース開始状態とし、トレース動作を
開始して、マイコン3のアドレスバス501,データバス5
02から実行アドレスと実行データとからなるトレースデ
ータを取り込み、一方のメモリ107に記録するためのア
ドレスをメモリアドレスバス513を介して一方のメモリ1
07に出力し、トレースデータをトレースデータバス504
を介してデータ圧縮回路102に出力し、データ圧縮回路1
02においてトレースデータを圧縮して、圧縮メモリデー
タ入力バス518を介してメモリ107に記録する。
The trace control circuit 106 is an instruction for decoding the host address bus 507 and the host data bus 508 and setting the trace start flag 201 to a trace start state.
If the trace data transfer request flag 202 is in the trace data transfer start state at that time, the trace start flag 201 is set to the trace start state, the trace operation is started, and the address bus 501 and the data bus 5
02, the trace data including the execution address and the execution data is taken in, and an address to be recorded in one memory 107 is stored in one memory 1 via a memory address bus 513.
07 to the trace data bus 504
Output to the data compression circuit 102 via the
At 02, the trace data is compressed and recorded in the memory 107 via the compressed memory data input bus 518.

【0079】このとき、読み出し用セレクタ109は、リ
ードライト選択信号線515によりメモリデータ出力バス5
17が選択されており、一方のメモリ107にトレースデー
タを記録している間に、他方のメモリ108から読み出す
ためのアドレスをメモリアドレスバス514を介して他方
のメモリ108に出力し、このメモリ108に記録されている
すべてのトレースデータをメモリデータ出力バス517
と、読み出し用セレクタ109と、選択メモリデータ出力
バス519とを介してトレース制御回路106に読み込み、ホ
ストデータバス508を介してホストコンピュータ2へ転
送する。
At this time, the read selector 109 is connected to the memory data output bus 5 by the read / write selection signal line 515.
17 is selected, and while the trace data is being recorded in one memory 107, an address for reading from the other memory 108 is output to the other memory 108 via the memory address bus 514, and this memory 108 All trace data recorded in the memory data output bus 517
Then, the data is read into the trace control circuit 106 via the read selector 109 and the selected memory data output bus 519, and is transferred to the host computer 2 via the host data bus 508.

【0080】また、トレース制御回路106は、一方のメ
モリ107に記録するためのアドレスから一方のメモリ107
がいっぱいになったことを検出すると、リードライト選
択フラグ204をリード状態にセットする。この結果、リ
ードライト選択信号線515を介して出力されるリード信
号により一方のメモリ107はリード状態となり、他方の
メモリ108はライト状態となる。トレース制御回路106
は、他方のメモリ108に記録するためのアドレスをメモ
リアドレスバス514を介して切り替えて他方のメモリ108
に出力し、トレースデータを圧縮メモリデータ入力バス
518を介してメモリ108に記録する。
Further, the trace control circuit 106 calculates the address of the one memory 107 from the address to be recorded in the one memory 107.
, The read / write selection flag 204 is set to a read state. As a result, the read signal output via the read / write select signal line 515 causes one memory 107 to be in a read state and the other memory 108 to be in a write state. Trace control circuit 106
Switches the address to be recorded in the other memory 108 via the memory address bus 514 to switch the other memory 108
Output the trace data to the compressed memory data input bus
The data is recorded in the memory 108 via the 518.

【0081】このとき、読み出し用セレクタ109はリー
ドライト選択信号線515によりメモリデータ出力バス516
が選択されており、またトレース制御回路106は、一方
のメモリ107から読み出すためのアドレスをメモリアド
レスバス513を介して一方のメモリ107に出力し、トレー
スデータをメモリデータ出力バス516と、読み出し用セ
レクタ109と、選択メモリデータ出力バス519とを介して
トレース制御回路106に読み込みホストデータバス508を
介してホストコンピュータ2へ転送する。また、他方の
メモリ108に記録するためのアドレスからメモリ108がい
っぱいになったことを検出したときは、リードライト選
択フラグ204をライト状態にセットし、一方のメモリ107
をライト状態とし、他方のメモリ108をリード状態と
し、以後、上記動作を繰り返す。
At this time, the read selector 109 is connected to the memory data output bus 516 by the read / write selection signal line 515.
Is selected, and the trace control circuit 106 outputs an address to be read from the one memory 107 to the one memory 107 via the memory address bus 513, and outputs trace data to the memory data output bus 516 and the memory data output bus 516. The data is read into the trace control circuit 106 via the selector 109 and the selected memory data output bus 519 and transferred to the host computer 2 via the host data bus 508. If it is detected from the address for recording in the other memory 108 that the memory 108 is full, the read / write selection flag 204 is set to the write state, and
In a write state and the other memory 108 in a read state, and thereafter, the above operation is repeated.

【0082】また、トレース制御回路106は、ホストア
ドレスバス507,ホストデータバス508をデコードし、ト
レース開始フラグ201をトレース開始状態とする命令で
あり、かつそのときトレースデータ転送要求フラグ202
がトレースデータ転送停止状態となっている場合、トレ
ース開始フラグ201をトレース開始状態として、トレー
ス動作を開始し、マイコン3のアドレスバス501および
データバス502から実行アドレスと実行データとからな
るトレースデータを取り込み、一方のメモリ107に記録
する。トレース制御回路106は、一方のメモリ107に記録
するためのアドレスから一方のメモリ107がいっぱいに
なったことを検出したとき、またはホストコンピュータ
2からホストアドレスバス507,ホストデータバス508を
介してトレース開始フラグ201をトレース停止状態にす
る命令を受けたとき、トレース開始フラグ201をトレー
ス停止状態として、トレース動作を停止する。
The trace control circuit 106 is an instruction for decoding the host address bus 507 and the host data bus 508 and setting the trace start flag 201 to a trace start state. At that time, the trace data transfer request flag 202
When the trace data transfer is stopped, the trace operation is started by setting the trace start flag 201 as the trace start state, and the trace data including the execution address and the execution data is transferred from the address bus 501 and the data bus 502 of the microcomputer 3. The data is captured and recorded in one memory 107. The trace control circuit 106 detects that one memory 107 is full from an address to be recorded in one memory 107, or traces the data from the host computer 2 via the host address bus 507 and the host data bus 508. When receiving an instruction to set the start flag 201 to the trace stop state, the trace operation is stopped with the trace start flag 201 set to the trace stop state.

【0083】また、トレース動作が停止している場合に
も、ホストコンピュータ2のホストアドレスバス507,
ホストデータバス508を介してトレースデータ転送要求
フラグ202がトレースデータ転送状態にセットされたと
きには、リード状態となっているメモリ107,108からデ
ータを読み込みトレース制御回路106を介してホストコ
ンピュータ2へトレースデータを転送する。
Even when the trace operation is stopped, the host address bus 507 of the host computer 2
When the trace data transfer request flag 202 is set to the trace data transfer state via the host data bus 508, data is read from the memories 107 and 108 in the read state and traced to the host computer 2 via the trace control circuit 106. Transfer data.

【0084】また、トレース制御回路106は、ホストコ
ンピュータ2からホストアドレスバス507,ホストデー
タバス508を介してトレース開始フラグ201をトレース停
止状態にする命令を受けたときは、トレース開始フラグ
201をトレース停止状態として、トレース動作を停止す
る。
When the trace control circuit 106 receives an instruction from the host computer 2 via the host address bus 507 and the host data bus 508 to set the trace start flag 201 to the trace stop state, the trace control circuit 106
The trace operation is stopped by setting 201 as the trace stop state.

【0085】以上のように第3実施形態によれば、トレ
ース動作時、一対のメモリ107,108のうち、一方のメモ
リをリード状態とし、他方のメモリをライト状態とする
と、トラフィックデータ量が減少しているため一方のメ
モリにトレースデータを記録している間に、他方のメモ
リから記録されているすべてのトレースデータを読み出
し、ホストコンピュータ2へ転送することができ、記録
している側のメモリがいっぱいになると、リード状態で
あった他のメモリをライト状態に、またライト状態であ
ったメモリをリード状態に切り替え、ライト状態のメモ
リにトレースデータを記録し、リード状態のメモリから
トレースデータを読み出して、ホストコンピュータ2へ
転送するという動作を繰り返すことにより、トレースデ
ータ転送中においてもトレース動作を停止する必要がな
く、連続してトレース動作を行うことができる。
As described above, according to the third embodiment, when one of the pair of memories 107 and 108 is in the read state and the other is in the write state during the trace operation, the traffic data amount is reduced. Therefore, while the trace data is being recorded in one memory, all the recorded trace data can be read from the other memory and transferred to the host computer 2, and the memory on the recording side can be read. When the memory becomes full, the other memory in the read state is switched to the write state, the memory in the write state is switched to the read state, trace data is recorded in the memory in the write state, and trace data is read from the memory in the read state. By repeating the operation of reading and transferring the data to the host computer 2, during the transfer of the trace data, Trace operation without the need to stop, it is possible to perform the tracing operation in succession.

【0086】なお、第3実施形態ではメモリ107,108が
2つの場合を例にして説明したが、3つ以上のメモリを
設置した場合でも同様に実施することができる。
In the third embodiment, the case where there are two memories 107 and 108 has been described as an example. However, the present invention can be similarly carried out when three or more memories are installed.

【0087】[0087]

【発明の効果】以上のように本発明に係るインサーキッ
トエミュレータによれば、トレース時に、データ圧縮回
路によりトレース制御回路から出力されるトレースデー
タを圧縮しデータトラフィック量を減少させることによ
り、トレースデータ転送時に、トレースデータをホスト
コンピュータへ高速に転送することができるようにな
り、ホストコンピュータからインサーキットエミュレー
タに対するレスポンスを向上させることができ、またト
レースデータを転送するためにトレース動作を停止させ
なければならないトレース動作停止時間を減少させるこ
とができる。
As described above, according to the in-circuit emulator according to the present invention, at the time of tracing, the trace data output from the trace control circuit is compressed by the data compression circuit to reduce the data traffic amount. During the transfer, the trace data can be transferred to the host computer at high speed, the response from the host computer to the in-circuit emulator can be improved, and the trace operation must be stopped to transfer the trace data. Unnecessary trace operation stop time can be reduced.

【0088】また、トレース動作時に、トレースデータ
に冗長な信号が多く含まれデータ圧縮によりデータトラ
フィック量が減少する場合にはトレースデータを圧縮
し、逆にトレースデータに冗長な部分が少なく圧縮によ
りデータトラフィック量が増加してしまう場合にはトレ
ースデータを無圧縮とすることができ、トレースデータ
転送時にホストコンピュータへ転送するデータトラフィ
ック量がトレースデータを圧縮することにより増加する
ことを防ぐことができる。
In the trace operation, when the trace data contains many redundant signals and the data traffic volume is reduced by the data compression, the trace data is compressed. On the contrary, the trace data has a small redundant portion and the data is compressed. When the traffic volume increases, the trace data can be uncompressed, and the data traffic volume transferred to the host computer at the time of the trace data transmission can be prevented from increasing by compressing the trace data.

【0089】また、トレース動作時、複数のメモリのう
ち、一方のメモリをリード状態、他方のメモリをライト
状態とし、データトラフィック量が減少しているため一
方のメモリにトレースデータを記録している間に、他方
のメモリから記録されているすべてのトレースデータを
読み出し、ホストコンピュータ2へ転送することがで
き、記録している側のメモリがいっぱいになると、リー
ド状態であったメモリをライト状態に切り替え、ライト
状態であったメモリをリード状態に切り替え、ライト状
態のメモリにトレースデータを記録し、リード状態のメ
モリからトレースデータを読み出して、ホストコンピュ
ータへ転送するという動作を繰り返すことによりトレー
スデータ転送中においてもトレース動作を停止する必要
がなく、連続してトレース動作を行うことができる。
In the trace operation, one of the plurality of memories is set to the read state and the other memory is set to the write state, and the trace data is recorded in one of the memories because the amount of data traffic is reduced. In the meantime, all the recorded trace data can be read from the other memory and transferred to the host computer 2. When the memory on the recording side becomes full, the memory in the read state is changed to the write state. Switching the memory that was in the write state to the read state, recording trace data in the memory in the write state, reading the trace data from the memory in the read state, and transferring it to the host computer by repeating the operation of transferring trace data It is not necessary to stop the trace operation even during It can be carried out over the scan operation.

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

【図1】本発明の第1実施形態におけるインサーキット
エミュレータの構成を示すブロック図
FIG. 1 is a block diagram showing a configuration of an in-circuit emulator according to a first embodiment of the present invention.

【図2】本発明の第2実施形態におけるインサーキット
エミュレータの構成を示すブロック図
FIG. 2 is a block diagram showing a configuration of an in-circuit emulator according to a second embodiment of the present invention.

【図3】本発明の第3実施形態におけるインサーキット
エミュレータの構成を示すブロック図
FIG. 3 is a block diagram showing a configuration of an in-circuit emulator according to a third embodiment of the present invention.

【図4】従来のインサーキットエミュレータの構成を示
すブロック図
FIG. 4 is a block diagram showing a configuration of a conventional in-circuit emulator.

【図5】従来のインサーキットエミュレータの構成を示
すブロック図
FIG. 5 is a block diagram showing a configuration of a conventional in-circuit emulator.

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

1,5,7 インサーキットエミュレータ 2 ホストコンピュータ 3 マイコン 4,6,8 トレース部 101,104,106 トレース制御回路 102 データ圧縮回路 103,107,108 メモリ 105 セレクタ 109 読み出し用セレクタ 110 NOT回路 201 トレース開始フラグ 202 トレースデータ転送要求フラグ 203 圧縮選択フラグ 204 リードライト選択フラグ 501 アドレスバス 502 データバス 503,513,514 メモリアドレスバス 504 トレースデータバス 505 メモリデータ入力バス 506,516,517 メモリデータ出力バス 507 ホストアドレスバス 508 ホストデータバス 509 圧縮データバス 510 無圧縮トレースデータバス 511 セレクト信号線 512 セレクタメモリデータ入力バス 515 リードライト選択信号線 518 圧縮メモリデータ入力バス 519 選択メモリデータ出力バス 520 リードライト選択反転信号 1, 5, 7 In-circuit emulator 2 Host computer 3 Microcomputer 4, 6, 8 Trace unit 101, 104, 106 Trace control circuit 102 Data compression circuit 103, 107, 108 Memory 105 Selector 109 Read selector 110 NOT circuit 201 Trace start Flag 202 Trace data transfer request flag 203 Compression selection flag 204 Read / write selection flag 501 Address bus 502 Data bus 503, 513, 514 Memory address bus 504 Trace data bus 505 Memory data input bus 506, 516, 517 Memory data output bus 507 Host Address bus 508 Host data bus 509 Compressed data bus 510 Uncompressed trace data bus 511 Select signal line 512 Selector memory data input bus 515 Read / write select signal line 518 Compressed memory data input bus 519 Selected memory data output bus 520 Read / write select inversion Issue

フロントページの続き (72)発明者 森河 徹 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 Fターム(参考) 5B042 HH03 HH30 MA04 MA09 MA19 MA20 MC03 MC09 Continuation of the front page (72) Inventor Toru Morikawa 1006 Kazuma Kadoma, Kadoma City, Osaka Prefecture Matsushita Electric Industrial Co., Ltd. F term (reference) 5B042 HH03 HH30 MA04 MA09 MA19 MA20 MC03 MC09

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 トレースメモリと圧縮手段とを備え、ト
レースデータを前記圧縮手段によって圧縮して前記トレ
ースメモリへ格納する構成にしたことを特徴とするイン
サーキットエミュレータ。
1. An in-circuit emulator comprising a trace memory and compression means, wherein the trace data is compressed by the compression means and stored in the trace memory.
【請求項2】 トレースデータを圧縮してメモリへ格納
することを可能にしたインサーキットエミュレータであ
って、 トレースデータを記録するためのメモリと、 命令実行時のアドレスである実行アドレスと、その命令
が実行されるときのデータバスの値とデバッグに必要な
信号データを含む実行データとからなるトレースデータ
を出力する演算処理部と、 トレース動作を開始するためのトレース開始フラグとト
レースデータ転送を開始するためのトレースデータ転送
要求フラグとを備え、トレースデータを前記演算処理部
から取り込み出力する機能と、前記メモリに対してトレ
ースデータを読み書きするためのアドレスを出力する機
能と、前記メモリからトレースデータを読み込む機能と
を有するトレース制御回路と、 前記トレース制御回路と前記メモリとに接続されトレー
スデータを圧縮するためのデータ圧縮回路と、を備えた
ことを特徴とするインサーキットエミュレータ。
2. An in-circuit emulator capable of compressing trace data and storing the compressed data in a memory, comprising: a memory for recording trace data; an execution address which is an address at the time of instruction execution; An arithmetic processing unit that outputs trace data consisting of the data bus value when execution is performed and execution data including signal data necessary for debugging, a trace start flag for starting a trace operation, and start of trace data transfer A trace data transfer request flag, a function to capture and output trace data from the arithmetic processing unit, a function to output an address for reading and writing trace data to the memory, and a function to trace data from the memory. A trace control circuit having a function of reading the In-circuit emulator comprising: the data compression circuit for compressing the trace data is connected to said a road memory.
【請求項3】 トレースメモリと、圧縮手段と、トレー
スデータを前記圧縮手段によって圧縮して前記トレース
メモリへ格納するか、あるいはトレースデータを圧縮せ
ずに前記トレースメモリへ格納するかを選択する選択手
段とを備えたことを特徴とするインサーキットエミュレ
ータ。
3. A trace memory, a compression means, and a selection for selecting whether to compress the trace data by the compression means and store it in the trace memory, or to store the trace data in the trace memory without compression. And an in-circuit emulator.
【請求項4】 トレースデータを圧縮してメモリへ格納
するか、あるいはトレースデータを圧縮せずにメモリへ
格納するかを選択することを可能にしたインサーキット
エミュレータであって、 トレースデータを記録するためのメモリと、 命令実行時のアドレスである実行アドレスと、その命令
が実行されるときのデータバスの値とデバッグに必要な
信号データを含む実行データとからなるトレースデータ
を出力する演算処理部と、 トレース動作を開始するためのトレース開始フラグとト
レースデータ転送を開始するためのトレースデータ転送
要求フラグと圧縮選択フラグとを備え、トレースデータ
を前記演算処理部から取り込み出力する機能と、前記メ
モリに対して前記トレースデータを読み書きするための
アドレスを出力する機能と、前記メモリからトレースデ
ータを読み込む機能と、トレースデータを圧縮するか否
かを示す信号を出力する機能を有するトレース制御回路
と、 前記トレース制御回路と前記メモリとに接続され、トレ
ースデータを圧縮するためのデータ圧縮回路と、 前記トレース制御回路からの信号に従い、前記データ圧
縮回路により圧縮されたトレースデータか、あるいは無
圧縮のトレースデータかを選択するためのセレクタと、
を備えたことを特徴とするインサーキットエミュレー
タ。
4. An in-circuit emulator that enables a user to select whether to store trace data in a memory by compressing the trace data or to store the trace data in a memory without compressing the trace data. Processing unit for outputting trace data including a memory for executing the instruction, an execution address which is an address at the time of execution of the instruction, and a data bus value at the time of execution of the instruction and execution data including signal data required for debugging. A trace start flag for starting a trace operation, a trace data transfer request flag for starting trace data transfer, and a compression selection flag, a function of capturing and outputting trace data from the arithmetic processing unit; A function of outputting an address for reading and writing the trace data to and from the A trace control circuit having a function of reading trace data from a memory and a function of outputting a signal indicating whether or not to compress the trace data; and a trace control circuit connected to the trace control circuit and the memory for compressing the trace data. A data compression circuit, and a selector for selecting, according to a signal from the trace control circuit, the trace data compressed by the data compression circuit or the uncompressed trace data;
An in-circuit emulator comprising:
【請求項5】 少なくとも2つ以上のトレースメモリ
と、圧縮手段を備え、前記トレースメモリのいずれかに
対してトレースデータを前記圧縮手段によって圧縮して
書き込むと同時に、他のトレースメモリからトレースデ
ータを読み出す構成にしたことを特徴とするインサーキ
ットエミュレータ。
5. At least two or more trace memories, and a compressing means, wherein the compressing means compresses and writes trace data to one of the trace memories, and at the same time, writes trace data from another trace memory. An in-circuit emulator characterized by a configuration for reading.
【請求項6】 2つのメモリを備え、前記メモリの一方
に対してトレースデータを圧縮して書き込むと同時に、
他方のメモリからトレースデータを読み出すことを可能
にしたインサーキットエミュレータであって、 トレースデータを記録するための2つのメモリと、 命令実行時のアドレスである実行アドレスと、その命令
が実行されるときのデータバスの値とデバッグに必要な
信号データを含む実行データとからなるトレースデータ
を出力する演算処理部と、 トレース動作を開始するためのトレース開始フラグとト
レースデータ転送を開始するためのトレースデータ転送
要求フラグと前記メモリのリードライト状態を示すリー
ドライト選択フラグとを備え、トレースデータを前記演
算処理部から取り込み出力する機能と、前記メモリに対
してトレースデータを読み書きするためのアドレスを出
力する機能と、前記メモリからトレースデータを読み込
む機能と、前記メモリのリード状態とライト状態を切り
替えるためのリードライト選択信号を出力する機能とを
有するトレース制御回路と、 前記トレース制御回路と前記メモリとに接続されトレー
スデータを圧縮するためのデータ圧縮回路と、 2つのメモリから前記トレース制御回路に読み込むトレ
ースデータを選択するためのセレクタと、を備えたこと
を特徴とするインサーキットエミュレータ。
6. A memory comprising two memories, wherein trace data is compressed and written to one of the memories,
An in-circuit emulator capable of reading trace data from the other memory, comprising two memories for recording trace data, an execution address which is an address at the time of execution of an instruction, and a time when the instruction is executed An arithmetic processing unit that outputs trace data including the data bus value and execution data including signal data necessary for debugging, a trace start flag for starting a trace operation, and trace data for starting trace data transfer A transfer request flag and a read / write selection flag indicating a read / write state of the memory; a function of taking in and outputting trace data from the arithmetic processing unit; and outputting an address for reading / writing the trace data to / from the memory. Function and read trace data from the memory A trace control circuit having a function of outputting a read / write select signal for switching between a read state and a write state of the memory; and data connected to the trace control circuit and the memory for compressing trace data. An in-circuit emulator comprising: a compression circuit; and a selector for selecting trace data to be read from the two memories into the trace control circuit.
JP11005514A 1999-01-12 1999-01-12 In-circuit emulator Pending JP2000207245A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11005514A JP2000207245A (en) 1999-01-12 1999-01-12 In-circuit emulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11005514A JP2000207245A (en) 1999-01-12 1999-01-12 In-circuit emulator

Publications (1)

Publication Number Publication Date
JP2000207245A true JP2000207245A (en) 2000-07-28

Family

ID=11613307

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11005514A Pending JP2000207245A (en) 1999-01-12 1999-01-12 In-circuit emulator

Country Status (1)

Country Link
JP (1) JP2000207245A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615371B2 (en) * 2002-03-11 2003-09-02 American Arium Trace reporting method and system
GB2453174A (en) * 2007-09-28 2009-04-01 Advanced Risc Mach Ltd Generating a compressed trace stream for a data processing apparatus
JP2013097580A (en) * 2011-10-31 2013-05-20 Mitsubishi Electric Corp Dynamic analysis device, dynamic analysis system, dynamic analysis method and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615371B2 (en) * 2002-03-11 2003-09-02 American Arium Trace reporting method and system
GB2453174A (en) * 2007-09-28 2009-04-01 Advanced Risc Mach Ltd Generating a compressed trace stream for a data processing apparatus
GB2453174B (en) * 2007-09-28 2011-12-07 Advanced Risc Mach Ltd Techniques for generating a trace stream for a data processing apparatus
JP2013097580A (en) * 2011-10-31 2013-05-20 Mitsubishi Electric Corp Dynamic analysis device, dynamic analysis system, dynamic analysis method and program

Similar Documents

Publication Publication Date Title
JPH07121352A (en) Arithmetic processor
US4763254A (en) Information processing system with data storage on plural loop transmission line
JP2000207245A (en) In-circuit emulator
JP2878264B1 (en) Tracer device, trace data compression method, and compressed trace data reading method
JP4003919B2 (en) Data processing apparatus and data processing method
KR100888427B1 (en) Device having shared memory and method for displaying data
JPH06295195A (en) Speech codec
KR0185936B1 (en) Data input control circuit in a/v decoder
JPH07191822A (en) Data storage device and data system
JPS61233857A (en) Data transfer equipment
JP3182287B2 (en) Microprocessor
JPS608949A (en) General interface bus analyzer
JP3146197B2 (en) Data transfer device and storage device
JPH1139184A (en) Emulator
JPS62248043A (en) Memory switching circuit for fetching microcomputer instruction
JPH05120060A (en) Fault data extraction system
JPH05197451A (en) Information processor
JP2001273167A (en) Hardware break circuit
JPS5920135B2 (en) Data transfer method
JPH0542795A (en) Plotter
JPS6061841A (en) Control system of program evaluating device
JPH06303439A (en) Image data processor
JPH10269170A (en) Bus connecting device
JPH05314049A (en) Channel device
JPH0514293B2 (en)