JP5606261B2 - Debug system and method of acquiring trace data of debug system - Google Patents

Debug system and method of acquiring trace data of debug system Download PDF

Info

Publication number
JP5606261B2
JP5606261B2 JP2010234342A JP2010234342A JP5606261B2 JP 5606261 B2 JP5606261 B2 JP 5606261B2 JP 2010234342 A JP2010234342 A JP 2010234342A JP 2010234342 A JP2010234342 A JP 2010234342A JP 5606261 B2 JP5606261 B2 JP 5606261B2
Authority
JP
Japan
Prior art keywords
trace data
input
unit
trace
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010234342A
Other languages
Japanese (ja)
Other versions
JP2012088887A (en
Inventor
浩士 跡部
敏久 亀丸
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010234342A priority Critical patent/JP5606261B2/en
Publication of JP2012088887A publication Critical patent/JP2012088887A/en
Application granted granted Critical
Publication of JP5606261B2 publication Critical patent/JP5606261B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、例えば、LSI(Large Scale Integration)のトレースデータを取得するトレースデータ取得装置、トレースデータ取得装置のトレースデータ取得方法およびデバッグシステムに関するものである。   The present invention relates to, for example, a trace data acquisition device that acquires trace data of LSI (Large Scale Integration), a trace data acquisition method of the trace data acquisition device, and a debug system.

LSIの大規模化により、複数のチップに実装されていたLSIが一つのチップに実装されるようになった。そして、特別な仕掛けを施さなければ、LSI内部の情報を取得することが出来ない。そのため、LSI内部の情報を取得するための手法が必要である。
その一つの手法として、LSI内部の信号をトレースしてトレースデータをLSI内部のトレースメモリに保存した後、LSIの動作を停止させ、トレースメモリからトレースデータを外部装置等に吸い出す作業を行っていた。
しかし、トレースメモリの容量には限界があるため、被試験プログラムの全てのトレースデータを途切れなく取得することができない。そこで、被試験プログラムを分割し、分割された被試験プログラム毎にトレースデータを取得していた。
Due to the large scale of LSIs, LSIs mounted on a plurality of chips are now mounted on a single chip. If no special device is applied, information inside the LSI cannot be acquired. Therefore, a method for acquiring information inside the LSI is necessary.
As one of the methods, after tracing the signal inside the LSI and saving the trace data in the trace memory inside the LSI, the operation of the LSI is stopped and the trace data is extracted from the trace memory to an external device or the like. .
However, since the capacity of the trace memory is limited, it is not possible to obtain all trace data of the program under test without interruption. Therefore, the program under test is divided, and the trace data is acquired for each divided program under test.

特許文献1の従来技術は、一連の作業を自動で行うためにトレースメモリの空き容量を監視する。トレースメモリに空きがなくなった場合には、LSIの動作を停止させ、トレースメモリからトレースデータを退避する。そして、トレースメモリのトレースデータを全て退避した後にLSIの動作を再開させ、トレースデータの取得を再開する。   The prior art of Patent Document 1 monitors the free space in the trace memory in order to automatically perform a series of operations. When the trace memory is full, the LSI operation is stopped and the trace data is saved from the trace memory. Then, after all the trace data in the trace memory is saved, the operation of the LSI is resumed and the acquisition of the trace data is resumed.

また、限られたトレースメモリの容量を活用するため、トレースデータを圧縮回路によって圧縮する手法がある。その一つの手法として、特許文献2の従来技術は、トレースデータを複数の圧縮回路で圧縮し、その中で圧縮率が一番高い圧縮回路で圧縮したデータを選択する。   In addition, there is a method of compressing trace data by a compression circuit in order to utilize a limited capacity of the trace memory. As one of the techniques, the conventional technique of Patent Document 2 compresses trace data by a plurality of compression circuits, and selects data compressed by a compression circuit having the highest compression ratio among them.

特開平5−61720号公報JP-A-5-61720 特開2009−087343号公報JP 2009-087343 A

特許文献1の従来技術は、トレースメモリに空きが無くなる度にLSIの動作を停止してトレースデータを退避しなければならないため効率が悪い。また、被試験プログラムを分割して実行した場合、被試験プログラムを分割せずに実行しなければ発見できない不具合を検出することができない。   The prior art of Patent Document 1 is inefficient because it is necessary to stop the operation of the LSI and save the trace data each time the trace memory runs out of space. Further, when the program under test is divided and executed, it is impossible to detect a problem that cannot be found unless the program under test is executed without being divided.

また、特許文献2の従来手法によりトレースデータを効率的に圧縮したとしても、トレースデータを保存するトレースメモリの容量は有限であるため、特許文献1の課題を解決することはできない。   Even if the trace data is efficiently compressed by the conventional method of Patent Document 2, the capacity of the trace memory for storing the trace data is limited, and thus the problem of Patent Document 1 cannot be solved.

本発明は、例えば、LSIの実行を停止させることなく、被試験プログラムを分割せずに、必要なトレースデータを効率良く取得できるようにすることを目的とする。   An object of the present invention is to make it possible to efficiently acquire necessary trace data, for example, without stopping execution of an LSI and without dividing a program under test.

本発明のトレースデータ取得装置は、
種類が異なる複数のデータであって種類毎に優先度が定められた複数のデータそれぞれをトレースデータとして入力するトレースデータ入力部と、
トレースデータを記憶するトレースデータ記憶部と、
前記トレースデータ記憶部の空き容量に基づいて、前記トレースデータ記憶部に記憶するトレースデータの種類を選択種類として優先度の高い順に1種類以上選択するトレースデータ種類選択部と、
前記トレースデータ入力部がトレースデータを入力した場合、前記トレースデータ入力部にトレースデータとして入力された入力データが前記トレースデータ種類選択部により選択された選択種類のトレースデータであるか否かを判定するトレースデータ種類判定部とを備え、
前記トレースデータ記憶部は、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを記憶する。
The trace data acquisition apparatus of the present invention is
A trace data input unit for inputting each of a plurality of data of different types, each of which has a priority determined for each type, as trace data;
A trace data storage unit for storing trace data;
Based on the free capacity of the trace data storage unit, a trace data type selection unit that selects one or more types in descending order of priority as the type of trace data stored in the trace data storage unit;
When the trace data input unit inputs trace data, it is determined whether or not the input data input as the trace data to the trace data input unit is the selected type of trace data selected by the trace data type selection unit A trace data type determination unit for
The trace data storage unit stores the input data when the trace data type determination unit determines that the input data is the selected type of trace data.

本発明によれば、例えば、LSIの実行を停止させることなく、被試験プログラムを分割せずに、必要なトレースデータを効率良く取得することができる。   According to the present invention, for example, necessary trace data can be efficiently acquired without stopping execution of the LSI and without dividing the program under test.

実施の形態1におけるデバッグシステム200の構成図。1 is a configuration diagram of a debugging system 200 according to Embodiment 1. FIG. 実施の形態1におけるLSIトレースデータ取得装置100の機能構成図。1 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to Embodiment 1. FIG. 実施の形態1におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャート。3 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the first embodiment. 実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理を示すフローチャート。5 is a flowchart showing trace data input / output status analysis processing of a trace data input / output status analysis unit 140 according to the first embodiment. 実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230)の一例を示す概要図。FIG. 6 is a schematic diagram showing an example of a trace data type selection process (S230) of the trace data input / output situation analysis unit 140 according to the first embodiment. 実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230)の一例を示すフローチャート。6 is a flowchart showing an example of a trace data type selection process (S230) of the trace data input / output situation analysis unit 140 according to the first embodiment. 実施の形態2におけるLSIトレースデータ取得装置100の機能構成図。FIG. 4 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to a second embodiment. 実施の形態2におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャート。9 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the second embodiment. 実施の形態3におけるLSIトレースデータ取得装置100の機能構成図。FIG. 10 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to a third embodiment. 実施の形態3におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャート。10 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the third embodiment. 実施の形態4におけるLSIトレースデータ取得装置100の機能構成図。FIG. 10 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to a fourth embodiment. 実施の形態4におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャート。10 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the fourth embodiment. 実施の形態5におけるLSIトレースデータ取得装置100の機能構成図。FIG. 10 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to a fifth embodiment. 実施の形態5におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャート。10 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the fifth embodiment. 実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理を示すフローチャート。10 is a flowchart showing trace data input / output status analysis processing of a trace data input / output status analysis unit 140 according to the fifth embodiment. 実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230B)の一例を示すフローチャート。18 is a flowchart showing an example of a trace data type selection process (S230B) of the trace data input / output situation analysis unit 140 according to the fifth embodiment. 実施の形態6におけるLSIトレースデータ取得装置100の機能構成図。FIG. 10 is a functional configuration diagram of an LSI trace data acquisition apparatus 100 according to a sixth embodiment. 実施の形態7におけるデバッグシステム200の構成図。FIG. 10 is a configuration diagram of a debugging system 200 according to a seventh embodiment. 実施の形態7におけるデバッグ装置220のトレースデータ保存方法を示すフローチャート。18 is a flowchart showing a trace data storage method of the debugging device 220 according to the seventh embodiment.

実施の形態1.
LSI(Large Scale Integration)内で、バッファの空き容量に応じて取得対象のトレースデータの種類を選択し、選択した種類のトレースデータを取得する形態について説明する。
但し、LSIは、トレースデータを取得する対象装置の一例である。例えば、LSIの代わりにパーソナルコンピュータやサーバ装置などの計算機を対象にして、計算機の内部または外部でトレースデータを取得しても構わない。
Embodiment 1 FIG.
A description will be given of a mode in which the type of trace data to be acquired is selected according to the free capacity of the buffer in the LSI (Large Scale Integration), and the selected type of trace data is acquired.
However, the LSI is an example of a target device that acquires trace data. For example, the trace data may be acquired inside or outside the computer for a computer such as a personal computer or a server device instead of the LSI.

図1は、実施の形態1におけるデバッグシステム200の構成図である。
デバッグシステム200の構成について、図1に基づいて説明する。
FIG. 1 is a configuration diagram of a debugging system 200 according to the first embodiment.
The configuration of the debug system 200 will be described with reference to FIG.

デバッグシステム200は、デバッグ対象のLSI210と、LSI210のトレースデータ101に基づいてLSI210の回路またはLSI210で実行するプログラムをデバッグするためのデバッグ装置220とを有する。   The debug system 200 includes an LSI 210 to be debugged and a debug device 220 for debugging a circuit of the LSI 210 or a program executed on the LSI 210 based on the trace data 101 of the LSI 210.

LSI210は、CPU219(Central Processing Unit)、内部バス212、外部出力インタフェース213、内部メモリ214およびLSIトレースデータ取得装置100を備える。
また、LSI210は、複数のトレース信号発生源211を備える。トレース信号発生源211とは、トレース対象のデータ(トレースデータ)を表すトレース信号を発生(入出力)するハードウェア(例えば、回路)またはソフトウェアのことである。CPU219、内部バス212、外部出力インタフェース213、内部メモリ214をトレース信号発生源211にしてもよい。
The LSI 210 includes a CPU 219 (Central Processing Unit), an internal bus 212, an external output interface 213, an internal memory 214, and the LSI trace data acquisition apparatus 100.
The LSI 210 also includes a plurality of trace signal generation sources 211. The trace signal generation source 211 is hardware (for example, a circuit) or software that generates (input / output) a trace signal representing data to be traced (trace data). The CPU 219, the internal bus 212, the external output interface 213, and the internal memory 214 may be used as the trace signal generation source 211.

LSIトレースデータ取得装置100は、各トレース信号発生源211で発生したトレース信号を信号線を介して入力し、入力したトレース信号からトレースデータ101を取得し、取得したトレースデータ101を内部バス212と外部出力インタフェース213とを介してデバッグ装置220に出力する。
但し、外部出力インタフェース213の障害等によりトレースデータ101をデバッグ装置220に出力できない場合、LSIトレースデータ取得装置100はLSI210の内部メモリ214にトレースデータ101を出力する。
The LSI trace data acquisition device 100 inputs a trace signal generated by each trace signal generation source 211 via a signal line, acquires the trace data 101 from the input trace signal, and transmits the acquired trace data 101 to the internal bus 212. The data is output to the debug device 220 via the external output interface 213.
However, if the trace data 101 cannot be output to the debug device 220 due to a failure of the external output interface 213, the LSI trace data acquisition device 100 outputs the trace data 101 to the internal memory 214 of the LSI 210.

以下、トレース信号とトレースデータとを総称して「トレースデータ101」という。   Hereinafter, the trace signal and the trace data are collectively referred to as “trace data 101”.

トレースデータ101には、処理内容(命令)を示すコマンド信号、処理対象のデータ等が記憶されている記憶領域のアドレスを示すアドレス信号、処理対象のデータを示すデータ信号など、複数の種類がある。
実施の形態1において、利用者は、トレースデータ101の種類毎に優先度(重要度)を予め定め、定めた優先度に関する情報(後述する選択方法情報103A)をLSIトレースデータ取得装置100に設定しておくものとする。
The trace data 101 includes a plurality of types such as a command signal indicating processing contents (instructions), an address signal indicating an address of a storage area in which processing target data and the like are stored, and a data signal indicating processing target data. .
In the first embodiment, the user sets a priority (importance) for each type of trace data 101 in advance, and sets information related to the determined priority (selection method information 103A described later) in the LSI trace data acquisition apparatus 100. Shall be kept.

図2は、実施の形態1におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態1におけるLSIトレースデータ取得装置100の機能構成について、図2に基づいて説明する。
FIG. 2 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the first embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the first embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100(トレースデータ取得装置の一例)は、トレースデータ取捨選択部110、トレースデータバッファ120およびトレースデータ入出力状況分析部140を備える。   The LSI trace data acquisition apparatus 100 (an example of a trace data acquisition apparatus) includes a trace data selection / selection unit 110, a trace data buffer 120, and a trace data input / output situation analysis unit 140.

トレースデータ入出力状況分析部140(トレースデータ種類選択部の一例)は、トレースデータバッファ120の空き容量102に基づいて、トレースデータバッファ120に記憶するトレースデータ101の種類を選択種類として優先度の高い順に1種類以上選択する。
以下、選択種類を示す情報を「選択種類情報103B」という。
The trace data input / output status analysis unit 140 (an example of the trace data type selection unit) sets the priority of the type of the trace data 101 stored in the trace data buffer 120 based on the free capacity 102 of the trace data buffer 120 as the selection type. Select one or more in descending order.
Hereinafter, the information indicating the selection type is referred to as “selection type information 103B”.

トレースデータ取捨選択部110(トレースデータ入力部、トレースデータ種類判定部の一例)は、種類が異なる複数のデータであって種類毎に優先度が定められた複数のデータそれぞれをトレースデータ101として入力する。
トレースデータ取捨選択部110は、トレースデータ101を入力した場合、入力したトレースデータ(入力データ)がトレースデータ入出力状況分析部140により選択された選択種類のトレースデータ101であるか否かを判定する。
The trace data selection unit 110 (an example of a trace data input unit and a trace data type determination unit) inputs a plurality of pieces of data having different types and priorities determined for each type as the trace data 101. To do.
When the trace data selection unit 110 inputs the trace data 101, the trace data selection unit 110 determines whether the input trace data (input data) is the selected type of trace data 101 selected by the trace data input / output status analysis unit 140. To do.

トレースデータバッファ120(トレースデータ記憶部の一例)は、トレースデータ取捨選択部110により入力データが選択種類のトレースデータ101であると判定された場合に入力データを記憶する。   The trace data buffer 120 (an example of the trace data storage unit) stores the input data when the trace data sorting / selection unit 110 determines that the input data is the selected type of trace data 101.

例えば、トレースデータ入出力状況分析部140は、以下のように選択種類を選択する。
トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102が大きいほど多くのトレースデータ101の種類を選択種類として選択する。また、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102が小さいほど少ないトレースデータ101の種類を選択種類として選択する。
トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102と所定の容量閾値とを比較する。トレースデータバッファ120の空き容量102が容量閾値より大きい場合、トレースデータ入出力状況分析部140は、トレースデータ101の選択種類を所定の第1の選択種類数だけ選択する。また、トレースデータバッファ120の空き容量102が容量閾値より小さい場合、トレースデータ入出力状況分析部140は、トレースデータ101の選択種類を第1の選択種類数より少ない所定の第2の選択種類数だけ選択する。
For example, the trace data input / output status analysis unit 140 selects a selection type as follows.
The trace data input / output status analysis unit 140 selects more types of trace data 101 as selection types as the free capacity 102 of the trace data buffer 120 is larger. In addition, the trace data input / output situation analysis unit 140 selects the type of trace data 101 that is smaller as the free space 102 of the trace data buffer 120 is smaller as the selection type.
The trace data input / output status analysis unit 140 compares the free capacity 102 of the trace data buffer 120 with a predetermined capacity threshold. When the free capacity 102 of the trace data buffer 120 is larger than the capacity threshold value, the trace data input / output status analysis unit 140 selects the selection type of the trace data 101 by a predetermined first selection type number. When the free capacity 102 of the trace data buffer 120 is smaller than the capacity threshold, the trace data input / output status analysis unit 140 sets the selection type of the trace data 101 to a predetermined second selection type number less than the first selection type number. Just choose.

LSIトレースデータ取得装置100は、さらに、トレースデータ逐次出力部130とトレースデータ制御レジスタ141とを備える。   The LSI trace data acquisition apparatus 100 further includes a trace data sequential output unit 130 and a trace data control register 141.

トレースデータ逐次出力部130は、トレースデータバッファ120に記憶されたトレースデータ101を逐次、デバッグ装置220または内部メモリ214へ出力する。   The trace data sequential output unit 130 sequentially outputs the trace data 101 stored in the trace data buffer 120 to the debug device 220 or the internal memory 214.

トレースデータ制御レジスタ141は、選択方法情報103A(または、選択方法情報103Aを記憶した記憶領域のアドレス)が設定される記憶部である。
選択方法情報103Aは、トレースデータ入出力状況分析部140にトレースデータ101の種類を選択させる選択条件を示す情報である。
The trace data control register 141 is a storage unit in which selection method information 103A (or an address of a storage area that stores the selection method information 103A) is set.
The selection method information 103A is information indicating a selection condition for causing the trace data input / output status analysis unit 140 to select the type of the trace data 101.

LSIトレースデータ取得装置100の「〜部」として説明する構成は「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明する構成は、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
例えば、LSIトレースデータ取得装置100はCPUやメモリを備える。また、「〜部」として説明する機能を実行するプログラムはメモリに記憶され、CPUにより読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
The configuration described as “˜unit” of the LSI trace data acquisition apparatus 100 may be “˜circuit”, “˜device”, “˜device”, and “˜step”, “˜procedure”, “˜processing”. It may be. In other words, the configuration described as “˜unit” may be implemented by any of firmware, software, hardware, or a combination thereof.
For example, the LSI trace data acquisition apparatus 100 includes a CPU and a memory. A program that executes a function described as “˜unit” is stored in a memory, and is read and executed by the CPU. That is, the program causes the computer to function as “to part”, and causes the computer to execute the procedures and methods of “to part”.

図3は、実施の形態1におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャートである。
実施の形態1におけるトレースデータ取得方法の処理の流れについて、図3に基づいて説明する。
FIG. 3 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the first embodiment.
A processing flow of the trace data acquisition method according to the first embodiment will be described with reference to FIG.

S110において、トレースデータ取捨選択部110は、特定のトレース信号発生源211から出力されたトレースデータ101を入力する。
S110の後、S120に進む。
In S110, the trace data sorting / selection unit 110 receives the trace data 101 output from the specific trace signal generation source 211.
It progresses to S120 after S110.

S120において、トレースデータ取捨選択部110は、トレースデータ入出力状況分析部140から選択種類情報103Bを定期的に、または所定のタイミングで取得しているものとする。
選択種類情報103Bは、トレースデータ101の種類を1種類以上示す情報である。
以下、選択種類情報103Bに示されるトレースデータ101の種類を「選択種類」という。
In S120, it is assumed that the trace data sorting selection unit 110 acquires the selection type information 103B from the trace data input / output status analysis unit 140 periodically or at a predetermined timing.
The selection type information 103B is information indicating one or more types of the trace data 101.
Hereinafter, the type of the trace data 101 indicated in the selection type information 103B is referred to as “selection type”.

トレースデータ取捨選択部110は、トレースデータ入出力状況分析部140から前回取得した選択種類情報103Bを参照する。
そして、トレースデータ取捨選択部110は、S110で入力したトレースデータ101が選択種類情報103Bに示される選択種類と同じ種類のトレースデータ101であるか否かを判定する。
The trace data sorting / selection unit 110 refers to the selection type information 103 </ b> B acquired last time from the trace data input / output status analysis unit 140.
Then, the trace data sorting selection unit 110 determines whether or not the trace data 101 input in S110 is the same type of trace data 101 as the selection type indicated in the selection type information 103B.

例えば、トレースデータ101の所定のデータ位置には、トレースデータ101のデータ種類が設定される。
この場合、トレースデータ取捨選択部110は、トレースデータ101に設定されているデータ種類と選択種類情報103Bに示されている選択種類とを比較して判定を行う。
For example, the data type of the trace data 101 is set at a predetermined data position of the trace data 101.
In this case, the trace data sorting / selection unit 110 compares the data type set in the trace data 101 with the selection type indicated in the selection type information 103B to make a determination.

S110で入力したトレースデータ101が選択種類情報103Bに示される選択種類と同じ種類のトレースデータ101である場合(YES)、S130に進む。
S110で入力したトレースデータ101が選択種類情報103Bに示される選択種類と同じ種類のトレースデータ101でない場合(NO)、トレースデータ取捨選択部110はS110で入力したトレースデータ101を破棄し、処理はS110に戻る。
When the trace data 101 input in S110 is the same type of trace data 101 as the selection type indicated in the selection type information 103B (YES), the process proceeds to S130.
When the trace data 101 input in S110 is not the same type of trace data 101 as the selection type indicated in the selection type information 103B (NO), the trace data selection unit 110 discards the trace data 101 input in S110, and the process is Return to S110.

S130において、トレースデータ取捨選択部110は、S110で入力したトレースデータ101をトレースデータバッファ120に保存する。
S130の後、S140に進む。
In S <b> 130, the trace data selection unit 110 stores the trace data 101 input in S <b> 110 in the trace data buffer 120.
It progresses to S140 after S130.

S140において、トレースデータ逐次出力部130は、トレースデータバッファ120から先に保存されたトレースデータ101から順番に取得する。
そして、トレースデータ逐次出力部130は、取得したトレースデータ101をLSI210の内部バス212と外部出力インタフェース213とを介してデバッグ装置220に出力する。但し、外部出力インタフェース213の障害等のためトレースデータ101をデバッグ装置220に出力できない場合、トレースデータ逐次出力部130はトレースデータ101をLSI210の内部メモリ214に退避する。
S140の後、S110に戻る。
In S <b> 140, the trace data sequential output unit 130 sequentially acquires the trace data 101 previously stored from the trace data buffer 120.
Then, the trace data sequential output unit 130 outputs the acquired trace data 101 to the debug device 220 via the internal bus 212 and the external output interface 213 of the LSI 210. However, when the trace data 101 cannot be output to the debug device 220 due to a failure of the external output interface 213, the trace data sequential output unit 130 saves the trace data 101 in the internal memory 214 of the LSI 210.
After S140, the process returns to S110.

S140でトレースデータ逐次出力部130がトレースデータ101を逐次出力することにより、LSI210の動作を停止させずに、トレースデータ101をデバッグ装置220に出力することができる。   The trace data sequential output unit 130 sequentially outputs the trace data 101 in S140, so that the trace data 101 can be output to the debug device 220 without stopping the operation of the LSI 210.

しかし、トレースデータ逐次出力部130からデバッグ装置220へのトレースデータ101の出力は外部出力インタフェース213を介して行うため、トレースデータ逐次出力部130から出力されるトレースデータ101の出力速度は速くない。   However, since the output of the trace data 101 from the trace data sequential output unit 130 to the debug device 220 is performed via the external output interface 213, the output speed of the trace data 101 output from the trace data sequential output unit 130 is not fast.

したがって、トレースデータ逐次出力部130から出力できるトレースデータ101の単位時間当たりの出力量は、通常、トレースデータ取捨選択部110に入力される単位時間当たりのトレースデータ101の入力量(発生量)よりも少ない。
このため、全てのトレースデータ101をトレースデータバッファ120に保存してしまうと、トレースデータバッファ120の空き容量が無くなり、重要なトレースデータ101を保存できなくなってしまう。
Therefore, the output amount per unit time of the trace data 101 that can be output from the trace data sequential output unit 130 is usually larger than the input amount (generation amount) of the trace data 101 per unit time that is input to the trace data selection unit 110. There are few.
For this reason, if all the trace data 101 is stored in the trace data buffer 120, the free space of the trace data buffer 120 is lost, and important trace data 101 cannot be stored.

そこで、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102に基づいて、トレースデータバッファ120に保存するトレースデータ101の種類を選択する。
そして、トレースデータ取捨選択部110は、トレースデータ入出力状況分析部140により選択された選択種類のトレースデータ101だけをトレースデータバッファ120に保存する(S120、S130)。
Therefore, the trace data input / output status analysis unit 140 selects the type of the trace data 101 to be stored in the trace data buffer 120 based on the free capacity 102 of the trace data buffer 120.
Then, the trace data selection / selection unit 110 stores only the selected type of trace data 101 selected by the trace data input / output situation analysis unit 140 in the trace data buffer 120 (S120, S130).

次に、トレースデータ入出力状況分析部140の処理について説明する。   Next, the processing of the trace data input / output status analysis unit 140 will be described.

図4は、実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理を示すフローチャートである。
実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理について、図4に基づいて説明する。
FIG. 4 is a flowchart showing trace data input / output status analysis processing of the trace data input / output status analysis unit 140 according to the first embodiment.
The trace data input / output status analysis processing of the trace data input / output status analysis unit 140 in the first embodiment will be described with reference to FIG.

S210において、トレースデータ入出力状況分析部140は、トレースデータ制御レジスタ141(または、トレースデータ制御レジスタ141に示されるアドレスで特定される記憶領域)から選択方法情報103Aを取得する。トレースデータ入出力状況分析部140は定期的にまたは所定のタイミングで選択方法情報103Aを取得し直してもよい。
選択方法情報103Aは、トレースデータ101の種類を選択する選択条件を示す情報である。選択方法情報103Aは、利用者によって、トレースデータ制御レジスタ141またはLSIトレースデータ取得装置100のメモリに予め設定されているものとする。
In S210, the trace data input / output status analysis unit 140 acquires the selection method information 103A from the trace data control register 141 (or the storage area specified by the address indicated in the trace data control register 141). The trace data input / output situation analysis unit 140 may acquire the selection method information 103A periodically or at a predetermined timing.
The selection method information 103A is information indicating a selection condition for selecting the type of the trace data 101. It is assumed that the selection method information 103A is preset in the memory of the trace data control register 141 or the LSI trace data acquisition apparatus 100 by the user.

例えば、選択方法情報103Aは、トレースデータバッファ120の空き容量102と比較する容量閾値を示す。さらに、選択方法情報103Aは、トレースデータバッファ120の空き容量102と容量閾値との大小関係に対応付けて、選択すべきトレースデータ101の種類を示す。
また例えば、選択方法情報103Aは、トレースデータ101の種類毎に優先度を示す。さらに、選択方法情報103Aは、トレースデータバッファ120の空き容量102と容量閾値との大小関係に対応付けて、選択すべきトレースデータ101の種類の数を示す。
For example, the selection method information 103A indicates a capacity threshold value to be compared with the free capacity 102 of the trace data buffer 120. Furthermore, the selection method information 103A indicates the type of trace data 101 to be selected in association with the magnitude relationship between the free capacity 102 of the trace data buffer 120 and the capacity threshold.
Further, for example, the selection method information 103 </ b> A indicates a priority for each type of trace data 101. Further, the selection method information 103A indicates the number of types of trace data 101 to be selected in association with the magnitude relationship between the free capacity 102 of the trace data buffer 120 and the capacity threshold.

S210の後、S220に進む。   It progresses to S220 after S210.

S220において、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量を示す情報(空き容量102)を取得する。トレースデータバッファ120の空き容量を示す情報は、トレースデータバッファ120のバッファ管理機能から取得できるものとする。
空き容量を示す情報とは、空き容量のサイズや空き容量の割合などを意味する。実施の形態1において、空き容量を示す情報を「空き容量102」という。
S220の後、S230に進む。
In S <b> 220, the trace data input / output status analysis unit 140 acquires information indicating the free capacity of the trace data buffer 120 (free capacity 102). Information indicating the free capacity of the trace data buffer 120 can be obtained from the buffer management function of the trace data buffer 120.
The information indicating the free space means the free space size, the free space ratio, and the like. In the first embodiment, the information indicating the free capacity is referred to as “free capacity 102”.
It progresses to S230 after S220.

S230において、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102と選択方法情報103Aとに基づいて、トレースデータ101の種類を選択する。
トレースデータバッファ120の空き容量102に基づいてトレースデータ101の種類を選択することにより、トレースデータバッファ120の空き容量102が少なくなっても、重要なトレースデータ101を保存することができる。
S230の詳細については後述する。
S230の後、S240に進む。
In S230, the trace data input / output status analysis unit 140 selects the type of the trace data 101 based on the free capacity 102 of the trace data buffer 120 and the selection method information 103A.
By selecting the type of the trace data 101 based on the free capacity 102 of the trace data buffer 120, the important trace data 101 can be saved even if the free capacity 102 of the trace data buffer 120 decreases.
Details of S230 will be described later.
It progresses to S240 after S230.

S240において、トレースデータ入出力状況分析部140は、選択したトレースデータ101の種類を示す選択種類情報103Bを生成し、生成した選択種類情報103Bをトレースデータ取捨選択部110に入力する。
S240の後、S220に戻る。
In S240, the trace data input / output situation analysis unit 140 generates selection type information 103B indicating the type of the selected trace data 101, and inputs the generated selection type information 103B to the trace data sorting and selection unit 110.
After S240, the process returns to S220.

トレースデータ入出力状況分析部140は、S220からS240の処理を定期的に、または所定のタイミングで実行する。   The trace data input / output status analysis unit 140 executes the processing from S220 to S240 periodically or at a predetermined timing.

図5は、実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230)の一例を示す概要図である。
トレースデータ入出力状況分析処理(図4参照)で実行するトレースデータ種類選択処理(S230)の一例について、図5に基づいて説明する。
FIG. 5 is a schematic diagram illustrating an example of the trace data type selection process (S230) of the trace data input / output situation analysis unit 140 according to the first embodiment.
An example of the trace data type selection process (S230) executed in the trace data input / output situation analysis process (see FIG. 4) will be described with reference to FIG.

例えば、トレースデータ101(トレース信号)の種類には、処理内容(命令)を示すコマンド信号101Aと、処理対象のデータ等が記憶されている記憶領域のアドレスを示すアドレス信号101Bと、処理対象のデータを示すデータ信号101Cとの3種類が存在するものとする。
また、コマンド信号101A、アドレス信号101B、データ信号101Cの順で優先度(重要度)が高いものとする。
For example, the type of the trace data 101 (trace signal) includes a command signal 101A indicating the processing content (instruction), an address signal 101B indicating the address of the storage area where the processing target data and the like are stored, and the processing target It is assumed that there are three types of data signals 101C indicating data.
Further, it is assumed that the priority (importance) is higher in the order of the command signal 101A, the address signal 101B, and the data signal 101C.

トレースデータ取捨選択部110は、コマンド信号101Aとアドレス信号101Bとデータ信号101Cとのうち、選択種類情報103Bに示される選択種類と同じ種類のトレースデータ101をトレースデータバッファ120に記憶する。
トレースデータ逐次出力部130は、トレースデータバッファ120からトレースデータ101を記憶順に取得し、取得したトレースデータ101を出力する。
The trace data sorting and selection unit 110 stores the trace data 101 of the same type as the selection type indicated in the selection type information 103B among the command signal 101A, the address signal 101B, and the data signal 101C in the trace data buffer 120.
The trace data sequential output unit 130 acquires the trace data 101 from the trace data buffer 120 in the storage order, and outputs the acquired trace data 101.

トレースデータバッファ120の記憶領域のうちトレースデータ101が記憶されている領域を「利用領域」といい、トレースデータ101が記憶されていない領域を「空き領域」という。
トレースデータバッファ120の空き容量102とは、トレースデータバッファ120の空き領域のサイズまたは割合を意味する。
Of the storage areas of the trace data buffer 120, an area where the trace data 101 is stored is referred to as a “use area”, and an area where the trace data 101 is not stored is referred to as an “empty area”.
The free capacity 102 of the trace data buffer 120 means the size or ratio of the free area of the trace data buffer 120.

トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102を容量閾値(大)および容量閾値(小)と比較する。
空き容量102が容量閾値(大)より大きい場合、トレースデータ入出力状況分析部140は、全てのトレースデータ101の種類を選択する。
空き容量102が容量閾値(大)より小さく容量閾値(小)より大きい場合、トレースデータ入出力状況分析部140は、優先度が高い種類から順に2つの種類(コマンド信号101A、アドレス信号101B)を選択する。
空き容量102が容量閾値(小)より小さい場合、トレースデータ入出力状況分析部140は、優先度が最も高い種類(コマンド信号101A)を選択する。
The trace data input / output status analysis unit 140 compares the free capacity 102 of the trace data buffer 120 with a capacity threshold (large) and a capacity threshold (small).
When the free capacity 102 is larger than the capacity threshold (large), the trace data input / output status analysis unit 140 selects all types of the trace data 101.
When the free capacity 102 is smaller than the capacity threshold value (large) and larger than the capacity threshold value (small), the trace data input / output status analysis unit 140 selects two types (command signal 101A and address signal 101B) in descending order of priority. select.
When the free capacity 102 is smaller than the capacity threshold (small), the trace data input / output status analysis unit 140 selects the type (command signal 101A) having the highest priority.

トレースデータ入出力状況分析部140は、選択したトレースデータ101の種類を示す選択種類情報103Bをトレースデータ取捨選択部110に入力する。   The trace data input / output status analysis unit 140 inputs selection type information 103B indicating the type of the selected trace data 101 to the trace data sorting selection unit 110.

図6は、実施の形態1におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230)の一例を示すフローチャートである。
図5で説明したトレースデータ種類選択処理(S230)のフローチャートについて、図6に基づいて説明する。
FIG. 6 is a flowchart illustrating an example of the trace data type selection process (S230) of the trace data input / output situation analysis unit 140 according to the first embodiment.
A flowchart of the trace data type selection process (S230) described with reference to FIG. 5 will be described with reference to FIG.

S231において、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102と、選択方法情報103Aに示される容量閾値(大)とを大小比較する。
空き容量102が容量閾値(大)以上の場合(YES)、S232に進む。
空き容量102が容量閾値(大)未満の場合(NO)、S233に進む。
In S231, the trace data input / output status analysis unit 140 compares the free capacity 102 of the trace data buffer 120 with the capacity threshold (large) indicated in the selection method information 103A.
If the free capacity 102 is greater than or equal to the capacity threshold (large) (YES), the process proceeds to S232.
When the free capacity 102 is less than the capacity threshold (large) (NO), the process proceeds to S233.

S232において、トレースデータ入出力状況分析部140は、選択方法情報103Aに基づいて、コマンド信号101Aとアドレス信号101Bとデータ信号101Cとを選択する。
S232により、トレースデータ選択処理(S230)は終了する。
In S232, the trace data input / output status analysis unit 140 selects the command signal 101A, the address signal 101B, and the data signal 101C based on the selection method information 103A.
By S232, the trace data selection process (S230) ends.

S233において、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102と、選択方法情報103Aに示される容量閾値(小)とを大小比較する。
空き容量102が容量閾値(小)以上の場合(YES)、S234に進む。
空き容量102が容量閾値(小)未満の場合(NO)、S235に進む。
In S233, the trace data input / output status analysis unit 140 compares the free capacity 102 of the trace data buffer 120 with the capacity threshold (small) indicated in the selection method information 103A.
When the free capacity 102 is equal to or larger than the capacity threshold (small) (YES), the process proceeds to S234.
When the free capacity 102 is less than the capacity threshold (small) (NO), the process proceeds to S235.

S234において、トレースデータ入出力状況分析部140は、選択方法情報103Aに基づいて、コマンド信号101Aとアドレス信号101Bとを選択する。
S234により、トレースデータ選択処理(S230)は終了する。
In S234, the trace data input / output status analysis unit 140 selects the command signal 101A and the address signal 101B based on the selection method information 103A.
The trace data selection process (S230) is terminated by S234.

S235において、トレースデータ入出力状況分析部140は、選択方法情報103Aに基づいて、コマンド信号101Aを選択する。
S235により、トレースデータ選択処理(S230)は終了する。
In S235, the trace data input / output status analysis unit 140 selects the command signal 101A based on the selection method information 103A.
By S235, the trace data selection process (S230) ends.

図5および図6で説明したトレースデータ種類選択処理(S230)は実施の形態の一例である。
例えば、トレースデータバッファ120の空き容量102と比較する容量閾値の数は、2つではなく、1つ又は3つ以上であってもよい。
また、トレースデータ101の種類は、3種類ではなく、2種類又は4種類以上であってもよい。
The trace data type selection process (S230) described with reference to FIGS. 5 and 6 is an example of the embodiment.
For example, the number of capacity thresholds to be compared with the free capacity 102 of the trace data buffer 120 is not two, but may be one or three or more.
Further, the types of trace data 101 may be two types or four or more types instead of three types.

図5に示すように、空き容量102は利用領域の容量と相補的に対応している。そのため、空き容量102と容量閾値とを比較する代わりに、利用領域の容量と容量閾値とを比較しても構わない。
実施の形態1において、空き容量102と容量閾値とを比較することは、利用領域の容量と容量閾値とを比較することに等しい(但し、大小関係は逆転する)。
As shown in FIG. 5, the free capacity 102 corresponds to the capacity of the used area in a complementary manner. Therefore, instead of comparing the free capacity 102 and the capacity threshold, the capacity of the used area and the capacity threshold may be compared.
In the first embodiment, comparing the free capacity 102 and the capacity threshold is equivalent to comparing the capacity of the use area and the capacity threshold (however, the magnitude relationship is reversed).

実施の形態1において、例えば、以下のようなLSIトレースデータ取得装置100について説明した。   In the first embodiment, for example, the following LSI trace data acquisition apparatus 100 has been described.

LSIトレースデータ取得装置100は、トレースデータ取捨選択部110とトレースデータバッファ120とトレースデータ入出力状況分析部140とを備える。
トレースデータ取捨選択部110は、トレースデータ101を取捨選択する。
トレースデータバッファ120は、トレースデータ101を一時的に保存する。
トレースデータ入出力状況分析部140は、トレースデータ101の入出力状況(空き容量102)を分析する。そして、トレースデータ入出力状況分析部140は、トレースデータバッファ120の残容量(空き容量102)に応じて、トレースデータ取捨選択部110を動的に制御する。
The LSI trace data acquisition apparatus 100 includes a trace data sorting / selection unit 110, a trace data buffer 120, and a trace data input / output status analysis unit 140.
The trace data selection unit 110 selects the trace data 101.
The trace data buffer 120 temporarily stores the trace data 101.
The trace data input / output status analysis unit 140 analyzes the input / output status (free capacity 102) of the trace data 101. Then, the trace data input / output status analysis unit 140 dynamically controls the trace data selection unit 110 according to the remaining capacity (free capacity 102) of the trace data buffer 120.

LSIトレースデータ取得装置100は、さらに、トレースデータ逐次出力部130を備える。
トレースデータ逐次出力部130は、トレースデータバッファ120に保存されているトレースデータ101をトレースデータバッファ120から外部に逐次出力する。
The LSI trace data acquisition apparatus 100 further includes a trace data sequential output unit 130.
The trace data sequential output unit 130 sequentially outputs the trace data 101 stored in the trace data buffer 120 from the trace data buffer 120 to the outside.

LSIトレースデータ取得装置100は、さらに、トレースデータ入出力状況分析部140の動作を制御するためのトレースデータ制御レジスタ141を備える。   The LSI trace data acquisition apparatus 100 further includes a trace data control register 141 for controlling the operation of the trace data input / output status analysis unit 140.

LSI210のデバッグ作業では、全てのトレース信号発生源211の情報が必要というわけではなく、トレース信号発生源211ごとに必要さの優先度がある。また、トレースデータ101を逐次出力することのできるデータ量はそのときによって変動する。
実施の形態1では、トレースデータバッファ120の入出力状況(空き容量102)を分析することにより、トレースデータ101を適切に取捨選択している。
つまり、トレースデータ101を逐次出力できるデータ量が多いときは多くのトレース信号(トレースデータ101)を取得している。また、トレースデータ101を逐次出力できるデータ量が少ないときは優先度の高い限られたトレース信号のみを選択している。
これにより、LSI210の動作を止めることなく、トレースデータ101を取得することができる。さらに、適切な容量閾値を設定することにより、トレースデータバッファ120の記憶容量を最小限に抑えることができる。つまり、トレースデータバッファ120の記憶容量を削減することができる。
In the debugging operation of the LSI 210, information on all the trace signal generation sources 211 is not necessary, and each trace signal generation source 211 has a necessary priority. Further, the amount of data for which the trace data 101 can be sequentially output varies depending on the time.
In the first embodiment, the trace data 101 is appropriately selected by analyzing the input / output status (free capacity 102) of the trace data buffer 120.
That is, many trace signals (trace data 101) are acquired when the amount of data that can sequentially output the trace data 101 is large. In addition, when the amount of data that can sequentially output the trace data 101 is small, only a limited trace signal having a high priority is selected.
Thus, the trace data 101 can be acquired without stopping the operation of the LSI 210. Furthermore, the storage capacity of the trace data buffer 120 can be minimized by setting an appropriate capacity threshold. That is, the storage capacity of the trace data buffer 120 can be reduced.

LSI210内部に埋め込まれた「性能モニタ」と呼ばれるカウンタを利用してLSI210の性能を測定する方法がある。性能モニタは予め定められたイベントの回数をカウントする。例えば、性能モニタは、演算命令、バスアサート、パイプラインストールなどのイベントをカウントする。
性能モニタのカウント値を読み出すには性能モニタにアクセスする必要がある。しかし、LSI210のCPUを用いて性能モニタにアクセスする場合、性能モニタにアクセスし、性能モニタからカウント値を読み出すためのコードをLSI210のプログラムソースに追加する必要がある。また、LSI210のデバッグやLSI210の性能測定のために性能モニタにアクセスする場合、LSI210のCPUが性能モニタにアクセスすることにより、LSI210の使用環境に影響を与える可能性がある。
実施の形態1では、性能モニタをトレース信号発生源211としてLSIトレースデータ取得装置100に接続すれば、性能モニタのカウント値(トレースデータ101の一例)をLSIトレースデータ取得装置100で取得することができる。つまり、LSI210のプログラムソースにコードを追加する必要がなく、LSI210の使用環境に影響を与えない。
There is a method of measuring the performance of the LSI 210 using a counter called “performance monitor” embedded in the LSI 210. The performance monitor counts a predetermined number of events. For example, the performance monitor counts events such as arithmetic instructions, bus assertions, and pipeline installations.
To read the performance monitor count value, it is necessary to access the performance monitor. However, when accessing the performance monitor using the CPU of the LSI 210, it is necessary to add a code for accessing the performance monitor and reading the count value from the performance monitor to the program source of the LSI 210. When accessing the performance monitor for debugging the LSI 210 or measuring the performance of the LSI 210, the CPU of the LSI 210 may access the performance monitor, which may affect the usage environment of the LSI 210.
In the first embodiment, if the performance monitor is connected to the LSI trace data acquisition apparatus 100 as the trace signal generation source 211, the count value (an example of the trace data 101) of the performance monitor can be acquired by the LSI trace data acquisition apparatus 100. it can. That is, it is not necessary to add code to the program source of the LSI 210, and the usage environment of the LSI 210 is not affected.

実施の形態2.
トレースデータバッファ120により多くの種類のトレースデータ101を保存するために、トレースデータ101を圧縮してトレースデータバッファ120に保存する形態について説明する。
以下、実施の形態1と異なる事項について主に説明する。説明を省略する事項については実施の形態1と同様である。
Embodiment 2. FIG.
In order to store many types of trace data 101 in the trace data buffer 120, a form in which the trace data 101 is compressed and stored in the trace data buffer 120 will be described.
Hereinafter, items different from the first embodiment will be mainly described. Matters whose description is omitted are the same as those in the first embodiment.

図7は、実施の形態2におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態2におけるLSIトレースデータ取得装置100の機能構成について、図7に基づいて説明する。
FIG. 7 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the second embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the second embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100は、実施の形態1の構成(図2参照)に加えて、圧縮回路150を備える。   The LSI trace data acquisition apparatus 100 includes a compression circuit 150 in addition to the configuration of the first embodiment (see FIG. 2).

圧縮回路150(トレースデータ圧縮部の一例)は、トレースデータ取捨選択部110により入力データが選択種類のトレースデータであると判定された場合に入力データを圧縮する。   The compression circuit 150 (an example of the trace data compression unit) compresses the input data when the trace data sorting / selection unit 110 determines that the input data is the selected type of trace data.

トレースデータバッファ120は、圧縮回路150により圧縮された入力データを記憶する。   The trace data buffer 120 stores the input data compressed by the compression circuit 150.

図8は、実施の形態2におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャートである。
実施の形態2におけるトレースデータ取得方法の処理の流れについて、図8に基づいて説明する。
FIG. 8 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the second embodiment.
A processing flow of the trace data acquisition method according to the second embodiment will be described with reference to FIG.

実施の形態1と同じ処理(図3参照)には実施の形態1と同じ処理番号(Sxxx)を付している。   The same processing number (Sxxx) as in the first embodiment is assigned to the same processing as in the first embodiment (see FIG. 3).

S110において、トレースデータ取捨選択部110は、トレースデータ101を入力する。
S110の後、S120に進む。
In S110, the trace data sorting / selection unit 110 inputs the trace data 101.
It progresses to S120 after S110.

S120において、トレースデータ取捨選択部110は、入力したトレースデータ101が選択種類のトレースデータ101であるか否かを判定する。
入力したトレースデータ101が選択種類のトレースデータ101である場合(YES)、S131に進む。
入力したトレースデータ101が選択種類のトレースデータ101でない場合(NO)、S110に戻る。
In S120, the trace data sorting / selection unit 110 determines whether or not the input trace data 101 is the selected type of trace data 101.
When the input trace data 101 is the selected type of trace data 101 (YES), the process proceeds to S131.
If the input trace data 101 is not the selected type of trace data 101 (NO), the process returns to S110.

S131において、圧縮回路150はトレースデータ取捨選択部110からトレースデータ101を入力し、入力したトレースデータ101を所定の圧縮方式で圧縮する。
トレースデータ101を圧縮することにより、トレースデータ101のデータサイズを小さくし、トレースデータバッファ120の空き容量102を増やすことができる。
トレースデータバッファ120の空き容量102が増えた場合、実施の形態1で説明したように(図4から図6参照)、トレースデータ入出力状況分析部140により選択されるトレースデータ101の種類が増える。つまり、より多くの種類のトレースデータ101をトレースデータバッファ120に保存することができる。
In S131, the compression circuit 150 inputs the trace data 101 from the trace data sorting / selection unit 110, and compresses the input trace data 101 by a predetermined compression method.
By compressing the trace data 101, the data size of the trace data 101 can be reduced, and the free capacity 102 of the trace data buffer 120 can be increased.
When the free space 102 of the trace data buffer 120 increases, as described in the first embodiment (see FIGS. 4 to 6), the types of the trace data 101 selected by the trace data input / output status analysis unit 140 increase. . That is, more types of trace data 101 can be stored in the trace data buffer 120.

例えば、圧縮回路150は、ランレングス符号化方式でトレースデータ101を圧縮する。
ランレングス符号化方式では、前回と同じデータが入力された場合にはデータを出力はせず、同じデータが入力された回数をカウントする。また、前回と異なるデータが入力された場合、入力されたデータと前回までのカウント回数とを合わせて出力する。これにより、出力データ量を削減することができる。
このランレングス符号化方式は、トレースデータ101の変化が少ない場合に特に有効である。
For example, the compression circuit 150 compresses the trace data 101 by the run length encoding method.
In the run-length encoding method, when the same data as the previous time is input, the data is not output and the number of times the same data is input is counted. When data different from the previous time is input, the input data and the number of counts up to the previous time are output together. Thereby, the amount of output data can be reduced.
This run-length encoding method is particularly effective when the change in the trace data 101 is small.

S131の後、S132に進む。   After S131, the process proceeds to S132.

S132において、圧縮回路150は、圧縮したトレースデータ101(圧縮データ104)をトレースデータバッファ120に保存する。
S132の後、S141に進む。
In S <b> 132, the compression circuit 150 stores the compressed trace data 101 (compressed data 104) in the trace data buffer 120.
It progresses to S141 after S132.

S141において、トレースデータ逐次出力部130は、トレースデータバッファ120から圧縮データ104を取得し、取得した圧縮データ104を出力する。
S141の後、S110に戻る。
In S <b> 141, the trace data sequential output unit 130 acquires the compressed data 104 from the trace data buffer 120 and outputs the acquired compressed data 104.
After S141, the process returns to S110.

実施の形態2において、圧縮回路150を備えるLSIトレースデータ取得装置100について説明した。
圧縮回路150は、トレースデータ取捨選択部110から発生したトレースデータ101を圧縮する。
トレースデータ取捨選択部110で選択したトレース信号(トレースデータ101)を圧縮回路150により圧縮することにより、トレース信号のトレースデータ量を削減し、より多くのトレース信号を取得することができる。
In the second embodiment, the LSI trace data acquisition apparatus 100 including the compression circuit 150 has been described.
The compression circuit 150 compresses the trace data 101 generated from the trace data sorting / selection unit 110.
By compressing the trace signal (trace data 101) selected by the trace data selection / selection unit 110 by the compression circuit 150, the amount of trace data of the trace signal can be reduced, and more trace signals can be acquired.

実施の形態3.
複数の圧縮回路を備えることにより、より多くの種類のトレースデータ101をトレースデータバッファ120に保存する形態について説明する。
以下、実施の形態1、2と異なる事項について主に説明する。説明を省略する事項については実施の形態1、2と同様である。
Embodiment 3 FIG.
A description will be given of a mode in which more types of trace data 101 are stored in the trace data buffer 120 by providing a plurality of compression circuits.
Hereinafter, items different from the first and second embodiments will be mainly described. Matters whose description is omitted are the same as in the first and second embodiments.

図9は、実施の形態3におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態3におけるLSIトレースデータ取得装置100の機能構成について、図9に基づいて説明する。
FIG. 9 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the third embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the third embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100は、実施の形態1の構成(図2参照)に加えて、複数の圧縮回路150、圧縮回路選択部151、圧縮回路分析部152および圧縮回路制御レジスタ153を備える。   The LSI trace data acquisition apparatus 100 includes a plurality of compression circuits 150, a compression circuit selection unit 151, a compression circuit analysis unit 152, and a compression circuit control register 153 in addition to the configuration of the first embodiment (see FIG. 2).

複数の圧縮回路150は、トレースデータ取捨選択部110により入力データが選択種類のトレースデータ101であると判定された場合に入力データをそれぞれに異なる圧縮方式で圧縮する。   The plurality of compression circuits 150 compress the input data using different compression methods when the input data is determined to be the selected type of trace data 101 by the trace data sorting and selection unit 110.

圧縮回路分析部152(圧縮データ選択部の一例)は、複数の圧縮回路150により圧縮して得られた複数の入力データのうちいずれかの入力データを選択する。
以下、選択した入力データ(圧縮データ104)を出力した圧縮回路150を「選択回路105B」という。
The compression circuit analysis unit 152 (an example of a compressed data selection unit) selects any input data from among a plurality of input data obtained by compression by the plurality of compression circuits 150.
Hereinafter, the compression circuit 150 that outputs the selected input data (compressed data 104) is referred to as a “selection circuit 105B”.

圧縮回路選択部151は、圧縮回路分析部152により選択された入力データをトレースデータバッファ120に記憶する。   The compression circuit selection unit 151 stores the input data selected by the compression circuit analysis unit 152 in the trace data buffer 120.

圧縮回路制御レジスタ153は、圧縮条件情報105A(または、圧縮条件情報105Aを記憶した記憶領域のアドレス)が設定される記憶部である。
圧縮条件情報105Aは、圧縮回路分析部152に圧縮データ104を選択させる選択条件を示す情報である。
The compression circuit control register 153 is a storage unit in which compression condition information 105A (or an address of a storage area that stores the compression condition information 105A) is set.
The compression condition information 105A is information indicating a selection condition for causing the compression circuit analysis unit 152 to select the compressed data 104.

図10は、実施の形態3におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャートである。
実施の形態3におけるトレースデータ取得方法の処理の流れについて、図10に基づいて説明する。
FIG. 10 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the third embodiment.
A processing flow of the trace data acquisition method according to the third embodiment will be described with reference to FIG.

実施の形態1と同じ処理(図3参照)には実施の形態1と同じ処理番号(Sxxx)を付している。   The same processing number (Sxxx) as in the first embodiment is assigned to the same processing as in the first embodiment (see FIG. 3).

S110において、トレースデータ取捨選択部110は、トレースデータ101を入力する。
S110の後、S120に進む。
In S110, the trace data sorting / selection unit 110 inputs the trace data 101.
It progresses to S120 after S110.

S120において、トレースデータ取捨選択部110は、入力したトレースデータ101が選択種類のトレースデータ101であるか否かを判定する。
入力したトレースデータ101が選択種類のトレースデータ101である場合(YES)、S133に進む。
入力したトレースデータ101が選択種類のトレースデータ101でない場合(NO)、S110に戻る。
In S120, the trace data sorting / selection unit 110 determines whether or not the input trace data 101 is the selected type of trace data 101.
When the input trace data 101 is the selected type of trace data 101 (YES), the process proceeds to S133.
If the input trace data 101 is not the selected type of trace data 101 (NO), the process returns to S110.

S133において、複数の圧縮回路150はトレースデータ取捨選択部110からトレースデータ101を入力し、入力したトレースデータ101をそれぞれに異なる圧縮方式で圧縮する。   In S133, the plurality of compression circuits 150 input the trace data 101 from the trace data sorting / selection unit 110, and compress the input trace data 101 by different compression methods.

トレースデータ101の圧縮率は圧縮方式によって異なり、また、同じ圧縮方式であってもトレースデータ101のデータ構成によって異なる。
したがって、あるトレースデータ101を他の圧縮方式よりも高い圧縮率で圧縮する圧縮方式が別のトレースデータ101を他の圧縮方式よりも高い圧縮率で圧縮できるとは限らない。
そのため、トレースデータ101を異なる圧縮方式で圧縮する複数の圧縮回路150を備えることにより、トレースデータ101をより高い圧縮率で圧縮することができる。
The compression rate of the trace data 101 varies depending on the compression method, and even with the same compression method, it varies depending on the data configuration of the trace data 101.
Therefore, a compression method that compresses a certain trace data 101 at a higher compression rate than other compression methods cannot always compress another trace data 101 at a higher compression rate than other compression methods.
Therefore, the trace data 101 can be compressed at a higher compression rate by including a plurality of compression circuits 150 that compress the trace data 101 using different compression methods.

S133の後、S134に進む。   It progresses to S134 after S133.

S134において、圧縮回路分析部152は、予め、圧縮回路制御レジスタ153(または、圧縮回路制御レジスタ153に示されるアドレスで特定される記憶領域)から圧縮条件情報105Aを取得しているものとする。圧縮回路分析部152は定期的にまたは所定のタイミングで圧縮条件情報105Aを取得し直してもよい。
圧縮回路分析部152は、圧縮条件情報105Aに基づいて、複数の圧縮回路150のうちいずれかの圧縮回路150を選択し、選択した圧縮回路150を示す情報を圧縮回路選択部151に入力する。
実施の形態3において、選択した圧縮回路150を「選択回路105B」という。
In S134, it is assumed that the compression circuit analysis unit 152 acquires the compression condition information 105A from the compression circuit control register 153 (or the storage area specified by the address indicated by the compression circuit control register 153) in advance. The compression circuit analysis unit 152 may reacquire the compression condition information 105A periodically or at a predetermined timing.
The compression circuit analysis unit 152 selects one of the plurality of compression circuits 150 based on the compression condition information 105A, and inputs information indicating the selected compression circuit 150 to the compression circuit selection unit 151.
In the third embodiment, the selected compression circuit 150 is referred to as “selection circuit 105B”.

圧縮条件情報105Aは、圧縮された複数のトレースデータ101(圧縮データ104)のうちいずれかのトレースデータ101を選択する選択条件を示す情報である。圧縮条件情報105Aは、利用者によって、圧縮回路制御レジスタ153またはLSIトレースデータ取得装置100のメモリに予め設定しておく。   The compression condition information 105 </ b> A is information indicating a selection condition for selecting any one of the trace data 101 (compressed data 104) that has been compressed. The compression condition information 105A is previously set by the user in the compression circuit control register 153 or the memory of the LSI trace data acquisition apparatus 100.

例えば、圧縮条件情報105Aは、圧縮データ104の選択条件として「データサイズが最小の圧縮データ104(圧縮率が最も高い圧縮回路150)」を指定する。
この場合、圧縮回路分析部152は、複数の圧縮回路150により生成された複数の圧縮データ104のうちデータサイズが最も小さい圧縮データ104を特定し、特定した圧縮データ104を生成した圧縮回路150を選択回路105Bとして選択する。
For example, the compression condition information 105A specifies “compressed data 104 with the smallest data size (compression circuit 150 with the highest compression rate)” as a selection condition for the compressed data 104.
In this case, the compression circuit analysis unit 152 identifies the compressed data 104 having the smallest data size among the plurality of compressed data 104 generated by the plurality of compression circuits 150, and determines the compression circuit 150 that generated the identified compressed data 104. Select as the selection circuit 105B.

また例えば、圧縮条件情報105Aは、複数の圧縮回路150のうちいずれかの圧縮回路150を指定する。
この場合、圧縮回路分析部152は、圧縮条件情報105Aに指定された圧縮回路150を選択回路105Bとして選択する。
For example, the compression condition information 105 </ b> A designates one of the plurality of compression circuits 150.
In this case, the compression circuit analysis unit 152 selects the compression circuit 150 specified in the compression condition information 105A as the selection circuit 105B.

S134の後、S135に進む。   After S134, the process proceeds to S135.

S135において、圧縮回路選択部151は、複数の圧縮回路150それぞれからトレースデータ101を圧縮した圧縮データ104を入力し、圧縮回路分析部152から選択回路105Bを示す情報を入力する。
そして、圧縮回路選択部151は、複数の圧縮データ104のうち選択回路105Bから入力した圧縮データ104と、選択回路105Bの圧縮方式を示す識別情報とをトレースデータバッファ120に保存する。
S135の後、S141に進む。
In S135, the compression circuit selection unit 151 receives the compressed data 104 obtained by compressing the trace data 101 from each of the plurality of compression circuits 150, and receives information indicating the selection circuit 105B from the compression circuit analysis unit 152.
Then, the compression circuit selection unit 151 stores, in the trace data buffer 120, the compressed data 104 input from the selection circuit 105B among the plurality of compressed data 104 and the identification information indicating the compression method of the selection circuit 105B.
It progresses to S141 after S135.

S141において、トレースデータ逐次出力部130は、トレースデータバッファ120から圧縮データ104と圧縮方式の識別情報とを出力する。
S141の後、S110に戻る。
In S <b> 141, the trace data sequential output unit 130 outputs the compressed data 104 and the identification information of the compression method from the trace data buffer 120.
After S141, the process returns to S110.

圧縮回路分析部152による圧縮回路150の選択(S134)は、トレースデータ取捨選択部110にトレースデータ101が入力される度に行わずに、定期的または所定のタイミングで行っても構わない。   The selection of the compression circuit 150 by the compression circuit analysis unit 152 (S134) may be performed periodically or at a predetermined timing without being performed every time the trace data 101 is input to the trace data sorting selection unit 110.

実施の形態3において、例えば、以下のようなLSIトレースデータ取得装置100について説明した。   In the third embodiment, for example, the following LSI trace data acquisition apparatus 100 has been described.

LSIトレースデータ取得装置100は、複数の圧縮回路150と圧縮回路選択部151と圧縮回路制御レジスタ153とを備える。
複数の圧縮回路150は、トレースデータ101を異なる圧縮方式で圧縮する。
圧縮回路選択部151は、圧縮回路150の一つを選択し、選択した圧縮回路150により圧縮されたトレースデータ101をトレースデータバッファ120へ保存する。
圧縮回路制御レジスタ153は、圧縮回路150を選択するために用いる情報を与える。
これにより、単一の圧縮方式でトレースデータ101を圧縮するよりもトレースデータ量を削減し、より多くのトレースデータ101を取得することができる。
The LSI trace data acquisition apparatus 100 includes a plurality of compression circuits 150, a compression circuit selection unit 151, and a compression circuit control register 153.
The plurality of compression circuits 150 compress the trace data 101 using different compression methods.
The compression circuit selection unit 151 selects one of the compression circuits 150 and stores the trace data 101 compressed by the selected compression circuit 150 in the trace data buffer 120.
The compression circuit control register 153 gives information used for selecting the compression circuit 150.
Thereby, the amount of trace data can be reduced and more trace data 101 can be acquired than when the trace data 101 is compressed by a single compression method.

実施の形態4.
所定のイベントが発生した場合にのみトレースデータ101を保存する形態について説明する。
以下、実施の形態1〜3と異なる事項について主に説明する。説明を省略する事項については実施の形態1〜3と同様である。
Embodiment 4 FIG.
A mode in which the trace data 101 is stored only when a predetermined event occurs will be described.
Hereinafter, items different from the first to third embodiments will be mainly described. Matters whose description is omitted are the same as those in the first to third embodiments.

図11は、実施の形態4におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態4におけるLSIトレースデータ取得装置100の機能構成について、図11に基づいて説明する。
FIG. 11 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the fourth embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the fourth embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100は、実施の形態1の構成(図2参照)に加えて、イベント監視部160とイベント制御レジスタ161とを備える。   The LSI trace data acquisition apparatus 100 includes an event monitoring unit 160 and an event control register 161 in addition to the configuration of the first embodiment (see FIG. 2).

イベント監視部160(イベント判定部の一例)は、所定のイベントが発生したか否かを判定する。   The event monitoring unit 160 (an example of an event determination unit) determines whether or not a predetermined event has occurred.

トレースデータバッファ120は、イベント監視部160により所定のイベントが発生したと判定され、トレースデータ取捨選択部110により入力データが選択種類のトレースデータ101であると判定された場合に入力データを記憶する。   The trace data buffer 120 stores input data when it is determined that a predetermined event has occurred by the event monitoring unit 160 and the input data is determined to be the selected type of trace data 101 by the trace data selection unit 110. .

イベント制御レジスタ161は、イベント情報106(または、イベント情報106を記憶した記憶領域のアドレス)が設定される記憶部である。
イベント情報106は、イベント監視部160に判定させるイベントを示す情報である。
The event control register 161 is a storage unit in which event information 106 (or an address of a storage area storing the event information 106) is set.
The event information 106 is information indicating an event to be determined by the event monitoring unit 160.

図12は、実施の形態4におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャートである。
実施の形態4におけるトレースデータ取得方法の処理の流れについて、図12に基づいて説明する。
FIG. 12 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the fourth embodiment.
A processing flow of the trace data acquisition method according to the fourth embodiment will be described with reference to FIG.

実施の形態1と同じ処理(図3参照)には実施の形態1と同じ処理番号(Sxxx)を付している。   The same processing number (Sxxx) as in the first embodiment is assigned to the same processing as in the first embodiment (see FIG. 3).

S110において、トレースデータ取捨選択部110は、トレースデータ101を入力する。
S110の後、S120に進む。
In S110, the trace data sorting / selection unit 110 inputs the trace data 101.
It progresses to S120 after S110.

S120において、トレースデータ取捨選択部110は、入力したトレースデータ101が選択種類のトレースデータ101であるか否かを判定する。
入力したトレースデータ101が選択種類のトレースデータ101である場合(YES)、S121に進む。
入力したトレースデータ101が選択種類のトレースデータ101でない場合(NO)、S110に戻る。
In S120, the trace data sorting / selection unit 110 determines whether or not the input trace data 101 is the selected type of trace data 101.
When the input trace data 101 is the selected type of trace data 101 (YES), the process proceeds to S121.
If the input trace data 101 is not the selected type of trace data 101 (NO), the process returns to S110.

S121において、イベント監視部160は、トレースデータ取捨選択部110からトレースデータ101を入力する。   In step S <b> 121, the event monitoring unit 160 inputs the trace data 101 from the trace data selection unit 110.

また、イベント監視部160は、イベント制御レジスタ161(または、イベント制御レジスタ161に示されるアドレスで特定される記憶領域)からイベント情報106を予め取得しているものとする。イベント情報106は、発生したか否かを判定する対象のイベントを示す情報である。実施の形態4において、イベント情報106に示されるイベントを「対象イベント」という。イベント監視部160は定期的にまたは所定のタイミングでイベント情報106を取得し直してもよい。   In addition, it is assumed that the event monitoring unit 160 has previously acquired the event information 106 from the event control register 161 (or the storage area specified by the address indicated in the event control register 161). The event information 106 is information indicating an event for which it is determined whether or not it has occurred. In the fourth embodiment, the event indicated in the event information 106 is referred to as a “target event”. The event monitoring unit 160 may acquire the event information 106 periodically or at a predetermined timing.

そして、イベント監視部160は、イベント情報106に示される対象イベントが既に発生しているか否かを判定する。   Then, the event monitoring unit 160 determines whether or not the target event indicated in the event information 106 has already occurred.

イベントとは、コマンドの発生、データの受け渡し、エラーの検出など、LSI210に発生する特定の事象のことである。
実施の形態4において、イベントを示す信号をイベント発生刺激信号という。また、LSI210にイベントが発生した場合、イベントを発生または検出したLSI210の回路がイベント発生刺激信号を出力する。
An event is a specific event that occurs in the LSI 210 such as generation of a command, data transfer, or error detection.
In the fourth embodiment, a signal indicating an event is referred to as an event generation stimulus signal. When an event occurs in the LSI 210, the circuit of the LSI 210 that has generated or detected the event outputs an event generation stimulus signal.

LSI210にイベントが発生した場合、イベント監視部160は、イベントを発生または検出したLSI210の回路からイベント発生刺激信号を入力する。
また、イベント監視部160は、入力したイベント発生刺激信号に示されるイベントがイベント情報106に示される対象イベントであるか否かを判定する。
When an event occurs in the LSI 210, the event monitoring unit 160 inputs an event generation stimulus signal from the circuit of the LSI 210 that has generated or detected the event.
In addition, the event monitoring unit 160 determines whether or not the event indicated in the input event occurrence stimulus signal is a target event indicated in the event information 106.

そして、S110で入力したトレースデータ101が対象イベントのイベント発生刺激信号を入力してから最初に入力したトレースデータ101である場合、イベント監視部160は、対象イベントが既に発生していると判定する。
但し、イベント監視部160は、その他の判定条件に従って判定しても構わない。例えば、対象イベントのイベント発生刺激信号を入力してから所定の経過時間が経過していない場合、イベント監視部160は、対象イベントが既に発生していると判定してもよい。また、イベント監視部160は、対象イベントのイベント発生刺激信号を入力してから他のイベント発生刺激信号を入力するまで、対象イベントが既に発生していると判定してもよい。
If the trace data 101 input in S110 is the trace data 101 input first after the event occurrence stimulus signal of the target event is input, the event monitoring unit 160 determines that the target event has already occurred. .
However, the event monitoring unit 160 may determine according to other determination conditions. For example, when a predetermined elapsed time has not elapsed since the event occurrence stimulus signal of the target event has been input, the event monitoring unit 160 may determine that the target event has already occurred. Further, the event monitoring unit 160 may determine that the target event has already occurred from the input of the event occurrence stimulus signal of the target event to the input of another event occurrence stimulus signal.

イベント情報106に示される対象イベントが既に発生している場合(YES)、S136に進む。
イベント情報106に示される対象イベントが発生していない場合(NO)、イベント監視部160はトレースデータ101を破棄し、処理はS110に戻る。
When the target event indicated in the event information 106 has already occurred (YES), the process proceeds to S136.
When the target event indicated by the event information 106 has not occurred (NO), the event monitoring unit 160 discards the trace data 101, and the process returns to S110.

S136において、イベント監視部160は、トレースデータ101をトレースデータバッファ120に保存する。
S136の後、S140に進む。
In S <b> 136, the event monitoring unit 160 stores the trace data 101 in the trace data buffer 120.
After S136, the process proceeds to S140.

S140において、トレースデータ逐次出力部130は、トレースデータバッファ120からトレースデータ101を取得し、取得したトレースデータ101を出力する。
S140の後、S110に戻る。
In S140, the trace data sequential output unit 130 acquires the trace data 101 from the trace data buffer 120, and outputs the acquired trace data 101.
After S140, the process returns to S110.

実施の形態4において、例えば、以下のようなLSIトレースデータ取得装置100について説明した。   In the fourth embodiment, for example, the following LSI trace data acquisition apparatus 100 has been described.

LSIトレースデータ取得装置100は、イベント監視部160とイベント制御レジスタ161とを備える。
イベント監視部160は、規定のイベントが発生したときのみ、トレースデータ取捨選択部110から発生したトレースデータ101をトレースデータバッファ120へ保存する。
イベント制御レジスタ161は、トレースデータ101をトレースデータバッファ120へ保存するためのイベントを制御する。
The LSI trace data acquisition device 100 includes an event monitoring unit 160 and an event control register 161.
The event monitoring unit 160 stores the trace data 101 generated from the trace data sorting / selection unit 110 in the trace data buffer 120 only when a prescribed event occurs.
The event control register 161 controls an event for saving the trace data 101 in the trace data buffer 120.

実施の形態4において、LSIトレースデータ取得装置100は、実施の形態2と同様に圧縮回路150を備えても構わない。
この場合、圧縮回路150はトレースデータ101を圧縮して得られた圧縮データ104をイベント監視部160に入力し、イベント監視部160は圧縮回路150から入力した圧縮データ104をトレースデータバッファ120に保存する。
In the fourth embodiment, the LSI trace data acquisition apparatus 100 may include the compression circuit 150 as in the second embodiment.
In this case, the compression circuit 150 inputs the compressed data 104 obtained by compressing the trace data 101 to the event monitoring unit 160, and the event monitoring unit 160 stores the compressed data 104 input from the compression circuit 150 in the trace data buffer 120. To do.

また、LSIトレースデータ取得装置100は、実施の形態3と同様に、複数の圧縮回路150、圧縮回路選択部151、圧縮回路分析部152および圧縮回路制御レジスタ153を備えても構わない。
この場合、圧縮回路選択部151は選択回路105Bから出力された圧縮データ104と選択回路105Bの圧縮方式を示す識別情報とをイベント監視部160に入力する。そして、イベント監視部160は圧縮回路選択部151から入力した圧縮データ104と圧縮方式の識別情報とをトレースデータバッファ120に保存する。
Further, the LSI trace data acquisition apparatus 100 may include a plurality of compression circuits 150, a compression circuit selection unit 151, a compression circuit analysis unit 152, and a compression circuit control register 153, as in the third embodiment.
In this case, the compression circuit selection unit 151 inputs the compressed data 104 output from the selection circuit 105B and identification information indicating the compression method of the selection circuit 105B to the event monitoring unit 160. Then, the event monitoring unit 160 stores the compressed data 104 and the compression method identification information input from the compression circuit selection unit 151 in the trace data buffer 120.

実施の形態5.
トレースデータバッファ120に保存するトレースデータ101の種類を、トレースデータバッファ120に入力(保存)したトレースデータ101の入力量と、トレースデータバッファ120から出力したトレースデータ101の出力量とに基づいて選択する形態について説明する。
以下、実施の形態1〜4と異なる事項について主に説明する。説明を省略する事項については実施の形態1〜4と同様である。
Embodiment 5 FIG.
The type of the trace data 101 to be saved in the trace data buffer 120 is selected based on the input amount of the trace data 101 input (saved) in the trace data buffer 120 and the output amount of the trace data 101 output from the trace data buffer 120 The form to perform is demonstrated.
Hereinafter, items different from the first to fourth embodiments will be mainly described. Matters whose description is omitted are the same as those in the first to fourth embodiments.

図13は、実施の形態5におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態5におけるLSIトレースデータ取得装置100の機能構成について、図13に基づいて説明する。
FIG. 13 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the fifth embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the fifth embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100は、実施の形態1の構成(図2参照)に加えて、入力トレースデータ監視部170と出力トレースデータ監視部171とを備える。   The LSI trace data acquisition apparatus 100 includes an input trace data monitoring unit 170 and an output trace data monitoring unit 171 in addition to the configuration of the first embodiment (see FIG. 2).

入力トレースデータ監視部170は、トレースデータバッファ120に記憶されたトレースデータ101の記憶量(入力量)を算出する。   The input trace data monitoring unit 170 calculates the storage amount (input amount) of the trace data 101 stored in the trace data buffer 120.

出力トレースデータ監視部171は、トレースデータバッファ120から出力されたトレースデータ101の出力量を算出する。   The output trace data monitoring unit 171 calculates the output amount of the trace data 101 output from the trace data buffer 120.

トレースデータ入出力状況分析部140は、入力トレースデータ監視部170により算出されたトレースデータ101の記憶量と出力トレースデータ監視部171により算出されたトレースデータ101の出力量とに基づいて、トレースデータバッファ120に記憶するトレースデータ101の種類を選択する。   The trace data input / output status analysis unit 140 is configured to generate trace data based on the storage amount of the trace data 101 calculated by the input trace data monitoring unit 170 and the output amount of the trace data 101 calculated by the output trace data monitoring unit 171. The type of the trace data 101 stored in the buffer 120 is selected.

例えば、トレースデータ入出力状況分析部140は、トレースデータ101の記憶量からトレースデータ101の出力量を差し引いた値をトレースデータ入出力差として算出する。
トレースデータ入出力状況分析部140は、算出したトレースデータ入出力差と所定の入出力差閾値とを比較する。
トレースデータ入出力差が入出力差閾値より大きい場合、トレースデータ入出力状況分析部140は、トレースデータ101の選択種類を所定の第1の選択種類数だけ選択する。
トレースデータ入出力差が入出力差閾値より小さい場合、トレースデータ入出力状況分析部140は、トレースデータ101の選択種類を第1の選択種類数より多い所定の第2の選択種類数だけ選択する。
For example, the trace data input / output status analysis unit 140 calculates a value obtained by subtracting the output amount of the trace data 101 from the storage amount of the trace data 101 as the trace data input / output difference.
The trace data input / output status analysis unit 140 compares the calculated trace data input / output difference with a predetermined input / output difference threshold.
When the trace data input / output difference is larger than the input / output difference threshold value, the trace data input / output status analysis unit 140 selects the selection type of the trace data 101 by the predetermined first selection type number.
When the trace data input / output difference is smaller than the input / output difference threshold, the trace data input / output status analysis unit 140 selects a predetermined second selected type number of the trace data 101 that is larger than the first selected type number. .

図14は、実施の形態5におけるLSIトレースデータ取得装置100のトレースデータ取得方法を示すフローチャートである。
実施の形態5におけるトレースデータ取得方法の処理の流れについて、図14に基づいて説明する。
FIG. 14 is a flowchart showing a trace data acquisition method of the LSI trace data acquisition apparatus 100 according to the fifth embodiment.
A processing flow of the trace data acquisition method according to the fifth embodiment will be described with reference to FIG.

実施の形態1と同じ処理(図3参照)には実施の形態1と同じ処理番号(Sxxx)を付している。   The same processing number (Sxxx) as in the first embodiment is assigned to the same processing as in the first embodiment (see FIG. 3).

S110において、トレースデータ取捨選択部110は、トレースデータ101を入力する。
S110の後、S120に進む。
In S110, the trace data sorting / selection unit 110 inputs the trace data 101.
It progresses to S120 after S110.

S120において、トレースデータ取捨選択部110は、入力したトレースデータ101が選択種類のトレースデータ101であるか否かを判定する。
入力したトレースデータ101が選択種類のトレースデータ101である場合(YES)、S137に進む。
入力したトレースデータ101が選択種類のトレースデータ101でない場合(NO)、S110に戻る。
In S120, the trace data sorting / selection unit 110 determines whether or not the input trace data 101 is the selected type of trace data 101.
When the input trace data 101 is the selected type of trace data 101 (YES), the process proceeds to S137.
If the input trace data 101 is not the selected type of trace data 101 (NO), the process returns to S110.

S137において、入力トレースデータ監視部170は、トレースデータ取捨選択部110からトレースデータ101を入力し、入力したトレースデータ101をトレースデータバッファ120に保存する。
S137の後、S138に進む。
In S <b> 137, the input trace data monitoring unit 170 inputs the trace data 101 from the trace data sorting and selection unit 110 and stores the input trace data 101 in the trace data buffer 120.
It progresses to S138 after S137.

S138において、入力トレースデータ監視部170は、トレースデータバッファ120に記憶したトレースデータ101の入力量を算出する。   In S138, the input trace data monitoring unit 170 calculates the input amount of the trace data 101 stored in the trace data buffer 120.

例えば、入力トレースデータ監視部170は、トレースデータ101の総入力量、最大入力量、今回の入力量、平均入力量などをトレースデータ101の入力量として算出する。
トレースデータ101の総入力量とは、それまでにトレースデータバッファ120に記憶したトレースデータ101の合計サイズのことである。「それまで」とは、例えば、LSI210(またはLSIトレースデータ取得装置100)を起動してから算出を行うときまでである。
トレースデータ101の最大入力量とは、それまでにトレースデータバッファ120に記憶したトレースデータ101のうち最も大きいトレースデータ101のデータサイズのことである。
トレースデータ101の今回の入力量とは、S137でトレースデータバッファ120に今回記憶したトレースデータ101のデータサイズのことである。
トレースデータ101の平均入力量とは、それまでにトレースデータバッファ120に記憶したトレースデータ101の単位時間当たりのデータサイズのことである。
For example, the input trace data monitoring unit 170 calculates the total input amount, the maximum input amount, the current input amount, the average input amount, and the like of the trace data 101 as the input amount of the trace data 101.
The total input amount of the trace data 101 is the total size of the trace data 101 stored in the trace data buffer 120 so far. “Until then” is, for example, from when the LSI 210 (or the LSI trace data acquisition apparatus 100) is activated to when the calculation is performed.
The maximum input amount of the trace data 101 is the data size of the largest trace data 101 among the trace data 101 stored in the trace data buffer 120 so far.
The current input amount of the trace data 101 is the data size of the trace data 101 stored this time in the trace data buffer 120 in S137.
The average input amount of the trace data 101 is the data size per unit time of the trace data 101 stored in the trace data buffer 120 so far.

S138の後、S139に進む。   It progresses to S139 after S138.

S139において、出力トレースデータ監視部171はトレースデータバッファ120からトレースデータ101を取得し、取得したトレースデータ101をトレースデータ逐次出力部130に出力する。但し、トレースデータバッファ120からトレースデータ逐次出力部130に出力するトレースデータ101のデータ量は、トレースデータ逐次出力部130から出力されるトレースデータ101の出力量に合わせているものとする。
そして、出力トレースデータ監視部171は、トレースデータバッファ120からトレースデータ逐次出力部130に出力したトレースデータ101の出力量を算出する。
In S139, the output trace data monitoring unit 171 acquires the trace data 101 from the trace data buffer 120, and outputs the acquired trace data 101 to the trace data sequential output unit 130. However, it is assumed that the data amount of the trace data 101 output from the trace data buffer 120 to the trace data sequential output unit 130 matches the output amount of the trace data 101 output from the trace data sequential output unit 130.
Then, the output trace data monitoring unit 171 calculates the output amount of the trace data 101 output from the trace data buffer 120 to the trace data sequential output unit 130.

例えば、出力トレースデータ監視部171は、トレースデータ101の総出力量、最大出力量、今回の出力量、平均出力量、出力可能量などをトレースデータ101の出力量として算出する。
トレースデータ101の総出力量とは、それまでにトレースデータバッファ120から出力したトレースデータ101の合計サイズのことである。「それまで」とは、例えば、LSI210(またはLSIトレースデータ取得装置100)を起動してから算出を行うときまでである。
トレースデータ101の最大出力量とは、それまでにトレースデータバッファ120から出力したトレースデータ101のうち最も大きいトレースデータ101のデータサイズのことである。
トレースデータ101の今回の出力量とは、トレースデータバッファ120から今回出力したトレースデータ101のデータサイズのことである。
トレースデータ101の平均出力量とは、それまでにトレースデータバッファ120から出力したトレースデータ101の単位時間当たりのデータサイズのことである。
トレースデータ101の出力可能量とは、トレースデータ逐次出力部130が単位時間当たりに出力できるトレースデータ101のデータサイズのことである。
For example, the output trace data monitoring unit 171 calculates the total output amount, maximum output amount, current output amount, average output amount, outputable amount, and the like of the trace data 101 as the output amount of the trace data 101.
The total output amount of the trace data 101 is the total size of the trace data 101 output from the trace data buffer 120 so far. “Until then” is, for example, from when the LSI 210 (or the LSI trace data acquisition apparatus 100) is activated to when the calculation is performed.
The maximum output amount of the trace data 101 is the data size of the largest trace data 101 among the trace data 101 output from the trace data buffer 120 so far.
The current output amount of the trace data 101 is the data size of the trace data 101 output this time from the trace data buffer 120.
The average output amount of the trace data 101 is the data size per unit time of the trace data 101 output from the trace data buffer 120 so far.
The amount of trace data 101 that can be output is the data size of the trace data 101 that the trace data sequential output unit 130 can output per unit time.

S139の後、S142に進む。   It progresses to S142 after S139.

S142において、トレースデータ逐次出力部130は、出力トレースデータ監視部171によりトレースデータバッファ120から出力されたトレースデータ101を出力する。
S142の後、S110に戻る。
In S <b> 142, the trace data sequential output unit 130 outputs the trace data 101 output from the trace data buffer 120 by the output trace data monitoring unit 171.
After S142, the process returns to S110.

図15は、実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理を示すフローチャートである。
実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ入出力状況分析処理について、図15に基づいて説明する。
FIG. 15 is a flowchart showing trace data input / output status analysis processing of the trace data input / output status analysis unit 140 according to the fifth embodiment.
The trace data input / output status analysis processing of the trace data input / output status analysis unit 140 in the fifth embodiment will be described with reference to FIG.

実施の形態1と同じ処理(図4参照)には実施の形態1と同じ処理番号(Sxxx)を付している。   The same processing number (Sxxx) as in the first embodiment is assigned to the same processing as in the first embodiment (see FIG. 4).

S210において、トレースデータ入出力状況分析部140は、選択方法情報103Aを取得する。
実施の形態5において、選択方法情報103Aは、トレースデータ101の入出力量おに基づいたトレースデータ101の選択条件を示す。
S210の後、S220に進む。
In S210, the trace data input / output status analysis unit 140 acquires the selection method information 103A.
In the fifth embodiment, the selection method information 103A indicates the selection condition of the trace data 101 based on the input / output amount of the trace data 101.
It progresses to S220 after S210.

S220において、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量を示す情報(空き容量102)を取得する。
S220の後、S221に進む。
In S <b> 220, the trace data input / output status analysis unit 140 acquires information indicating the free capacity of the trace data buffer 120 (free capacity 102).
It progresses to S221 after S220.

S221において、トレースデータ入出力状況分析部140は、入力トレースデータ監視部170から入力量情報107Aを取得し、出力トレースデータ監視部171から出力量情報107Bを取得する。
入力量情報107Aは入力トレースデータ監視部170により算出されたトレースデータ101の入力量を示す情報であり、出力量情報107Bは出力トレースデータ監視部171により算出されたトレースデータ101の出力量を示す情報である。
S221の後、S230Bに進む。
In step S <b> 221, the trace data input / output situation analysis unit 140 acquires the input amount information 107 </ b> A from the input trace data monitoring unit 170 and acquires the output amount information 107 </ b> B from the output trace data monitoring unit 171.
The input amount information 107A is information indicating the input amount of the trace data 101 calculated by the input trace data monitoring unit 170, and the output amount information 107B is the output amount of the trace data 101 calculated by the output trace data monitoring unit 171. Information.
It progresses to S230B after S221.

S230Bにおいて、トレースデータ入出力状況分析部140は、入力量情報107Aと出力量情報107Bと空き容量102と選択方法情報103Aとに基づいて、トレースデータ101の種類を選択する。
S230Bの具体例について後述する。
S230Bの後、S240に進む。
In S230B, the trace data input / output status analysis unit 140 selects the type of the trace data 101 based on the input amount information 107A, the output amount information 107B, the free space 102, and the selection method information 103A.
A specific example of S230B will be described later.
It progresses to S240 after S230B.

S240において、トレースデータ入出力状況分析部140は、選択したトレースデータ101の種類を示す選択種類情報103Bをトレースデータ取捨選択部110に入力する。
S240の後、S220に戻る。
In S240, the trace data input / output status analysis unit 140 inputs selection type information 103B indicating the type of the selected trace data 101 to the trace data selection unit 110.
After S240, the process returns to S220.

図16は、実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230B)の一例を示すフローチャートである。
実施の形態5におけるトレースデータ入出力状況分析部140のトレースデータ種類選択処理(S230B)の一例について、図16に基づいて説明する。
FIG. 16 is a flowchart illustrating an example of the trace data type selection process (S230B) of the trace data input / output situation analysis unit 140 according to the fifth embodiment.
An example of the trace data type selection process (S230B) of the trace data input / output situation analysis unit 140 in the fifth embodiment will be described with reference to FIG.

S231Bにおいて、トレースデータ入出力状況分析部140は、トレースデータバッファ120の空き容量102と、選択方法情報103Aに示される容量閾値とを大小比較する。
空き容量102が容量閾値以上の場合(YES)、S232Bに進む。
空き容量102が容量閾値未満の場合(NO)、S235Bに進む。
In S231B, the trace data input / output status analysis unit 140 compares the free capacity 102 of the trace data buffer 120 with the capacity threshold indicated in the selection method information 103A.
If the free capacity 102 is equal to or greater than the capacity threshold (YES), the process proceeds to S232B.
When the free capacity 102 is less than the capacity threshold (NO), the process proceeds to S235B.

S232Bにおいて、トレースデータ入出力状況分析部140は、トレースデータ101の平均入力量からトレースデータ101の平均出力量を差し引いた値をトレースデータ入出力差として算出する。トレースデータ101の平均入力量は入力量情報107Aに示される値であり、トレースデータ101の平均出力量は出力量情報107Bに示される値である。
トレースデータ入出力状況分析部140は、算出したトレースデータ入出力差と選択方法情報103Aに示される入出力差閾値(小)とを大小比較する。
トレースデータ入出力差が入出力差閾値(小)以下の場合(YES)、つまり、トレースデータ101の平均入力量とトレースデータ101の平均出力量との差が小さい場合、S233Bに進む。
トレースデータ入出力差が入出力差閾値(小)より大きい場合(NO)、つまり、トレースデータ101の平均入力量とトレースデータ101の平均出力量との差が小さくない場合、S234Bに進む。
In S232B, the trace data input / output status analysis unit 140 calculates a value obtained by subtracting the average output amount of the trace data 101 from the average input amount of the trace data 101 as the trace data input / output difference. The average input amount of the trace data 101 is a value indicated by the input amount information 107A, and the average output amount of the trace data 101 is a value indicated by the output amount information 107B.
The trace data input / output status analysis unit 140 compares the calculated trace data input / output difference with the input / output difference threshold (small) indicated in the selection method information 103A.
When the trace data input / output difference is equal to or smaller than the input / output difference threshold (small) (YES), that is, when the difference between the average input amount of the trace data 101 and the average output amount of the trace data 101 is small, the process proceeds to S233B.
When the trace data input / output difference is larger than the input / output difference threshold (small) (NO), that is, when the difference between the average input amount of the trace data 101 and the average output amount of the trace data 101 is not small, the process proceeds to S234B.

S233Bにおいて、トレースデータ入出力状況分析部140は、選択種類を優先度の高い順に一つ(または二つ以上の所定数)だけ増やす。但し、現在の選択種類が全ての種類である場合、トレースデータ入出力状況分析部140は選択種類を増やさない。
例えば、現在の選択種類が優先度が最も高いコマンド信号だけである場合、トレースデータ入出力状況分析部140は、優先度が二番目に高いアドレス信号を追加で選択する。この場合、選択種類はコマンド信号とアドレス信号との二種類になる。
S233Bにより、トレースデータ種類選択処理(S230B)は終了する。
In S233B, the trace data input / output status analysis unit 140 increases the selection type by one (or two or more predetermined numbers) in descending order of priority. However, when the currently selected types are all types, the trace data input / output status analysis unit 140 does not increase the selected types.
For example, when the current selection type is only the command signal with the highest priority, the trace data input / output status analysis unit 140 additionally selects the address signal with the second highest priority. In this case, there are two types of selection: command signal and address signal.
The trace data type selection process (S230B) is terminated by S233B.

S234Bにおいて、トレースデータ入出力状況分析部140は、トレースデータ入出力差と選択方法情報103Aに示される入出力差閾値(大)とを大小比較する。
トレースデータ入出力差が入出力差閾値(大)以下の場合(YES)、つまり、トレースデータ101の平均入力量とトレースデータ101の平均出力量との差が小さくも大きくもなく中程度の場合、トレースデータ入出力状況分析部140は選択種類を変更せず、トレースデータ種類選択処理(S230B)は終了する。
トレースデータ入出力差が入出力差閾値(大)より大きいの場合(NO)、つまり、トレースデータ101の平均入力量とトレースデータ101の平均出力量との差が大きい場合、S235Bに進む。
In S234B, the trace data input / output status analysis unit 140 compares the trace data input / output difference with the input / output difference threshold (large) indicated in the selection method information 103A.
When the trace data input / output difference is less than or equal to the input / output difference threshold (large) (YES), that is, when the difference between the average input amount of the trace data 101 and the average output amount of the trace data 101 is not small, large, or medium The trace data input / output status analysis unit 140 does not change the selection type, and the trace data type selection process (S230B) ends.
When the trace data input / output difference is larger than the input / output difference threshold (large) (NO), that is, when the difference between the average input amount of the trace data 101 and the average output amount of the trace data 101 is large, the process proceeds to S235B.

S235Bにおいて、トレースデータ入出力状況分析部140は、選択種類を優先度の低い順に一つ(または二つ以上の所定数)だけ減らす。但し、現在の選択種類が1種類だけである場合、トレースデータ入出力状況分析部140は選択種類を減らさない。
例えば、現在の選択種類が全ての種類(コマンド信号、アドレス信号、データ信号)である場合、トレースデータ入出力状況分析部140は、優先度が最も低いデータ信号を選択種類から除外する。この場合、選択種類はコマンド信号とアドレス信号との二種類になる。
S235Bにより、トレースデータ種類選択処理(S230B)は終了する。
In S235B, the trace data input / output status analysis unit 140 reduces the selection type by one (or a predetermined number of two or more) in ascending order of priority. However, when the current selection type is only one type, the trace data input / output status analysis unit 140 does not reduce the selection type.
For example, when the current selection type is all types (command signal, address signal, data signal), the trace data input / output status analysis unit 140 excludes the data signal having the lowest priority from the selection type. In this case, there are two types of selection: command signal and address signal.
The trace data type selection process (S230B) is terminated by S235B.

トレースデータ入出力状況分析部140は、平均入出力量以外のトレースデータ101の入出力量に基づいてトレースデータ101の種類を選択してもよい。
また、トレースデータ入出力状況分析部140は、トレースデータ101の出力量を使わずに、トレースデータ101の入力量に基づいてトレースデータ101の種類を選択してもよい。
また、トレースデータ入出力状況分析部140は、トレースデータ101の入力量を使わずに、トレースデータ101の出力量に基づいてトレースデータ101の種類を選択してもよい。
The trace data input / output status analysis unit 140 may select the type of the trace data 101 based on the input / output amount of the trace data 101 other than the average input / output amount.
Further, the trace data input / output status analysis unit 140 may select the type of the trace data 101 based on the input amount of the trace data 101 without using the output amount of the trace data 101.
Further, the trace data input / output status analysis unit 140 may select the type of the trace data 101 based on the output amount of the trace data 101 without using the input amount of the trace data 101.

実施の形態5において、例えば、以下のようなLSIトレースデータ取得装置100について説明した。   In the fifth embodiment, for example, the following LSI trace data acquisition apparatus 100 has been described.

LSIトレースデータ取得装置100は、入力トレースデータ監視部170と出力トレースデータ監視部171とを備える。
入力トレースデータ監視部170は、トレースデータ取捨選択部110からトレースデータバッファ120へ入力されるトレースデータ101を監視する。
出力トレースデータ監視部171は、トレースデータバッファ120から出力されるトレースデータ101を監視する。
The LSI trace data acquisition apparatus 100 includes an input trace data monitoring unit 170 and an output trace data monitoring unit 171.
The input trace data monitoring unit 170 monitors the trace data 101 input from the trace data sorting / selecting unit 110 to the trace data buffer 120.
The output trace data monitoring unit 171 monitors the trace data 101 output from the trace data buffer 120.

トレースデータ101の入出力量はLSI210の実行状況により変動する。このため、トレースデータバッファ120の残容量(空き容量102)の情報だけでは、トレースデータ101の選択種類の切り替えが頻繁に発生したり、その逆にトレースデータ101の選択種類の切り替えが十分に行われなかったりする。トレースデータ101の入出力量を利用することにより、トレースデータ101の選択種類をより適切に切り替えることができる。   The input / output amount of the trace data 101 varies depending on the execution status of the LSI 210. For this reason, the selection type of the trace data 101 is frequently switched only by the information on the remaining capacity (free capacity 102) of the trace data buffer 120, and conversely, the selection type of the trace data 101 is sufficiently switched. I will not be. By using the input / output amount of the trace data 101, the selection type of the trace data 101 can be switched more appropriately.

実施の形態5において、LSIトレースデータ取得装置100は、実施の形態2と同様に圧縮回路150を備えても構わない。
この場合、圧縮回路150はトレースデータ101を圧縮して得られた圧縮データ104を入力トレースデータ監視部170に入力し、入力トレースデータ監視部170は圧縮回路150から入力した圧縮データ104をトレースデータバッファ120に保存する。
入力トレースデータ監視部170は圧縮データ104の入力量を算出し、出力トレースデータ監視部171は圧縮データ104の出力量を算出する。
In the fifth embodiment, the LSI trace data acquisition apparatus 100 may include the compression circuit 150 as in the second embodiment.
In this case, the compression circuit 150 inputs the compressed data 104 obtained by compressing the trace data 101 to the input trace data monitoring unit 170, and the input trace data monitoring unit 170 converts the compressed data 104 input from the compression circuit 150 into the trace data. Save to buffer 120.
The input trace data monitoring unit 170 calculates the input amount of the compressed data 104, and the output trace data monitoring unit 171 calculates the output amount of the compressed data 104.

また、LSIトレースデータ取得装置100は、実施の形態3と同様に、複数の圧縮回路150、圧縮回路選択部151、圧縮回路分析部152および圧縮回路制御レジスタ153を備えても構わない。
この場合、圧縮回路選択部151は選択回路105Bから出力された圧縮データ104と選択回路105Bの圧縮方式を示す識別情報とを入力トレースデータ監視部170に入力する。そして、入力トレースデータ監視部170は圧縮回路選択部151から入力した圧縮データ104と圧縮方式の識別情報とをトレースデータバッファ120に保存する。
入力トレースデータ監視部170は圧縮データ104(と圧縮方式の識別情報)の入力量を算出し、出力トレースデータ監視部171は圧縮データ104(と圧縮方式の識別情報)の出力量を算出する。
Further, the LSI trace data acquisition apparatus 100 may include a plurality of compression circuits 150, a compression circuit selection unit 151, a compression circuit analysis unit 152, and a compression circuit control register 153, as in the third embodiment.
In this case, the compression circuit selection unit 151 inputs the compressed data 104 output from the selection circuit 105B and identification information indicating the compression method of the selection circuit 105B to the input trace data monitoring unit 170. The input trace data monitoring unit 170 stores the compressed data 104 and the compression method identification information input from the compression circuit selection unit 151 in the trace data buffer 120.
The input trace data monitoring unit 170 calculates the input amount of the compressed data 104 (and the compression method identification information), and the output trace data monitoring unit 171 calculates the output amount of the compressed data 104 (and the compression method identification information).

また、LSIトレースデータ取得装置100は、実施の形態4と同様に、イベント監視部160とイベント制御レジスタ161とを備えても構わない。
この場合、入力トレースデータ監視部170はイベント監視部160からトレースデータ101(または圧縮データ104)を入力し、入力したトレースデータ101(または圧縮データ104)をトレースデータバッファ120に保存する。
Further, the LSI trace data acquisition apparatus 100 may include an event monitoring unit 160 and an event control register 161 as in the fourth embodiment.
In this case, the input trace data monitoring unit 170 inputs the trace data 101 (or compressed data 104) from the event monitoring unit 160 and stores the input trace data 101 (or compressed data 104) in the trace data buffer 120.

実施の形態6.
トレースデータ101を所定の出力先に出力する形態について説明する。
以下、実施の形態1〜5と異なる事項について主に説明する。説明を省略する事項については実施の形態1〜5と同様である。
Embodiment 6 FIG.
A mode in which the trace data 101 is output to a predetermined output destination will be described.
Hereinafter, items different from the first to fifth embodiments will be mainly described. Matters whose description is omitted are the same as in the first to fifth embodiments.

図17は、実施の形態6におけるLSIトレースデータ取得装置100の機能構成図である。
実施の形態6におけるLSIトレースデータ取得装置100の機能構成について、図17に基づいて説明する。
FIG. 17 is a functional configuration diagram of the LSI trace data acquisition apparatus 100 according to the sixth embodiment.
A functional configuration of the LSI trace data acquisition apparatus 100 according to the sixth embodiment will be described with reference to FIG.

LSIトレースデータ取得装置100は、実施の形態1の構成(図2参照)に加えて、逐次出力制御レジスタ131を備える。   The LSI trace data acquisition apparatus 100 includes a sequential output control register 131 in addition to the configuration of the first embodiment (see FIG. 2).

逐次出力制御レジスタ131は、出力先情報108(または、出力先情報108を記憶した記憶領域のアドレス)が設定される記憶部である。
出力先情報108は、トレースデータ101を出力する出力先を示す情報である。
The sequential output control register 131 is a storage unit in which the output destination information 108 (or the address of the storage area storing the output destination information 108) is set.
The output destination information 108 is information indicating an output destination to which the trace data 101 is output.

トレースデータ逐次出力部130は、出力先情報108を定期的にまたは所定のタイミングで取得し、取得した出力先情報108に示される出力先にトレースデータ101を出力する。   The trace data sequential output unit 130 acquires the output destination information 108 periodically or at a predetermined timing, and outputs the trace data 101 to the output destination indicated by the acquired output destination information 108.

利用者は、出力先情報108を変更することによりトレースデータ101の出力先を変更することができる。
例えば、外部出力インタフェース213に障害が発生した場合、利用者は、出力先情報108に内部メモリ214を指定する。これにより、トレースデータ101をトレースデータバッファ120から内部メモリ214へ退避することができる。
The user can change the output destination of the trace data 101 by changing the output destination information 108.
For example, when a failure occurs in the external output interface 213, the user designates the internal memory 214 in the output destination information 108. Thereby, the trace data 101 can be saved from the trace data buffer 120 to the internal memory 214.

LSI210で利用されるPCI Expressなどの汎用インタフェースを外部出力インタフェース213として利用することが考えられる。その場合、従来手法においてデバッグやテスト専用に利用されていた外部ピンを削減することができる。   It is conceivable to use a general-purpose interface such as PCI Express used in the LSI 210 as the external output interface 213. In that case, the external pins used exclusively for debugging and testing in the conventional method can be reduced.

近年のLSI210はネットワークに接続されるケースが多く、ネットワークにより統合された環境で動作することも考えられる。そのようなネットワークに対し、LSI210のトレースデータ101を送信することで、低再現性の不具合に対処することができる。そのためにエラー信号をトレースデータ逐次出力部130より外部出力することも可能である。
また、不揮発性のメモリを内部メモリ214として利用すれば、電源が落ちてもデータが消失せず、エラーの対処が可能になる。
また、逐次出力制御レジスタ131にパスワードなどのセキュリティ情報が設定されていない場合に、トレースデータ101をLSI210の外部へ出力しないように制限してもよい。また、トレースデータ逐次出力部130はトレースデータ101を暗号化して出力してもよい。それにより、LSI210のトレースデータ101を不正に取得しようとする攻撃からトレースデータ101を守り、LSI210の内部の処理情報を隠蔽することができる。
In recent years, the LSI 210 is often connected to a network, and may operate in an environment integrated by the network. By transmitting the trace data 101 of the LSI 210 to such a network, it is possible to deal with a problem of low reproducibility. Therefore, an error signal can be output from the trace data sequential output unit 130 to the outside.
If a non-volatile memory is used as the internal memory 214, data is not lost even when the power is turned off, and an error can be dealt with.
Further, when security information such as a password is not set in the sequential output control register 131, the trace data 101 may be restricted from being output to the outside of the LSI 210. Further, the trace data sequential output unit 130 may encrypt and output the trace data 101. As a result, the trace data 101 can be protected from an attack that attempts to illegally acquire the trace data 101 of the LSI 210, and the processing information inside the LSI 210 can be concealed.

実施の形態6において、LSIトレースデータ取得装置100は、実施の形態2または実施の形態3と同様に、トレースデータ101を圧縮しても構わない。
また、LSIトレースデータ取得装置100は、実施の形態4と同様に、特定のイベントが発生した場合にのみトレースデータ101を取得しても構わない。
また、LSIトレースデータ取得装置100は、実施の形態5と同様に、トレースデータ101の入出力量に基づいてトレースデータ101の選択種類を決定しても構わない。
In the sixth embodiment, the LSI trace data acquisition apparatus 100 may compress the trace data 101 as in the second or third embodiment.
Further, the LSI trace data acquisition apparatus 100 may acquire the trace data 101 only when a specific event occurs as in the fourth embodiment.
Further, the LSI trace data acquisition apparatus 100 may determine the selection type of the trace data 101 based on the input / output amount of the trace data 101 as in the fifth embodiment.

実施の形態7.
LSI210内のLSIトレースデータ取得装置100からトレースデータ101を取得し、取得したトレースデータ101に基づいてLSI210をデバッグするデバッグ装置220について説明する。
Embodiment 7 FIG.
The debug device 220 that acquires the trace data 101 from the LSI trace data acquisition device 100 in the LSI 210 and debugs the LSI 210 based on the acquired trace data 101 will be described.

図18は、実施の形態7におけるデバッグシステム200の構成図である。
実施の形態7におけるデバッグ装置220の機能構成について、図18に基づいて説明する。
FIG. 18 is a configuration diagram of the debugging system 200 according to the seventh embodiment.
A functional configuration of the debugging device 220 according to the seventh embodiment will be described with reference to FIG.

実施の形態7におけるデバッグシステム200は、実施の形態1から実施の形態6で説明したいずれかのLSI210およびLSIトレースデータ取得装置100を有する。   The debug system 200 according to the seventh embodiment includes any one of the LSI 210 and the LSI trace data acquisition apparatus 100 described in the first to sixth embodiments.

デバッグ装置220は、トレースデータ復元部221、入力データ凍結部222、データストレージ223およびデバッグ部224を備える。   The debugging device 220 includes a trace data restoring unit 221, an input data freezing unit 222, a data storage 223, and a debugging unit 224.

トレースデータ復元部221(デバッグ入力部の一例)は、LSIトレースデータ取得装置100からトレースデータバッファ120に記憶されたトレースデータ101を入力する。   The trace data restoration unit 221 (an example of a debug input unit) inputs the trace data 101 stored in the trace data buffer 120 from the LSI trace data acquisition device 100.

入力データ凍結部222(保存命令入力部の一例)は、データストレージ223に記憶されているトレースデータ101の保存を指定する入力データ凍結通知229(トレースデータ保存命令の一例)を入力する。   The input data freezing unit 222 (an example of a save command input unit) inputs an input data freeze notification 229 (an example of a trace data save command) that designates saving of the trace data 101 stored in the data storage 223.

データストレージ223(デバッグ記憶部の一例)は、トレースデータ101を記憶する記憶領域を有する。
データストレージ223は、新たなトレースデータ101を記憶する記憶領域が不足した場合に過去のトレースデータ101が記憶されている記憶領域に新たなトレースデータ101を上書きする。
データストレージ223は、入力データ凍結部222に入力データ凍結通知229が入力された場合、トレースデータ復元部221に入力された新たなトレースデータ101を記憶しない。
The data storage 223 (an example of a debug storage unit) has a storage area for storing the trace data 101.
When the storage area for storing the new trace data 101 is insufficient, the data storage 223 overwrites the new trace data 101 in the storage area in which the past trace data 101 is stored.
When the input data freezing notification 229 is input to the input data freezing unit 222, the data storage 223 does not store the new trace data 101 input to the trace data restoring unit 221.

デバッグ部224は、データストレージ223に記憶されたトレースデータ101をディスプレイ装置に表示する。
デバッグ部224は、トレースデータ101に基づく利用者の指示をキーボードやマウスなどの入力装置から入力し、利用者の指示に従ってデバッグ処理を行う。
The debug unit 224 displays the trace data 101 stored in the data storage 223 on the display device.
The debugging unit 224 inputs a user instruction based on the trace data 101 from an input device such as a keyboard or a mouse, and performs a debugging process according to the user instruction.

デバッグ装置220は、CPU、メモリ、磁気ディスク装置、ディスプレイ装置、入力装置、通信装置などのハードウェア(図示省略)を備える。
デバッグ装置220の「〜部」として説明する構成は「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明する構成は、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。「〜部」として説明する機能を実行するプログラムはメモリに記憶され、CPUにより読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
The debug device 220 includes hardware (not shown) such as a CPU, a memory, a magnetic disk device, a display device, an input device, and a communication device.
The configuration described as the “˜unit” of the debug device 220 may be “˜circuit”, “˜device”, “˜equipment”, and “˜step”, “˜procedure”, and “˜processing”. May be. In other words, the configuration described as “˜unit” may be implemented by any of firmware, software, hardware, or a combination thereof. A program that executes a function described as “unit” is stored in a memory, and is read and executed by the CPU. That is, the program causes the computer to function as “to part”, and causes the computer to execute the procedures and methods of “to part”.

図19は、実施の形態7におけるデバッグ装置220のトレースデータ保存方法を示すフローチャートである。
デバッグ装置220が実行するトレースデータ保存方法の処理の流れについて、図19に基づいて説明する。
FIG. 19 is a flowchart illustrating a trace data storage method of the debugging device 220 according to the seventh embodiment.
A flow of processing of the trace data storage method executed by the debug device 220 will be described with reference to FIG.

S310において、LSIトレースデータ取得装置100は、実施の形態1から実施の形態6で説明したように、LSI210のトレースデータ101を取得し、取得したトレースデータ101をデバッグ装置220へ出力する。
トレースデータ101は、圧縮された圧縮データであっても暗号化された暗号化データであっても構わない。但し、圧縮方式または暗号化方式が決まっていない場合、LSIトレースデータ取得装置100は、圧縮方式または暗号化方式を示す識別情報をトレースデータ101と共にデバッグ装置220へ出力するものとする。例えば、実施の形態3のLSIトレースデータ取得装置100は圧縮方式を示す識別情報をトレースデータ101と共にデバッグ装置220へ出力する。
S310の後、S320に進む。
In S310, the LSI trace data acquisition apparatus 100 acquires the trace data 101 of the LSI 210 and outputs the acquired trace data 101 to the debug apparatus 220 as described in the first to sixth embodiments.
The trace data 101 may be compressed compressed data or encrypted encrypted data. However, if the compression method or encryption method is not determined, the LSI trace data acquisition device 100 outputs identification information indicating the compression method or encryption method to the debug device 220 together with the trace data 101. For example, the LSI trace data acquisition apparatus 100 according to the third embodiment outputs identification information indicating the compression method to the debug apparatus 220 together with the trace data 101.
It progresses to S320 after S310.

S320において、トレースデータ復元部221は、LSIトレースデータ取得装置100から出力されたトレースデータ101(および圧縮方式または暗号化方式の識別情報)を入力する。
S320の後、S330に進む。
In S320, the trace data restoration unit 221 receives the trace data 101 (and the compression method or encryption method identification information) output from the LSI trace data acquisition apparatus 100.
It progresses to S330 after S320.

S330において、トレースデータ復元部221は、入力したトレースデータ101を復元する。
例えば、トレースデータ101が圧縮されている場合、トレースデータ復元部221は、トレースデータ101の圧縮方式を圧縮方式の識別情報に基づいて判定し、判定した圧縮方式に対応する解凍方式でトレースデータ101を解凍する。また、トレースデータ101が暗号化されている場合、トレースデータ復元部221は、トレースデータ101の暗号化方式を暗号化方式の識別情報に基づいて判定し、判定した暗号化方式に対応する復号方式でトレースデータ101を復号する。
但し、トレースデータ101が圧縮も暗号化もされていない場合、S330の復元処理は不要である。
S330の後、S340に進む。
In S330, the trace data restoration unit 221 restores the input trace data 101.
For example, when the trace data 101 is compressed, the trace data restoration unit 221 determines the compression method of the trace data 101 based on the identification information of the compression method, and uses the decompression method corresponding to the determined compression method. Unzip. When the trace data 101 is encrypted, the trace data restoration unit 221 determines the encryption method of the trace data 101 based on the identification information of the encryption method, and the decryption method corresponding to the determined encryption method. The trace data 101 is decoded.
However, when the trace data 101 is neither compressed nor encrypted, the restoration process of S330 is not necessary.
It progresses to S340 after S330.

S340において、入力データ凍結部222は、トレースデータ復元部221から復号されたトレースデータ101を入力する。
また、入力データ凍結部222は、入力データ凍結通知229が入力されたか否かを判定する。
入力データ凍結通知229は、トレースデータ101が記憶されているデータストレージ223の記憶領域を新たなトレースデータ101で上書きすることを禁止する命令である。入力データ凍結通知229は利用者によってデバッグ装置220に入力され、または、LSI210から通知(入力)される。
入力データ凍結通知229が入力された場合(YES)、入力データ凍結部222はトレースデータ101を破棄し、トレースデータ保存方法の処理は終了する。
入力データ凍結通知229が入力されていない場合(NO)、S350に進む。
In S340, the input data freezing unit 222 inputs the trace data 101 decoded from the trace data restoration unit 221.
Also, the input data freezing unit 222 determines whether or not the input data freezing notification 229 has been input.
The input data freeze notification 229 is a command that prohibits overwriting the storage area of the data storage 223 in which the trace data 101 is stored with new trace data 101. The input data freezing notification 229 is input to the debugging device 220 by the user or notified (input) from the LSI 210.
When the input data freezing notification 229 is input (YES), the input data freezing unit 222 discards the trace data 101, and the processing of the trace data storage method ends.
When the input data freeze notification 229 is not input (NO), the process proceeds to S350.

S350において、入力データ凍結部222は、トレースデータ101をデータストレージ223に記憶する。
データストレージ223は、新たなトレースデータ101を記憶する記憶領域が不足した場合に過去のトレースデータ101が記憶されている記憶領域に新たなトレースデータ101を上書きする。このようにデータを循環式に記憶する記憶装置をリングバッファという。
S350により、トレースデータ保存方法の処理は終了する。
In S350, the input data freezing unit 222 stores the trace data 101 in the data storage 223.
When the storage area for storing the new trace data 101 is insufficient, the data storage 223 overwrites the new trace data 101 in the storage area in which the past trace data 101 is stored. A storage device that stores data cyclically is called a ring buffer.
By S350, the process of the trace data storage method ends.

実施の形態7において、以下のようなデバッグ装置220について説明した。   In the seventh embodiment, the following debugging apparatus 220 has been described.

デバッグ装置220は、トレースデータ復元部221、入力データ凍結部222およびデータストレージ223を備える。
トレースデータ復元部221は、トレースデータ101をデバッグなどに利用可能な情報に復元する。
データストレージ223は、復元されたデータを保存する。
入力データ凍結部222は、データストレージ223へのデータの保存を停止させる。
The debugging device 220 includes a trace data restoration unit 221, an input data freezing unit 222, and a data storage 223.
The trace data restoration unit 221 restores the trace data 101 to information that can be used for debugging or the like.
The data storage 223 stores the restored data.
The input data freezing unit 222 stops saving data in the data storage 223.

例えば、LSI221からエラー発生のイベント信号が入力データ凍結通知229としてデバッグ装置220に通知された場合、新たなトレースデータ101の上書き保存を中止し、LSI221にエラーが発生する前に保存されたトレースデータ101を確保することができる。利用者はトレースデータ101を利用してエラー原因を判断し、LSI210をデバッグする。   For example, when an event signal indicating an error is notified from the LSI 221 to the debug device 220 as an input data freeze notification 229, overwriting of the new trace data 101 is stopped, and the trace data stored before the error occurs in the LSI 221 101 can be secured. The user determines the cause of the error using the trace data 101 and debugs the LSI 210.

100 LSIトレースデータ取得装置、101 トレースデータ、101A コマンド信号、101B アドレス信号、101C データ信号、102 空き容量、103A 選択方法情報、103B 選択種類情報、104 圧縮データ、105A 圧縮条件情報、105B 選択回路、106 イベント情報、107A 入力量情報、107B 出力量情報、108 出力先情報、110 トレースデータ取捨選択部、120 トレースデータバッファ、130 トレースデータ逐次出力部、131 逐次出力制御レジスタ、140 トレースデータ入出力状況分析部、141 トレースデータ制御レジスタ、150 圧縮回路、151 圧縮回路選択部、152 圧縮回路分析部、153 圧縮回路制御レジスタ、160 イベント監視部、161 イベント制御レジスタ、170 入力トレースデータ監視部、171 出力トレースデータ監視部、200 デバッグシステム、210 LSI、211 トレース信号発生源、212 内部バス、213 外部出力インタフェース、214 内部メモリ、219 CPU、220 デバッグ装置、221 トレースデータ復元部、222 入力データ凍結部、223 データストレージ、224 デバッグ部、229 入力データ凍結通知。   100 LSI trace data acquisition device, 101 trace data, 101A command signal, 101B address signal, 101C data signal, 102 free capacity, 103A selection method information, 103B selection type information, 104 compressed data, 105A compression condition information, 105B selection circuit, 106 Event information, 107A Input amount information, 107B Output amount information, 108 Output destination information, 110 Trace data selection unit, 120 Trace data buffer, 130 Trace data sequential output unit, 131 Sequential output control register, 140 Trace data input / output status Analysis unit, 141 Trace data control register, 150 compression circuit, 151 Compression circuit selection unit, 152 Compression circuit analysis unit, 153 Compression circuit control register, 160 Event monitoring unit, 161 Control register, 170 input trace data monitoring unit, 171 output trace data monitoring unit, 200 debug system, 210 LSI, 211 trace signal generation source, 212 internal bus, 213 external output interface, 214 internal memory, 219 CPU, 220 debug device 221 Trace data restoring unit, 222 Input data freezing unit, 223 Data storage, 224 Debugging unit, 229 Input data freezing notification.

Claims (11)

トレースデータ取得装置を設けたLSI(Large Scale Integration)と、前記LSIに接続するデバッグ装置とを備え、
前記トレースデータ取得装置は、
種類が異なる複数のデータであって種類毎に優先度が定められた複数のデータそれぞれをトレースデータとして入力するトレースデータ入力部と、
トレースデータを記憶するトレースデータ記憶部と、
前記トレースデータ記憶部の空き容量に基づいて、前記トレースデータ記憶部に記憶するトレースデータの種類を選択種類として優先度の高い順に1種類以上選択するトレースデータ種類選択部と、
前記トレースデータ入力部がトレースデータを入力した場合、前記トレースデータ入力部にトレースデータとして入力された入力データが前記トレースデータ種類選択部により選択された選択種類のトレースデータであるか否かを判定するトレースデータ種類判定部とを備え、
前記トレースデータ記憶部は、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを記憶し、
前記デバッグ装置は、
前記トレースデータ取得装置から前記トレースデータ記憶部に記憶されたトレースデータを入力するデバッグ入力部と、
トレースデータを記憶する記憶領域を有するデバッグ記憶部であって、新たなトレースデータを記憶する記憶領域が不足した場合に過去のトレースデータが記憶されている記憶領域に新たなトレースデータを上書きするデバッグ記憶部と、
前記デバッグ記憶部に記憶されているトレースデータの保存を指定するトレースデータ保存命令を入力する保存命令入力部とを備え、
前記デバッグ装置の前記デバッグ記憶部は、前記保存命令入力部に保存命令が入力された場合、前記デバッグ入力部に入力された新たなトレースデータを記憶しない
ことを特徴するデバッグシステム。
An LSI (Large Scale Integration) provided with a trace data acquisition device, and a debugging device connected to the LSI;
The trace data acquisition device includes:
A trace data input unit for inputting each of a plurality of data of different types, each of which has a priority determined for each type, as trace data;
A trace data storage unit for storing trace data;
Based on the free capacity of the trace data storage unit, a trace data type selection unit that selects one or more types in descending order of priority as the type of trace data stored in the trace data storage unit;
When the trace data input unit inputs trace data, it is determined whether or not the input data input as the trace data to the trace data input unit is the selected type of trace data selected by the trace data type selection unit A trace data type determination unit for
The trace data storage unit stores the input data when the trace data type determination unit determines that the input data is the selected type of trace data ,
The debugging device includes:
A debug input unit for inputting the trace data stored in the trace data storage unit from the trace data acquisition device;
A debug storage unit having a storage area for storing trace data, and when the storage area for storing new trace data is insufficient, the debug is performed by overwriting the new trace data in the storage area for storing past trace data. A storage unit;
A save command input unit for inputting a trace data save command for designating saving of the trace data stored in the debug storage unit,
Debug system said debug storage unit, when the stored command to the store command input unit is inputted, characterized in that does not store new trace data input to the debug input section of the debugging device.
前記トレースデータ種類選択部は、前記トレースデータ記憶部の空き容量が大きいほど多くのトレースデータの種類を選択種類として選択し、前記トレースデータ記憶部の空き容量が小さいほど少ないトレースデータの種類を選択種類として選択する
ことを特徴とする請求項1記載のデバッグシステム
The trace data type selection unit selects a larger number of types of trace data as the free space of the trace data storage unit is larger, and selects a smaller type of trace data as the free space of the trace data storage unit is smaller. 2. The debugging system according to claim 1, wherein the debugging system is selected as a type.
前記トレースデータ種類選択部は、前記トレースデータ記憶部の空き容量と所定の容量閾値とを比較し、前記トレースデータ記憶部の空き容量が前記容量閾値より大きい場合、トレースデータの選択種類を所定の第1の選択種類数だけ選択し、前記トレースデータ記憶部の空き容量が前記容量閾値より小さい場合、トレースデータの選択種類を前記第1の選択種類数より少ない所定の第2の選択種類数だけ選択する
ことを特徴とする請求項1記載のデバッグシステム
The trace data type selection unit compares the free capacity of the trace data storage unit with a predetermined capacity threshold value. If the free capacity of the trace data storage unit is larger than the capacity threshold value, the trace data type selection unit selects a predetermined type of trace data. When the first selection type number is selected and the free capacity of the trace data storage unit is smaller than the capacity threshold, the trace data selection type is a predetermined second selection type number less than the first selection type number. The debugging system according to claim 1, wherein the debugging system is selected .
前記トレースデータ取得装置は、さらに、
前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを圧縮するトレースデータ圧縮部を備え、
前記トレースデータ記憶部は、前記トレースデータ圧縮部により圧縮された入力データを記憶する
ことを特徴とする請求項1から請求項3いずれかに記載のデバッグシステム
The trace data acquisition device further includes:
A trace data compression unit that compresses the input data when the trace data type determination unit determines that the input data is the selected type of trace data;
The debug system according to any one of claims 1 to 3, wherein the trace data storage unit stores the input data compressed by the trace data compression unit.
前記トレースデータ取得装置は、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを異なる圧縮方式で圧縮する複数のトレースデータ圧縮部を備え、
前記トレースデータ取得装置は、さらに、
複数のトレースデータ圧縮部により圧縮して得られた複数の入力データのうちいずれかの入力データを選択する圧縮データ選択部を備え、
前記トレースデータ記憶部は、前記圧縮データ選択部により選択された入力データを記憶する
ことを特徴とする請求項4記載のデバッグシステム
The trace data acquisition device includes a plurality of trace data compression units that compress the input data using different compression methods when the trace data type determination unit determines that the input data is the selected type of trace data. ,
The trace data acquisition device further includes:
A compressed data selection unit that selects any one of a plurality of input data obtained by compression by a plurality of trace data compression units,
5. The debugging system according to claim 4, wherein the trace data storage unit stores the input data selected by the compressed data selection unit.
前記トレースデータ取得装置は、さらに、
所定のイベントが発生したか否かを判定するイベント判定部を備え、
前記トレースデータ記憶部は、前記イベント判定部により所定のイベントが発生したと判定され、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを記憶する
ことを特徴とする請求項1から請求項5いずれかに記載のデバッグシステム
The trace data acquisition device further includes:
An event determination unit for determining whether or not a predetermined event has occurred;
The trace data storage unit determines that a predetermined event has occurred by the event determination unit, and the input data when the trace data type determination unit determines that the input data is the selected type of trace data. 6. The debugging system according to claim 1, wherein the debugging system is stored.
前記トレースデータ取得装置は、さらに、
前記トレースデータ記憶部に記憶されたトレースデータを所定の出力先へ出力するトレースデータ出力部を備える
ことを特徴とする請求項1から請求項6いずれかに記載のデバッグシステム
The trace data acquisition device further includes:
7. The debugging system according to claim 1, further comprising a trace data output unit that outputs the trace data stored in the trace data storage unit to a predetermined output destination.
トレースデータ取得装置を設けたLSI(Large Scale Integration)と、前記LSIに接続するデバッグ装置とを備え、
前記トレースデータ取得装置は、
種類が異なる複数のデータであって種類毎に優先度が定められた複数のデータそれぞれをトレースデータとして入力するトレースデータ入力部と、
トレースデータを記憶するトレースデータ記憶部と、
前記トレースデータ記憶部に記憶されたトレースデータの記憶量に基づいて、前記トレースデータ記憶部に記憶するトレースデータの種類を選択種類として優先度の高い順に1種類以上選択するトレースデータ種類選択部と、
前記トレースデータ入力部がトレースデータを入力した場合、前記トレースデータ入力部にトレースデータとして入力された入力データが前記トレースデータ種類選択部により選択された選択種類のトレースデータであるか否かを判定するトレースデータ種類判定部とを備え、
前記トレースデータ記憶部は、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを記憶し、
前記デバッグ装置は、
前記トレースデータ取得装置から前記トレースデータ記憶部に記憶されたトレースデータを入力するデバッグ入力部と、
トレースデータを記憶する記憶領域を有するデバッグ記憶部であって、新たなトレースデータを記憶する記憶領域が不足した場合に過去のトレースデータが記憶されている記憶領域に新たなトレースデータを上書きするデバッグ記憶部と、
前記デバッグ記憶部に記憶されているトレースデータの保存を指定するトレースデータ保存命令を入力する保存命令入力部とを備え、
前記デバッグ装置の前記デバッグ記憶部は、前記保存命令入力部に保存命令が入力された場合、前記デバッグ入力部に入力された新たなトレースデータを記憶しない
ことを特徴するデバッグシステム。
An LSI (Large Scale Integration) provided with a trace data acquisition device, and a debugging device connected to the LSI;
The trace data acquisition device includes:
A trace data input unit for inputting each of a plurality of data of different types, each of which has a priority determined for each type, as trace data;
A trace data storage unit for storing trace data;
A trace data type selection unit that selects one or more types in descending order of priority as the type of trace data stored in the trace data storage unit based on the amount of trace data stored in the trace data storage unit; ,
When the trace data input unit inputs trace data, it is determined whether or not the input data input as the trace data to the trace data input unit is the selected type of trace data selected by the trace data type selection unit A trace data type determination unit for
The trace data storage unit stores the input data when the trace data type determination unit determines that the input data is the selected type of trace data ,
The debugging device includes:
A debug input unit for inputting the trace data stored in the trace data storage unit from the trace data acquisition device;
A debug storage unit having a storage area for storing trace data, and when the storage area for storing new trace data is insufficient, the debug is performed by overwriting the new trace data in the storage area for storing past trace data. A storage unit;
A save command input unit for inputting a trace data save command for designating saving of the trace data stored in the debug storage unit,
Debug system said debug storage unit, when the stored command to the store command input unit is inputted, characterized in that does not store new trace data input to the debug input section of the debugging device.
前記トレースデータ取得装置は、さらに、
前記トレースデータ記憶部に記憶されたトレースデータを前記トレースデータ記憶部から出力するトレースデータ出力部を備え、
前記トレースデータ種類選択部は、前記トレースデータ記憶部に記憶されたトレースデータの記憶量と前記トレースデータ記憶部から出力されたトレースデータの出力量とに基づいて、前記トレースデータ記憶部に記憶するトレースデータの種類を選択種類として優先度の高い順に1種類以上選択する
ことを特徴とする請求項8記載のデバッグシステム
The trace data acquisition device further includes:
A trace data output unit for outputting the trace data stored in the trace data storage unit from the trace data storage unit;
The trace data type selection unit stores the trace data in the trace data storage unit based on the storage amount of the trace data stored in the trace data storage unit and the output amount of the trace data output from the trace data storage unit. 9. The debugging system according to claim 8, wherein one or more types of trace data are selected in descending order of priority as selection types.
前記トレースデータ種類選択部は、前記トレースデータの記憶量から前記トレースデータの出力量を差し引いた値をトレースデータ入出力差として算出し、算出したトレースデータ入出力差と所定の入出力差閾値とを比較し、トレースデータ入出力差が入出力差閾値より大きい場合、トレースデータの選択種類を所定の第1の選択種類数だけ選択し、トレースデータ入出力差が入出力差閾値より小さい場合、トレースデータの選択種類を前記第1の選択種類数より多い所定の第2の選択種類数だけ選択する
ことを特徴とする請求項9記載のデバッグシステム
The trace data type selection unit calculates a value obtained by subtracting the output amount of the trace data from the storage amount of the trace data as a trace data input / output difference, and calculates the calculated trace data input / output difference and a predetermined input / output difference threshold value. When the trace data input / output difference is larger than the input / output difference threshold, the selected number of trace data is selected by the predetermined first selection type number, and the trace data input / output difference is smaller than the input / output difference threshold 10. The debugging system according to claim 9, wherein the selection type of trace data is selected by a predetermined second selection type number that is larger than the first selection type number.
トレースデータ取得装置を設けたLSI(Large Scale Integration)と、前記LSIに接続するデバッグ装置とを備えるデバッグシステムのトレースデータ取得方法であって、
前記トレースデータ取得装置のトレースデータ入力部が、種類が異なる複数のデータであって種類毎に優先度が定められた複数のデータそれぞれをトレースデータとして入力し、
前記トレースデータ取得装置のトレースデータ種類選択部が、トレースデータ記憶部の空き容量に基づいて、前記トレースデータ記憶部に記憶するトレースデータの種類を選択種類として優先度の高い順に1種類以上選択し、
前記トレースデータ取得装置のトレースデータ種類判定部が、前記トレースデータ入力部がトレースデータを入力した場合、前記トレースデータ入力部にトレースデータとして入力された入力データが前記トレースデータ種類選択部により選択された選択種類のトレースデータであるか否かを判定し、
前記トレースデータ取得装置の前記トレースデータ記憶部が、前記トレースデータ種類判定部により前記入力データが前記選択種類のトレースデータであると判定された場合に前記入力データを記憶し、
前記デバッグ装置のデバッグ入力部が、前記トレースデータ取得装置から前記トレースデータ記憶部に記憶されたトレースデータを入力
前記デバッグ装置のデバッグ記憶部が、トレースデータを記憶する記憶領域を有前記デバッグ装置の保存命令入力部にトレースデータの保存を指定するトレースデータ保存命令が入力された場合に前記デバッグ入力部に入力された新たなトレースデータを記憶せず、前記保存命令入力部に前記トレースデータ保存命令が入力されずに新たなトレースデータを記憶する記憶領域が不足した場合に過去のトレースデータが記憶されている記憶領域に新たなトレースデータを上書きすることを特徴するデバッグシステムのトレースデータ取得方法
A trace data acquisition method for a debug system comprising an LSI (Large Scale Integration) provided with a trace data acquisition device and a debug device connected to the LSI,
The trace data input unit of the trace data acquisition device is a plurality of different types of data, and inputs each of a plurality of data whose priority is determined for each type as trace data,
The trace data type selection unit of the trace data acquisition device selects one or more types of trace data stored in the trace data storage unit as a selection type based on the free space of the trace data storage unit in descending order of priority. ,
When the trace data type determination unit of the trace data acquisition device inputs the trace data, the trace data type selection unit selects the input data input as the trace data to the trace data input unit. Whether the selected type of trace data is
The trace data storage unit of the trace data acquisition device stores the input data when the trace data type determination unit determines that the input data is the selected type of trace data ,
Debug input unit of the debugging device inputs the trace data stored in the trace data storage unit from the trace data acquisition device,
Debugging storage unit of the debugging device, have a storage area for storing trace data, wherein said debug input unit when the trace data storage instruction that specifies the storage of trace data storage command input unit of the debugging apparatus has been input If the storage area for storing new trace data is not stored in the storage command input unit without storing the trace data storage command , the past trace data is stored. trace data acquisition method of debugging system comprising a benzalkonium overwrite a new trace data in which storage area.
JP2010234342A 2010-10-19 2010-10-19 Debug system and method of acquiring trace data of debug system Expired - Fee Related JP5606261B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010234342A JP5606261B2 (en) 2010-10-19 2010-10-19 Debug system and method of acquiring trace data of debug system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010234342A JP5606261B2 (en) 2010-10-19 2010-10-19 Debug system and method of acquiring trace data of debug system

Publications (2)

Publication Number Publication Date
JP2012088887A JP2012088887A (en) 2012-05-10
JP5606261B2 true JP5606261B2 (en) 2014-10-15

Family

ID=46260453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010234342A Expired - Fee Related JP5606261B2 (en) 2010-10-19 2010-10-19 Debug system and method of acquiring trace data of debug system

Country Status (1)

Country Link
JP (1) JP5606261B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10922210B2 (en) 2019-02-25 2021-02-16 Microsoft Technology Licensing, Llc Automatic software behavior identification using execution record

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6041749B2 (en) * 2013-04-19 2016-12-14 三菱電機株式会社 Trace collection circuit and trace collection method
JP6293888B2 (en) * 2013-12-12 2018-03-14 インテル コーポレイション Techniques for detecting race conditions
JP6398329B2 (en) * 2014-05-29 2018-10-03 株式会社リコー Control device, control method and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010816A (en) * 1998-06-23 2000-01-14 Fujitsu Ltd Tracing device for debugging
JP2004327015A (en) * 2003-04-10 2004-11-18 Matsushita Electric Ind Co Ltd Integrated circuit, optical disk device, and signal monitoring method
GB2453174B (en) * 2007-09-28 2011-12-07 Advanced Risc Mach Ltd Techniques for generating a trace stream for a data processing apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10922210B2 (en) 2019-02-25 2021-02-16 Microsoft Technology Licensing, Llc Automatic software behavior identification using execution record

Also Published As

Publication number Publication date
JP2012088887A (en) 2012-05-10

Similar Documents

Publication Publication Date Title
CN106844090B (en) Data replication based on compression ratio history
JP5571847B2 (en) Anomaly detection system that detects anomalies in multiple control systems
US10558545B2 (en) Multiple modeling paradigm for predictive analytics
US9658832B2 (en) Multi-factor entropy sourcing for random number generators
CN109923494B (en) Programmable clock monitor
JP5606261B2 (en) Debug system and method of acquiring trace data of debug system
US20110231827A1 (en) Methods and apparatus for debugging programs in shared memory
US9251340B2 (en) Malicious activity detection of a processing thread
US11507484B2 (en) Ethod and computer storage node of shared storage system for abnormal behavior detection/analysis
US20200174542A1 (en) Speculation throttling for reliability management
US20100332914A1 (en) Dump output control apparatus and dump output control method
US8560741B2 (en) Data processing system comprising a monitor
US10831383B2 (en) Command line voting using hashing
US8271711B2 (en) Program status detecting apparatus and method
US20200183809A1 (en) Usage amount monitoring method and monitoring unit of electronic control unit for vehicle
US10489601B2 (en) Encrypted extended system event log
KR20170093121A (en) Synchronization in a computing device
US20220253337A1 (en) Hardware-based predictive fault detection and analysis
US20210010950A1 (en) Inspection device, inspection method, and computer readable medium
US20190146786A1 (en) Determining the availability of memory optimizations by analyzing a running binary
TWI630478B (en) Method and device for monitoring a temperature of an electronic element
JP6896035B2 (en) Monitoring system, monitoring SaaS provider, management device, and program
US20210373866A1 (en) Bottleneck detection device and computer readable medium
US9606850B2 (en) Apparatus and method for tracing exceptions
US11681598B2 (en) Method and apparatus to facilitate low latency fault mitigation, QoS management and debug of a processing pipeline

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140710

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140729

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140826

R150 Certificate of patent or registration of utility model

Ref document number: 5606261

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees