図面 (/)

この項目の情報は公開日時点(2012年3月8日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (11)

課題

乱数系列における0,1の発生頻度偏りを防止して、ランダム性を高める。

解決手段

奇数段インバータからなる段数固定型のM個のリングオシレータと、M個のリングオシレータの中間ノードの出力を周波数S1のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、M個の前段D−FFの各ラッチ出力排他的論理和をとるM入力XORと、M入力XORの出力を周波数S1のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、周波数S1のサンプリングクロックを生成する制御部とを備える。

概要

背景

暗号技術ベースとするセキュリティ分野においては、乱数の生成が重要な役割を果たしている。チャレンジレスポンス認証鍵共有など暗号技術において利用される乱数の条件として、予測不可能であることがあげられる。乱数の予測不可能性を根拠とする暗号技術への適用においては、自然界に存在する揺らぎ現象のようなランダム性を備えた物理現象を利用して乱数を生成する真性乱数生成回路が重要な役割を果たす。

非特許文献1に示す従来のリングオシレータ型真性乱数生成回路では、図10に示すように、出力乱数のランダム性を高める目的から自己発振動作するリングオシレータを複数数個用意し、これら並列に動作するリングオシレータの中間ノード値のXOR(排他的論理和)を取り、その出力をD−FFD型フリップフロップ)でラッチし、乱数値として出力する。しかし、この回路は、特許文献1に示したように、複数のリングオシレータを必要とするためゲート規模および消費電力が大きい、という問題があった。

乱数の品質検定プログラムとしてよく知られているNIST SP800−22検定においては、乱数系列における0,1の発生頻度偏り検定は最も重要な検定項目とされている。このため、小さなゲート規模で発生頻度の課題を回避すべく、特許文献1に示す乱数生成回路が提案された。特許文献1の乱数生成回路では、1クロック周期内でリングオシレータの発振周期が短い周期から長い周期に段階的に切り替わるように動作する。クロック周期内の前半の短い発振周期の動作でランダム性を獲得し、クロック周期内の後半の長い発振周期においてD−FFによりサンプリングを行い、ハイ, ローのラッチ確率の偏りを回避する。

概要

乱数系列における0,1の発生頻度の偏りを防止して、ランダム性を高める。奇数段インバータからなる段数固定型のM個のリングオシレータと、M個のリングオシレータの中間ノードの出力を周波数S1のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、M個の前段D−FFの各ラッチ出力の排他的論理和をとるM入力XORと、M入力XORの出力を周波数S1のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、周波数S1のサンプリングクロックを生成する制御部とを備える。

目的

本発明は、小さなゲート規模で0,1の発生頻度の偏りを低減することができる乱数生成回路を提供する

効果

実績

技術文献被引用数
1件
牽制数
1件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

奇数段インバータからなる段数固定型のM個(Mは2以上の整数)のリングオシレータと、前記M個のリングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、前記M個の前段D−FFの各ラッチ出力排他的論理和をとるM入力XORと、前記M入力XORの出力を前記周波数S1 のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、前記周波数S1 のサンプリングクロックを生成する制御部とを備えたことを特徴とする乱数生成回路

請求項2

動作モード切替制御信号により奇数段のインバータの段数切り替え発振周期の切り替えが可能な段数可変型のM個(Mは2以上の整数)のリングオシレータと、前記M個のリングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、前記M個の前段D−FFの各ラッチ出力の排他的論理和をとるM入力XORと、前記M入力XORの出力を前記周波数S1 のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、前記周波数S1 のサンプリングクロックを生成し、前記サンプリングクロックの1周期内で前記段数可変型のリングオシレータの短周期と長周期の発振周期を切り替え、かつ前記サンプリングクロックのタイミングで前記段数可変型のリングオシレータを長周期に設定する前記動作モード切替制御信号を生成する制御部とを備えたことを特徴とする乱数生成回路。

請求項3

奇数段のインバータからなる段数固定型のリングオシレータと、前記リングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでラッチする第1の前段D−FFと、周波数S1 のサンプリングクロックで入力信号をラッチする第2の前段D−FFと、前記第2の前段D−FFのラッチ出力と、前記第1の前段D−FFの出力との排他的論理和をとる2入力XORと、セレクタ制御信号により、前記サンプリングクロックのM回(Mは2以上の整数)に1回の頻度で前記第1の前段D−FFの出力を選択し、前記サンプリングクロックの(M−1)回は前記2入力XORの出力を選択し、前記第2の前段D−FFに入力するセレクタと、前記周波数S1 のサンプリングクロックをM分周した周波数S2(=S1 /M)の出力用クロックで前段第2のD−FFの出力をラッチし、乱数値として出力する後段D−FFと、前記周波数S1 のサンプリングクロック、前記セレクタ制御信号、前記出力用クロックを生成する制御部とを備えたことを特徴とする乱数生成回路。

請求項4

動作モード切替制御信号により奇数段のインバータの段数を切り替え、発振周期の切り替えが可能な段数可変型のリングオシレータと、前記リングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでラッチする第1の前段D−FFと、周波数S1 のサンプリングクロックで入力信号をラッチする第2の前段D−FFと、前記第2の前段D−FFのラッチ出力と、前記第1の前段D−FFの出力との排他的論理和をとる2入力XORと、セレクタ制御信号により、前記サンプリングクロックのM回(Mは2以上の整数)に1回の頻度で前記第1の前段D−FFの出力を選択し、前記サンプリングクロックの(M−1)回は前記2入力XORの出力を選択し、前記第2の前段D−FFに入力するセレクタと、前記周波数S1 のサンプリングクロックをM分周した周波数S2(=S1 /M)の出力用クロックで前段第2のD−FFの出力をラッチし、乱数値として出力する後段D−FFと、前記周波数S1 のサンプリングクロック、前記セレクタ制御信号、前記出力用クロックを生成し、前記サンプリングクロックの1周期内で前記段数可変型のリングオシレータの短周期と長周期の発振周期を切り替え、かつ前記サンプリングクロックのタイミングで前記段数可変型のリングオシレータを長周期に設定する前記動作モード切替制御信号を生成する制御部とを備えたことを特徴とする乱数生成回路。

請求項5

請求項1または請求項2に記載の乱数生成回路において、前記制御部は、前記サンプリングクロックを所定回数カウントしたタイミングで前記後段D−FFから出力される乱数値を有効とする乱数有効表示信号を出力する構成であることを特徴とする乱数生成回路。

請求項6

請求項3または請求項4に記載の乱数生成回路において、前記制御部は、前記出力用クロックを所定回数カウントしたタイミングで前記後段D−FFから出力される乱数値を有効とする乱数有効表示信号を出力する構成であることを特徴とする乱数生成回路。

請求項7

請求項2または請求項4に記載の乱数生成回路において、前記動作モード切替制御信号は、偶数段インバータゲートを介して前記リングオシレータに入力する構成であることを特徴とする乱数生成回路。

技術分野

0001

本発明は、0,1の発生頻度偏りが少なくランダム性を備えた予測不可能真性乱数ディジタル論理ゲート回路のみで生成する乱数生成回路に関する。

背景技術

0002

暗号技術ベースとするセキュリティ分野においては、乱数の生成が重要な役割を果たしている。チャレンジレスポンス認証鍵共有など暗号技術において利用される乱数の条件として、予測不可能であることがあげられる。乱数の予測不可能性を根拠とする暗号技術への適用においては、自然界に存在する揺らぎ現象のようなランダム性を備えた物理現象を利用して乱数を生成する真性乱数生成回路が重要な役割を果たす。

0003

非特許文献1に示す従来のリングオシレータ型真性乱数生成回路では、図10に示すように、出力乱数のランダム性を高める目的から自己発振動作するリングオシレータを複数数個用意し、これら並列に動作するリングオシレータの中間ノード値のXOR(排他的論理和)を取り、その出力をD−FFD型フリップフロップ)でラッチし、乱数値として出力する。しかし、この回路は、特許文献1に示したように、複数のリングオシレータを必要とするためゲート規模および消費電力が大きい、という問題があった。

0004

乱数の品質検定プログラムとしてよく知られているNIST SP800−22検定においては、乱数系列における0,1の発生頻度の偏り検定は最も重要な検定項目とされている。このため、小さなゲート規模で発生頻度の課題を回避すべく、特許文献1に示す乱数生成回路が提案された。特許文献1の乱数生成回路では、1クロック周期内でリングオシレータの発振周期が短い周期から長い周期に段階的に切り替わるように動作する。クロック周期内の前半の短い発振周期の動作でランダム性を獲得し、クロック周期内の後半の長い発振周期においてD−FFによりサンプリングを行い、ハイ, ローのラッチ確率の偏りを回避する。

0005

特開2010−117846号公報

先行技術

0006

Sunar B., Martin W., Stinson D.,”A provably secure true random number generator with built-in tolerance to active attacks”,IEEE Trans. Computers 56(1), pp.109-119 (2007)

発明が解決しようとする課題

0007

ランダム性を高める目的で多数のリングオシレータのXORを取る非特許文献1の乱数生成回路では、XOR出力が激しく状態遷移を繰り返すことになるため、D−FFによるサンプリング時にXOR出力信号がハイでもローでもない過渡的な電位状態となりやすい。そのため、D−FFがXOR出力信号をハイとしてラッチする確率と、ローとしてラッチする確率に偏りが生じやすい。すなわち、乱数系列における0,1の発生頻度の偏りの問題が生じる。

0008

特許文献1に示す乱数生成回路において、生成乱数のランダム性をさらに高める目的でリングオシレータを複数個用意し、各リングオシレータの中間ノード出力のXORをとり、その出力をD−FFによりラッチする回路構成の場合も、やはり非特許文献1の乱数生成回路と同様に、乱数系列における0,1の発生頻度の偏りの問題が生じる。

0009

さらに、ランダム性を高めるためにリングオシレータを複数個並列に用意する構成では、ゲート規模の増加が課題となっていた。

0010

本発明は、小さなゲート規模で0,1の発生頻度の偏りを低減することができる乱数生成回路を提供することを目的とする。

課題を解決するための手段

0011

第1の発明の乱数生成回路は、奇数段インバータからなる段数固定型のM個(Mは2以上の整数)のリングオシレータと、M個のリングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、M個の前段D−FFの各ラッチ出力の排他的論理和をとるM入力XORと、M入力XORの出力を周波数S1 のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、周波数S1 のサンプリングクロックを生成する制御部とを備える。

0012

第2の発明の乱数生成回路は、動作モード切替制御信号により奇数段のインバータの段数を切り替え、発振周期の切り替えが可能な段数可変型のM個(Mは2以上の整数)のリングオシレータと、M個のリングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでそれぞれラッチするM個の前段D−FFと、M個の前段D−FFの各ラッチ出力の排他的論理和をとるM入力XORと、M入力XORの出力を周波数S1 のサンプリングクロックでラッチし、乱数値として出力する後段D−FFと、周波数S1 のサンプリングクロックを生成し、サンプリングクロックの1周期内で段数可変型のリングオシレータの短周期と長周期の発振周期を切り替え、かつサンプリングクロックのタイミングで段数可変型のリングオシレータを長周期に設定する動作モード切替制御信号を生成する制御部とを備える。

0013

第3の発明の乱数生成回路は、奇数段のインバータからなる段数固定型のリングオシレータと、リングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでラッチする第1の前段D−FFと、周波数S1 のサンプリングクロックで入力信号をラッチする第2の前段D−FFと、第2の前段D−FFのラッチ出力と、第1の前段D−FFの出力との排他的論理和をとる2入力XORと、セレクタ制御信号により、サンプリングクロックのM回(Mは2以上の整数)に1回の頻度で第1の前段D−FFの出力を選択し、サンプリングクロックの(M−1)回は2入力XORの出力を選択し、第2の前段D−FFに入力するセレクタと、周波数S1 のサンプリングクロックをM分周した周波数S2 (=S1 /M)の出力用クロックで前段第2のD−FFの出力をラッチし、乱数値として出力する後段D−FFと、周波数S1 のサンプリングクロック、セレクタ制御信号、出力用クロックを生成する制御部とを備える。

0014

第4の発明の乱数生成回路は、動作モード切替制御信号により奇数段のインバータの段数を切り替え、発振周期の切り替えが可能な段数可変型のリングオシレータと、リングオシレータの中間ノードの出力を周波数S1 のサンプリングクロックでラッチする第1の前段D−FFと、周波数S1 のサンプリングクロックで入力信号をラッチする第2の前段D−FFと、第2の前段D−FFのラッチ出力と、第1の前段D−FFの出力との排他的論理和をとる2入力XORと、セレクタ制御信号により、サンプリングクロックのM回(Mは2以上の整数)に1回の頻度で第1の前段D−FFの出力を選択し、サンプリングクロックの(M−1)回は2入力XORの出力を選択し、第2の前段D−FFに入力するセレクタと、周波数S1 のサンプリングクロックをM分周した周波数S2 (=S1 /M)の出力用クロックで前段第2のD−FFの出力をラッチし、乱数値として出力する後段D−FFと、周波数S1 のサンプリングクロック、セレクタ制御信号、出力用クロックを生成し、サンプリングクロックの1周期内で段数可変型のリングオシレータの短周期と長周期の発振周期を切り替え、かつサンプリングクロックのタイミングで段数可変型のリングオシレータを長周期に設定する動作モード切替制御信号を生成する制御部とを備える。

0015

第1また第2の発明の乱数生成回路において、制御部は、サンプリングクロックを所定回数カウントしたタイミングで後段D−FFから出力される乱数値を有効とする乱数有効表示信号を出力する構成である。

0016

第3または第4の発明の乱数生成回路において、制御部は、出力用クロックを所定回数カウントしたタイミングで後段D−FFから出力される乱数値を有効とする乱数有効表示信号を出力する構成である。

0017

第2または第4の発明の乱数生成回路において、動作モード切替制御信号は、偶数段インバータゲートを介してリングオシレータに入力する構成である。

発明の効果

0018

第1または第2の発明は、段数固定型または段数可変型のリングオシレータを複数備える乱数生成回路において、各リングオシレータの中間ノードの出力を前段D−FFで一旦ラッチしてから排他的論理和をとり、その出力を後段D−FFでラッチし、乱数値として出力する構成により、状態遷移中のトランジェントな信号をサンプリングする頻度を低減することができ、0,1の発生頻度の偏りを低減することができる。

0019

また、第3または第4の発明は、単一構成の段数固定型または段数可変型のリングオシレータを用いたシリアル処理型乱数生成回路により、単一のリングオシレータのみで複数のリングオシレータを用いた場合と等価な効果を得ることができる。これにより、小さなゲート規模で複数のリングオシレータの回路構成と同等レベルで高品質の乱数値を出力することができる。

図面の簡単な説明

0020

本発明の実施例1の乱数生成回路の構成例を示す図である。
実施例1における制御部100の構成例および動作例を示す図である。
本発明の実施例2の乱数生成回路の構成例を示す図である。
段数可変型のリングオシレータ20の構成例を示す図である。
実施例2における制御部200の構成例および動作例を示す図である。
本発明の実施例3の乱数生成回路の構成例を示す図である。
実施例3における制御部300の構成例および動作例を示す図である。
本発明の実施例4の乱数生成回路の構成例を示す図である。
実施例4における制御部400の構成例および動作例を示す図である。
従来の乱数生成回路の構成例を示す図である。

0021

図1は、本発明の実施例1の乱数生成回路の構成例を示す。本実施例は、非特許文献1に示す複数の段数固定型(発振周期固定型)のリングオシレータを乱数生成源とする回路に本発明を適用した例である。

0022

図1において、L1 段〜LM 段の段数固定型のM個(Mは2以上の整数)のリングオシレータ10−1〜10−Mを並列に配置し、各リングオシレータの中間ノード出力を周波数S1 Hzのサンプリングクロックに同期した前段D−FF11−1〜11−Mでそれぞれラッチする。さらに、前段D−FF11−1〜11−Mの各出力はM入力XOR(排他的論理和回路)12に入力され、その出力が後段D−FF13に入力される。後段D−FF13は、前段D−FF11−1〜11−Mと同期したサンプリングクロックにより、M入力XOR12の出力をラッチし、乱数値として出力する。

0023

段数固定型のリングオシレータ10−1〜10−Mは、2入力NANDとインバータをリング状に接続した構成であり、2入力NANDに入力する動作ON/OFF切替信号によりリングオシレータの動作、非動作の切り替えが可能である。すなわち、2入力NANDは、動作ON/OFF切替信号がローのときは出力がハイに固定され、動作ON/OFF切替信号がハイに遷移するとインバータとして機能し、各リングオシレータが奇数段のインバータをリング状に接続した構成になる。なお、ここでは2入力NANDを用いたが、動作ON/OFF切替信号の位相反転すれば2入力NORでもよい。また、2入力NANDの位置は、必ずしも各リングオシレータの初段である必要はない。また、2入力NANDをインバータに代え、動作ON/OFF切替信号を用いない構成としてもよい。この場合は、動作ON/OFF切替信号が常にハイになっている状態と等価である。2入力NANDと動作ON/OFF切替信号を用いることにより、乱数生成が必要ないときはリングオシレータの発振動作を停止し、無駄な電流消費を抑えることができる。

0024

制御部100は、動作ON/OFF切替信号と周波数S0 Hzのシステムクロックを入力し、システムクロックを分周して前段D−FF11−1〜11−Mおよび後段D−FF13に与える周波数S1 のサンプリングクロックおよび乱数有効表示信号を生成する。

0025

図2は、実施例1における制御部100の構成例および動作例を示す。ここでは、動作ON/OFF切替信号がハイのときにカウンタ101で周波数S0 のシステムクロックを4分周して周波数S1(=S0/4)のサンプリングクロックを生成する例を示す。

0026

リングオシレータ10−1〜10−Mが自己発振動作の開始直後は、発振ジッタ成分が十分蓄積されておらずランダム性の効果が不十分と考えられるため、制御部100でサンプリングクロック数をカウンタ101でカウントし、カウンタ値がある一定数に達した段階で乱数有効表示信号を有効にすることにより、後段D−FF13から十分なランダム性を備えた乱数値を取得することができる。乱数有効表示信号に用いるカウンタ値は、実験などにより事前に調べて「乱数有効クロック設定値」として保持しておき、カウンタ101のカウンタ値がこの設定値に達した時点で乱数有効表示信号を有効とすればよい。ここでは、サンプリングクロックの2クロック目(システムクロックの8クロック目)で乱数有効表示信号が有効となる例を示す。

0027

図3は、本発明の実施例2の乱数生成回路の構成例を示す。本実施例は、特許文献1に示す複数の段数可変型(発振周期可変型)のリングオシレータを乱数生成源とする回路に本発明を適用した例である。

0028

図3において、M個の段数可変型のリングオシレータ20−1〜20−Mを並列に配置し、各リングオシレータの中間ノード出力を周波数S1 Hzのサンプリングクロックに同期した前段D−FF11−1〜11−Mでそれぞれラッチする。さらに、前段D−FF11−1〜11−Mの各出力はM入力XOR(排他的論理和回路)12に入力され、その出力が後段D−FF13に入力される。後段D−FF13は、前段D−FF11−1〜11−Mと同期したサンプリングクロックにより、M入力XOR12の出力をラッチし、乱数値として出力する。

0029

制御部200は、動作ON/OFF切替信号と周波数S0 Hzのシステムクロックを入力し、システムクロックを分周して前段D−FF11−1〜11−Mおよび後段D−FF13に与える周波数S1 のサンプリングクロック、各リングオシレータ20−1〜20−Mに与える動作モード切替制御信号、および乱数有効表示信号を生成する。

0030

段数可変型のリングオシレータ20−1〜20−Mは、特許文献1に具体的にいろいろな形態のものが示されているが、例えば図4に示すように、遅延生成部A21と遅延生成部B22をセレクタ23を介して接続した構成である。遅延生成部A21は、2入力NANDとインバータをカスケード接続した構成であり、2入力NANDとインバータの総段数を奇数La 段とする。La の最小値は1であり、この場合は2入力NANDのみで構成される。遅延生成部B22は、インバータをカスケード接続した構成であり、インバータの段数を偶数Lb 段とする。La を比較的小さい値とし、かつLa +Lb が比較的大きい値となるように設定する。

0031

動作ON/OFF切替信号は、遅延生成部A21の2入力NANDの一方の入力にも接続される。遅延生成部A21の2入力NANDは、動作ON/OFF切替信号がローのときは出力がハイに固定され、動作ON/OFF切替信号がハイに遷移するとインバータとして機能し、遅延生成部A21が全体として奇数段のインバータになる。なお、ここでは2入力NANDを用いたが、動作ON/OFF切替信号の位相を反転すれば2入力NORでもよい。また、2入力NANDの位置は、必ずしも遅延生成部A21の初段である必要はない。また、2入力NANDをインバータに代え、動作ON/OFF切替信号を用いない構成としてもよい。この場合は、動作ON/OFF切替信号が常にハイになっている状態と等価である。

0032

遅延生成部A21の最終段のインバータ(1段の場合は2入力NAND)の出力は、セレクタ23の一方の入力端子(L)および遅延生成部B22の初段のインバータに接続される。遅延生成部B22の最終段のインバータの出力は、セレクタ23の他方の入力端子(H)に接続される。セレクタ23は、制御部200から出力される動作モード切替制御信号により、2つの入力のいずれか一方を選択して遅延生成部A21の2入力NANDの他方の入力に接続する。ここで、動作ON/OFF切替信号がローからハイに遷移して動作モード切替制御信号がロー(L)のときに、セレクタ23は遅延生成部A21の最終段のインバータ(1段の場合は2入力NAND)の出力を選択し、遅延生成部A21の閉ループで形成されるリングオシレータが独立に短周期で発振する動作モードAとなる。また、動作モード切替制御信号がハイ(H)のときに、セレクタ23は遅延生成部B22の最終段のインバータの出力を選択し、遅延生成部A21,B22が連結した閉ループで形成されるリングオシレータが長周期で発振する動作モードBとなる。なお、3段以上の遅延生成部をセレクタを介して接続する構成でも同様である。

0033

図5は、実施例2における制御部200の構成例および動作例を示す。ここでは、動作ON/OFF切替信号がハイのときにカウンタ201で周波数S0 のシステムクロックを4分周して周波数S1(=S0/4)のサンプリングクロックを生成する例を示す。

0034

動作モード切替制御信号は、サンプリングクロックの周期内で段数可変型のリングオシレータ20−1〜20−Mを動作モードAから動作モードBに切り替え、かつサンプリングクロックのタイミングで動作モードBが選択されるように生成される。これにより、段数可変型のリングオシレータ20−1〜20−Mの発振周波数は、サンプリングクロックの周期内で段階的に切り替わり、長周期で発振する動作モードBのときに、その出力が前段D−FF11−1〜11−Mでラッチされる。

0035

なお、動作モード切替制御信号は、発振周波数切替のタイミングにジッタ効果によるランダム性をもたらす目的で、図3に示すように偶数段のインバータゲートを介してリングオシレータ20−1〜20−Mのセレクタ23に入力するようにしてもよい。

0036

乱数有効表示信号は、実施例1と同様であり、サンプリングクロックの1クロック目の出力は前段D−FF11−1〜11−Mの初期値の排他的論理和となって乱数として適切でないため、2クロック目以降で有効とするように「乱数有効クロック設定値」に応じて設定される。

0037

図6は、本発明の実施例3の乱数生成回路の構成例を示す。本実施例は、実施例1の回路をシリアル処理化した構成である。

0038

図6において、段数固定型のリングオシレータ10の中間ノード出力を周波数S1 Hzのサンプリングクロックに同期した前段D−FF11−1でラッチする。さらに、前段D−FF11−1の出力と2入力XOR14の出力とをセレクタ15で選択した出力を、周波数S1 Hzのサンプリングクロックに同期した前段D−FF11−2でラッチする。2入力XOR14は、前段D−FF11−1の出力と前段D−FF11−2の出力とを入力し、排他的論理和出力をセレクタ15に出力する。さらに、前段D−FF11−2の出力は後段D−FF13に入力される。後段D−FF13は、周波数S1 HzのサンプリングクロックをM分周した周波数S2 (=S1 /M)Hzの出力用クロックで前段D−FF11−2の出力をラッチし、乱数値として出力する。

0039

段数固定型のリングオシレータ10は、2入力NANDとインバータをリング状に接続した構成であり、2入力NANDに入力する動作ON/OFF切替信号によりリングオシレータの動作、非動作の切り替えが可能である。

0040

制御部300は、動作ON/OFF切替信号と周波数S0 Hzのシステムクロックを入力し、システムクロックを分周して前段D−FF11−1,11−2に与える周波数S1 のサンプリングクロック、セレクタ15に与えるセレクタ制御信号、後段D−FF13に与える出力用クロック、および乱数有効表示信号を生成する。

0041

図7は、実施例3における制御部300の構成例および動作例を示す。ここでは、動作ON/OFF切替信号がハイのときにカウンタ301で周波数S0 のシステムクロックを4分周して周波数S1(=S0/4)のサンプリングクロックを生成する例を示す。

0042

カウンタ301で生成されたサンプリングクロックは、前段D−FF11−1,11−2に与えられるとともにカウンタ302に入力される。カウンタ302は、動作ON/OFF切替信号がハイのときに、サンプリングクロックからセレクタ制御信号および出力用クロックを生成する。セレクタ15を制御するセレクタ制御信号は、サンプリングクロックのM回に1回の頻度でリングオシレータ10の出力を選択し、(M−1)回はリングオシレータ10の出力と前段D−FF11のラッチ出力(固定値)とのXOR出力を選択するように設定される。これは、実施例1のM個のリングオシレータ10−1〜10−Mの1サンプリング毎の出力を前段D−FF11−1〜11−Mでラッチし、M入力XOR12に入力することと等価である。出力用クロックは、周波数S1 のサンプリングクロックをM分周した周波数S2 (=S1 /M)のクロックである。後段D−FF13は、この出力用クロックで前段D−FF11−2の出力をラッチし、乱数値として出力する。

0043

このように、周波数S1 のサンプリングクロックがMクロック経過すると、実施例1で示したM個の段数固定型のリングオシレータ10−1〜10−Mの中間ノードのXOR出力を得る構成と等価な回路がシリアル回路として実現される。これにより、実施例1と同様に、状態遷移中のトランジェントな信号をサンプリングする頻度が低減し、0,1の発生頻度の偏りを低減することができる。

0044

リングオシレータが自己発振動作の開始直後は、発振のジッタ成分が十分蓄積されておらずランダム性の効果が不十分と考えられるため、制御部300のカウンタ302で出力用クロックをカウントし、カウンタ値がある一定数に達した段階で乱数有効表示信号を有効にすることにより、後段D−FF13から十分なランダム性を備えた乱数値を取得することができる。乱数有効表示信号に用いるカウンタ値は、実験などにより事前に調べて「乱数有効クロック設定値」として保持しておき、カウンタ302のカウンタ値がこの設定値に達した時点で乱数有効表示信号を有効とすればよい。ここでは、出力用クロックの2クロック目(サンプリングクロックの8クロック目)で乱数有効表示信号が有効となる例を示す。

0045

図8は、本発明の実施例4の乱数生成回路の構成例を示す。本実施例は、実施例2の回路をシリアル処理化した構成である。

0046

本実施例の乱数生成回路は、実施例3の段数固定型のリングオシレータ10を、段数可変型のリングオシレータ20に置き換える他は、実施例3と同様の構成である。

0047

制御部400は、動作ON/OFF切替信号と周波数S0 Hzのシステムクロックを入力し、システムクロックを分周して前段D−FF11−1,11−2に与える周波数S1 のサンプリングクロック、段数可変型のリングオシレータ20に与える動作モード切替制御信号、セレクタ15に与えるセレクタ制御信号、後段D−FF13に与える周波数S2 (=S1 /M)の出力用クロック、および乱数有効表示信号を生成する。

0048

図9は、実施例4における制御部400の構成例および動作例を示す。ここでは、動作ON/OFF切替信号がハイのときにカウンタ401で周波数S0 のシステムクロックを4分周して周波数S1(=S0/4)のサンプリングクロックを生成する例を示す。

0049

動作モード切替制御信号は、サンプリングクロックの周期内で段数可変型のリングオシレータ20を動作モードAから動作モードBに切り替え、かつサンプリングクロックのタイミングで動作モードBが選択されるように生成される。これにより、段数可変型のリングオシレータ20の発振周波数は、サンプリングクロックの周期内で段階的に切り替わり、長周期で発振する動作モードBのときに、その出力がセレクタ15を介して、または2入力XOR14およびセレクタ15を介して前段D−FF11−2でラッチされる。

0050

なお、動作モード切替制御信号は、発振周波数切替のタイミングにジッタ効果によるランダム性をもたらす目的で、図8に示すように偶数段のインバータゲートを介してリングオシレータ20に入力するようにしてもよい。

実施例

0051

カウンタ402では、セレクタ制御信号、出力用クロック、乱数有効表示信号が実施例3と同様に生成される。したがって、周波数S1 のサンプリングクロックがMクロック経過すると、実施例2で示したM個の段数可変型のリングオシレータ20−1〜20−Mの中間ノードのXOR出力を得る構成と等価な回路がシリアル回路として実現される。これにより、実施例2と同様に、状態遷移中のトランジェントな信号をサンプリングする頻度が低減し、0,1の発生頻度の偏りを低減することができる。

0052

10段数固定型のリングオシレータ
11前段D−FF
12 M入力XOR(排他的論理和回路)
13後段D−FF
14 2入力XOR(排他的論理和回路)
15セレクタ
20段数可変型のリングオシレータ
21遅延生成部A
22 遅延生成部B
23 セレクタ
100,200,300,400 制御部
101,201,301,302,401,402 カウンタ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ