JP2795234B2 - 半導体集積回路 - Google Patents

半導体集積回路

Info

Publication number
JP2795234B2
JP2795234B2 JP26693595A JP26693595A JP2795234B2 JP 2795234 B2 JP2795234 B2 JP 2795234B2 JP 26693595 A JP26693595 A JP 26693595A JP 26693595 A JP26693595 A JP 26693595A JP 2795234 B2 JP2795234 B2 JP 2795234B2
Authority
JP
Japan
Prior art keywords
circuit
instruction
signal
bus
semiconductor integrated
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
JP26693595A
Other languages
English (en)
Other versions
JPH09114742A (ja
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP26693595A priority Critical patent/JP2795234B2/ja
Publication of JPH09114742A publication Critical patent/JPH09114742A/ja
Application granted granted Critical
Publication of JP2795234B2 publication Critical patent/JP2795234B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Static Random-Access Memory (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は半導体集積回路に関
し、特に第三者による違法コピーを防止するコピーガー
ド機能を有する半導体集積回路に関する。
【0002】
【従来の技術】近年、半導体集積回路の用途は広く産業
用から家庭電化製品、さらに家庭用ホームゲーム機にま
で進出しておりその数量は膨大なものになっている。一
方、開発に要する人的リソースおよびマシンパワーは非
常に大きく、多くの経営資源を投入しなければならなく
なっている。
【0003】しかしながら、良く知られているように、
半導体集積回路はシリコンチップ表面に回路パターンが
描かれており、その道の専門家が見れば容易に回路構成
を判読できる。例えば、比較的小規模の半導体集積回路
の場合は数週間で回路構成を解読できる。これにより第
三者はこの半導体回路を容易にコピーできる。換言すれ
ば、開発先行者利益が正当に評価されずに、故意に上記
第三者が類似の製品を作れるわけである。
【0004】さらに、近年100万素子を超える半導体
集積回路が出てきており300万素子に迫るものもあ
る。また、半導体プロセスも微細化しており、配線層に
至っては3層化が始まっている。しかし、基本的には平
面上に回路が構成されている以上回路構成の解読は可能
である。
【0005】これらの対策のため、半導体開発者は有る
程度のコピー防止を行うための回路すなわちコピーガー
ド機能を備えるようになってきている。これは、仮にそ
のままコピーされたとしても、誤動作させるようにした
ものである。その1つにスクランブル方式がある。
【0006】このスクランブル方式のコピーガード機能
を有する従来の半導体集積回路をブロックで示す図5を
参照すると、この従来の半導体集積回路は、外部端子お
よびI/Oバッファ部とその制御回路とを含み外部との
入出力インタフエース用のI/Oインタフエース1と、
内部回路2と、一部が入替え操作(スクランブル)され
た内部システムバス3とを備える。
【0007】次に、図5を参照して、従来の半導体集積
回路の動作について説明すると、まず、内部システムバ
ス3の入替え操作すなわちスクランブルSBは任意の配
線を交換するもので、図5では隣同志を交換している
が、それ以外の組合わせでも可能である。第三者が故意
に回路構成をコピーしそのまま半導体集積回路を作って
も、内部システムバス3のスクランブルSBの存在のた
め、既知の正しい命令コードをI/Oインタフエース1
から入力しても内部回路2は正しい命令コードと判断で
きないため、正しい動作ができない。
【0008】この回路はスクランブルSBの機能で、確
かに不正コピーを行う第三者が解析時間を余分に掛ける
必要を生ずるという効果はある。しかしながら、この内
部システムバスをスクランブル操作しても、第三者の対
抗策は存在する。例えば、命令コードの特異性に目をつ
けたもので、スクランブル操作に影響を受けない命令コ
ード、例えば、FFF・・・・FFHとか000・・・・00H
などを探し出すことである。
【0009】このような命令コードがあれば、全てのビ
ットのバイナリーコードは同一であり、そのコードを多
量に処理させればアドレス出力信号を着目することによ
って、比較的簡単にスクランブル操作の内容が第三者に
分かる。通常0000・・・・・00HはNoop(No
Operation)に割当てられていることが多い。
このNoop命令を多量に流せばプロセッサに悪影響を
与えずに所望のアドレス情報を上記プロセッサから得る
ことができる。
【0010】すなわち、通常のプロセッサ等ではアドレ
スが逐次インクリメント方式のため、順次決定したアド
レスを累算しながら出力する。この規則にしたがえば、
多量の命令(この場合Noop命令)を処理させれば、
どこかの時点においてアドレスの不正な並びが判明しそ
れを基にスクランブル方式の内容が第三者に分かってし
まう。
【0011】
【発明が解決しようとする課題】上述した従来の半導体
集積回路は、内部システムバスをスクランブル操作して
もNoop命令等の特定の命令を処理させることによ
り、上記スクランブル操作の内容を解読できるので、完
全なコピー防止ができないという欠点があった。
【0012】本発明の目的は、第三者による違法なコピ
ーを防止し、違法な方法で作った半導体集積回路の第三
者による市場投入を困難にさせ、先行者利益を確保可能
とする半導体集積回路を提供することにある。
【0013】
【課題を解決するための手段】本発明の半導体集積回路
は、外部端子およびI/Oバッファ部とその制御回路と
を含み外部との入出力インタフエース用のI/Oインタ
フエース回路と、コピーのための不正操作に対する保護
対象の内部回路と、前記I/Oインタフエース回路と前
記内部回路との間を接続し一部が入替え操作された内部
システムバスとを備える半導体集積回路において、前記
内部システムバス上の命令を監視し前記不正操作を予め
定めた特定命令の命令コードの配列状態から判定して前
記内部回路を異常動作させる解読防止回路を備え、前記
解読防止回路が、前記特定命令をデコードしデコード信
号を出力する命令デコーダと、 予め定めたカウント設定
値を格納した定数レジスタと、 前記デコード信号をカウ
ントしカウント値を出力するカウンタと、 前記カウント
設定値と前記カウント値とを比較し一致を検出して一致
信号を出力する比較回路と、 前記一致信号の供給に応答
して前記内部システムバスの少なくとも予め定めた一部
の伝送路を無効化するバス制御信号を発生するバス制御
回路とを備えて構成されている。
【0014】
【発明の実施の形態】次に、本発明の第1の実施の形態
を図5と共通の構成要素には共通の参照文字/数字を付
して同様にブロックで示す図1を参照すると、この図に
示す本実施の形態の半導体集積回路は、従来と共通のI
/Oインタフエース1と、内部回路2と、システムバス
3とに加えて、コピーのための不正操作を特定の命令群
の配列状態から判定して内部回路を暴走させる解読防止
回路4をさらに備える。
【0015】解読防止回路4は、予め定めた特定命令を
デコードしデコード信号Dを出力する命令デコーダ5
と、カウンタ9のカウント設定値Mを格納した定数レジ
スタ6と、制御信号Cの供給に応答してバス制御信号B
を発生するバス制御回路7と、バス制御信号Bに応答し
て内部システムバス3を接地するよう駆動するバスドラ
イバ8と、デコード信号Dをカウントしカウント値Nを
出力するカウンタ9と、カウント設定値Mとカウント値
Nとを比較し一致信号Pを出力する比較回路10と、命
令フエッチタイミング信号Fと命令シーケンス信号Qと
に加えて一致信号Pの供給に応答してバス制御信号Cを
出力する制御回路11とを備える。
【0016】次に、図1を参照して本実施の形態の動作
について説明すると、まず、命令デコーダ5は、制御回
路11からの命令フェッチタイミング信号Fの供給に応
答してI/Oインタフエース1から供給される内部シス
テムバス3上の命令Iを取込み、この命令Iが開発者が
予め決めた特定命令であればデコードして論理1のデコ
ード信号Dを出力し、カウンタ9に供給する。通常この
命令フェッチタイミング信号Fはすでに内在する信号で
あり、新たに論理を組んで作る必要は無い。ここで、カ
ウンタ9がインクリメントされるタイミングは命令フェ
ッチタイミング信号Fと命令シーケンス信号Qのいずれ
でも良いが、説明の便宜上、本実施の形態では命令シー
ケンス信号Qとする。
【0017】カウンタ9はデコード信号Dをカウントし
カウント値Nを出力する。比較回路10は常時カウント
値Nとカウント設定値Mとを比較し、両値M,Nが一致
すれば一致信号Pを制御回路11に伝達する。制御回路
11は、一致信号Pの供給に応答して制御信号Cをバス
制御回路7に出力する。バス制御回路7は、制御信号C
の供給に応答してバス制御信号Bをアクティブとし、こ
のバス制御信号Bのアクテイブ化に応答してバスドライ
バ8はアクティブ化して接続対象の内部システムバス3
を接地する。これにより、内部回路2の動作を強制的に
無効化する。
【0018】すなわち、一致信号Pの発生時点において
外部からどのような命令コードを供給しても常にバスド
ライバ8が接続した内部システムバス3は接地状態とさ
れるので内部回路2の動作が命令コードとは異なる振舞
をしてしまう。
【0019】この場合、バスドライバ8は上記接地の代
りに電源レベルにプルアップしても良い。通常、接地レ
ベルにドライブする方がトランジスタサイズも小さくで
き効果が大きいので、本実施の形態では、接地レベルに
駆動する方法で説明している。
【0020】また、上述の動作において、命令Iが特定
命令でない場合は、デコード信号Dは論理0であるの
で、カウンタ9をリセットし、カウント値Nを0とす
る。
【0021】命令デコーダ5の詳細を示す図2を参照す
ると、特定命令の命令コードIと同一の参照コードを格
納した参照レジスタ51と、入力命令コードIと参照コ
ードKの各ビットの論理和をとる2入力のORゲートか
ら成るOR回路52と、OR回路52の各出力の否定論
理和をとるNOR回路53と、命令フェッチタイミング
信号FでNOR回路53の出力をラッチしデコード信号
Dを出力するラッチ回路54とを備える。
【0022】図2を参照して命令デコーダ5の動作につ
いて説明すると、まず、説明の便宜上、Noop命令を
00・・・00Hとする。参照レジスタ51は、参照コ
ードK=00・・00Hを格納している。したがって、
この参照レジスタ51は、全てのビット対応の信号線を
接地レベルとしても構成できる。参照コードKはOR回
路52の各ビットのゲートの一方に入力されている。一
方、OR回路52の各ゲートの他方の入力にはI/Oイ
ンタフエース1を経由して内部システムバス3から供給
される命令Iのコードが供給されている。OR回路52
の各ゲートはこれら命令I,Kの各ビットの論理和をと
りこれら各ゲートの出力を全て次段のNOR回路53に
供給する。次に、ラッチ回路54は、命令フェッチタイ
ミング信号Fの供給に応答してNOR回路53の出力を
取込む。すなわちこの命令デコーダ5は、命令フェッチ
タイミングF毎に命令コードIがNoop命令であるか
否かを参照コードKと比較することにより判定してい
る。コードI,Kが同一ならばNOR回路53の出力は
論理1となり、この論理1をラッチ回路54に取込み、
デコード信号Dとして出力する。また、コードI,Kが
相違していれば、NOR回路53の出力は論理0とな
り、この論理0をラッチ回路54に取込み、デコード信
号Dとして出力する。
【0023】また、内部回路2の動作におけるWait
時,待機,Halt時など一時動作停止を伴なう場合
は、通常Noop命令を反復する場合が多いので、不正
操作と判定することがないよう上記制御を禁止する。
【0024】これにより、故意にNoop命令を用いて
スクランブル方式の解析を行おうとする場合に半導体集
積回路を動作不能にさせることできる。
【0025】次に、本発明の第2の実施の形態を図1と
共通の構成要素には共通の参照文字/数字を付して同様
にブロックで示す図3を参照すると、本実施の形態の前
述の第1の実施の形態との相違点は、I/Oインタフエ
ース1の代りにバス制御信号BAの制御に応答してI/
O動作を禁止する禁止回路11を備えるI/Oインタフ
エース1Aと、解読防止回路4の代りに禁止回路111
の制御用のバス制御信号BAを出力するバス制御回路7
Aを備える解読防止回路4Aを備えることである。
【0026】これにより、故意にNoop命令を用いて
スクランブル方式の解析を行おうとする場合に、I/O
インタフエース1Aを動作不能にし、外部からのデータ
交換および内部システムバス3へのデータ転送を禁止す
る。その他の動作は第1の実施の形態と同一である。
【0027】禁止回路111の構成を回路図で示す図4
を参照すると、各々の入出端子を共通接続したゲート付
のバッフア回路G11,G12と、I/O制御信号CI
とバス制御信号BAの反転信号との論理積をとるAND
回路A11,A12とを備え、バス制御信号BAのアク
ティブ(’1’)に応答してバッフア回路G11,G1
2をインアクティブにする。
【0028】
【発明の効果】以上説明したように、本発明の半導体集
積回路は、内部システムバス上の命令を監視しコピーの
ための不正操作を予め定めた特定命令の命令コードの配
列状態から判定して内部回路を異常動作させる解読防止
回路を備えるので、第三者が故意に半導体集積回路を解
析し違法なコピー半導体集積回路の生産を意図しても、
正常動作を不能とすることによりコピー行為を防止し、
オリジナルの開発者に対する先行者利益を十分確保する
ことができるという効果がある。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の第1の実施の形態を
示すブロック図である。
【図2】本実施の形態の半導体集積回路の命令デコーダ
の構成を示すブロック図である。
【図3】本発明の半導体集積回路の第2の実施の形態を
示すブロック図である。
【図4】本実施の形態の半導体集積回路の禁止回路の構
成を示すブロック図である。
【図5】従来の半導体集積回路の一例を示すブロック図
である。
【符号の説明】
1 I/Oインタフエース 2 内部回路 3 内部システムバス 4,4A 解読防止回路 5 命令デコーダ 6 定数レジスタ 7,7A バス制御回路 8 バスドライバ 9 カウンタ 10 比較回路 11 制御回路 111 禁止回路 51 参照レジスタ 52 OR回路 53 NOR回路 54 ラッチ回路 G11,G12 バッフア回路 A11,A12 AND回路

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 外部端子およびI/Oバッファ部とその
    制御回路とを含み外部との入出力インタフエース用のI
    /Oインタフエース回路と、コピーのための不正操作に
    対する保護対象の内部回路と、前記I/Oインタフエー
    ス回路と前記内部回路との間を接続し一部が入替え操作
    された内部システムバスとを備える半導体集積回路にお
    いて、 前記内部システムバス上の命令を監視し前記不正操作を
    予め定めた特定命令の命令コードの配列状態から判定し
    て前記内部回路を異常動作させる解読防止回路を備え 前記解読防止回路が、前記特定命令をデコードしデコー
    ド信号を出力する命令デコーダと、 予め定めたカウント設定値を格納した定数レジスタと、 前記デコード信号をカウントしカウント値を出力するカ
    ウンタと、 前記カウント設定値と前記カウント値とを比較し一致を
    検出して一致信号を出力する比較回路と、 前記一致信号の供給に応答して前記内部システムバスの
    少なくとも予め定めた一部の伝送路を無効化するバス制
    御信号を発生するバス制御回路とを備える ことを特徴と
    する半導体集積回路。
  2. 【請求項2】 前記特定命令の命令コードが、予め定め
    たビット数の0からなるノーオペレーシヨン命令のコー
    ドであり、 前記命令デコーダが、前記特定命令の命令コードと同一
    の参照コードを格納した参照レジスタと、 前記特定命令コードと前記参照コードとの各ビットの論
    理和をとる前記ビット数の2入力のORゲートから成る
    OR回路と、 前記OR回路の各々のORゲート出力の否定論理和をと
    るNOR回路と、 命令フェッチタイミング信号で前記NOR回路の出力を
    ラッチし前記デコード信号を出力するラッチ回路とを備
    えることを特徴とする請求項1記載の半導体集積回路。
  3. 【請求項3】 前記バス制御回路が、前記一致信号の供
    給に応答して前記内部システムバスの前記伝送路を接地
    するバスドライバを備えることを特徴とする請求項
    載の半導体集積回路。
  4. 【請求項4】 前記I/Oインタフエース回路が、前記
    バス制御信号の供給に応答して前記内部システムバスの
    前記伝送路を無効化する無効化回路を備えることを備え
    ることを特徴とする請求項1記載の半導体集積回路。
JP26693595A 1995-10-16 1995-10-16 半導体集積回路 Expired - Fee Related JP2795234B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26693595A JP2795234B2 (ja) 1995-10-16 1995-10-16 半導体集積回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26693595A JP2795234B2 (ja) 1995-10-16 1995-10-16 半導体集積回路

Publications (2)

Publication Number Publication Date
JPH09114742A JPH09114742A (ja) 1997-05-02
JP2795234B2 true JP2795234B2 (ja) 1998-09-10

Family

ID=17437736

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26693595A Expired - Fee Related JP2795234B2 (ja) 1995-10-16 1995-10-16 半導体集積回路

Country Status (1)

Country Link
JP (1) JP2795234B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4766516A (en) * 1987-09-24 1988-08-23 Hughes Aircraft Company Method and apparatus for securing integrated circuits from unauthorized copying and use
JPH01173244A (ja) * 1987-12-28 1989-07-07 Ricoh Co Ltd コピー防止rom回路
JPH0528049A (ja) * 1991-07-19 1993-02-05 Mitsubishi Electric Corp マイクロコンピユータ
JPH06230958A (ja) * 1993-01-29 1994-08-19 Mitsubishi Electric Corp プロセッサ

Also Published As

Publication number Publication date
JPH09114742A (ja) 1997-05-02

Similar Documents

Publication Publication Date Title
US5812662A (en) Method and apparatus to protect computer software
US6308256B1 (en) Secure execution of program instructions provided by network interactions with processor
TWI397859B (zh) 提供安全執行環境之裝置、微處理器裝置、以及在安全執行環境中執行安全編碼之方法
TWI395138B (zh) 提供安全執行環境之裝置、微處理器裝置、以及在安全執行環境中執行安全編碼之方法
US6757831B1 (en) Logic block used to check instruction buffer configuration
US6609201B1 (en) Secure program execution using instruction buffer interdependencies
WO1981002351A1 (en) Digital computer
EP0112367A1 (en) Software protection methods and apparatus
US6598166B1 (en) Microprocessor in which logic changes during execution
US6665796B1 (en) Microprocessor instruction result obfuscation
US7353400B1 (en) Secure program execution depending on predictable error correction
JP2795234B2 (ja) 半導体集積回路
US5761609A (en) Limited use circuit
US20030028780A1 (en) Software controlled device
JP2009506416A (ja) プロセッサハードウェアおよびソフトウェア
JP2002341956A (ja) 情報処理半導体装置、デバッグ許可鍵装置および情報処理半導体システム
JPS61173341A (ja) マイクロコンピユ−タ−における防護プログラムを不正使用から防護するための方法とその装置
CA1194609A (en) Software protection methods and apparatus
JP2003233536A (ja) データ処理装置
KR20000032464A (ko) 프로그램 복제 방지장치 및 방법

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980526

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

Free format text: PAYMENT UNTIL: 20080626

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090626

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100626

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20100626

Year of fee payment: 12

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20100626

Year of fee payment: 12

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100626

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110626

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20140626

Year of fee payment: 16

LAPS Cancellation because of no payment of annual fees