【実施例】
【0019】
図1は、本発明の実施例に係る半導体装置の概略構成を示す図である。本実施例の半導体装置100は、任意の機能を有することができ、そこに搭載される機能は特に限定されない。半導体装置100は、半導体メモリ、半導体ロジック、半導体処理回路、半導体駆動回路、中央処理回路等であり得る。半導体装置100は、例えば、ICカード媒体(例えば、SIMMカード、クレジットカード、ICが内蔵されたカード)、スマートフォンなどの携帯端末、電子機器、コンピュータ等、セキュリティが求められるあらゆる電子装置において使用することができる。
【0020】
半導体装置100は、任意の機能を実行する集積回路部110と、入出力部120と、半導体装置100の固有情報を生成する固有情報生成部130とを有する。入出力部130は、外部から入力を受け取り、これを集積回路部110または固有情報生成部130へ提供することができる。また、入出力部130は、集積回路部110により実行された結果、あるいは固有情報生成部130により生成された固有情報を外部に出力することができる。
【0021】
半導体装置100は、例えば、シリコン基板またはそれ以外の基板(例えば、SiC、GaAs、サファイアなど)上に複数の回路素子(例えば、トランジスタ、抵抗、コンデンサなど)を形成して構成される。集積回路部110に含まれる回路素子は、通常の設計条件に従い要求される機能を満足するように設計される。
【0022】
固有情報生成部130は、半導体装置100に形成された回路素子の出力、好ましくはトランジスタやインバータの出力に基づき半導体装置に固有の情報を生成する。
図2に、固有情報生成部130の内部構成を示す。固有情報生成部130は、PUF用回路132と、PUF用回路132の出力に基づきコード情報を発生するコード情報発生部134とを含む。PUF用回路132は、トランジスタ等の回路素子を含んで構成され、PUF用回路132は、集積回路部110の設計条件と異なり、回路素子のバラツキが大きくなるような要因を含む設計条件により設計される。
【0023】
図3は、本実施例による集積回路部110とPUF用回路132の設計手法を説明する図である。ここでは、回路素子として代表的なトランジスタを例示する。集積回路部110に含まれるn型またはp型のMOSトランジスタは、要求される動作条件を満足するように、最小加工寸法(ゲート配線の幅または間隔)を基準に、通常の設計条件でチャンネル長(L)、チャンネル幅(W)が設計される(S100)。但し、すべてのトランジスタが最小加工寸法で設計されることを意味するのではなく、トランジスタは最小加工寸法で設計することができるが、他方、要求される動作条件を満足するように設計される。通常の設計条件は、集積回路部110のトランジスタのバラツキ(変動)が小さくなるような設計であり、それ故、集積回路部110のトランジスタのしきい値は、より均一性を持つように設計される。
【0024】
一方、PUF用回路132は、集積回路部110の通常の設計条件とは反対に、トランジスタのバラツキ(変動)が大きくなるような要因を含むPUF用設計条件に従い設計される(S110)。それ故、PUF用回路132のトランジスタは、しきい値のバラツキが大きくなる。トランジスタのバラツキを固有情報(PUF)に利用するとき、トランジスタのバラツキが大きい方が固有情報にランダム性が生じ、かつ動作条件やノイズ等による影響を抑制し固有情報に恒久性を与えることができる。
【0025】
図4は、本実施例の設計条件の具体的な例を示している。集積回路部110のトランジスタは、要求される動作条件を満足するチャンネル幅W1に設計される。チャンネル幅は、トランジスタのバラツキに影響を及ぼすことが知られており、チャンネル幅が大きくなるほど、トランジスタのしきい値のバラツキが小さくなり、反対に、チャンネル幅が狭くなるほど、トランジスタのしきい値のバラツキが大きくなる。それ故、集積回路部110のトランジスタのチャンネル幅W1はできるだけ大きく設計される。
【0026】
一方、PUF用回路132のトランジスタは、しきい値のバラツキを大きくするため、できるだけチャンネル幅W2が小さくなるように設計される。但し、チャンネル幅W2は、最小加工寸法以上である。
図5(A)は、集積回路部110のトランジスタを模式的に表しており、
図5(B)は、PUF用回路132のトランジスタを模式的に表している。
仮に、集積回路部110のトランジスタとPUF用回路132のトランジスタのチャンネル長Lが等しい場合、チャンネル幅W2は、チャンネル幅W1よりも小さく設計されるようにしてもよい。
【0027】
図5Aは、チャンネル幅としきい値のバラツキとの関係を表すグラフである。横軸は、1/(LW)
0.5(μm
-1)であり、チャンネル長Lを一定にしたときのチャンネル幅Wの変化を逆数で表している。縦軸は、しきい値である。Tox1、Tox2、Tox3(Tox1<Tox2<Tox3)は、ゲート酸化膜の膜厚であり、△は、高Vth、□は、中Vth、◇は、低Vthを表している。同グラフから、Wが小さくなるほど(右へ向かうほど)、高Vth、中Vth、低Vthの間隔が広がり、しきい値Vthのバラツキ(変動)が大きくなっていることがわかる。つまり、チャンネル幅としきい値のバラツキとは、反比例の関係にある。
【0028】
本実施例のように、集積回路部110を通常の設計条件で設計し、PUF用回路132をバラツキが大きくなるような要因を含む設計条件で設計した場合、集積回路部110のトランジスタのしきい値Vthは、
図6(A)に示すような正規分布σ1となり、PUF用回路132のトランジスタのしきい値Vthは、バラツキ(変動)の大きい分布σ2となる。従って、PUF用回路132のトランジスタのバラツキは、集積回路部110のトランジスタのバラツキよりもランダム性(非予測性)が高い。
【0029】
次に、本発明の第2の実施例による半導体装置の製造方法について説明する。
図7は、第2の実施例による半導体装置の製造方法を説明するフローである。第2の実施例では、集積回路部110は、トランジスタのバラツキが小さく、再現性、信頼性の高い通常の製造条件に従い製造される(S200)。一方、PUF用回路132は、通常の製造条件と異なり、トランジスタのバラツキが大きくなる要因を含むPUF用製造条件に従い製造される(S210)。
【0030】
第2の実施例による製造条件の好ましい例を
図8に示す。1つの好ましい例では、集積回路部110のトランジスタは、ソース/ドレインの拡散領域がLDD(Lightly Doped Drain)構造を有するのに対し、PUF用回路132のトランジスタは、そのようなLDD構造を有しない。
図9(A)は、集積回路部110のトランジスタ200であり、ゲート電極210と、LDD構造の拡散領域220とを備える。LDDの製造方法は、例えば、ゲート電極210をマスクに、1回目のイオン注入により不純物拡散領域を形成し、次に、ゲート電極210の両側にサイドウォール212を形成し、ゲート電極210とサイドウォール212をマスクに、2回目のイオン注入を行う。あるいは、他の製造方法として、ローテーションイオン注入によりLDD構造を形成する。
【0031】
図9(B)は、PUF用回路132のトランジスタ300であり、ゲート電極310と、LDD構造ではない拡散領域320とを備える。拡散領域320は、例えば、ゲート電極310をマスクに不純物をイオン注入することにより形成される。LDD構造が形成されないトランジスタ300では、ゲート電極310と拡散領域320との間に高電界が発生し、ホットエレクトロンの注入などにより、LDD構造のトランジスタよりもしきい値の変動が大きくなる。トランジスタのチャンネル長Lが小さくなるほど、バラツキを抑制するためにLDD構造を形成することが望ましい。仮に、集積回路部110のトランジスタ200とPUF用回路132のトランジスタ300がともに一定以下のチャンネル長Lであれば、トランジスタ200にLDD構造が形成され、トランジスタ300にLDD構造が形成されない。
【0032】
第2の好ましい例では、集積回路部110のトランジスタでは、基板表面に低濃度の不純物領域が形成されるようにチャンネルイオン注入が行われ、PUF用回路のトランジスタでは、基板表面から深い位置に低濃度の不純物領域が形成されるようにチャンネルイオン注入が行われる。あるいは、集積回路部110のトランジスタでは、基板表面から深い位置に高濃度の不純物領域が形成されるようにチャンネルイオン注入が行われ、PUF用回路のトランジスタの基板表面に高濃度の不純物領域が形成されるようにチャンネルイオン注入が行われる。本例では、イオン注入の深さを制御することでトランジスタのバラツキを制御するものであり、基板表面の不純物濃度が高くなると、トランジスタの特性が悪化し、バラツキが大きくなる。
【0033】
図10(A)は、集積回路部110のトランジスタ200Aを示している。例えば、SIMOXまたは基板貼り合わせ方法により、シリコン基板230上にBOX層(SiO
2)232を形成し、基板表面にシリコンがエピタキシャル成長されたSOI膜234が形成される。シリコン基板230は、イオン注入により高濃度にドープされ、SOI膜234は、イオン注入により低濃度にドープされる。
図10(B)は、PUF用回路のトランジスタ300Aを示している。トランジスタ300Aの場合、シリコン基板330は、イオン注入により低濃度にドープされ、基板表面のSOI膜334が高濃度にドープされる。
【0034】
図10Aは、シリコン基板の不純物濃度(縦軸)とSOI膜の不純物濃度(横軸)とにより決定されるトランジスタのしきい値Vthを表している。双方の不純物濃度が大きくなるにつれ、しきい値Vthも大きくなる。同図の(1)〜(5)のサンプリング地点のトランジスタのしきい値のバラツキを表したグラフを
図10Bに示す。N
SUBは基板の濃度、N
SOIはSOI膜の濃度、T
OXはゲート酸化膜の膜厚、T
BOXはBOX層の膜厚、Lgはチャンネル長である。同図を見ると、N
SOIが高くなるにつれ、統計に示されるしきい値のバラツキが増加していることがわかる。(5)が最も大きく、(1)が最も小さい。つまり、
図10(B)に示すトランジスタ300Aのように、SOI膜334の不純物濃度を高くすると、トランジスタ200Aよりもバラツキが大きくなる傾向がある。
【0035】
次に、本発明の第3の実施例による半導体装置の製造方法について説明する。
図11は、第3の実施例の製造方法を示す図である。第3の実施例は、第1の実施例による設計方法と第2の実施例による製造方法とを組み合わせるものである。つまり、集積回路部110のトランジスタを通常の設計条件に従い設計し、これを通常の製造条件を製造し、PUF用回路132のトランジスタをバラツキが大きくなる要因を含むPUF用設計条件に従い設計し、これをバラツキが大きくなる要因を含むPUF用製造条件で製造する。それぞれの設計条件および製造条件については、第1および第2の実施例で説明した通りである。第3の実施例によれば、PUF用回路132のトランジスタのバラツキ(変動)をさらに大きくすることを保証し、バラツキのランダム性をより高めることができる。
【0036】
次に、本実施例のコード発生部(
図2)について説明する。コード発生部134は、PUF用回路132からの出力を受け取り、半導体装置に固有のコードを発生する。
図12に、本実施例のコード発生部134の動作フローを示す。好ましい例では、
図12(A)に示すように、コード発生部134は、半導体装置100に電源が投入されたとき(S300)、PUF用回路132の出力に基づきコードを生成し(S310)、入出力部120が生成されたコードを外部に出力する(S320)。すなわち、半導体装置100のパワーアップシーケンスとして、半導体装置の固有のコードが出力される。
【0037】
他の好ましい例では、
図12(B)に示すように、コード発生部134は、入出力部120を介して、コード出力の要求を受け取ったとき(S302)、PUF用回路132の出力に基づきコードを生成し(S310)、入出力部120は、要求に応答するように生成されたコードを外部に出力する(S320)。ここで留意すべきは、生成されたコードは、メモリ等に記憶されることなく、入出力部120を介して直接外部へ出力される。
【0038】
コード生成部134は、PUF用回路132の出力から直接コードを生成するものであってもよいし、PUF用回路132の出力を他の情報に変換し、変換された情報からコードを生成するものであってもよい。前者の例は、例えば、PUF用回路132の出力を符号化したり、関数により符号化し、コードを生成する。後者の例は、例えば、PUF用回路132の出力からアドレス情報を生成し、当該アドレス情報に基づきメモリ領域をアクセスし、そこからコードを生成する。なお、コード生成部134に含まれる回路は、集積回路部110と同様の設計条件または製造条件により製造され得ることに留意すべきである。
【0039】
図13に、コード生成部134の一構成例を示す。ここでは、PUF用回路132は、並列に接続されたn個のNMOSトランジスタQ1、Q2、Q3、・・・Qnから構成される。トランジスタQ1〜Qnは、第1ないし第3の実施例で説明したように、バラツキ(変動)が大きくなる要因を含んで製造されたものであるから、トランジスタQ1〜Qnのしきい値のバラツキは大きい。n個のトランジスタQ1〜Qnには、電圧Vddが供給され、ゲートには駆動信号DVが共通に接続されている。
【0040】
コード生成部134は、駆動信号DVを生成する駆動回路(図示省略)と、トランジスタQ1〜Qnの各々に接続されたn個の電流検出型のセンスアンプS/Aと、センスアンプS/Aからの出力を符号化する符号化部140とを含む。コード生成部134は、コードを生成するとき、例えば、Vddと等しい駆動信号DVをトランジスタQ1〜Qnに供給し、トランジスタQ1〜Qnを一斉にオンさせる。トランジスタQ1〜Qnのしきい値はバラツキが大きく、それ故、トランジスタQ1〜Qnを流れるドレイン電流のバラツキも大きくなる。電流検出型のセンスアンプS/Aは、トランジスタQ1〜Qnを流れるそれぞれのドレイン電流を検出し、その検出結果を符号化部140へ出力する。
【0041】
符号化部140は、センスアンプS/Aにより検出されたドレイン電流に基づき符号化を行う。符号化部140は、1つのセンスアンプにより検出されたドレイン電流を2値化(「0」または「1」)する。PUF用回路132がn個のトランジスタQ1〜Qnを有するとき、符号化部140は、2
nの符号化されたシリアルデータを生成する。
【0042】
仮に、PUF用回路132のトランジスタQ1〜Qnが集積回路部110と同様に通常の設計条件または通常の製造条件で製造されたならば、トランジスタQ1〜Qnのバラツキは、
図6(A)に示すようにσ1のような正規分布となり、それ故、トランジスタQ1〜Qnを流れるそれぞれのドレイン電流のバラツキが小さくなり、符号化部140による符号化が均一性を持つようになる。つまり、生成される2
nのシリアルデータのランダム性が小さくなる。
【0043】
また、トランジスタの動作特性は、温度変化の影響を受け易く、さらに微小なドレイン電流はセンスアンプ等のノイズの影響を受により変動し得る。本実施例のように、トランジスタのバラツキが大きいと、符号化のためのマージンを大きくすることができ、動作温度やノイズの影響により符号化が変動され難くなる。つまり、PUF用回路132の出力に、高い恒久性を持たせることができる。
【0044】
なお、上記の例では、符号化部134Aは、センスアンプの出力を2値化したが、必ずしもこれに限らず、トランジスタのバラツキが非常に大きいのであれば、センスアンプの出力を3値化して4ビットデータを生成するようにしてもよい。
【0045】
次に、コード生成部の他の構成例を
図14に示す。ここでは、PUF用回路132は、複数のインバータIV1、IV2を含み、インバータIV1、IV2にはVcc電源が供給され、各ゲートには、駆動信号DVが共通に接続される。コード生成部134は、駆動信号DVを供給する駆動回路(図示省略)と、インバータIV1、IV2からの出力を受け取るコンパレータ(差動増幅器)150を含む。
【0046】
コード生成部134は、コードを発生させるとき、駆動信号DVをインバータIV1、IV2に出力する。駆動信号DVは、好ましくは、1/2Vccである。インバータIV1、IV2に1/2Vccの駆動信号DVが入力されたとき、インバータIV1、IV2には、リーク電流として貫通電流が流れる。インバータIV1、IV2のバラツキが大きいため、インバータIV1、IV2を流れるリーク電流のバラツキも大きくなり、それ故、インバータIV1の出力ノードN1、インバータIV2の出力ノードN2に生じる電圧のバラツキも大きくなる。差動増幅器150は、出力ノードN1の電圧と出力ノードN2の電圧とを入力し、両者の差分に応じたデータを出力する。
図14には、1組のIV1、IN2のみを例示しているが、PUF用回路132がn組のインバータから構成されるとき、n個の差動増幅器150から2
nのシリアルデータが出力される。
【0047】
なお、コード生成部134の構成例を
図13、
図14に示したが、コード生成部134は、これ以外にも既存の回路等を用いて任意に構成することが可能である。
【0048】
次に、セキュア機能付きフラッシュメモリを含む認証システムの一例を
図15に示す。セキュア機能付きフラッシュメモリ400は、上記第1ないし第3の実施例で説明したような固有情報生成部130を含む。ホスト装置500は、フラッシュメモリ400の固有情報であるコードを記憶するコード記憶部510と、フラッシュメモリ400が真正なものか否かを認証する認証部520とを含む。
【0049】
フラッシュメモリ400は、電源起動時、またはホスト装置500からのリクエストがあったとき、固有情報をホスト装置500へ出力する。認証部520は、受け取った固有情報と記憶したコードとを比較し、一致すれば、フラッシュメモリ400が真正なものと認証し、不一致であれば、フラッシュメモリ400が模倣品または偽造品と判定し、真正なものと認証しない。例えば、フラッシュメモリ400がホスト装置500により認証されなかった場合、ホスト装置500は、フラッシュメモリ400を包含する電子機器の動作が不能にすることができる。
【0050】
以上のように本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。