(57)【要約】【課題】チップ固有のＩＤ番号のような識別情報をセキュリティー向上に貢献させる。【解決手段】識別情報生成回路（１７）は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成する。インタフェースコントローラ（７）は、前記複数ビットの情報と送信データとを合成し且つ暗号化して前記外部インタフェース回路に供給する。前記複数ビットの情報は識別回路要素の論理閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、プログラム可能な記憶素子を新たに用いる時に必要な製造工程の追加や変更を要しない。外部からの番号設定を要しないという点で、セキュリティー向上にも役立つ。【選択図】        図１
2004327883.tif 000002
【特許請求の範囲】
【請求項１】
半導体基板に、識別情報生成回路、インタフェースコントローラ、及び外部インタフェース回路を有し、
前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成し、
前記インタフェースコントローラは、前記複数ビットの情報と送信データとを合成し且つ暗号化して前記外部インタフェース回路に供給することを特徴とする半導体集積回路。
【請求項２】
前記インタフェースコントローラは、外部インタフェース回路から入力される受信情報を復号し、且つ復号したデータから前記複数ビットの情報を分離して受信データを取り出すことを特徴とする請求項１記載の半導体集積回路。
【請求項３】
半導体基板に、識別情報生成回路、外部インタフェース回路、照合回路、及びリセット制御回路を有し、
前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成し、
前記リセット制御回路は、前記複数ビットの情報と前記外部インタフェース回路から入力される情報とを照合し、所定の論理回路に対する論理動作のスタート条件として前記照合による照合誤差が規定以下であることを設定可能にされることを特徴とする半導体集積回路。
【請求項４】
前記所定の論理回路は中央処理装置であることを特徴とする請求項３記載の半導体集積回路。
【請求項５】
前記半導体集積回路は通信端末装置に搭載されるマイクロコンピュータであることを特徴とする請求項４記載の半導体集積回路。
【請求項６】
所定動作モードの設定に応答して前記複数ビットの情報を半導体集積回路の識別情報として前記外部インタフェース回路から外部に出力することを可能にする制御回路を有することを特徴とする請求項１又は３記載の半導体集積回路。
【請求項７】
前記外部インタフェース回路は識別情報生成回路とその他の回路の外部入出力に兼用されることを特徴とする請求項６記載の半導体集積回路。
【請求項８】
前記識別回路要素は入力と出力が接続されたインバータであり、識別情報生成回路は、相互に異なるインバータの論理閾値電圧を順次比較して得られる比較結果の組合わせによって前記複数ビットの情報を生成することを特徴とする請求項１又は３記載の半導体集積回路。
【請求項９】
半導体基板に、外部インタフェース回路、識別情報生成回路、及び制御回路とを含み、
前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成し、
前記制御回路は、所定動作モードの指定に応答して前記複数ビットの情報を半導体集積回路の識別情報として前記外部インタフェース回路から出力することを特徴とする半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、固有の識別情報を生成可能な半導体集積回路における当該識別情報を利用する技術に関し、例えばマイクロコンピュータ応用システムにおけるセキュリティー向上などに適用して有効な技術に関する。
【０００２】
【従来の技術】
半導体集積回路にチップ固有の識別情報例えばＩＤ番号を生成する技術が提供されている（特許文献１、特許文献２参照）。例えば特許文献１には、複数個のＣＭＯＳインバータの閾値電圧差のばらつきを利用してチップ固有のＩＤ番号を生成する技術が示される。ここでは、そのＩＤ番号の利用形態として、半導体集積回路のプローブ検査において識別番号発生回路によるＩＤ番号、ロット名、ウェーハ番号、及びチップ番号をデータベースに登録することが記載され（特許文献１の明細書第８９頁）、また、半導体集積回路に不良が発生したとき、固有のＩＤ番号を元に製造履歴を読み出し不良解析を行なって、必要に応じて製造工程にフィードバックさせることについて記載がある（特許文献１の明細書第１０５頁）。
【０００３】
【特許文献１】
国際公開第０２／４５１３９号パンフレット
【特許文献２】
米国特許第６１６１２１３号明細書
【０００４】
【発明が解決しようとする課題】
本発明者はチップ固有のＩＤ番号のような識別情報を半導体集積回路内部のデータ処理にも用いることについて検討した。特に、識別回路要素の閾値電圧のばらつきに従って自立的に生成されるＩＤ番号に関しては外部からの番号設定を要しないから、セキュリティー向上等に役立つことに着目した。
【０００５】
本発明の目的は、チップ固有のＩＤ番号のような識別情報を内部のデータ処理にも用いることができる半導体集積回路を提供することにある。
【０００６】
本発明の別の目的は、チップ固有のＩＤ番号のような識別情報をセキュリティー向上に貢献させることができる半導体集積回路を提供することにある。
【０００７】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【０００８】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００９】
〔１〕本発明に係る半導体集積回路は、半導体基板に、識別情報生成回路（１７）、インタフェースコントローラ（７，８）、及び外部インタフェース回路（１１ｅ）を有する。前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素（ＩＮＶ１〜ＩＮＶ４）を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成する。前記インタフェースコントローラは、前記複数ビットの情報と送信データとを合成し且つ暗号化して前記外部インタフェース回路に供給する。
【００１０】
前記複数ビットの情報は識別回路要素の論理閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、プログラム可能な記憶素子を新たに用いる場合に必要な製造工程の追加や変更を要しない。合成のための複数ビットの生成に乱数発生回路などを必要としない。
【００１１】
同種の半導体集積回路から送信されるデータの受信に対処するには、前記インタフェースコントローラは、外部インタフェース回路から入力される受信情報を復号し、且つ復号したデータから前記複数ビットの情報を分離して受信データを取り出し分離可能であることが望ましい。
【００１２】
〔２〕本発明の別の観点による半導体集積回路は、半導体基板に、識別情報生成回路（１７）、外部インタフェース回路（１１ａ）、照合回路、及びリセット制御回路（１４）を有する。前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成する。前記リセット制御回路は前記複数ビットの情報と前記外部インタフェース回路に入力される情報とを照合し、所定の論理回路に対する論理動作のスタート条件として前記照合による照合誤差が規定以下であることを設定可能にされる。
【００１３】
前記複数ビットの情報は識別回路要素の閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、半導体集積回路による制御システムのセキュリティー向上若しくは当該システムに対する不正使用の抑制に役立つ。
【００１４】
本発明の具体的な形態として、前記所定の論理回路は例えば中央処理装置である。前記半導体集積回路は通信端末装置に搭載されるマイクロコンピュータであり、通信端末の不正使用を抑制することができる。
【００１５】
上記発明の具体的な形態として、所定動作モードの設定に応答して前記複数ビットの情報を半導体集積回路の識別情報として前記外部インタフェース回路から外部に出力することを可能にする制御回路（４４、４０）を有する。前記複数ビットの情報が容易に盗み取られる事態を防止しながら、外部にコピーでき、前記照合によるリセット制御のために前記複数ビットの情報を外部から入力可能になる。
【００１６】
回路規模の増大を抑えるには、前記外部インタフェース回路は識別情報生成回路とその他の回路の外部入出力に兼用されることが望ましい。
【００１７】
本発明の具体的な形態として、前記識別回路要素は入力と出力が接続されたインバータであり、識別情報生成回路は、相互に異なるインバータの論理閾値電圧を順次比較して得られる比較結果の組合わせによって前記複数ビットの情報を生成する。
【００１８】
〔３〕本発明の更に別の観点による半導体集積回路は、半導体基板に、外部インタフェース回路（１１ｉ）、識別情報生成回路（１７）、及び制御回路とを含む。前記識別情報生成回路は、相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素を複数個有し、複数個の識別回路要素相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成する。前記制御回路は、所定動作モードの指定に応答して前記複数ビットの情報を半導体集積回路の識別情報として前記外部インタフェース回路から出力する。
【００１９】
【発明の実施の形態】
《マイクロコンピュータ》
図１には本発明の一例に係るマイクロコンピュータが示される。同図に示されるマイクロコンピュータ１は、例えば相補型ＭＯＳ（ＣＭＯＳ）集積回路製造技術によって単結晶シリコンのような１個の半導体基板（半導体チップ）に形成される。
【００２０】
マイクロコンピュータ１は、全体の制御を司る中央処理装置（ＣＰＵ）２、割込コントローラ（ＩＮＴ）３、主にＣＰＵ２のＯＳ（オペレーティングシステム）等の処理プログラムなどを格納する不揮発性メモリであるＲＯＭ４、主に、ＣＰＵ２の作業領域並びにデータの一時記憶用のメモリであるＲＡＭ５、ＣＰＵ２の処理プログラム及び救済情報等を電気的に消去及び書き込み可能に格納する不揮発性メモリであるフラッシュメモリ６、送信回路７、受信回路８、アナログディジタル変換器（Ａ／Ｄ）９、ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）１０、入出力ポート（Ｉ／Ｏポート）１１ａ〜１１ｉ、クロック発振器（ＣＰＧ）１２、電源回路１３、システムコントローラ１４、メモリカードコントローラ１５、識別情報生成回路（ＵＬＩＤ）１７、及びユーザデバッグインタフェース回路（ＵＤＩ）１８の機能ブロック乃至はモジュールを有する。
【００２１】
前記マイクロコンピュータ１は、外部電源端子として、グランドレベル（ＶＳＳ）、電源電圧レベル（ＶＤＤ）、アナロググランドレベル（ＡＶＳＳ）、アナログ電源電圧レベル（ＡＶＤＤ）の電源端子、その他の専用制御端子として、リセット（ＲＥＳ）、スタンバイ（ＳＴＢＹ）、モード制御（ＭＤ０、ＭＤ１、ＭＤ２）、クロック入力（ＥＸＴＡＬ、ＸＴＡＬ）の各端子を有する。
【００２２】
マイクロコンピュータ１は、ＣＰＧ１２の端子ＥＸＴＡＬ、ＸＴＡＬに接続される水晶発振子またはＥＸＴＡＬ端子に入力される外部クロックに基づいて生成される基準クロック信号（システムクロック）φに同期して動作を行う。この基準クロック信号φの１周期をステートと呼ぶ。
【００２３】
マイクロコンピュータ１の機能ブロックは、内部バス１６によって相互に接続される。図示はされないがバスの制御を行うバスコントローラが設けられている。内部バス１６はアドレスバス（ＡＢＵＳ）、データバス（ＤＢＵＳ）の他、リード信号・ライト信号・バスサイズ信号をエンコードしたバスコマンドが伝達されるコントロールバスを含む。
【００２４】
前記機能ブロックやモジュールは内部バス１６を介して、ＣＰＵ２によってリード／ライトさる。内部バス１６のデータバス幅は３２ビットとする。内蔵ＲＯＭ４やＲＡＭ５のリード／ライトは１ステートで可能にされる。
【００２５】
なお、Ａ／Ｄ変換器９、入出力ポート（ＩＯＰ）１１ａ〜１１ｉ、電源回路１３、システムコントローラ１４、メモリカードコントローラ１５、送信回路７及び受信回路８が有する制御レジスタを総称して、内部Ｉ／Ｏレジスタと呼ぶ。前記入出力ポート１１ａ〜１１ｉは、アドレスバス、データバス、及びコントロールバス（制御信号バス）に接続され、あるいは送信回路７、受信回路８、メモリカードコントローラ１５、Ａ／Ｄ変換器９の入出力端子と一部兼用され、更にシステムコントローラへ１４の入力端子と一部兼用される。
【００２６】
ＣＰＵ２は、図示を省略する命令制御部と実行部を有する。命令制御部は命令フェッチを制御し、フェッチした命令をデコードする。実行部は命令のデコード結果にしたがってオペランドアクセスや算術論理演算処理などを行なって命令を実行する。
【００２７】
割込みコントローラ３は前記送信回路７、受信回路８、Ａ／Ｄ９等からの割込み信号やマイクロコンピュータ１の外部から与えられる割込み信号を入力し、それらに対する優先制御やマスク制御を行なって、ＣＰＵ２に割り込みを要求する。割込みが要求されたＣＰＵ２は、実行途中の命令実行を完了して割込み要因に応じた処理に分岐する。割込み要因に応じた処理の最後に例えば復帰命令を実行し、分岐前の処理に復帰して、途中で中断した処理を再開する。
【００２８】
電源回路１３は、例えば外部端子より供給される３．３Ｖの電源（ＶＤＤ＝３．３Ｖ、ＶＳＳ＝０Ｖ）を降圧して、１．５Ｖの内部電源（ｖｄｄ＝１．５Ｖ、ｖｓｓ＝０Ｖ）をチップ内に供給する。さらに電源回路１３は、基板バイアスを印加するための基板電源としての基板バイアス電圧等も生成する。
【００２９】
マイクロコンピュータ１に与えられるリセット信号ＲＥＳがローレベルに変化されると、ＣＰＵ２等のオンチップ回路モジュールはリセット状態とされる。このリセット状態が解除されると、ＣＰＵ２は所定の制御プログラムのスタートアドレスから命令をフェッチし、プログラムの実行を開始する。
【００３０】
前記フラッシュメモリ６は、電気的な消去・書込みによって情報を書換え可能であって、ＥＰＲＯＭと同様にそのメモリセルを１個のトランジスタで構成することができ、更にメモリセルの全てを一括して、またはメモリセルのブロック（メモリブロック）を一括して電気的に消去する機能を持つ。フラッシュメモリ６は、マイクロコンピュータ１がシステムに実装された状態でＣＰＵ２の制御に基づいてその記憶情報を書換え可能にされると共に、汎用ＰＲＯＭライタのような外部書き込み装置の制御に基づいてその記憶情報を書換え可能にされる。
【００３１】
ＵＤＩ１８はデバッグ情報を所定の入出力ポート１１ｉを介して外部に出力可能にする、一つのデバッグサポート機能を実現する。
【００３２】
ＵＬＩＤ１７は相互に同じ回路素子によって構成され論理閾値電圧を有する識別回路要素例えばＣＭＯＳインバータを複数個有し、複数個のＣＭＯＳインバータ相互間の閾値電圧のばらつきに応じた複数ビットの情報を生成する。マイクロコンピュータはその複数ビットの情報（チップＩＤ情報とも称する）を以下の形態で利用可能にする。第１に、システムコントローラ（制御回路）１４は、所定動作モードの指定に応答して前記チップＩＤ情報をマイクロコンピュータの識別情報としてＩＯポート１１ｉ（外部インタフェース回路）から出力することを可能にする。第２に、前記システムコントローラ１４は、前記チップＩＤ情報とＩＯポート１１ａ（入力回路）に外部から入力される情報とを照合し、所定の論理回路例えばＣＰＵ２に対する論理動作のスタート条件として前記照合回路による照合誤差が規定以下であることを指定可能にされる。これを指定することにより、ＣＰＵ２のリセットスタートにはそのマイクロコンピュータのチップＩＤ情報の投入が必要になる。その指定には例えば不揮発性レジスタの制御ビットを用いることができる。動作後、前記制御ビットをクリアしたりすれば、その指定は解除可能である。第３に、前記送信回路（インタフェースコントローラ）は、チップＩＤ情報と送信データとを合成し且つ暗号化してＩＯポート（外部インタフェース回路）１１ｅに供給する。
【００３３】
《チップＩＤ情報の取得》
図２には識別情報生成回路１７の原理的な回路構成が例示される。前記識別情報生成回路１７は、代表的に示された４個のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４を有する。ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４は、マイクロコンピュータ１の設計上及び製造上では、現実的に制御可能な範囲において相互に同じ特性を持つようにされる。ここで特性とはＣＭＯＳインバータの論理閾値電圧である。一般に半導体集積回路の製造ばらつきによる電気的特性への影響は異なったサイズの素子に対しては異なったものとなる。４個のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４を構成するｎチャンネル型ＭＯＳトランジスタ、ｐチャンネル型ＭＯＳトランジスタのサイズはＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４相互間で等しく設計されている。ＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４を構成するＭＯＳトランジスタは、同じ回路素子は同じプロセスの元で一括して製造され、加工寸法ばらつき、各種絶縁層や導電層の膜厚のばらつき、不純物濃度のばらつき、等のばらつきによる影響を均等に受けるようにされる。実際には、ＭＯＳトランジスタ特性に僅かな違いが存在する。これによって、前記インバータＩＮＶ１〜ＩＮＶ４の入出力短絡ノードの電位即ち論理閾値電圧に差を生ずる。ＭＯＳトランジスタ特性の上記ミクロ的なばらつきは比較的近接したトランジスタ間にランダムに発生する。したがって、インバータＩＮＶ１〜ＩＮＶ４の論理閾値電圧もランダムにばらつく。
【００３４】
個々のＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４には夫々４個のスイッチＡｉ、Ｂｉ、Ｃｉ、Ｄｉが設けられる（ｉ＝１〜４）。スイッチＡｉとＢｉは連動してスイッチ動作を行ない、スイッチＣｉとＤｉは連動してスイッチ動作を行なう。信号ＸｉはどのＣＭＯＳインバータをノードＰに接続するかを選択し、信号ＹｉはどのインバータをノードＰとノードＰＰに接続するかを選択する。信号Ｘｉは何れか一つが選択レベル（残りが非選択レベル）にされ、信号Ｙｉは何れか一つが選択レベル（残りが非選択レベル）にされる。選択の組み合わせは、（Ｙ１，Ｘ２）、（Ｙ１，Ｘ３）、（Ｙ１，Ｘ４）、（Ｙ２，Ｘ１）、（Ｙ２，Ｘ３）、（Ｙ２，Ｘ４）、（Ｙ３，Ｘ１）、（Ｙ３，Ｘ２）、（Ｙ３，Ｘ４）、（Ｙ４，Ｘ１）、（Ｙ４，Ｘ３）、（Ｙ４，Ｘ３）とされ、その選択論理はクロックに同期して計数動作を行なうバイナリカウンタ２０とその計数値をデコードするデコーダ２１によって実現される。ノードＰＰには２個のアンプＡＭＰ１，ＡＭＰ２が直列に接続される。バイナリカウンタ２０は内部リセット信号ｒｅｓのハイレベルへの変化にしたがって初期化される。
【００３５】
例えばＹ１とＸ２が選択されると、ノードＰの電位はインバータＩＮＶ１の論理閾値電圧になる。インバータＩＮＶ２の特性はインバータＩＮＶ１と僅かに相違される。インバータＩＮＶ１の論理閾値電圧をＶＬＴ１、インバータＩＮＶ２の論理閾値電圧をＶＬＴ２とするとき、ＶＬＴ１＜ＶＬＴ２の関係が有れば、ＰＰの電位＞ノードＰの電位、となる。ＶＬＴ１＞ＶＬＴ２の関係が有れば、ＰＰの電位＜ノードＰの電位、となる。
【００３６】
ＣＭＯＳインバータ回路は高利得の反転増幅器でもあり、その利得は動作点で変化し、入力電位がＣＭＯＳインバータ回路の論理閾値付近である状態で最大利得を得ることができる。一般にＣＭＯＳインバータの論理閾値付近での反転利得は数十から百倍である。よって例えばＣＭＯＳインバータＩＮＶ１とＣＭＯＳインバータＩＮＶ２の論理閾値電圧の差は後段のＣＭＯＳインバータＩＮＶ２によって増幅される。即ち、前段のＣＭＯＳインバータで発生された論理閾値電圧は、後段のＣＭＯＳインバータによる自身の論理閾値電圧を参照電圧として大小比較と増幅動作を行なう。さらに、その後段のアンプＡＭＰ１，ＡＭＰ２によっても増幅される。最終的に得られる出力ＯＵＴはＣＭＯＳ電源電圧振幅信号とされる。このように、ＸｉとＹｉの組み合わせに係る一つのスイッチ状態において、順次選択される２個のインバータ例えばＩＮＶ１とＩＮＶ２の論理閾値電圧の大小比較（正負符号）をＣＭＯＳ振幅信号で検出することができる。順次信号Ｘｉ，Ｙｉによるスイッチの選択状態を変えていくことにより全てのＣＭＯＳインバータＩＮＶ１〜ＩＮＶ４の相互比較結果を順次出力ＯＵＴに得ることができる。
【００３７】
上記４個のＣＭＯＳインバータ回路の論理閾値の順番（順列の数）は４Ｐ４＝４×３×２×１＝２４通りである。今４個のＣＭＯＳインバータを持つ識別情報発生回路が２個あったとすると、ＣＭＯＳインバータの論理閾値電圧の順番が同じである確率は約４．２％（＝１−２３／２４）である。１個の識別情報発生回路が１６個のＣＭＯＳインバータを持てば、論理閾値電圧の組合わせは１６×１５×…×２×１となり、ＣＭＯＳインバータの論理閾値電圧がランダムにばらつくとき、同じ並びかたのものはほとんど存在しないということになる。１６個のＣＭＯＳインバータによって構成する場合、比較結果は２５６通りであり、１個の比較結果出力が１ビット出力とされる。
【００３８】
図３には識別情報生成回路１７の全体的なブロック図が示される。同図に示される識別情報生成回路１７は識別情報生成ユニット（ＵＬＩＤ１）３１、識別情報生成ユニット（ＵＬＩＤ２）３２、識別情報生成ユニット（ＵＬＩＤ３）３３、識別情報生成ユニット（ＵＬＩＤ４）３４、制御論理（ＣＮＴ）３５、及び出力論理和ゲート（ＯＲ）３６を有する。識別情報生成ユニット３１〜３４は夫々図２の構成を有する。制御論理３５は前記クロック信号ＣＬＫ、内部リセット信号ｒｅｓ、モード信号ｍｏｄｅを入力する。内部リセット信号ｒｅｓは識別情報生成ユニット３１〜３４に共通に分配される。識別情報生成ユニット３１〜３４が夫々保有する前記バイナリカウンタ２０はオーバーフロー信号ＯＶＦ１、ＯＶＦ２，ＯＶＦ３，ＯＶＦ４を出力する。制御論理３５は、モード信号ｍｏｄｅにより読み出しモードが指定されているときは、クロック信号ＣＬＫの変化をクロック信号ＣＬＫ１により識別情報生成ユニット３１に供給し、オーバーフロー信号ＯＶＦ１が活性化されると、クロック信号ＣＬＫの変化をクロック信号ＣＬＫ２により識別情報生成ユニット３２に供給する。以後同様に、オーバーフロー信号ＯＶＦ２が活性化されると、クロック信号ＣＬＫの変化をクロック信号ＣＬＫ３により識別情報生成ユニット３３に供給し、オーバーフロー信号ＯＶＦ３が活性化されると、クロック信号ＣＬＫの変化をクロック信号ＣＬＫ４により識別情報生成ユニット３４に供給する。前記バイナリカウンタ２０はオーバーフローにより計数動作を停止する。制御論理３５はオーバーフロー信号ＯＶＦ１，ＯＶＦ２，ＯＶＦ３，又はＯＶＦ４が活性化されると、オーバーフロー信号ＯＶＦ１，ＯＶＦ２，ＯＶＦ３，又はＯＶＦ４を活性化した対応する識別情報生成ユニットに対するクロック信号の供給を停止する制御を行う。これにより、識別情報生成ユニット３１〜３４は順次前記比較増幅動作と出力動作を直列的に行なって、論理和ゲート３６から固有のチップＩＤ情報が出力される。モード信号ｍｏｄｅによりエージングモード（例えば高温・高電圧状態による加速試験）が指定されるときは、クロック信号ＣＬＫ１〜ＣＬＫ４はクロック信号ＣＬＫに同期して並列的に変化され、識別情報生成ユニット３１〜３４は並列動作される。マイクロコンピュータのエージングに利用される動作モードであり、論理和ゲート３６の出力はそもそも無視される。
【００３９】
特に制限されないが、前記識別情報生成ユニット３１、３２の比較出力は夫々２５６ビット、識別情報生成ユニット３３、３４の比較出力は夫々１０２４ビットとされる。特に図示はしないが、前記識別情報生成ユニット３１〜３４のうち一部だけを使用することが選択可能になっている。
【００４０】
《チップＩＤ情報の外部出力》
図４にはチップＩＤ情報の外部出力に関する構成が例示される。ここに示される構成は、先ず、チップＩＤ情報の外部出力端子はオンチップエミュレータ機能であるＵＤＩ用の外部端子と兼用され、ＩＯポート１１ｉには出力セレクタ４０が配置される。入力側の同様に、クロック信号及びモード信号のセレクタ４１，４２がＩＯポート１１ｉに配置され、リセット信号ＲＥＳのセレクタ４３がシステムコントローラ１４に配置される。前記セレクタ４０〜４３に対する選択制御信号４５はシステムコントローラ１４の選択制御回路４４で生成する。選択制御回路４４にはモード端子ＭＤ０〜ＭＤ２からの信号、所定のポート１１ａからの複数の信号が入力され、それら入力が規定の状態（ＵＬＩＤモード）になったとき、選択信号４５によりセレクタ４０〜４３の選択状態がＵＤＩ１８側から識別情報生成回路１７側に変更される。
【００４１】
ＵＬＩＤモードにおいて識別情報生成回路１７は、リセット信号ｒｅｓのハイレベルからローレベルへの変化後、クロック信号ＣＬＫに同期してチップＩＤ情報をセレクタ４０から外部に出力する。ＵＬＩＤモード以外（ＵＤＩモード）ではセレクタ４０〜４３の選択状態が識別情報生成回路１７からＵＤＩ１８側に変更される。ＵＤＩモードではＵＤＩ制御信号に従ってＵＤＩ１８が活性化され、そのデバッグ動作が制御される。
【００４２】
外部に出力されたチップＩＤ情報は、マイクロコンピュータ１の不良解析に利用可能である。即ち、図５に例示されるように、ウェーハプロセス（Ｔ５０）の後のプローブ検査（Ｔ５１）にて各チップのチップＩＤ情報を読み出して、製造ロット番号、ウェーハ番号、ウェーハ上におけるチップの位置とチップＩＤ情報との対応をデータベースに登録する（Ｔ５４）。その後の選別（Ｔ５２）で発見された不良チップに対してチップＩＤ情報を読み出し、読み出したチップＩＤ情報を前記データベースと照合し、当該チップの製造ロットやウェーハ上の位置などを取得し、これらを考慮して不良解析を行なう。出荷（Ｔ５３）したチップは返品されたときも、不良チップに対してチップＩＤ情報を読み出し、読み出したチップＩＤ情報を前記データベースと照合し、当該チップの製造ロットやウェーハ上の位置などを取得し、これらを考慮して不良解析を行なう。
【００４３】
また、外部に出力されたチップＩＤ情報はその詳細を後述するＣＰＵ２のリセットスタート制御の被照合情報等とされる。チップＩＤ情報の外部出力には前記ＵＬＩＤモードのような特定モードの設定が必要になるので、誰でも簡単にチップＩＤ情報を盗み見ることができると言うことはないが、セキュリティー強化を図るには、チップＩＤ情報の外部出力端子としてメモリカードコントローラ１５が接続するＩＯポート１１ｂの所定端子を用いればよい。メモリカードに対する書き込み認証処理をマイクロコンピュータ１が行なってチップＩＤ情報のダウンロードを許可するというような手段を講ずることも可能になる。
【００４４】
《リセットスタート制御》
例えば図６に例示されるように、携帯端末６０の制御に前記マイクロコンピュータ１を利用し、マイクロコンピュータ１は携帯端末６０に装着された専用ＩＤカード６１からＩＤ情報を入力し、このＩＤ情報がマイクロコンピュータ１のチップＩＤ情報と照合され、照合誤差が規定以下であるとき始めてＣＰＵ２をリセットスタートさせる。これにより、正規のＩＤカード６１が装着されない限り、携帯端末６０の不正使用、もしくは携帯端末６０内部のデータに対する不正アクセスを抑止することができる。
【００４５】
図７にはＣＰＵ２に対するリセットスタート制御系が例示される。照合回路６２はクロック信号ＣＬＫに同期して入力されるチップＩＤ情報と専用ＩＤカード６１からＩＤ情報を照合し、照合誤差が規定以下のとき（略して照合一致とも称する）、照合結果信号６５としてハイレベルを出力する。照合誤差は、温度、半導体チップの応力歪み状態、電源電圧の変動などに起因する。照合誤差としてはハミング距離等を用いればよい。ＣＰＵ２へのリセット信号６４はセレクタ６６で選択される。セレクタ６６には、ＲＳフリップフロップ６３の出力端子（Ｑ）からの出力又は外部リセット信号ＲＥＳの反転信号（内部リセット信号）ｒｅｓが供給される。セレクタ６６により何れの信号を選択するかは不揮発性レジスタ６７の所定の制御ビットＣＢの値によって決まる。不揮発性レジスタ６７はＣＰＵ２によってアクセス可能である。制御ビットＣＢは、特に制限されないが、マイクロコンピュータ１の出荷状態において内部リセット信号ｒｅｓを選択する状態にされている。前記フリップフロップ６３のセット端子（Ｓ）には外部リセット信号ＲＥＳの反転信号（内部リセット信号ｒｅｓ）が供給される。
【００４６】
図８にはマイクロコンピュータ１のリセット動作のタイミングチャートが示される。この動作は、制御ビットＣＢによりＣＰＵリセット信号６４がフリップフロップ６３の出力信号Ｑとされるように設定されている場合である。
【００４７】
外部リセット信号ＲＥＳがローレベルにされてリセットが指示されると、その反転信号は前記内部リセット信号ｒｅｓと等価なリセット信号としてマイクロコンピュータ１の内部を初期化するのに利用される。この状態においてフリップフロップ６３はセット状態にされており、ＣＰＵ２のリセット信号６４はハイレベルにされる。外部からリセット解除（リセット信号ＲＥＳがハイレベルとされる）が指示されると、照合回路６２ではチップＩＤ番号と入力されたＩＤ情報との照合が行われる。このとき、照合結果信号６５が照合不一致の間、ＣＰＵリセット信号６４はリセット指示状態のままにされる。照合一致して始めてＣＰＵ２はリセット解除されて、所定の命令番地よりプログラムを実行可能にされる。これによって携帯端末６０は利用可能になる。照合一致しなければＣＰＵ２のプログラム実行動作は始らず、携帯端末６０は何時までも利用不可能である。制御ビットＣＢの書き換えは例えば携帯端末６０のセットメーカが行うのがよい。
【００４８】
前記チップＩＤ番号はＣＭＯＳインバータの論理閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、マイクロコンピュータ１が制御する携帯端末６０に対するセキュリティー向上、例えば当該端末６０に対する不正使用の抑制、当該端末が保有するデータに対する不正アクセス防止に役立つ。
【００４９】
《送信データの合成・暗号化》
図９には前記送信回路７の構成が例示される。送信データバッファ７０に格納された送信データＤ１Ｄ２Ｄ３…は、識別情報生成回路１７で生成されたチップＩＤ番号ＩＤ１ＩＤ２ＩＤ３…と共に合成回路７１に供給されて合成される。例えばバイトのような処理単位毎に交互配置されて合成される。合成されたデータＩＤ１Ｄ１ＩＤ２Ｄ２…は暗号化回路７２に供給されて暗号化される。暗号化されたデータＩＤ１ｅＤ１ｅＩＤ２ｅＤ２ｅはＩＯポート１１ｅから外部に出力される。暗号化アルゴリズムはスクランブルなど適宜のアルゴリズムを用いればよい。
【００５０】
図１０には前記受信回路８の構成が例示される。外部から暗号化されたデータＩＤ１ｅＤ１ｅＩＤ２ｅＤ２ｅがＩＯポート１１ｅに供給されると、これを復号回路７３が復号する。復号論理は前記暗号化回路７２の暗号アルゴリズムで暗号化された暗号化データを復号するアルゴリズムをもつ。復号されたデータＩＤ１Ｄ１ＩＤ２Ｄ２…は分離回路７４にて受信データＤ１Ｄ２Ｄ３…が抽出されて受信データバッファ７５に格納される。
【００５１】
前記複数ビットの情報は識別回路要素の論理閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、プログラム可能な記憶素子を新たに用いる時に必要な製造工程の追加や変更を要しない。外部からの番号設定を要しないという点で、セキュリティー向上にも役立つ。
【００５２】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００５３】
チップＩＤ番号を用いたリセット解除制御はＣＰＵのリセット解除制御に適用する場合に限定されない。クロックの強制停止、電源遮断等の制御を行うようにしてもよい。
【００５４】
チップＩＤ番号を外部に出力可能にする動作モードは種々変更可能である。
【００５５】
送信データの暗号化を行うときチップＩＤ番号を公開暗号鍵などに用いることも可能である。
【００５６】
送信データや受信データについては、シリアル転送だけでなく回路の構成に応じてパラレル転送等の種々の転送形式に用いることも可能である。
【００５７】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００５８】
論理閾値電圧のばらつきに応じた複数ビットの情報を送信データの合成及び暗号化に用いる。複数ビットの情報は識別回路要素の論理閾値電圧のばらつきに従って自立的に生成され、外部からの番号設定を要しないから、プログラム可能な記憶素子を新たに用いる時に必要な製造工程の追加や変更を要しない。
【００５９】
前記複数ビットの情報と外部からの入力との照合一致を所定の論理回路に対する論理動作のスタート条件とすることができるから、半導体集積回路による制御システムのセキュリティー向上若しくは当該システムに対する不正使用の抑制に役立つ。
【００６０】
所定動作モードが指定されたときだけ前記複数ビットの情報を半導体集積回路の識別情報として外部に出力することができる。
【００６１】
上記より、チップ固有のＩＤ番号のような識別情報を内部のデータ処理にも用いることができる。更に、チップ固有のＩＤ番号のような識別情報をセキュリティー向上に貢献させることができる。
【図面の簡単な説明】
【図１】本発明の一例に係るマイクロコンピュータのブロック図である。
【図２】識別情報生成回路の原理的な回路構成を例示する回路図である。
【図３】識別情報生成回路を全体的に例示するブロック図である。
【図４】チップＩＤ情報の外部出力に関する構成を例示するブロック図である。
【図５】チップＩＤ情報をマイクロコンピュータ１の不良解析に利用する処理形態を概略的に示す説明図である。
【図６】チップ識別番号をＣＰＵのリセット解除に利用するシステム形態を例示する説明図である。
【図７】ＣＰＵに対するリセットスタート制御系の詳細を例示するブロック図である。
【図８】マイクロコンピュータのリセット動作のタイミングチャートである。
【図９】送信回路の構成を例示するブロック図である。
【図１０】受信回路の構成を例示するブロック図である。
【符号の説明】
１  マイクロコンピュータ
２  ＣＰＵ
７  送信回路
８  受信回路
１１ａ〜１１ｉ  Ｉ／Ｏポート
１４  システムコントローラ
１７  識別情報生成回路
１８  ユーザデバッグインタフェース回路
ＩＮＶ１〜ＩＮＶ４  ＣＭＯＳインバータ
６０  携帯端末
６１  専用ＩＤカード
６２  照合回路
６３  ＲＳフリップフロップ
６４  ＣＰＵリセット信号
６５  照合結果信号
７１  合成回路
７２  暗号化回路
７３  復号回路
７４  分離回路
【図１】
2004327883.tif 000003
【図２】
2004327883.tif 000004
【図３】
2004327883.tif 000005
【図４】
2004327883.tif 000006
【図５】
2004327883.tif 000007
【図６】
2004327883.tif 000008
【図７】
2004327883.tif 000009
【図８】
2004327883.tif 000010
【図９】
2004327883.tif 000011
【図１０】
2004327883.tif 000012