(57)【特許請求の範囲】
【請求項１】
駆動電圧以上の電源電圧が供給されている間、第１の乱数データを保持する第１のレジスタと、
前記第１のレジスタに格納された前記第１の乱数データに基づいて第２の乱数データを生成する第１の演算回路と、
前記駆動電圧以上の前記電源電圧が供給されている間、前記第２の乱数データを保持する第２のレジスタと、
前記駆動電圧以上の前記電源電圧が前記第１のレジスタに供給されない期間、前記第１の乱数データを保持する第１の強誘電体メモリと、
前記駆動電圧以上の前記電源電圧が前記第２のレジスタに供給されない期間、前記第２の乱数データを保持する第２の強誘電体メモリと、
を有することを特徴とする擬似乱数生成装置。
【請求項２】
前記第１のレジスタに保持された前記第１の乱数データを前記第１の強誘電体メモリに格納する制御を行い、且つ前記第２のレジスタに保持された前記第２の乱数データを前記第２の強誘電体メモリに格納する制御を行い、
前記第１の強誘電体メモリに格納された前記第１の乱数データを前記第１のレジスタに保持させる制御を行い、且つ前記第２の強誘電体メモリに格納された前記第２の乱数データを前記第２のレジスタに保持させる制御を行う制御部を有することを特徴とする請求項１に記載の擬似乱数生成装置。
【請求項３】
前記制御部は、
前記第１のレジスタおよび前記第２のレジスタに供給される前記電源電圧が、第１のしきい値電圧以上である場合から前記第１のしきい値電圧を下回った場合に、前記第１のレジスタに保持された前記第１の乱数データを前記第１の強誘電体メモリに格納する制御を行い、且つ前記第２のレジスタに保持された前記第２の乱数データを前記第２の強誘電体メモリに格納する制御を行い、
前記第１のレジスタおよび前記第２のレジスタに供給される前記電源電圧が、前記第１のしきい値電圧よりも低い第２のしきい値電圧である場合から前記第２のしきい値電圧を上回った場合に、前記第１の強誘電体メモリに格納された前記第１の乱数データを前記第１のレジスタに保持させる制御を行い、且つ前記第２の強誘電体メモリに格納された前記第２の乱数データを前記第２のレジスタに保持させる制御を行うことを特徴とする請求項２に記載の擬似乱数生成装置。
【請求項４】
前記第２のレジスタに格納された前記第２の乱数データに基づいて第３の乱数データを生成する第２の演算回路と、
前記駆動電圧以上の前記電源電圧が供給されている間、前記第３の乱数データを保持する第３のレジスタと、
前記駆動電圧以上の前記電源電圧が前記第３のレジスタに供給されない期間、前記第３の乱数データを保持する第３の強誘電体メモリと、
を有することを特徴とする請求項１〜３のいずれか１項に記載の擬似乱数生成装置。
【請求項５】
前記第２の演算回路にて生成された前記第３の乱数データを外部に出力することを特徴とする請求項４に記載の擬似乱数生成装置。
【請求項６】
駆動電圧以上の電源電圧が供給されている間、前記第１の乱数データを保持し、前記第１のレジスタに前記第１の乱数データを出力する第４のレジスタと、
前記駆動電圧以上の前記電源電圧が前記第４のレジスタに供給されない期間、前記第１の乱数データを保持する第４の強誘電体メモリと、
を有することを特徴とする請求項１〜５のいずれか１項に記載の擬似乱数生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、強誘電体記憶素子を用いた擬似乱数生成装置に関する。
【背景技術】
【０００２】
従来の擬似乱数生成装置としては、例えば特許文献１に開示されているように、複数の擬似乱数生成回路が直列に接続されており、設定した初期値から複数の擬似乱数発生回路にて順次乱数を生成することで擬似乱数を生成して外部に出力するものが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−６４８９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の擬似乱数生成装置では、擬似乱数生成回路の個数が予め決まっているため、設定された初期値から生成される擬似乱数が推測されやすく、セキュリティ面で問題が生じるおそれがあった。
【０００５】
本発明は、セキュリティを向上できる擬似乱数生成装置を提供する。
【課題を解決するための手段】
【０００６】
本発明の擬似乱数生成装置は、駆動電圧以上の電源電圧が供給されている間、第１の乱数データを保持する第１のレジスタと、前記第１のレジスタに格納された前記第１の乱数データに基づいて第２の乱数データを生成する第１の演算回路と、前記駆動電圧以上の前記電源電圧が供給されている間、前記第２の乱数データを保持する第２のレジスタと、前記駆動電圧以上の前記電源電圧が前記第１のレジスタに供給されない期間、前記第１の乱数データを保持する第１の強誘電体メモリと、前記駆動電圧以上の前記電源電圧が前記第２のレジスタに供給されない期間、前記第２の乱数データを保持する第２の強誘電体メモリと、を有する。
【発明の効果】
【０００７】
本発明の擬似乱数生成装置によれば、セキュリティを向上できる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態にかかる擬似乱数生成装置１を示している。
【図２】擬似乱数生成装置１の動作を示したタイミングチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態につき説明する。なお、以下で説明する数値や回路等は、本発明の趣旨を逸脱しない範囲において適宜選択可能である。
【００１０】
［実施形態］
【００１１】
図１は、本発明の実施形態にかかる擬似乱数生成装置１を示している。擬似乱数生成装置１は、制御部ＣＰと、第４のレジスタとしてのレジスタＲＧ１、第１のレジスタとしてのレジスタＲＧ２、第２のレジスタとしてのレジスタＲＧ３、及び第３のレジスタとしてのレジスタＲＧ４を備えたレジスタ部ＲＧＰと、第１の演算回路としての演算回路ＯＰ１、及び第２の演算回路としての演算回路ＯＰ２を備えた演算部ＯＰＰと、不揮発性の、第４の強誘電体メモリとしての強誘電体メモリＦＭ１、第１の強誘電体メモリＦＭ２と、第２の強誘電体メモリＦＭ３と、第３の強誘電体メモリＦＭ４と、を備えた強誘電体メモリ部ＦＭＰと、を備えている。なお、不揮発性のメモリはＥＥＰＲＯＭ等、他にも存在するが、強誘電体メモリは他のメモリに比べて省電力化の観点で有利である。
【００１２】
また、擬似乱数生成装置１の制御部ＣＰ、レジスタ部ＲＧＰ、演算部ＯＰＰ、及び強誘電体メモリ部ＦＭＰの各々には、例えば５Ｖの電源電圧ＶＤＤが供給されている。
【００１３】
ここで、制御部ＣＰは、電源電圧ＶＤＤをレギュレータ等の手段により降圧して生成された例えば１．５Ｖの電圧を自己の駆動電圧として用いている。また、演算部ＯＰＰは、電源電圧ＶＤＤをレギュレータ等の手段により降圧して生成された例えば１．５Ｖの電圧を自己の駆動電圧として用いている。また、レジスタ部ＲＧＰは、電源電圧ＶＤＤをレギュレータ等の手段により降圧して生成された例えば１．５Ｖの電圧を自己の駆動電圧として用いている。また、強誘電体メモリ部ＦＭＰは、電源電圧ＶＤＤをレギュレータ等の手段により降圧して生成された例えば１．５Ｖの電圧を自己の駆動電圧として用いている。
【００１４】
制御部ＣＰは、演算部ＯＰＰの各演算回路ＯＰ１及びＯＰ２と接続されており、制御信号ＣＰＯにより演算部ＯＰＰの各演算回路ＯＰ１及びＯＰ２を制御する。演算部ＯＰＰは、例えば制御信号ＣＰＰがハイレベルＨの場合に駆動し、ローレベルＬの場合に駆動が停止される。
【００１５】
また、制御部ＣＰは、強誘電体メモリ部ＦＭＰの各強誘電体メモリＦＭ１〜ＦＭ４と接続されており、制御部ＣＰＭにより強誘電体メモリ部ＦＭＰの各強誘電体メモリＦＭ１〜ＦＭ４を制御する。強誘電体メモリ部ＦＭＰは、例えば制御信号ＣＰＭがハイレベルＨの場合に駆動し、ローレベルＬの場合に駆動が停止される。
【００１６】
なお、図１では制御部ＣＰと演算部ＯＰＰの各演算回路ＯＰ１及びＯＰ２とは１つの配線で接続された図を示したが、制御部ＣＰと演算部ＯＰＰの各演算回路ＯＰ１及びＯＰ２とを接続する配線は独立していても良い。また、図１では制御部ＣＰと強誘電体メモリ部ＦＭＰの各強誘電体メモリＦＭ１〜ＦＭ４とは１つの配線で接続された図を示したが、制御部ＣＰと各強誘電体メモリＦＭ１〜ＦＭ４とを接続する配線は独立していても良い。
【００１７】
レジスタＲＧ１は、強誘電体メモリＦＭ１と、レジスタＲＧ２と、レジスタＲＧ４と、に接続されている。レジスタＲＧ１は、電源電圧ＶＤＤが自己の駆動電圧以上にて供給されている間、第１の乱数データとしての乱数データＲＤ１を保持する。乱数データは、例えば８ビットのビット列により構成される。なお、レジスタＲＧ１は、本実施形態では乱数データＲＤ１を保持する例を示したが、擬似乱数生成装置１の外部から設定されたデータを保持するようにしても良い。
【００１８】
レジスタＲＧ２は、レジスタＲＧ１と、強誘電体メモリＦＭ２と、演算回路ＯＰ１と、に接続されている。レジスタＲＧ２は、電源電圧ＶＤＤが自己の駆動電圧以上にて供給されている間、乱数データＲＤ１を保持する。なお、レジスタＲＧ２は、本実施形態では乱数データＲＤ１を保持する例を示したが、擬似乱数生成装置１の外部から設定されたデータを保持するようにしても良い。
【００１９】
レジスタＲＧ３は、強誘電体メモリＦＭ３と、演算回路ＯＰ１と、演算回路ＯＰ２と、に接続されている。レジスタＲＧ３は、電源電圧ＶＤＤが自己の駆動電圧以上にて供給されている間、第２の乱数データとしての乱数データＲＤ２を保持する。なお、レジスタＲＧ３は、本実施形態では乱数データＲＤ２を保持する例を示したが、擬似乱数生成装置１の外部から設定されたデータを保持するようにしても良い。
【００２０】
レジスタＲＧ４は、演算回路ＯＰ２と、強誘電体メモリＦＭ４と、レジスタＲＧ１と、に接続されている。レジスタＲＧ４は、電源電圧ＶＤＤが自己の駆動電圧以上にて供給されている間、乱数データＲＤ３を保持する。なお、レジスタＲＧ４は、本実施形態では乱数データＲＤ３を保持する例を示したが、擬似乱数生成装置１の外部から設定されたデータを保持するようにしても良い。また、レジスタＲＧ４は、乱数データＲＤ３を出力データとして擬似乱数生成装置１の外部に出力する。
【００２１】
演算回路ＯＰ１は、制御部ＣＰから供給される制御信号ＣＰＯがハイレベルＨの場合に、レジスタＲＧ２から出力された乱数データＲＤ１に基づいて第２の乱数データとしての乱数データＲＤ２を生成してレジスタＲＧ３に出力する。ここで、演算回路ＯＰ１は、乱数データＲＤ１を例えば２桁ビットシフトすることによって乱数データＲＤ２を生成してもよいし、これに限られず種々演算を用いることができる。
【００２２】
演算回路ＯＰ２は、制御部ＣＰから供給される制御信号ＣＰＯがハイレベルＨの場合に、レジスタＲＧ２から出力された乱数データＲＤ２に基づいて第３の乱数データとしての乱数データＲＤ３を生成してレジスタＲＧ４に出力する。ここで、演算回路ＯＰ２は、乱数データＲＤ２を例えば２桁ビットシフトすることによって乱数データＲＤ３を生成してもよいし、これに限られず種々演算を用いることができる。
【００２３】
強誘電体メモリＦＭ１は、不揮発性の強誘電体キャパシタにて構成されており、制御部ＣＰから供給される制御信号ＣＰＭがハイレベルＨの場合に、レジスタＲＧ１にて保持された乱数データＲＤ１を格納する。
【００２４】
強誘電体メモリＦＭ２は、不揮発性の強誘電体キャパシタにて構成されており、制御部ＣＰから供給される制御信号ＣＰＭがハイレベルＨの場合に、レジスタＲＧ２にて保持された乱数データＲＤ１を格納する。
【００２５】
強誘電体メモリＦＭ３は、不揮発性の強誘電体キャパシタにて構成されており、制御部ＣＰから供給される制御信号ＣＰＭがハイレベルＨの場合に、レジスタＲＧ３にて保持された乱数データＲＤ２を格納する。
【００２６】
強誘電体メモリＦＭ４は、不揮発性の強誘電体キャパシタにて構成されており、制御部ＣＰから供給される制御信号ＣＰＭがハイレベルＨの場合に、レジスタＲＧ４にて保持された乱数データＲＤ３を格納する。
【００２７】
図２は、擬似乱数生成装置１の動作を示したタイミングチャートである。擬似乱数生成装置１は、時刻ｔ０〜ｔ２と時刻ｔ６以降の期間Ａで通常動作を行い、時刻ｔ２〜ｔ３の期間Ｂでレジスタ部ＲＧＰの各レジスタＲＧ１〜ＲＧ４に保持された乱数データを強誘電体メモリ部ＦＭＰの各強誘電体メモリＦＭ１〜ＦＭ４のそれぞれに格納するデータ格納動作を行い、時刻ｔ３〜ｔ５の期間Ｃで電源電圧ＶＤＤが擬似乱数生成装置１の各構成の駆動電圧に満たない状態となり、時刻ｔ５〜ｔ６での期間Ｄで強誘電体メモリ部ＦＭＰの各強誘電体メモリＦＭ１〜ＦＭ４に格納された乱数データをレジスタ部ＲＧＰの各レジスタＲＧ１〜ＲＧ４のそれぞれに読み出すデータ読出動作を行う。
【００２８】
なお、図２における時刻ｔ０〜ｔ６は、各信号波形に対して共通である。また、各信号波形については、特に言及しない場合には直前の時刻までの信号波形を維持しているものとする。
【００２９】
時刻ｔ０〜ｔ１にて、擬似乱数生成装置１は通常動作を行う。通常動作とは、レジスタ部ＲＧＰに保持された乱数データに基づいて演算回路ＯＰＰが乱数データを生成し、生成した乱数データを例えば乱数データＲＤ３として外部に出力する動作である。
【００３０】
時刻ｔ０〜ｔ１にて、電源電圧ＶＤＤは例えば５Ｖとなっている。また、制御信号ＣＰＯはハイレベルＨとなっており、制御信号ＣＰＭはローレベルＬとなっている。
【００３１】
時刻ｔ１にて、電源がオフされて電源電圧ＶＤＤが低下を始める。このとき、制御部ＣＰ、演算部ＯＰＰ、及びレジスタ部ＲＧＰは、電源電圧ＶＤＤが自己の駆動電圧以上であるので、通常動作を続けている。
【００３２】
時刻ｔ２にて、電源電圧ＶＤＤが、例えば制御部ＣＰに設定された３．５Ｖの第１のしきい値電圧としてのしきい値電圧Ｖｒｅｆ１を下回る。これを制御部ＣＰが検出すると、制御部ＣＰは強誘電体メモリ部ＦＭＰにハイレベルの制御信号ＣＰＭを出力する。これにより、擬似乱数生成装置１はデータ格納動作を開始する。
【００３３】
時刻ｔ３になると、電源電圧ＶＤＤがレジスタ部ＲＧＰの駆動電圧である１．５Ｖの第２のしきい値電圧としてのしきい値電圧Ｖｒｅｆ２を下回る。これにより、レジスタ部ＲＧＰにて保持されていた乱数データは失われる。しかしながら、レジスタ部ＲＧＰに保持されていた乱数データは、時刻ｔ２から開始されたデータ格納動作により、時刻ｔ３の時点で不揮発性の強誘電体メモリ部ＦＭＰに格納済みであり、駆動電圧以上の電源電圧ＶＤＤがレジスタ部ＲＧＰに供給されない期間Ｃにおいても強誘電体メモリ部ＦＭＰに保持される。したがって、擬似乱数生成装置１によれば、電源電圧ＶＤＤがレジスタ部ＲＧＰのしきい値電圧Ｖｒｅｆ２に対応する駆動電圧以下まで低下した場合であっても、レジスタ部ＲＧＰにて保持されていた乱数データが擬似乱数生成装置１から失われることはない。
【００３４】
時刻ｔ４にて、電源がオンされて電源電圧ＶＤＤが上昇を始める。このとき、制御部ＣＰ、演算部ＯＰＰ、及びレジスタ部ＲＧＰは、電源電圧ＶＤＤが自己のしきい値電圧Ｖｒｅｆ２に対応する駆動電圧以下であるので、停止状態となっている。
【００３５】
時刻ｔ５にて、電源電圧ＶＤＤが、例えば制御部ＣＰに設定された１．５Ｖのしきい値電圧Ｖｒｅｆ２を上回る。これを制御部ＣＰが検出すると、制御部ＣＰは強誘電体メモリ部ＦＭＰにハイレベルの制御信号ＣＰＭを出力する。これにより、擬似乱数生成装置１はデータ読出動作を開始する。
【００３６】
時刻ｔ６にて、電源電圧ＶＤＤがしきい値電圧Ｖｒｅｆ１以上となったことを制御部ＣＰが検出すると、制御部ＣＰの制御によりレジスタＲＧ４から外部への乱数データＲＤ３の出力を許可する。このとき、乱数データＲＤ３は、電源がオフされ電源電圧ＶＤＤが擬似乱数生成装置１の各構成のしきい値電圧Ｖｒｅｆ２に対応する駆動電圧以下となる前に擬似乱数生成装置１にて生成されていた乱数データに基づいて生成された乱数データとなる。このため、本発明にかかる擬似乱数生成装置１によって生成され出力される乱数データＲＤ３は、従来の擬似乱数生成装置１のように電源がオンされる等の要因で電源電圧ＶＤＤが立ち上がった後に初期値に対して所定回数乱数生成を行うことで生成していた乱数データに比べて、はるかに推測が困難なものなる。
【００３７】
以上、本発明の擬似乱数生成装置１によれば、セキュリティを向上できる。
【００３８】
なお、本発明の実施形態では、電源がオンオフされることに伴って電源電圧ＶＤＤが上昇又は低下された場合におけるレジスタ部ＲＧＰと強誘電体メモリ部ＦＭＰとの間の乱数データのやり取りについて記載したが、レジスタ部ＲＧＰと強誘電体メモリ部ＦＭＰとの間の乱数データのやり取りは、電源電圧ＶＤＤの変化に起因するものに限られない。すなわち、例えば電源電圧ＶＤＤに変動が無く、実際に低下又は上昇していない場合であっても、制御部ＣＰからハイレベルの制御信号ＣＰＭを出力することによって、レジスタ部ＲＧＰにて保持された乱数データを強誘電体メモリ部ＦＭＰに書き込むことができ、また、強誘電体メモリ部ＦＭＰに格納された乱数データをレジスタ部ＲＧＰに保持させることができる。
【００３９】
また、本発明の実施形態では、擬似乱数生成装置１からの出力データとして、乱数データＲＤ３がレジスタＲＧ４から出力される構成について記載したが、乱数データＲＤ３は、演算回路ＯＰ２から直接擬似乱数生成装置１からの出力データとして出力される構成としても良い。
【産業上の利用可能性】
【００４０】
本発明にかかる擬似乱数生成装置によれば、セキュリティを向上できるので、産業上の利用可能性は極めて高い。
【符号の説明】
【００４１】
１  擬似乱数生成装置
ＣＰ  制御部
ＣＰＭ、ＣＰＯ  制御信号
ＦＭＰ  強誘電体メモリ部
ＦＭ１、ＦＭ２、ＦＭ３、ＦＭ４  強誘電体メモリ
ＯＰＰ  演算部
ＲＤ１、ＲＤ２、ＲＤ３  乱数データ
ＲＧＰ  レジスタ部
ＲＧ１、ＲＧ２、ＲＧ３、ＲＧ４  レジスタ
ＶＤＤ  電源電圧
【図１】
0006367108.tif 000002
【図２】
0006367108.tif 000003