JP5124244B2 - Semiconductor integrated circuit, security method, security program, and recording medium - Google Patents

Semiconductor integrated circuit, security method, security program, and recording medium Download PDF

Info

Publication number
JP5124244B2
JP5124244B2 JP2007297658A JP2007297658A JP5124244B2 JP 5124244 B2 JP5124244 B2 JP 5124244B2 JP 2007297658 A JP2007297658 A JP 2007297658A JP 2007297658 A JP2007297658 A JP 2007297658A JP 5124244 B2 JP5124244 B2 JP 5124244B2
Authority
JP
Japan
Prior art keywords
register
copy
register group
circuit
inaccessible
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
JP2007297658A
Other languages
Japanese (ja)
Other versions
JP2009123051A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007297658A priority Critical patent/JP5124244B2/en
Publication of JP2009123051A publication Critical patent/JP2009123051A/en
Application granted granted Critical
Publication of JP5124244B2 publication Critical patent/JP5124244B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体に関し、詳細には、回路構成やプログラムの機密を保護する半導体集積回路、該半導体集積回路内の機密保護方法、機密保護プログラム及び記録媒体に関する。   The present invention relates to a semiconductor integrated circuit, a security protection method, a security program, and a recording medium, and more particularly, a semiconductor integrated circuit that protects the security of a circuit configuration and a program, a security method in the semiconductor integrated circuit, and a security program And a recording medium.

半導体集積回路は、近年、FPGA(Field Programmable Gate Array)等のプログラマブルなものを用いて、装置やシステムの要求に応じて機能変更を容易に行えるようになってきているが、この場合、FPGAは、一般に入手可能な市販のデバイスであるため、そのプログラムの保護や回路構成の特定を防止する技術が要求される。   In recent years, semiconductor integrated circuits have been able to be easily changed in function according to the requirements of devices and systems using programmable devices such as FPGAs (Field Programmable Gate Arrays). Since the device is a commercially available device, a technique for protecting the program and identifying the circuit configuration is required.

例えば、半導体集積回路の機能として、偽造防止等の回路を搭載している場合、偽造防止のための回路動作によって偽造防止のための秘匿情報が取得されないようにする必要がある。   For example, when a circuit for preventing counterfeiting is mounted as a function of the semiconductor integrated circuit, it is necessary to prevent confidential information for preventing forgery from being acquired by a circuit operation for preventing forgery.

このような偽造防止等の秘匿を要する回路の動作により、偽造防止の情報が取得可能となって、情報分析されることで、偽造防止の技術がどのようなものであるかが知られるおそれがあるため、偽造防止を適切に回避して、セキュリティを向上させる必要がある。特に、偽造防止回路の動作に関わるレジスタへのアクセスを制限する等によって、セキュリティを高める必要がある。   With the operation of a circuit that requires concealment such as anti-counterfeiting, information on anti-counterfeiting can be acquired and information analysis may be performed to know what the anti-counterfeiting technology is. For this reason, it is necessary to appropriately prevent forgery and improve security. In particular, it is necessary to increase security by restricting access to registers related to the operation of the anti-counterfeit circuit.

すなわち、近年、半導体集積回路の大規模化により、半導体集積回路には、多数の種類の機能が盛り込まれ、また、開発者も多人数が関わり、回路設計や評価を行うようになってきており、偽造防止等の機密を要する回路と他の回路が一緒に開発されることも増えてきている。このような半導体集積回路の開発状況において、半導体集積回路は、その内部に搭載するレジスタへの設定やデバッグ機能等のように共通の動作をする回路もあり、特に、レジスタのアクセスやデバッグ機能等は、共通のI/F制御である。半導体集積回路は、このように共通化がされていることにより、機密を要する内部回路のレジスタへの設定方法やデバッグ制御方法が容易に知られるおそれがあり、レジスタの設定と動作の関連性やデバッグにより、内部処理の信号、データの出力が行われてしまうおそれがある。   In other words, in recent years, due to the increase in the scale of semiconductor integrated circuits, many types of functions have been incorporated into semiconductor integrated circuits, and many people have become involved in the development and design of circuits. In addition, a circuit requiring confidentiality such as forgery prevention and another circuit are being developed together. In the development situation of such semiconductor integrated circuits, there are also circuits that perform common operations such as setting to registers mounted in the semiconductor integrated circuits, debugging functions, etc., especially register access and debugging functions, etc. Is common I / F control. Since the semiconductor integrated circuit is shared in this way, there is a possibility that a method for setting a register of an internal circuit requiring confidentiality or a debug control method may be easily known. There is a risk that internal processing signals and data may be output by debugging.

そして、従来、半導体集積回路におけるプログラムの保護や回路構成の特定を防止する方法として、暗号化によって構成データを保護する方法が一般に用いられているが、暗号化によって回路構成データを保護する場合、暗号化情報を半導体集積回路の内部に記憶させる必要があり、そのための回路設計が極めて複雑になるとともに、復号に時間がかかり、起動が遅くなるという問題がある。   Conventionally, as a method for preventing program protection and circuit configuration specification in a semiconductor integrated circuit, a method for protecting configuration data by encryption is generally used.However, when circuit configuration data is protected by encryption, It is necessary to store the encrypted information inside the semiconductor integrated circuit, and there is a problem that the circuit design for that is extremely complicated, the decryption takes time, and the startup is delayed.

また、半導体集積回路における回路構成の特定を防止する方法として、従来から、デバイスの部品型名の消去や基板特定部分のシリコン等による物理的な隠匿等の方法が用いられている。   Conventionally, as a method for preventing the specification of a circuit configuration in a semiconductor integrated circuit, a method such as erasing a part type name of a device or physically concealing a substrate specific portion with silicon or the like has been used.

ところが、このような方法を用いると、悪意のある第三者がその覆い隠した物質を除去することにより、比較的容易に回路構成が特定されてしまったり、製造者による修理、手直し等の必要な作業に対してその覆い隠した物質が妨げになるという問題があった。   However, when such a method is used, a malicious third party can remove the concealed material, so that the circuit configuration can be specified relatively easily, or the repair or repair by the manufacturer is necessary. There is a problem that the concealed material interferes with difficult work.

そこで、従来、フィールド・プログラマブル・ゲート・アレイ内に外部回路から内部ロジックへのアクセスを制御するゲート回路を設け、予め内部の許可キー設定レジスタに設定された許可キーと前記外部回路から入力される許可キーとを比較し、一致した場合に前記ゲート回路のロックを解除して前記外部回路から内部ロジックへのアクセスを許可する回路構成特定防止方法が提案されている(特許文献1参照)。   Therefore, conventionally, a gate circuit for controlling access from the external circuit to the internal logic is provided in the field programmable gate array, and the permission key preset in the internal permission key setting register and the external circuit are input. There has been proposed a circuit configuration specific prevention method that compares a permission key and releases the lock of the gate circuit and permits access from the external circuit to the internal logic if they match (see Patent Document 1).

すなわち、この従来技術は、回路構成全体を覆い隠すことなく、デバイスのプログラム及び機番の構造が同一構成とならない限り、プログラムが動作しないようにして、回路構成の特定を防止している。   That is, this conventional technique prevents the program from operating unless the device program and the structure of the machine number have the same configuration without covering up the entire circuit configuration, thereby preventing the circuit configuration from being specified.

特開2006−18577号公報JP 2006-18577 A

しかしながら、上記公報記載の従来技術にあっては、予め内部の許可キー設定レジスタに設定された許可キーと外部回路から入力される許可キーとが一致することを条件として、外部回路から内部回路へのアクセスを許可しているが、外部からの許可キーについては、現在、既に各種の多数の許可キーを自動的に生成するキー生成技術があり、このようなキー生成技術で許可キーが生成されて半導体集積回路に入力されると、半導体集積回路の内部に設定されている許可キーと一致する許可キーが容易に入力されるおそれがあり、比較的容易に半導体集積回路へのアクセスが可能となり、より高いセキュリティの確保が要望される。   However, in the prior art described in the above publication, from the external circuit to the internal circuit, provided that the permission key set in the internal permission key setting register in advance matches the permission key input from the external circuit. However, for external permission keys, there are currently key generation technologies that automatically generate a large number of various permission keys, and these key generation technologies generate permission keys. If it is input to the semiconductor integrated circuit, there is a possibility that the permission key that matches the permission key set in the semiconductor integrated circuit may be easily input, and the semiconductor integrated circuit can be accessed relatively easily. Therefore, ensuring higher security is required.

そこで、本発明は、内部回路構成の特定や動作の内容に対してより一層安価にかつより高い機密性を確保することのできる半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体を提供することを目的としている。   Accordingly, the present invention provides a semiconductor integrated circuit, a security protection method, a security protection program, and a recording medium that can ensure higher confidentiality at a lower cost with respect to the specification of the internal circuit configuration and the content of the operation. The purpose is that.

本発明は、半導体集積回路が、各種データ処理を実行する機能モジュールの参照するレジスタとして、機能モジュールが直接参照するとともに外部からのアクセスが不可能な外部アクセス不可レジスタ群と、外部からレジスタ値が設定される外部アクセス可能レジスタ群と、を搭載し、外部からのコピー指示によって、該外部アクセス可能レジスタ群のレジスタに設定されたレジスタ値を外部アクセス不可レジスタ群のレジスタにコピーする機能を有するとともに、該コピー指示が、入力される信号に応じて判断されるコピー可能期間以外の期間にあると該コピーを禁止するコピー制限処理を行うものであり、前記コピー可能期間は、前記機能モジュールの動作状態を示すフレームゲート信号が前記機能モジュールの非動作状態を示す期間であって、且つ前記フレームゲート信号を遅延させた信号に基づいて生成されるコピー許可トリガのタイミングに基づいて判断される期間であることを特徴とする。 The present invention relates to an externally inaccessible register group which is directly referred to by a functional module and cannot be accessed from the outside as a register to which a semiconductor integrated circuit refers to a functional module executing various data processing, and a register value from the outside. A set of externally accessible registers to be set, and a function to copy the register values set in the registers of the externally accessible registers to the registers of the externally inaccessible registers by an external copy instruction When the copy instruction is in a period other than the copy available period determined according to the input signal, the copy restriction process for prohibiting the copy is performed , and the copy available period is an operation of the functional module. In a period when the frame gate signal indicating the state indicates the non-operating state of the functional module It, characterized in that it is a period that is determined and based on the timing of the copy permission trigger is generated based on the frame gate signal a signal obtained by delaying the.

また、本発明は、機能モジュールが、複数の子機能モジュールを有していると、外部アクセス可能レジスタ群及び外部アクセス不可レジスタ群が、それぞれ該子機能モジュールに対応する所定数のレジスタを有し、前記コピー制限処理として、該複数の子機能モジュールのうち、機密を要する所定の子機能モジュールに対応する該外部アクセス不可レジスタ群のレジスタに対してのみ、上述したコピー制限処理を行う。 Further, according to the present invention, when the functional module has a plurality of child functional modules, the externally accessible register group and the externally inaccessible register group each have a predetermined number of registers corresponding to the child functional modules. , as the copy restriction process, the plurality herring roe functions of the modules, only the register of the external inaccessible registers that correspond to a predetermined child feature modules for which security is required, performs the copy control processing described above.

本発明によれば、半導体集積回路が、各種データ処理を実行する機能モジュールの参照するレジスタとして、機能モジュールが直接参照するとともに外部からのアクセスが不可能な外部アクセス不可レジスタ群と、外部からレジスタ値が設定される外部アクセス可能レジスタ群と、を搭載し、外部からのコピー指示によって、該外部アクセス可能レジスタ群のレジスタに設定されたレジスタ値を外部アクセス不可レジスタ群のレジスタにコピーするとともに、該コピー指示が所定のコピー可能期間以外の期間にあると該コピーを禁止するコピー制限処理を行うので、機能モジュールの動作を直接制御する外部アクセス不可レジスタ群のレジスタへのレジスタ値の設定をコピー可能期間のみに限定して、レジスタ値の設定を困難なものとすることができ、レジスタのレジスタ値と機能モジュールの動作との関連性を外部から取得されることを困難なものとして、半導体集積回路の内部回路構成の特定や動作の内容に対してより一層安価にかつより一層高い機密性を確保することができる。   According to the present invention, the semiconductor integrated circuit is referred to by the functional module that executes various data processing, and the externally inaccessible register group that the functional module directly refers to and cannot be accessed from the outside, and the externally registered register And an externally accessible register group in which a value is set, and by copying instructions from the outside, the register value set in the register of the externally accessible register group is copied to the register of the externally inaccessible register group, If the copy instruction is in a period other than the predetermined copy enable period, copy restriction processing is performed to prohibit the copy, so copy the register value settings to the registers in the externally inaccessible register group that directly controls the operation of the functional modules. It is difficult to set the register value only for the possible period. It is difficult to obtain the relationship between the register value of the register and the operation of the functional module from the outside, and it is much cheaper to specify the internal circuit configuration of the semiconductor integrated circuit and the content of the operation. Even higher confidentiality can be ensured.

以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。   Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In addition, since the Example described below is a suitable Example of this invention, various technically preferable restrictions are attached | subjected, However, The scope of the present invention limits this invention especially in the following description. As long as there is no description of the effect, it is not restricted to these aspects.

図1〜図7は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第1実施例を示す図であり、図1は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第1実施例を適用した半導体集積回路としてのASIC1及び周辺回路としてのCPU(Central Processing Unit )2とデバッグ装置3のブロック構成図である。   1 to 7 are diagrams showing a first embodiment of a semiconductor integrated circuit, a security protection method, a security protection program, and a recording medium according to the present invention. FIG. 1 shows a semiconductor integrated circuit according to the present invention, a security protection method, 1 is a block configuration diagram of an ASIC 1 as a semiconductor integrated circuit to which a first embodiment of a security program and a recording medium is applied, a CPU (Central Processing Unit) 2 as a peripheral circuit, and a debugging device 3. FIG.

図1において、CPU2は、ASIC1との間で、ASIC1の動作を設定するレジスタ部11へのアクセスを行なうための制御信号やデータ等を入出力し、デバッグ装置3は、ASIC1の機能を評価するために、ASIC1の回路内部の信号やデータ処理の途中結果(例えば、画像データ)等をASIC1から取り出すものであり、例えば、ASIC1から画像データを、外部メモリ等に取り込むための信号やデータの入出力を行う。   In FIG. 1, the CPU 2 inputs and outputs control signals and data for accessing the register unit 11 for setting the operation of the ASIC 1 with the ASIC 1, and the debug device 3 evaluates the function of the ASIC 1. For this purpose, a signal inside the ASIC 1 circuit or a result of data processing (for example, image data) is extracted from the ASIC 1. For example, input of a signal or data for taking the image data from the ASIC 1 into an external memory or the like. Output.

ASIC1は、図2に示すように、レジスタ部11、複数の機能モジュールM1〜Mn、デバッグI/F12、コピー制御部CSn及びアクセス不可レジスタ群RBn等を備えており、レジスタ部11は、デコーダDRと機能モジュールM1〜Mnに対応したアクセス可能レジスタ群RA1〜RAnを備えている。   As shown in FIG. 2, the ASIC 1 includes a register unit 11, a plurality of functional modules M1 to Mn, a debug I / F 12, a copy control unit CSn, an inaccessible register group RBn, and the like. And accessible register groups RA1 to RAn corresponding to the functional modules M1 to Mn.

レジスタ部11の各アクセス可能レジスタ群RA1〜RAnは、対応する機能モジュールM1〜Mnに接続されているが、機能モジュールRAnと機能モジュールMnとの間には、コピー制御部(コピー制御手段)CSnとアクセス不可レジスタ群RBnが接続されている。   Each of the accessible register groups RA1 to RAn of the register unit 11 is connected to the corresponding function module M1 to Mn, but between the function module RAn and the function module Mn, there is a copy control unit (copy control means) CSn. And an inaccessible register group RBn.

アクセス可能レジスタ群RA1〜RAnは、共通のインターフェイスの回路構成であり、ASIC1の外部のCPU2からのアクセスが可能である。   The accessible register groups RA1 to RAn have a common interface circuit configuration and can be accessed from the CPU2 outside the ASIC1.

ASIC1のレジスタ部11には、ASIC1の各機能モジュールM1〜Mnの動作を設定する各アクセス可能レジスタ群RA1〜RAnへアクセスを行なうための制御信号とデータ信号等がCPU2から入力され、各機能モジュールM1〜Mnは、レジスタ部11の対応するアクセス可能レジスタ群RA1〜RAnに設定されたレジスタ値に応じて、外部から入力される画像データ等のデータ処理等の機能動作を行うが、機能モジュールMnは、アクセス不可レジスタ群RBnに設定されたレジスタ値に応じた機能動作を行う。すなわち、機能モジュールMnは、例えば、偽造防止等の機密を必要とする処理機能を行ない、その回路構成や動作等の情報の機密を必要とする秘匿回路である。   The register unit 11 of the ASIC 1 receives control signals and data signals from the CPU 2 for accessing the accessible register groups RA1 to RAn for setting the operations of the functional modules M1 to Mn of the ASIC1, and each functional module. M1 to Mn perform functional operations such as data processing of image data input from the outside according to register values set in the corresponding accessible register groups RA1 to RAn of the register unit 11, but the functional module Mn Performs a functional operation according to the register value set in the inaccessible register group RBn. That is, the functional module Mn is a concealment circuit that performs a processing function that requires confidentiality such as forgery prevention and requires confidentiality of information such as circuit configuration and operation.

すなわち、CPU2は、レジスタ部11に、アクセス可能レジスタ群RA1〜RAnのアドレス信号addr、書き込み制御信号wr及び書き込みデータw_dataを入力して、レジスタ値の設定等を行い、また、読み出し制御信号rdによって、アクセス可能レジスタ群RA1〜RAnから各アクセス可能レジスタ群RA1〜RAnに書き込まれているレジスタ値である読み出しデータr_dataを読み出す。CPU2は、各アクセス可能レジスタ群RA1〜RAnへのアクセスをアドレスaddrによって行うが、このアドレスaddrをデコーダDRがデコードすることで、アクセス可能レジスタ群RA1〜RAnの各レジスタにアクセスする。   That is, the CPU 2 inputs the address signal addr, the write control signal wr, and the write data w_data of the accessible register groups RA1 to RAn to the register unit 11, sets the register value, etc., and also uses the read control signal rd. Then, read data r_data which is a register value written in each accessible register group RA1 to RAn is read from accessible register group RA1 to RAn. The CPU 2 performs access to each of the accessible register groups RA1 to RAn using the address addr, and the decoder DR decodes this address addr to access each register of the accessible register groups RA1 to RAn.

アクセス可能レジスタ群RA1〜RAnは、それぞれ各機能モジュールM1〜Mn用の複数のレジスタをまとめたものであり、各機能モジュールM1〜Mnは、対応するアクセス可能レジスタ群RA1〜RAnの各レジスタの設定値(レジスタ値)に応じて動作を行うが、機能モジュールMnは、上述のように、レジスタ群RBnに設定されたレジスタ値に応じて動作する。このレジスタ群RBnには、コピー制御部CSnによって制御されたアクセス可能レジスタ群RAnのレジスタ値がコピーされる。   Each of the accessible register groups RA1 to RAn is a collection of a plurality of registers for each of the functional modules M1 to Mn, and each of the functional modules M1 to Mn is a setting of each register of the corresponding accessible register group RA1 to RAn. Although the operation is performed according to the value (register value), the functional module Mn operates according to the register value set in the register group RBn as described above. The register value of the accessible register group RAn controlled by the copy control unit CSn is copied to the register group RBn.

デバッグI/F12は、ASIC1をデバッグ装置3に接続して、ASIC1内の動作処理をデバッグするための内部信号やデータをデバッグ装置3との間で入出力するためのインターフェイスであり、各機能モジュールM1〜Mnからの信号を選択して、デバッグ装置3へ出力する。   The debug I / F 12 is an interface for connecting the ASIC 1 to the debug device 3 and inputting / outputting internal signals and data for debugging operation processing in the ASIC 1 to / from the debug device 3. The signals from M1 to Mn are selected and output to the debugging device 3.

そして、各機能モジュールM1〜Mnのうち、機能モジュールMnは、上述のように、例えば、偽造防止等の機密を必要とする処理機能を行ない、その回路構成や動作等の情報の機密を必要とする秘匿回路である。   Of the functional modules M1 to Mn, the functional module Mn performs a processing function requiring confidentiality such as forgery prevention as described above, and requires confidentiality of information such as circuit configuration and operation. It is a secret circuit.

そこで、ASIC1は、機能モジュールMnの動作を規定するレジスタとして、外部からはアクセスすることのできないアクセス不可レジスタ群RBnが設けられ、レジスタ部11の機能モジュールMnに対応するアクセス可能レジスタ群RAnは、レジスタ部11の他のアクセス可能レジスタ群RA1〜RAn-1と同様にCPU2からアクセス可能としている。そして、アクセス不可レジスタ群RBnは、外部からのアクセス(リード、ライト)ができないため、秘匿回路である機能モジュールMnを動作させるためのレジスタ群RBnへのレジスタ値の設定を、アクセス可能レジスタ群RAnに設定したレジスタ値をアクセス不可レジスタ群RBnにコピーするとともに、該アクセス可能レジスタ群RAnのレジスタ値のレジスタ群RBnへのコピーをコピー制御部CSnによってタイミング規制することでコピーを制御している。   Therefore, the ASIC 1 is provided with an inaccessible register group RBn that cannot be accessed from the outside as registers that define the operation of the functional module Mn, and the accessible register group RAn corresponding to the functional module Mn of the register unit 11 is: Like the other accessible register groups RA1 to RAn-1 of the register unit 11, the CPU 2 can access them. Since the inaccessible register group RBn cannot be accessed (read, write) from the outside, the register value setting in the register group RBn for operating the functional module Mn that is a secret circuit is set to the accessible register group RAn. Is copied to the inaccessible register group RBn, and the copy control unit CSn controls the copy by timing the copy of the register value of the accessible register group RAn to the register group RBn.

すなわち、このアクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnは、それぞれのレジスタが1対1に対応する構成となっており、アクセス不可レジスタ群RBnへのレジスタ値の設定は、外部のCPU2からアクセス可能レジスタ群RAnに設定されたレジスタ値をコピーすることで行なう。そして、図3に示すように、アクセス可能レジスタ群RAnには、CPU2から書き込み制御信号regAn_wr、書き込みデータw_dataが入力され、また、アクセス可能レジスタ群RAnからは、CPU2によってリードデータr_dataが読み出されるが、アクセス不可レジスタ群RBnは、CPU2等の外部からアクセスするための制御信号であるアドレスaddrやリード制御信号rd、ライト制御信号wrとの接続がなく、外部からのアクセスができない構成である。   That is, the accessible register group RAn and the inaccessible register group RBn have a configuration in which each register has a one-to-one correspondence, and the register value is set to the inaccessible register group RBn by an external CPU 2 This is done by copying the register value set in the possible register group RAn. As shown in FIG. 3, the write control signal regAn_wr and the write data w_data are input from the CPU 2 to the accessible register group RAn, and the read data r_data is read from the accessible register group RAn by the CPU 2. The inaccessible register group RBn is not connected to the address addr, the read control signal rd, and the write control signal wr, which are control signals for accessing from the outside such as the CPU 2, and cannot be accessed from the outside.

そして、コピー制御部CSnには、カウンタCN(図4参照)からの遅延フレームゲート信号fgate_R、アクセス可能レジスタ群RAnからのAレジスタ書き込みデータregAn_data及びCPU2からの書き込み制御信号regAn_wr、リセット信号reset及びフレームゲート信号fgateが入力され、これらの信号に基づいて、アクセス可能レジスタ群RAnからアクセス不可レジスタ群RBnへのAレジスタ書き込みデータregAn_dataのコピーをコピータイミングによって制御する。   The copy control unit CSn includes a delayed frame gate signal fgate_R from the counter CN (see FIG. 4), A register write data regAn_data from the accessible register group RAn, a write control signal regAn_wr from the CPU 2, a reset signal reset, and a frame. The gate signal fgate is input, and based on these signals, the copy of the A register write data regAn_data from the accessible register group RAn to the inaccessible register group RBn is controlled by the copy timing.

このコピー制御部CSnは、図4に示すように、コピー可能期間設定回路20、シフトレジスタ31及びAND回路32等を備えており、コピー可能期間設定回路20は、トリガ生成回路21、22及び組み合わせ回路23を備えている。なお、本実施例のASICでは、クロックは、全て同じ同期クロックを用いており、各図では、同期クロックの図示を省略している。そして、このコピー制御部CSnは、ROM(Read Only Memory)やRAM(Random Access Memory)のプログラムをCPU2が実行することで、CPU2からアクセス可能レジスタ群RA1〜RAnにレジスタ値が設定されるが、このプログラムのうち、機密保護プログラムは、CD(Compact Disc)、CD−RW(Compact Disc Rewritable )、DVD(Digital Video Disk)、フレキシブルディスク等の記録媒体に記録されているレジスタ値のコピー制御を行って機密保護処理を実行する機密保護プログラムを図示しないメモリに読み込んで導入することで、後述する機密保護処理を実行するコピー制御部CSnとして構築される。また、デバッグ時には、エミュレータ等からのレジスタ値がアクセス可能レジスタ群RA1〜RAnに設定される。   As shown in FIG. 4, the copy control unit CSn includes a copy enable period setting circuit 20, a shift register 31, an AND circuit 32, and the like. The copy enable period setting circuit 20 includes trigger generation circuits 21, 22 and combinations. A circuit 23 is provided. In the ASIC of this embodiment, the same synchronous clock is used for all the clocks, and the synchronous clock is not shown in each figure. In the copy control unit CSn, when the CPU 2 executes a program of ROM (Read Only Memory) or RAM (Random Access Memory), register values are set in the register groups RA1 to RAn accessible from the CPU 2. Among these programs, the security protection program performs copy control of register values recorded on a recording medium such as a CD (Compact Disc), a CD-RW (Compact Disc Rewritable), a DVD (Digital Video Disk), or a flexible disk. Thus, the security control program for executing the security processing is read into a memory (not shown) and introduced, thereby constructing a copy control unit CSn for executing the security processing described later. In debugging, register values from an emulator or the like are set in the accessible register groups RA1 to RAn.

また、アクセス不可レジスタ群RBnは、セレクタSEと複数のレジスタとしてのフリップフロップFF1〜FFmを備え、セレクタSEの入力端子に、コピー部CSnを通してアクセス可能レジスタ群RAnからのAレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataが入力されていて、コピー制御部CSnからのコピー制御信号regBn_ctlがセレクタSEのセレクト端子に入力される。セレクタSEは、Hi(high:ハイ)のコピー制御信号regBn_ctlが入力されると、Aレジスタ書き込みデータregAn_dataを選択して、アクセス可能レジスタ群RAnの各レジスタに対応するレジスタとしてのフリップフロップFF1〜FFmに該Aレジスタ書き込みデータregAn_dataをBレジスタ書き込みデータregBn_dataとして順次コピーする。   Further, the inaccessible register group RBn includes a selector SE and a plurality of flip-flops FF1 to FFm as registers. The A register write data regAn_data and B from the accessible register group RAn through the copy unit CSn are input to the selector SE. The register write data regBn_data is input, and the copy control signal regBn_ctl from the copy control unit CSn is input to the select terminal of the selector SE. When a copy control signal regBn_ctl of High (high) is input, the selector SE selects the A register write data regAn_data, and flip-flops FF1 to FFm as registers corresponding to the registers of the accessible register group RAn. The A register write data regAn_data are sequentially copied as B register write data regBn_data.

コピー制御部CSnは、アクセス可能レジスタ群RAnからのAレジスタ書き込みデータregAn_dataをそのままアクセス不可レジスタ群RBnのセレクタSEに出力するとともに、上記コピー制御信号regBn_ctlを生成してアクセス不可レジスタ群RBnのセレクタSEのセレクト端子に出力する。   The copy control unit CSn outputs the A register write data regAn_data from the accessible register group RAn as it is to the selector SE of the inaccessible register group RBn, and generates the copy control signal regBn_ctl to select the selector SE of the inaccessible register group RBn. Output to the select terminal.

シフトレジスタ31には、書き込み制御信号regAn_wrが入力され、シフトレジスタ31は、書き込み制御信号regAn_wrを所定タイミングだけ遅らせて、書き込み制御信号regBn_wrとしてAND回路32に出力する。   The write control signal regAn_wr is input to the shift register 31, and the shift register 31 delays the write control signal regAn_wr by a predetermined timing and outputs it to the AND circuit 32 as the write control signal regBn_wr.

コピー可能期間設定回路20のトリガ生成回路21及びトリガ生成回路22は、それぞれフリップフロップ21a、22a、NOT回路21b、22b及びNOR回路21c、22cを備えており、トリガ生成回路21には、フレームゲート信号fgateが入力され、トリガ生成回路22には、カウンタCNから遅延フレームゲート信号fgate_Rが入力される。   The trigger generation circuit 21 and the trigger generation circuit 22 of the copyable period setting circuit 20 include flip-flops 21a and 22a, NOT circuits 21b and 22b, and NOR circuits 21c and 22c, respectively. The trigger generation circuit 21 includes a frame gate. The signal fgate is input, and the delayed frame gate signal fgate_R is input from the counter CN to the trigger generation circuit 22.

カウンタCNは、図5に示すように、フレームゲート信号fgateがLow(ロー)になると、該Lowになったときから設定値に応じた時間の後にHiとなる遅延フレームゲート信号fgate_Rをトリガ生成回路22に出力する。   As shown in FIG. 5, when the frame gate signal fgate becomes Low, the counter CN generates a delayed frame gate signal fgate_R that becomes Hi after a time corresponding to the set value from when the frame gate signal fgate becomes Low. 22 to output.

トリガ生成回路21は、フレームゲート信号fgateの立ち上がり時にHiになるトリガを生成して組み合わせ回路23に出力し、トリガ生成回路22は、遅延フレームゲート信号fgate_Rの立ち上がり時にHiになるコピー許可トリガTR(図5参照)を組み合わせ回路に出力する。   The trigger generation circuit 21 generates a trigger that becomes Hi when the frame gate signal fgate rises, and outputs the trigger to the combinational circuit 23. The trigger generation circuit 22 sets the copy permission trigger TR () that becomes Hi when the delay frame gate signal fgate_R rises. 5) is output to the combinational circuit.

組み合わせ回路23は、NOR回路23a、OR回路23b、AND回路23c、フリップフロップ23d、NOT回路23e及びNOR回路23fが順次接続されており、最終段のNOR回路23fの出力がアンド回路32に入力される。   In the combinational circuit 23, a NOR circuit 23a, an OR circuit 23b, an AND circuit 23c, a flip-flop 23d, a NOT circuit 23e, and a NOR circuit 23f are sequentially connected, and the output of the NOR circuit 23f at the final stage is input to the AND circuit 32. The

初段のNOR回路23aに、トリガ生成回路21からのトリガとNOT回路23eの出力が入力され、NOR回路23aは、トリガ生成回路21からのトリガとNOT回路23eからの出力のNOR処理を行ってOR回路23bに出力する。OR回路23bには、さらに、トリガ生成回路22からのコピー許可トリガTRが入力され、OR回路23bは、NOR回路23aの出力とコピー許可トリガTRのOCR処理を行ってAND回路23cに出力する。アンド回路23cには、さらに、初期化のためのリセット信号resetが入力されており、アンド回路23cは、OR回路23bの出力とリセット信号resetのアンド処理を行ってフリップフロップ23dに出力する。フリップフロップ23dは、アンド回路23cからの出力をクロックによって保持してNOT回路23eに出力し、NOT回路23eは、フリップフロップ23dの出力を反転してNOR回路23fに出力するとともに、NOR回路23aに戻す。NOR回路23fは、NOT回路23eからの出力と上記フレームゲート信号fgateが入力され、図5に示すように、これらのNOR処理を行って、フレームゲート信号fgateがLowであって、Hiのコピー許可トリガTRが入力された後の間だけHiとなるコピー可能期間信号CoktをAND回路32に出力してレジスタ間のコピー可能期間を設定する。   The trigger from the trigger generation circuit 21 and the output of the NOT circuit 23e are input to the NOR circuit 23a in the first stage, and the NOR circuit 23a performs a NOR process on the trigger from the trigger generation circuit 21 and the output from the NOT circuit 23e. Output to the circuit 23b. Further, the copy permission trigger TR from the trigger generation circuit 22 is input to the OR circuit 23b, and the OR circuit 23b performs an OCR process on the output of the NOR circuit 23a and the copy permission trigger TR and outputs the result to the AND circuit 23c. Further, a reset signal reset for initialization is input to the AND circuit 23c. The AND circuit 23c performs an AND process on the output of the OR circuit 23b and the reset signal reset and outputs the result to the flip-flop 23d. The flip-flop 23d holds the output from the AND circuit 23c by a clock and outputs it to the NOT circuit 23e. The NOT circuit 23e inverts the output of the flip-flop 23d and outputs it to the NOR circuit 23f, and also to the NOR circuit 23a. return. The NOR circuit 23f receives the output from the NOT circuit 23e and the frame gate signal fgate. As shown in FIG. 5, the NOR circuit 23f performs these NOR processes, the frame gate signal fgate is Low, and the Hi copy is permitted. A copy enable period signal Cokt that becomes Hi only after the trigger TR is input is output to the AND circuit 32 to set a copy enable period between the registers.

すなわち、コピー可能期間設定回路20は、フレームゲート信号fgate、遅延フレームゲート信号fgate_R及び初期化のためのリセット信号resetが入力され、図5に示すように、リセット信号resetによってリセットされた後、フレームゲート信号fgateが、Lowのレジスタアクセス可能期間であって、遅延フレームゲート信号fgate_Rから生成したコピー許可トリガTRによって、フレームゲート信号fgateがHiになるまでの間、Hiの信号をAND回路32に出力して、書き込み制御信号regAn_wrをシフトレジスタ31で遅延させた書き込み制御信号regBn_wに基づいて、AND回路32からHiのコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSEに出力する。   That is, the copy enable period setting circuit 20 receives the frame gate signal fgate, the delayed frame gate signal fgate_R, and the reset signal reset for initialization, and after being reset by the reset signal reset, as shown in FIG. The gate signal fgate is in the low register accessible period, and the Hi signal is output to the AND circuit 32 until the frame gate signal fgate becomes Hi by the copy permission trigger TR generated from the delayed frame gate signal fgate_R. Then, based on the write control signal regBn_w obtained by delaying the write control signal regAn_wr by the shift register 31, the Hi copy control signal regBn_ctl is sent from the AND circuit 32 to the selector of the inaccessible register group RBn. And outputs it to the E.

アクセス不可レジスタ群RBnは、そのセレクタSEが、このコピー制御信号regBn_ctlがHiであるレジスタコピー制御期間に、アクセス可能レジスタ群RAnから入力されるAレジスタ書き込みデータregAn_dataをアクセス不可レジスタ群RBnのフリップフロップFF1〜FFnに順次書き込んでコピーする。   The inaccessible register group RBn receives the A register write data regAn_data input from the accessible register group RAn during the register copy control period when the copy control signal regBn_ctl is Hi. Write sequentially to FF1 to FFn and copy.

なお、ASIC1は、各機能モジュールM1〜Mnが、対応するアクセス可能レジスタ群RA1〜RAnへのレジスタ値の設定後、アクセス可能レジスタ群RA1〜RAnの設定値(レジスタ値)に合わせた処理動作を行なうという処理動作を繰り返す。そして、フレームゲート信号fgateは、Lowの期間がレジスタアクセス可能期間であって、Hiの期間がレジスタの設定値(レジスタ値)に応じて機能モジュールM1〜Mnが動作する機能動作期間である。   Note that the ASIC 1 performs processing operations according to the set values (register values) of the accessible register groups RA1 to RAn after the functional modules M1 to Mn set the register values in the corresponding accessible register groups RA1 to RAn. The processing operation of performing is repeated. In the frame gate signal fgate, the Low period is a register accessible period, and the Hi period is a functional operation period in which the functional modules M1 to Mn operate in accordance with a register setting value (register value).

すなわち、コピー制御部CSnは、遅延フレームゲート信号fgate_Rの立ち下がりで出力されるコピー許可トリガTRで開始して、フレームゲート信号fgateの立ち上がりで終了するコピー可能期間をコピー可能期間信号CoktがHiの期間として規定し、このコピー可能期間という限られたタイミングのみアクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataをアクセス不可レジスタ群RBnにBレジスタ書き込みデータregBn_dataとしてコピーすることを許可し、限られたタイミング以外では、コピーを禁止するコピー制限処理を行う。   That is, the copy control unit CSn starts the copy permission trigger TR output at the falling edge of the delayed frame gate signal fgate_R, and finishes the copyable period that ends at the rising edge of the frame gate signal fgate. The A register write data regAn_data of the accessible register group RAn is allowed to be copied to the inaccessible register group RBn as the B register write data regBn_data, with a limited timing. Otherwise, copy restriction processing for prohibiting copying is performed.

次に、本実施例の作用を説明する。本実施例のASIC1は、秘匿回路である機能モジュールMnの内部回路構成の特定や動作の内容に対してより安価にかつより高い機密性を確保する。   Next, the operation of this embodiment will be described. The ASIC 1 of the present embodiment secures higher confidentiality at a lower cost with respect to the specification of the internal circuit configuration of the functional module Mn, which is a secret circuit, and the content of the operation.

すなわち、ASIC1は、複数の機能モジュールM1〜Mnを搭載しており、これらの機能モジュールM1〜Mnのうち、機能モジュールM1〜Mn-1は、機密を必要とするものではなく、外部からのアクセスの可能なレジスタ部11のアクセス可能レジスタ群RA1〜RAn-1へのCPU2からのレジスタ値の設定に応じた動作を行う。   That is, the ASIC 1 has a plurality of functional modules M1 to Mn. Among these functional modules M1 to Mn, the functional modules M1 to Mn-1 do not require confidentiality and are accessed from the outside. The register unit 11 performs an operation corresponding to the register value setting from the CPU 2 to the accessible register groups RA1 to RAn-1.

ところが、ASIC1は、秘匿回路として機能モジュールMnを搭載しており、機能モジュールMnについては、機能モジュールMnに対応する外部からアクセス可能なアクセス可能レジスタ群RAnへの設定値(レジスタ値)による機能モジュールMnの動作内容を機密にする必要がある。   However, the ASIC 1 is equipped with a functional module Mn as a secret circuit, and the functional module Mn is a functional module based on a set value (register value) in an accessible register group RAn corresponding to the functional module Mn. The operation content of Mn needs to be kept secret.

そこで、本実施例のASIC1は、外部からのアクセスの不可能なアクセス不可レジスタRBnを機能モジュールMnの動作レジスタとして搭載するとともに、機能モジュールMnに対応する外部からアクセス可能であるアクセス可能レジスタ群RAnに設定されたレジスタ値であるAレジスタ書き込みデータregAn_dataを、所定のコピー可能期間に外部からのコピー指示である書き込み制御信号wrがあったときにのみ、アクセス不可レジスタRBnにコピーして、機能モジュールMnに動作を行わせる。   Therefore, the ASIC 1 of this embodiment includes the inaccessible register RBn that cannot be accessed from the outside as an operation register of the functional module Mn, and the accessible register group RAn that is accessible from the outside corresponding to the functional module Mn. The A module write data regAn_data, which is the register value set to, is copied to the inaccessible register RBn only when there is a write control signal wr that is a copy instruction from the outside during a predetermined copy enable period. Let Mn perform the action.

すなわち、ASIC1は、CPU2から書き込み制御信号wr、アドレス信号addr及び書き込みデータw_dataが送られてくると、書き込み制御信号wrとアドレス信号addrをレジスタ部11のデコーダDRでデコードして、フレームゲート信号fgateがLowの期間であるレジスタアクセス可能期間において、対応するアクセス可能レジスタ群RA1〜RAnのレジスタに書き込みデータw_dataを書き込む。   That is, when the write control signal wr, the address signal addr, and the write data w_data are sent from the CPU 2, the ASIC 1 decodes the write control signal wr and the address signal addr by the decoder DR of the register unit 11, and the frame gate signal fgate. In the register accessible period in which is low, write data w_data is written to the registers of the corresponding accessible register groups RA1 to RAn.

機能モジュールMa〜Mn-1は、秘匿回路ではないため、レジスタ部RA1〜RAn-1に設定されたレジスタ値である書き込みデータw_dataに応じた動作が可能である。   Since the functional modules Ma to Mn-1 are not concealment circuits, they can operate according to the write data w_data that is a register value set in the register units RA1 to RAn-1.

ところが、機能モジュールMnは、秘匿回路であり、秘匿回路である機能モジュールMnに対応するアクセス可能レジスタ群RAnは、外部アクセス可能であるが、機能モジュールMnに設定値として設定して動作させるアクセス不可レジスタ群RBnは、外部からアクセス不可能なレジスタであり、外部からアクセス可能なアクセス可能レジスタ群RAnにCPU2から書き込まれて設定されたAレジスタ書き込みデータregAn_dataは、そのままでは、アクセス不可レジスタ群RBnには設定されない。   However, the functional module Mn is a secret circuit, and the accessible register group RAn corresponding to the functional module Mn that is the secret circuit can be accessed externally, but cannot be accessed by setting the function module Mn as a set value. The register group RBn is a register that cannot be accessed from the outside, and the A register write data regAn_data set by writing from the CPU 2 to the accessible register group RAn that can be accessed from the outside remains in the inaccessible register group RBn. Is not set.

そこで、ASIC1は、アクセス可能レジスタ群RAnに設定されたAレジスタ書き込みデータregAn_dataを、コピー制御部CSnによって、外部アクセスの不可能なアクセス不可レジスタ群RBnにコピーするが、セキュリティを確保するために、コピータイミングを所定のコピー可能期間に制限している。   Therefore, the ASIC 1 uses the copy control unit CSn to copy the A register write data regAn_data set in the accessible register group RAn to the inaccessible register group RBn that cannot be accessed externally. The copy timing is limited to a predetermined copy available period.

すなわち、コピー制御部CSnは、図5に示したように、そのコピー可能期間設定回路20のトリガ生成回路21にフレームゲート信号fgateが入力され、フレームゲート信号fgateがレジスタアクセス可能期間であるLowに切り替わると、トリガ生成回路21がHiのトリガをコピー制御部CSnの組み合わせ回路23に出力し、また、このフレームゲート信号fgateが遅延された遅延フレームゲート信号fgateRがカウンタCNからコピー可能期間設定回路20のトリガ生成回路22に入力されると、トリガ生成回路22がコピー許可トリガTRを生成して、コピー制御部CSnの組み合わせ回路23に出力する。組み合わせ回路23は、これらのトリガ生成回路21からのトリガ、トリガ生成回路22からのコピー許可トリガTR及びリセット信号resetによって、フレームゲート信号fgateがLowであって、Hiのコピー許可トリガTRが入力された後の間だけHiとなるコピー可能期間信号CoktをAND回路32に出力してレジスタ間のコピー可能期間を設定して、該コピー可能期間信号Coktをコピー制御部CSnのAND回路32に出力する。   That is, as shown in FIG. 5, the copy control unit CSn receives the frame gate signal fgate to the trigger generation circuit 21 of the copy enable period setting circuit 20, and the frame gate signal fgate is set to Low, which is the register accessible period. When switched, the trigger generation circuit 21 outputs a Hi trigger to the combinational circuit 23 of the copy control unit CSn, and the delayed frame gate signal fgateR obtained by delaying the frame gate signal fgate is copied from the counter CN to the copyable period setting circuit 20. , The trigger generation circuit 22 generates a copy permission trigger TR and outputs it to the combinational circuit 23 of the copy control unit CSn. In the combinational circuit 23, the frame gate signal fgate is Low and the Hi copy permission trigger TR is input by the trigger from the trigger generation circuit 21, the copy permission trigger TR from the trigger generation circuit 22, and the reset signal reset. After that, the copy enable period signal Cokt that becomes Hi only is output to the AND circuit 32, the copy enable period between registers is set, and the copy enable period signal Cokt is output to the AND circuit 32 of the copy control unit CSn. .

すなわち、コピー可能期間設定回路20が、図5に示すように、フレームゲート信号fgateがLowであって、Hiのコピー許可トリガTRが入力された後の期間だけHiとなるコピー可能期間信号CoktをAND回路32に出力してコピー可能期間を設定する。   That is, as shown in FIG. 5, the copy enable period setting circuit 20 generates a copy enable period signal Cokt that becomes Hi only during the period after the frame gate signal fgate is Low and the Hi copy permission trigger TR is input. The data is output to the AND circuit 32 and a copy available period is set.

このフレームゲート信号fgateがLowのレジスタアクセス可能期間に、CPU2からの書き込みデータw_dataがアクセス可能レジスタ群RAnにAレジスタ書き込みデータregAn_dataとして書き込まれた後、コピー可能期間信号CoktがHiとなって、コピー可能期間になり、このHiの書き込み制御信号regAn_wrがシフトレジスタ31で遅延された書き込み制御信号regBn_wがAND回路32に入力されると、AND回路32がHiのコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSEに出力する。   During the register accessible period when the frame gate signal fgate is Low, after the write data w_data from the CPU 2 is written in the accessible register group RAn as the A register write data regAn_data, the copy available period signal Cokt becomes Hi and the copy is performed. When the write control signal regBn_w obtained by delaying the Hi write control signal regAn_wr by the shift register 31 is input to the AND circuit 32, the AND circuit 32 sends the Hi copy control signal regBn_ctl to the inaccessible register group RBn. To the selector SE.

アクセス不可レジスタ群RBnのセレクタSEは、コピー制御信号regBn_ctlがHiになると、コピー制御部CSnを介して入力されるアクセス可能レジスタ群RAnに書き込まれたAレジスタ書き込みデータregAn_dataをアクセス不可レジスタ群RBnの各レジスタであるフリップフロップFF1〜FFmにBレジスタ書き込みデータregBn_dataとしてコピーする。   When the copy control signal regBn_ctl becomes Hi, the selector SE of the inaccessible register group RBn uses the A register write data regAn_data written in the accessible register group RAn input via the copy control unit CSn to the inaccessible register group RBn. The B register write data regBn_data is copied to the flip-flops FF1 to FFm, which are registers.

機能モジュールMnは、このアクセス不可レジスタ群RBnに設定されたレジスタ値であるAレジスタ書き込みデータregAn_data、すなわち、Bレジスタ書き込みデータregBn_dataに応じて、フレームゲート信号がHiの期間(機能動作期間)に動作する。   The functional module Mn operates during the period when the frame gate signal is Hi (functional operation period) according to the A register write data regAn_data which is the register value set in the inaccessible register group RBn, that is, the B register write data regBn_data. To do.

ところが、コピー制御部CSnは、図5(h)〜(j)に示すように、フレームゲート信号fgateがLowのレジスタアクセス可能期間ではあるが、コピー可能期間信号CoktがLowのコピー可能期間以外の期間に、書き込み制御信号regAn_wrがHiとなってCPU2からの書き込みデータw_dataがアクセス可能レジスタ群RAnにAレジスタ書き込みデータregAn_dataとして書き込まれても、コピー制御信号regBn_ctlをHiとはせず、アクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataのアクセス不可レジスタ群RBnへのBレジスタ書き込みデータregBn_dataとしてのコピーを禁止する。   However, as shown in FIGS. 5H to 5J, the copy control unit CSn is in a register accessible period in which the frame gate signal fgate is Low, but is in a period other than the copy available period in which the copy enable period signal Cokt is Low. During this period, even if the write control signal regAn_wr becomes Hi and the write data w_data from the CPU 2 is written in the accessible register group RAn as the A register write data regAn_data, the copy control signal regBn_ctl is not set to Hi, and the accessible register The copying of the A register write data regAn_data of the group RAn as the B register write data regBn_data to the inaccessible register group RBn is prohibited.

したがって、機密を要する秘匿回路である機能モジュールMnの動作を決定するレジスタであるアクセス不可レジスタ群RBnへのCPU2等の外部からのアクセスを不可能とするとともに、必要な動作を行わせるためには、外部アクセス可能なアクセス可能レジスタ群RAnに書き込みデータw_dataを設定して、該アクセス可能レジスタ群RAnに設定した書き込みデータw_dataを、コピー可能期間という限られたタイミングのみアクセス不可レジスタ群RBnにBレジスタ書き込みデータregBn_dataとしてコピーし、限られたコピー可能期間以外の期間では、コピーを行わないようにすることができる。その結果、秘匿回路である機能モジュールMnへのレジスタであるアクセス不可レジスタ群RBnへのアクセスやデバッグ制御に対してのセキュリティを高めることができ、レジスタの設定に対する動作やデバッグの情報の収集して該収集した情報からの機密データの分析を行うことができないようにして、ASIC1の内部回路構成の特定や動作の内容に対してより一層安価にかつより一層高い機密性を確保することができる。   Therefore, in order to make it impossible to access the inaccessible register group RBn, which is a register for determining the operation of the functional module Mn, which is a confidential circuit requiring confidentiality, from the outside such as the CPU 2, etc., and to perform necessary operations. The write data w_data is set in the externally accessible accessible register group RAn, and the write data w_data set in the accessible register group RAn is set in the B register in the inaccessible register group RBn only for a limited timing such as a copy enable period. It is possible to copy as write data regBn_data and not to copy during a period other than the limited copy available period. As a result, it is possible to increase security for access to the inaccessible register group RBn, which is a register for the functional module Mn, which is a secret circuit, and for debugging control, and to collect information on register setting operations and debugging. The confidential data from the collected information cannot be analyzed, and the confidentiality of the internal circuit configuration of the ASIC 1 and the content of the operation can be ensured at lower cost and higher confidentiality.

なお、コピー可能期間は、上記図5に示したコピー可能期間に限るものではなく、例えば、図6に示すように、フレームゲート信号fgateがレジスタアクセス可能期間であるLowのときに、コピー許可トリガTRがHiとなったときから開始し、再度コピー許可トリガTRがHiとなると終了するコピー可能期間であってもよい。さらに、コピー可能期間は、図7に示すように、その開始タイミングを、コピー許可トリガTRが2回入力されたタイミングに設定し、その終了タイミングを、図5のように、フレームゲート信号fgateの立ち上がり、または、図6のように、コピー許可トリガTRの再度の入力タイミングとしてもよい。   The copy available period is not limited to the copy available period shown in FIG. 5. For example, as shown in FIG. 6, when the frame gate signal fgate is Low, which is the register accessible period, the copy permission trigger is set. It may be a copy available period that starts when TR becomes Hi and ends when the copy permission trigger TR becomes Hi again. Further, as shown in FIG. 7, the copy possible period is set to the timing when the copy permission trigger TR is input twice as shown in FIG. 7, and the end timing is set to the frame gate signal fgate as shown in FIG. It may be the rising edge or the input timing of the copy permission trigger TR again as shown in FIG.

図8及び図9は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第2実施例を示す図であり、図8は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第2実施例を適用したASICのコピー制御部CSnbの要部回路ブロック図である。   8 and 9 are diagrams showing a second embodiment of the semiconductor integrated circuit, security method, security program, and recording medium of the present invention. FIG. 8 shows the semiconductor integrated circuit, security method, It is a principal part circuit block diagram of copy control part CSnb of ASIC to which 2nd Example of a security program and a recording medium is applied.

なお、本実施例は、上記第1実施例のASIC1及び周辺回路であるCPU2、デバッグ装置3と同様のASIC1及びCPU2、デバッグ装置3に適用したものであり、本実施例の説明においては、第1実施例と同様の構成部分については、同一の符号を付して、その説明を省略し、また、図示しない部分についても、第1実施例で用いた符号をそのまま用いて説明する。   The present embodiment is applied to the ASIC 1, the CPU 2, which is the peripheral circuit of the first embodiment, and the ASIC 1, the CPU 2, and the debug device 3 similar to the debug device 3. In the description of the present embodiment, Constituent parts similar to those in the first embodiment are denoted by the same reference numerals, description thereof is omitted, and parts not shown in the drawings are described using the reference numerals used in the first embodiment as they are.

本実施例は、コピー可能期間以外の期間にコピー指示である書き込み制御信号regAn_wrがあると、それ以降のコピー動作を、たとえ、コピー可能期間に書き込み制御信号regAn_wrがあっても禁止するものである。   In this embodiment, if there is a write control signal regAn_wr which is a copy instruction in a period other than the copy enable period, the subsequent copy operation is prohibited even if the write control signal regAn_wr is present in the copy enable period. .

図8において、コピー制御部(コピー制御手段)CSnbは、上記第1実施例のASIC1の機能モジュールMn用のアクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnとの間に接続されており、第1実施例と同様のコピー可能期間設定回路20、シフトレジスタ31及びAND回路32を搭載しているとともに、誤タイミング検出回路40を搭載している。   In FIG. 8, the copy control unit (copy control means) CSnb is connected between the accessible register group RAn and the inaccessible register group RBn for the functional module Mn of the ASIC 1 of the first embodiment. A copyable period setting circuit 20, a shift register 31, and an AND circuit 32 similar to those in the embodiment are mounted, and an erroneous timing detection circuit 40 is mounted.

コピー可能期間設定回路20は、第1実施例と同様に、カウンタCNからの遅延フレームゲート信号fgate_R、フレームゲート信号fgate及びリセット信号resetからコピー可能期間を設定するコピー可能期間信号Coktを生成して、誤タイミング検出回路40に出力する。   Similar to the first embodiment, the copy enable period setting circuit 20 generates a copy enable period signal Cokt that sets a copy enable period from the delayed frame gate signal fgate_R, the frame gate signal fgate, and the reset signal reset from the counter CN. And output to the erroneous timing detection circuit 40.

誤タイミング検出回路40には、Aレジスタ書き込みデータregAn_data、フレームゲート信号fgate及びリセット信号resetが入力され、AND回路32には、書き込み制御信号regAn_wrをシフトレジスタ31で所定タイミングだけ遅らせた書き込み制御信号regBn_wrと誤タイミング検出回路40の出力信号であるフラグflgが入力され、AND回路32は、書き込み制御信号regBn_wrとフラグflgがともにHiのときに、Hiのコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSEに出力する。   The A register write data regAn_data, the frame gate signal fgate, and the reset signal reset are input to the erroneous timing detection circuit 40, and the write control signal regBn_wr obtained by delaying the write control signal regAn_wr by the shift register 31 by a predetermined timing is input to the AND circuit 32. And the flag flg which is an output signal of the erroneous timing detection circuit 40 is input, and the AND circuit 32 selects the copy control signal regBn_ctl of Hi when the write control signal regBn_wr and the flag flg are both Hi, the selector of the inaccessible register group RBn. Output to SE.

誤タイミング検出回路40は、XOR回路40a、OR回路40b、AND回路40c、OR回路40d及びフリップフロップ40eを備えており、XOR回路40aには、Aレジスタ書き込みデータregAn_dataとアクセス不可レジスタ群RBnに書き込まれているBレジスタ書き込みデータregBn_dataが入力されている。XOR回路40aは、Aレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataのXOR処理を行って両者が異なる場合に、Hiとなる信号をOR回路40bに出力し、OR回路40bには、該XOR回路40aからの出力信号が反転入力され、さらに、フレームゲート信号fgateが反転入力され、さらに、コピー可能期間設定回路20からの上記コピー可能期間信号Coktが入力される。   The erroneous timing detection circuit 40 includes an XOR circuit 40a, an OR circuit 40b, an AND circuit 40c, an OR circuit 40d, and a flip-flop 40e. In the XOR circuit 40a, the A register write data regAn_data and the inaccessible register group RBn are written. B register write data regBn_data is input. The XOR circuit 40a performs an XOR process on the A register write data regAn_data and the B register write data regBn_data, and outputs a Hi signal to the OR circuit 40b when the two are different. Output signal is inverted and the frame gate signal fgate is inverted and the copy enable period signal Cokt from the copy enable period setting circuit 20 is input.

OR回路40bは、これらの入力のOCR処理を行って、処理結果をAND回路40cに出力し、AND回路40cには、さらにフリップフロップ40eの出力であるフラグflgが入力されている。AND回路40cは、これらの入力のアンド処理を行って、入力がともにHiであると、OR回路40dにHiの信号を出力し、OR回路40dには、さらに、初期化用のリセット信号resetが反転入力される。   The OR circuit 40b performs OCR processing of these inputs and outputs the processing result to the AND circuit 40c. The flag flg that is the output of the flip-flop 40e is further input to the AND circuit 40c. The AND circuit 40c performs an AND process on these inputs, and if both inputs are Hi, outputs a Hi signal to the OR circuit 40d. The OR circuit 40d further receives a reset signal reset for initialization. Inverted input.

OR回路40dは、入力のいずれかがHiであると、Hiとなる信号をフリップフロップ40eに出力し、フリップフロップ40eは、OR回路40dからの入力を保持して、AND回路32及びAND回路40cにフラグflgとして出力する。   If any of the inputs is Hi, the OR circuit 40d outputs a signal that becomes Hi to the flip-flop 40e. The flip-flop 40e holds the input from the OR circuit 40d, and the AND circuit 32 and the AND circuit 40c. Is output as a flag flg.

誤タイミング検出回路40は、コピー可能期間にアクセス不可レジスタ群RBnにアクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataがBレジスタ書き込みデータregBn_dataとしてコピーが行なわれた否かの状態を保持する。すなわち、誤タイミング検出回路40は、Aレジスタ書き込みデータregAn_dataをアクセス不可レジスタ群RBnのセレクタSEに出力するとともに、このAレジスタ書き込みデータregAn_dataとアクセス不可レジスタ群RBnの保持するBレジスタ書き込みデータregBn_dataをXOR回路40aで比較した比較結果とフレームゲート信号fgate及びコピー可能期間設定回路20からのコピー可能期間信号Coktに基づいてコピー可能期間にコピー指示である書き込み制御信号regAn_wr、すなわち、書き込み制御信号regBn_wrによって適切にAレジスタ書き込みデータregAn_dataがアクセス不可レジスタ群RBnにコピーされて、Aレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataとが一致するか判断し、コピー可能期間に適切にAレジスタ書き込みデータregAn_dataがアクセス不可レジスタ群RBnにコピーされると、フリップフロップ40eがAND回路32に出力するフラグflgをHiとして、AND回路32が書き込み制御信号regBn_wrの入力によって、AND回路32がHiのコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSE出力できるようにして、Aレジスタ書き込みデータregAn_dataのアクセス不可レジスタ群RBnへのコピーを可能とする。   The erroneous timing detection circuit 40 holds a state indicating whether or not the A register write data regAn_data of the accessible register group RAn is copied to the inaccessible register group RBn as the B register write data regBn_data during the copy enable period. That is, the erroneous timing detection circuit 40 outputs the A register write data regAn_data to the selector SE of the inaccessible register group RBn, and XORs the A register write data regAn_data and the B register write data regBn_data held in the inaccessible register group RBn. Based on the comparison result of the circuit 40a, the frame gate signal fgate and the copy enable period signal Cokt from the copy enable period setting circuit 20, the write control signal regAn_wr which is a copy instruction during the copy enable period, that is, the write control signal regBn_wr The A register write data regAn_data is copied to the inaccessible register group RBn, and the A register write data regAn_d It is determined whether ta and the B register write data regBn_data match, and when the A register write data regAn_data is appropriately copied to the inaccessible register group RBn in the copy enable period, the flag flg that the flip-flop 40e outputs to the AND circuit 32 Is set to Hi, and the AND circuit 32 inputs the write control signal regBn_wr so that the AND circuit 32 can output the Hi copy control signal regBn_ctl to the selector SE of the inaccessible register group RBn, and the A register write data regAn_data inaccessible register Allows copying to group RBn.

ところが、誤タイミング検出回路40は、コピー可能期間以外の期間に書き込み制御信号regAn_wr(書き込み制御信号regBn_wr)が入力されると、Aレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataが異なり、フリップフロップ40eの出力するフラグflgがLowとなって、AND回路32からのコピー制御信号regBn_ctlの出力を禁止するとともに、一旦フラグflgがLowになると、AND回路40cの出力が常にLowとなって、以降、リセット信号resetがフリップフロップ40eをリセットするまで、正規のコピー可能期間であってもAND回路32からのコピー制御信号regBn_ctlの出力を禁止する。   However, when the write control signal regAn_wr (write control signal regBn_wr) is input during a period other than the copy enable period, the erroneous timing detection circuit 40 differs between the A register write data regAn_data and the B register write data regBn_data, and the flip-flop 40e The output flag flg is Low, prohibiting the output of the copy control signal regBn_ctl from the AND circuit 32. Once the flag flg is Low, the output of the AND circuit 40c is always Low, and thereafter the reset signal Until the reset resets the flip-flop 40e, the output of the copy control signal regBn_ctl from the AND circuit 32 is prohibited even during the normal copy available period.

次に、本実施例の作用を説明する。本実施例のコピー制御部CSnbは、コピー可能期間以外の期間にコピー指示である書き込み制御信号regAn_wrがあってコピー動作を行うと、それ以降のコピー動作を、たとえ、コピー可能期間に書き込み制御信号regAn_wrがあっても禁止する。   Next, the operation of this embodiment will be described. When the copy control unit CSnb of the present embodiment performs a copy operation in response to a write control signal regAn_wr that is a copy instruction in a period other than the copy enable period, the copy control signal CSnnb performs a subsequent copy operation, for example, in the copy enable period. Even if there is regAn_wr, it is prohibited.

すなわち、コピー制御部CSnbの誤タイミング検出回路40は、リセット信号resetが入力されると、フリップフロップ40eがリセットされて、AND回路32及びAND回路40cに出力しているフラグflgがHiになる。   That is, when the reset signal reset is input to the erroneous timing detection circuit 40 of the copy control unit CSnb, the flip-flop 40e is reset, and the flag flg output to the AND circuit 32 and the AND circuit 40c becomes Hi.

この状態で、図9に示すように、コピー制御部CSnbは、フレームゲート信号fgateがLowのレジスタアクセス可能期間T1、T2、T3・・・のうち、例えば、レジスタアクセス可能期間T1に、コピー可能期間設定回路20から誤タイミング検出回路40にHiのコピー可能期間信号Coktが入力されてコピー可能期間となる。このコピー可能期間に、書き込み制御信号regAn_wrがシフトレジスタ31で遅延された書き込み制御信号Bn_wrがAND回路32に入力されると、図9にレジスタコピー動作D1で示すように、AND回路32がコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSEのセレクト端子に出力し、セレクタSEは、その入力端子に入力されているAレジスタ書き込みデータregAn_dataを順次レジスタであるフリップフロップFF1〜FFmにBレジスタ書き込みデータregBn_dataとしてコピーする。そして、アクセス不可レジスタ群RBnは、このコピーして保持するBレジスタ書き込みデータregBn_dataを誤タイミング検出回路40のXOR回路40aに出力し、XOR回路40aは、Bレジスタ書き込みデータregBn_dataとAレジスタ書き込みデータregAn_dataを比較して、Bレジスタ書き込みデータregBn_dataとAレジスタ書き込みデータregAn_dataが異なる場合にHiとなる信号を出力し、Bレジスタ書き込みデータregBn_dataとAレジスタ書き込みデータregAn_dataが同じ場合にLowとなる信号を出力する。   In this state, as shown in FIG. 9, the copy control unit CSnb can copy in the register accessible period T1, for example, among the register accessible periods T1, T2, T3... With the frame gate signal fgate being Low. A Hi copy enable period signal Cokt is input from the period setting circuit 20 to the erroneous timing detection circuit 40 to enter a copy enable period. When the write control signal Bn_wr obtained by delaying the write control signal regAn_wr by the shift register 31 is input to the AND circuit 32 during this copy enable period, the AND circuit 32 performs copy control as shown by the register copy operation D1 in FIG. The signal regBn_ctl is output to the select terminal of the selector SE of the inaccessible register group RBn, and the selector SE sequentially outputs the A register write data regAn_data input to the input terminal to the flip-flops FF1 to FFm which are registers. Copy as regBn_data. The inaccessible register group RBn outputs the B register write data regBn_data that is copied and held to the XOR circuit 40a of the erroneous timing detection circuit 40. The XOR circuit 40a outputs the B register write data regBn_data and the A register write data regAn_data. , And when the B register write data regBn_data and the A register write data regAn_data are different, a signal that becomes Hi is output, and when the B register write data regBn_data and the A register write data regAn_data are the same, a signal that becomes Low is output. .

したがって、図9のレジスタアクセス可能期間T2ではあるが、レジスタコピー可能期間以外の期間に書き込み制御信号regAn_wrが入力されると、レジスタアクセス可能期間T2であるため、アクセス可能レジスタ群RAnには、Aレジスタ書き込みデータregAn_dataは書き込まれるが、上述のように、コピー可能期間設定回路20は、Hiのコピー可能期間信号Coktを誤タイミング検出回路40に出力しない。したがって、誤検出タイミング検出回路40は、フリップフロップ40eがLowのフラグflgをAND回路32に出力し、AND回路32は、図9に破線で示すように、コピー制御信号regBn_ctlをアクセス不可レジスタ群RBnに出力しない。その結果、アクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataは、アクセス不可レジスタ群RBnにはコピーされない。   Therefore, in the register accessible period T2 in FIG. 9, when the write control signal regAn_wr is input during a period other than the register copy enabled period, the register accessible period T2, and therefore, the accessible register group RAn includes the A Although the register write data regAn_data is written, the copy enable period setting circuit 20 does not output the Hi copy enable period signal Cokt to the erroneous timing detection circuit 40 as described above. Accordingly, the erroneous detection timing detection circuit 40 outputs the flag flg with the flip-flop 40e being Low to the AND circuit 32, and the AND circuit 32 sends the copy control signal regBn_ctl to the inaccessible register group RBn as shown by a broken line in FIG. Is not output. As a result, the A register write data regAn_data of the accessible register group RAn is not copied to the inaccessible register group RBn.

そして、誤タイミング検出回路40は、フリップフロップ40eの出力がAND回路40cにフィードバッグされていて、フリップフロップ40eがLowのフラグを出し続けるため、このコピー不可状態を保持し、図9にレジスタアクセス可能期間T3に示すように、その後に、レジスタコピー可能期間に書き込み制御信号regAn_wrが入力されても、AND回路32は、Hiのコピー制御信号regBn_ctlを出力せず、コピーを禁止する。   Then, since the output of the flip-flop 40e is fed back to the AND circuit 40c and the flip-flop 40e continues to output the Low flag, the erroneous timing detection circuit 40 keeps this copy disabled state and registers access to FIG. As shown in the possible period T3, the AND circuit 32 does not output the Hi copy control signal regBn_ctl and inhibits copying even if the write control signal regAn_wr is input during the register copy enabled period thereafter.

このように、本実施例のASIC1のコピー制御部CSnbは、コピー指示である書き込み制御信号regAn_wrがコピー可能期間以外の期間にあると、以降のコピー動作を禁止するので、ASIC1の内部回路構成の特定や動作の内容に対してより一層安価にかつより一層高い機密性を確保することができる。   As described above, the copy control unit CSnb of the ASIC 1 of the present embodiment prohibits the subsequent copy operation when the write control signal regAn_wr which is a copy instruction is in a period other than the copy available period. It is possible to secure a higher level of secrecy at a lower cost with respect to the contents of the identification and operation.

図10〜図13は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第3実施例を示す図であり、図10は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第3実施例を適用したASIC50の要部回路ブロック図である。   10 to 13 are diagrams showing a third embodiment of the semiconductor integrated circuit, security method, security program and recording medium of the present invention. FIG. 10 shows the semiconductor integrated circuit, security method of the present invention, It is a principal part circuit block diagram of ASIC50 to which the 3rd Example of a security program and a recording medium is applied.

なお、本実施例は、上記第1実施例と同様に、半導体集積回路であるASIC50に、周辺回路であるCPU2、デバッグ装置3が接続されている場合に適用したものであり、本実施例の説明においては、第1実施例と同様の構成部分については、同一の符号を付して、その説明を省略し、また、図示しない部分についても、第1実施例で用いた符号をそのまま用いて説明する。   As in the first embodiment, the present embodiment is applied to the case where the CPU 2 and the debugging device 3 that are peripheral circuits are connected to the ASIC 50 that is a semiconductor integrated circuit. In the description, the same components as those in the first embodiment are denoted by the same reference numerals, the description thereof is omitted, and the portions used in the first embodiment are also used as they are for the portions not shown. explain.

図10において、ASIC50は、上記第1実施例のASIC1と同様のレジスタ部11、複数の機能モジュールM1〜Mn、デバッグI/F12、コピー制御部CSn及びアクセス不可レジスタ群RBn等を備えているとともに、レジスタ比較部51を備えており、レジスタ比較部51は、比較部(比較手段)52とレジスタ(比較結果保持手段)53を備えている。   In FIG. 10, an ASIC 50 includes a register unit 11, a plurality of functional modules M1 to Mn, a debug I / F 12, a copy control unit CSn, an inaccessible register group RBn, and the like similar to the ASIC 1 of the first embodiment. The register comparison unit 51 includes a comparison unit (comparison unit) 52 and a register (comparison result holding unit) 53.

比較部52には、アクセス可能レジスタ群RAnの出力とアクセス不可レジスタ群RBnの出力とが入力され、比較部52は、アクセス可能レジスタ群RAnの出力とアクセス不可レジスタ群RBnの出力を比較して、比較結果値RHをレジスタ53及び機能モジュールMnに出力する。   The comparator 52 receives the output of the accessible register group RAn and the output of the inaccessible register group RBn, and the comparator 52 compares the output of the accessible register group RAn and the output of the inaccessible register group RBn. The comparison result value RH is output to the register 53 and the functional module Mn.

レジスタ53は、比較部52の比較結果値RHを格納するレジスタであり、例えば、図11に示すように、アクセス可能レジスタ群RAnの各レジスタ及びアクセス不可レジスタ群RBnの各レジスタにそれぞれに対応する「0」〜「15」までの16ビット幅のレジスタ比較結果値RHを格納する。   The register 53 is a register that stores the comparison result value RH of the comparison unit 52. For example, as illustrated in FIG. 11, the register 53 corresponds to each register of the accessible register group RAn and each register of the inaccessible register group RBn. A register comparison result value RH having a 16-bit width from “0” to “15” is stored.

すなわち、ASIC50の各機能モジュールM1〜Mnは、複数の子機能モジュールを備えており、秘匿回路である機能モジュールMnも、図12に示すように、子機能モジュールMns1〜Mnsmを備えているが、これらの子機能モジュールMns1〜Mnsmのうち子機能モジュールMns2、Mns3のみが機密を必要とする秘匿回路であり、他の子機能モジュールMns1、Mns4〜Mnsmは機密を必要としないものであるとする。   That is, each function module M1 to Mn of the ASIC 50 includes a plurality of child function modules, and the function module Mn that is a secret circuit also includes child function modules Mns1 to Mnsm as shown in FIG. Of these child function modules Mns1 to Mnsm, only the child function modules Mns2 and Mns3 are secret circuits that require confidentiality, and the other child function modules Mns1, Mns4 to Mnsm do not require confidentiality.

そして、いま、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnは、それぞれレジスタを有しており、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnは、それぞれ有しているレジスタが対応している。すなわち、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnは、同じ数のレジスタを有している。   Now, the accessible register group RAn and the inaccessible register group RBn each have a register, and the accessible register group RAn and the inaccessible register group RBn correspond to the respective registers. That is, the accessible register group RAn and the inaccessible register group RBn have the same number of registers.

そして、比較部52は、機能モジュールMn用のアクセス可能レジスタ群RAnの各レジスタとアクセス不可レジスタ群RBnの各レジスタの値をビット毎に比較して、比較結果値RHを機能モジュールMnに出力するとともに、レジスタ53に保管する。   Then, the comparison unit 52 compares the values of the registers of the accessible register group RAn for the functional module Mn and the registers of the inaccessible register group RBn for each bit, and outputs the comparison result value RH to the functional module Mn. At the same time, it is stored in the register 53.

図11のレジスタ53の比較結果値RHの保管値は、アクセス可能レジスタ群RAnの各レジスタとアクセス不可レジスタ群RBnの各レジスタのレジスタ値の比較結果である比較結果値RHであり、「0001h」と「0002h」が比較結果値RHを記憶保持しているレジスタのアドレスである。図11において、「1」は、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnの対応するレジスタ値が一致していることを示しており、「0」は、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnの対応するレジスタ値が異なることを示している。このレジスタ53は、CPU2によりアドレスaddrが「0001h」、「0002h」が指定されることで、読み出し制御信号rdによって読み出し制御が行われて、アドレスaddr「0001h」またはアドレスaddr「0002h」の値が読み出しデータr_dataとして読み出される。   The stored value of the comparison result value RH of the register 53 in FIG. 11 is a comparison result value RH that is a comparison result of the register values of the registers of the accessible register group RAn and the registers of the inaccessible register group RBn, and is “0001h”. And “0002h” are addresses of the registers that store and hold the comparison result value RH. In FIG. 11, “1” indicates that the corresponding register values of the accessible register group RAn and the inaccessible register group RBn match, and “0” indicates the accessible register group RAn and the inaccessible register. It shows that the corresponding register values of the group RBn are different. In the register 53, when the address addr is specified as “0001h” and “0002h” by the CPU 2, the read control is performed by the read control signal rd, and the value of the address addr “0001h” or the address addr “0002h” is set. Read as read data r_data.

この読み出し値は、図13に示すように、管理されたレジスタの結果となり、機能モジュールMnのアクセス可能レジスタ群RAnの各レジスタのアドレスである機能レジスタアドレスRAnaddとアクセス不可レジスタ群RBnの各レジスタ値を確認するためのレジスタのアドレスである機能レジスタアドレスRBnadd及び確認レジスタの何ビット目に比較結果値RHが格納されているかの情報が管理される。例えば、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnレジスタとしてアドレス1000hの結果は、図13の比較結果管理表から機能レジスタアドレスRAnaddが「1000h」である確認アドレスRBnaddには「0001h」が記載されていて、「0」bitに比較結果が保管されていることを示している。   As shown in FIG. 13, this read value is the result of the managed register, and the function register address RAnadd, which is the address of each register of the accessible register group RAn of the functional module Mn, and each register value of the inaccessible register group RBn. The function register address RBnadd which is the address of the register for confirming the information and the information on which bit of the confirmation register stores the comparison result value RH are managed. For example, the result of the address 1000h as the accessible register group RAn and the inaccessible register group RBn register is “0001h” described in the confirmation address RBnadd whose function register address RAnadd is “1000h” from the comparison result management table of FIG. The comparison result is stored in “0” bits.

そして、いま、図11のアドレスaddr「0001h」の[0]bit目には、「1」が格納されているため、アクセス可能レジスタ群RAnの機能レジスタアドレスRAnadd「1000h」とアクセス不可レジスタ群RBnの対応するアドレスのレジスタ値が一致していることを示している。また、確認レジスタアドレスRBnadd「0002h」の[3]bit目には、レジスタ値が異なることを示している「0」が格納されているが、これに該当する機能レジスタアドレスRAnaddは、「10014」である。   Now, since “1” is stored in the [0] bit of the address addr “0001h” in FIG. 11, the function register address RAnadd “1000h” of the accessible register group RAn and the inaccessible register group RBn. It is shown that the register values of the corresponding addresses match. In addition, “0” indicating that the register value is different is stored in the [3] bit of the confirmation register address RBnadd “0002h”, but the corresponding function register address RAnadd is “10014”. It is.

したがって、このレジスタ比較部51のレジスタ53の比較結果管理表をCPU2によってアドレス信号addrと読み出し信号rdで制御することで、アクセス可能レジスタ群RAnのレジスタとアクセス不可レジスタ群RBnのレジスタの比較結果値RHを取得することができる。   Therefore, by comparing the comparison result management table of the register 53 of the register comparison unit 51 with the address signal addr and the read signal rd by the CPU 2, the comparison result value of the register of the accessible register group RAn and the register of the inaccessible register group RBn. RH can be obtained.

一方、レジスタ比較部52は、アクセス可能レジスタ群RAnのレジスタとアクセス不可レジスタ群RBnのレジスタの比較結果値RHを機能モジュールMnに出力しており、機能モジュールMnは、この比較結果値RHに基づいて、子機能モジュールMns1〜Mnsmのうち、機密を要する子機能モジュールMns2、Mns3の出力をデバッグ装置3へ出力するか否かを制御する。   On the other hand, the register comparison unit 52 outputs the comparison result value RH of the register of the accessible register group RAn and the register of the inaccessible register group RBn to the function module Mn. The function module Mn is based on the comparison result value RH. Then, it controls whether or not to output the output of the child function modules Mns2 and Mns3 requiring confidentiality among the child function modules Mns1 to Mnsm to the debug device 3.

すなわち、図12に示したように、秘匿回路である機能モジュールMnも、その全ての子機能モジュールMns1〜Mnsmが機密を必要とするものではなく、図12の場合、子機能モジュールMnsw、Mns3のみが機密を必要とするものであるとする。この場合、機能モジュールMnは、その各子機能モジュールMns1〜Mnsmは、その出力が順次次段の子機能モジュールMns1〜Mnsmに入力されているとともに、各段の子機能モジュールMns1〜Mnsmの出力がセレクタMSEnに入力されており、セレクタMSEnは、選択部55からの選択に応じて、子機能モジュールMns1〜Mnsmから入力されているデータを選択してデバッグI/F12に出力する。この選択部55は、アクセス可能レジスタ群RAnへのレジスタ値の設定等によってセレクタMSEnによる選択を指示する。   That is, as shown in FIG. 12, the function module Mn which is a secret circuit is not required for all the child function modules Mns1 to Mnsm to be confidential. In the case of FIG. 12, only the child function modules Mnsw and Mns3 are used. Suppose that requires confidentiality. In this case, the function module Mn has its outputs from the child function modules Mns1 to Mnsm of the next stage in turn, and the outputs of the child function modules Mns1 to Mnsm of each stage. The selector MSEn selects the data input from the child function modules Mns1 to Mnsm and outputs the selected data to the debug I / F 12 according to the selection from the selection unit 55. The selection unit 55 instructs selection by the selector MSEn by setting a register value in the accessible register group RAn.

そして、機能モジュールMnの各機能モジュールM1〜Mnのうち機密を要する子機能モジュールMns2、Mns3の出力側には、セレクタKMSEa、KMSEbが配設されており、各セレクタKMSEa、KMSEbには、対応する子機能モジュールMns2、Mns3の出力と、該対応する子機能モジュールMns2、Mns3の前段の子機能モジュールMns1、Mns2の出力が入力される。具体的には、セレクタKMSEaには、子機能モジュールMns2の出力と子機能モジュールMns1の出力が入力され、セレクタKMSEbには、子機能モジュールMns3の出力とセレクタKMSEaの出力が入力される。   The selectors KMSEa and KMSEb are disposed on the output side of the confidential function modules Mns2 and Mns3 among the functional modules M1 to Mn of the functional module Mn. The selectors KMSEa and KMSEb correspond to the selectors KMSEa and KMSEb. The outputs of the child function modules Mns2 and Mns3 and the outputs of the child function modules Mns1 and Mns2 preceding the corresponding child function modules Mns2 and Mns3 are input. Specifically, the output of the child function module Mns2 and the output of the child function module Mns1 are input to the selector KMSEa, and the output of the child function module Mns3 and the output of the selector KMSEa are input to the selector KMSEb.

各セレクタMSEa、MSEbには、図10のレジスタ比較部60から比較結果値RHが入力され、比較結果値RHが「1」のとき、すなわち、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnの対応するレジスタ値が一致しているときには、対応する子機能モジュールMns2、Mns3の出力を次段の子機能モジュールMns3、Mns4に出力するが、比較結果値RHが「0」のとき、すなわち、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnの対応するレジスタ値が不一致であるときには、対応する子機能モジュールMns2、Mns3の前段の子機能モジュールMns1、Mns2の出力を次段の子機能モジュールMns3、Mns4に出力する。   Each selector MSEa, MSEb receives the comparison result value RH from the register comparison unit 60 of FIG. 10, and when the comparison result value RH is “1”, that is, the correspondence between the accessible register group RAn and the inaccessible register group RBn. When the register values to be matched match, the outputs of the corresponding child function modules Mns2 and Mns3 are output to the child function modules Mns3 and Mns4 in the next stage, but when the comparison result value RH is “0”, that is, accessible. When the corresponding register values of the register group RAn and the inaccessible register group RBn do not match, the outputs of the child function modules Mns1 and Mns2 in the previous stage of the corresponding child function modules Mns2 and Mns3 are sent to the child function modules Mns3 and Mns4 in the next stage. Output.

したがって、機能モジュールMnは、アクセス可能レジスタ群RAnからアクセス不可レジスタ群RBnに適切なタイミングであるコピー可能期間にコピーが行われず、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnの値が異なるときには、機密を要する子機能モジュールMns2、Mns3の処理結果を、知られても影響のない処理結果に変更してデバッグ装置3に出力することができる。その結果、機密を要する子機能モジュールMns2、Mns3の機密を適切かつ確実に確保することができる。   Therefore, the functional module Mn does not copy from the accessible register group RAn to the inaccessible register group RBn in a copyable period that is an appropriate timing, and when the values of the accessible register group RAn and the inaccessible register group RBn are different, The processing results of the child function modules Mns2 and Mns3 that require confidentiality can be changed to processing results that have no influence even if known, and can be output to the debugging device 3. As a result, the confidentiality of the child function modules Mns2 and Mns3 that require confidentiality can be ensured appropriately and reliably.

また、上述のように、ASIC50の外部であるCPU2からアドレス信号addrと読み出し信号rdで制御することで、アクセス可能レジスタ群RAnのレジスタとアクセス不可レジスタ群RBnのレジスタの比較結果値RHを取得することができ、アクセス不可レジスタ群RBnのレジスタの設定状況を確認することができる。   Further, as described above, the comparison result value RH between the register of the accessible register group RAn and the register of the inaccessible register group RBn is obtained by controlling with the address signal addr and the read signal rd from the CPU 2 outside the ASIC 50. The setting status of the registers in the inaccessible register group RBn can be confirmed.

さらに、本実施例のASIC1は、機密を要する機能モジュールMnが、複数の子機能モジュールMns1〜Mnsmを有し、アクセス可能レジスタ群RAn及びアクセス不可レジスタ群RBnが、それぞれ該子機能モジュールMns1〜Mnsmをに対応する所定数のレジスタを有し、コピー制御部CSnが、該複数の子機能モジュールMns1〜Mnsmのうち、機密を要する子機能モジュールMns2、Mns3に対応するアクセス可能レジスタ群RAnのレジスタからアクセス不可レジスタ群RBnのレジスタへのレジスタ値のコピーを禁止している。   Further, in the ASIC 1 of the present embodiment, the function module Mn requiring confidentiality has a plurality of child function modules Mns1 to Mnsm, and the accessible register group RAn and the inaccessible register group RBn are respectively connected to the child function modules Mns1 to Mnsm. The copy control unit CSn includes a register of the accessible register group RAn corresponding to the secret child function modules Mns2 and Mns3 among the plurality of child function modules Mns1 to Mnsm. Copying of register values to registers in the inaccessible register group RBn is prohibited.

したがって、複数の子機能モジュールMns1〜Mnsmのうち、機密を要する秘匿回路としての子機能モジュールMns2、Mns3の動作結果が外部から取得されることを防止することができ、より一層適切かつ容易にASIC1の機密を保護することができる。   Therefore, it is possible to prevent the operation results of the child function modules Mns2 and Mns3 as confidential circuits requiring confidentiality from the plurality of child function modules Mns1 to Mnsm from being acquired from the outside, and more appropriately and easily. Can protect confidentiality.

図14及び図15は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第4実施例を示す図であり、図14は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第4実施例を適用したASIC60の要部回路ブロック図である。   14 and 15 are diagrams showing a fourth embodiment of the semiconductor integrated circuit, security method, security program and recording medium of the present invention. FIG. 14 shows the semiconductor integrated circuit, security method, It is a principal part circuit block diagram of ASIC60 to which the 4th Example of a security program and a recording medium is applied.

なお、本実施例は、上記第1実施例と同様に、半導体集積回路であるASIC60に、周辺回路であるCPU2、デバッグ装置3が接続されている場合に適用したものであり、本実施例の説明においては、第1実施例と同様の構成部分については、同一の符号を付して、その説明を省略し、また、図示しない部分についても、第1実施例で用いた符号をそのまま用いて説明する。   The present embodiment is applied to the case where the CPU 2 and the debug device 3 which are peripheral circuits are connected to the ASIC 60 which is a semiconductor integrated circuit, as in the first embodiment. In the description, the same components as those in the first embodiment are denoted by the same reference numerals, the description thereof is omitted, and the portions used in the first embodiment are also used as they are for the portions not shown. explain.

図14において、ASIC60は、上記第1実施例のASIC1と同様のレジスタ部11、複数の機能モジュールM1〜Mn、デバッグI/F12、コピー制御部CSn及びアクセス不可レジスタ群RBn等を備えているとともに、レジスタ比較部61を備えており、レジスタ比較部61は、比較部62とレジスタ63を備えている。   In FIG. 14, the ASIC 60 includes a register unit 11, a plurality of functional modules M1 to Mn, a debug I / F 12, a copy control unit CSn, an inaccessible register group RBn, and the like similar to the ASIC 1 of the first embodiment. The register comparison unit 61 includes a comparison unit 62 and a register 63.

なお、図14では、図を簡略化するために、レジスタ部11のデコーダDR、機能モジュールM1〜Mn及びコピー制御部CSnを省略しており、また、アクセス可能レジスタ群RA1〜RAnのうち、機密を要する機能モジュールMnに対応するアクセス可能レジスタ群RAn以外のアクセス可能レジスタ群RA1〜RAn−1を省略している。   In FIG. 14, in order to simplify the drawing, the decoder DR, the functional modules M1 to Mn, and the copy control unit CSn of the register unit 11 are omitted, and among the accessible register groups RA1 to RAn, confidential information is omitted. The accessible register groups RA1 to RAn-1 other than the accessible register group RAn corresponding to the functional module Mn requiring the above are omitted.

機能モジュールMnは、図示しないが、第3実施例と同様に、複数の子機能モジュールMns1〜Mnsmを備えており、アクセス可能レジスタ群RAnは、子機能モジュールMns1〜Mnsmに対応する数の子機能モジュール用レジスタ群(以下、子モジュール用レジスタ群という。)Ar1〜Armを備えている。   Although not shown, the function module Mn includes a plurality of child function modules Mns1 to Mnsm as in the third embodiment, and the accessible register group RAn is for the number of child function modules corresponding to the child function modules Mns1 to Mnsm. Register groups (hereinafter referred to as child module register groups) Ar1 to Arm are provided.

また、アクセス不可レジスタ群RBnは、子機能モジュールMns1〜Mnsmに対応するとともに、アクセス可能レジスタ群RAnの子モジュール用レジスタ群Ar1〜Armに対応する子機能モジュール用レジスタ群(以下、子モジュール用レジスタ群という。)Br1〜Brmを備えている。   In addition, the inaccessible register group RBn corresponds to the child function modules Mns1 to Mnsm, and also corresponds to the child function module register groups Ar1 to Arm of the accessible register group RAn (hereinafter referred to as child module registers). Called group) Br1-Brm.

各子モジュール用レジスタ群Ar1〜Armは、それぞれ複数のレジスタ(図14において、フリップフロップFFで示している。)を備えており、各子モジュール用レジスタ群Br1〜Brmは、それぞれ対応する子モジュール用レジスタ群Ar1〜Armに対応する数のレジスタを備えている。   Each of the child module register groups Ar1 to Arm includes a plurality of registers (indicated by flip-flops FF in FIG. 14), and each of the child module register groups Br1 to Brm has a corresponding child module. The number of registers corresponding to the register groups Ar1 to Arm is provided.

アクセス可能レジスタ群RAnの子モジュール用レジスタ群Ar1〜Armは、上述のように、コピー制御部CSnによってコピーが可能な期間が制御されて、その各レジスタのレジスタ値が、コピー可能期間にアクセス不可レジスタ群RBnの各子モジュール用レジスタ群Br1〜Brmの対応するレジスタにコピーされる。   As described above, the copy control unit CSn controls the period during which copying is possible for the child module registers Ar1 to Arm of the accessible register group RAn, and the register values of the registers cannot be accessed during the copyable period. Copied to the corresponding registers in each of the sub-module register groups Br1 to Brm of the register group RBn.

そして、レジスタ比較部61は、比較部(比較手段)62とレジスタ(比較結果保持手段)63を備えており、比較部62は、上記対となる子モジュール用レジスタ群Ar1〜Arm及び子モジュール用レジスタ群Br1〜Brmに対応するレジスタ群比較部61a〜61mを備えている。各レジスタ群比較部61a〜61mは、対応する子モジュール用レジスタ群Ar1〜Arm及び子モジュール用レジスタ群Br1〜Brmの各レジスタに対応するアンド回路群61aa〜61maと該アンド回路群61aa〜61maの出力のアンドを取る総アンド回路61ab〜61mbを備えており、アンド回路群61aa〜61maの各アンド回路は、子モジュール用レジスタ群Ar1〜Armと子モジュール用レジスタ群Br1〜Brmの対応するレジスタのレジスタ値が同じであると、「1」を出力し、異なると、「0」を出力する。各総アンド回路61ab〜61mbは、自己に接続されているアンド回路群61aa〜61maの全てのAND回路の出力が「1」のときに、「1」をレジスタ63に出力し、自己に接続されているアンド回路群61aa〜61maの全てのAND回路の出力が「0」のときに、「0」をレジスタ63に出力する。   The register comparison unit 61 includes a comparison unit (comparison unit) 62 and a register (comparison result holding unit) 63. The comparison unit 62 includes the pair of child module registers Ar1 to Arm and the child module. Register group comparison units 61a to 61m corresponding to the register groups Br1 to Brm are provided. Each of the register group comparison units 61a to 61m includes AND circuit groups 61aa to 61ma corresponding to the registers of the corresponding child module register groups Ar1 to Arm and the child module register groups Br1 to Brm, and the AND circuit groups 61aa to 61ma. The AND circuits 61ab to 61mb that take the AND of the outputs are provided, and each AND circuit of the AND circuit groups 61aa to 61ma has a register corresponding to each of the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm. If the register values are the same, “1” is output, and if they are different, “0” is output. Each of the AND circuits 61ab to 61mb outputs “1” to the register 63 when all the AND circuit outputs of the AND circuit groups 61aa to 61ma connected thereto are “1”, and is connected to itself. When the outputs of all AND circuits of the AND circuit groups 61aa to 61ma are “0”, “0” is output to the register 63.

レジスタ63は、子モジュール用レジスタ群Ar1〜Arm及び子モジュール用レジスタ群Br1〜Brmに対応する数、すなわち、レジスタ群比較部61a〜61mの数に対応する数の比較値レジスタhr1〜hrmを備えており、上記総アンド回路61ab〜61mbは、対応する比較値レジスタhr1〜hrmに上記出力値を出力する。   The register 63 includes comparison value registers hr1 to hrm corresponding to the numbers corresponding to the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm, that is, the number corresponding to the number of the register group comparison units 61a to 61m. The total AND circuits 61ab to 61mb output the output values to the corresponding comparison value registers hr1 to hrm.

そして、このレジスタ63の各比較値レジスタhr1〜hrmは、CPU2からのアドレス信号addrと読み出し制御信号rdによって読み出しデータr_dataとして読み出される。   The comparison value registers hr1 to hrm of the register 63 are read as read data r_data by the address signal addr and the read control signal rd from the CPU 2.

したがって、本実施例のASIC60は、アクセス可能レジスタ群RAnからアクセス不可レジスタ群RBnに適切なタイミングにコピーが行われ、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnのレジスタの全てのレジスタ値が同じときには、アンド回路群61aa〜61maの全てのアンド回路が「1」を出力し、各総アンド回路61ab〜61mbが「1」をレジスタ63の対応する比較値レジスタhr1〜hrmに出力する。   Therefore, in the ASIC 60 of this embodiment, copying is performed from the accessible register group RAn to the inaccessible register group RBn at an appropriate timing, and all register values of the registers in the accessible register group RAn and the inaccessible register group RBn are the same. Sometimes, all AND circuits in the AND circuit groups 61aa to 61ma output “1”, and each total AND circuit 61ab to 61mb outputs “1” to the corresponding comparison value registers hr1 to hrm of the register 63.

ところが、ASIC60は、アクセス可能レジスタ群RAnからアクセス不可レジスタ群RBnに適切なタイミングにコピーが行われず、アクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnのレジスタのレジスタ値が異なるときには、総アンド回路61ab〜61mbのアンド回路群61aa〜61maのアンド回路のうち、該レジスタ値の異なるレジスタの接続されているAND回路が「0」を出力し、該AND回路の属するアンド回路群61aa〜61maの総アンド回路61ab〜61mbが「0」をレジスタ63の対応する比較値レジスタhr1〜hrmに出力する。   However, the ASIC 60 does not copy the accessible register group RAn to the inaccessible register group RBn at an appropriate timing, and when the register values of the accessible register group RAn and the inaccessible register group RBn are different, the total AND circuit 61ab Of AND circuits 61 to 61 ma of AND circuits 61 a to 61 ma, AND circuits connected to registers having different register values output “0”, and the AND circuits 61 aa to 61 ma to which the AND circuits belong The circuits 61ab to 61mb output “0” to the corresponding comparison value registers hr1 to hrm of the register 63.

このASIC60の外部であるCPU2からアドレス信号addrと読み出し信号rdで制御することで、レジスタ63の比較値レジスタhr1〜hrmを読み出しデータr_dataとして取得することができ、アクセス不可レジスタ群RBnの子モジュール用レジスタ群Ar1〜Armと子モジュール用レジスタ群Br1〜Brm毎のレジスタの設定状況を確認することができる。   By controlling with the address signal addr and the read signal rd from the CPU 2 outside the ASIC 60, the comparison value registers hr1 to hrm of the register 63 can be obtained as read data r_data, and for the child modules of the inaccessible register group RBn The register setting status for each of the register groups Ar1 to Arm and the child module register groups Br1 to Brm can be confirmed.

このように、本実施例のASIC60は、機能モジュールMnが複数の子機能モジュールMns1〜Mnsmを有し、アクセス可能レジスタ群RAnが、子機能モジュールMns1〜Mnsmに対応する数の子モジュール用レジスタ群(子外部アクセス可能レジスタ群)Ar1〜Armを備え、また、アクセス不可レジスタ群RBnが、子機能モジュールMns1〜Mnsmに対応するとともに、アクセス可能レジスタ群RAnの子モジュール用レジスタ群Ar1〜Armに対応する子モジュール用レジスタ群(子外部アクセス不可レジスタ群)Br1〜Brmを備えている。そして、レジスタ63が、子モジュール用レジスタ群Ar1〜Armと子モジュール用レジスタ群Br1〜Brmの単位で比較部62の比較結果を保持する。   Thus, in the ASIC 60 of this embodiment, the functional module Mn has a plurality of child functional modules Mns1 to Mnsm, and the accessible register group RAn has a number of child module register groups (children corresponding to the child functional modules Mns1 to Mnsm). External accessible register group) Ar1 to Arm, and the inaccessible register group RBn corresponds to the child functional modules Mns1 to Mnsm, and the child module registers Ar1 to Arm of the accessible register group RAn. Module registers (child external inaccessible registers) Br1 to Brm are provided. The register 63 holds the comparison result of the comparison unit 62 in units of the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm.

したがって、子機能モジュールMns1〜Mnsmに対応した子モジュール用レジスタ群Ar1〜Armと子モジュール用レジスタ群Br1〜Brmのレジスタ値を比較した結果を、デバッグ時等において、外部から取得することができ、ASIC60を正当に利用する者が、良好な操作性で、かつ、外部からアクセス不可能なアクセス不可レジスタ群RBnのレジスタ値が所望の設定になっているかを確認することができる。   Therefore, the result of comparing the register values of the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm corresponding to the child function modules Mns1 to Mnsm can be acquired from the outside during debugging, A person who properly uses the ASIC 60 can confirm whether or not the register values of the inaccessible register group RBn, which has good operability and cannot be accessed from the outside, have a desired setting.

なお、上記説明のASIC60は、アクセス可能レジスタ群RAnの子モジュール用レジスタ群Ar1〜Armとアクセス不可レジスタ群RBnの子モジュール用レジスタ群Br1〜Brmにおいてレジスタ郡単位でレジスタ値のコピーが適切に行われているか否かの情報をレジスタ67の比較値レジスタkr1〜krnに格納しているが、コピーの適否の結果としては、上記レジスタ郡単位に限るものではなく、例えば、図15に示すように、レジスタ群のレジスタ単位で格納して外部に取り出せるようにしてもよい。なお、図15において、図14と同様の構成部分には、同一の符号を付して、その節明を省略する。   The ASIC 60 described above appropriately copies register values in register groups in the child module register groups Ar1 to Arm of the accessible register group RAn and the child module register groups Br1 to Brm of the inaccessible register group RBn. Is stored in the comparison value registers kr1 to krn of the register 67. However, the result of copy propriety is not limited to the register group unit. For example, as shown in FIG. Alternatively, the data may be stored in register units of the register group and taken out to the outside. In FIG. 15, the same components as those in FIG. 14 are denoted by the same reference numerals, and the description thereof is omitted.

図15において、レジスタ比較部65は、比較部66と上記同様のレジスタ63を備えており、比較部66は、上記同様のアンド回路群61aa〜61maと選択回路SKを備えており、各アンド回路群61aa〜61maの比較出力は、それぞれまとめて選択回路SKに入力されている。選択回路SKには、CPU2からアドレス信号addrが入力され、選択回路SKは、アドレス信号addrに基づいてアンド回路群61aa〜61maから入力される比較出力のうちの1つのアンド回路群61aa〜61maからの比較出力を選択してレジスタ67に出力する。   In FIG. 15, the register comparison unit 65 includes the comparison unit 66 and the same register 63 as described above, and the comparison unit 66 includes the same AND circuit groups 61aa to 61ma and the selection circuit SK. The comparison outputs of the groups 61aa to 61ma are collectively input to the selection circuit SK. An address signal addr is input from the CPU 2 to the selection circuit SK. The selection circuit SK receives from one AND circuit group 61aa to 61ma among the comparison outputs input from the AND circuit groups 61aa to 61ma based on the address signal addr. The comparison output is selected and output to the register 67.

レジスタ67は、子モジュール用レジスタ群Ar1〜Arm及び子モジュール用レジスタ群Br1〜Brmの搭載しているレジスタの数に対応した数の比較値レジスタkr1〜krnを備えており、比較値レジスタkr1〜krnには、選択回路SKの選択したアンド回路群61aa〜61maの比較結果がそれぞれ格納される。   The register 67 includes comparison value registers kr1 to krn corresponding to the number of registers mounted in the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm. The comparison results of the AND circuit groups 61aa to 61ma selected by the selection circuit SK are stored in krn.

そして、このレジスタ67の各比較値レジスタkr1〜krnは、CPU2からのアドレス信号addrと読み出し制御信号rdによって読み出しデータr_dataとして読み出される。   The comparison value registers kr1 to krn of the register 67 are read as read data r_data by the address signal addr and the read control signal rd from the CPU 2.

したがって、CPU2からのアドレス信号addrによって選択した子機能モジュールMns1〜Mnsmの子モジュール用レジスタ群Ar1〜Armと子モジュール用レジスタ群Br1〜Brmのレジスタ単位での比較結果を、CPU2からのアドレス信号addrと読み出し制御信号rdによって読み出しデータr_dataとして読み出すことができる。その結果、外部からアクセス不可レジスタ群RBnのレジスタが所望の設定になっているかをレジスタのビット毎に確認することができ、ASIC60を正当に使用する者に対して、レジスタの設定をミスした場合であっても、操作性が良好な状態で、レジスタの設定状態を確認することができる。   Therefore, the comparison results in register units of the child module register groups Ar1 to Arm and the child module register groups Br1 to Brm of the child function modules Mns1 to Mnsm selected by the address signal addr from the CPU2 are obtained as the address signal addr from the CPU2. The read data r_data can be read by the read control signal rd. As a result, it is possible to confirm for each bit of the register whether or not the registers of the inaccessible register group RBn are set from the outside, and when the register setting is missed for a person who properly uses the ASIC 60 Even so, it is possible to check the register setting state with good operability.

図16及び図17は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第5実施例を示す図であり、図16は、本発明の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体の第5実施例を適用したASICのコピー制御部CSncの要部回路ブロック図である。   16 and 17 are diagrams showing a fifth embodiment of the semiconductor integrated circuit, security method, security program, and recording medium of the present invention. FIG. 16 shows the semiconductor integrated circuit, security method, It is a principal part circuit block diagram of copy control part CSnc of ASIC which applied 5th Example of the security program and the recording medium.

なお、本実施例は、上記第1実施例のASIC1及び周辺回路であるCPU2、デバッグ装置3と同様のASIC1及びCPU2、デバッグ装置3に適用したものであり、本実施例の説明においては、第1実施例と同様の構成部分については、同一の符号を付して、その説明を省略し、また、図示しない部分についても、第1実施例で用いた符号をそのまま用いて説明する。   The present embodiment is applied to the ASIC 1, the CPU 2, which is the peripheral circuit of the first embodiment, and the ASIC 1, the CPU 2, and the debug device 3 similar to the debug device 3. In the description of the present embodiment, Constituent parts similar to those in the first embodiment are denoted by the same reference numerals, description thereof is omitted, and parts not shown in the drawings are described using the reference numerals used in the first embodiment as they are.

本実施例は、デバッグモード時におけるコピー動作を1回に限定し、それ以降のコピー動作を、たとえ、コピー可能期間にあっても、禁止するものである。   In the present embodiment, the copy operation in the debug mode is limited to one time, and subsequent copy operations are prohibited even during the copy available period.

図16において、コピー制御部(コピー制御手段)CSncは、上記第1実施例のASIC1の機能モジュールMn用のアクセス可能レジスタ群RAnとアクセス不可レジスタ群RBnとの間に接続されており、第1実施例と同様のコピー可能期間設定回路20、シフトレジスタ31及びAND回路32を搭載しているとともに、コピー制限回路70、トリガ生成回路71及びAND回路72を搭載している。   In FIG. 16, the copy control unit (copy control means) CSnc is connected between the accessible register group RAn and the inaccessible register group RBn for the functional module Mn of the ASIC 1 of the first embodiment. A copy enable period setting circuit 20, a shift register 31, and an AND circuit 32 similar to those of the embodiment are mounted, and a copy restriction circuit 70, a trigger generation circuit 71, and an AND circuit 72 are mounted.

トリガ生成回路71は、フリップフロップ71a、NOT回路71b及びNOR回路71cを備えており、トリガ生成回路71には、フレームゲート信号fgateが入力される。   The trigger generation circuit 71 includes a flip-flop 71a, a NOT circuit 71b, and a NOR circuit 71c. The frame generation signal fgate is input to the trigger generation circuit 71.

トリガ生成回路71は、フレームゲート信号fgateの立ち上がり時にHiになるトリガを生成してAND回路72に出力し、AND回路72には、さらに、デバッグモード時にHiとなるデバッグモード信号debug_modeが入力される。   The trigger generation circuit 71 generates a trigger that becomes Hi when the frame gate signal fgate rises, and outputs the trigger to the AND circuit 72. The AND circuit 72 further receives a debug mode signal debug_mode that becomes Hi in the debug mode. .

AND回路72は、デバッグモード信号debug_modeがHiのデバッグモードであって、フレームゲート信号fgateの立ち上がりにHiとなるデバッグ時コピー回数限定信号Dsをコピー制限回路70に出力する。   The AND circuit 72 outputs the debug copy number limiting signal Ds to the copy limiting circuit 70 when the debug mode signal debug_mode is in the Hi debug mode and becomes Hi at the rising edge of the frame gate signal fgate.

コピー可能期間設定回路20は、第1実施例と同様に、カウンタCNからの遅延フレームゲート信号fgate_R、フレームゲート信号fgate及びリセット信号resetからコピー可能期間を設定するコピー可能期間信号Coktを生成して、コピー制限回路70に出力する。   Similar to the first embodiment, the copy enable period setting circuit 20 generates a copy enable period signal Cokt that sets a copy enable period from the delayed frame gate signal fgate_R, the frame gate signal fgate, and the reset signal reset from the counter CN. To the copy restriction circuit 70.

コピー制限回路70には、Aレジスタ書き込みデータregAn_data、フレームゲート信号fgate、リセット信号reset及び上記AND回路72からのデバッグ時コピー回数限定信号Dsが入力され、AND回路32には、書き込み制御信号regAn_wrをシフトレジスタ31で所定タイミングだけ遅らせた書き込み制御信号regBn_wrとコピー制限回路70の出力信号であるフラグflgが入力され、AND回路32は、書き込み制御信号regBn_wrとフラグflgがともにHiのときに、Hiのコピー制御信号regBn_ctl(図17参照)をアクセス不可レジスタ群RBnのセレクタSEに出力する。   The copy limit circuit 70 receives the A register write data regAn_data, the frame gate signal fgate, the reset signal reset, and the debug copy number limit signal Ds from the AND circuit 72. The AND circuit 32 receives the write control signal regAn_wr. The write control signal regBn_wr delayed by a predetermined timing in the shift register 31 and the flag flg that is the output signal of the copy restriction circuit 70 are input, and the AND circuit 32 has the Hi signal when both the write control signal regBn_wr and the flag flg are Hi. The copy control signal regBn_ctl (see FIG. 17) is output to the selector SE of the inaccessible register group RBn.

コピー制限回路70は、XOR回路70a、OR回路70b、AND回路70c、OR回路70d及びフリップフロップ70eを備えており、XOR回路70aには、Aレジスタ書き込みデータregAn_dataとアクセス不可レジスタ群RBnに書き込まれているBレジスタ書き込みデータregBn_dataが入力される。XOR回路70aは、Aレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataのXOR処理を行って両者が異なる場合に、Hiとなる信号をOR回路70bに出力し、OR回路70bには、該XOR回路70aからの出力信号が反転入力され、さらに、フレームゲート信号fgateが反転入力され、さらに、コピー可能期間設定回路20からの上記コピー可能期間信号Coktが入力される。   The copy restriction circuit 70 includes an XOR circuit 70a, an OR circuit 70b, an AND circuit 70c, an OR circuit 70d, and a flip-flop 70e. In the XOR circuit 70a, the A register write data regAn_data and the inaccessible register group RBn are written. B register write data regBn_data is input. The XOR circuit 70a performs XOR processing on the A register write data regAn_data and the B register write data regBn_data, and outputs a signal that becomes Hi to the OR circuit 70b when the two are different. Output signal is inverted and the frame gate signal fgate is inverted and the copy enable period signal Cokt from the copy enable period setting circuit 20 is input.

OR回路70bは、これらの入力のOCR処理を行って、処理結果をAND回路70cに出力し、AND回路70cには、さらにフリップフロップ70eの出力であるフラグflgと上記AND回路72からのデバッグ時コピー回数限定信号Dsが入力される。AND回路70cは、これらの入力のアンド処理を行って、入力が全てHiであると、OR回路70dにHiの信号を出力し、OR回路70dには、さらに、初期化用のリセット信号resetが反転入力される。   The OR circuit 70b performs OCR processing of these inputs and outputs the processing result to the AND circuit 70c. The AND circuit 70c further outputs a flag flg as an output of the flip-flop 70e and the AND circuit 72 during debugging. A copy number limiting signal Ds is input. The AND circuit 70c performs an AND process on these inputs, and outputs a Hi signal to the OR circuit 70d when all the inputs are Hi, and the OR circuit 70d further receives a reset signal reset for initialization. Inverted input.

OR回路70dは、入力のいずれかがHiであると、Hiとなる信号をフリップフロップ70eに出力し、フリップフロップ70eは、OR回路70dからの入力を保持して、AND回路32及びAND回路70cにフラグflgとして出力する。   If any of the inputs is Hi, the OR circuit 70d outputs a signal that becomes Hi to the flip-flop 70e. The flip-flop 70e holds the input from the OR circuit 70d, and the AND circuit 32 and the AND circuit 70c. Is output as a flag flg.

コピー制限回路70は、デバッグモード時であって、コピー可能期間にアクセス不可レジスタ群RBnにアクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataがBレジスタ書き込みデータregBn_dataとしてコピーが行なわれた否かの状態を保持する。すなわち、コピー制限回路70は、Aレジスタ書き込みデータregAn_dataをアクセス不可レジスタ群RBnのセレクタSEに出力するとともに、このAレジスタ書き込みデータregAn_dataとアクセス不可レジスタ群RBnの保持するBレジスタ書き込みデータregBn_dataをXOR回路70aで比較した比較結果とフレームゲート信号fgate及びコピー可能期間設定回路20からのコピー可能期間信号Coktに基づいてコピー可能期間に書き込み制御信号regAn_wr、すなわち、書き込み制御信号regBn_wrによって適切にAレジスタ書き込みデータregAn_dataがアクセス不可レジスタ群RBnにコピーされてAレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataとが一致するか判断し、コピー可能期間に適切にAレジスタ書き込みデータregAn_dataがアクセス不可レジスタ群RBnにコピーされると、フリップフロップ70eがAND回路32に出力するフラグflgをHiとして、AND回路32が書き込み制御信号regBn_wrの入力によって、AND回路32がHiのコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSE出力できるようにして、Aレジスタ書き込みデータregAn_dataのアクセス不可レジスタ群RBnへのコピーを可能とする。   The copy restriction circuit 70 is in the debug mode, and whether or not the A register write data regAn_data of the accessible register group RAn is copied to the inaccessible register group RBn as the B register write data regBn_data during the copy possible period. Hold. That is, the copy restriction circuit 70 outputs the A register write data regAn_data to the selector SE of the inaccessible register group RBn, and also uses the A register write data regAn_data and the B register write data regBn_data held by the inaccessible register group RBn. Based on the comparison result in 70a, the frame gate signal fgate, and the copy enable period signal Cokt from the copy enable period setting circuit 20, the A register write data is appropriately generated by the write control signal regAn_wr, that is, the write control signal regBn_wr, in the copy enable period. regAn_data is copied to the inaccessible register group RBn and A register write data regAn_data and B register are written It is determined whether the data regBn_data matches, and when the A register write data regAn_data is appropriately copied to the inaccessible register group RBn during the copyable period, the flip-flop 70e sets the flag flg output to the AND circuit 32 as Hi, and AND When the circuit 32 inputs the write control signal regBn_wr, the AND circuit 32 can output the Hi copy control signal regBn_ctl to the selector SE of the inaccessible register group RBn and copy the A register write data regAn_data to the inaccessible register group RBn. Is possible.

また、コピー制限回路70は、デバッグモード時であって、コピー可能期間以外の期間に書き込み制御信号regAn_wr(書き込み制御信号regBn_wr)が入力されると、Aレジスタ書き込みデータregAn_dataとBレジスタ書き込みデータregBn_dataが異なり、フリップフロップ70eの出力するフラグflgがLowとなって、AND回路32からのコピー制御信号regBn_ctlの出力を禁止するとともに、一旦フラグflgがLowになると、AND回路70cの出力が常にLowとなって、以降、リセット信号resetがフリップフロップ70eをリセットするまで、正規のコピー可能期間であってもAND回路32からのコピー制御信号regBn_ctlの出力を禁止する。   In addition, when the write control signal regAn_wr (write control signal regBn_wr) is input in a period other than the copy enable period in the debug mode, the copy restriction circuit 70 receives the A register write data regAn_data and the B register write data regBn_data. In contrast, the flag flg output from the flip-flop 70e becomes Low, prohibiting the output of the copy control signal regBn_ctl from the AND circuit 32, and once the flag flg becomes Low, the output of the AND circuit 70c is always Low. Henceforth, until the reset signal reset resets the flip-flop 70e, the output of the copy control signal regBn_ctl from the AND circuit 32 is prohibited even during the normal copy available period.

すなわち、コピー制御部CSncのコピー可能期間設定回路70は、リセット信号resetが入力されると、フリップフロップ70eがリセットされて、AND回路32及びAND回路70cに出力しているフラグflgがHiになる。   That is, when the reset signal reset is input, the copyable period setting circuit 70 of the copy control unit CSnc resets the flip-flop 70e, and the flag flg output to the AND circuit 32 and the AND circuit 70c becomes Hi. .

この状態で、図17に示すように、コピー制御部CSncは、フレームゲート信号fgateがLowのレジスタアクセス可能期間T1、T2、T3・・・のうち、例えば、レジスタアクセス可能期間T1に、コピー可能期間設定回路20からコピー可能期間設定回路70にHiのコピー可能期間信号Coktが入力されてコピー可能期間となる。このコピー可能期間に、書き込み制御信号regAn_wrがシフトレジスタ31で遅延された書き込み制御信号Bn_wrがAND回路32に入力されると、AND回路32がコピー制御信号regBn_ctlをアクセス不可レジスタ群RBnのセレクタSEのセレクト端子に出力し、セレクタSEは、その入力端子に入力されているAレジスタ書き込みデータregAn_dataを順次レジスタであるフリップフロップFF1〜FFmにBレジスタ書き込みデータregBn_dataとしてコピーする。そして、アクセス不可レジスタ群RBnは、このコピーして保持するBレジスタ書き込みデータregBn_dataをコピー制限回路70のXOR回路40aに出力し、XOR回路40aは、Bレジスタ書き込みデータregBn_dataとAレジスタ書き込みデータregAn_dataを比較して、Bレジスタ書き込みデータregBn_dataとAレジスタ書き込みデータregAn_dataが異なる場合にHiとなる信号を出力し、同じ場合にLowとなる信号を出力する。   In this state, as shown in FIG. 17, the copy control unit CSnc can perform copying in, for example, the register accessible period T1 among the register accessible periods T1, T2, T3... With the frame gate signal fgate being Low. A Hi copy enable period signal Cokt is input from the period setting circuit 20 to the copy enable period setting circuit 70 to enter a copy enable period. When the write control signal Bn_wr obtained by delaying the write control signal regAn_wr by the shift register 31 is input to the AND circuit 32 during this copy enabled period, the AND circuit 32 sends the copy control signal regBn_ctl to the selector SE of the inaccessible register group RBn. The selector SE copies the A register write data regAn_data input to the input terminal to the flip-flops FF1 to FFm, which are registers, as B register write data regBn_data. The inaccessible register group RBn outputs the B register write data regBn_data that is copied and held to the XOR circuit 40a of the copy restriction circuit 70, and the XOR circuit 40a outputs the B register write data regBn_data and the A register write data regAn_data. In comparison, when the B register write data regBn_data and the A register write data regAn_data are different, a signal that becomes Hi is output, and when it is the same, a signal that becomes Low is output.

そして、コピー制限回路70は、デバッグモードにおいて、1回コピー動作を可能とすると、以降のコピー動作を禁止する。   Then, when the copy restriction circuit 70 enables a single copy operation in the debug mode, it prohibits the subsequent copy operation.

すなわち、図17に示すように、1回目のフレームゲート信号fgateがLowであるレジスタコピー可能期間において、書き込み制御信号regAn_wrが入力されると、書き込み制御信号regAn_wrのタイミングでアクセス可能レジスタ群RAnに書き込まれたAレジスタ書き込みデータregAn_dataが、シフトレジスタ31で書き込み制御信号regAn_wrから生成されたコピー制御信号regBn_wrのタイミングで、アクセス不可レジスタ群RBnにコピーされる。   That is, as shown in FIG. 17, when the write control signal regAn_wr is input in the register copy enable period in which the first frame gate signal fgate is Low, the write is performed to the accessible register group RAn at the timing of the write control signal regAn_wr. The A register write data regAn_data thus copied is copied to the inaccessible register group RBn at the timing of the copy control signal regBn_wr generated from the write control signal regAn_wr in the shift register 31.

そして、デバッグモードでデバッグモード信号debug_modeがHiのときに、フレームゲート信号fgateが立ち上がると、トリガ生成回路71がこのフレームゲート信号fgateの立ち上がり時にHiとなる信号をアンド回路72に出力し、アンド回路72が、図17に示すように、デバッグ時コピー回数限定信号Dsをコピー制限回路70のAND回路70cに出力する。   When the debug mode signal debug_mode is Hi in the debug mode, when the frame gate signal fgate rises, the trigger generation circuit 71 outputs a signal that becomes Hi when the frame gate signal fgate rises to the AND circuit 72. 72 outputs the debug copy number limiting signal Ds to the AND circuit 70c of the copy limiting circuit 70 as shown in FIG.

したがって、図17に示すように、フラグflgがHiからLowに切り替わり、以降のコピー動作を禁止する。   Therefore, as shown in FIG. 17, the flag flg is switched from Hi to Low, and the subsequent copy operation is prohibited.

すなわち、例えば、図17のレジスタアクセス可能期間T2やレジスタアクセス可能期間T3においては、コピー制御回路70は、LowのフラグflgをAND回路32に出力するため、アクセス可能レジスタ群RAnには、Aレジスタ書き込みデータregAn_dataは書き込まれるが、AND回路32は、図17に破線で示すように、コピー制御信号regBn_ctlをアクセス不可レジスタ群RBnに出力しない。その結果、アクセス可能レジスタ群RAnのAレジスタ書き込みデータregAn_dataは、アクセス不可レジスタ群RBnにはコピーされない。   That is, for example, in the register accessible period T2 and the register accessible period T3 in FIG. 17, the copy control circuit 70 outputs the Low flag flg to the AND circuit 32. Therefore, the accessible register group RAn includes an A register. The write data regAn_data is written, but the AND circuit 32 does not output the copy control signal regBn_ctl to the inaccessible register group RBn as indicated by a broken line in FIG. As a result, the A register write data regAn_data of the accessible register group RAn is not copied to the inaccessible register group RBn.

そして、コピー制限回路70は、フリップフロップ70eの出力がAND回路70cにフィードバッグされていて、フリップフロップ70eがLowのフラグを出し続けるため、このコピー不可状態を保持する。   The copy restriction circuit 70 keeps this copy disabled state because the output of the flip-flop 70e is fed back to the AND circuit 70c and the flip-flop 70e keeps outputting a Low flag.

このように、本実施例のASIC1のコピー制御部CSncは、内部動作状態の監視を行うデバッグモードにおいて、コピー指示である書き込み制御信号regAn_wrによるアクセス可能レジスタ群RAnからアクセス不可レジスタ群RBnへのコピーを予め設定された回数(上記例では、1回)に制限する。   As described above, the copy control unit CSnc of the ASIC 1 of the present embodiment performs a copy from the accessible register group RAn to the inaccessible register group RBn by the write control signal regAn_wr which is a copy instruction in the debug mode for monitoring the internal operation state. Is limited to a preset number of times (in the above example, once).

したがって、デバッグモードで、再度、レジスタ値の設定を行ないたい場合には、ハードリセットを行なう必要があり、不正に機密回路である機能モジュールMn等に関する情報を取得して解析等を行うために、試行的に種々のレジスタの設定を行なう等の行為が行われる毎にハードリセットを要求することとなり、不正行為に対する手間を多くして、ASIC1の内部情報の機密をより一層保護することができる。   Therefore, in order to set the register value again in debug mode, it is necessary to perform a hard reset, and in order to illegally obtain information related to the functional module Mn etc. that is a confidential circuit, A hard reset is required every time an action such as setting various registers on a trial basis is performed, and it is possible to increase the trouble for the illegal action and further protect the confidentiality of the internal information of the ASIC 1.

以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。   The invention made by the present inventor has been specifically described based on the preferred embodiments. However, the present invention is not limited to the above, and various modifications can be made without departing from the scope of the invention. Needless to say.

本発明は、回路構成やプログラムの機密を保護するASIC等の半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体に利用することができる。   The present invention can be used for a semiconductor integrated circuit such as an ASIC that protects circuit configuration and program security, a security protection method, a security program, and a recording medium.

本発明の第1実施例を適用したASIC及び周辺回路のブロック構成図。1 is a block configuration diagram of an ASIC and peripheral circuits to which a first embodiment of the present invention is applied. FIG. 図1のASICの回路ブロック構成図。The circuit block block diagram of ASIC of FIG. 図2の要部回路ブロック構成図。FIG. 3 is a main circuit block configuration diagram of FIG. 2. 図2及び図3のコピー制御部及びアクセス不可レジスタ群の詳細な回路構成図。FIG. 4 is a detailed circuit configuration diagram of a copy control unit and an inaccessible register group in FIGS. 2 and 3; 図4の各部の信号のタイミング図。The timing diagram of the signal of each part of FIG. 図5のコピー可能期間の他のタイミング期間の例を示す図。The figure which shows the example of the other timing period of the copy possible period of FIG. 図5のコピー可能期間のさらに他のタイミング期間の例を示す図。The figure which shows the example of the further another timing period of the copy possible period of FIG. 本発明の第2実施例を適用したASICのコピー制御部及びアクセス不可レジスタ群の詳細な回路構成図。The detailed circuit block diagram of the copy control part of the ASIC and the inaccessible register group to which the second embodiment of the present invention is applied. 図8の各部の信号のタイミング図。FIG. 9 is a timing diagram of signals at various parts in FIG. 8. 本発明の第3実施例を適用したASICの要部回路ブロック図。The principal part circuit block diagram of ASIC to which 3rd Example of this invention is applied. 図10のレジスタ比較部のレジスタに格納される比較結果の一例を示す図。The figure which shows an example of the comparison result stored in the register | resistor of the register | resistor comparison part of FIG. 図10の機能モジュールの詳細な回路ブロック構成図。FIG. 11 is a detailed circuit block configuration diagram of the functional module of FIG. 10. 図10のレジスタ群のレジスタアドレスとレジスタ群とアクセス不可レジスタ群のレジスタ値の比較結果を確認するための確認レジスタアドレスとその値の格納されているビット値を示す図。FIG. 11 is a diagram illustrating a register address of the register group in FIG. 10, a confirmation register address for confirming a comparison result of register values of the register group and the inaccessible register group, and a bit value in which the value is stored. 本発明の第4実施例を適用したASICの要部回路ブロック図。The principal part circuit block diagram of ASIC to which 4th Example of this invention is applied. 本発明の第4実施例を適用した他のASICの要部回路ブロック図。The principal part circuit block diagram of another ASIC to which the 4th example of the present invention is applied. 本発明の第5実施例を適用したASICのコピー制御部の要部回路ブロック図。The principal part circuit block diagram of the copy control part of ASIC to which 5th Example of this invention is applied. 図16のコピー制御部の各部の信号のタイミング図。FIG. 17 is a timing diagram of signals of each unit of the copy control unit in FIG. 16.

符号の説明Explanation of symbols

1 ASIC
2 CPU
3 デバッグ装置
11 レジスタ部
12 デバッグI/F
M1〜Mn 機能モジュール
CSn コピー制御部
RBn アクセス不可レジスタ群
DR デコーダ
RA1〜RAn アクセス可能レジスタ群
addr アドレス信号
wr 書き込み制御信号
rd 読み出し制御信号
w_data 書き込みデータ
CN カウンタ
fgate フレームゲート信号
fgate_R 遅延フレームゲート信号
regAn_data Aレジスタ書き込みデータ
regAn_wr 書き込み制御信号
reset リセット信号
20 コピー可能期間設定回路
21、22 トリガ生成回路
21a、22a フリップフロップ
21b、22b NOT回路
21c、22c NOR回路
23 組み合わせ回路
23a NOR回路
23b OR回路
23c AND回路
23d フリップフロップ
23e NOT回路
23f NOR回路
31 シフトレジスタ
32 AND回路
SE セレクタ
FF1〜FFm フリップフロップ
regBn_ctl コピー制御信号
TR コピー許可トリガ
CSnb コピー制御部
40 誤タイミング検出回路
Cokt コピー可能期間信号
40a XOR回路
40b OR回路
40c AND回路
40d OR回路
40e フリップフロップ
50 ASIC
51 レジスタ比較部
52 比較部
53 レジスタ
55 選択部
Mns1〜Mnsm 子機能モジュール
MSEn セレクタ
KMSEa、KMSEb セレクタ
60 レジスタ比較部
61 レジスタ比較部
62 比較部
63 レジスタ
Ar1〜Arm 子モジュール用レジスタ群
Br1〜Brm 子モジュール用レジスタ群
61aa〜61ma アンド回路群
61ab〜61mb 総アンド回路
hr1〜hrm 比較値レジスタ
65 レジスタ比較部
66 比較部
67 レジスタ
SK 選択回路
CSnc コピー制御部
70 コピー制限回路
70a XOR回路
70b OR回路
70c AND回路
70d OR回路
70e フリップフロップ
71 トリガ生成回路
71a フリップフロップ
71b NOT回路
71c NOR回路
72 AND回路
Ds デバッグ時コピー回数限定信号
1 ASIC
2 CPU
3 Debugging Device 11 Register Unit 12 Debug I / F
M1 to Mn function module CSn copy control unit RBn inaccessible register group DR decoder RA1 to RAn accessible register group addr address signal wr write control signal rd read control signal w_data write data CN counter fgate frame gate signal fgate_R delayed frame gate signal regAn_data A Register write data regAn_wr Write control signal reset Reset signal 20 Copyable period setting circuit 21, 22 Trigger generation circuit 21a, 22a Flip-flop 21b, 22b NOT circuit 21c, 22c NOR circuit 23 Combination circuit 23a NOR circuit 23b OR circuit 23c AND circuit 23d Flip-flop 23e NOT circuit 23f NOR circuit 31 Register 32 AND circuit SE selector FF1 to FFm flip-flop regBn_ctl copy control signal TR copy permission trigger CSnb copy control unit 40 erroneous timing detection circuit Cokt copy enable period signal 40a XOR circuit 40b OR circuit 40c AND circuit 40d OR circuit 40e flip-flop 50 ASIC
51 Register Comparison Unit 52 Comparison Unit 53 Register 55 Selection Unit Mns1-Mnsm Child Functional Module MSEn Selector KMSEa, KMSEb Selector 60 Register Comparison Unit 61 Register Comparison Unit 62 Comparison Unit 63 Register Ar1-Arm Child Module Registers Br1-Brm Child Module Register group 61aa to 61ma AND circuit group 61ab to 61mb Total AND circuit hr1 to hrm Comparison value register 65 Register comparison unit 66 Comparison unit 67 Register SK selection circuit CSnc Copy control unit 70 Copy restriction circuit 70a XOR circuit 70b OR circuit 70c AND circuit 70d OR circuit 70e flip-flop 71 trigger generation circuit 71a flip-flop 71b NOT circuit 71c NOR circuit 72 AND circuit Ds debug The number of copies limited signal

Claims (12)

各種データ処理を実行する機能モジュールと、
該機能モジュールの参照するレジスタ値が設定される複数のレジスタを有するとともに外部からのアクセスが不可能な外部アクセス不可レジスタ群と、
該外部アクセス不可レジスタ群の各レジスタに対応するレジスタを有し外部からレジスタ値が設定される外部アクセス可能レジスタ群と、
外部からのコピー指示に応じて該外部アクセス可能レジスタ群に設定されている該レジスタ値を該外部アクセス不可レジスタ群へコピーする機能を有するとともに、入力される信号に応じて該コピーを禁止するコピー制限処理を行うコピー制御手段とを備え、
前記コピー制御手段は、前記機能モジュールの動作状態を示すフレームゲート信号が前記機能モジュールの非動作状態を示す期間であって、且つ前記フレームゲート信号を遅延させた信号に基づいて生成されるコピー許可トリガのタイミングに基づいて判断されるコピー可能期間以外の場合に前記アクセス不可レジスタ群へのコピーを禁止することを特徴とする半導体集積回路。
A functional module that executes various data processing;
An externally inaccessible register group having a plurality of registers in which register values to be referred to by the functional module are set and inaccessible from the outside;
An externally accessible register group having a register corresponding to each register of the externally inaccessible register group and having a register value set from the outside;
Copy having a function of copying the register value set in the external accessible register group to the external inaccessible register group in accordance with an external copy instruction and prohibiting the copy in accordance with an input signal A copy control means for performing a restriction process ,
The copy control means is a period of time during which a frame gate signal indicating the operating state of the functional module indicates a non-operating state of the functional module and is generated based on a signal obtained by delaying the frame gate signal A semiconductor integrated circuit , wherein copying to the inaccessible register group is prohibited in a period other than a copy enable period determined based on a trigger timing .
前記半導体集積回路は、前記機能モジュールが、複数の子機能モジュールを有し、前記外部アクセス可能レジスタ群及び前記外部アクセス不可レジスタ群が、それぞれ該子機能モジュールに対応する所定数のレジスタを有し、
前記コピー制御手段が、該複数の子機能モジュールのうち、機密を要する所定の子機能モジュールに対応する該外部アクセス不可レジスタ群に対してのみ、前記コピー制限処理を行うことを特徴とする請求項1記載の半導体集積回路。
In the semiconductor integrated circuit, the functional module has a plurality of child functional modules, and the externally accessible register group and the externally inaccessible register group each have a predetermined number of registers corresponding to the child functional modules. ,
Claims wherein the copy control means, of the plurality herring function module, only for the external inaccessible registers that correspond to a predetermined child function module that requires confidentiality, and performs the copy restriction process Item 14. A semiconductor integrated circuit according to Item 1.
前記コピー制御手段は、前記コピー指示が前記コピー可能期間以外の期間にあると、該コピー指示以降の全てのコピー指示による前記コピーを禁止することを特徴とする請求項1または請求項2記載の半導体集積回路。   3. The copy control unit according to claim 1, wherein when the copy instruction is in a period other than the copy available period, the copy control unit prohibits the copy by all copy instructions after the copy instruction. Semiconductor integrated circuit. 前記半導体集積回路は、前記外部アクセス可能レジスタ群のレジスタ値と前記外部アクセス不可レジスタ群のレジスタ値を比較する比較手段と、該比較手段による比較結果を外部から読み出し可能に保持する比較結果保持手段と、をさらに備えていることを特徴とする請求項1から請求項3のいずれかに記載の半導体集積回路。   The semiconductor integrated circuit includes a comparison unit that compares a register value of the externally accessible register group and a register value of the externally inaccessible register group, and a comparison result holding unit that holds a comparison result by the comparison unit so that the comparison result can be read from the outside. The semiconductor integrated circuit according to claim 1, further comprising: 前記半導体集積回路は、前記機能モジュールが、複数の子機能モジュールを有し、前記外部アクセス可能レジスタ群と前記外部アクセス不可レジスタ群が、それぞれ該子機能モジュールに対応する所定数のレジスタを有する子外部アクセス可能レジスタ群と子外部アクセス不可レジスタ群を有し、前記比較結果保持手段は、該子外部アクセス可能レジスタ群と該子外部アクセス不可レジスタ群の単位で前記比較手段の比較結果を保持することを特徴とする請求項4記載の半導体集積回路。   In the semiconductor integrated circuit, the functional module has a plurality of child functional modules, and the externally accessible register group and the externally inaccessible register group each have a predetermined number of registers corresponding to the child functional modules. An externally accessible register group and a child externally inaccessible register group are included, and the comparison result holding unit holds the comparison result of the comparing unit in units of the child externally accessible register group and the child externally inaccessible register group. 5. The semiconductor integrated circuit according to claim 4, wherein: 前記半導体集積回路は、前記機能モジュールが、複数の子機能モジュールを有し、前記外部アクセス可能レジスタ群と前記外部アクセス不可レジスタ群が、それぞれ該子機能モジュールに対応する所定数のレジスタを有する子外部アクセス可能レジスタ群と子外部アクセス不可レジスタ群を有し、前記比較手段は、該子外部アクセス可能レジスタ群と該子外部アクセス不可レジスタ群のそれぞれ対応するレジスタのレジスタ値を比較し、前記比較結果保持手段は、該複数の子機能モジュールのうち任意の子機能モジュールに対応する該子外部アクセス可能レジスタ群と該外部アクセス不可レジスタ群のレジスタ単位の比較結果を保持することを特徴とする請求項4記載の半導体集積回路。   In the semiconductor integrated circuit, the functional module has a plurality of child functional modules, and the externally accessible register group and the externally inaccessible register group each have a predetermined number of registers corresponding to the child functional modules. An externally accessible register group and a child externally inaccessible register group, and the comparing means compares register values of corresponding registers of the child externally accessible register group and the child externally inaccessible register group, and The result holding means holds a comparison result in register units of the child external accessible register group and the external inaccessible register group corresponding to an arbitrary child functional module among the plurality of child functional modules. Item 5. The semiconductor integrated circuit according to Item 4. 前記コピー制御手段は、内部動作状態の監視を行うデバッグモードにおいて、前記コピー指示による前記外部アクセス可能レジスタ群から前記外部アクセス不可レジスタ群へのコピーを予め設定された回数に制限することを特徴とする請求項1から請求項6のいずれかに記載の半導体集積回路。   The copy control means, in a debug mode for monitoring an internal operation state, restricts copying from the externally accessible register group to the externally inaccessible register group by the copy instruction to a preset number of times. The semiconductor integrated circuit according to claim 1. レジスタに設定されたレジスタ値に応じて各種データ処理を実行する機能モジュールを搭載する半導体集積回路の機密を保護する機密保護方法であって、外部からのアクセスが可能な外部アクセス可能レジスタ群のレジスタに該機能モジュールを動作させるためのレジスタ値を設定するレジスタ値設定処理と、外部からのコピー指示に応じて該外部アクセス可能レジスタ群のレジスタに設定されているレジスタ値を該機能モジュールが直接参照して動作するとともに外部アクセス不可能な外部アクセス不可レジスタ群のレジスタへコピーするコピー処理と、該コピー指示が所定のコピー可能期間以外の期間にあると該コピー処理を禁止するコピー制御処理と、を実行することを特徴とする機密保護方法。   This is a security protection method for protecting the security of a semiconductor integrated circuit equipped with a functional module that executes various data processing according to the register value set in the register, and is a register of an externally accessible register group that can be accessed from the outside. The function module directly refers to the register value setting processing for setting the register value for operating the function module and the register value set in the register of the externally accessible register group in response to an external copy instruction. A copy process for copying to a register of an externally inaccessible register group that operates as an externally inaccessible group, and a copy control process for prohibiting the copy process when the copy instruction is in a period other than a predetermined copyable period; A security method characterized in that: 前記機密保護方法は、前記コピー制御処理において、前記コピー指示が前記コピー可能期間以外の期間にあると、該コピー指示以降の全てのコピー指示による前記コピーを禁止することを特徴とする請求項8記載の機密保護方法。   9. The security method according to claim 8, wherein, in the copy control process, when the copy instruction is in a period other than the copy available period, the copy according to all copy instructions after the copy instruction is prohibited. The security method described. 前記機密保護方法は、前記外部アクセス可能レジスタ群と前記外部アクセス不可レジスタ群のレジスタ値を比較する比較処理と、該比較処理での比較結果を外部から読み出し可能に保持する比較結果保持処理と、を実行することを特徴とする請求項8または請求項9記載の機密保護方法。   The security method includes a comparison process for comparing register values of the externally accessible register group and the externally inaccessible register group, a comparison result holding process for holding a comparison result in the comparison process so that the comparison result can be read from the outside, and The security method according to claim 8 or 9, characterized in that: レジスタに設定されたレジスタ値に応じて各種データ処理を実行する機能モジュールを搭載する半導体集積回路の機密を保護する機密保護プログラムであって、
外部からのアクセスが可能な外部アクセス可能レジスタ群のレジスタに該機能モジュールを動作させるためのレジスタ値を設定するレジスタ値設定処理ステップと、
外部からのコピー指示に応じて該外部アクセス可能レジスタ群のレジスタに設定されているレジスタ値を該機能モジュールが直接参照して動作するとともに外部アクセス不可能な外部アクセス不可レジスタ群のレジスタへコピーするコピー処理ステップと、
該コピー指示が入力される信号に応じて判断されるコピー可能期間以外の期間にあると該コピー処理を禁止するコピー制御処理ステップとを有し、
前記コピー可能期間は、前記機能モジュールの動作状態を示すフレームゲート信号が前記機能モジュールの非動作状態を示す期間であって、且つ前記フレームゲート信号を遅延させた信号に基づいて生成されるコピー許可トリガのタイミングに基づいて判断される期間であることを特徴とする機密保護プログラム。
A security protection program for protecting the security of a semiconductor integrated circuit equipped with a functional module that executes various data processing according to a register value set in a register,
A register value setting processing step for setting a register value for operating the functional module in a register of an externally accessible register group that can be accessed from the outside;
In response to a copy instruction from the outside, the function module directly refers to the register value set in the register of the externally accessible register group and copies it to the register of the externally inaccessible register group that cannot be accessed externally. A copy processing step;
A copy control processing step for prohibiting the copy process when the copy instruction is in a period other than the copy available period determined according to the input signal ;
The copy permission period is a period in which a frame gate signal indicating an operation state of the functional module indicates a non-operation state of the functional module, and a copy permission generated based on a signal obtained by delaying the frame gate signal A security program characterized by a period determined based on a trigger timing .
請求項11記載の機密保護プログラムを記録したことを特徴とするコンピュータが読み取り可能な記録媒体。   A computer-readable recording medium on which the security program according to claim 11 is recorded.
JP2007297658A 2007-11-16 2007-11-16 Semiconductor integrated circuit, security method, security program, and recording medium Expired - Fee Related JP5124244B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007297658A JP5124244B2 (en) 2007-11-16 2007-11-16 Semiconductor integrated circuit, security method, security program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007297658A JP5124244B2 (en) 2007-11-16 2007-11-16 Semiconductor integrated circuit, security method, security program, and recording medium

Publications (2)

Publication Number Publication Date
JP2009123051A JP2009123051A (en) 2009-06-04
JP5124244B2 true JP5124244B2 (en) 2013-01-23

Family

ID=40815118

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007297658A Expired - Fee Related JP5124244B2 (en) 2007-11-16 2007-11-16 Semiconductor integrated circuit, security method, security program, and recording medium

Country Status (1)

Country Link
JP (1) JP5124244B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10649656B2 (en) 2017-12-28 2020-05-12 Micron Technology, Inc. Techniques to update a trim parameter in non-volatile memory
JP7186829B1 (en) 2021-06-21 2022-12-09 三菱電機株式会社 CONTROLLER AND METHOD FOR MANUFACTURING CONTROLLER

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0293746A (en) * 1988-09-30 1990-04-04 Canon Inc Electronic equipment
JPH05159592A (en) * 1991-12-05 1993-06-25 Nec Corp Memory element with timer
JP2001077805A (en) * 1999-04-07 2001-03-23 Sony Corp Security device, memory device, data processor and method
US7444476B2 (en) * 2001-07-24 2008-10-28 Texas Instruments Incorporated System and method for code and data security in a semiconductor device
JP4041491B2 (en) * 2002-06-14 2008-01-30 松下電器産業株式会社 Semiconductor integrated circuit device, data storage verification device, and data storage verification method
JP4620395B2 (en) * 2004-07-01 2011-01-26 株式会社日立国際電気 Circuit configuration specific prevention method

Also Published As

Publication number Publication date
JP2009123051A (en) 2009-06-04

Similar Documents

Publication Publication Date Title
US20070101158A1 (en) Security region in a non-volatile memory
RU2296363C1 (en) Method and device for protecting software from unsanctioned usage
US8639946B2 (en) System and method of using a protected non-volatile memory
JP2006236064A (en) Memory control device and memory system
JP2003058426A (en) Integrated circuit, and its circuit constituting method and program
JP2000076133A (en) Security guarantee method for program data inside memory writable only once
US7076667B1 (en) Storage device having secure test process
US20120278632A1 (en) Method and apparatus for securing programming data of a programmable device
KR20110034631A (en) Method and apparatus for securing digital information on an integrated circuit during test operating modes
WO2019211385A1 (en) Cryptographic key distribution
JP4787273B2 (en) Secure memory card with life cycle phase
JP4591163B2 (en) Bus access control device
JP4686193B2 (en) Protection means with integrated chips
JP5124244B2 (en) Semiconductor integrated circuit, security method, security program, and recording medium
US20090327750A1 (en) Security system for code dump protection and method thereof
JP2009025907A (en) Semiconductor integrated circuit device and signal processing method therefor
JP2008040585A (en) Microcomputer
US11509461B2 (en) System and method for obfuscating opcode commands in a semiconductor device
US8707443B2 (en) Circuit with testable circuit coupled to privileged information supply circuit
JP2008152421A (en) Semiconductor integrated circuit
JP2009506416A (en) Processor hardware and software
JP5798007B2 (en) Microcomputer and data processing apparatus
US20070247182A1 (en) Protection of security key information
JP2004362077A (en) Data conversion system
JP2005172866A (en) Encryption/decryption system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100903

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120928

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: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121029

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5124244

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees