JP5074359B2 - Random number generator - Google Patents

Random number generator Download PDF

Info

Publication number
JP5074359B2
JP5074359B2 JP2008290028A JP2008290028A JP5074359B2 JP 5074359 B2 JP5074359 B2 JP 5074359B2 JP 2008290028 A JP2008290028 A JP 2008290028A JP 2008290028 A JP2008290028 A JP 2008290028A JP 5074359 B2 JP5074359 B2 JP 5074359B2
Authority
JP
Japan
Prior art keywords
output
operation mode
delay
generation unit
random number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008290028A
Other languages
Japanese (ja)
Other versions
JP2010117846A (en
Inventor
公洋 山越
明洋 山岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008290028A priority Critical patent/JP5074359B2/en
Publication of JP2010117846A publication Critical patent/JP2010117846A/en
Application granted granted Critical
Publication of JP5074359B2 publication Critical patent/JP5074359B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pulse Circuits (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Description

本発明は、0,1の発生頻度の偏りが少なくランダム性を備えた予測不可能な真性乱数をディジタル論理ゲート回路のみで生成する乱数生成回路に関する。   The present invention relates to a random number generation circuit that generates an unpredictable true random number with little randomness of occurrence of 0 and 1 and having randomness only by a digital logic gate circuit.

暗号技術をベースとするセキュリティ分野では、乱数の生成が重要な役割を果たしている。暗号技術において利用される乱数は、安全性の根拠として値が予測不可能であることがあげられる。   In the security field based on cryptographic technology, random number generation plays an important role. Random numbers used in cryptographic techniques are unpredictable as a basis for security.

乱数の生成方法により、疑似乱数と真性乱数に分けられる。疑似乱数は生成のための数学的なアルゴリズムと乱数生成の初期値を決めると、周期性をもった乱数値の数値系列が一意的に決まってしまうので、何らかの原因により初期値が暴露されると発生乱数列を予測できてしまう。このため、乱数の予測不可能性を根拠とする暗号技術への適用においては、必ずしも十分な安全性を備えているとは言えなかった。   According to the random number generation method, it is divided into a pseudo-random number and a true random number. Pseudorandom numbers are determined by the mathematical algorithm for generation and the initial value of random number generation. The numerical sequence of random values with periodicity is uniquely determined, so if the initial value is exposed for some reason The generated random number sequence can be predicted. For this reason, in application to cryptographic techniques based on the unpredictability of random numbers, it cannot be said that the security is necessarily sufficient.

一方、真性乱数は数学的なアルゴリズムをベースとした決定論的な生成方法に頼るものではなく、例えば自然界に存在する揺らぎのようなランダム性を備えた物理現象を利用して生成するものであり、再現性がなく値の予測が原理的に不可能である性質を備えている。物理現象を利用した乱数生成回路としては、例えば熱雑音を乱数の生成源として利用する方法などが提案されている。この方法は、ディジタル信号処理の前段階として、微小な熱雑音信号をアナログ回路のアンプを用いて一旦増幅し、A/D(アナログ/ディジタル)変換器でディジタル信号に変換する構成を用いている。アナログ回路を用いているためディジタル集積回路への移植が容易でない課題があり、また実装する場合はアナログアンプとA/D変換器の回路用に、ディジタル回路用とは異なるプロセス工程が別途必要となりコスト高の要因となる課題があり、またアナログアンプ回路部の消費電力が大きい課題がある。   True random numbers, on the other hand, do not rely on deterministic generation methods based on mathematical algorithms, but are generated using physical phenomena with randomness such as fluctuations that exist in nature. It has the property that there is no reproducibility and the value cannot be predicted in principle. As a random number generation circuit using a physical phenomenon, for example, a method of using thermal noise as a random number generation source has been proposed. This method uses a configuration in which a minute thermal noise signal is once amplified using an analog circuit amplifier and converted into a digital signal by an A / D (analog / digital) converter as a pre-stage of digital signal processing. . Since analog circuits are used, there is a problem that porting to digital integrated circuits is not easy, and when mounting, separate process steps are required for analog amplifier and A / D converter circuits. There are problems that cause high costs, and there is a problem that the power consumption of the analog amplifier circuit section is large.

これに対して、真性乱数をディジタル論理ゲート回路のみで生成する方法が非特許文献1で提案されている。この方法は、図11に示すように、奇数段のインバータからなる複数のリングオシレータ回路の中間ノードの電圧値の排他的論理和をとり、この排他的論理和出力をD−FF(D型フリップフロップ)のサンプリング動作で取り出す構成である。リングオシレータは、発振周期に常に一定量のジッタを伴って互いに独立に自己発振しているため、これらの独立なリングオシレータの中間ノードの排他的論理和出力は、予測不可能なランダム性を備える。この排他的論理和出力に対して、D−FFにより一定周期でサンプリング動作を行うことにより、予測不可能な真性乱数列を取り出すことができる。   On the other hand, Non-Patent Document 1 proposes a method for generating a true random number using only a digital logic gate circuit. In this method, as shown in FIG. 11, an exclusive OR of the voltage values of intermediate nodes of a plurality of ring oscillator circuits composed of odd-numbered inverters is taken, and this exclusive OR output is converted to a D-FF (D type flip-flop). The sampling is performed by the sampling operation of (1). Since the ring oscillators self-oscillate independently of each other with a fixed amount of jitter in the oscillation period, the exclusive OR output of the intermediate nodes of these independent ring oscillators has unpredictable randomness. . For this exclusive OR output, an unpredictable true random number sequence can be extracted by performing a sampling operation with a fixed period by D-FF.

ところで、比較的長い周期の単一リングオシレータのみの構成では、発振周期に対するジッタの量が十分でないため、サンプリング周期が短い場合は前後のサンプリング値が相関をもってしまいランダム性が損なわれる。一方、前後のサンプリング値が相関をもたないようにするには、比較的長い間隔でサンプリング動作を行う必要があり、高いスループットが得られない。このため、単一のリングオシレータではなく図11に示すように、互いに独立な複数個(k個)のリングオシレータを用いて、その中間ノードの排他的論理和をとり、比較的短いサンプリング間隔でもサンプリング値が相関をもたないように工夫されている。   By the way, in the configuration of only a single ring oscillator having a relatively long cycle, the amount of jitter with respect to the oscillation cycle is not sufficient, and therefore, when the sampling cycle is short, the sampling values before and after are correlated and the randomness is impaired. On the other hand, in order to prevent the sampling values before and after being correlated, it is necessary to perform sampling operations at relatively long intervals, and high throughput cannot be obtained. For this reason, as shown in FIG. 11 instead of a single ring oscillator, a plurality of (k) ring oscillators independent from each other are used to obtain an exclusive OR of the intermediate nodes, even at a relatively short sampling interval. The sampling value is devised so as not to correlate.

ここで、リングオシレータを構成するインバータの段数が大きいと発振周期が長く、逆にインバータの段数が小さいと発振周期が短くなる傾向があるが、サンプリング値のランダム性を増やす目的で個々のインバータの段数をランダムに異なる段数とする構成がとられることが多い。
Sunar B.,Martin W.,Stinson D.,"A Provably Secure True Random Number Generator with Built-In Toletance to Active Attacks", IEEE Trans. Computers, vol.56, no.1, pp.109-119, January 2007
Here, if the number of inverter stages constituting the ring oscillator is large, the oscillation period is long, and conversely, if the number of inverter stages is small, the oscillation period tends to be short. However, for the purpose of increasing the randomness of the sampling values, In many cases, the number of stages is set to a different number of stages at random.
Sunar B., Martin W., Stinson D., "A Provably Secure True Random Number Generator with Built-In Toletance to Active Attacks", IEEE Trans. Computers, vol.56, no.1, pp.109-119, January 2007

非特許文献1に示す方法では、複数のリングオシレータの中間ノードの排他的論理和をとるため、ランダムな位相差で発振するリングオシレータの信号が重畳される影響により、排他的論理和出力、すなわちD−FFへの入力信号の遷移が頻発する。特に、ランダム性を増す目的でリングオシレータの個数を多くした場合は、この傾向がさらに顕著になる。   In the method shown in Non-Patent Document 1, since exclusive OR of intermediate nodes of a plurality of ring oscillators is performed, an exclusive OR output, that is, due to the influence of a ring oscillator signal oscillating with a random phase difference, that is, Transition of the input signal to the D-FF occurs frequently. In particular, this tendency becomes more prominent when the number of ring oscillators is increased for the purpose of increasing randomness.

ところで、過渡的な遷移状態にある中間電圧値をD−FFのラッチ動作でサンプリングする場合、CMOS回路の閾値電圧などの特性上、ローとしてラッチする確率とハイとしてラッチする確率にバイアス(偏り)が生じやすい。これは、CMOS回路で構成されるD−FFへの入力電圧をハイとして認識するかローとして認識するかの判定電位が、電源電圧の1/2の電位から微妙にずれていることに起因している。   By the way, when sampling an intermediate voltage value in a transitional state by a D-FF latch operation, bias (bias) between the probability of latching as low and the probability of latching as high due to characteristics such as the threshold voltage of the CMOS circuit. Is likely to occur. This is because the determination potential for recognizing the input voltage to the D-FF constituted by the CMOS circuit as high or low is slightly deviated from the half of the power supply voltage. ing.

特に、インバータの段数が小さく発振周期の短いリングオシレータの中間ノードの値が排他的論理和の対象となる場合は、ハイとローのラッチ出力の偏り傾向はより顕著になる。本来、サンプリング値のランダム性を増す目的で導入された複数のリングオシレータの排他的論理和構成であるが、CMOS回路では、これが原因となってサンプリングの際にハイとローのラッチ出力の偏り、すなわちサンプリング動作による0と1の乱数の生成頻度に偏りが生じる新たな問題が生じる。   In particular, when the value of the intermediate node of the ring oscillator having a small number of inverter stages and a short oscillation cycle is the subject of exclusive OR, the bias tendency of the high and low latch outputs becomes more prominent. Originally, it is an exclusive OR configuration of a plurality of ring oscillators introduced for the purpose of increasing the randomness of the sampling value, but in the CMOS circuit, this causes the bias of the high and low latch outputs during sampling, That is, a new problem occurs in which the frequency of random numbers 0 and 1 generated by the sampling operation is biased.

予測不可能性は「よい乱数」の必要条件であるが、0と1の生成頻度に偏りがあることは、特に暗号技術への適用においてはセキュリティの低下が懸念され好ましくない。   Unpredictability is a necessary condition for a “good random number”, but there is a bias in the generation frequency of 0 and 1, particularly in application to cryptographic techniques, which is not preferable because of a concern about security degradation.

ここで、サンプリングに用いる信号の状態遷移の回数を減らすためには、長い発振周期のリングオシレータを用いる方法が考えられる。この長い発振周期のリングオシレータでは、発振周期のジッタの割合は小さくなる傾向がある。このため、サンプリングの時間間隔を発振周期のジッタ量よりも十分に大きくとらなければ、前述したように前後のサンプリング値が相関をもってしまい、ランダム性が損なわれる問題を生じる。したがって、発振周期の長いリングオシレータのみを用いた構成の場合、ランダム性の高い乱数値をサンプリングするには、サンプリングに用いるD−FFのクロック周波数として低速クロックを用いる必要が生じ、スループットの低下が避けられない。   Here, in order to reduce the number of state transitions of the signal used for sampling, a method using a ring oscillator having a long oscillation period can be considered. In this ring oscillator having a long oscillation period, the jitter ratio of the oscillation period tends to be small. For this reason, unless the sampling time interval is set sufficiently larger than the jitter amount of the oscillation period, the sampling values before and after have a correlation as described above, resulting in a problem that the randomness is impaired. Therefore, in the case of a configuration using only a ring oscillator having a long oscillation cycle, in order to sample a random value with high randomness, it is necessary to use a low-speed clock as the clock frequency of the D-FF used for sampling, and throughput is reduced. Inevitable.

このように、従来のリングオシレータを用いた乱数生成回路では、乱数のランダム性と高スループットを両立することが困難であった。   As described above, in a random number generation circuit using a conventional ring oscillator, it is difficult to achieve both randomness of random numbers and high throughput.

本発明は、ディジタル論理ゲート回路のみで、予測不可能なランダム性の高い乱数列を高スループットで発生させることができる乱数生成回路を提供することを目的とする。   An object of the present invention is to provide a random number generation circuit capable of generating an unpredictable random number sequence having high randomness with high throughput only by a digital logic gate circuit.

第1の発明は、奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、奇数La 段のインバータをカスケードに接続した遅延生成部Aと、偶数Lb 段のインバータをカスケードに接続し、その初段のインバータに遅延生成部Aの最終段のインバータの出力が接続される遅延生成部Bと、遅延生成部Aの最終段のインバータの出力と遅延生成部Bの最終段のインバータの出力とを切り替え、遅延生成部Aの初段のインバータに接続するセレクタと、セレクタに対して、クロックの周期内で遅延生成部Aの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、遅延生成部Bの最終段のインバータの出力に切り替えて奇数(La +Lb )段のインバータで長周期のリングオシレータを形成する動作モードBを選択する制御信号を出力する制御部とを備え、動作モードAと動作モードBを交互に切り替えて発振動作を継続しながら、動作モードBのタイミングでリングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である。   According to a first aspect of the present invention, there is provided a random number generation circuit for latching an intermediate node output of a ring oscillator including an odd number of stages of inverters with a clock and outputting the result as a random number value. An even number Lb stage inverter is connected in a cascade, a delay generation unit B in which the output of the final stage inverter of the delay generation unit A is connected to the first stage inverter, and the output and delay of the final stage inverter of the delay generation unit A The output of the last stage inverter of the generation unit B is switched to the output of the last stage inverter of the delay generation unit A within the clock cycle with respect to the selector connected to the first stage inverter of the delay generation unit A and the selector. The operation mode A is switched to form a short-cycle ring oscillator with an odd-numbered La-stage inverter, and the output of the final-stage inverter of the delay generation section B And a control unit that outputs a control signal for selecting an operation mode B that forms a long-cycle ring oscillator with an odd (La + Lb) stage inverter, and oscillates by alternately switching between the operation mode A and the operation mode B. While the operation is continued, the intermediate node output of the ring oscillator is latched at the timing of the operation mode B and output as a random value.

第2の発明は、奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、奇数La 段のインバータをカスケードに接続した遅延生成部Aと、偶数Lb 段のインバータをカスケードに接続した遅延生成部Bと、偶数Lc 段のインバータをカスケードに接続し、その初段のインバータに遅延生成部Aの最終段のインバータの出力が接続される遅延生成部Cと、遅延生成部Aの最終段のインバータの出力と遅延生成部Bの最終段のインバータの出力とを切り替え、遅延生成部Aの初段のインバータに接続する第1のセレクタと、遅延生成部Aの最終段のインバータの出力と遅延生成部Cの最終段のインバータの出力とを切り替え、遅延生成部Bの初段のインバータに接続する第2のセレクタと、第1のセレクタおよび第2のセレクタに対して、クロックの周期内で遅延生成部Aの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、第1のセレクタに対して遅延生成部Bの最終段のインバータの出力に切り替え、第2のセレクタに対して遅延生成部Aの最終段のインバータの出力に切り替えて奇数(La +Lb )段のインバータで長周期のリングオシレータを形成する動作モードBと、第1のセレクタおよび第2のセレクタに対して、遅延生成部Bおよび遅延生成部Cの各最終段のインバータの出力に切り替えて奇数(La +Lb +Lc )段のインバータで動作モードBよりさらに長周期のリングオシレータを形成する動作モードCとを選択する制御信号を出力する制御部とを備え、動作モードAと動作モードBと動作モードCを順次切り替えて発振動作を継続しながら、動作モードCのタイミングでリングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である。   According to a second aspect of the present invention, there is provided a random number generation circuit that latches an intermediate node output of a ring oscillator composed of an odd number of inverters with a clock and outputs a random number value. Delay generator B in which even Lb stage inverters are connected in cascade, and delay generator B in which even Lc stage inverters are connected in cascade, and the output of the last inverter in delay generator A is connected to the first inverter. A first selector that switches between C, the output of the final stage inverter of the delay generation unit A and the output of the final stage inverter of the delay generation unit B, and is connected to the first stage inverter of the delay generation unit A; The output of the last stage inverter of A and the output of the last stage inverter of the delay generation section C are switched and connected to the first stage inverter of the delay generation section B The second selector, the first selector, and the second selector are switched to the output of the final stage inverter of the delay generation unit A within the clock period, and the short period ring oscillator is switched by the odd number La stage inverter. The operation mode A to be formed is switched to the output of the last stage inverter of the delay generation unit B for the first selector, and is switched to the output of the last stage inverter of the delay generation unit A for the second selector. With respect to the operation mode B in which a long-cycle ring oscillator is formed by (La + Lb) stage inverters, and the first and second selectors, the final stage inverters of the delay generation unit B and the delay generation unit C Switch to output and select an operation mode C which forms a ring oscillator having a longer period than the operation mode B with an odd (La + Lb + Lc) stage inverter. A control unit for outputting a signal, and sequentially switching between operation mode A, operation mode B, and operation mode C to continue the oscillation operation, and latch the intermediate node output of the ring oscillator at the timing of operation mode C, As the output.

第3の発明は、奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、奇数La 段のインバータをカスケードに接続した遅延生成部Aを3以上の奇数p個と、p個の遅延生成部Aをリング状に配置したときに、遅延生成部Aごとに最終段のインバータの出力と前段の遅延生成部Aの最終段のインバータの出力とを切り替え、当該遅延生成部Aの初段のインバータに接続するp個の第1のセレクタと、第1のセレクタに対して、クロックの周期内で各遅延生成部Aごとにそれぞれの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、前段の遅延生成部Aの最終段のインバータの出力に切り替えて奇数(La ×p)段のインバータで長周期のリングオシレータを形成する動作モードBを選択する制御信号を出力する制御部とを備え、動作モードAと動作モードBを交互に切り替えて発振動作を継続しながら、動作モードBのタイミングでリングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である。   According to a third aspect of the present invention, there is provided a random number generation circuit that latches an intermediate node output of a ring oscillator composed of an odd number of stages of an inverter with a clock and outputs it as a random number value. When the above odd number p and p delay generation units A are arranged in a ring shape, the output of the final stage inverter and the output of the final stage inverter of the previous delay generation unit A for each delay generation unit A And the p first selectors connected to the first stage inverter of the delay generation unit A, and the first stage inverter for each delay generation unit A within the clock period with respect to the first selector. Switch to the output of the inverter of the last stage of the delay stage A of the previous stage and the operation mode A in which a short cycle ring oscillator is formed by an odd La stage inverter. A control unit for outputting a control signal for selecting an operation mode B for forming a long-cycle ring oscillator with an odd (La × p) stage inverter, and switching between the operation mode A and the operation mode B alternately to perform an oscillation operation. While continuing, the intermediate node output of the ring oscillator is latched at the timing of the operation mode B and output as a random value.

第4の発明は、第3の発明の乱数生成回路において、p個の遅延生成部Aおよび第1のセレクタを単位とする遅延生成部Dを3以上の奇数q個と、q個の遅延生成部Dをリング状に配置したときに、遅延生成部Dごとに最終段のインバータの出力と前段の遅延生成部Dの最終段のインバータの出力とを切り替え、当該遅延生成部Dの初段のインバータに接続するq個の第2のセレクタとを備え、制御部は、第2のセレクタに対して、クロックの周期内で各遅延生成部Dごとにそれぞれの最終段のインバータの出力に切り替えて奇数(La ×p)段のインバータで長周期のリングオシレータを形成する動作モードBと、前段の遅延生成部Dの最終段のインバータの出力に切り替えて奇数(La ×p×q)段のインバータでさらに長周期のリングオシレータを形成する動作モードCを選択する制御信号を出力し、動作モードAと動作モードBと動作モードCを順次切り替えて発振動作を継続しながら、動作モードCのタイミングでリングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である。   According to a fourth aspect of the invention, in the random number generation circuit according to the third aspect of the invention, the delay generation units D each including p delay generation units A and the first selector are divided into three or more odd q and q delay generations. When the section D is arranged in a ring shape, the output of the last stage inverter and the output of the last stage inverter of the previous delay generation section D are switched for each delay generation section D, and the first stage inverter of the delay generation section D is switched Q second selectors connected to each other, and the control unit switches to the output of the inverter at the last stage for each delay generation unit D within the clock period and outputs an odd number to the second selector. Switch to the output of the last stage inverter of the previous stage delay generator D by switching to the operation mode B in which a long-period ring oscillator is formed with (La * p) stage inverters, and with an odd (La * p * q) stage inverter Long-period ring oscillating The control signal for selecting the operation mode C forming the oscillator is output, and the intermediate node output of the ring oscillator is output at the timing of the operation mode C while continuing the oscillation operation by sequentially switching the operation mode A, the operation mode B, and the operation mode C. Is latched and output as a random value.

第1〜第4の発明の乱数生成回路において、遅延生成部Aの1つのインバータに代えて、外部から入力するリセット信号によりインバータ動作を有効または無効とし、リングオシレータの動作状態をアクティブ状態または休止状態に切り替える論理ゲートを備える構成としてもよい。   In the random number generation circuit according to any one of the first to fourth inventions, the inverter operation is enabled or disabled by a reset signal input from the outside instead of one inverter of the delay generation unit A, and the operation state of the ring oscillator is set to an active state or a pause state A logic gate that switches to a state may be provided.

第1,第3の発明の乱数生成回路において、制御部は、クロックとクロックを遅延させた遅延クロックの位相差に対応する制御信号でセレクタを切り替え、かつ動作モードAより動作モードBの動作時間が長くなるように遅延クロックの遅延時間が設定される構成としてもよい。   In the random number generation circuits of the first and third inventions, the controller switches the selector with a control signal corresponding to the phase difference between the clock and the delayed clock, and the operation time from the operation mode A to the operation mode B The delay time of the delay clock may be set so as to be longer.

第2,第4の発明の乱数生成回路において、制御部は、クロックとクロックを遅延させた遅延クロックの位相差に対応する制御信号で第1のセレクタおよび第2のセレクタを切り替え、かつ動作モードCの動作時間が最長になるように遅延クロックの遅延時間が設定される構成としてもよい。   In the random number generation circuits according to the second and fourth inventions, the control unit switches between the first selector and the second selector with a control signal corresponding to the phase difference between the clock and the delayed clock, and the operation mode. The delay time of the delay clock may be set so that the operation time of C becomes the longest.

第1〜第4の発明の乱数生成回路において、各動作モードが切り替えられるリングオシレータを複数個備え、制御部は、複数個のリングオシレータの各動作モードを一括して切り替える構成であり、複数個のリングオシレータの中間ノード出力の排他的論理和をとり、その出力をラッチし、乱数値として出力する構成としてもよい。   In the random number generation circuit according to the first to fourth inventions, a plurality of ring oscillators for switching each operation mode are provided, and the control unit is configured to collectively switch each operation mode of the plurality of ring oscillators. It is also possible to take an exclusive OR of the intermediate node outputs of the ring oscillator, latch the output, and output as a random value.

第1〜第4の発明の乱数生成回路において、各動作モードが切り替えられるリングオシレータを複数個備え、制御部は、複数個のリングオシレータにそれぞれ個別に設け、複数個のリングオシレータの各動作モードを制御信号でそれぞれ個別に切り替える構成であり、複数個のリングオシレータの中間ノード出力の排他的論理和をとり、その出力をラッチし、乱数値として出力する構成としてもよい。   In the random number generation circuit according to any one of the first to fourth inventions, a plurality of ring oscillators for switching each operation mode are provided, and the control unit is individually provided for each of the plurality of ring oscillators, and each operation mode of the plurality of ring oscillators is provided. May be individually switched by a control signal, and an exclusive OR of intermediate node outputs of a plurality of ring oscillators may be obtained, and the output may be latched and output as a random number value.

第1〜第4の発明の乱数生成回路において、ラッチした乱数値を入力し、0,1の頻度にバイアスのある乱数列をバランスした乱数列に変換する均等化回路を備えてもよい。   The random number generation circuit according to any one of the first to fourth aspects of the present invention may include an equalization circuit that inputs a latched random number value and converts a random number sequence that is biased with a frequency of 0 or 1 into a random number sequence that is balanced.

本発明の乱数生成回路は、発振に使用するインバータの段数を、乱数のサンプリング動作に同期した1クロック内で段階的に切り替えて動作させることができる。段数の切り替え動作では、少ないインバータ段数でランダム性の高い動作モードを初期状態とし、そのままインバータ段数の多い動作モードに移行するため、ランダム性を蓄積したまま発振動作が継続する。   The random number generation circuit of the present invention can be operated by switching the number of inverter stages used for oscillation stepwise within one clock synchronized with the random number sampling operation. In the switching operation of the number of stages, since the operation mode with high randomness with a small number of inverter stages is set as the initial state and the operation mode is shifted to the operation mode with a large number of inverter stages as it is, the oscillation operation is continued while accumulating the randomness.

特に、最初の動作モードとして1段のみのインバータのリングオシレータが形成される場合には、ランダム性が非常に高い不安定状態を次の動作モードの初期状態として引き継ぐことができる。そして、インバータ段数が少なく発振周期の短い動作モードからスタートするため、短時間で高いランダム性を蓄積でき、乱数生成に要するサンプリング周期を短く設定したまま高いランダム性を実現することができる。また、インバータ段数を段階的に切り替えることにより、均一でない多用なランダム性を短時間で加味することができる。特に、入れ子状の多重構造リングオシレータでは、多用なランダム性を重畳して最終的な単一発振に至るため、ランダム性の極めて高い乱数を生成することができる。   In particular, when a single-stage inverter ring oscillator is formed as the first operation mode, an unstable state with very high randomness can be taken over as the initial state of the next operation mode. And since it starts from an operation mode with a small number of inverter stages and a short oscillation cycle, high randomness can be accumulated in a short time, and high randomness can be realized with a short sampling period required for random number generation. Further, by switching the number of inverter stages step by step, it is possible to take into account a variety of non-uniform randomness in a short time. In particular, a nested multi-structure ring oscillator can generate a random number with extremely high randomness because a large number of randomities are superimposed to reach a final single oscillation.

また、サンプリング動作が行われる最終動作モードでは、最も発振周期が長いリングオシレータが動作しているため、サンプリング対象ノードの状態遷移が少なくてすみ、0,1の発生頻度のバランスを高いレベルで実現することができる。   In the final operation mode in which the sampling operation is performed, the ring oscillator with the longest oscillation cycle is operating, so that the state transition of the sampling target node can be reduced, and the occurrence frequency balance of 0 and 1 can be realized at a high level. can do.

したがって、本発明の乱数生成回路は、予測不可能なランダム性の高い乱数列を、0,1の発生頻度のバランスを高いレベルで保持しつつ、高スループット化を実現することができる。   Therefore, the random number generation circuit of the present invention can achieve high throughput while maintaining a random number sequence with high randomness that cannot be predicted while maintaining a high balance of the occurrence frequency of 0 and 1.

(第1の実施形態)
図1は、本発明の乱数生成回路の第1の実施形態を示す。本実施形態の特徴は、リングオシレータを構成するインバータの段数を2段階に切り替え、発振周期が短周期の動作モードAと長周期の動作モードBを交互に繰り返し、動作モードBでリングオシレータの出力データをラッチするところにある。
(First embodiment)
FIG. 1 shows a first embodiment of a random number generation circuit according to the present invention. The feature of the present embodiment is that the number of inverter stages constituting the ring oscillator is switched to two stages, the operation mode A having a short oscillation cycle and the operation mode B having a long cycle are alternately repeated, and the output of the ring oscillator in the operation mode B It is where data is latched.

図1において、本実施形態のリングオシレータ10は、遅延生成部A11と遅延生成部B12をセレクタ15を介して接続した構成である。遅延生成部A11は、2入力NANDとインバータをカスケード接続した構成であり、2入力NANDとインバータの総段数を奇数La 段とする。La の最小値は1であり、この場合は2入力NANDのみで構成される。遅延生成部B12は、インバータをカスケード接続した構成であり、インバータの段数を偶数Lb 段とする。La を比較的小さい値とし、かつLa +Lb が比較的大きい値となるように設定する。たとえば、La =1、La +Lb =5や、La =3、La +Lb =7となる値を設定する。   In FIG. 1, the ring oscillator 10 of the present embodiment has a configuration in which a delay generation unit A11 and a delay generation unit B12 are connected via a selector 15. The delay generation unit A11 has a configuration in which a 2-input NAND and an inverter are cascade-connected, and the total number of stages of the 2-input NAND and the inverter is an odd number La. The minimum value of La is 1, and in this case, it is composed of only 2-input NAND. The delay generator B12 has a configuration in which inverters are cascade-connected, and the number of inverter stages is an even number Lb. La is set to a relatively small value and La + Lb is set to a relatively large value. For example, values such as La = 1, La + Lb = 5, La = 3, and La + Lb = 7 are set.

制御部30は、クロックとリセット信号を入力し、セレクタ15を切り替える制御信号およびクロックに同期した同期リセット信号を出力する。同期リセット信号は、遅延生成部A11の2入力NANDの一方の入力に接続される。遅延生成部A11の2入力NANDは、同期リセット信号がローのときは出力がハイに固定され、同期リセット信号がハイに遷移するとインバータとして機能し、遅延生成部A11が全体として奇数段のインバータになる。なお、本実施形態では2入力NANDを用いたが、同期リセット信号の位相を反転すれば2入力NORでもよい。また、2入力NANDの位置は、必ずしも遅延生成部A11の初段である必要はない。また、2入力NANDをインバータに代え、リセット信号を用いない構成としてもよい。この場合は、同期リセット信号が常にハイになっている状態と等価である。以下に示す実施形態においても同様である。   The control unit 30 receives the clock and the reset signal, and outputs a control signal for switching the selector 15 and a synchronous reset signal synchronized with the clock. The synchronous reset signal is connected to one input of the two-input NAND of the delay generation unit A11. The 2-input NAND of the delay generation unit A11 is fixed to high when the synchronous reset signal is low, functions as an inverter when the synchronous reset signal transitions high, and the delay generation unit A11 as a whole becomes an odd-numbered inverter. Become. In this embodiment, a two-input NAND is used, but a two-input NOR may be used if the phase of the synchronous reset signal is inverted. The position of the 2-input NAND is not necessarily the first stage of the delay generation unit A11. Further, the two-input NAND may be replaced with an inverter and a reset signal may not be used. This is equivalent to a state in which the synchronous reset signal is always high. The same applies to the embodiments described below.

遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力は、セレクタ15の一方の入力端子(L)および遅延生成部B12の初段のインバータに接続される。遅延生成部B12の最終段のインバータの出力は、セレクタ15の他方の入力端子(H)に接続される。セレクタ15は、制御部30から出力される制御信号により、2つの入力のいずれか一方を選択して遅延生成部A11の2入力NANDの他方の入力に接続する。ここで、同期リセット信号がローからハイに遷移して制御信号がロー(L)のときに、セレクタ15は遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力を選択し、遅延生成部A11の閉ループで形成されるリングオシレータが独立に短周期で発振する動作モードAとなる。また、制御信号がハイ(H)のときに、セレクタ15は遅延生成部B12の最終段のインバータの出力を選択し、遅延生成部A11,B12が連結した閉ループで形成されるリングオシレータが長周期で発振する動作モードBとなる。   The output of the last stage inverter (two-input NAND in the case of one stage) of the delay generation unit A11 is connected to one input terminal (L) of the selector 15 and the first stage inverter of the delay generation unit B12. The output of the inverter at the final stage of the delay generation unit B12 is connected to the other input terminal (H) of the selector 15. The selector 15 selects one of the two inputs by the control signal output from the control unit 30 and connects it to the other input of the two-input NAND of the delay generation unit A11. Here, when the synchronous reset signal transitions from low to high and the control signal is low (L), the selector 15 outputs the output of the final stage inverter (two-input NAND in the case of one stage) of the delay generation unit A11. When selected, the ring oscillator formed by the closed loop of the delay generation unit A11 becomes the operation mode A in which it independently oscillates in a short cycle. When the control signal is high (H), the selector 15 selects the output of the inverter at the final stage of the delay generation unit B12, and the ring oscillator formed by the closed loop in which the delay generation units A11 and B12 are connected has a long cycle. The operation mode B oscillates at.

遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力は、リングオシレータ10の出力としてD−FF21に接続される。D−FF21は、制御部30に入力するクロックをサンプリングタイミングとして入力し、動作モードBのタイミングでリングオシレータ10の出力をラッチする。   The output of the final stage inverter (two-input NAND in the case of one stage) of the delay generation unit A11 is connected to the D-FF 21 as the output of the ring oscillator 10. The D-FF 21 inputs the clock input to the control unit 30 as a sampling timing, and latches the output of the ring oscillator 10 at the timing of the operation mode B.

図2は、制御部30の構成例を示す。図3は、制御部30の動作例を示す。
図2および図3において、制御部30は、クロックに所定の遅延を与えた遅延クロックを生成する偶数段のインバータと、クロックと遅延クロックの否定論理和をとるNANDと、リセット信号を遅延クロックでラッチして同期リセット信号を出力するD−FFと、NANDの出力と同期リセット信号の論理和をとって制御信号を生成するANDとにより構成される。なお、1クロックに対する動作モードA,Bの動作時間の比率は、遅延クロックの遅延時間(インバータ段数)に応じた値となる。本実施形態では、遅延時間を長くして動作モードAの動作時間を短くし、相対的に動作モードBの動作時間を長くするのが好ましい。
FIG. 2 shows a configuration example of the control unit 30. FIG. 3 shows an operation example of the control unit 30.
2 and 3, the control unit 30 uses an even-numbered inverter that generates a delayed clock that gives a predetermined delay to the clock, a NAND that performs a negative OR of the clock and the delayed clock, and a reset signal as a delayed clock. A D-FF that latches and outputs a synchronous reset signal and an AND that generates a control signal by taking the logical sum of the NAND output and the synchronous reset signal. Note that the ratio of the operation time of the operation modes A and B to one clock is a value corresponding to the delay time (number of inverter stages) of the delay clock. In this embodiment, it is preferable to lengthen the delay time to shorten the operation time of the operation mode A, and relatively increase the operation time of the operation mode B.

以下、図1〜図3を参照し、本発明の乱数生成回路の第1の実施形態の動作について説明する。
初期状態のリセット信号はローであり、クロックの遷移にかかわらず同期リセット信号および制御信号もローであるため、遅延生成部A11が閉ループを形成するが、遅延生成部A11の2入力NANDの出力はハイに固定されるため発振動作はしない。すなわち、乱数生成回路を構成するリングオシレータの動作状態は休止状態である。次に、リセット信号がハイに遷移すると(t1)、次の遅延クロックがハイになるタイミングで同期リセット信号がハイになり(t2)、遅延生成部A11の2入力NANDはインバータとして動作するため、リングオシレータ10は遅延生成部A11の閉ループで発振動作する動作モードAになる。すなわち、乱数生成回路を構成するリングオシレータの動作状態はアクティ状態になる。このとき、遅延生成部A11のインバータの奇数段数La が小さめの値に設定されているため、短周期で自己発振する。発振周期の短いリングオシレータでは、発振周期のジッタ成分の割合が大きいため、短時間でランダム性をもった出力値が得られる。
The operation of the first embodiment of the random number generation circuit of the present invention will be described below with reference to FIGS.
Since the reset signal in the initial state is low and the synchronous reset signal and the control signal are also low regardless of the clock transition, the delay generation unit A11 forms a closed loop, but the output of the 2-input NAND of the delay generation unit A11 is Since it is fixed high, it does not oscillate. In other words, the operating state of the ring oscillator that constitutes the random number generation circuit is a pause state. Next, when the reset signal transitions to high (t1), the synchronous reset signal goes high at the timing when the next delay clock goes high (t2), and the 2-input NAND of the delay generation unit A11 operates as an inverter. The ring oscillator 10 becomes an operation mode A in which the oscillation operation is performed in a closed loop of the delay generation unit A11. That is, the operating state of the ring oscillator that constitutes the random number generation circuit is in the active state. At this time, since the odd number of stages La of the inverter of the delay generation unit A11 is set to a small value, self-oscillation occurs in a short cycle. In a ring oscillator with a short oscillation period, since the ratio of the jitter component of the oscillation period is large, an output value with randomness can be obtained in a short time.

制御部30では、同期リセット信号がハイとなった後、NAND出力がハイになるタイミング(クロックの立ち下がり)で制御信号がハイに遷移すると(t3)、セレクタ15は遅延生成部B12と遅延生成部A11を接続する。これにより、リングオシレータ10は、遅延生成部A11,B12が連結して閉ループを形成し、奇数(La+Lb)段のインバータで自己発振する動作モードBに切り替わる。この時刻t3までに、動作モードAで出力値がランダムな状態で遷移しているため、動作モードBは動作モードAで生成されたランダムな状態を初期状態として引き継ぎ、比較的長周期で発振動作を継続する。そのため、動作モードBでは、従来の長周期の単一リングオシレータの構成のように発振動作を長時間継続させなくてもよい。また、発振周期が長いため、過渡的な遷移状態にある電位をサンプリングする確率が小さく、0,1の生成頻度のバイアスを低減することができる。   In the control unit 30, when the control signal transitions to high at the timing when the NAND output becomes high (clock fall) after the synchronous reset signal becomes high (t3), the selector 15 and the delay generation unit B12 and the delay generation Connect part A11. Accordingly, the ring oscillator 10 is switched to the operation mode B in which the delay generation units A11 and B12 are connected to form a closed loop and self-oscillate with an odd (La + Lb) stage inverter. By this time t3, since the output value has changed in a random state in the operation mode A, the operation mode B takes over the random state generated in the operation mode A as an initial state, and oscillates with a relatively long cycle. Continue. Therefore, in the operation mode B, the oscillation operation does not have to be continued for a long time as in the configuration of the conventional long-cycle single ring oscillator. In addition, since the oscillation period is long, the probability of sampling a potential in a transitional transition state is small, and the bias of the generation frequency of 0 and 1 can be reduced.

このように、リングオシレータ10が動作モードBに切り替わった後に、D−FF21がクロックの立ち上がり時刻t4でリングオシレータ10の出力をラッチすることにより、0,1の生成頻度のバランスに優れたランダム性の高い乱数値を生成することができる。その後のリングオシレータ10は、制御信号がローになる時刻t5で再び動作モードAになり、制御信号がハイになる時刻t6で動作モードBに切り替わり、D−FF21が時刻t7でその出力をラッチする。   As described above, after the ring oscillator 10 is switched to the operation mode B, the D-FF 21 latches the output of the ring oscillator 10 at the clock rising time t4. A high random number value can be generated. Thereafter, the ring oscillator 10 again enters the operation mode A at time t5 when the control signal becomes low, switches to operation mode B at time t6 when the control signal becomes high, and the D-FF 21 latches its output at time t7. .

ところで、制御部30では、クロックと、偶数段のインバータからなる遅延回路を介して生成される遅延クロックとの位相差を利用した微分回路で制御信号を生成している。このような制御信号は、多段インバータに起因する遅延時間の揺らぎ効果により毎クロック単位で遷移時刻にジッタ成分を含み、リングオシレータ10の動作モードの切り替え時刻もクロック毎にジッタ成分をもつため、リングオシレータ固有のランダム性に制御信号に起因するランダム性が加わった効果が得られる。   By the way, in the control part 30, the control signal is produced | generated by the differentiation circuit using the phase difference of a clock and the delay clock produced | generated via the delay circuit which consists of an even-numbered stage inverter. Such a control signal includes a jitter component at the transition time in every clock unit due to the delay time fluctuation effect caused by the multistage inverter, and the switching time of the operation mode of the ring oscillator 10 also has a jitter component for each clock. The effect is obtained by adding the randomness resulting from the control signal to the randomness inherent to the oscillator.

また、本実施形態では、最初に動作モードAからスタートするために、非同期に入力するリセット信号を遅延クロックでラッチして同期リセット信号を生成している。しかし、最初に動作モードBからスタートすることを許容する場合には、リセット信号をそのまま遅延生成部A11の2入力NANDに入力する構成としてもよい。その場合には、リセット信号の入力タイミングに応じて、リングオシレータ10のスタートが動作モードAと動作モードBのいずれかになるが、動作モードBの中で出力値がラッチされる動作は同じである。   In the present embodiment, in order to start from the operation mode A first, a reset signal input asynchronously is latched with a delay clock to generate a synchronous reset signal. However, when it is allowed to start from the operation mode B for the first time, the reset signal may be directly input to the 2-input NAND of the delay generation unit A11. In that case, depending on the input timing of the reset signal, the ring oscillator 10 starts either in the operation mode A or the operation mode B, but the operation in which the output value is latched in the operation mode B is the same. is there.

また、本実施形態の構成では、D−FF21でラッチ抽出した乱数値をそのまま用いても乱数のランダム性を高いレベルで保つことができる。ただし、0 ,1のバランスを完全に50%にできるわけではないので、さらに高いレベルでランダム性を保証するために、図1に示すようにD−FF21の後段に均等化回路22を接続し、その出力を最終的な乱数値としてもよい。例えば、均等化回路22に用いられるvon Neumann corrector は、2ビットずつペアを組み、ペアの値が同じ場合は両方を捨て、ペアの値が異なる場合はペアの最初の値を活かす手法であり、0,1の頻度にバイアスのある数列がバランスした数列に変換されるものであるが、スループットが低下する。したがって、本実施形態において、均等化回路22を含まない構成は、生成される乱数のランダム性と高スループットの両立を図ったものといえる。   Further, in the configuration of the present embodiment, the randomness of the random numbers can be maintained at a high level even if the random values latched and extracted by the D-FF 21 are used as they are. However, since the balance between 0 and 1 cannot be made completely 50%, an equalization circuit 22 is connected to the subsequent stage of the D-FF 21 as shown in FIG. The output may be the final random value. For example, von Neumann corrector used in the equalization circuit 22 is a method of pairing two bits at a time, discarding both when the pair values are the same, and utilizing the first value of the pair when the pair values are different. Although a number sequence having a bias of 0 and 1 is converted into a number sequence that is balanced, the throughput is reduced. Therefore, in the present embodiment, the configuration that does not include the equalization circuit 22 can be said to achieve both the randomness of the generated random numbers and high throughput.

(第2の実施形態)
図4は、本発明の乱数生成回路の第2の実施形態を示す。
本実施形態の特徴は、第1の実施形態におけるリングオシレータ10を複数n個用意し、各リングオシレータ10−1〜10−nの遅延生成部A11の2入力NANDとインバータの総段数の奇数La と、遅延生成部B12のインバータの段数の偶数Lb をそれぞれ独立に設定し、各遅延生成部A11の出力をEXOR23で排他的論理和をとり、D−FF21に入力するところにある。各リングオシレータ10−1〜10−nの出力に、第1の実施形態に示した高いランダム性がすでに確保されており、それらの出力の排他的論理和をとることにより、D−FF21で得られる乱数のランダム性をさらに高めることができる。
(Second Embodiment)
FIG. 4 shows a second embodiment of the random number generation circuit of the present invention.
A feature of the present embodiment is that a plurality of n ring oscillators 10 in the first embodiment are prepared, and a two-input NAND of the delay generation unit A11 of each ring oscillator 10-1 to 10-n and an odd number La of the total number of inverters. And the even number Lb of the number of inverters of the delay generation unit B12 are set independently, and the outputs of the delay generation units A11 are exclusive ORed by the EXOR 23 and input to the D-FF 21. The high randomness shown in the first embodiment is already ensured at the outputs of the ring oscillators 10-1 to 10-n, and the D-FF 21 obtains the exclusive OR of these outputs. The randomness of the generated random number can be further enhanced.

なお、本実施形態における制御部30は第1の実施形態と同様の構成であり、生成される同期リセット信号および制御信号により、各リングオシレータ10−1〜10−nを一括制御する構成である。一方、各リングオシレータ10−1〜10−nを制御する制御部30を個別に設け、共通のクロックおよびリセット信号からそれぞれ独立に同期リセット信号および制御信号を生成し、各リングオシレータ10−1〜10−nの動作モードを切り替えるタイミングをランダムにしてもよい。   Note that the control unit 30 in the present embodiment has the same configuration as that of the first embodiment, and is configured to collectively control each of the ring oscillators 10-1 to 10-n using the generated synchronous reset signal and control signal. . On the other hand, a control unit 30 for controlling each of the ring oscillators 10-1 to 10-n is individually provided, and a synchronous reset signal and a control signal are generated independently from a common clock and a reset signal, respectively. The timing for switching the 10-n operation mode may be random.

(第3の実施形態)
図5は、本発明の乱数生成回路の第3の実施形態を示す。本実施形態の特徴は、リングオシレータを構成するインバータの段数を3段階に切り替え、発振周期が短周期の動作モードAと、長周期の動作モードBと、さらに長周期の動作モードCを順番に繰り返し、動作モードCでリングオシレータの出力をラッチするところにある。
(Third embodiment)
FIG. 5 shows a third embodiment of the random number generation circuit of the present invention. The feature of this embodiment is that the number of inverter stages constituting the ring oscillator is switched to three stages, and an operation mode A having a short oscillation period, an operation mode B having a long period, and an operation mode C having a long period are sequentially arranged. Repeatedly, in the operation mode C, the output of the ring oscillator is latched.

図5において、本実施形態のリングオシレータ10は、遅延生成部A11と遅延生成部B12をセレクタ15を介して接続し、遅延生成部B12と遅延生成部C13をセレクタ16を介して接続した構成である。遅延生成部A11は、2入力NANDとインバータをカスケード接続した構成であり、2入力NANDとインバータの総段数を奇数La 段とする。La の最小値は1であり、この場合は2入力NANDのみで構成される。遅延生成部B12および遅延生成部C13は、インバータをカスケード接続した構成である。インバータの段数をそれぞれ偶数Lb 段、偶数Lc 段とする。La を比較的小さい値とし、かつLa +Lb がやや大きい値となるようにLb を設定し、かつLa +Lb +Lc がさらに大きい値となるようにLc を設定する。たとえば、La =1、La +Lb =5、La +Lb +Lc =9や、La =3、La +Lb =7、La +Lb +Lc =11となる値を設定する。   In FIG. 5, the ring oscillator 10 of the present embodiment has a configuration in which a delay generation unit A11 and a delay generation unit B12 are connected via a selector 15, and the delay generation unit B12 and the delay generation unit C13 are connected via a selector 16. is there. The delay generation unit A11 has a configuration in which a 2-input NAND and an inverter are cascade-connected, and the total number of stages of the 2-input NAND and the inverter is an odd number La. The minimum value of La is 1, and in this case, it is composed of only 2-input NAND. The delay generation unit B12 and the delay generation unit C13 are configured by cascading inverters. The number of inverter stages is an even Lb stage and an even Lc stage, respectively. Lb is set so that La is a relatively small value, La + Lb is a slightly large value, and Lc is set so that La + Lb + Lc is a larger value. For example, values are set such that La = 1, La + Lb = 5, La + Lb + Lc = 9, La = 3, La + Lb = 7, La + Lb + Lc = 11.

制御部31は、クロックとリセット信号を入力し、セレクタ15を切り替える制御信号1、セレクタ16を切り替える制御信号2、クロックに同期した同期リセット信号およびサンプリングクロックを出力する。同期リセット信号は、遅延生成部A11の2入力NANDの一方の入力に接続される。遅延生成部A11の2入力NANDは、同期リセット信号がローのときは出力がハイに固定され、同期リセット信号がハイに遷移するとインバータとして機能し、遅延生成部A11が全体として奇数段のインバータになる。   The control unit 31 inputs a clock and a reset signal, and outputs a control signal 1 for switching the selector 15, a control signal 2 for switching the selector 16, a synchronous reset signal synchronized with the clock, and a sampling clock. The synchronous reset signal is connected to one input of the two-input NAND of the delay generation unit A11. The 2-input NAND of the delay generation unit A11 is fixed to high when the synchronous reset signal is low, functions as an inverter when the synchronous reset signal transitions high, and the delay generation unit A11 as a whole becomes an odd-numbered inverter. Become.

遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力は、セレクタ15の一方の入力端子(L)、セレクタ16の一方の入力端子(L)、および遅延生成部C13の初段のインバータに接続される。遅延生成部C13の最終段のインバータの出力は、セレクタ16の他方の入力端子(H)に接続される。セレクタ16は、制御部31から出力される制御信号2により、2つの入力のいずれか一方を選択して遅延生成部B12の初段のインバータに接続する。遅延生成部B12の最終段のインバータの出力は、セレクタ15の他方の入力端子(H)に接続される。セレクタ15は、制御部31から出力される制御信号1により、2つの入力のいずれか一方を選択して遅延生成部A11の2入力NANDの他方の入力に接続する。   The output of the final stage inverter (two-input NAND in the case of one stage) of the delay generation unit A11 is one input terminal (L) of the selector 15, one input terminal (L) of the selector 16, and the delay generation unit C13. Connected to the first stage inverter. The output of the inverter at the final stage of the delay generation unit C13 is connected to the other input terminal (H) of the selector 16. The selector 16 selects one of the two inputs by the control signal 2 output from the control unit 31 and connects it to the first stage inverter of the delay generation unit B12. The output of the inverter at the final stage of the delay generation unit B12 is connected to the other input terminal (H) of the selector 15. The selector 15 selects one of the two inputs by the control signal 1 output from the control unit 31 and connects it to the other input of the two-input NAND of the delay generation unit A11.

ここで、同期リセット信号がローからハイに遷移して制御信号1および制御信号2がロー(L)のときに、セレクタ15,16は遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力を選択し、遅延生成部A11の閉ループで形成されるリングオシレータが独立に短周期で発振する動作モードAとなる。また、制御信号1がハイ(H)かつ制御信号2がロー(L)のときに、セレクタ15は遅延生成部B12の最終段のインバータの出力を選択し、セレクタ16は遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力を選択し、遅延生成部A11,B12が連結した閉ループで形成されるリングオシレータが長周期で発振する動作モードBとなる。また、制御信号1,2がハイ(H)のときに、セレクタ15は遅延生成部B12の最終段のインバータの出力を選択し、セレクタ16は遅延生成部C13の最終段のインバータの出力を選択し、遅延生成部A11,B12,C13が連結した閉ループで形成されるリングオシレータがさらに長周期で発振する動作モードCとなる。   Here, when the synchronous reset signal transitions from low to high and the control signal 1 and the control signal 2 are low (L), the selectors 15 and 16 are the last stage inverter of the delay generation unit A11 (in the case of one stage). The output of the 2-input NAND) is selected, and the ring oscillator formed by the closed loop of the delay generation unit A11 is in the operation mode A in which it independently oscillates in a short cycle. When the control signal 1 is high (H) and the control signal 2 is low (L), the selector 15 selects the output of the inverter at the final stage of the delay generation unit B12, and the selector 16 selects the final output of the delay generation unit A11. The output of the stage inverter (two-input NAND in the case of one stage) is selected, and the ring oscillator formed by the closed loop in which the delay generators A11 and B12 are connected is in the operation mode B in which oscillation is performed with a long period. When the control signals 1 and 2 are high (H), the selector 15 selects the output of the final stage inverter of the delay generation unit B12, and the selector 16 selects the output of the final stage inverter of the delay generation unit C13. Then, the ring oscillator formed by the closed loop in which the delay generation units A11, B12, and C13 are connected becomes the operation mode C that oscillates with a longer period.

遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力は、リングオシレータ10の出力としてD−FF21に接続される。D−FF21は、制御部31から出力されるサンプリングタイミングでリングオシレータ10の出力をラッチする。   The output of the final stage inverter (two-input NAND in the case of one stage) of the delay generation unit A11 is connected to the D-FF 21 as the output of the ring oscillator 10. The D-FF 21 latches the output of the ring oscillator 10 at the sampling timing output from the control unit 31.

図6は、制御部31の構成例を示す。図7は、制御部31の動作例を示す。
図6および図7において、制御部31は、クロックに所定の遅延を与えた遅延クロックを生成する偶数段のインバータと、クロックと遅延クロックの否定論理和をとるNANDと、リセット信号を遅延クロックでラッチして同期リセット信号を出力するD−FFと、NANDの出力と同期リセット信号の論理和をとって制御信号1を生成するANDと、反転させた遅延クロックと同期リセット信号の論理和をとって制御信号2を生成するインバータおよびANDとにより構成される。また、遅延クロックがD−FF21のサンプリングクロックとして出力される。なお、1クロックに対する動作モードA,B,Cの動作時間の比率は、遅延クロックの遅延時間(インバータ段数)に応じた値となる。本実施形態では、遅延時間を長くして動作モードAの動作時間を短くし、相対的に動作モードCの動作時間を最長にするのが好ましい。
FIG. 6 shows a configuration example of the control unit 31. FIG. 7 shows an operation example of the control unit 31.
6 and 7, the control unit 31 uses an even-numbered inverter that generates a delayed clock that gives a predetermined delay to the clock, a NAND that performs a negative OR of the clock and the delayed clock, and a reset signal using the delayed clock. The D-FF that latches and outputs the synchronous reset signal, the AND that generates the control signal 1 by taking the logical sum of the NAND output and the synchronous reset signal, and the logical sum of the inverted delay clock and the synchronous reset signal. And an inverter that generates the control signal 2 and an AND. Further, the delay clock is output as the sampling clock of the D-FF 21. Note that the ratio of the operation time of the operation modes A, B, and C to one clock is a value corresponding to the delay time (number of inverter stages) of the delay clock. In the present embodiment, it is preferable to lengthen the delay time to shorten the operation time of the operation mode A and to relatively increase the operation time of the operation mode C.

以下、図5〜図7を参照し、本発明の乱数生成回路の第3の実施形態の動作について説明する。
初期状態のリセット信号はローであり、クロックの遷移にかかわらず同期リセット信号、制御信号1および制御信号2もローであるため、遅延生成部A11が閉ループを形成するが、遅延生成部A11の2入力NANDの出力はハイに固定されるため発振動作はしない。次に、リセット信号がハイに遷移すると(t1)、次の遅延クロックがハイになるタイミングで同期リセット信号がハイになり(t2)、遅延生成部A11の2入力NANDはインバータとして動作するため、リングオシレータ10は遅延生成部A11の閉ループで発振動作する動作モードAになる。このとき、遅延生成部A11のインバータの奇数段数La が小さめの値に設定されているため、短い周期で自己発振する。発振周期の短いリングオシレータでは、発振周期のジッタ成分の割合が大きいため、短時間でランダム性をもった出力値が得られる。
The operation of the third embodiment of the random number generation circuit of the present invention will be described below with reference to FIGS.
Since the reset signal in the initial state is low and the synchronous reset signal, the control signal 1 and the control signal 2 are also low regardless of the clock transition, the delay generation unit A11 forms a closed loop, but the delay generation unit A11 2 Since the output of the input NAND is fixed to high, no oscillation operation is performed. Next, when the reset signal transitions to high (t1), the synchronous reset signal goes high at the timing when the next delay clock goes high (t2), and the 2-input NAND of the delay generation unit A11 operates as an inverter. The ring oscillator 10 becomes an operation mode A in which the oscillation operation is performed in a closed loop of the delay generation unit A11. At this time, since the odd number of stages La of the inverter of the delay generation unit A11 is set to a small value, self-oscillation occurs in a short cycle. In a ring oscillator with a short oscillation period, since the ratio of the jitter component of the oscillation period is large, an output value with randomness can be obtained in a short time.

制御部31では、同期リセット信号がハイとなった後、NAND出力がハイになるタイミング(クロックの立ち下がり)で制御信号1がハイに遷移すると(t3)、セレクタ15は遅延生成部B12と遅延生成部A11を接続する。なお、図7では遅延クロックに対してNAND出力および制御信号1はそれぞれ論理ゲート分の遅延を強調しており、以下に示す制御信号2も同様である。これにより、リングオシレータ10は、遅延生成部A11,B12が連結して閉ループを形成し、奇数(La+Lb)段のインバータで自己発振する動作モードBに切り替わる。この時刻t3までに、動作モードAで出力値がランダムな状態で遷移しているため、動作モードBは動作モードAで生成されたランダムな状態を初期状態として引き継ぎ、比較的長周期で発振動作を継続する。そのため、動作モードBでは、従来の長周期の単一リングオシレータの構成のように発振動作を長時間継続させなくてもよい。   In the control unit 31, when the control signal 1 transitions to high at the timing when the NAND output becomes high (clock fall) after the synchronous reset signal becomes high (t3), the selector 15 and the delay generation unit B12 The generation unit A11 is connected. In FIG. 7, the NAND output and the control signal 1 emphasize the delay corresponding to the logic gate with respect to the delay clock, and the control signal 2 shown below is the same. Accordingly, the ring oscillator 10 is switched to the operation mode B in which the delay generation units A11 and B12 are connected to form a closed loop and self-oscillate with an odd (La + Lb) stage inverter. By this time t3, since the output value has changed in a random state in the operation mode A, the operation mode B takes over the random state generated in the operation mode A as an initial state, and oscillates with a relatively long cycle. Continue. Therefore, in the operation mode B, the oscillation operation does not have to be continued for a long time as in the configuration of the conventional long-cycle single ring oscillator.

制御信号1がハイとなった後、遅延クロックがローになるタイミングで制御信号2がハイに遷移すると(t4)、セレクタ16は遅延生成部C13と遅延生成部B12を接続する。これにより、リングオシレータ10は、遅延生成部A11,B12,C13が連結して閉ループを形成し、奇数(La +Lb +Lc )段のインバータで自己発振する動作モードCに切り替わる。動作モードCは動作モードBで生成されたランダムな状態を初期状態として引き継ぎ、さらに長周期で発振動作を継続する。そのため、動作モードCでは、従来の長周期の単一リングオシレータの構成のように発振動作を長時間継続させなくてもよい。また、発振周期が長いため、過渡的な遷移状態にある電位をサンプリングする確率が小さく、0,1の生成頻度のバイアスを低減することができる。   When the control signal 2 changes to high at the timing when the delay clock becomes low after the control signal 1 becomes high (t4), the selector 16 connects the delay generation unit C13 and the delay generation unit B12. As a result, the ring oscillator 10 is switched to the operation mode C in which the delay generators A11, B12, and C13 are connected to form a closed loop and self-oscillate with an odd (La + Lb + Lc) stage inverter. In the operation mode C, the random state generated in the operation mode B is inherited as an initial state, and the oscillation operation is continued with a long period. Therefore, in the operation mode C, the oscillation operation does not have to be continued for a long time as in the configuration of the conventional long-cycle single ring oscillator. In addition, since the oscillation period is long, the probability of sampling a potential in a transitional transition state is small, and the bias of the generation frequency of 0 and 1 can be reduced.

このように、リングオシレータ10が動作モードCに切り替わった後に、D−FF21がサンプリングクロック(遅延クロック)の立ち上がり時刻t5でリングオシレータ10の出力をラッチすることにより、0,1の生成頻度のバランスに優れたランダム性の高い乱数値を生成することができる。すなわち、3種類の各リングオシレータのジッタに起因するそれぞれのランダム性が重畳された乱数が生成される。その後のリングオシレータ10は、制御信号1,2がローになる時刻t6で再び動作モードAになり、続いて動作モードBに切り替わり、さらに動作モードCに切り替わり、D−FF21が時刻t9でその出力をラッチする。   In this way, after the ring oscillator 10 is switched to the operation mode C, the D-FF 21 latches the output of the ring oscillator 10 at the rising time t5 of the sampling clock (delayed clock), thereby balancing the generation frequency of 0 and 1 It is possible to generate a random value with excellent randomness. That is, a random number in which the randomness due to the jitter of each of the three types of ring oscillators is superimposed is generated. Thereafter, the ring oscillator 10 again enters the operation mode A at the time t6 when the control signals 1 and 2 become low, then switches to the operation mode B, further switches to the operation mode C, and the D-FF 21 outputs its output at the time t9. Latch.

ところで、制御部31では、クロックと、偶数段のインバータからなる遅延回路を介して生成される遅延クロックとの位相差を利用した微分回路で制御信号1を生成している。このような制御信号1は、多段インバータに起因する遅延時間の揺らぎ効果により毎クロック単位で遷移時刻にジッタ成分を含むため、リングオシレータ10の動作モードの切り替え時刻もクロック毎にジッタ成分をもつため、リングオシレータ固有のランダム性に制御信号に起因するランダム性が加わった効果が得られる。   By the way, in the control part 31, the control signal 1 is produced | generated by the differentiation circuit using the phase difference of a clock and the delay clock produced | generated via the delay circuit which consists of an even-numbered stage inverter. Since such a control signal 1 includes a jitter component at the transition time in units of clocks due to the fluctuation effect of the delay time caused by the multistage inverter, the switching time of the operation mode of the ring oscillator 10 also has a jitter component for each clock. The effect of adding the randomness resulting from the control signal to the randomness inherent to the ring oscillator can be obtained.

また、本実施形態では、最初に動作モードAからスタートするために、非同期に入力するリセット信号を遅延クロックでラッチして同期リセット信号を生成している。しかし、最初に動作モードBまたは動作モードCからスタートすることを許容する場合には、リセット信号をそのまま遅延生成部A11の2入力NANDに入力する構成としてもよい。その場合には、リセット信号の入力タイミングに応じて、リングオシレータ10のスタートが動作モードA,B,Cのいずれかになるが、動作モードCの中で乱数値がラッチ出力される動作は同じである。   In the present embodiment, in order to start from the operation mode A first, a reset signal input asynchronously is latched with a delay clock to generate a synchronous reset signal. However, when it is allowed to start from the operation mode B or the operation mode C for the first time, the reset signal may be directly input to the 2-input NAND of the delay generation unit A11. In that case, depending on the input timing of the reset signal, the ring oscillator 10 starts in one of the operation modes A, B, and C, but the operation in which the random number value is latched out in the operation mode C is the same. It is.

また、本実施形態の構成では、D−FF21でラッチ抽出した乱数値をそのまま用いても乱数のランダム性を高いレベルで保つことがでる。ただし、図5に示すようにD−FF21の後段に均等化回路22を接続し、さらに高いレベルで乱数のランダム性を保証するようにしてもよいが、スループットが低下する。したがって、均等化回路22を含まない構成は、生成される乱数のランダム性と高スループットの両立を図ったものといえる。   In the configuration of this embodiment, the randomness of the random number can be kept at a high level even if the random value latched and extracted by the D-FF 21 is used as it is. However, as shown in FIG. 5, an equalization circuit 22 may be connected to the subsequent stage of the D-FF 21 to guarantee the randomness of random numbers at a higher level, but the throughput decreases. Therefore, the configuration that does not include the equalization circuit 22 can be said to achieve both the randomness of the generated random numbers and high throughput.

(第4の実施形態)
図8は、本発明の乱数生成回路の第4の実施形態を示す。
本実施形態の特徴は、第3の実施形態におけるリングオシレータ10を複数n個用意し、各リングオシレータ10−1〜10−nの遅延生成部A11の2入力NANDとインバータの総段数の奇数La と、遅延生成部B12のインバータの段数の偶数Lb と、遅延生成部C13のインバータの段数の偶数Lc をそれぞれ独立に設定し、各遅延生成部A11の出力をEXOR23で排他的論理和をとり、D−FF21に入力するところにある。各リングオシレータ10−1〜10−nの出力に、第3の実施形態に示した高いランダム性がすでに確保されており、それらの出力の排他的論理和をとることにより、D−FF21で得られる乱数のランダム性をさらに高めることができる。
(Fourth embodiment)
FIG. 8 shows a fourth embodiment of the random number generation circuit of the present invention.
A feature of the present embodiment is that a plurality of n ring oscillators 10 according to the third embodiment are prepared, and a two-input NAND of the delay generation unit A11 of each ring oscillator 10-1 to 10-n and an odd number La of the total number of inverters. And an even number Lb of the number of inverters of the delay generation unit B12 and an even number Lc of the number of inverters of the delay generation unit C13 are set independently, and the output of each delay generation unit A11 is exclusive ORed by the EXOR 23, It is in the place to input to D-FF21. The high randomness shown in the third embodiment is already ensured at the outputs of the ring oscillators 10-1 to 10-n, and the D-FF 21 obtains the exclusive OR of these outputs. The randomness of the generated random number can be further enhanced.

なお、本実施形態における制御部31は第3の実施形態と同様の構成であり、生成される同期リセット信号、制御信号1および制御信号2により、各リングオシレータ10−1〜10−nを一括制御する構成である。一方、各リングオシレータ10−1〜10−nを制御する制御部31を個別に設け、共通のクロックおよびリセット信号からそれぞれ独立に同期リセット信号、制御信号1および制御信号2を生成し、各リングオシレータ10−1〜10−nの動作モードを切り替えるタイミングをランダムにしてもよい。ただし、D−FF21に与えるサンプリングクロックは、任意の1つの制御部31から出力する構成とする。   Note that the control unit 31 in this embodiment has the same configuration as that of the third embodiment, and the ring oscillators 10-1 to 10-n are collectively connected by the generated synchronous reset signal, control signal 1 and control signal 2. It is the structure to control. On the other hand, a control unit 31 for controlling each of the ring oscillators 10-1 to 10-n is individually provided, and a synchronous reset signal, a control signal 1 and a control signal 2 are generated independently from a common clock and a reset signal, respectively. The timing for switching the operation mode of the oscillators 10-1 to 10-n may be random. However, the sampling clock given to the D-FF 21 is configured to be output from any one control unit 31.

(第5の実施形態)
図9は、本発明の乱数生成回路の第5の実施形態を示す。本実施形態の特徴は、第1の実施形態と同様に、リングオシレータを構成するインバータの段数を2段階に切り替え、発振周期が短周期の動作モードAと長周期の動作モードBを交互に繰り返し、動作モードBでリングオシレータの出力データをラッチするところにある。ただし、第1の実施形態では、インバータの段数が奇数La と、奇数(La+Lb)の2段階で切り替えられるのに対して、本実施形態ではインバータの段数が奇数La 段と、その奇数倍の2段階で切り替えられる構成である。
(Fifth embodiment)
FIG. 9 shows a fifth embodiment of the random number generation circuit of the present invention. As in the first embodiment, the feature of this embodiment is that the number of inverters constituting the ring oscillator is switched to two stages, and the operation mode A having a short oscillation cycle and the operation mode B having a long cycle are alternately repeated. The output data of the ring oscillator is latched in the operation mode B. However, in the first embodiment, the number of inverter stages is switched between two stages, odd La and odd (La + Lb), whereas in this embodiment, the number of inverter stages is an odd La stage, which is 2 times the odd number. It is a configuration that can be switched in stages.

図9において、本実施形態のリングオシレータ10は、総段数が奇数La 段の2入力NANDとインバータをカスケード接続し、セレクタ15を介して閉ループを形成する遅延生成部A11をp個備える(pは3以上の奇数)。La の最小値は1であり、この場合は2入力NANDのみで構成される。また、各セレクタ15は、自己の遅延生成部A11のみで閉ループを形成するか、前段の遅延生成部A11の出力を次段の遅延生成部A11の入力に接続し、p個の遅延生成部A11の連結により閉ループを形成する。この後者の閉ループでは、インバータとしての総段数はLa ×p(奇数)となる。   In FIG. 9, the ring oscillator 10 of the present embodiment includes p delay generation units A11 that form a closed loop via a selector 15 by cascading two-input NANDs having a total number of odd stages La and inverters (p is Odd number of 3 or more). The minimum value of La is 1, and in this case, it is composed of only 2-input NAND. Each selector 15 forms a closed loop only with its own delay generation unit A11, or connects the output of the previous delay generation unit A11 to the input of the next delay generation unit A11, and p delay generation units A11. To form a closed loop. In this latter closed loop, the total number of stages as an inverter is La × p (odd number).

ここで、任意の1つの遅延生成部A11の最終段のインバータ(1段の場合は2入力NAND)の出力は、リングオシレータ10の出力としてD−FF21に接続される。   Here, the output of the final stage inverter (two-input NAND in the case of one stage) of any one delay generation unit A11 is connected to the D-FF 21 as the output of the ring oscillator 10.

制御部30は、クロックとリセット信号を入力し、各セレクタ15を切り替える制御信号を出力するとともに、クロックに同期した同期リセット信号を各遅延生成部A11の2入力NANDに与え、第1の実施形態と同様に動作させる。   The control unit 30 inputs a clock and a reset signal, outputs a control signal for switching each selector 15, and gives a synchronous reset signal synchronized with the clock to the two-input NAND of each delay generation unit A11. Operate in the same way.

すなわち、同期リセット信号がハイ、制御信号がローであるときに、遅延生成部A11の2入力NANDはインバータとして動作するため、各遅延生成部A11がそれぞれ閉ループを形成して短周期で発振する動作モードAになる。次に、制御信号がハイに遷移すると、リングオシレータ10は、奇数個の遅延生成部A11が連結して閉ループを形成し、奇数La ×p段のインバータで長周期発振する動作モードBに切り替わる。そして、リングオシレータ10が動作モードBに切り替わった後に、D−FF21がクロックの立ち上がり時刻でリングオシレータ10の出力をラッチする。このように、動作モードAにおいて短周期で発振して得られるランダム性の高い状態をそのまま引き継ぎつつ動作モードBに切り替わるため、ランダム性の高い乱数を得ることができる。   That is, when the synchronous reset signal is high and the control signal is low, the 2-input NAND of the delay generation unit A11 operates as an inverter, so that each delay generation unit A11 forms a closed loop and oscillates in a short cycle. It becomes mode A. Next, when the control signal transitions to high, the ring oscillator 10 is switched to an operation mode B in which an odd number of delay generation units A11 are connected to form a closed loop and the long period oscillation is performed by an odd number of La × p stage inverters. After the ring oscillator 10 is switched to the operation mode B, the D-FF 21 latches the output of the ring oscillator 10 at the clock rising time. In this way, since the state of high randomness obtained by oscillating in a short cycle in the operation mode A is switched to the operation mode B while taking over as it is, a random number with high randomness can be obtained.

(第6の実施形態)
図10は、本発明の乱数生成回路の第6の実施形態を示す。本実施形態の特徴は、第3の実施形態と同様に、リングオシレータを構成するインバータの段数を3段階に切り替え、発振周期が短周期の動作モードAと、長周期の動作モードBと、さらに長周期の動作モードCを順次繰り返し、動作モードCでリングオシレータの出力データをラッチするところにある。ただし、第3の実施形態では、インバータの段数が奇数La と、奇数(La +Lb )と、奇数(La +Lb +Lc )の3段階で切り替えられるのに対して、本実施形態ではインバータの段数が奇数La 段と、その奇数倍と、さらにその奇数倍の3段階で切り替えられる構成である。
(Sixth embodiment)
FIG. 10 shows a sixth embodiment of the random number generation circuit of the present invention. As in the third embodiment, the feature of the present embodiment is that the number of inverter stages constituting the ring oscillator is switched to three, the operation mode A having a short oscillation period, the operation mode B having a long period, and The long cycle operation mode C is sequentially repeated, and the output data of the ring oscillator is latched in the operation mode C. However, in the third embodiment, the number of inverter stages is switched in three stages of odd La, odd (La + Lb), and odd (La + Lb + Lc), whereas in this embodiment, the inverter has an odd number of stages. In this configuration, switching is performed in three stages of La stage, an odd multiple thereof, and an odd multiple thereof.

図10において、本実施形態のリングオシレータ10は、第5の実施形態のセレクタ15を介して閉ループを形成する遅延生成部A11をp個備えた構成を遅延生成部D14とし、さらにセレクタ16を介して閉ループを形成する遅延生成部D14をq個備える(qは3以上の奇数)。各セレクタ15,16は、自己の遅延生成部A11のみで閉ループを形成するか、前段の遅延生成部A11の出力を次段の遅延生成部A11の入力に接続し、p個の遅延生成部A11の連結により閉ループを形成するか、さらに前段の遅延生成部D14の出力を次段の遅延生成部D14の入力に接続し、q個の遅延生成部D14の連結により閉ループを形成する。この最後の閉ループでは、インバータとしての総段数はLa ×p×q(奇数)となる。   In FIG. 10, the ring oscillator 10 of the present embodiment has a configuration including p delay generation units A <b> 11 that form a closed loop via the selector 15 of the fifth embodiment as a delay generation unit D <b> 14, and further includes a selector 16. Q delay generation units D14 forming a closed loop (q is an odd number of 3 or more). Each of the selectors 15 and 16 forms a closed loop only with its own delay generation unit A11, or connects the output of the previous delay generation unit A11 to the input of the next delay generation unit A11, and p delay generation units A11. To form a closed loop, or connect the output of the previous delay generation unit D14 to the input of the next delay generation unit D14, and form a closed loop by connecting q delay generation units D14. In this final closed loop, the total number of stages as inverters is La × p × q (odd number).

ここで、任意の1つの遅延生成部D14の最終段のインバータ(1段の場合は2入力NAND)の出力は、リングオシレータ10の出力としてD−FF21に接続される。
制御部30は、クロックとリセット信号を入力し、各セレクタ15を切り替える制御信号1および各セレクタ16を切り替える制御信号2を出力するとともに、クロックに同期した同期リセット信号を各遅延生成部A11の2入力NANDに与え、第3の実施形態と同様に動作させる。
Here, the output of the final stage inverter (two-input NAND in the case of one stage) of any one delay generation unit D14 is connected to the D-FF 21 as the output of the ring oscillator 10.
The control unit 30 inputs a clock and a reset signal, outputs a control signal 1 for switching each selector 15 and a control signal 2 for switching each selector 16, and outputs a synchronous reset signal synchronized with the clock to 2 of each delay generation unit A11. An input NAND is applied to operate in the same manner as in the third embodiment.

すなわち、同期リセット信号がハイ、制御信号1,2がローであるときに、遅延生成部A11の2入力NANDはインバータとして動作するため、各遅延生成部A11がそれぞれ閉ループを形成して短周期で発振する動作モードAになる。次に、制御信号1がハイ、制御信号2がローのときは、遅延生成部D14は、奇数個の遅延生成部A11が連結して閉ループを形成し、奇数La ×p段のインバータで長周期発振する動作モードBに切り替わる。次に、制御信号1,2がハイになると、リングオシレータ10は、奇数個の遅延生成部D14が連結して閉ループを形成し、奇数La ×p×q段のインバータでさらに長周期発振する動作モードCに切り替わる。そして、リングオシレータ10が動作モードCに切り替わった後に、D−FF21がクロックの立ち上がり時刻でリングオシレータ10の出力をラッチする。   That is, when the synchronous reset signal is high and the control signals 1 and 2 are low, the two-input NAND of the delay generation unit A11 operates as an inverter, so that each delay generation unit A11 forms a closed loop in a short cycle. The operation mode A oscillates. Next, when the control signal 1 is high and the control signal 2 is low, the delay generation unit D14 is connected to an odd number of delay generation units A11 to form a closed loop, and an odd number of La × p stage inverters have a long period. The operation mode is switched to the oscillation mode B. Next, when the control signals 1 and 2 become high, the ring oscillator 10 is connected to an odd number of delay generators D14 to form a closed loop, and further oscillates with an odd number of La × p × q stage inverters. Switch to mode C. After the ring oscillator 10 is switched to the operation mode C, the D-FF 21 latches the output of the ring oscillator 10 at the clock rising time.

このように、動作モードAで個々に得られた独立なランダム性が動作モードBで重畳され、さらに動作モードBのランダム性が重畳されて最終的に動作モードCに至るため、多用なランダム性が重畳されたランダム性の極めて高い乱数を得ることができる。   As described above, the independent randomness obtained individually in the operation mode A is superimposed in the operation mode B, and the randomness of the operation mode B is further superimposed to finally reach the operation mode C. It is possible to obtain a random number with extremely high randomness on which is superimposed.

なお、本実施形態では、3つの動作モードが切り替わる例を示したが、このような入れ子構造の多重リングオシレータを構成することにより、4段階以上の切り替えが可能なリングオシレータを構成することができる。   In the present embodiment, an example in which the three operation modes are switched has been described. However, by configuring such a nested multiple ring oscillator, a ring oscillator capable of switching in four or more stages can be configured. .

(第7の実施形態)
第5の実施形態および第6の実施形態におけるリングオシレータ10を複数n個用意し、各リングオシレータ10−1〜10−nの遅延生成部A11の段数をそれぞれ独立に設定し、各リングオシレータ10−1〜10−nの出力の排他的論理和をとり、その出力をラッチしてもよい。各リングオシレータ10−1〜10−nの出力に、第5の実施形態および第6の実施形態に示した高いランダム性がすでに確保されており、それらの出力の排他的論理和をとることにより、D−FFで得られる乱数のランダム性をさらに高めることができる。
(Seventh embodiment)
A plurality of n ring oscillators 10 according to the fifth and sixth embodiments are prepared, the number of stages of the delay generation unit A11 of each ring oscillator 10-1 to 10-n is set independently, and each ring oscillator 10 is set. An exclusive OR of the outputs of −1 to 10-n may be taken and the output may be latched. The high randomness shown in the fifth embodiment and the sixth embodiment has already been secured in the outputs of the ring oscillators 10-1 to 10-n, and by taking the exclusive OR of those outputs. , Randomness of random numbers obtained by D-FF can be further enhanced.

また、第2の実施形態および第4の実施形態で説明したように、各動作モードを切り替える制御部は各リングオシレータ10−1〜10−nを一括して制御する構成としてもよいし、各リングオシレータ10−1〜10−nに個別に制御部を備え、それぞれ個別に動作モードを切り替える構成としてもよい。   Further, as described in the second embodiment and the fourth embodiment, the control unit that switches each operation mode may be configured to collectively control each ring oscillator 10-1 to 10-n. The ring oscillators 10-1 to 10-n may be individually provided with a control unit, and the operation modes may be switched individually.

本発明の乱数生成回路の第1の実施形態を示す図。The figure which shows 1st Embodiment of the random number generation circuit of this invention. 制御部30の構成例を示す図。The figure which shows the structural example of the control part. 制御部30の動作例を示すタイムチャート。4 is a time chart showing an operation example of the control unit 30. 本発明の乱数生成回路の第2の実施形態を示す図。The figure which shows 2nd Embodiment of the random number generation circuit of this invention. 本発明の乱数生成回路の第3の実施形態を示す図。The figure which shows 3rd Embodiment of the random number generation circuit of this invention. 制御部31の構成例を示す図。The figure which shows the structural example of the control part. 制御部31の動作例を示すタイムチャート。4 is a time chart showing an operation example of the control unit 31. 本発明の乱数生成回路の第4の実施形態を示す図。The figure which shows 4th Embodiment of the random number generation circuit of this invention. 本発明の乱数生成回路の第5の実施形態を示す図。The figure which shows 5th Embodiment of the random number generation circuit of this invention. 本発明の乱数生成回路の第6の実施形態を示す図。The figure which shows 6th Embodiment of the random number generation circuit of this invention. 従来の乱数生成回路の構成例を示す図。The figure which shows the structural example of the conventional random number generation circuit.

符号の説明Explanation of symbols

10 リングオシレータ
11 遅延生成部A
12 遅延生成部B
13 遅延生成部C
15,16 セレクタ
21 D−FF
22 均等化回路
23 排他的論理和回路
30,31 制御部
10 Ring Oscillator 11 Delay Generator A
12 Delay generator B
13 Delay generator C
15, 16 Selector 21 D-FF
22 equalizing circuit 23 exclusive OR circuit 30, 31 control unit

Claims (10)

奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、
奇数La 段のインバータをカスケードに接続した遅延生成部Aと、
偶数Lb 段のインバータをカスケードに接続し、その初段のインバータに前記遅延生成部Aの最終段のインバータの出力が接続される遅延生成部Bと、
前記遅延生成部Aの最終段のインバータの出力と前記遅延生成部Bの最終段のインバータの出力とを切り替え、前記遅延生成部Aの初段のインバータに接続するセレクタと、
前記セレクタに対して、前記クロックの周期内で前記遅延生成部Aの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、前記遅延生成部Bの最終段のインバータの出力に切り替えて奇数(La +Lb )段のインバータで長周期のリングオシレータを形成する動作モードBを選択する制御信号を出力する制御部と
を備え、前記動作モードAと前記動作モードBを交互に切り替えて発振動作を継続しながら、前記動作モードBのタイミングで前記リングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
In a random number generation circuit that latches an intermediate node output of a ring oscillator composed of an odd number of inverters with a clock and outputs it as a random value,
A delay generation unit A in which inverters of odd La stages are connected in cascade;
An even number Lb stage of inverters connected in cascade, and a delay generation unit B in which the output of the last stage inverter of the delay generation unit A is connected to the first stage inverter;
A selector that switches between the output of the final stage inverter of the delay generation unit A and the output of the final stage inverter of the delay generation unit B, and that is connected to the first stage inverter of the delay generation unit A;
An operation mode A for switching to the output of the final stage inverter of the delay generation unit A within the clock cycle to form a short cycle ring oscillator with an odd number of La stage inverters, and the delay generation unit A control unit that switches to the output of the inverter at the last stage of B and outputs a control signal for selecting an operation mode B that forms a long-cycle ring oscillator with an odd (La + Lb) stage of inverter, Random number generation circuit characterized in that it is configured to latch the intermediate node output of the ring oscillator at the timing of the operation mode B and output it as a random value while continuing the oscillation operation by alternately switching the operation mode B .
奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、
奇数La 段のインバータをカスケードに接続した遅延生成部Aと、
偶数Lb 段のインバータをカスケードに接続した遅延生成部Bと、
偶数Lc 段のインバータをカスケードに接続し、その初段のインバータに前記遅延生成部Aの最終段のインバータの出力が接続される遅延生成部Cと、
前記遅延生成部Aの最終段のインバータの出力と前記遅延生成部Bの最終段のインバータの出力とを切り替え、前記遅延生成部Aの初段のインバータに接続する第1のセレクタと、
前記遅延生成部Aの最終段のインバータの出力と前記遅延生成部Cの最終段のインバータの出力とを切り替え、前記遅延生成部Bの初段のインバータに接続する第2のセレクタと、
前記第1のセレクタおよび前記第2のセレクタに対して、前記クロックの周期内で前記遅延生成部Aの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、前記第1のセレクタに対して前記遅延生成部Bの最終段のインバータの出力に切り替え、前記第2のセレクタに対して前記遅延生成部Aの最終段のインバータの出力に切り替えて奇数(La +Lb )段のインバータで長周期のリングオシレータを形成する動作モードBと、前記第1のセレクタおよび前記第2のセレクタに対して、前記遅延生成部Bおよび前記遅延生成部Cの各最終段のインバータの出力に切り替えて奇数(La +Lb +Lc )段のインバータで動作モードBよりさらに長周期のリングオシレータを形成する動作モードCとを選択する制御信号を出力する制御部と
を備え、前記動作モードAと前記動作モードBと前記動作モードCを順次切り替えて発振動作を継続しながら、前記動作モードCのタイミングで前記リングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
In a random number generation circuit that latches an intermediate node output of a ring oscillator composed of an odd number of inverters with a clock and outputs it as a random value,
A delay generation unit A in which inverters of odd La stages are connected in cascade;
A delay generator B in which even Lb stage inverters are connected in cascade;
An even number Lc stage of inverters connected in a cascade, and a delay generator C connected to an output of the final stage of the delay generator A;
A first selector that switches between the output of the final stage inverter of the delay generation unit A and the output of the final stage inverter of the delay generation unit B and is connected to the first stage inverter of the delay generation unit A;
A second selector for switching between the output of the final stage inverter of the delay generation unit A and the output of the final stage inverter of the delay generation unit C and connected to the first stage inverter of the delay generation unit B;
For the first selector and the second selector, the output of the last stage inverter of the delay generation unit A is switched within the period of the clock to form a short period ring oscillator with an odd number of La stage inverters. In operation mode A, the first selector switches to the output of the final stage inverter of the delay generator B, and the second selector switches to the output of the final stage inverter of the delay generator A With respect to the operation mode B in which a long-cycle ring oscillator is formed by an odd (La + Lb) stage inverter, and the delay generator B and the delay generator C are connected to the first selector and the second selector. By switching to the output of each final stage inverter, an odd (La + Lb + Lc) stage inverter is used to form a ring oscillator having a longer cycle than that of operation mode B A control unit that outputs a control signal for selecting the operation mode C, and sequentially switching the operation mode A, the operation mode B, and the operation mode C to continue the oscillation operation, and at the timing of the operation mode C. A random number generation circuit characterized in that the intermediate node output of the ring oscillator is latched and output as a random value.
奇数段のインバータからなるリングオシレータの中間ノード出力をクロックでラッチし、乱数値として出力する乱数生成回路において、
奇数La 段のインバータをカスケードに接続した遅延生成部Aを3以上の奇数p個と、
前記p個の遅延生成部Aをリング状に配置したときに、前記遅延生成部Aごとに最終段のインバータの出力と前段の遅延生成部Aの最終段のインバータの出力とを切り替え、当該遅延生成部Aの初段のインバータに接続するp個の第1のセレクタと、
前記第1のセレクタに対して、前記クロックの周期内で各遅延生成部Aごとにそれぞれの最終段のインバータの出力に切り替えて奇数La 段のインバータで短周期のリングオシレータを形成する動作モードAと、前記前段の遅延生成部Aの最終段のインバータの出力に切り替えて奇数(La ×p)段のインバータで長周期のリングオシレータを形成する動作モードBを選択する制御信号を出力する制御部と
を備え、前記動作モードAと前記動作モードBを交互に切り替えて発振動作を継続しながら、前記動作モードBのタイミングで前記リングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
In a random number generation circuit that latches an intermediate node output of a ring oscillator composed of an odd number of inverters with a clock and outputs it as a random value,
An odd number p or more of three delay generation units A each having an odd number of La stages of inverters connected in cascade;
When the p delay generation units A are arranged in a ring shape, the output of the final stage inverter and the output of the final stage inverter of the previous delay generation unit A are switched for each delay generation unit A, and the delay P first selectors connected to the first stage inverter of the generator A;
An operation mode A in which the first selector is switched to the output of the inverter at the final stage for each delay generation unit A within the period of the clock to form a short-cycle ring oscillator with an odd number of La stages of inverters. And a control unit that outputs a control signal for selecting an operation mode B in which a long-cycle ring oscillator is formed by an odd (La × p) stage inverter by switching to the output of the last stage inverter of the delay generation unit A of the preceding stage And alternately switching between the operation mode A and the operation mode B and continuing the oscillation operation, and latching the intermediate node output of the ring oscillator at the timing of the operation mode B and outputting as a random value A random number generation circuit characterized by that.
請求項3に記載の乱数生成回路において、
前記p個の遅延生成部Aおよび前記第1のセレクタを単位とする遅延生成部Dを3以上の奇数q個と、
前記q個の遅延生成部Dをリング状に配置したときに、前記遅延生成部Dごとに最終段のインバータの出力と前段の遅延生成部Dの最終段のインバータの出力とを切り替え、当該遅延生成部Dの初段のインバータに接続するq個の第2のセレクタと
を備え、
前記制御部は、前記第2のセレクタに対して、前記クロックの周期内で各遅延生成部Dごとにそれぞれの最終段のインバータの出力に切り替えて奇数(La ×p)段のインバータで長周期のリングオシレータを形成する動作モードBと、前記前段の遅延生成部Dの最終段のインバータの出力に切り替えて奇数(La ×p×q)段のインバータでさらに長周期のリングオシレータを形成する動作モードCを選択する制御信号を出力し、前記動作モードAと前記動作モードBと前記動作モードCを順次切り替えて発振動作を継続しながら、前記動作モードCのタイミングで前記リングオシレータの中間ノード出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
The random number generation circuit according to claim 3,
An odd number q of three or more delay generation units D each including the p delay generation units A and the first selector;
When the q delay generation units D are arranged in a ring shape, the output of the last-stage inverter and the output of the final-stage inverter of the previous-stage delay generation unit D are switched for each delay generation unit D. Q second selectors connected to the first stage inverter of the generator D, and
The control unit switches to the output of the inverter at the final stage for each delay generation unit D within the period of the clock and switches the output to the second selector with an odd (La × p) stage inverter for a long period. Operation mode B for forming a ring oscillator of the first stage, and an operation for forming a ring oscillator having a longer period with an odd (La × p × q) stage inverter by switching to the output of the last stage inverter of the delay generation unit D of the preceding stage The control signal for selecting mode C is output, and the operation mode A, the operation mode B, and the operation mode C are sequentially switched to continue the oscillation operation, and the intermediate node output of the ring oscillator at the timing of the operation mode C A random number generation circuit characterized by being configured to latch and output as a random value.
請求項1〜4のいずれかに記載の乱数生成回路において、
前記遅延生成部Aの1つのインバータに代えて、外部から入力するリセット信号によりインバータ動作を有効または無効とし、前記リングオシレータの動作状態をアクティブ状態または休止状態に切り替える論理ゲートを備えた
ことを特徴とする乱数生成回路。
In the random number generation circuit according to any one of claims 1 to 4,
In place of one inverter of the delay generation unit A, a logic gate is provided that enables or disables the inverter operation by an externally input reset signal and switches the operation state of the ring oscillator to an active state or a sleep state. Random number generation circuit.
請求項1または請求項3に記載の乱数生成回路において、
前記制御部は、前記クロックと前記クロックを遅延させた遅延クロックの位相差に対応する制御信号で前記セレクタを切り替え、かつ前記動作モードAより前記動作モードBの動作時間が長くなるように遅延クロックの遅延時間が設定される構成である
ことを特徴とする乱数生成回路。
In the random number generation circuit according to claim 1 or 3,
The control unit switches the selector with a control signal corresponding to a phase difference between the clock and a delayed clock obtained by delaying the clock, and delays the operation mode B so that the operation time of the operation mode B is longer than that of the operation mode A. A random number generation circuit characterized in that the delay time is set.
請求項2または請求項に記載の乱数生成回路において、
前記制御部は、前記クロックと前記クロックを遅延させた遅延クロックの位相差に対応する制御信号で前記第1のセレクタおよび前記第2のセレクタを切り替え、かつ前記動作モードCの動作時間が最長になるように遅延クロックの遅延時間が設定される構成である
ことを特徴とする乱数生成回路。
In the random number generation circuit according to claim 2 or 4 ,
The control unit switches the first selector and the second selector with a control signal corresponding to a phase difference between the clock and a delayed clock obtained by delaying the clock, and the operation time in the operation mode C is the longest. A random number generation circuit characterized in that the delay time of the delay clock is set to be
請求項1〜4のいずれかに記載の乱数生成回路において、
前記各動作モードが切り替えられるリングオシレータを複数個備え、
前記制御部は、複数個のリングオシレータの各動作モードを前記制御信号で一括して切り替える構成であり、
前記複数個のリングオシレータの中間ノード出力の排他的論理和をとり、その出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
In the random number generation circuit according to any one of claims 1 to 4,
A plurality of ring oscillators capable of switching each operation mode,
The control unit is configured to collectively switch each operation mode of a plurality of ring oscillators with the control signal,
A random number generation circuit characterized by taking an exclusive OR of intermediate node outputs of the plurality of ring oscillators, latching the output, and outputting the result as a random value.
請求項1〜4のいずれかに記載の乱数生成回路において、
前記各動作モードが切り替えられるリングオシレータを複数個備え、
前記制御部は、複数個のリングオシレータにそれぞれ個別に設け、複数個のリングオシレータの各動作モードを前記制御信号でそれぞれ個別に切り替える構成であり、
前記複数個のリングオシレータの中間ノード出力の排他的論理和をとり、その出力をラッチし、乱数値として出力する構成である
ことを特徴とする乱数生成回路。
In the random number generation circuit according to any one of claims 1 to 4,
A plurality of ring oscillators capable of switching each operation mode,
The control unit is provided separately for each of the plurality of ring oscillators, and each operation mode of the plurality of ring oscillators is individually switched by the control signal.
A random number generation circuit characterized by taking an exclusive OR of intermediate node outputs of the plurality of ring oscillators, latching the output, and outputting the result as a random value.
請求項1〜4のいずれかに記載の乱数生成回路において、
前記ラッチした乱数値を入力し、0,1の頻度にバイアスのある乱数列をバランスした乱数列に変換する均等化回路を備えた
ことを特徴とする乱数生成回路。
In the random number generation circuit according to any one of claims 1 to 4,
A random number generation circuit comprising: an equalization circuit that inputs the latched random number value and converts a random number sequence biased at a frequency of 0 or 1 into a balanced random number sequence.
JP2008290028A 2008-11-12 2008-11-12 Random number generator Active JP5074359B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008290028A JP5074359B2 (en) 2008-11-12 2008-11-12 Random number generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008290028A JP5074359B2 (en) 2008-11-12 2008-11-12 Random number generator

Publications (2)

Publication Number Publication Date
JP2010117846A JP2010117846A (en) 2010-05-27
JP5074359B2 true JP5074359B2 (en) 2012-11-14

Family

ID=42305496

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008290028A Active JP5074359B2 (en) 2008-11-12 2008-11-12 Random number generator

Country Status (1)

Country Link
JP (1) JP5074359B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10459692B2 (en) * 2016-03-16 2019-10-29 Kabushiki Kaisha Toshiba Random number generator

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9129220B2 (en) * 2010-07-07 2015-09-08 Qualcomm Incorporated Methods and systems for digital neural processing with discrete-level synapes and probabilistic STDP
JP5465636B2 (en) * 2010-08-30 2014-04-09 日本電信電話株式会社 Random number generator
US8285767B2 (en) * 2011-03-07 2012-10-09 Arm Limited Apparatus and method for generating a random number
CN102520908B (en) * 2011-12-20 2015-04-29 大唐微电子技术有限公司 Pseudo-random number generator and pseudo-random number generating method
JP2016010004A (en) 2014-06-24 2016-01-18 マイクロン テクノロジー, インク. Ring oscillator and semiconductor including the same
KR101925787B1 (en) * 2014-10-31 2018-12-06 아이디 퀀티크 에스.에이. Method and Apparatus for Securing the Continuity of Random Numbers after Von Neumann Post-processing
JP6423270B2 (en) * 2014-12-26 2018-11-14 株式会社メガチップス Random number generation apparatus and random number generation method
JP6423277B2 (en) * 2015-01-09 2018-11-14 株式会社メガチップス Random number generation apparatus and random number generation method
EP3238199B1 (en) 2014-12-24 2020-06-17 Intrinsic ID B.V. Secure key generation from biased physical unclonable function
JP2018112861A (en) * 2017-01-11 2018-07-19 キヤノン株式会社 Random number generating device and integrated circuit
CN108693500B (en) * 2018-04-28 2023-07-11 吉林省广播电视研究所(吉林省新闻出版广电局科技信息中心) Device and method for measuring electronic signal phase difference by using inter-quality frequency sampling probability
CN111969981B (en) * 2020-10-21 2021-01-12 鹏城实验室 Clock generation circuit and random number generation circuit
CN112929023A (en) * 2021-01-25 2021-06-08 深圳市南方硅谷半导体有限公司 Wide-range ring oscillator
US11601120B2 (en) * 2021-02-03 2023-03-07 Nuvoton Technology Corporation Attack-resistant ring oscillators and random-number generators

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3439606B2 (en) * 1996-08-02 2003-08-25 沖電気工業株式会社 Ring oscillation circuit
JP4248950B2 (en) * 2003-06-24 2009-04-02 株式会社ルネサステクノロジ Random number generator
DE102004047425B4 (en) * 2004-09-28 2007-06-21 Micronas Gmbh Random number generator and method for generating random numbers
JP4559985B2 (en) * 2005-03-15 2010-10-13 株式会社東芝 Random number generator
JP4471901B2 (en) * 2005-07-28 2010-06-02 株式会社ルネサステクノロジ Random number generator

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10459692B2 (en) * 2016-03-16 2019-10-29 Kabushiki Kaisha Toshiba Random number generator

Also Published As

Publication number Publication date
JP2010117846A (en) 2010-05-27

Similar Documents

Publication Publication Date Title
JP5074359B2 (en) Random number generator
US9047152B2 (en) Delay device, method, and random number generator using the same
JP5295357B2 (en) Bit sequence generation method and apparatus
US9377997B2 (en) Random number generator
KR100668554B1 (en) Random number generator with ring oscillation circuit
JP6034153B2 (en) Random number generator
US9405510B2 (en) Random number generator
JP2006294001A (en) Random number generation circuit
JP6612500B2 (en) Clock generation circuit
JP5465636B2 (en) Random number generator
US8044833B2 (en) High speed serializer
TWI579763B (en) Storage circuit with random number generation mode
JP6423270B2 (en) Random number generation apparatus and random number generation method
JPWO2010004747A1 (en) Multiphase clock divider
JP5356362B2 (en) Random number generator
JP6379032B2 (en) Random number generation device and random number generation method
JP6886700B2 (en) Random number generation circuit
JP4904620B2 (en) Oscillator with controllable frequency and duty ratio
JP5900053B2 (en) Clock switching circuit
KR20120101836A (en) Apparatus for generating random number
JP7220401B2 (en) pulse width modulation circuit
JP3853308B2 (en) Delay circuit and electronic circuit
CN118605838A (en) Synthesizable true random number generator and synthesizable true random number generation method
JP2019165330A (en) Digital time converter and information processing device
CN118586466A (en) Circuit for generating BP neural network random weight

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110113

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120821

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120823

R150 Certificate of patent or registration of utility model

Ref document number: 5074359

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350