(57)【要約】【課題】  コスト効果的な回路で安定したＣＰＲを提供することができる固有データ生成装置を提供する。【解決手段】  本発明の固有データ生成装置１０は、変調を制御するための変調制御信号ＣＮＴを出力する変調制御部２０と、変調制御信号ＣＮＴに基づき信号を変調し、変調された変調信号ＭＯＤを出力する変調部３０と、デバイスに固有であるランダムな変動に基づき入力データと出力データとの間の関係を規定し、かつ変調信号ＭＯＤに基づき出力データを変化させるＰＵＦ回路４０と、変調制御信号ＣＮＴに応答してＰＵＦ回路４０からの出力データＤｏｕｔを保持するデータ保持部５０と、データ保持部５０から提供された出力データＤｏｕｔに基づき固有データＰＵＦｏｕｔを出力する固有データ出力部６０とを有する。【選択図】  図１
2019197394.tif 000002
【特許請求の範囲】
【請求項１】
変調を制御するための変調制御信号に基づき信号を変調し、変調された変調信号を出力する変調手段と、
デバイスに固有であるランダムな変動に基づき入力データと出力データとの間の関係を規定し、かつ前記変調信号に基づき前記出力データを変化させるＰＵＦ手段と、
前記ＰＵＦ手段から出力された出力データに基づき固有データを生成し、生成した固有データを出力する固有データ出力手段と、
を有する固有データ生成装置。
【請求項２】
前記変調手段は、前記変調制御信号に基づき電圧レベルを変調し、
前記ＰＵＦ手段は、電圧レベルの変調に応答して前記出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項３】
前記変調手段は、ｍ段階で電圧レベルを変調し（ｍは、２以上の整数）、
前記ＰＵＦ手段は、ｍ段階の電圧レベルの変調に応答してｍ個の出力データを出力し、
前記固有データ出力手段は、予め規定されたロジックに基づきｍ個の出力データを１つの固有データに変換する、請求項１または２に記載の固有データ生成装置。
【請求項４】
固有データ生成装置はさらに、前記変調制御信号を生成する変調制御手段を含み、
前記入力データは、前記変調制御信号のデータパターンに関連付けされたデータパターンを有する、請求項１に記載の固有データ生成装置。
【請求項５】
前記データパターンは、クロック信号である、請求項４に記載の固有データ生成装置。
【請求項６】
固有データ生成装置はさらに、前記変調制御信号に応答して前記ＰＵＦ手段から出力される出力データを保持する保持手段を含み、前記保持手段は、１つまたは複数の出力データを前記固有データ出力手段に提供する、請求項１ないし５いずれか１つに記載の固有データ生成装置。
【請求項７】
前記ＰＵＦ手段は、複数の入力データを入力する入力バスと、複数の複数の出力データを出力する出力バスとを含み、
前記固有データ出力手段は、前記出力バスから出力された複数の出力データに基づき固有データを生成する、請求項１ないし６いずれか１つに記載の固有データ生成装置。
【請求項８】
前記変調手段は、前記変調制御信号に基づき電流レベルを変調し、
前記ＰＵＦ手段は、電流レベルの変調に応答して出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項９】
前記変調手段は、前記変調制御信号に基づきトリミングデータを変調し、
前記ＰＵＦ手段は、トリミングデータの変調に応答して出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項１０】
請求項１ないし９いずれか１つに記載の固有データ生成装置と、
特定の機能を実行する回路と、
少なくとも前記固有データ生成手段にそれぞれ接続された外部端子とを有し、
前記外部端子は、前記固有データを外部に出力する、半導体装置。
【請求項１１】
請求項１０に記載の半導体装置と、
前記半導体装置に接続されたホスト装置とを含み、
前記ホスト装置は、前記半導体装置から出力される固有データに基づき前記半導体装置の認証を行う認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に固有のデータを生成するための固有データ生成装置に関する。
【背景技術】
【０００２】
近年、電子デバイスや電子装置のセキュリティの強化に伴い、そこに実装される半導体装置の偽造や模倣の対策が求められている。ある方法では、半導体装置に固有情報を与えておき、固有情報が認証された場合には、当該半導体装置が真正なものとして半導体装置や電子機器の動作を許可している。昨今では、固有情報として、物理的にクローンの作製をすることができないＰＵＦ（Physical Unclonable Function）が注目されている。ＰＵＦは、予測不可能であり、秘匿性が高くかつ恒久性のある物理的情報を固有情報として用いるものである。
【０００３】
ＰＵＦは、暗号のキー生成だけでなく、セキュリティや認証等のアプリケーションへの使用が増加している。ＰＵＦにとって重要な特徴は、信用されるランダムキーを生成するために、製造されたデバイスにおける小さなランダムな変動の信頼性を保証することである。大部分のＰＵＦ設計は、伝播遅延時間、内部の電流や電圧のようなプロセスのバラツキを利用することに焦点を当てている。ＰＵＦは、指紋のようなデバイスに固有であるランダムな変数に基づき、入力と出力との間の関係（すなわち、チャレンジとレスポンスとのペア（CRP）と呼ばれている）を規定する（例えば、特許文献１、非特許文献１、２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第８，７８２，３９６号公報
【非特許文献１】“Physical Unclonable Functions and Applications: A Tutorial, Charles Herder, Meng-Day Yu, Farinaz Koushanfer, Srinivas Devadas, Proceedings of the IEEE Vol.102, No. 8, P1126-1141, August 2014
【非特許文献２】“Emerging Physical Unclonable Functions with Nanotechnology”, Yansong Cao, et. al., IEEE Access, Volume 4, P51-80, February 28, 2016
【発明の概要】
【発明が解決しようとする課題】
【０００５】
もし、ランダムの変動が相対的に非常に小さいならば、ＰＵＦの入力と出力との関係は、電源電圧レベルやデバイスの動作温度等の環境条件に対して非常にセンシティブになり得る。従って、従来のＰＵＦ技術は、高集積回路により多くのＣＲＰを利用する必要があり、かつ、ランダムな変動の特徴を抽出するために複雑な処理機能を備える必要があった。
【０００６】
本発明は、上記した従来の課題を解決するものであり、コスト効果的な回路で安定した信頼性の高い固有データを提供することができる固有データ生成装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明の固有データ生成装置は、変調を制御するための変調制御信号に基づき信号を変調し、変調された変調信号を出力する変調手段と、デバイスに固有であるランダムな変動に基づき入力データと出力データとの間の関係を規定し、かつ前記変調信号に基づき前記出力データを変化させるＰＵＦ手段と、前記ＰＵＦ手段から出力された出力データに基づき固有データを生成し、生成した固有データを出力する固有データ出力手段とを有する。
【０００８】
ある実施態様では、前記変調手段は、前記変調制御信号に基づき電圧レベルを変調し、
前記ＰＵＦ手段は、電圧レベルの変調に応答して前記出力データを変化させる。ある実施態様では、前記変調手段は、ｍ段階で電圧レベルを変調し（ｍは、２以上の整数）、前記ＰＵＦ手段は、ｍ段階の電圧レベルの変調に応答してｍ個の出力データを出力し、前記固有データ出力手段は、予め規定されたロジックに基づきｍ個の出力データを１つの固有データに変換する。ある実施態様では、固有データ生成装置はさらに、前記変調制御信号を生成する変調制御手段を含み、前記入力データは、前記変調制御信号のデータパターンに関連付けされたデータパターンを有する。ある実施態様では、前記データパターンは、クロック信号である。ある実施態様では、固有データ生成装置はさらに、前記変調制御信号に応答して前記ＰＵＦ手段から出力される出力データを保持する保持手段を含み、前記保持手段は、１つまたは複数の出力データを前記固有データ出力手段に提供する。ある実施態様では、前記ＰＵＦ手段は、複数の入力データを入力する入力バスと、複数の複数の出力データを出力する出力バスとを含み、前記固有データ出力手段は、前記出力バスから出力された複数の出力データに基づき固有データを生成する。ある実施態様では、前記変調手段は、前記変調制御信号に基づき電流レベルを変調し、前記ＰＵＦ手段は、電流レベルの変調に応答して出力データを変化させる。ある実施態様では、前記変調手段は、前記変調制御信号に基づきトリミングデータを変調し、前記ＰＵＦ手段は、トリミングデータの変調に応答して出力データを変化させる。
【０００９】
本発明に係る半導体装置は、上記構成の固有データ生成装置と、特定の機能を実行する回路と、少なくとも前記固有データ生成手段にそれぞれ接続された外部端子とを有し、前記外部端子は、前記固有データを外部に出力する。
【００１０】
本発明に係る認証システムは、上記構成の半導体装置と、前記半導体装置に接続されたホスト装置とを含み、前記ホスト装置は、前記半導体装置から出力される固有データに基づき前記半導体装置の認証を行う。
【発明の効果】
【００１１】
本発明によれば、ＰＵＦ手段は変調信号に基づき出力データを変化させるようにしたので、環境条件の影響を受け難い出力データを提供することができ、その結果、固有データの安定性、信頼性を改善することができる。さらに、変調信号に基づき出力データを変化させる構成は、簡易であり、低コスト化を図ることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例に係る固有データ生成装置の内部構成を示すブロック図である。
【図２】本発明の実施例に係るＰＵＦ生成装置の内部構成を示すブロック図である。
【図３】本実施例のＰＵＦ回路の一例を示す図である。
【図４】本発明の実施例に係るＰＵＦ生成装置の各部の動作波形を示す図である。
【図５】本発明の実施例に係るＰＵＦ回路の他の例を示す図である。
【図６】本発明の実施例に係る認証システムの一例を示す図である。
【発明を実施するための形態】
【００１３】
次に、本発明の実施の形態について図面を参照して詳細に説明する。本発明の固有データ生成装置は、半導体装置等のデバイスに固有の固有データを生成する。本発明の固有データ生成装置は、半導体装置または電子デバイスに搭載され、これらの認証システムまたはセキュリティシステムに利用される。本発明に係る半導体装置は、固有データ生成装置の他に、任意の特定の機能を実行するための回路を包含することができる。半導体装置は、例えば、半導体メモリ、半導体ロジック、半導体処理回路、半導体駆動回路、中央処理回路等であり得る。また、半導体装置は、例えば、ＩＣカード媒体（例えば、ＳＩＭＭカード、クレジットカード、ＩＣが内蔵されたカード）、スマートフォンなどの携帯端末、電子機器、コンピュータ等、認証やセキュリティが求められるあらゆる電子装置において使用することができる。
【実施例】
【００１４】
図１は、本発明の実施例に係る固有データ生成装置の内部構成を示すブロック図である。本実施例に係る固有データ生成装置１０は、変調を制御するための変調制御信号ＣＮＴを出力する変調制御部２０と、変調制御信号ＣＮＴに基づき信号を変調し、変調された変調信号ＭＯＤを出力する変調部３０と、入力と出力との間にランダム性のある固有の関係を規定し、当該ランダム性のある固有の関係にある出力を変調信号ＭＯＤによって変調または変化させるＰＵＦ回路４０と、変調制御信号ＣＮＴに応答してＰＵＦ回路４０からの出力データＤｏｕｔを保持するデータ保持部５０と、データ保持部５０に保持された出力データＤｏｕｔに基づき固有データＰＵＦｏｕｔを出力する固有データ出力部６０とを有する。
【００１５】
変調制御部２０は、変調部３０の変調を制御するための変調制御信号ＣＮＴを変調部３０へ出力する。変調制御信号ＣＮＴは、特に限定されないが、例えば、変調パターンまたは変調シーケンスを規定する信号、クロック信号、またはパルス信号であることができる。
【００１６】
変調部３０は、変調制御信号ＣＮＴに基づき変調信号ＭＯＤを出力する。変調信号ＭＯＤは、例えば、電圧レベル、電流レベル、回路をトリミングをするためのトリミングデータ等を変調した信号である。例えば、変調制御信号ＣＮＴがクロック信号であるとき、変調部３０は、クロック信号の立ち上がりエッジまたは立下りエッジに応答して電圧レベルを変調した信号をＰＵＦ回路４０に出力する。
【００１７】
ＰＵＦ回路４０は、入力データＤｉｎと出力データＤｏｕｔとの間に、ランダム性のあるデバイスに固有の関係を規定する。ＰＵＦ回路４０は、例えば、回路素子や回路の電流、電圧、伝播遅延時間等のプロセスのバラツキを利用し、入力データＤｉｎに対する固有の出力データＤｏｕｔを出力する。
【００１８】
ＰＵＦ回路４０に入力される入力データＤｉｎは、変調制御信号ＣＮＴに関連付けまたはタグ付けされたデータである。例えば、入力データＤｉｎは、変調制御信号ＣＮＴと同じようなデータパターンまたは信号を有する。さらに本実施例のＰＵＦ回路４０は、変調部３０から出力される変調信号ＭＯＤによって出力データＤｏｕｔを変調または変化させる。つまり、同一の入力データＤｉｎであっても、変調信号ＭＯＤに応じて出力データＤｏｕｔが変化する。
【００１９】
データ保持部５０は、変調制御信号ＣＮＴに応答して、ＰＵＦ回路４０から出力される出力データＤｏｕｔを保持する。データ保持部５０によって保持される出力データＤｏｕｔの数は任意であり、１つまたは複数である。データ保持部５０は、保持した出力データＤｏｕｔを固有データ出力部６０へ出力する。
【００２０】
固有データ出力部６０は、１つまたは複数の出力データＤｏｕｔに基づき固有データＰＵＦｏｕｔを生成し、これを外部に出力する。固有データ出力部６０は、予め決められたロジック機能、例えば、重み付けマジョリティ（過半数）ロジック、確率機能、またはEXORやEXNORなどの一致回路や反一致回路等を用い、外部から１つまたは複数の出力データＤｏｕｔを固有データＰＵＦｏｕｔに変換する。また、ある実施態様では、ＰＵＦ回路４０によって生成される出力データＤｏｕｔの再現性を補償するため、固有データ出力部６０は、外部データを用いた内部演算あるいはそれ自身の内部演算により、不安定なＰＵＦｏｕｔの一部をマスクするようにしてもよい。
【００２１】
本実施例の固有データ生成装置１０は、変調信号ＭＯＤに基づきＰＵＦ回路４０の出力を変化させるようにしたので、電源電圧や動作温度等の環境条件の影響を受け難い安定性のある信頼性の高い固有データを生成することができる。
【００２２】
次に、本実施例の固有データ生成装置の具体的な構成について説明する。図２は、本実施例のＰＵＦ生成装置の内部構成を示すブロック図である。同図に示すように、ＰＵＦ生成装置１００は、電圧変調制御部１１０と、電圧変調部１２０と、ＰＵＦ回路１３０と、データサンプラー１４０と、ＰＵＦデータ出力部１５０とを備えて構成される。
【００２３】
電圧変調制御部１１０は、電圧を変調させるための電圧変調制御信号Ｖｃを電圧供給部１２０へ出力する。電圧変調制御信号Ｖｃは、電圧変調を規定するためのシーケンシャルなパターンを示す信号であり、このシーケンシャルなパターンは、ＰＵＦ回路１３０の入力データＤｉｎのパターンにタグ付け（関連付け）される。電圧変調制御信号Ｖｃは、例えば、一定の周波数を有するクロック信号であることができる。電圧変調部１２０は、電圧変調制御信号Ｖｃを受け取り、当該電圧変調制御信号Ｖｃに応答して電圧レベルを変調し、電圧レベルを変調した変調信号ＶｍをＰＵＦ回路１３０へ出力する。
【００２４】
ＰＵＦ回路１３０は、変調信号Ｖｍを受け取り、変調信号Ｖｍに応じて、入力データＤｉｎに対する固有の出力データＤｏｕｔを変化または変調する。入力データＤｉｎは、例えば、電圧変調信号Ｖｃを遅延したこれと同じデータパターンであってもよい。ＰＵＦ回路１３０によって出力データＤｏｕｔが出力される期間中、ＰＵＦ回路１３０に供給される電圧レベルは動的に変化する。
【００２５】
ＰＵＦ回路１３０は、デバイスに固有のランダム性のある入力と出力の関係が電圧に依存する電圧依存回路１３２を含む。電圧依存回路１３２の動作電圧として変調信号Ｖｍが供給され、電圧依存回路１３２は、変調信号Ｖｍに応じた出力データＤｏｕｔを出力する。電圧依存回路１３２の構成は特に限定されないが、その一例を図３に示す。同図に示すように、電圧依存回路１３２は、複数のインバータＩＮ−１、ＩＮ−２、…、ＩＮ−ｎと、複数のコンパレータＣＭＰ−１、ＣＭＰ−２、…、ＣＭＰ−ｎと、ロジック１３４とを含む（なお、インバータやコンパレータ等を総称するとき、インバータＩＮ、コンパレータＣＭＰと言う）。
【００２６】
インバータＩＮは、例えば、プルアップ抵抗とＮＭＯＳトランジスタとを直列に接続して構成され、インバータＩＮの動作電圧には、変調信号Ｖｍが供給され、トランジスタのゲートには、電圧変調制御信号Ｖｃに関連する入力データＤｉｎが印加される。コンパレータＣＭＰの一方の入力には、インバータＩＮの出力電圧Ｖｏｕｔが供給され、他方の入力には、基準電圧Ｖｒｅｆが供給される。コンパレータＣＭＰは、出力電圧Ｖｏｕｔと基準電圧Ｖｒｅｆとを比較し、その比較結果を出力データＤｏｕｔとして出力する。
【００２７】
インバータＩＮ−１、ＩＮ−２、…、ＩＮ−ｎには、それぞれ抵抗値が異なる抵抗Ｒ１、Ｒ２、…、Ｒｎが接続され、出力電圧Ｖｏｕｔ−１、Ｖｏｕｔ−２、…、Ｖｏｕｔ−ｎには、それぞれ異なる電圧が生成される。ロジック１３４は、コンパレータＣＭＰ−１、ＣＭＰ−２、…、ＣＭＰ−ｎの比較結果を受け取り、予め決められた論理回路に基づき出力データＤｏｕｔを出力する。インバータＩＮを構成する抵抗、トランジスタ、配線等の特性は、チップ間またはデバイス間のプロセスのバラツキにより相違する。従って、出力電圧Ｖｏｕｔ−１、Ｖｏｕｔ−２、…、Ｖｏｕｔ−ｎは、デバイス間で異なり、つまり、コンパレータＣＭＰ−１、ＣＭＰ−２、…、ＣＭＰ−ｎの比較結果はデバイス間で異なり、それ故、ロジック１３４の出力データＤｏｕｔは、デバイス固有のデータとなり得る。
【００２８】
プロセスのバラツキは、デバイスに固有な情報となり得るが、このバラツキは非常に小さく、電源電圧や動作温度等の環境条件に対してもセンシティブである。つまり、環境条件に左右されずに僅かなバラツキを識別するためには、非常に高精度な回路が必要になる。仮に、インバータＩＮの出力電圧Ｖｏｕｔが環境条件により変化幅ΔＶで変化すると、コンパレータＣＰＭは、出力電圧Ｖｏｕｔ±ΔＶと基準電圧Ｖｒｅｆをと比較することになり、本来のプロセルのバラツキにより生成される出力電圧Ｖｏｕｔと基準電圧Ｖｒｅｆとの差を保証することができなくなる可能性があり、この場合、デバイス固有の出力データＤｏｕｔを生成することが難しくなってしまう。
【００２９】
本実施例では、動作電圧Ｖｍを変調することで、インバータＩＮの出力電圧Ｖｏｕｔを強制的に大きく変化させ、環境条件に左右されないように、頑強でかつ信頼性の高いデバイス固有の出力データＤｏｕｔを得る。ある実施態様では、環境条件による出力電圧Ｖｏｕｔの変化幅がΔＶであるとき、動作電圧Ｖｍの変化によるインバータＩＮの出力電圧Ｖｏｕｔの変化幅Ｖｘは、例えば、Ｖｘ＞ΔＶである。このとき、コンパレータＣＭＰの基準電圧Ｖｒｅｆを、動作電圧Ｖｍの変化した値に応じた電圧レベルに動的に変化させてもよいし、そのまま固定であってもよい。
【００３０】
なお、図３に示す電圧依存回路では、インバータＩＮをプルアップ抵抗とＮＭＯＳトランジスタにより構成したが、これは一例であり、インバータＩＮは、動作電圧Ｖｍを電源とするＣＭＯＳインバータであってもよい。また、コンパレータＣＭＰを、固定電圧Ｖｆを電源とするＣＭＯＳインバータに置き換えてもよいし、さらには、（ＣＭＯＳインバータの）固定電圧Ｖｆを変更させて、コンパレータ相当の動作をさせてもよい。
【００３１】
データサンプラー１４０は、電圧変調制御信号Ｖｃに応答してＰＵＦ回路１３０から出力される出力データＶｏｕｔをサンプリングし、かつ保持する。データサンプラー１４０は、少なくとも１つの出力データＶｏｕｔを蓄積し、サンプルされた出力データＳＤＯ１、ＳＤＯ２、…ＳＤＯｎ（ｎは、１以上の整数）をＰＵＦデータ出力部１５０へ提供する。
【００３２】
ＰＵＦデータ出力部１５０は、データサンプラー１４０からサンプルされた出力データＳＤＯ１、ＳＤＯ２、…ＳＤＯｎを受け取り、受け取った出力データＳＤＯ１、ＳＤＯ２、…、ＳＤＯｎに基づき固有データＰＵＦｏｕｔを生成し、これを出力する。ＰＵＦデータ出力部１５０は、複数のサンプルされた出力データＳＤＯ１、ＳＤＯ２、…、ＳＤＯｎから固有データＰＵＦｏｕｔを生成するロジックとして、予め決められたまたは構成可能なロジック機能、例えば、重み付け過半数ロジック、確率機能、またはＥＸＯＲ、ＥＸＮＯＲなどを用いて、サンプルされた出力データを固有データＰＵＦｏｕｔに変換する。さらには不安定なＰＵＦｏｕｔの一部には、外部データあるいは内部演算からマスクすることが考えられることは言うまでもない。
【００３３】
次に、本実施例のＰＵＦ生成装置の動作を図４の動作波形を参照して説明する。以下の説明では、電圧変調制御部１１０が電圧変調制御信号Ｖｃとしてクロック信号を出力し、変調信号Ｖｍが３つの電圧レベルＶ１、Ｖ２、Ｖ３で変化し、データサンプラー１４０が３つのサンプルされた出力データＳＤＯ１、ＳＤＯ２、ＳＤＯ３をＰＵＦデータ出力部１５０に提供する例について説明する。
【００３４】
電圧変調部１２０は、時刻ｔ１で、電圧変調制御信号Ｖｃの立ち上がりエッジに応答して変調信号Ｖｃの電圧レベルをＶ１からＶ２に遷移させる。時刻ｔ２で、変調信号Ｖｃの電圧レベルが安定したとき、入力データＤｉｎは、電圧変調制御信号Ｖｃと時間的に遅延して同期するように遷移する（ＨからＬ、またはＬからＨ）。ＰＵＦ回路１３０による処理が実行され、その一定時間後の時刻ｔ３で、ＰＵＦ回路１３０から出力データＤｏｕｔが出力される。
【００３５】
データサンプラー１４０は、電圧変調制御信号Ｖｃの１／３の周波数で生成されたサンプルクロック信号Ｓ＿ＣＬＫ１、Ｓ＿ＣＬＫ２、Ｓ＿ＣＬＫ３に応答して出力データＶｏｉｕｔをサンプルし、かつ保持する。時刻ｔ４のとき、データサンプラー１４０は、サンプルクロック信号Ｓ＿ＣＬＫ１の立ち上がりエッジに応答して出力データＤｏｕｔをサンプルし、サンプルした出力データＳＤＯ１が固有データ出力部１５０に提供される。サンプルされた出力データＳＤＯ１は、電圧レベルＶ２のときにＰＵＦ回路１３０から出力された出力データＶｏｕｔである。
【００３６】
次に、時刻ｔ５で、電圧変調制御信号Ｖｃの次のクロックの立ち上がりエッジに応答して変調信号Ｖｃの電圧レベルがＶ２からＶ３に遷移する。時刻ｔ５から一定時間遅延した時刻ｔ６で、入力データＤｉｎが遷移し、時刻ｔ７で、ＰＵＦ回路１３０から出力データＤｏｕｔが出力される。時刻ｔ７から一定時間後の時刻ｔ８で、サンプルクロック信号Ｓ＿ＣＬＫ２の立ち上がりエッジに応答して出力データＤｏｕｔがデータサンプラー１４０にサンプルされかつホールドされ、サンプルされた出力データＳＤＯ２が固有データ出力部１５０に提供される。サンプルされた出力データＳＤＯ２は、電圧レベルＶ３のときにＰＵＦ回路１３０から出力された出力データＶｏｕｔである。
【００３７】
次に、時刻ｔ９で、電圧変調制御信号Ｖｃの次のクロックの立ち上がりエッジに応答して変調信号Ｖｃの電圧レベルがＶ３からＶ１に遷移する。時刻ｔ９から一定時間遅延した時刻ｔ１０で、入力データＤｉｎが遷移し、時刻ｔ１１で、ＰＵＦ回路１３０から出力データＤｏｕｔが出力される。時刻ｔ１１から一定時間後の時刻ｔ１２で、サンプルクロック信号Ｓ＿ＣＬＫ３の立ち上がりエッジに応答して出力データＤｏｕｔがデータサンプラー１４０にサンプルされかつホールドされ、サンプルされた出力データＳＤＯ３が固有データ出力部１５０に提供される。サンプルされた出力データＳＤＯ３は、電圧レベルＶ１のときにＰＵＦ回路１３０から出力された出力データＶｏｕｔである。
【００３８】
次に、固有データ出力部１５０は、出力クロック信号Ｏ＿ＣＬＫの立ち上がりエッジに応答して、サンプルされた出力データＳＤＯ１、ＳＤＯ２、ＳＤＯ３に基づき固有データＰＵＦｐｕｔを出力する。出力クロック信号Ｏ＿ＣＬＫは、電圧変調性制御号Ｖｃの１／３の周波数を有する。以後、同様に電圧レベルが変調され、それに伴いＰＵＦ回路１３０からの３つのサンプルされた出力データＳＤＯ１、ＳＤＯ２、ＳＤＯ３がデータサンプラー１４０によってサンプルされ、次の時刻ｔ１４で、３つのサンプルされた出力データＳＤＯ１、ＳＤＯ２、ＳＤＯ３に基づき固有データＰＵＦｏｕｔが出力される。
【００３９】
このように本実施例によれば、ＰＵＦ回路１３０の動作電圧を変調させることで環境条件（電源電圧の変動や動作温度）の影響を吸収するようにしたので、固有データＰＵＦｏｕｔの安定性、信頼性が向上する。さらに、複数のサンプルされた出力データＳＤＯ１、ＳＤＯ２、…、ＳＤＯｎを利用して固有データＰＵＦｏｕｔを生成することで、固有データＰＵＦｏｕｔの安定性、信頼性を保証することができる。
【００４０】
上記実施例では、電圧変調制御信号Ｖｃ、サンプルクロック信号Ｓ＿ＣＬＫ１、Ｓ＿ＣＬＫ２、Ｓ＿ＣＬＫ３、出力クロック信号Ｏ＿ＣＬＫを使用するが、これらのクロック信号は、例えば、タイミング発生回路によって生成される。例えば、タイミング発生回路は、基準クロック信号に基づき、電圧変調制御信号Ｖｃ、サンプルクロック信号、出力クロック信号を生成することができる。クロックの生成方法は、任意であり、特に限定されるものではない。
【００４１】
上記実施例では、電圧レベルを３段階に変調させたがこれは一例であり、２段階であってもよいし、４段階以上であってもよい。また、上記実施例では、電圧変調制御信号Ｖｃと入力データＤｉｎとを関連付けする例を示したが、入力データＤｉｎは、電圧変調制御信号Ｖｃを遅延させたクロック信号であることができ、つまり、電圧変調制御信号Ｖｃは、ＰＵＦ回路のチャレンジ入力の一部であり得る。
【００４２】
上記実施例では、電圧レベルを変調する例を示したが、これ以外にも、電流レベルを変調したり、回路のパラメータのトリミングデータを変調させるようにしてもよい。電流レベルを変調する場合には、ＰＵＦ回路１３０は、入力と出力とのランダム性のある関係が電流レベルに依存する電流依存回路を含み、変調信号に応答して電流依存回路の電流を変化させる。また、トリミングデータを変調させる場合には、ＰＵＦ回路１３０は、例えば、トリミングデータによって動作電圧を調整する機能を備えており、変調信号としてトリミングデータを最小から最大に変化させ、動作電圧を変化させるようにしてもよい。あるいは、ＰＵＦ回路１３０の回路のパラメータを変調信号により変化させるようにしてもよい。
【００４３】
上記実施例では、ＰＵＦ回路として複数のインバータを例示したが、これは一例であり、これ以外の構成であってもよい。例えば、ＰＵＦ回路は、可変抵抗素子を含む抵抗変化型のメモリアレイから構成されるものであってもよい。
【００４４】
次に、本実施例の変形例について説明する。上記実施例では、ＰＵＦ回路１３０は、シングルビットの出力データＶｏｕｔを出力するものであったが、本変形例では、図５（Ａ）に示すように、ＰＵＦ回路１３０Ａは、入力バスＤＢｉｎから複数ビットの入力データＤｉｎを受け取り、出力バスＤＢｏｕｔから複数ビットの出力データＶｏｕｔを出力する。
【００４５】
図５（Ｂ）に、ＰＵＦ回路１３０Ａの内部構成を示す。ＰＵＦ回路１３０Ａには、ｎビットの入力データＤｉｎが入力され、ｎビットの出力データＤｏｕｔが出力される。すなわち、インバータＩＮ−１には、入力データＤｉｎ−１が入力され、インバータＩＮ−２には、入力データＤｉｎ−２が入力され、インバータＩＮ−ｎには、入力データＤｉｎ−ｎが入力される。入力データＤｉｎ−１、Ｄｉｎ−２、…Ｄｉｎ−３は、一部が異なるデータであってもよいし、全てが同じデータであってもよい。同一の入力データを用いる場合には、電圧変調制御信号Ｖｃのデータパターンを遅延したデータパターンがインバータＩＮ−１、ＩＮ−２、…ＩＮ−ｎに共通に入力される。異なる入力データを用いる場合には、例えば、電圧変調制御信号Ｖｃのデータを反転したデータを用いることができる。
【００４６】
コンパレータＣＭＰ−１、ＣＭＰ−２、…、ＣＭＰ−ｎの比較結果であるｎビットの出力データＶｏｕｔが出力バスＤＢｏｕｔに供給される。データサンプラー１４０は、一度にｎビットの出力データＶｏｕｔをサンプリングし、ｎビットのサンプルされた出力データＳＤＯ１、ＳＤＯ２、…ＳＤＯｎを固有データ出力部１５０へ提供する。固有データ出力部１５０は、ｎビットのサンプリングされた出力データＳＤＯ１、ＳＤＯ２、…ＳＤＯｎに基づき固有データＰＵＦｏｕｔを生成し、これを出力する。
【００４７】
本変形例によれば、ＰＵＦ回路１３０Ａが複数の入力データＤｉｎを並列に入力し、複数の出力データＤｏｕｔを並列に出力するようにしたので、データサンプラー１４０は、一度に複数の出力データをサンプルすることが可能になり、固有データ出力部１５０は、多数のサンプルされた出力データから、より安定性、信頼性のある固有データを生成することができる。
【００４８】
図６は、本実施例に係る認証システムの一例を示している。認証システム２００は、本実施例のＰＵＦ生成装置を含む半導体装置２１０とホスト装置２２０とを含む。例えば、半導体装置２１０とホスト装置２２０とは、有線または無線により接続され、ホスト装置２２０は、半導体装置２１０から出力される固有データを利用して、半導体装置２１０が真正なものか否か（不正なものか否か）を認証する。１つの例では、ホスト装置２２０は、半導体装置２１０を認証することができた場合にのみ半導体装置２１０を使用することができ、認証することができない場合には、半導体装置２１０を使用することができない。ホスト装置２２０は、特に限定されないが、半導体装置２１０と連携する装置であり、例えば、コンピュータ装置、コンピュータシステム、マイクロコントローラ、マイクロコンピュータ等を含む。
【００４９】
半導体装置２１０は、それ自身が包含する回路または回路素子を利用して固有の情報を生成する。半導体装置２１０は、例えば、シリコン基板またはそれ以外の基板（例えば、ＳｉＣ、ＧａＡｓ、サファイアなど）上に、特定の機能を実行するための種々の回路や回路素子（例えば、トランジスタ、抵抗、コンデンサなど）を含み得る。さらに半導体装置２１０は、上記実施例で説明した固有データ生成装置１０やＰＵＦ生成装置１００を包含する。
【００５０】
ホスト装置２２０は、半導体装置２１０が接続されたとき、半導体装置２１０から固有データを受け取り、この固有データに基づき半導体装置２１０の認証を行う。認証は、どのようなタイミングで行われてもよいが、例えば、半導体装置２１０が初めて接続されたとき、あるいはホスト装置２２０がユーザーからリクエストを受けたときなどに認証が実施され得る。
【００５１】
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５２】
１０：固有データ生成装置                ２０：変調制御部
３０：変調部                            ４０：ＰＵＦ回路
５０：データ保持部                      ６０：固有データ出力部
１００：ＰＵＦ生成装置                １１０：電圧変調制御部
１２０：電圧変調部                    １３０：ＰＵＦ回路
１３２：電圧依存回路                  １３４：ロジック
１４０：データサンプラー              １５０：ＰＵＦデータ出力部
【図１】
2019197394.tif 000003
【図２】
2019197394.tif 000004
【図３】
2019197394.tif 000005
【図４】
2019197394.tif 000006
【図５】
2019197394.tif 000007
【図６】
2019197394.tif 000008
【手続補正書】
【提出日】平成31年4月17日(2019.4.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
変調を制御するための変調制御信号に基づき信号を変調し、変調された変調信号を出力する変調手段と、
デバイスに固有であるランダムな変動に基づき入力データと出力データとの間の関係を規定する電圧依存回路または電流依存回路を含み、かつ前記変調信号に基づき前記電圧依存回路の動作電圧または電流依存回路の動作電流を変化させることで前記出力データの出力電圧または出力電流を変化させるＰＵＦ手段と、
前記ＰＵＦ手段から出力された出力データに基づき固有データを生成し、生成した固有データを出力する固有データ出力手段とを有し、
前記変調信号による前記出力電圧または出力電流の変化幅は、環境条件の変化よる前記出力電圧または出力電流の変化幅よりも大きい、固有データ生成装置。
【請求項２】
前記変調手段は、前記変調制御信号に基づき電圧レベルを変調し、
前記ＰＵＦ手段は、電圧レベルの変調に応答して前記出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項３】
前記変調手段は、ｍ段階で電圧レベルを変調し（ｍは、２以上の整数）、
前記ＰＵＦ手段は、ｍ段階の電圧レベルの変調に応答してｍ個の出力データを出力し、
前記固有データ出力手段は、予め規定されたロジックに基づきｍ個の出力データを１つの固有データに変換する、請求項１または２に記載の固有データ生成装置。
【請求項４】
固有データ生成装置はさらに、前記変調制御信号を生成する変調制御手段を含み、
前記入力データは、前記変調制御信号のデータパターンに関連付けされたデータパターンを有する、請求項１に記載の固有データ生成装置。
【請求項５】
前記データパターンは、クロック信号である、請求項４に記載の固有データ生成装置。
【請求項６】
固有データ生成装置はさらに、前記変調制御信号に応答して前記ＰＵＦ手段から出力される出力データを保持する保持手段を含み、前記保持手段は、１つまたは複数の出力データを前記固有データ出力手段に提供する、請求項１ないし５いずれか１つに記載の固有データ生成装置。
【請求項７】
前記ＰＵＦ手段は、複数の入力データを入力する入力バスと、複数の出力データを出力する出力バスとを含み、
前記固有データ出力手段は、前記出力バスから出力された複数の出力データに基づき固有データを生成する、請求項１ないし６いずれか１つに記載の固有データ生成装置。
【請求項８】
前記変調手段は、前記変調制御信号に基づき電流レベルを変調し、
前記ＰＵＦ手段は、電流レベルの変調に応答して出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項９】
前記変調手段は、前記変調制御信号に基づき前記電圧依存回路の動作電圧を調整するためのトリミングデータを変調し、
前記ＰＵＦ手段は、前記トリミングデータの変調に応答して出力データを変化させる、請求項１に記載の固有データ生成装置。
【請求項１０】
請求項１ないし９いずれか１つに記載の固有データ生成装置と、
特定の機能を実行する回路と、
少なくとも前記固有データ生成手段にそれぞれ接続された外部端子とを有し、
前記外部端子は、前記固有データを外部に出力する、半導体装置。
【請求項１１】
請求項１０に記載の半導体装置と、
前記半導体装置に接続されたホスト装置とを含み、
前記ホスト装置は、前記半導体装置から出力される固有データに基づき前記半導体装置の認証を行う認証システム。