JP2006126994A - Incircuit emulator, debug device and debug system using the same - Google Patents

Incircuit emulator, debug device and debug system using the same Download PDF

Info

Publication number
JP2006126994A
JP2006126994A JP2004311860A JP2004311860A JP2006126994A JP 2006126994 A JP2006126994 A JP 2006126994A JP 2004311860 A JP2004311860 A JP 2004311860A JP 2004311860 A JP2004311860 A JP 2004311860A JP 2006126994 A JP2006126994 A JP 2006126994A
Authority
JP
Japan
Prior art keywords
circuit emulator
program
processing unit
debugging
debug
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2004311860A
Other languages
Japanese (ja)
Inventor
Kazuyoshi Takeda
和義 武田
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2004311860A priority Critical patent/JP2006126994A/en
Publication of JP2006126994A publication Critical patent/JP2006126994A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a debug system for reducing possibility that a program which is the object of security protection is acquired. <P>SOLUTION: The debug system 1 is provided with a debug device 2 and an incircuit emulator 3. The debug device 2 is provided with a communication processing part 21, an authentication processing part 22, a program storing part 23 and a debug processing part 24. The incircuit emulator 3 is provided with a communication processing part 31, an authentication processing part 32, a program storing part 33 and a CPU core part 34. When authentication succeeds between the authentication processing part 22 and the authentication processing part 32, the communication processing part 21 transmits firmware which is the object of security protection and a user program which is not the object of security protection to the incircuit emulator 3, and when authentication is not successful, the communication processing part 21 transmits the user program. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、インサーキットエミュレータ、インサーキットエミュレータに接続されて使用されるデバッグ装置、及び、それらを具備するデバッグシステムに関する。   The present invention relates to an in-circuit emulator, a debugging device used by being connected to the in-circuit emulator, and a debugging system including them.

従来より、マイクロプロセッサ及びデバッグ装置において、プログラムの機密性を高める技術が用いられている(例えば、特許文献1参照)。
特許文献1には、少なくとも1つの範囲が暗号化されてなるプログラムの暗号化範囲を復号化するための暗号鍵を記憶する記憶部と、プログラムの暗号化範囲を判定して記憶部から暗号鍵を取り出す判定部と、判定部により取り出された暗号鍵を用いてプログラムの暗号化範囲を復号化する復号化部とを備えたマイクロプロセッサであって、復号化部により暗号化範囲の復号化されてなるプログラムを外部に出力するときに、該プログラムの少なくとも1つの範囲を暗号化する暗号化部を備えていることを特徴とするマイクロプロセッサが掲載されている。
また、特許文献1には、上記のマイクロプロセッサから出力されたプログラムのデバッグを行うデバッグ装置であって、プログラムの暗号化範囲を復号化するための暗号鍵を記憶するデバッガ記憶部と、プログラムの暗号化範囲を判定してデバッガ記憶部から暗号鍵を取り出すデバッガ判定部と、デバッガ判定部により取り出された暗号鍵を用いてプログラムの暗号化範囲を復号化するデバッガ復号化部とを備えていることを特徴とするデバッグ装置が掲載されている。
Conventionally, techniques for increasing the confidentiality of programs have been used in microprocessors and debugging devices (see, for example, Patent Document 1).
Patent Document 1 discloses a storage unit for storing an encryption key for decrypting an encryption range of a program in which at least one range is encrypted, and an encryption key from the storage unit by determining the encryption range of the program. And a decryption unit that decrypts the encryption range of the program using the encryption key extracted by the determination unit, and the decryption unit decrypts the encryption range. A microprocessor is provided that includes an encryption unit that encrypts at least one range of the program when the program is output to the outside.
Patent Document 1 discloses a debugging device that debugs a program output from the microprocessor, and includes a debugger storage unit that stores an encryption key for decrypting the encryption range of the program, A debugger determination unit that determines the encryption range and extracts the encryption key from the debugger storage unit, and a debugger decryption unit that decrypts the encryption range of the program using the encryption key extracted by the debugger determination unit A debugging device characterized by this is posted.

しかしながら、特許文献1掲載の技術においては、暗号化部によって暗号化されたプログラムがマイクロプロセッサからデバッガ装置に出力されるため、マイクロプロセッサとデバッガ装置との間の通信信号をモニタすることにより、暗号化されたプログラムを入手することができてしまうこととなる。後に暗号を解読されたり、暗号鍵を取得されてしまうおそれがあることを考慮すれば、暗号化されたプログラムを入手されることは望ましいことではない。   However, in the technique disclosed in Patent Document 1, since the program encrypted by the encryption unit is output from the microprocessor to the debugger device, the communication signal between the microprocessor and the debugger device is monitored, so that the encryption is performed. It will be possible to obtain a customized program. In view of the possibility that the encryption may be decrypted or the encryption key may be obtained later, it is not desirable to obtain an encrypted program.

特開2003−140763号公報JP 2003-140763 A

そこで、上記の点に鑑み、本発明は、機密保持対象であるプログラムを入手されてしまう可能性をより低くすることができるインサーキットエミュレータを提供することを第1の目的とする。また、本発明はそのようなデバッグ装置を提供することを第2の目的とする。また、本発明はそのようなデバッグシステムを提供することを第3の目的とする。   Therefore, in view of the above points, a first object of the present invention is to provide an in-circuit emulator that can further reduce the possibility of obtaining a program that is subject to confidentiality. The second object of the present invention is to provide such a debugging device. The third object of the present invention is to provide such a debugging system.

以上の課題を解決するため、本発明の第1の観点に係るインサーキットエミュレータは、機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、外部からの指示に従って第1及び/又は第2のプログラムを実行するためのCPUコア部と、第1及び/又は第2のプログラムを外部から受信してプログラム記憶部に書き込み、第1のプログラムの一部又は全部の読み出し指示を外部から受信した場合に、プログラム記憶部からの第1のプログラムの一部又は全部の読み出しを行わず、第2のプログラムの一部又は全部の読み出し指示を外部から受信した場合に、プログラム記憶部からの第2のプログラムの一部又は全部の読み出しを行って外部に送信するための通信処理部とを具備する。   In order to solve the above problems, an in-circuit emulator according to a first aspect of the present invention stores a first program that is a confidentiality target and / or a second program that is not a confidentiality target. A CPU core unit for executing the first and / or second program according to an instruction from the outside, the first and / or second program received from the outside, and written in the program storage unit, When an instruction to read a part or all of the program is received from the outside, the part or whole of the first program is not read from the program storage unit, and a part or whole of the second program is instructed to be read. Communication processing unit for reading a part or all of the second program from the program storage unit and transmitting it to the outside when received from the outside Comprising a.

また、本発明の第2の観点に係るインサーキットエミュレータは、本発明の第1の観点に係るインサーキットエミュレータにおいて、外部との間の認証処理を行うための認証処理部を更に具備する。   The in-circuit emulator according to the second aspect of the present invention further includes an authentication processing unit for performing authentication processing with the outside in the in-circuit emulator according to the first aspect of the present invention.

また、本発明の第3の観点に係るインサーキットエミュレータは、本発明の第1の観点に係るインサーキットエミュレータにおいて、通信処理部が、外部からの呼び掛けに応答して、一般のインサーキットエミュレータにおいて利用されている第1の通信コマンド又は一般のインサーキットエミュレータにおいて利用されていない第2の通信コマンドを用いて外部と通信を行うことを特徴とする。   An in-circuit emulator according to a third aspect of the present invention is an in-circuit emulator according to the first aspect of the present invention, in which a communication processing unit responds to an external call in a general in-circuit emulator. Communicating with the outside using a first communication command that is used or a second communication command that is not used in a general in-circuit emulator.

上記第1〜第3の観点に係るインサーキットエミュレータにおいて、通信処理部が、外部から受信した第1のプログラムが暗号化されている場合に、第1のプログラムを復号化してプログラム記憶部に書き込むこととしても良い。   In the in-circuit emulator according to the first to third aspects, the communication processing unit decrypts the first program and writes it to the program storage unit when the first program received from the outside is encrypted. It's also good.

また、本発明の第1の観点に係るデバッグ装置は、インサーキットエミュレータに接続されて使用されるデバッグ装置であって、機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、本発明の第1の観点に係るインサーキットエミュレータに接続された場合に、第1及び第2のプログラムを本発明の第1の観点に係るインサーキットエミュレータに送信し、本発明の第1の観点に係るインサーキットエミュレータ以外のインサーキットエミュレータに接続された場合に、第2のプログラムを当該インサーキットエミュレータに送信するための通信処理部と、インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部とを具備する。   The debugging device according to the first aspect of the present invention is a debugging device that is used by being connected to an in-circuit emulator, and is a first program that is a confidentiality target and / or a second that is not a confidentiality target. An in-circuit emulator according to the first aspect of the present invention when connected to a program storage unit for storing a program and the in-circuit emulator according to the first aspect of the present invention And a communication processing unit for transmitting the second program to the in-circuit emulator when connected to an in-circuit emulator other than the in-circuit emulator according to the first aspect of the present invention, and an in-circuit emulator Debug processing section for performing debug processing by sending and receiving data to and from Comprising a.

また、本発明の第2の観点に係るデバッグ装置は、インサーキットエミュレータに接続されて使用されるデバッグ装置であって、機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、本発明の第2の観点に係るインサーキットエミュレータとの間の認証処理を行うための認証処理部と、認証処理部による認証処理ができた場合に、本発明の第2の観点に係るインサーキットエミュレータに接続されているものと判断して第1及び第2のプログラムを本発明の第2の観点に係るインサーキットエミュレータに送信し、認証処理部による認証処理ができなかった場合に、本発明の第2の観点に係るインサーキットエミュレータ以外のインサーキットエミュレータに接続されているものと判断して第2のプログラムをインサーキットエミュレータに送信するための通信処理部と、インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部とを具備する。   A debugging device according to a second aspect of the present invention is a debugging device that is used by being connected to an in-circuit emulator, and is a first program that is a security target and / or a second that is not a security target. When the authentication processing unit for performing authentication processing between the program storage unit for storing the program and the in-circuit emulator according to the second aspect of the present invention, and the authentication processing by the authentication processing unit, The first and second programs are judged to be connected to the in-circuit emulator according to the second aspect of the present invention, and the first and second programs are transmitted to the in-circuit emulator according to the second aspect of the present invention. If the authentication process cannot be performed, it is connected to an in-circuit emulator other than the in-circuit emulator according to the second aspect of the present invention. A communication processing unit for determining that the second program is transmitted to the in-circuit emulator, and a debug processing unit for performing a debugging process by transmitting / receiving data to / from the in-circuit emulator. .

また、本発明の第3の観点に係るデバッグ装置は、インサーキットエミュレータに接続されて使用されるデバッグ装置であって、機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、第2の通信コマンドを用いてインサーキットエミュレータに呼び掛けを行い、応答があった場合に、本発明の第3の観点に係るインサーキットエミュレータに接続されているものと判断して第1及び第2のプログラムを第2の通信コマンドを用いて本発明の第3の観点に係るインサーキットエミュレータに送信し、第2の通信コマンドを用いてインサーキットエミュレータに呼び掛けを行い、応答がなかった場合に、本発明の第3の観点に係るインサーキットエミュレータ以外のインサーキットエミュレータに接続されているものと判断して第2のプログラムを第1の通信コマンドを用いて当該インサーキットエミュレータに送信するための通信処理部と、インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部とを具備する。   A debugging device according to a third aspect of the present invention is a debugging device that is used by being connected to an in-circuit emulator, and is a first program that is a confidentiality target and / or a second that is not a confidentiality target. When a call is made to the in-circuit emulator using the program storage unit for storing the program and the second communication command and there is a response, the in-circuit emulator according to the third aspect of the present invention is connected. The first and second programs are transmitted to the in-circuit emulator according to the third aspect of the present invention using the second communication command, and are transmitted to the in-circuit emulator using the second communication command. If the call is made and there is no response, an insulator other than the in-circuit emulator according to the third aspect of the present invention Data is transmitted / received between the in-circuit emulator and a communication processing unit for determining that it is connected to the kit emulator and transmitting the second program to the in-circuit emulator using the first communication command A debugging processing unit for performing debugging processing.

上記第1〜第3の観点に係るデバッグ装置において、プログラム記憶部に記憶されている第1のプログラムが暗号化されていることとしても良い。   In the debugging device according to the first to third aspects, the first program stored in the program storage unit may be encrypted.

また、本発明の第1の観点に係るデバッグシステムは、本発明の第1の観点に係るインサーキットエミュレータと、本発明の第1の観点に係るデバッグ装置とを具備する。   A debugging system according to the first aspect of the present invention includes an in-circuit emulator according to the first aspect of the present invention and a debugging device according to the first aspect of the present invention.

また、本発明の第2の観点に係るデバッグシステムは、本発明の第2の観点に係るインサーキットエミュレータと、本発明の第2の観点に係るデバッグ装置とを具備する。   A debugging system according to the second aspect of the present invention includes an in-circuit emulator according to the second aspect of the present invention and a debugging device according to the second aspect of the present invention.

また、本発明の第3の観点に係るデバッグシステムは、本発明の第3の観点に係るインサーキットエミュレータと、本発明の第3の観点に係るデバッグ装置とを具備する。   A debugging system according to the third aspect of the present invention includes an in-circuit emulator according to the third aspect of the present invention and a debugging device according to the third aspect of the present invention.

以下、図面を参照しながら、本発明の実施の形態について説明する。なお、同一の構成要素については、同一の参照番号で示している。
図1は、本発明の第1の実施形態に係るデバッグシステムの概要を示す図である。図1に示すように、このデバッグシステム1は、デバッグ装置2と、インサーキットエミュレータ(ICE)3とを具備する。デバッグ装置2及びインサーキットエミュレータ3は、通信ケーブルCを介して接続されている。インサーキットエミュレータ3は、評価用ボード、製品ボード等に結合されて使用される。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In addition, about the same component, it has shown with the same reference number.
FIG. 1 is a diagram showing an outline of a debugging system according to the first embodiment of the present invention. As shown in FIG. 1, the debug system 1 includes a debug device 2 and an in-circuit emulator (ICE) 3. The debugging device 2 and the in-circuit emulator 3 are connected via a communication cable C. The in-circuit emulator 3 is used by being coupled to an evaluation board, a product board, or the like.

デバッグ装置2は、通信処理部21と、認証処理部22と、プログラム記憶部23と、デバッグ処理部24とを具備する。
通信処理部21は、インサーキットエミュレータ3との間の通信処理等を行い、認証処理部22は、インサーキットエミュレータ3との間の認証処理を行う。
The debugging device 2 includes a communication processing unit 21, an authentication processing unit 22, a program storage unit 23, and a debugging processing unit 24.
The communication processing unit 21 performs communication processing with the in-circuit emulator 3 and the authentication processing unit 22 performs authentication processing with the in-circuit emulator 3.

プログラム記憶部23は、例えばハードディスクドライブ等の記録媒体であり、ハードウェアベンダー等から提供され機密保持対象であるファームウェアファイルと、エンドユーザによって作成され機密保持対象ではないユーザプログラムファイルとが記憶されている。なお、ファームウェアファイルの内容は、暗号化されていることとしても良い。また、ファームウェアファイルのファイル名は、ユーザプログラムのデバッグを行うデバッグ担当者がファームウェアファイルであると認識することが困難な名称(例えば、拡張子が「dll」である等)であることとしても良い。これにより、デバッグ担当者がデバッグ装置2においてファームウェアの内容を知ることがより困難となる。
デバッグ処理部24は、デバッグ担当者の操作を受け付け、操作に応じたデータをインサーキットエミュレータ3に送信し、インサーキットエミュレータ3から受信したデータを表示する。なお、デバッグ処理部24が、ユーザプログラムファイルを作成又は更新するためのコンパイル機能、アセンブル機能等を有していても良い。
デバッグ装置3は、例えば、コンピュータとプログラムにより構成することも可能である。
The program storage unit 23 is, for example, a recording medium such as a hard disk drive, and stores a firmware file that is provided by a hardware vendor or the like and is a security target, and a user program file that is created by an end user and is not a security target. Yes. Note that the contents of the firmware file may be encrypted. The file name of the firmware file may be a name that is difficult for a person in charge of debugging the user program to recognize that the file is a firmware file (for example, the extension is “dll”). . This makes it more difficult for the person in charge of debugging to know the contents of the firmware in the debug device 2.
The debug processing unit 24 receives the operation of the person in charge of debugging, transmits data corresponding to the operation to the in-circuit emulator 3, and displays the data received from the in-circuit emulator 3. Note that the debug processing unit 24 may have a compile function, an assemble function, and the like for creating or updating a user program file.
The debugging device 3 can be configured by a computer and a program, for example.

インサーキットエミュレータ3は、通信処理部31と、認証処理部32と、プログラム記憶部33と、CPUコア部34とを具備する。
通信処理部31は、デバッグ装置2との間の通信処理等を行い、認証処理部32は、デバッグ装置2との間の認証処理を行う。
The in-circuit emulator 3 includes a communication processing unit 31, an authentication processing unit 32, a program storage unit 33, and a CPU core unit 34.
The communication processing unit 31 performs communication processing with the debug device 2 and the authentication processing unit 32 performs authentication processing with the debug device 2.

プログラム記憶部33は、例えばメモリ等であり、ファームウェアを記憶するためのアドレス空間であるファームウェア記憶領域及びユーザプログラムを記憶するためのアドレス空間であるユーザプログラム記憶領域を有している。これらファームウェア記憶領域及びユーザプログラム記憶領域には、通信処理部31により、デバッグ装置2のプログラム記憶部23に記憶されているファームウェア及びユーザプログラムがそれぞれ転送され、書き込まれる。なお、通信処理部31は、デバッグ装置2からの指示に従い、ユーザプログラム記憶領域内のユーザプログラムを読み出してデバッグ装置2に送信することは行うが、ファームウェアの機密保持のため、ファームウェア記憶領域内のファームウェアを読み出すことは行わない。なお、一般のインサーキットエミュレータは、ファームウェアとユーザプログラムを区別することなく、いずれのプログラムの読み出しも行う。この点において、インサーキットエミュレータ3は、一般のインサーキットエミュレータと異なっている。
CPUコア部34は、デバッグ装置2からの指示に従い、プログラム記憶部33に記憶されているファームウェア及び/又はユーザプログラムを1ステップずつ又は連続して実行する。なお、通信処理部31は、デバッグ装置2からの指示に従い、CPUコア部34内の各種レジスタ等への書き込み及び読み出しを行うことができる。
The program storage unit 33 is, for example, a memory or the like, and has a firmware storage area that is an address space for storing firmware and a user program storage area that is an address space for storing user programs. The firmware and the user program stored in the program storage unit 23 of the debugging device 2 are transferred and written to the firmware storage area and the user program storage area by the communication processing unit 31, respectively. The communication processing unit 31 reads out the user program in the user program storage area and transmits it to the debugging apparatus 2 in accordance with the instruction from the debugging apparatus 2, but in order to keep the firmware confidential, The firmware is not read out. Note that a general in-circuit emulator reads any program without distinguishing between the firmware and the user program. In this respect, the in-circuit emulator 3 is different from a general in-circuit emulator.
The CPU core unit 34 executes the firmware and / or user program stored in the program storage unit 33 step by step or continuously in accordance with an instruction from the debug device 2. Note that the communication processing unit 31 can write to and read from various registers in the CPU core unit 34 in accordance with instructions from the debug device 2.

次に、デバッグシステム1の動作について説明する。図2は、デバッグシステム1のプログラム転送処理を示すフローチャートである。以下、図2を参照しながら、デバッグシステム1のプログラム転送処理について説明する。
まず、デバッグ装置2の認証処理部22が、認証処理を行う(ステップS11)。この認証処理は、デバッグ装置2に今現在接続されているインサーキットエミュレータが本実施形態に係るインサーキットエミュレータ3であるか、本実施形態に係るインサーキットエミュレータ3以外の一般のインサーキットエミュレータであるかを識別するために行われる。ここでは、図1に示すように、デバッグ装置2に本実施形態に係るインサーキットエミュレータ3が接続されているため、デバッグ装置2の認証処理部22とインサーキットエミュレータ3の認証処理部32との間で認証処理が行われる(ステップS11及びS21)。なお、この認証処理においては、インサーキットエミュレータ3の認証処理部32が、製品型番、製品シリアル番号、その他のID等をデバッグ装置2の認証処理部22に送信し、デバッグ装置2の認証処理部22が、受信した製品型番等を用いて今現在接続されているインサーキットエミュレータが本実施形態に係るインサーキットエミュレータ3であるか否かを識別することとしても良い。
Next, the operation of the debug system 1 will be described. FIG. 2 is a flowchart showing the program transfer process of the debug system 1. Hereinafter, the program transfer process of the debug system 1 will be described with reference to FIG.
First, the authentication processing unit 22 of the debug device 2 performs an authentication process (step S11). In this authentication process, the in-circuit emulator currently connected to the debugging device 2 is the in-circuit emulator 3 according to the present embodiment, or a general in-circuit emulator other than the in-circuit emulator 3 according to the present embodiment. Is done to identify. Here, as shown in FIG. 1, since the in-circuit emulator 3 according to this embodiment is connected to the debugging device 2, the authentication processing unit 22 of the debugging device 2 and the authentication processing unit 32 of the in-circuit emulator 3 are connected. Authentication processing is performed between them (steps S11 and S21). In this authentication process, the authentication processing unit 32 of the in-circuit emulator 3 transmits the product model number, product serial number, other IDs, etc. to the authentication processing unit 22 of the debugging device 2, and the authentication processing unit of the debugging device 2. 22 may identify whether the currently connected in-circuit emulator is the in-circuit emulator 3 according to the present embodiment using the received product model number or the like.

インサーキットエミュレータ3との間の認証ができた場合(ステップS12)、デバッグ装置2の通信処理部21は、ファームウェアをインサーキットエミュレータ3に送信し(ステップS13)、インサーキットエミュレータ3の通信処理部31が、受信したファームウェアをプログラム記憶部33のファームウェア記憶領域に書き込む(ステップS22)。なお、デバッグ装置2のプログラム記憶部23内のファームウェアファイルの内容が暗号化されている場合、インサーキットエミュレータ3の通信処理部31が、復号化してファームウェア記憶領域に書き込む。   When the authentication with the in-circuit emulator 3 can be performed (step S12), the communication processing unit 21 of the debug device 2 transmits the firmware to the in-circuit emulator 3 (step S13), and the communication processing unit of the in-circuit emulator 3 31 writes the received firmware in the firmware storage area of the program storage unit 33 (step S22). If the contents of the firmware file in the program storage unit 23 of the debug device 2 are encrypted, the communication processing unit 31 of the in-circuit emulator 3 decrypts and writes it in the firmware storage area.

インサーキットエミュレータ3との間の認証ができなかった場合(ステップS12)、又はファームウェアの送信が終了した場合(ステップS13)、デバッグ装置2の通信処理部21は、ユーザプログラムをインサーキットエミュレータ3に送信し(ステップS14)、インサーキットエミュレータ3の通信処理部31が、受信したユーザプログラムをプログラム記憶部33のユーザプログラム記憶領域に書き込む(ステップS23)。   When the authentication with the in-circuit emulator 3 cannot be performed (step S12) or when the transmission of the firmware is finished (step S13), the communication processing unit 21 of the debug device 2 sends the user program to the in-circuit emulator 3. Then, the communication processing unit 31 of the in-circuit emulator 3 writes the received user program in the user program storage area of the program storage unit 33 (step S23).

なお、ファームウェアの送信(ステップS13)は、デバッグ担当者の指示を待たずに自動で行われることとしても良い。先に説明したようにファームウェアファイルのファイル名をデバッグ担当者がファームウェアファイルであると認識することが困難な名称としておき、更に、ファームウェアの送信がデバッグ担当者の指示を待たずに自動で行われることとすれば、ファームウェアの存在自体やインサーキットエミュレータ3への転送自体をエンドユーザから隠蔽することができる。
また、ファームウェアの送信がデバッグ担当者の指示を待たずに自動で行われることとすれば、通信ケーブルC上の信号をモニタリングすることによりファームウェアを入手することをより困難とすることができる。
一方、ユーザプログラムの送信(ステップS14)は、デバッグ担当者の指示を待って行うこととしても良い。
The firmware transmission (step S13) may be automatically performed without waiting for an instruction from the person in charge of debugging. As described above, the file name of the firmware file is set to a name that is difficult for the person in charge of debugging to recognize that it is a firmware file, and the firmware is automatically transmitted without waiting for instructions from the person in charge of debugging. If so, it is possible to conceal the existence of the firmware itself and the transfer itself to the in-circuit emulator 3 from the end user.
Further, if the transmission of firmware is automatically performed without waiting for an instruction from the person in charge of debugging, it is possible to make it more difficult to obtain the firmware by monitoring the signal on the communication cable C.
On the other hand, the transmission of the user program (step S14) may be performed after waiting for an instruction from the person in charge of debugging.

以上により、ファームウェア及びユーザプログラムがデバッグ装置2からインサーキットエミュレータ3に転送される。これ以降、デバッグ担当者は、デバッグ処理部24を操作してインサーキットエミュレータ3に指示を与えることにより、CPUコア部34にファームウェア及びユーザプログラムを実行させることが可能となる。   As described above, the firmware and the user program are transferred from the debug device 2 to the in-circuit emulator 3. Thereafter, the person in charge of debugging can cause the CPU core unit 34 to execute the firmware and the user program by operating the debug processing unit 24 and giving an instruction to the in-circuit emulator 3.

ところで、デバッグ作業において、デバッグ担当者が、インサーキットエミュレータ3のプログラム記憶部33内のプログラムを参照しようとする場合がある。図3は、このような場合に、インサーキットエミュレータ3のプログラム記憶部33内のプログラムを参照するためのプログラム参照処理を示すフローチャートである。以下、図3を参照しながら、デバッグシステム1のプログラム参照処理について説明する。   By the way, in a debugging operation, a person in charge of debugging may try to refer to a program in the program storage unit 33 of the in-circuit emulator 3. FIG. 3 is a flowchart showing a program reference process for referring to a program in the program storage unit 33 of the in-circuit emulator 3 in such a case. Hereinafter, the program reference processing of the debug system 1 will be described with reference to FIG.

まず、デバッグ担当者が所望のアドレスを入力すると、デバッグ装置2のデバッグ処理部24は、入力されたアドレスを通信処理部21を介してインサーキットエミュレータ3に送信する(ステップS31)。なお、デバッグ担当者が単一のアドレスを入力することとしても良いし、アドレス範囲を指定することとしても良い。
インサーキットエミュレータ3の通信処理部31は、受信したアドレスがファームウェア記憶領域内を指すかユーザプログラム記憶領域内を指すかをチェックし(ステップS41)、受信したアドレスがユーザプログラム記憶領域内を指す場合には、受信したアドレスに記憶されているプログラムをデバッグ装置2に送信するが(ステップS42)、受信したアドレスがファームウェア記憶領域内を指す場合には、処理を終了する。
デバッグ装置2は、プログラムを受信した場合、受信したプログラムを表示又は記憶する(ステップS32)。
First, when the person in charge of debugging inputs a desired address, the debug processing unit 24 of the debugging device 2 transmits the input address to the in-circuit emulator 3 via the communication processing unit 21 (step S31). The person in charge of debugging may input a single address, or may specify an address range.
The communication processing unit 31 of the in-circuit emulator 3 checks whether the received address indicates the firmware storage area or the user program storage area (step S41), and the received address indicates the user program storage area In this case, the program stored at the received address is transmitted to the debug device 2 (step S42). If the received address indicates the firmware storage area, the process is terminated.
When receiving the program, the debugging device 2 displays or stores the received program (step S32).

以上説明したように、デバッグシステム1によれば、デバッグ担当者が入力したアドレスがユーザプログラム記憶領域内を指す場合には、インサーキットエミュレータ3がプログラムをデバッグ装置2に送信するが、デバッグ担当者が入力したアドレスがファームウェア記憶領域内を指す場合には、インサーキットエミュレータ3がプログラムをデバッグ装置2に送信しないので、デバッグ担当者がファームウェアを閲覧することができず、ファームウェアの機密を保持することができる。   As described above, according to the debug system 1, when the address input by the person in charge of debugging points to the user program storage area, the in-circuit emulator 3 transmits the program to the debug device 2. When the address input by the in-circuit emulator indicates the firmware storage area, the in-circuit emulator 3 does not transmit the program to the debugging device 2, so that the person in charge of debugging cannot view the firmware and keep the firmware confidential. Can do.

また、ファームウェアを閲覧しようとする意図を有するデバッグ担当者が、図4(a)に示すように、デバッグ装置2を本実施形態に係るインサーキットエミュレータ3以外の一般のインサーキットエミュレータ4に接続し、その後、図4(b)に示すように、通信ケーブルCの一端をデバッグ装置2から抜いて本実施形態に係るデバッグ装置2以外の一般のデバッグ装置5に接続することが考えられる。
先に説明したように、一般のインサーキットエミュレータは、本実施形態に係るインサーキットエミュレータ3と異なり、ファームウェアとユーザプログラムを区別することなく、いずれのプログラムの読み出しも行う。しかしながら、図4(a)に示すように、本実施形態に係るデバッグ装置2と一般のインサーキットエミュレータ4とが接続された場合、認証ができないため、ファームウェアがデバッグ装置2からインサーキットエミュレータ4に転送されることはない(図2のステップS11、S21、S12、S13参照)。従って、デバッグ担当者が、図4(b)に示すようにインサーキットエミュレータ4とデバッグ装置5とを接続し、デバッグ装置5を操作しても、インサーキットエミュレータ4にはファームウェアが転送されておらず、ファームウェアを閲覧することはできないこととなる。
Further, as shown in FIG. 4A, a debugging person who intends to view the firmware connects the debugging device 2 to a general in-circuit emulator 4 other than the in-circuit emulator 3 according to the present embodiment. Then, as shown in FIG. 4B, it is conceivable that one end of the communication cable C is disconnected from the debug device 2 and connected to a general debug device 5 other than the debug device 2 according to the present embodiment.
As described above, the general in-circuit emulator, unlike the in-circuit emulator 3 according to the present embodiment, reads out any program without distinguishing between the firmware and the user program. However, as shown in FIG. 4A, when the debugging device 2 according to the present embodiment and a general in-circuit emulator 4 are connected, authentication cannot be performed, so the firmware is transferred from the debugging device 2 to the in-circuit emulator 4. It is not transferred (see steps S11, S21, S12, and S13 in FIG. 2). Therefore, even if the person in charge of debugging connects the in-circuit emulator 4 and the debug device 5 and operates the debug device 5 as shown in FIG. 4B, the firmware is not transferred to the in-circuit emulator 4. Therefore, the firmware cannot be browsed.

また、ファームウェアを閲覧しようとする意図を有するデバッグ担当者が、図5(a)に示すように、デバッグ装置2をインサーキットエミュレータ3に接続し、その後、図5(b)に示すように、通信ケーブルCの一端をデバッグ装置2から抜いて本実施形態に係るデバッグ装置2以外の一般のデバッグ装置5に接続することが考えられる。
図5(a)に示すように、デバッグ装置2とインサーキットエミュレータ3とが接続された場合、ファームウェアがデバッグ装置2からインサーキットエミュレータ3に転送される。しかしながら、デバッグ担当者が、図5(b)に示すように、インサーキットエミュレータ4とデバッグ装置5とを接続し、ファームウェア記憶領域内のアドレスを指定しても、インサーキットエミュレータ3はファームウェア記憶領域内のプログラムの読み出しを行わないため(図3のステップS41、S42参照)、ファームウェアを閲覧することはできないこととなる。
Further, a debugging person who intends to view the firmware connects the debugging device 2 to the in-circuit emulator 3 as shown in FIG. 5A, and then, as shown in FIG. It can be considered that one end of the communication cable C is disconnected from the debugging device 2 and connected to a general debugging device 5 other than the debugging device 2 according to the present embodiment.
As shown in FIG. 5A, when the debugging device 2 and the in-circuit emulator 3 are connected, the firmware is transferred from the debugging device 2 to the in-circuit emulator 3. However, even if the person in charge of debugging connects the in-circuit emulator 4 and the debugging device 5 and designates an address in the firmware storage area as shown in FIG. Since the program is not read out (see steps S41 and S42 in FIG. 3), the firmware cannot be browsed.

次に、本発明の第2の実施形態について説明する。図6は、本発明の第2の実施形態に係るデバッグシステムの概要を示す図である。図6に示すように、このデバッグシステム6は、デバッグ装置7と、インサーキットエミュレータ(ICE)8とを具備する。デバッグ装置7及びインサーキットエミュレータ8は、通信ケーブルCを介して接続されている。   Next, a second embodiment of the present invention will be described. FIG. 6 is a diagram showing an outline of a debugging system according to the second embodiment of the present invention. As shown in FIG. 6, the debug system 6 includes a debug device 7 and an in-circuit emulator (ICE) 8. The debugging device 7 and the in-circuit emulator 8 are connected via a communication cable C.

デバッグ装置7は、プログラム記憶部23と、デバッグ処理部24と、通信処理部71とを具備する。
通信処理部71は、一般のインサーキットエミュレータとデバッグ装置との間において利用されている一般通信コマンド又は一般のインサーキットエミュレータとデバッグ装置との間において利用されていない本実施形態特有の特殊通信コマンドを用いてインサーキットエミュレータと通信を行う。
The debugging device 7 includes a program storage unit 23, a debug processing unit 24, and a communication processing unit 71.
The communication processing unit 71 is a general communication command used between a general in-circuit emulator and a debugging device or a special communication command unique to the present embodiment that is not used between a general in-circuit emulator and a debugging device. To communicate with the in-circuit emulator.

インサーキットエミュレータ8は、プログラム記憶部33と、CPUコア部34と、通信処理部81とを具備する。
通信処理部81は、一般通信コマンド又は特殊通信コマンドを用いてデバッグ装置と通信を行う。
The in-circuit emulator 8 includes a program storage unit 33, a CPU core unit 34, and a communication processing unit 81.
The communication processing unit 81 communicates with the debug device using a general communication command or a special communication command.

次に、デバッグシステム6の動作について説明する。図7は、デバッグシステム6のプログラム転送処理を示すフローチャートである。以下、図7を参照しながら、デバッグシステム6のプログラム転送処理について説明する。
まず、デバッグ装置7の通信処理部71が、特殊通信コマンドを用いてインサーキットエミュレータ8に呼び掛けを行う(ステップS51)。デバッグ装置7に一般のインサーキットエミュレータが接続されている場合、一般のインサーキットエミュレータは、特殊通信コマンドを解釈できないため、デバッグ装置7の呼び掛けに応答することはできない。一方、本実施形態に係るインサーキットエミュレータ8の通信処理部81は、一般通信コマンド及び特殊通信コマンドのいずれをも解釈することができる。ここでは、デバッグ装置7にインサーキットエミュレータ8が接続されているため、インサーキットエミュレータ8は、特殊通信コマンドを用いてデバッグ装置7に応答する(ステップS61)。
Next, the operation of the debug system 6 will be described. FIG. 7 is a flowchart showing the program transfer process of the debug system 6. Hereinafter, the program transfer process of the debug system 6 will be described with reference to FIG.
First, the communication processing unit 71 of the debugging device 7 calls the in-circuit emulator 8 using a special communication command (step S51). When a general in-circuit emulator is connected to the debugging device 7, the general in-circuit emulator cannot interpret the special communication command and therefore cannot respond to the call from the debugging device 7. On the other hand, the communication processing unit 81 of the in-circuit emulator 8 according to the present embodiment can interpret both general communication commands and special communication commands. Here, since the in-circuit emulator 8 is connected to the debug device 7, the in-circuit emulator 8 responds to the debug device 7 using a special communication command (step S61).

デバッグ装置7の通信処理部71は、インサーキットエミュレータから応答があった場合(ステップS52)には、デバッグ装置7にインサーキットエミュレータ8が接続されていると判断し、以降の通信に特殊通信コマンドを利用し(ステップS53)、特殊通信コマンドを用いてファームウェアを送信し(ステップS54)、特殊通信コマンドを用いてユーザプログラムを送信する(ステップS55)。インサーキットエミュレータ8の通信処理部81は、特殊通信コマンドを用いて受信したファームウェアをプログラム記憶部33のファームウェア記憶領域に書き込み(ステップS62)、特殊通信コマンドを用いて受信したユーザプログラムをプログラム記憶部33のユーザプログラム記憶領域に書き込む(ステップS63)。
なお、デバッグ装置7のプログラム記憶部23内のファームウェアファイルの内容が暗号化されている場合、インサーキットエミュレータ8の通信処理部81が、復号化してファームウェア記憶領域に書き込む。また、ファームウェアの送信(ステップS54)は、デバッグ担当者の指示を待たずに自動で行われることとしても良い。一方、ユーザプログラムの送信(ステップS55)は、デバッグ担当者の指示を待って行うこととしても良い。
When there is a response from the in-circuit emulator (step S52), the communication processing unit 71 of the debugging device 7 determines that the in-circuit emulator 8 is connected to the debugging device 7, and the special communication command is used for the subsequent communication. (Step S53), the firmware is transmitted using the special communication command (step S54), and the user program is transmitted using the special communication command (step S55). The communication processing unit 81 of the in-circuit emulator 8 writes the firmware received using the special communication command into the firmware storage area of the program storage unit 33 (step S62), and the user program received using the special communication command is stored in the program storage unit. 33 is written into the user program storage area 33 (step S63).
If the contents of the firmware file in the program storage unit 23 of the debug device 7 are encrypted, the communication processing unit 81 of the in-circuit emulator 8 decrypts and writes it in the firmware storage area. The firmware transmission (step S54) may be automatically performed without waiting for an instruction from the person in charge of debugging. On the other hand, the transmission of the user program (step S55) may be performed after an instruction from the person in charge of debugging.

一方、インサーキットエミュレータから応答がなかった場合(ステップS52)には、デバッグ装置7の通信処理部71は、デバッグ装置7に一般のインサーキットエミュレータが接続されていると判断し、以降の通信に一般通信コマンドを利用し(ステップS56)、一般通信コマンドを用いてユーザプログラムを送信する(ステップS57)。なお、ユーザプログラムの送信(ステップS57)は、デバッグ担当者の指示を待って行うこととしても良い。   On the other hand, when there is no response from the in-circuit emulator (step S52), the communication processing unit 71 of the debug device 7 determines that a general in-circuit emulator is connected to the debug device 7, and performs subsequent communication. The general communication command is used (step S56), and the user program is transmitted using the general communication command (step S57). Note that the transmission of the user program (step S57) may be performed after waiting for an instruction from the person in charge of debugging.

以上により、ファームウェア及びユーザプログラムがデバッグ装置7からインサーキットエミュレータ8に転送される。これ以降、デバッグ担当者は、デバッグ処理部24からインサーキットエミュレータ8に指示を与えることにより、CPUコア部34にファームウェア及びユーザプログラムを実行させることが可能となる。   As described above, the firmware and the user program are transferred from the debug device 7 to the in-circuit emulator 8. Thereafter, the person in charge of debugging can cause the CPU core unit 34 to execute the firmware and the user program by giving an instruction to the in-circuit emulator 8 from the debug processing unit 24.

ところで、デバッグ作業において、デバッグ担当者が、インサーキットエミュレータ8のプログラム記憶部33内のプログラムを参照しようとする場合がある。この場合、先に説明したデバッグシステム1と同様に、インサーキットエミュレータ8の通信処理部81が、デバッグ担当者が入力したアドレスがユーザプログラム記憶領域内を指す場合には、ユーザプログラムをデバッグ装置7に送信し、デバッグ担当者が入力したアドレスがファームウェア記憶領域内を指す場合には、ファームウェアをデバッグ装置7に送信しないこととすればよい(図3参照)。これにより、デバッグ担当者がファームウェアを閲覧することができず、ファームウェアの機密を保持することができる。   By the way, in the debugging work, the person in charge of debugging may try to refer to the program in the program storage unit 33 of the in-circuit emulator 8. In this case, similarly to the debugging system 1 described above, the communication processing unit 81 of the in-circuit emulator 8 causes the user program to be stored in the debugging device 7 when the address input by the person in charge of the debugging indicates the user program storage area. If the address input by the person in charge of debugging points to the firmware storage area, the firmware may not be transmitted to the debugging device 7 (see FIG. 3). As a result, the person in charge of debugging cannot view the firmware, and the confidentiality of the firmware can be maintained.

また、先に説明したと同様に、ファームウェアを閲覧しようとする意図を有するデバッグ担当者が、デバッグ装置7を本実施形態に係るインサーキットエミュレータ8以外の一般のインサーキットエミュレータに接続し、その後、通信ケーブルCの一端をデバッグ装置7から抜いて本実施形態に係るデバッグ装置7以外の一般のデバッグ装置に接続することが考えられる(図4(a)、(b)参照)。
先に説明したように、一般のインサーキットエミュレータは、本実施形態に係るインサーキットエミュレータ8と異なり、ファームウェアとユーザプログラムを区別することなく、いずれのプログラムの読み出しも行う。しかしながら、本実施形態に係るデバッグ装置7と一般のインサーキットエミュレータとが接続された場合、ファームウェアがデバッグ装置7から一般のインサーキットエミュレータに転送されることはない(図7のステップS52、S56、S57参照)。従って、デバッグ担当者が、その後、一般のインサーキットエミュレータと一般のデバッグ装置とを接続し、一般のデバッグ装置を操作しても、一般のインサーキットエミュレータにはファームウェアが転送されておらず、ファームウェアを閲覧することはできないこととなる。
As described above, a debugging person who intends to view the firmware connects the debugging device 7 to a general in-circuit emulator other than the in-circuit emulator 8 according to the present embodiment, and then It is conceivable that one end of the communication cable C is disconnected from the debugging device 7 and connected to a general debugging device other than the debugging device 7 according to this embodiment (see FIGS. 4A and 4B).
As described above, the general in-circuit emulator, unlike the in-circuit emulator 8 according to the present embodiment, reads out any program without distinguishing between the firmware and the user program. However, when the debugging device 7 according to the present embodiment and a general in-circuit emulator are connected, the firmware is not transferred from the debugging device 7 to the general in-circuit emulator (Steps S52 and S56 in FIG. 7). (See S57). Therefore, even if the person in charge of debugging connects the general in-circuit emulator and the general debug device and operates the general debug device, the firmware is not transferred to the general in-circuit emulator. Cannot be viewed.

また、ファームウェアを閲覧しようとする意図を有するデバッグ担当者が、デバッグ装置7をインサーキットエミュレータ8に接続し、その後、通信ケーブルCの一端をデバッグ装置7から抜いて本実施形態に係るデバッグ装置7以外の一般のデバッグ装置に接続することが考えられる(図5(a)、(b)参照)。
デバッグ装置7とインサーキットエミュレータ8とが接続された場合、ファームウェアがデバッグ装置7からインサーキットエミュレータ8に特殊通信コマンドを用いて転送される(図7のステップS54参照)。しかしながら、デバッグ担当者が、インサーキットエミュレータ8と一般のデバッグ装置とを接続し、ファームウェア記憶領域内のアドレスを指定しても、インサーキットエミュレータ8はファームウェア記憶領域内のプログラムの読み出しを行わないため、ファームウェアを閲覧することはできないこととなる。
Further, a debugging person who intends to view the firmware connects the debugging device 7 to the in-circuit emulator 8, and then disconnects one end of the communication cable C from the debugging device 7, and the debugging device 7 according to the present embodiment. It is conceivable to connect to a general debugging device other than (see FIGS. 5A and 5B).
When the debugging device 7 and the in-circuit emulator 8 are connected, the firmware is transferred from the debugging device 7 to the in-circuit emulator 8 using a special communication command (see step S54 in FIG. 7). However, even if the person in charge of debugging connects the in-circuit emulator 8 and a general debugging device and designates an address in the firmware storage area, the in-circuit emulator 8 does not read the program in the firmware storage area. The firmware cannot be browsed.

本発明は、インサーキットエミュレータ、インサーキットエミュレータに接続されて使用されるデバッグ装置、及び、それらを具備するデバッグシステムに関する。   The present invention relates to an in-circuit emulator, a debugging device used by being connected to the in-circuit emulator, and a debugging system including them.

本発明の第1の実施形態に係るデバッグシステムの概要を示す図。1 is a diagram showing an outline of a debugging system according to a first embodiment of the present invention. 図1のデバッグシステム1の動作を示すフローチャート。The flowchart which shows operation | movement of the debug system 1 of FIG. 図1のデバッグシステム1の動作を示すフローチャート。The flowchart which shows operation | movement of the debug system 1 of FIG. 図1のデバッグ装置2を一般のインサーキットエミュレータに接続した図。The figure which connected the debugging apparatus 2 of FIG. 1 to the general in-circuit emulator. 図1のインサーキットエミュレータ3を一般のデバッグ装置に接続した図。The figure which connected the in-circuit emulator 3 of FIG. 1 to the general debugging apparatus. 本発明の第2の実施形態に係るデバッグシステムの概要を示す図。The figure which shows the outline | summary of the debug system which concerns on the 2nd Embodiment of this invention. 図6のデバッグシステム6の動作を示すフローチャート。7 is a flowchart showing the operation of the debug system 6 of FIG.

符号の説明Explanation of symbols

1、6 デバッグシステム、2、5、7 デバッグ装置、3、4、8 インサーキットエミュレータ、21、31、41、71、81 通信処理部、22、32 認証処理部、23、33、42 プログラム記憶部、24 デバッグ処理部、34、43 CPUコア部
1, 6 Debug system 2, 5, 7 Debug device 3, 4, 8 In-circuit emulator, 21, 31, 41, 71, 81 Communication processing unit, 22, 32 Authentication processing unit, 23, 33, 42 Program storage Part, 24 debug processing part, 34, 43 CPU core part

Claims (11)

機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、
外部からの指示に従って前記第1及び/又は第2のプログラムを実行するためのCPUコア部と、
前記第1及び/又は第2のプログラムを外部から受信して前記プログラム記憶部に書き込み、前記第1のプログラムの一部又は全部の読み出し指示を外部から受信した場合に、前記プログラム記憶部からの前記第1のプログラムの一部又は全部の読み出しを行わず、前記第2のプログラムの一部又は全部の読み出し指示を外部から受信した場合に、前記プログラム記憶部からの前記第2のプログラムの一部又は全部の読み出しを行って外部に送信するための通信処理部と、
を具備するインサーキットエミュレータ。
A program storage unit for storing a first program that is subject to confidentiality and / or a second program that is not subject to confidentiality;
A CPU core unit for executing the first and / or second program according to an external instruction;
When the first and / or second program is received from the outside and written to the program storage unit, and a read instruction for part or all of the first program is received from the outside, the program storage unit One part of the second program from the program storage unit when an instruction to read part or all of the second program is received from the outside without reading part or all of the first program. A communication processing unit for reading out all or part of the data and transmitting the same to the outside;
In-circuit emulator equipped with.
外部との間の認証処理を行うための認証処理部を更に具備する、請求項1記載のインサーキットエミュレータ。   The in-circuit emulator according to claim 1, further comprising an authentication processing unit for performing authentication processing with the outside. 前記通信処理部が、外部からの呼び掛けに応答して、一般のインサーキットエミュレータにおいて利用されている第1の通信コマンド又は一般のインサーキットエミュレータにおいて利用されていない第2の通信コマンドを用いて外部と通信を行う、請求項1記載のインサーキットエミュレータ。   In response to a call from the outside, the communication processing unit externally uses a first communication command used in a general in-circuit emulator or a second communication command not used in a general in-circuit emulator. The in-circuit emulator according to claim 1, which communicates with the in-circuit emulator. 前記通信処理部が、外部から受信した前記第1のプログラムが暗号化されている場合に、前記第1のプログラムを復号化して前記プログラム記憶部に書き込む、請求項1〜3のいずれか1項に記載のインサーキットエミュレータ。   The communication processing unit decrypts the first program and writes the first program in the program storage unit when the first program received from the outside is encrypted. The in-circuit emulator described in 1. インサーキットエミュレータに接続されて使用されるデバッグ装置であって、
機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、
請求項1記載のインサーキットエミュレータに接続された場合に、前記第1及び第2のプログラムを請求項1記載のインサーキットエミュレータに送信し、請求項1記載のインサーキットエミュレータ以外のインサーキットエミュレータに接続された場合に、前記第2のプログラムを当該インサーキットエミュレータに送信するための通信処理部と、
インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部と、
を具備するデバッグ装置。
A debugging device connected to an in-circuit emulator,
A program storage unit for storing a first program that is subject to confidentiality and / or a second program that is not subject to confidentiality;
When connected to the in-circuit emulator according to claim 1, the first and second programs are transmitted to the in-circuit emulator according to claim 1, and sent to an in-circuit emulator other than the in-circuit emulator according to claim 1. A communication processing unit for transmitting the second program to the in-circuit emulator when connected;
A debug processing unit for performing debug processing by transmitting and receiving data to and from an in-circuit emulator;
A debugging device comprising:
インサーキットエミュレータに接続されて使用されるデバッグ装置であって、
機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、
請求項2記載のインサーキットエミュレータとの間の認証処理を行うための認証処理部と、
前記認証処理部による認証処理ができた場合に、請求項2記載のインサーキットエミュレータに接続されているものと判断して前記第1及び第2のプログラムを請求項2記載のインサーキットエミュレータに送信し、前記認証処理部による認証処理ができなかった場合に、請求項2記載のインサーキットエミュレータ以外のインサーキットエミュレータに接続されているものと判断して前記第2のプログラムをインサーキットエミュレータに送信するための通信処理部と、
インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部と、
を具備するデバッグ装置。
A debugging device connected to an in-circuit emulator,
A program storage unit for storing a first program that is subject to confidentiality and / or a second program that is not subject to confidentiality;
An authentication processing unit for performing authentication processing with the in-circuit emulator according to claim 2;
3. When authentication processing by the authentication processing unit is completed, it is determined that the authentication processing unit is connected to the in-circuit emulator according to claim 2, and the first and second programs are transmitted to the in-circuit emulator according to claim 2. When the authentication processing by the authentication processing unit cannot be performed, it is determined that the second processing program is connected to an in-circuit emulator other than the in-circuit emulator according to claim 2, and the second program is transmitted to the in-circuit emulator. A communication processing unit for
A debug processing unit for performing debug processing by transmitting and receiving data to and from an in-circuit emulator;
A debugging device comprising:
インサーキットエミュレータに接続されて使用されるデバッグ装置であって、
機密保持対象である第1のプログラム及び/又は機密保持対象でない第2のプログラムを記憶するためのプログラム記憶部と、
前記第2の通信コマンドを用いてインサーキットエミュレータに呼び掛けを行い、応答があった場合に、請求項3記載のインサーキットエミュレータに接続されているものと判断して前記第1及び第2のプログラムを前記第2の通信コマンドを用いて請求項3記載のインサーキットエミュレータに送信し、前記第2の通信コマンドを用いてインサーキットエミュレータに呼び掛けを行い、応答がなかった場合に、請求項3記載のインサーキットエミュレータ以外のインサーキットエミュレータに接続されているものと判断して前記第2のプログラムを前記第1の通信コマンドを用いて当該インサーキットエミュレータに送信するための通信処理部と、
インサーキットエミュレータとの間でデータを送受信することによりデバッグ処理を行うためのデバッグ処理部と、
を具備するデバッグ装置。
A debugging device connected to an in-circuit emulator,
A program storage unit for storing a first program that is subject to confidentiality and / or a second program that is not subject to confidentiality;
The first and second programs are determined to be connected to the in-circuit emulator according to claim 3 when the second communication command is used to call the in-circuit emulator and there is a response. Is transmitted to the in-circuit emulator according to claim 3 using the second communication command, the in-circuit emulator is called using the second communication command, and no response is received. A communication processing unit for determining that the second program is connected to an in-circuit emulator other than the in-circuit emulator and transmitting the second program to the in-circuit emulator using the first communication command;
A debug processing unit for performing debug processing by transmitting and receiving data to and from an in-circuit emulator;
A debugging device comprising:
前記プログラム記憶部に記憶されている前記第1のプログラムが暗号化されている、請求項5〜7のいずれか1項に記載のデバッグ装置。   The debugging device according to claim 5, wherein the first program stored in the program storage unit is encrypted. 請求項1又は4記載のインサーキットエミュレータと、
請求項5又は8記載のデバッグ装置と、
を具備するデバッグシステム。
An in-circuit emulator according to claim 1 or 4,
The debugging device according to claim 5 or 8,
A debugging system comprising:
請求項2又は4記載のインサーキットエミュレータと、
請求項6又は8記載のデバッグ装置と、
を具備するデバッグシステム。
An in-circuit emulator according to claim 2 or 4,
A debugging device according to claim 6 or 8,
A debugging system comprising:
請求項3又は4記載のインサーキットエミュレータと、
請求項7又は8記載のデバッグ装置と、
を具備するデバッグシステム。
An in-circuit emulator according to claim 3 or 4,
A debugging device according to claim 7 or 8,
A debugging system comprising:
JP2004311860A 2004-10-27 2004-10-27 Incircuit emulator, debug device and debug system using the same Withdrawn JP2006126994A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004311860A JP2006126994A (en) 2004-10-27 2004-10-27 Incircuit emulator, debug device and debug system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004311860A JP2006126994A (en) 2004-10-27 2004-10-27 Incircuit emulator, debug device and debug system using the same

Publications (1)

Publication Number Publication Date
JP2006126994A true JP2006126994A (en) 2006-05-18

Family

ID=36721719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004311860A Withdrawn JP2006126994A (en) 2004-10-27 2004-10-27 Incircuit emulator, debug device and debug system using the same

Country Status (1)

Country Link
JP (1) JP2006126994A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008117340A1 (en) * 2007-03-27 2008-10-02 Fujitsu Limited Debug target device, authentication program and debug authentication method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008117340A1 (en) * 2007-03-27 2008-10-02 Fujitsu Limited Debug target device, authentication program and debug authentication method
JP4814993B2 (en) * 2007-03-27 2011-11-16 富士通株式会社 Device to be debugged, authentication program, and debug authentication method

Similar Documents

Publication Publication Date Title
KR101183398B1 (en) Hard drive authentication
KR102007532B1 (en) Hardware security module with means to selectively activate or inhibit debugging and corresponding debugging method
KR20090073208A (en) Persistent security system and method
US20040255199A1 (en) Debug system, microprocessor, and debugger
JP4893167B2 (en) Authentication method
KR101950512B1 (en) Hardware security module and method for processing therein
JP2010039891A (en) Information processor, program execution method, program and information processing system
TWI393006B (en) Security system and method for code dump protection
JP4767619B2 (en) External storage device and SBC control method
JPWO2017208618A1 (en) Information processing apparatus and information processing system
JP2007310601A (en) Microcomputer and method for protecting its software
JP2007072957A (en) Read/write device and debugging system
JP4136433B2 (en) Printing apparatus, information processing apparatus, print server, printing apparatus, printing system control method, and information processing method
KR101630462B1 (en) Apparatus and Method for Securing a Keyboard
WO2023098671A1 (en) Chip licensing and verification method and apparatus, and electronic device
TW201738802A (en) A removable security device and a method to prevent unauthorized exploitation and control access to files
JP2004086584A (en) Authentication device for personal computer
CN110674525A (en) Electronic equipment and file processing method thereof
JP2006126994A (en) Incircuit emulator, debug device and debug system using the same
JP5549810B2 (en) Program obfuscation device, program control device, program obfuscation method, and program
CN103761067A (en) Processing system and processing method for encryption/decryption of data files
US20170337114A1 (en) System and method for communication between a debugger and a target processor
JP2002244757A (en) Semiconductor circuit
JP2008059187A (en) Network authentication system using proxy
CN111431887A (en) Reverse Shell monitoring method and device, terminal equipment and medium

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070404

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090428

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090625