JP2006277333A - Integrated circuit device, microcomputer, and electronic device - Google Patents

Integrated circuit device, microcomputer, and electronic device Download PDF

Info

Publication number
JP2006277333A
JP2006277333A JP2005095550A JP2005095550A JP2006277333A JP 2006277333 A JP2006277333 A JP 2006277333A JP 2005095550 A JP2005095550 A JP 2005095550A JP 2005095550 A JP2005095550 A JP 2005095550A JP 2006277333 A JP2006277333 A JP 2006277333A
Authority
JP
Japan
Prior art keywords
instruction
memory
cpu
bus
integrated circuit
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
JP2005095550A
Other languages
Japanese (ja)
Other versions
JP2006277333A5 (en
Inventor
Hiroaki Kosugi
浩章 小杉
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 JP2005095550A priority Critical patent/JP2006277333A/en
Publication of JP2006277333A publication Critical patent/JP2006277333A/en
Publication of JP2006277333A5 publication Critical patent/JP2006277333A5/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Executing Machine-Instructions (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve security intensity so that the code of software for operating a CPU is not to be read for the purpose of reverse engineering or the like. <P>SOLUTION: The integrated circuit device 10 includes a CPU 20, an on-chip debugging circuit 70, and a memory 30 for command. The integrated circuit device 10 also includes a command bus 50 connected to the CPU 20 and the memory 30 for command, and a data bus 60 that is separated from the command bus 50 and is connected to the CPU 20 and a memory 40 other than the memory 30 for command. The CPU 20 comprises a first terminal 22 connected to the command bus 50, a second terminal 24 connected to the data bus 60, a command code processing section 26 for processing a signal inputted from the first terminal 22, and a data processing section 28 for processing a signal inputted from the second terminal 24. The on-chip debugging circuit 70 is constituted so that the CPU 20 cannot refer to the signal inputted from the first terminal 22. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、集積回路装置、マイクロコンピュータ、及び電子機器に関する。   The present invention relates to an integrated circuit device, a microcomputer, and an electronic device.

近年、ゲーム装置、カーナビゲーションシステム、プリンタ、携帯情報端末、ネットワーク機能を有するDVDレコーダなどの電子機器に組み込まれ、高度な情報処理を実現できるマイクロコンピュータに対する需要が高まっている。   In recent years, there has been an increasing demand for microcomputers that can be incorporated into electronic devices such as game devices, car navigation systems, printers, portable information terminals, and DVD recorders having network functions to realize advanced information processing.

このような組み込み型のマイクロコンピュータ等のCPUを集積したシステムLSIにおいて、CPUを動作させるソフトウエア(ファームウエア)のコードがリバースエンジニアリングなどの目的で読み出される事がセキュリティの観点から問題となっていた。   In a system LSI in which a CPU such as an embedded microcomputer is integrated, it is a problem from the viewpoint of security that the code of software (firmware) for operating the CPU is read for the purpose of reverse engineering. .

従来はもともと暗号化されたコードをROMに格納するなどして読み出しを防止したり、ICチップ内蔵のROMにコードを格納することで、外部からの読み出しを防止していた。
特開2000−347942号 特開平5−324480号
Conventionally, reading from the outside is prevented by storing the originally encrypted code in the ROM or by storing the code in the ROM built in the IC chip.
JP 2000-347942 A JP-A-5-324480

しかしROMのコードを暗号化されていたとしても、何らかの方法で、ROMコードを復号化してRAM上に展開してCPUが実行していた。また内蔵ROMにコードが格納されていたとしても、当然CPUからは参照可能であった。そのためCPUにICE等の省ピン型デバッグツールを接続されてしまった場合、ICE経由でRAM上の復号化されたコード又は内蔵ROM上にあるコードが読みとられしまう可能性があった。   However, even if the ROM code is encrypted, the ROM code is decrypted and expanded on the RAM by some method and executed by the CPU. Even if the code is stored in the built-in ROM, it can be referred from the CPU. Therefore, when a pin-saving debugging tool such as ICE is connected to the CPU, there is a possibility that the decrypted code on the RAM or the code on the built-in ROM may be read via the ICE.

本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、CPUを動作させるソフトウエアのコードがリバースエンジニアリングなどの目的で読み出される事がないようにセキュリティ強度を高めた集積回路装置等を提供することにある。   The present invention has been made in view of the technical problems as described above. The purpose of the present invention is to prevent the software code for operating the CPU from being read for purposes such as reverse engineering. An object of the present invention is to provide an integrated circuit device and the like with increased strength.

(1)本発明は、
CPUと、
省ピン型のデバッグツールと通信を行いオンチップデバッグを行うオンチップデバッグ回路と、
CPUで実行される命令の命令コードが格納された命令用メモリと、
を含む集積回路装置であって、
CPUと前記命令用メモリに接続された命令バスと、
前記命令バスとは分離され、CPUと前記命令メモリ以外のメモリが接続されるデータバスとを含み、
前記CPUは、
前記命令バスと接続される第1の端子と、
前記データバスと接続される第2の端子と、
第1の端子から入力された信号を処理する命令コード処理部と、
第2の端子から入力された信号を処理するデータ処理部と、を含み
前記命令バスを介して読み出された命令の実行を行うように構成され、
前記オンチップデバッグ回路は、
CPUに第1の端子から入力された信号を参照できないように構成されていることを特徴とする。
(1) The present invention
CPU,
An on-chip debugging circuit that communicates with a pin-saving debugging tool to perform on-chip debugging;
An instruction memory storing an instruction code of an instruction executed by the CPU;
An integrated circuit device comprising:
An instruction bus connected to the CPU and the instruction memory;
A data bus separated from the instruction bus and connected to a CPU and a memory other than the instruction memory;
The CPU
A first terminal connected to the instruction bus;
A second terminal connected to the data bus;
An instruction code processing unit for processing a signal input from the first terminal;
A data processing unit that processes a signal input from a second terminal, and configured to execute an instruction read via the instruction bus,
The on-chip debug circuit is
The CPU is configured so that a signal input from the first terminal cannot be referred to.

ここにおいて命令用メモリは、書き換え不可能なメモリ(例えばROM、マスクROM等)でもよいし、揮発性又は不揮発性の書き換え可能なメモリ(RAMやフラッシュROM等)でもよい。   Here, the instruction memory may be a non-rewritable memory (for example, ROM, mask ROM, etc.) or a volatile or non-volatile rewritable memory (RAM, flash ROM, etc.).

本発明によればCPUのパスが命令とデータで分離されており、命令のほうのパスは、オンチップデバッグ回路等を介して外部のデバッグモジュールから参照できないように構成されている。   According to the present invention, the CPU path is separated by an instruction and data, and the instruction path is configured so that it cannot be referred to from an external debug module via an on-chip debug circuit or the like.

従って、ICE等のデバッグツール等を用いてもCPUで実行される命令コードを外部に取り出すことができず、ICE等を用いたリバースエンジニアリングに対してセキュリティ強度の高い集積回路装置を提供することができる。   Therefore, even if a debugging tool such as ICE is used, an instruction code executed by the CPU cannot be extracted to the outside, and an integrated circuit device with high security against reverse engineering using ICE or the like can be provided. it can.

(2)本発明の集積回路装置は、
デバッグ時にCPUが実行する命令コードが格納され、前記命令バスと前記データバスの両方に接続された書き換え可能なメモリを含み、
前記CPUは、デバッグ時には、前記命令バスを介して前記書き換え可能なメモリに格納された命令コードを読み出して命令の実行を行うように構成されていることを特徴とする。
(2) The integrated circuit device of the present invention is
Instruction code executed by the CPU during debugging is stored, and includes a rewritable memory connected to both the instruction bus and the data bus,
The CPU is configured to execute an instruction by reading an instruction code stored in the rewritable memory via the instruction bus during debugging.

書き換え可能なメモリは、揮発性メモリ(RAM)でもよいし不揮発性メモリ(フラッシュROM等)でもよい。   The rewritable memory may be volatile memory (RAM) or non-volatile memory (flash ROM or the like).

本発明では、CPUはデバッグ時には命令バスを介して書き換え可能なメモリに格納された命令コードを読み出して命令の実行を行うように構成されている。またオンチップデバッグ回路は、デバッグ時に前記書き換え可能なメモリに格納された命令コードを、前記データバスを介してよみだし可能に構成されている。   In the present invention, the CPU is configured to execute an instruction by reading an instruction code stored in a rewritable memory via an instruction bus during debugging. The on-chip debug circuit is configured to be able to read out the instruction code stored in the rewritable memory via the data bus during debugging.

従ってデバッグ時に実行された命令コードの内容が知りたい場合には、例えばプログラムカウンタの値で命令コードを特定し、前記データバスを介して書き換え可能なメモリからよみだすようにしてもよい。   Accordingly, when it is desired to know the contents of the instruction code executed at the time of debugging, for example, the instruction code may be specified by the value of the program counter and read out from the rewritable memory via the data bus.

このように本実施の形態では命令バスとデータバスが両方接続された書き換え可能なメモリをもち、開発中(デバッグ中)はこの書き換え可能なメモリ上に命令コードを配置することで、命令の実行コードを参照しながらのデバッグが可能になり、効率的なデバッグを行うことができる。   As described above, the present embodiment has a rewritable memory in which both the instruction bus and the data bus are connected. During development (debugging), the instruction code is arranged on the rewritable memory to execute instructions. Debugging can be performed while referring to the code, and efficient debugging can be performed.

なおCPUが通常実行時(デバッグ時ではない時)には、前記命令バスを介して前記命令用メモリに格納された命令コードを読み出して命令の実行を行うように構成されているので、デバッグが終了すると書き換え可能なメモリに格納されていた命令コードを命令用メモリに格納するようにしてもよい。   When the CPU is normally executed (not when debugging), the instruction code stored in the instruction memory is read out via the instruction bus and the instruction is executed. Upon completion, the instruction code stored in the rewritable memory may be stored in the instruction memory.

(3)本発明の集積回路装置は、
暗号化されたデータを受け取り復号化する復号処理部を含み、
前記復号処理部は、
外部メモリに格納された暗号化された命令コードを受け取り復号化し、
前記命令用メモリは、
書き換え可能なメモリとして構成され、前記復号処理部によって復号化された命令コードが格納されることを特徴とする。
(3) The integrated circuit device of the present invention
A decryption processing unit for receiving and decrypting the encrypted data;
The decryption processing unit
Receive and decrypt the encrypted instruction code stored in the external memory,
The instruction memory is
The memory is configured as a rewritable memory, and stores the instruction code decoded by the decoding processing unit.

本発明では、前記命令用メモリに格納された復号化された命令コードはICE等のデバッグモジュールによって参照することはできない。従って外部メモリを復号化して命令を実行する場合においても復号化された命令コードを外部に取り出すことができず、ICE等を用いたリバースエンジニアリングに対してセキュリティ強度の高い集積回路装置を提供することができる。   In the present invention, the decoded instruction code stored in the instruction memory cannot be referred to by a debug module such as ICE. Accordingly, it is possible to provide an integrated circuit device having a high security strength against reverse engineering using ICE or the like because the decoded instruction code cannot be taken out even when the instruction is executed by decoding the external memory. Can do.

(4)本発明は、
上記のいずれかに記載の集積回路装置を含むマイクロコンピュータである。
(4) The present invention
A microcomputer including any one of the integrated circuit devices described above.

(5)本発明は、
上記記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力源と、
前記マイクロコンピュータにより処理されたデータを出力するための出力装置とを含むことを特徴とする電子機器である。
(5) The present invention
A microcomputer as described above;
An input source of data to be processed by the microcomputer;
And an output device for outputting data processed by the microcomputer.

以下、本発明の好適な実施形態について図面を用いて詳細に説明する。   DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings.

1.本実施形態の特徴
図1は、第1の実施の形態の集積回路装置について説明するための図である。
1. Features of this Embodiment FIG. 1 is a diagram for explaining an integrated circuit device according to a first embodiment.

第1の実施の形態の集積回路装置10はCPU20と、オンチップデバッグ回路70と、命令用メモリ30と、命令バス50と、データバス60とを含む。   The integrated circuit device 10 according to the first embodiment includes a CPU 20, an on-chip debug circuit 70, an instruction memory 30, an instruction bus 50, and a data bus 60.

命令用メモリ30は、チップ外から読めないように構成された内蔵メモリであり、CPU20で実行される命令の命令コードが格納されている。命令用メモリ30は、書き換え不可能なメモリ(例えばROM)でもよいし、揮発性又は不揮発性の書き換え可能なメモリ(RAMやフラッシュROM等)でもよい。命令用メモリ30は、命令バス50以外の他のバス(例えばデータバス60等)には接続されておらず、命令バス50を介してのみ読み出し可能に構成されている。   The instruction memory 30 is a built-in memory configured so as not to be read from outside the chip, and stores instruction codes of instructions executed by the CPU 20. The instruction memory 30 may be a non-rewritable memory (for example, ROM) or a volatile or non-volatile rewritable memory (RAM, flash ROM, etc.). The instruction memory 30 is not connected to a bus other than the instruction bus 50 (for example, the data bus 60), and is configured to be readable only via the instruction bus 50.

命令バス50はCPU20と前記命令用メモリ30に接続されている。   The instruction bus 50 is connected to the CPU 20 and the instruction memory 30.

データバス60は、命令バス50とは分離され、CPU20と前記命令メモリ30以外のメモリ(ここではデータ用メモリ40)が接続される。   The data bus 60 is separated from the instruction bus 50 and is connected to the CPU 20 and a memory other than the instruction memory 30 (here, the data memory 40).

前記CPU20は、前記命令バス50と接続される第1の端子52と、前記データバス60と接続される第2の端子24と、第1の端子22から入力された信号を処理する命令コード処理部26と、第2の端子24から入力された信号を処理するデータ処理部58とを含む。CPU20は、命令バス50を介して前記命令用メモリ30に格納された命令コードを読み出して命令の実行を行うように構成さる。   The CPU 20 processes a signal input from the first terminal 52 connected to the instruction bus 50, the second terminal 24 connected to the data bus 60, and the first terminal 22. Unit 26 and a data processing unit 58 that processes a signal input from the second terminal 24. The CPU 20 is configured to read the instruction code stored in the instruction memory 30 via the instruction bus 50 and execute the instruction.

命令コード処理部26は、例えば入力された命令コードをフェッチするフェッチ回路や、入力された命令コードをデコードするデコード回路等を含んで構成されている。またデータ処理部58は、入力されたデータを保持する汎用レジスタ等を含んで構成される。   The instruction code processing unit 26 includes, for example, a fetch circuit that fetches an input instruction code, a decode circuit that decodes an input instruction code, and the like. The data processing unit 58 includes a general-purpose register for holding input data.

オンチップデバッグ回路70は、省ピン型のデバッグツールと通信を行いオンチップデバッグを行う機能を有し、CPU20に第1の端子22から入力された信号を参照できないように構成されている。   The on-chip debug circuit 70 has a function of performing on-chip debugging by communicating with a pin-saving debug tool, and is configured not to refer to a signal input from the first terminal 22 to the CPU 20.

オンチップデバッグ回路70は、ROM、RAM、制御レジスタ、SIO等を含み、デバッグモードにおいてCPU20にモニタプログラムやデバッグコマンドを実行させるために必要な各種名処理(デバッグモジュールとのI/Oインターフェースや、デバッグコマンドの解析や、ユーザープログラムからモニタプログラムへの割り込み処理等)を行うもので、CPUの命令レジスタを参照できないように構成されている。   The on-chip debug circuit 70 includes a ROM, a RAM, a control register, an SIO, and the like. Various name processes (I / O interface with a debug module, It analyzes the debug command, interrupt processing from the user program to the monitor program, etc.), and is configured so that the instruction register of the CPU cannot be referred to.

本実施の形態では命令コードが格納された命令用メモリ30と、データが格納されたデータ用メモリ40が別個に設けられ、それぞれが分離されたバス(酩酊バス50、データバス40)に接続されている。そして命令とデータはCPUの別個の端子(第1の端子、第2の端子)から入力される。   In this embodiment, an instruction memory 30 in which an instruction code is stored and a data memory 40 in which data is stored are provided separately, and are connected to separate buses (酩酊 bus 50 and data bus 40). ing. The command and data are input from separate terminals (first terminal and second terminal) of the CPU.

このように本実施の形態ではCPUのパスが命令とデータで分離されており、命令のほうのパスは、オンチップデバッグ回路等を介して外部のデバッグモジュールから参照できないように構成されている。   Thus, in this embodiment, the CPU path is separated from the instruction and data, and the instruction path is configured so that it cannot be referenced from an external debug module via an on-chip debug circuit or the like.

一般にICE等のデバッグモジュールによって命令の実行コードが読めるのは、命令バスとデータバスとデータバスから共にアクセス可能なメモリであるケースである。しかし本実施の形態の命令用メモリ30は、命令バス50からはアクセス可能であるが、データバス60からはアクセスできないように構成されている。   In general, the execution code of an instruction can be read by a debug module such as ICE in a case where the memory is accessible from the instruction bus, the data bus, and the data bus. However, the instruction memory 30 of the present embodiment is configured to be accessible from the instruction bus 50 but not from the data bus 60.

従って、ICE等のデバッグツール等を用いてもCPUで実行される命令コードを外部に取り出すことができず、ICE等を用いたリバースエンジニアリングに対してセキュリティ強度の高い集積回路装置を提供することができる。   Therefore, even if a debugging tool such as ICE is used, an instruction code executed by the CPU cannot be extracted to the outside, and an integrated circuit device with high security against reverse engineering using ICE or the like can be provided. it can.

図2は、第2の実施の形態の集積回路装置について説明するための図である。   FIG. 2 is a diagram for explaining the integrated circuit device according to the second embodiment.

第2の実施の形態の集積回路装置10は、第2の実施の形態に加え書き換え可能なメモリ(デバッグ用/汎用メモリ)80、バスブリッジ82をさらに含む。   The integrated circuit device 10 according to the second embodiment further includes a rewritable memory (debug / general purpose memory) 80 and a bus bridge 82 in addition to the second embodiment.

第2の実施の形態において第1の実施の形態と同じ構成要素については図1と同じ番号を付しており、説明を省略する。   In the second embodiment, the same constituent elements as those in the first embodiment are denoted by the same reference numerals as those in FIG.

書き換え可能なメモリ(デバッグ用/汎用メモリ)80は、デバッグ時にCPUが実行する命令コードが格納され、前記命令バスと前記データバスの両方に接続される。   A rewritable memory (debug / general purpose memory) 80 stores instruction codes executed by the CPU during debugging and is connected to both the instruction bus and the data bus.

書き換え可能な揮発性メモリは命令バスとデータバスに接続されそれらを切り替え可能なバスブリッジ回路82に接続され、デバッグ時にはバスブリッジ回路82はデータバスに接続されるようにしても良い。このようにすると、内部デバッグモジュールはデバッグ時に、書き換え可能な揮発性メモリ(デバッグ用/汎用メモリ)80に格納された命令コードを参照することができる。   The rewritable volatile memory may be connected to an instruction bus and a data bus and connected to a bus bridge circuit 82 capable of switching between them, and the bus bridge circuit 82 may be connected to the data bus during debugging. In this way, the internal debug module can refer to the instruction code stored in the rewritable volatile memory (debugging / general purpose memory) 80 during debugging.

書き換え可能なメモリ(デバッグ用/汎用メモリ)80は、揮発性メモリ(RAM)でもよいし不揮発性メモリ(フラッシュROM等)でもよい。   The rewritable memory (debugging / general purpose memory) 80 may be a volatile memory (RAM) or a non-volatile memory (flash ROM or the like).

本実施の形態ではCPU20は、デバッグ時には命令バス50を介して書き換え可能なメモリ(デバッグ用/汎用メモリ)80に格納された命令コードを読み出して命令の実行を行うように構成されている。   In the present embodiment, the CPU 20 is configured to read an instruction code stored in a rewritable memory (debug / general purpose memory) 80 via the instruction bus 50 and execute an instruction during debugging.

オンチップデバッグ回路70は、デバッグ時に前記書き換え可能なメモリ(デバッグ用/汎用メモリ)80に格納された命令コードを、前記データバスを介してよみだし可能に構成されている。   The on-chip debug circuit 70 is configured to be able to read out the instruction code stored in the rewritable memory (debug / general purpose memory) 80 during debugging via the data bus.

従ってデバッグ時に実行された命令コードの内容が知りたい場合には、例えばプログラムカウンタの値で命令コードを特定し、前記データバスを介して書き換え可能なメモリ(デバッグ用/汎用メモリ)80からよみだすようにしてもよい。   Therefore, when it is desired to know the contents of the instruction code executed at the time of debugging, for example, the instruction code is specified by the value of the program counter and is read from the rewritable memory (debug / general purpose memory) 80 via the data bus. You may do it.

このように本実施の形態では命令バス50とデータバス60が両方接続された書き換え可能なメモリ(デバッグ用/汎用メモリ)80をもち、開発中(デバッグ中)はこの書き換え可能なメモリ(デバッグ用/汎用メモリ)80上に命令コードを配置することで、命令の実行コードを参照しながらのデバッグが可能になり、効率的なデバッグを行うことができる。   As described above, the present embodiment has the rewritable memory (debug / general purpose memory) 80 to which both the instruction bus 50 and the data bus 60 are connected, and this rewritable memory (for debug) is being developed (debugging). By arranging the instruction code on the (/ general purpose memory) 80, debugging can be performed while referring to the execution code of the instruction, and efficient debugging can be performed.

なおCPUが通常実行時(デバッグ時ではない時)には、前記命令バスを介して前記命令用メモリに格納された命令コードを読み出して命令の実行を行うように構成されているので、デバッグが終了すると書き換え可能なメモリに格納されていた命令コードを命令用メモリに格納するようにしてもよい。   When the CPU is normally executed (not when debugging), the instruction code stored in the instruction memory is read out via the instruction bus and the instruction is executed. Upon completion, the instruction code stored in the rewritable memory may be stored in the instruction memory.

図3は、第3の実施の形態の集積回路装置について説明するための図である。   FIG. 3 is a diagram for explaining an integrated circuit device according to the third embodiment.

第3の実施の形態の集積回路装置10は、第2の実施の形態に加え復号回路90をさらに含む。   The integrated circuit device 10 according to the third embodiment further includes a decoding circuit 90 in addition to the second embodiment.

第2の実施の形態において第1の実施の形態及び第1の実施の形態と同じ構成要素については図1、図2と同じ番号を付しており、説明を省略する。   In the second embodiment, the same components as those in the first embodiment and the first embodiment are denoted by the same reference numerals as those in FIG. 1 and FIG.

復号回路90は、外部メモリ110に格納された暗号化された命令コードを受け取り復号化する処理を行う。   The decryption circuit 90 performs a process of receiving and decrypting the encrypted instruction code stored in the external memory 110.

そして前記命令用メモリ30は、RAMやフラッシュROM等の書き換え可能なメモリとして構成され、前記復号回路90によって復号化された命令コードが格納される。   The instruction memory 30 is configured as a rewritable memory such as a RAM or a flash ROM, and stores the instruction code decoded by the decoding circuit 90.

本実施の形態では、前記命令用メモリ30に格納された復号化された命令コードはICE等のデバッグモジュールによって参照することはできないので、外部メモリを復号化して命令を実行する場合においても復号化された命令コードを外部に取り出すことができず、ICE等を用いたリバースエンジニアリングに対してセキュリティ強度の高い集積回路装置を提供することができる。   In this embodiment, since the decoded instruction code stored in the instruction memory 30 cannot be referred to by a debug module such as ICE, the decoding is performed even when the external memory is decoded and the instruction is executed. Therefore, it is possible to provide an integrated circuit device with high security strength against reverse engineering using ICE or the like.

2.マイクロコンピュータ
図4は、本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
2. Microcomputer FIG. 4 is an example of a hardware block diagram of the microcomputer of this embodiment.

本マイクロコンピュータ700は、CPU510、キャッシュメモリ520、RAM710,ROM720、MMU730LCDコントローラ530、リセット回路540、プログラマブルタイマ550、リアルタイムクロック(RTC)560、DRAMコントローラ570、割り込みコントローラ580、通信制御装置(シリアルインターフェース)590、バスコントローラ600、A/D変換器610、D/A変換器620、入力ポート630、出力ポート640、I/Oポート650、クロック発生装置660、プリスケーラ670及びそれらを接続する汎用バス680、デバッグモジュール740、専用バス750等、各種ピン690等を含む。   The microcomputer 700 includes a CPU 510, a cache memory 520, a RAM 710, a ROM 720, an MMU 730 LCD controller 530, a reset circuit 540, a programmable timer 550, a real-time clock (RTC) 560, a DRAM controller 570, an interrupt controller 580, and a communication control device (serial interface). 590, bus controller 600, A / D converter 610, D / A converter 620, input port 630, output port 640, I / O port 650, clock generator 660, prescaler 670, and general-purpose bus 680 connecting them A debug module 740, a dedicated bus 750, etc., and various pins 690, etc. are included.

3.電子機器
図5に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器800は、マイクロコンピュータ(またはASIC)810、入力部820、メモリ830、電源生成部840、LCD850、音出力部860を含む。
3. Electronic Device FIG. 5 shows an example of a block diagram of the electronic device of this embodiment. The electronic apparatus 800 includes a microcomputer (or ASIC) 810, an input unit 820, a memory 830, a power generation unit 840, an LCD 850, and a sound output unit 860.

ここで、入力部820は、種々のデータを入力するためのものである。マイクロコンピュータ810は、この入力部820により入力されたデータに基づいて種々の処理を行うことになる。メモリ830は、マイクロコンピュータ810などの作業領域となるものである。電源生成部840は、電子機器800で使用される各種電源を生成するためのものである。LCD850は、電子機器が表示する各種の画像(文字、アイコン、グラフィック等)を出力するためのものである。 音出力部860は、電子機器800が出力する各種の音(音声、ゲーム音等)を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。   Here, the input unit 820 is for inputting various data. The microcomputer 810 performs various processes based on the data input by the input unit 820. The memory 830 serves as a work area for the microcomputer 810 and the like. The power generation unit 840 is for generating various power sources used in the electronic device 800. The LCD 850 is for outputting various images (characters, icons, graphics, etc.) displayed by the electronic device. The sound output unit 860 is for outputting various sounds (sound, game sound, etc.) output from the electronic device 800, and the function can be realized by hardware such as a speaker.

図6(A)に、電子機器の1つである携帯電話950の外観図の例を示す。この携帯電話950は、入力部として機能するダイヤルボタン952や、電話番号や名前やアイコンなどを表示するLCD954や、音出力部として機能し音声を出力するスピーカ956を備える。   FIG. 6A illustrates an example of an external view of a mobile phone 950 which is one of electronic devices. The cellular phone 950 includes a dial button 952 that functions as an input unit, an LCD 954 that displays a telephone number, a name, an icon, and the like, and a speaker 956 that functions as a sound output unit and outputs sound.

図6(B)に、電子機器の1つである携帯型ゲーム装置960の外観図の例を示す。この携帯型ゲーム装置960は、入力部として機能する操作ボタン962、十字キー964や、ゲーム画像を表示するLCD966や、音出力部として機能しゲーム音を出力するスピーカ968を備える。   FIG. 6B illustrates an example of an external view of a portable game device 960 that is one of electronic devices. The portable game device 960 includes an operation button 962 that functions as an input unit, a cross key 964, an LCD 966 that displays a game image, and a speaker 968 that functions as a sound output unit and outputs game sound.

図6(C)に、電子機器の1つであるパーソナルコンピュータ970の外観図の例を示す。このパーソナルコンピュータ970は、入力部として機能するキーボード972や、文字、数字、グラフィックなどを表示するLCD974、音出力部976を備える。   FIG. 6C illustrates an example of an external view of a personal computer 970 that is one of electronic devices. The personal computer 970 includes a keyboard 972 that functions as an input unit, an LCD 974 that displays characters, numbers, graphics, and the like, and a sound output unit 976.

本実施の形態のマイクロコンピュータを図6(A)〜図6(C)の電子機器に組みむことにより、低価格で画像処理速度の速いコストパフォーマンスの高い電子機器を提供することができる。   By incorporating the microcomputer of this embodiment into the electronic devices in FIGS. 6A to 6C, an electronic device with low cost and high image processing speed can be provided.

なお、本実施形態を利用できる電子機器としては、図6(A)、(B)、(C)に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のLCDを使用する種々の電子機器を考えることができる。   As electronic devices that can use this embodiment, in addition to those shown in FIGS. 6A, 6B, and 6C, a portable information terminal, a pager, an electronic desk calculator, a device including a touch panel, Various electronic devices using an LCD such as a projector, a word processor, a viewfinder type or a monitor direct view type video tape recorder, and a car navigation device can be considered.

LCDを使用しないもの、例えばネットワーク機能を有するDVDレコーダ等の電子機器でもよい。   Electronic devices that do not use an LCD, such as a DVD recorder having a network function, may be used.

なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。   In addition, this invention is not limited to this embodiment, A various deformation | transformation implementation is possible within the range of the summary of this invention.

第1の実施の形態の集積回路装置について説明するための図。1 is a diagram for explaining an integrated circuit device according to a first embodiment; 第2の実施の形態の集積回路装置について説明するための図。FIG. 6 is a diagram for explaining an integrated circuit device according to a second embodiment. 第3の実施の形態の集積回路装置について説明するための図。FIG. 6 is a diagram for explaining an integrated circuit device according to a third embodiment. 本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。It is an example of the hardware block diagram of the microcomputer of this Embodiment. マイクロコンピュータを含む電子機器のブロック図の一例を示す。An example of a block diagram of an electronic device including a microcomputer is shown. 図6(A)(B)(C)は、種々の電子機器の外観図の例である。6A, 6B, and 6C are examples of external views of various electronic devices.

符号の説明Explanation of symbols

10 集積回路装置、20 CPU、22 第1の端子、24 第2の端子、26 命令コード処理部、28 データ処理部、30 命令用メモリ、40
データ用メモリ、50 命令バス、60 データバス、70 オンチップデバッグ回路、80 デバッグ用/汎用メモリ、82 バスブリッジ、90 復号回路、92 メモリインターフェース、510、CPU、520 キャッシュメモリ530 LCDコントローラ、540 リセット回路、550 プログラマブルタイマ、560 リアルタイムクロック(RTC)、570 DMAコントローラ兼バスI/F、580 割り込みコントローラ、590 通信制御回路(シリアルインターフェース)、600 バスコントローラ、610 A/D変換器、620 D/A変換器、630 入力ポート、640 出力ポート、650 I/Oポート、660 クロック発生装置(PLL)、670 プリスケーラ、680 汎用バス、690 各種ピン、700 マイクロコンピュータ、710 ROM、720 RAM、730 MMU、740 絵バッグモジュール、750 専用バス、800 電子機器、810 マイクロコンピュータ(ASIC)、820 入力部、830 メモリ、840 電源生成部850 LCD、860 音出力部、950 携帯電話、952 ダイヤルボタン、954 LCD、956 スピーカ、960 携帯型ゲーム装置、962 操作ボタン、964 十字キー、966 LCD、968 スピーカ、970 パーソナルコンピュータ、972 キーボード、974 LCD、976 音出力部
DESCRIPTION OF SYMBOLS 10 Integrated circuit device, 20 CPU, 22 1st terminal, 24 2nd terminal, 26 Instruction code processing part, 28 Data processing part, 30 Instruction memory, 40
Data memory, 50 instruction bus, 60 data bus, 70 on-chip debug circuit, 80 debug / general purpose memory, 82 bus bridge, 90 decoding circuit, 92 memory interface, 510, CPU, 520 cache memory 530 LCD controller, 540 reset Circuit, 550 Programmable timer, 560 Real time clock (RTC), 570 DMA controller / bus I / F, 580 Interrupt controller, 590 Communication control circuit (serial interface), 600 Bus controller, 610 A / D converter, 620 D / A Converter, 630 input port, 640 output port, 650 I / O port, 660 clock generator (PLL), 670 prescaler, 680 general-purpose bus, 690 various pins, 700 microcompilation 710 ROM, 720 RAM, 730 MMU, 740 picture bag module, 750 dedicated bus, 800 electronic device, 810 microcomputer (ASIC), 820 input unit, 830 memory, 840 power generation unit 850 LCD, 860 sound output unit , 950 mobile phone, 952 dial button, 954 LCD, 956 speaker, 960 portable game device, 962 operation button, 964 cross key, 966 LCD, 968 speaker, 970 personal computer, 972 keyboard, 974 LCD, 976 sound output unit

Claims (5)

CPUと、
省ピン型のデバッグツールと通信を行いオンチップデバッグを行うオンチップデバッグ回路と、
CPUで実行される命令の命令コードが格納された命令用メモリと、
を含む集積回路装置であって、
CPUと前記命令用メモリに接続された命令バスと、
前記命令バスとは分離され、CPUと前記命令メモリ以外のメモリが接続されるデータバスとを含み、
前記CPUは、
前記命令バスと接続される第1の端子と、
前記データバスと接続される第2の端子と、
第1の端子から入力された信号を処理する命令コード処理部と、
第2の端子から入力された信号を処理するデータ処理部と、を含み
前記命令バスを介して読み出された命令の実行を行うように構成され、
前記オンチップデバッグ回路は、
CPUに第1の端子から入力された信号を参照できないように構成されていることを特徴とする集積回路装置。
CPU,
An on-chip debugging circuit that communicates with a pin-saving debugging tool to perform on-chip debugging;
An instruction memory storing an instruction code of an instruction executed by the CPU;
An integrated circuit device comprising:
An instruction bus connected to the CPU and the instruction memory;
A data bus separated from the instruction bus and connected to a CPU and a memory other than the instruction memory;
The CPU
A first terminal connected to the instruction bus;
A second terminal connected to the data bus;
An instruction code processing unit for processing a signal input from the first terminal;
A data processing unit that processes a signal input from a second terminal, and configured to execute an instruction read via the instruction bus,
The on-chip debug circuit is
An integrated circuit device characterized in that a signal inputted from a first terminal to a CPU cannot be referred to.
請求項1において、
デバッグ時にCPUが実行する命令コードが格納され、前記命令バスと前記データバスの両方に接続された書き換え可能なメモリを含み、
前記CPUは、デバッグ時には、前記命令バスを介して前記書き換え可能なメモリに格納された命令コードを読み出して命令の実行を行うように構成されていることを特徴とする集積回路装置。
In claim 1,
Instruction code executed by the CPU during debugging is stored, and includes a rewritable memory connected to both the instruction bus and the data bus,
The integrated circuit device, wherein the CPU is configured to execute an instruction by reading an instruction code stored in the rewritable memory via the instruction bus during debugging.
請求項1乃至2のいずれかにおいて、
暗号化されたデータを受け取り復号化する復号処理部を含み、
前記復号処理部は、
外部メモリに格納された暗号化された命令コードを受け取り復号化し、
前記命令用メモリは、
書き換え可能なメモリとして構成され、前記復号処理部によって復号化された命令コードが格納されることを特徴とする集積回路装置。
In any one of Claims 1 thru | or 2.
A decryption processing unit for receiving and decrypting the encrypted data;
The decryption processing unit
Receive and decrypt the encrypted instruction code stored in the external memory,
The instruction memory is
An integrated circuit device comprising a rewritable memory and storing an instruction code decoded by the decoding processing unit.
請求項1乃至3のいずれかに記載の集積回路装置を含むマイクロコンピュータ。   A microcomputer comprising the integrated circuit device according to claim 1. 請求項4に記載のマイクロコンピュータと、
前記マイクロコンピュータの処理対象となるデータの入力源と、
前記マイクロコンピュータにより処理されたデータを出力するための出力装置とを含むことを特徴とする電子機器。
A microcomputer according to claim 4;
An input source of data to be processed by the microcomputer;
And an output device for outputting data processed by the microcomputer.
JP2005095550A 2005-03-29 2005-03-29 Integrated circuit device, microcomputer, and electronic device Withdrawn JP2006277333A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005095550A JP2006277333A (en) 2005-03-29 2005-03-29 Integrated circuit device, microcomputer, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005095550A JP2006277333A (en) 2005-03-29 2005-03-29 Integrated circuit device, microcomputer, and electronic device

Publications (2)

Publication Number Publication Date
JP2006277333A true JP2006277333A (en) 2006-10-12
JP2006277333A5 JP2006277333A5 (en) 2008-05-08

Family

ID=37212034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005095550A Withdrawn JP2006277333A (en) 2005-03-29 2005-03-29 Integrated circuit device, microcomputer, and electronic device

Country Status (1)

Country Link
JP (1) JP2006277333A (en)

Similar Documents

Publication Publication Date Title
JP4324810B2 (en) Protection method for microcomputers, electronic devices and flash memory
US7340589B2 (en) Shift prefix instruction decoder for modifying register information necessary for decoding the target instruction
WO2003104948A1 (en) Memory managing unit, code verifying device, and code decoder
JP3698123B2 (en) Information processing apparatus and electronic apparatus
JP3778246B2 (en) Interrupt controller, ASIC, and electronic device
JP2007310714A (en) Integrated circuit device, debugging tool, debugging system, microcomputer, and electronic apparatus
JP4235831B2 (en) Target system, debug system, integrated circuit device, microcomputer and electronic device
JP6390840B2 (en) Semiconductor device and electronic equipment
JP2007207075A (en) Cpu, integrated circuit device, microcomputer, electronic equipment and method for controlling cpu
JP2006277333A (en) Integrated circuit device, microcomputer, and electronic device
JP2007193572A (en) Cpu, integrated circuit device, microcomputer, and electronic equipment
CN108874698A (en) External equipment connection method, device, storage medium and electronic equipment
JP4284559B2 (en) Microprocessor, microcomputer, electronic equipment
EP0907124A1 (en) Microcomputer and electronic equipment
JP2008065549A (en) Microcomputer, information processing system, electronic equipment and start control method for microcomputer
JP2003271417A (en) Information processing device and electronic equipment
JP2006011707A (en) Emulation system, microcomputer and electronic equipment
JP2014115740A (en) Control method and information processing device
JP2006178725A (en) Integrated circuit device, communication controller, microcomputer and electronic equipment
JP3760999B2 (en) Information processing apparatus, microcomputer and electronic device
JP2006209303A (en) Integrated circuit device, communication control device, microcomputer and electronic apparatus
JP2006050503A (en) Integrated circuit device, communication control apparatus, microcomputer, and electronic equipment
JP2007199991A (en) Integrated circuit device, microcomputer, and electronic device
JP2006011858A (en) Semiconductor device, microcomputer, and electronic device
JP2004129130A (en) Communication control circuit, communication controller, microcomputer, and electronic apparatus

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080325

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080325

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080626

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090630