CN1405672A - 随机数产生方法和随机数产生装置 - Google Patents

随机数产生方法和随机数产生装置 Download PDF

Info

Publication number
CN1405672A
CN1405672A CN02141649.4A CN02141649A CN1405672A CN 1405672 A CN1405672 A CN 1405672A CN 02141649 A CN02141649 A CN 02141649A CN 1405672 A CN1405672 A CN 1405672A
Authority
CN
China
Prior art keywords
random
random number
time interval
pulse
counter
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.)
Granted
Application number
CN02141649.4A
Other languages
English (en)
Other versions
CN1212564C (zh
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.)
Renesas Electronics Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of CN1405672A publication Critical patent/CN1405672A/zh
Application granted granted Critical
Publication of CN1212564C publication Critical patent/CN1212564C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Manipulation Of Pulses (AREA)
  • Pinball Game Machines (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

一种能够产生均匀随机数的随机数产生方法及其装置。通过比较由放大热噪声产生源的热噪声而获得的热噪声电压电平和基准电压来产生随机脉冲。如果随机脉冲中的时间间隔落在预定的时间内,脉冲控制器排除在预定时间内发生的随机脉冲,如果随机脉冲中的时间间隔超过预定的时间,按照计数器测量的脉冲之间的时间间隔来产生随机数。

Description

随机数产生方法和随机数产生装置
技术领域
本发明涉及随机数产生方法和随机数产生装置,具体涉及按照热噪声产生源供给的热噪声产生自然随机数或者物理随机数的方法和装置。
本发明要求2001年9月7日提交的日本专利申请NO.2001-272538之优先权,其在此作为参考而引入。
背景技术
已经提出了使用自然界中检测的随机事件来产生随机数的各种装置和方法。作为这种装置,可以获得的随机数发生器是例如利用原子核放射衰变的装置。但是,由于这种处理放射线的装置有一特殊问题,目前常用的做法是采用利用由电阻器,二极管等产生的热噪声的随机数发生器。
作为利用热噪声产生随机数的装置的示例,日本公开专利申请NO.2001-134422公开了一种随机数发生器。图9示出了日本公开专利申请NO.2001-134422公开的常规热噪声物理随机数发生器结构的方框图。在热噪声物理随机数发生器100中,前置放大器102和主放大器放大诸如电阻器,二极管之类热噪声产生装置101产生的热噪声电压,脉冲高度鉴别器104按照阈值来选择通过放大获得的模拟信号峰值。
然后,波形整形器105对选择的脉冲的波形进行整形,以便将其变为方波信号,再将整形的方波信号发送到时间测量装置106。时间测量装置106按照时间测量脉冲发生器107产生的时钟脉冲来测量脉冲之间的时间间隔并在特定的比特单元中对脉冲进行计数。随机数发生器108取出作为随机数的比特的计数值,然后将其存入随机数存储装置和控制器109。
当如上所述的这种随机数发生器108中使用的放大器(例如,上述的前置放大器102,主放大器103)执行理想放大时,如果各瞬时输入值相互独立,则其各瞬时输出值也相互独立。因此,当通过比较瞬时值与预定的电压来产生脉冲时,其脉冲时间间隔以理想的形式出现。如果预定的电压远高于放大之后获得的电压值的均方根(rms)值,则通过比较放大的热噪声产生的脉冲的发生概率服从泊松分布,而脉冲之间的时间间隔服从指数分布。然后,当以N比特计数器来测量时间间隔时,如果脉冲发生频率、计数器的时钟频率、计数器比特数等满足一定的条件,则计数值变成均匀随机数。
但是,在实际放大器或者放大电路中,不可避免的是其时间响应有限,并且其频带有限。因此,即使各瞬时输入值独立,各瞬时输出值也不独立。因此,当通过比较放大后获得的电压和特定的电压来产生脉冲时,由于比较是在电压值受其前面的电压值影响的情况下作出的,除了脉冲服从开始的指数分布之外,脉冲之间的时间间隔不服从指数分布,并且混入了无效脉冲。
图10A示出了在放大器表现出具有较大幅值的峰值电压之后迅速出现具有较小幅值的峰值电压的理想情况下,放大之后获得的信号的波形图。当通过将图10A虚线所示的阈值201作为基准电压来比较具有较大幅值电压峰值的信号的波形与具有较小幅值电压峰值的信号时,仅仅由具有如图10A所示的较大幅度的电压峰值产生脉冲202。
但是,在实际的放大器中,如图11A所示,如果前面的电压值与放大之后获得的电压值混合,则当与提供理想状况的放大器的情况相比较时,在出现较大幅值的电压波峰之后迅速出现的电压波峰变得较高。因此,当利用如虚线所示的阈值205作为基准电压来比较具有两个波峰的信号的幅度时,尽管在信号输入时刻具有较小幅度的电压波峰低于具有较大幅度的电压波峰,但是,具有较小幅度的电压波峰仍与脉冲的产生有关,如图11B所示,除了开始想要的脉冲206之外还产生了无效脉冲207。
如上所述,当使用如图11(a)所示信号的波形产生随机脉冲时,由于上述无效脉冲207与开始想要的脉冲206混在一起,这就破坏了随机数的一致性。这就是说,在常规热噪声物理随机数发生器100中,由于使用混合了无效脉冲207的脉冲来产生随机数,所以随机数的产生受到了放大器102和103的响应特性的影响。这就出现了一个问题,由于具有较小随机数代码的随机数比具有其它随机数代码的随机数发生得频繁,所以无法保证输出的随机数的一致性。
因此,产生的第二个问题是产生的随机数中存在的偏差导致随机数发生器的重大缺陷,并且当安装在其它需要真正随机数的装置上时,该随机数发生器不能提供想要的结果。
发明内容
鉴于上面的情况,本发明的目的是提供一种随机数产生方法及其装置,其能够消除在放大噪声时电路响应对随机数特性的影响,并能产生均匀随机数。
本发明的另一个目的是提供一种随机数产生方法及其装置,其能够按照从热噪声源获得的随机脉冲中的有效脉冲之间的时间间隔来产生随机数。
根据本发明的第一方面,提供一种根据热噪声产生源供给的热噪声来产生随机数的方法,其包括以下步骤:
放大热噪声电压电平的步骤;
通过比较放大的热噪声的电压电平与基准电压电平来产生随机数的步骤;
测量随机脉冲之间的时间间隔的步骤;
如果时间间隔落在预定的时间之中,排除出现在预定时间之中的随机脉冲的步骤;和
如果时间间隔超过预定的时间,按照具有超过了预定时间的时间间隔的脉冲之间的时间间隔来产生随机数的步骤。
在前面,优选方式是按照响应随机脉冲驱动的计数器提供的计数数值来测量时间间隔,如果计数数值落在预定的值之中,则排除产生的随机数。
同样,优选方式是预定时间与计数器单周(one-cycle)计数获得的计数数值相对应。
同样,优选方式是其中包括对随机脉冲进行波形整形的步骤。
根据本发明的第二个方面,提供一种随机数产生装置,以便按照热噪声产生源供给的热噪声来产生随机数,所述的装置包括:
放大热噪声电压电平的单元;
通过比较放大的热噪声电压电平和基准电压电平来产生随机数的单元;
测量随机脉冲之间的时间间隔的单元;
脉冲控制单元,如果时间间隔落在预定的时间之中,用来排除出现在预定时间之中的随机脉冲,如果时间间隔超过了预定时间,其允许随机脉冲通过;和
按照允许通过的随机脉冲之间的时间间隔来产生随机数的单元。
在前面,优选方式是,其中,测量单元是由随机脉冲驱动的并按照计数器提供的计数数值来测量时间间隔的计数器,以及,其中,脉冲控制单元排除当计数值落在预定时间之中时产生的随机脉冲。
同样,优选方式是,其中,配置计数器提供的计数数值,以使其取决于包括在计数器中的比特数目,以及其中,配置时间间隔的测量,以使其取决于计数器的工作频率。
同样,优选方式是,其中,预定时间与计数器单周计数获得的计数数值相对应。
根据本发明的第三方面,提供一种计算机执行产生随机数的过程的程序,该过程通过将放大来自热噪声产生源的热噪声而获得的热噪声电压电平与基准电压电平来产生随机脉冲,并按照随机脉冲之间的时间间隔来产生随机数的步骤,所述步骤包括:
测量随机脉冲之间的时间间隔的步骤;
如果所述时间间隔落在预定时间之中,排除预定时间间隔中发生的随机脉冲的步骤;和
如果时间间隔超过预定时间,按照超过预定时间的时间间隔来产生随机数的步骤。
利用上述配置,通过比较由放大从热噪声产生源供给的热噪声的电压电平而获得的电压电平和基准电平来产生随机数。如果随机脉冲之间的时间间隔落在预定时间之中,则排除预定时间间隔中产生的随机脉冲。如果随机脉冲之间的时间间隔超过预定时间,按照超过预定时间的脉冲之间的时间间隔来产生随机数。这就是说,通过排除明显小于预定时间的时间间隔中的无效脉冲,在有效脉冲之间的时间间隔中产生随机数。因此,通过避免对要产生的随机数的特性的不利影响,就可以产生均匀随机数。
此外,通过使排除随机脉冲的预定时间与用来测量脉冲之间时间间隔的计数器单周计数获得的计数数值相对应,就能按照满足计数器提供的比特数目的方式来更容易地控制计数器的操作。
附图说明
下面参考附图对本发明的说明将会使本发明上述的和其它的目的,优点,特征更加清晰,其中:
图1示出了根据本发明实施例的随机数产生装置整体结构的示意方框图;
图2示出了根据本发明实施例的随机数产生装置中脉冲控制器和计数器内部结构一个例子的示意方框图;
图3A和3B示出了根据本发明实施例的波形整形器在提供理想状况的放大器的情况下和未提供理想状况的实际放大器的情况下产生的脉冲中的差别示意图;
图4是用来解释根据本发明实施例操作随机数产生装置的步骤的流程图;
图5示出了用于C语言仿真的电路结构图;
图6示出了理想状态下仿真结果曲线;
图7示出了使用滤波器时仿真结果曲线;
图8示出了当忽略较短时间间隔产生的脉冲时的仿真结果曲线;
图9示出了常规热噪声物理随机数发生器结构的示意方框图;
图10A和10B示出了放大信号的波形和放大器提供理想状况时产生的脉冲的波形;和
图11A和11B示出了放大信号的波形和不能提供理想状态的实际放大器产生的脉冲的波形。
具体实施方式
下面将参考附图利用各种实施例对执行本发明的最优形式进行详细说明。第一实施例
图1是根据本发明实施例的随机数产生装置10整体结构的示意方框图。如图1所示的随机数发生器10通过放大自然界中的热噪声、通过比较放大之后获得的热噪声电压值和特定的电压值来产生随机脉冲、然后测量随机脉冲之间的时间间隔来产生随机数。在这一点,使用后面说明的方法来消除放大噪声时电路响应对随机数特性造成的影响就能产生均匀随机数。
下面对本实施例的随机数产生装置10的具体结构和工作情况进行说明。如图1所示,本实施例的随机数产生装置10具有充当随机脉冲产生源的随机脉冲发生器11,随机脉冲发生器11由热噪声产生装置12,放大器13,比较器14,基准电压源15组成。热噪声产生装置12例如由诸如电阻器之类的导体或者诸如二极管之类的半导体器件构成。由放大器13放大之后,热噪声电压V1(微伏级电压)作为噪声电压V2输入比较器14。
尽管热噪声产生装置12产生的热噪声是随机噪声和具有宽频带的非周期噪声(以下称为“随机噪声”或者“白噪声”),但由于产生的现象(其产生机制)众所周知,故省略其说明。
比较器14比较放大之后获得的噪声电压V2和基准电压源15产生的预定电压V4,以便获得随机脉冲V3。这就是说,如果噪声电压超过充当阈值4的预定电压,则比较器14通过输出逻辑高电平信号来产生随机脉冲V3,如果噪声电压V2小于阈值电压4,则通过输出逻辑低电平来产生随机脉冲V3。此外,波形整形器16使用时钟发生器19供给的时钟信号V9来发射随机脉冲V3,再改变随机脉冲的波形,以变为方波脉冲信号V5。这使得容易操作处于稍后阶段的计数器18。
通过波形整形器16的波形整形之后获得的方波脉冲信号V5经过脉冲控制器17传输到计数器18。然后计数器18测量方波脉冲信号V5的特定脉冲之间的时间间隔。具体地讲,响应时钟发生器19供给的时钟信号V9操作的计数器18在脉冲控制器17输出的脉冲VX1的上升沿开始计数,并判断计数数值是否超过预定值。
把指示上述判断结果的信号作为控制信号VX2从计数器18传输到脉冲控制器17。脉冲控制器17按照控制信号VX2消除(即,忽略或者排除)在计数器开始计数之后特定时间内产生的脉冲,并仅当脉冲之间的时间间隔超过特定时间时,将脉冲VX1传输到计数器18。具有接收的脉冲VX1的计数器18计算通过脉冲控制器17的脉冲之间的时间间隔作为计数值V6,并将其输出到随机数发生器21。
随机数发生器21将一定数目的比特作为随机数从上述计数值V6中取出,并将所述数目的比特作为随机数V7存储在控制器/存储装置22中。在控制部分(未示出)(例如,由微处理器构成的CPU(中央处理器))的控制下,控制器和存储装置22将随机数V8(即,自然随机数或者物理随机数)输出到随机数发生器10的外部。
此外,例如,按照FIFO(先进先出)方法来将随机数V7存储在控制器/存储装置22中,在其中,新近产生的随机数按次序排除掉前面产生并存储的随机数。
图2示出了根据本发明实施例的随机数产生装置10中脉冲控制器17和计数器18内部结构一个例子的示意方框图。如上所述,计数器18判断通过在脉冲VX1的上升沿开始计数而获得的计数值是否超过预定值。因为这个原因,计数器18内部具有比较器25,并当比较器25判断出计数值Nc超过预定值A(Nc>A)时,将来自计数器18的逻辑“1”控制信号VX2输出到脉冲控制器17。但是,当判断出计数值Nc小于预定值A(Nc≤A)时,计数器18输出逻辑“0”控制信号VX2。
脉冲控制器17具有执行AND操作的门电路,当控制信号VX2为“1”时,其使门电路26处于ON状态,并允许波形整形器16供给的方波脉冲信号通过(即,使方波脉冲信号处于通过状态),以便于将脉冲方波信号V5作为脉冲VX1传输到计数器18。另一方面,当控制信号为逻辑“0”时,脉冲控制器17使门电路26处于OFF状态,以便禁止将来自脉冲控制器17的方波脉冲信号传输到计数器18。换句话说,脉冲控制器17将控制信号VX2用作标志来允许脉冲通过或者禁止脉冲通过。
下面说明用来消除在放大时电路响应对随机数特性造成的影响、从而产生均匀随机数的方法,所述的方法应用在本实施例的随机数产生装置10及其原理中。如上所述,在不能提供理想状况的实际放大器(例如,图1中的放大器13)的情形下,以及前面的电压值与放大之后的获得的电压值混在一起时,当与提供理想状况的放大器的情况进行比较时,根据具有较大电压的信号的波形波峰产生的脉冲被延迟,但是,时间方面的差错是随机的并且对开始产生的脉冲之间的时间间隔没有任何影响。但是,如上所述,在开始不应产生的无效脉冲影响了要产生的随机数。
图3A和3B示出了根据本发明波形整形器16在提供理想状况的放大器情况下和不提供理想状况的实际放大器情况下产生的脉冲(方波脉冲信号V5)的差别示意图。图3A示出了提供理想状况的放大器产生的脉冲,而图3B示出了实际放大器根据放大之后获得的信号产生的脉冲。这就是说,如图3A所示的脉冲时间间隔T1和T2是开始要测量的有效脉冲之间的时间间隔,但是,T10,T12,T13,和T15(图3B)是明显比指定的有效时间间隔中的时间间隔短的无效脉冲中的时间间隔。
因此,当随机数是要按照具有比有效脉冲的时间间隔短的时间间隔的脉冲来产生的随机数时,不正常地产生了许多具有较小值的要用作随机数的代码。因此,在计数器18测量的脉冲中,开始不应计数的脉冲中不必要的时间间隔(T10,T12,T13,和T15等)被计数。为解决此问题,在本发明的随机数产生装置中,在有效脉冲指定之后并且时间间隔明显小于预定时间间隔的无效脉冲被排除掉,以便于仅使用指定的有效脉冲来产生随机数。
此外,在图3中,在每个脉冲的上升沿对脉冲的时间间隔进行测量,但是,也可以在每个脉冲的下降沿对脉冲的时间间隔进行测量,其产生相同的结果。
通常,当测量概率分布服从泊松分布的随机脉冲之间的时间间隔,并利用测量结果产生随机数时,如果随机脉冲发生概率较高,则随机数的频率分布是有偏差的。最小随机数代码与最大随机数代码的比率可以由下式给出: exp ( - λ 2 N f ) .............等式(1)其中“N”(比特)表示计数器18可以处理的比特数,“f”[Hz]表示计数器18的工作频率,“λ”[CPS]表示随机脉冲的发生频率。
此外,按照阈值电压(例如图10和11中虚线示出的阈值201和205)的电平来调节随机脉冲的发生频率。
为了均匀产生随机数,需要由上式表示的比率尽可能地接近“1”。例如,如果处理器18可处理的比特数目“N”为8,则工作频率“f”为16[MHz],而随机脉冲的发生频率“λ”为2000[CPU],则比率为0.97。因此,为了保持比率接近“1”,频率“λ”不能太大。这表明尽可能将用于产生脉冲的阈值(例如,如图1所示得预定电压V4)设置得高比较好。
因此,当计数器18以工作时钟为单位进行测量时,脉冲之间的平均时间间隔变得较大。在上面得实施例中,由于发生频率“λ”为2000[CPS],平均脉冲间隔是平均等于8000个时钟的时间。
与有效脉冲的情况不同,因为无效脉冲以明显比上述预定时间间隔短的时间间隔出现,通过清除无效脉冲,可以仅仅使用有效脉冲来产生随机数。因此,当计数器18在脉冲检测周期中检测到后续的脉冲并且计数器18单周计数结束时,本实施例中具有8比特计数器18的随机数产生装置10工作,以便丢弃检测到的脉冲。
具体地说,由于8比特计数器18执行256个时钟一个单周的计数,所以256个时钟中到达的所有脉冲都被排除。在本实施例中,由于每个有效脉冲都具有平均等于8000个时钟的时间间隔,即使256个时钟脉冲中到达的脉冲被清除,清除无效脉冲的概率也非常低。
如图1所示的计数器18响应时钟发生器19产生的16[MHz]的时钟信号V9执行计数操作。计数器18在脉冲控制器17供给的脉冲VX1的上升沿开始计数,并且判断其计数值是否超过预定值(等于256个时钟)。由于将指示判断结果的信号作为具有与来自计数器18的结果相对应的逻辑状态的控制信号VX2传输到脉冲控制器17,所以具有上述门电路功能(门电路的打开/关闭)的脉冲控制器17排除了由计数器18获得的数值未超过预定值的时间周期中输入的脉冲。
此外,当计数器18识别出从开始计数算起已经过了特定的时间或者更多的时间时,脉冲控制器17按照控制信号VX2的逻辑状态将脉冲VX1传输到计数器18。因此,由于预定时间内出现的脉冲并不产生随机数,并且仅仅由脉冲时间间隔等于特定时间或者更多时间的脉冲间隔的脉冲(有效脉冲)来产生随机数,所以随机数发生器21输出均匀随机数。
图4是用来解释操作随机数发生器的步骤的流程图,具体解释控制本发明的实施例的脉冲发生器17和计数器18的步骤。在图4中的步骤S1,判断第一脉冲是否到达。如果在步骤S1判断出脉冲到达,在其后的步骤S2,计数器18开始计数操作。在步骤S3检查计数器18是否已经执行单周计数。这就是说,在步骤S3,计数器18的计数值与预定数值A进行比较。如果计数值超过预定数值A,则计数器18判断出已经执行单周计数。如上所述,“单周计数”(one-cycle counting)表示在使用8比特计数器18的情况下,获得的与256个时钟相等的计数数值。
如果在步骤S4判断出已经执行单周计数,则在步骤S5,来自计数器18的逻辑“1”控制信号VX2输出到脉冲控制器17。在后续步骤S6,检测跟随在步骤S1检测的脉冲之后到来的脉冲(以下称为“后续脉冲”)。
如果在步骤S6检测到后续脉冲,由于在此时控制信号VX2的逻辑状态是“1”,这意味着第一脉冲和后续脉冲之间的时间间隔超过预定的时间。然后,在步骤S7,脉冲计数器17允许“后续脉冲”通过并到达计数器18。
此外,由于在步骤S1检测的脉冲是第一脉冲,所以它被无条件地从脉冲控制器17传输到计数器18。
当已经收到上述后续脉冲时,计数器18测量前面的脉冲和后续脉冲之间的时间间隔。由于计数器18将指示测量结果的信号作为计数值V6来输出,所以在步骤S6,随机数发生器21按照计数值V6产生随机数。在步骤S9,产生随机数之后,流程再次返回步骤S2以开始(再次开始)计数器18的操作。
另一方面,当计数器18未执行单周计数(当在步骤S3判断出“NO”时)时,计数器18将逻辑“0”控制信号VX2输出到脉冲控制器17。然后,在步骤S12判断脉冲是否是跟随在在上述步骤S1检测的脉冲之后的脉冲(即后续脉冲)。在这一点上,如果未检测到后续脉冲,流程返回步骤S3,再一次检查,看计数器18是否已经执行单周计数。
相反,如果在步骤S12检测到后续脉冲,由于检测的脉冲发生在计数器18获得的计数值未超过预定数值的时间期间(即,计数值≤预定值,并且计数器18尚未执行单周计数),所以,在步骤13,脉冲控制器17忽略(排除)所述脉冲。因此,通过执行忽略“后续脉冲”的步骤,可以避免在前一脉冲发生之后经过预定时间的脉冲产生随机数。
在上述步骤S13完成之后,流程返回步骤S3检查计数器18是否执行了单周计数。按照判断结果,执行如上面所述一样的过程。
接着对仿真进行说明,进行仿真是检查本发明的随机数产生算法是否能够达到预期的效果。图5示出了用于C语言仿真的电路结构。通过添加从随机数函数(均匀随机数函数)获得的随机数,组成部分RND51产生正态分布的随机数,从而产生与热噪声相似的随机数。
这里,对允许随机数通过低通滤波器(LPF)52和54以及高通滤波器(HPF)53和55的情况下与使用产生的随机数直接产生脉冲的情况下进行比较。此外,这里使用的随机数数值是16M个采样/秒的数值,并且LPF数字滤波器的截止频率为3KHz,而HPF数字滤波器的截止频率为120KHz。同样,为简化起见,巴特沃斯滤波器用作数字滤波器。然后,对放大器56使用的阈值Vt进行调整,以致脉冲的发生频率为大约2000[CPS]。
图6到图8是画出仿真结果的获得的曲线图,即频率分布图。随机数代码作为横坐标,发生频率作为纵坐标。现在,假设在图5的仿真电路中,不使用滤波器并且放大器56按理想状态工作,则获得如图6所示的结果,在图6中由于频率分布中使用的随机数数值是8192个,并且其随机数代码为8比特,相对于预期数值32,频率有波动。
相反,当按照通过图5所示的滤波器获得的脉冲来产生随机数时,如图7所示,很明显,在偏离了均匀分布的较小随机代码的部分(随机代码从0到50)中,频率急剧波动。因此,当在由计数器18的单周计数获得的256个时钟内具有较小时间间隔的脉冲被排除时,与图7所示的情况不同,如图8所示,在随机代码较小的部分中频率变得正常,即均匀分布。这意味着通过使用本发明的随机数产生方法,可以获得均匀随机数。
此外,本发明实施例的随机数发生器21可以使用在诸如加密装置,IC卡,概率影响胜败的游戏机,授权装置等之类需要均匀随机数的装置中。
因此,根据本发明的实施例,通过配置随机数发生器21,如果在检测到第一脉冲之后计数器的计数值超过预定的数值,可以解释为计数器18已经结束了单周计数,因此导致随后到来的脉冲到达计数器18,然后按照要产生的脉冲之间的时间间隔来产生随机数,但是,如果计数器18的计数值小于预定的数值,则禁止向计数器18传输脉冲信号,因此防止所述的脉冲参与随机数的产生,在检测到脉冲之后预定时间内发生的后续脉冲不产生随机数。因此,能够防止在开始不应该出现的无效脉冲对要产生的随机数的不利影响。
即,通过配置随机数发生器21,以致忽略放大期间由电路响应产生的无效脉冲,可以消除对这种无效脉冲产生的随机数的特性的不利影响,并因此按照随机脉冲中的有效脉冲之间的时间间隔来产生随机数,其能够产生发生率中无偏移的均匀随机数(自然随机数或者物理随机数)。
很明显,本发明并不局限于上面的实施例,而是可以不脱离本发明范围和实质做各种改变和修改。例如,在上述实施例中如图4所示的产生随机数的过程中,在步骤S13忽略检测到的脉冲之后,流程返回步骤3,再一次检查计数器18是否完成单周计数,但是流程也可在对忽略这种无效脉冲之后执行单周计数的计数器18复位后返回步骤3。
同样,在上述实施例的产生随机数的过程中,计数器18的计数操作持续进行,直至检测到开始的正常后续脉冲,即使检测到无效脉冲,但是,本发明并不局限于所述的操作,也可采用下面的处理方法。即,如图3B所示,在有效脉冲到达之后,在时刻ta,tb,tc等,无论何时检测到无效脉冲,计数器18都复位。
在这种情况下,如图3B所示的时间间隔T11和T14表示用于产生随机数的脉冲之间的时间间隔。但是,即使采用了这种计数过程,如上所述,由于提供了有效脉冲之间的时间间隔和无效脉冲之间的较短时间间隔,对要产生的随机数的均匀性没有影响。
同样,在上述实施例中,配置随机数发生装置10,以便分别独立地进行脉冲控制器17控制脉冲的通过和阻塞和计数器18测量脉冲之间的时间间隔,但是,也可将其配置成脉冲控制器17嵌入在计数器18中,并且计数器18本身具有控制脉冲的功能。
此外,本实施例的随机数发生器也可这样配置,通过使用控制随机数发生器整个操作的CPU(中央处理单元)(未示出),控制基准电压源15和时钟发生器19,从而无论何时需要,使基准电压源15产生的预定电压值V4或者时钟发生器19供给的时钟信号V9可变。
而且,在本实施例的随机数发生器中,在如图1所示的波形整形器工作之后进行的工作可以由软件部分地或者完全地来控制。即,脉冲的通过和阻塞,脉冲之间时间间隔的测量,随机数的取出都可以是硬件控制和也都可以是软件控制的,其可以提供具有较高均匀性的随机数。
很明显,本发明并不局限于上述的实施例,而是可以在不脱离发明范围和思想的情况下进行变化和修改。

Claims (10)

1.一种按照热噪声产生源供给的热噪声产生随机数的方法,其包括以下步骤:
放大所述热噪声的电压电平的步骤;
通过比较放大的热噪声电压电平与基准电压电平产生随机脉冲的步骤;
测量所述随机脉冲之间的时间间隔的步骤;
如果所述时间间隔出现预定的时间之中,排除在所述预定时间之中出现的所述随机脉冲的步骤;和
如果所述时间间隔超过所述预定的时间,按照具有超过了所述预定时间的时间间隔的脉冲之间的时间间隔来产生随机数的步骤。
2.根据权利要求1所述的随机数产生方法,其特征在于按照由响应所述随机脉冲驱动的计数器提供的计数数值来测量所述时间间隔,如果所述计数数值落在预定的值之中,则排除产生的随机数。
3.根据权利要求2所述的随机数产生方法,其特征在于所述预定时间与所述计数器单周计数获得的计数数值相对应。
4.根据权利要求1所述的随机数产生方法,其特征在于还包括对所述随机脉冲进行波形整形的步骤。
5.一种按照热噪声产生源供给的热噪声来产生随机数的随机数产生装置,所述的装置包括:
放大所述热噪声电压电平的单元;
通过比较放大的热噪声电压电平和基准电压电平来产生随机脉冲的单元;
测量所述随机脉冲之间的时间间隔的单元;
脉冲控制单元,如果所述时间间隔落在预定的时间之中,其用来排除在所述预定时间之中出现的所述随机脉冲,如果所述时间间隔超过了所述预定时间,其允许所述随机脉冲通过;和
按照允许通过的随机脉冲之间的时间间隔来产生随机数的单元。
6.根据权利要求5所述的随机数产生装置,其特征在于测量单元是由所述随机脉冲驱动的并按照所述计数器提供的计数数值来测量所述时间间隔的计数器,以及所述脉冲控制单元排除当所述计数值落在预定值之中时产生的随机脉冲。
7.根据权利要求6所述的随机数产生装置,其特征在于配置所述计数器提供的所述计数数值,以使其取决于包括在所述计数器中的比特数目,以及配置所述时间间隔的测量,以使其取决于所述计数器的工作频率。
8.根据权利要求7所述的随机数产生装置,其特征在于所述预定时间与所述计数器单周计数获得的计数数值相对应。
9.根据权利要求5所述的随机数产生装置,其特征在于还包括对所述随机脉冲进行波形整形的单元。
10.一种使计算机执行产生随机脉冲的过程的程序,所述过程通过比较由放大来自热噪声产生源的所述热噪声而获得的热噪声电压电平与基准电压电平来产生随机脉冲,并按照随机脉冲之间的时间间隔来产生随机数,所述程序包括:
测量随机脉冲之间所述时间间隔的步骤;
如果所述时间间隔落在预定时间之中,排除所述在预定时间间隔中发生的随机脉冲的步骤;和
如果所述时间间隔超过所述预定时间,按照超过所述预定时间的所述时间间隔来产生随机数的步骤。
CN02141649.4A 2001-09-07 2002-09-09 随机数产生方法和随机数产生装置 Expired - Fee Related CN1212564C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001272538A JP4467216B2 (ja) 2001-09-07 2001-09-07 乱数発生方法及び装置
JP2001272538 2001-09-07

Publications (2)

Publication Number Publication Date
CN1405672A true CN1405672A (zh) 2003-03-26
CN1212564C CN1212564C (zh) 2005-07-27

Family

ID=19097896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN02141649.4A Expired - Fee Related CN1212564C (zh) 2001-09-07 2002-09-09 随机数产生方法和随机数产生装置

Country Status (4)

Country Link
US (1) US7080106B2 (zh)
EP (1) EP1293889A3 (zh)
JP (1) JP4467216B2 (zh)
CN (1) CN1212564C (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751240B (zh) * 2008-12-04 2011-12-07 北京中电华大电子设计有限责任公司 一种比较相等电阻热噪声的真随机数发生器电路
CN101727308B (zh) * 2008-10-28 2012-02-01 苏州中科集成电路设计中心有限公司 集成电路中真随机数的产生方法
CN101794211B (zh) * 2004-06-30 2013-02-06 露崎典平 随机脉冲产生源及使用该源产生随机数和/或概率的半导体器件、方法
CN103197912A (zh) * 2013-03-21 2013-07-10 北京理工大学 一种用于深空通信协议编码的均匀随机数生成方法
CN103885746A (zh) * 2012-12-21 2014-06-25 株式会社牧田 随机数产生装置
CN104506166A (zh) * 2014-11-25 2015-04-08 武汉工程大学 无序脉冲发生电路
CN107041015A (zh) * 2017-04-07 2017-08-11 惠州市天泽盈丰物联网科技股份有限公司 避免网传数据碰撞的方法、避免网传数据碰撞系统
CN108307267A (zh) * 2017-11-27 2018-07-20 中科观世(北京)科技有限公司 基于目标信息分布模式的随机采样系统
CN110045947A (zh) * 2019-04-22 2019-07-23 湖南国科微电子股份有限公司 一种随机数发生单元与装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4521708B2 (ja) * 2001-03-12 2010-08-11 ルネサスエレクトロニクス株式会社 乱数生成装置
EP1544726B1 (en) * 2002-08-14 2012-08-22 Institute For Advanced Studies Co., Ltd. Random number generator and random number generation method
EP1435558A1 (en) * 2003-01-02 2004-07-07 Texas Instruments Incorporated On-device random number generator
JP4195012B2 (ja) * 2003-03-13 2008-12-10 株式会社エルイーテック 乱数検定方法及び乱数検定装置
EP1755033B1 (en) 2004-05-24 2013-12-11 Leisure Electronics Technology Co., Ltd. Random number extraction method and random number generation device using the same
DE102006031537B4 (de) * 2005-12-27 2007-10-31 Industrial Technology Research Institute (Itri), Chutung Zufallszahl-Erzeugungsvorrichtung und Verfahren zum Erzeugen einer Zufallszahl
JP4883273B2 (ja) * 2006-01-11 2012-02-22 日本電気株式会社 乱数品質管理装置および管理方法
US8346832B2 (en) * 2006-10-12 2013-01-01 The Regents Of The University Of Michigan Random number generator
US7904494B2 (en) * 2006-12-08 2011-03-08 International Business Machines Corporation Random number generator with random sampling
JP2008242832A (ja) * 2007-03-27 2008-10-09 Toshiba Corp 乱数生成装置
ES2402125T3 (es) * 2007-05-10 2013-04-29 Dis-Ent, Llc Generador de datos estadísticos no deterministas
JP5090216B2 (ja) * 2008-03-10 2012-12-05 株式会社エルイーテック 乱数発生装置及び乱数発生方法
JP5577799B2 (ja) * 2009-04-10 2014-08-27 株式会社デンソー 車載モータの駆動制御方法
CN106919365A (zh) 2016-08-29 2017-07-04 阿里巴巴集团控股有限公司 计算机系统中随机数的生成方法及装置
US10367645B2 (en) * 2016-10-26 2019-07-30 International Business Machines Corporation Proof-of-work for smart contracts on a blockchain
KR102372740B1 (ko) * 2019-04-09 2022-03-14 한국전자통신연구원 난수 생성 장치 및 이의 동작 방법
KR20200144192A (ko) * 2019-06-17 2020-12-29 한국전자통신연구원 난수 생성 장치 및 이의 동작 방법
US10901695B1 (en) * 2020-03-03 2021-01-26 Randaemon Sp. Z O.O. Apparatus, systems, and methods for beta decay based true random number generator
US20220308836A1 (en) * 2021-03-23 2022-09-29 Usa As Represented By The Secretary Of The Army Actively stabilized random number generator

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2539014A (en) 1949-02-16 1951-01-23 Walter J Frantz Random digit generator
US3763380A (en) * 1971-05-05 1973-10-02 Stock Equipment Co Method and apparatus for measuring rates of random pulses
JPH02242327A (ja) 1989-03-15 1990-09-26 Oki Electric Ind Co Ltd 乱数発生装置
US6046616A (en) * 1998-08-07 2000-04-04 Tritech Microelectronics, Ltd. Two dimensional random pulse generator
JP3480822B2 (ja) * 1999-11-02 2003-12-22 斎藤 威 熱雑音ランダムパルス発生装置及び乱数生成装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794211B (zh) * 2004-06-30 2013-02-06 露崎典平 随机脉冲产生源及使用该源产生随机数和/或概率的半导体器件、方法
CN101727308B (zh) * 2008-10-28 2012-02-01 苏州中科集成电路设计中心有限公司 集成电路中真随机数的产生方法
CN101751240B (zh) * 2008-12-04 2011-12-07 北京中电华大电子设计有限责任公司 一种比较相等电阻热噪声的真随机数发生器电路
CN103885746A (zh) * 2012-12-21 2014-06-25 株式会社牧田 随机数产生装置
CN103197912B (zh) * 2013-03-21 2016-02-10 北京理工大学 一种用于深空通信协议编码的均匀随机数生成方法
CN103197912A (zh) * 2013-03-21 2013-07-10 北京理工大学 一种用于深空通信协议编码的均匀随机数生成方法
CN104506166A (zh) * 2014-11-25 2015-04-08 武汉工程大学 无序脉冲发生电路
CN104506166B (zh) * 2014-11-25 2017-06-13 武汉工程大学 无序脉冲发生电路
CN107041015A (zh) * 2017-04-07 2017-08-11 惠州市天泽盈丰物联网科技股份有限公司 避免网传数据碰撞的方法、避免网传数据碰撞系统
CN107041015B (zh) * 2017-04-07 2020-01-10 惠州市天泽盈丰物联网科技股份有限公司 避免网传数据碰撞的方法
CN108307267A (zh) * 2017-11-27 2018-07-20 中科观世(北京)科技有限公司 基于目标信息分布模式的随机采样系统
CN108307267B (zh) * 2017-11-27 2020-09-08 中科观世(北京)科技有限公司 基于目标信息分布模式的随机采样系统
CN110045947A (zh) * 2019-04-22 2019-07-23 湖南国科微电子股份有限公司 一种随机数发生单元与装置
CN110045947B (zh) * 2019-04-22 2021-09-17 湖南国科微电子股份有限公司 一种随机数发生单元与装置

Also Published As

Publication number Publication date
US7080106B2 (en) 2006-07-18
EP1293889A2 (en) 2003-03-19
EP1293889A3 (en) 2006-04-26
CN1212564C (zh) 2005-07-27
US20030050943A1 (en) 2003-03-13
JP4467216B2 (ja) 2010-05-26
JP2003084970A (ja) 2003-03-20

Similar Documents

Publication Publication Date Title
CN1212564C (zh) 随机数产生方法和随机数产生装置
Shapira et al. Nuclear Fusion in Collapsing Bubbles—Is It There? An Attempt to Repeat the Observation<? format?> of Nuclear Emissions from Sonoluminescence
US6415309B1 (en) Method of and apparatus for generating random numbers
RU2014119870A (ru) Детектор для подсчета фотонов
RU2014143053A (ru) Обычная визуализация посредством системы визуализации, содержащей детекторы для счета фотонов
JP4215950B2 (ja) 乱数発生方法および装置
US6953937B2 (en) Method and apparatus for the detection of neutrons and gamma rays
CN107272049A (zh) 基于脉冲宽度的数字n‑γ甄别方法
CN106296768A (zh) 一种数据校正的方法和装置
CN105180849A (zh) 一种能测量多个同时下落物体并具有体积测量功能的光电数粒传感器
Bureš et al. Multiparameter Multichannel Analyser System for Characterisation of Mixed Neutron–Gamma Field in the Experimental Reactor Lr-O
CN110507344B (zh) 一种符合判选方法、装置、设备及存储介质
WO2005091989A3 (en) A method and apparatus for vetoing random coincidences in positron emission tomographs
US6198104B1 (en) Randoms correction using artificial trigger pulses in a gamma camera system
Arabul et al. FPGA based fast integrated real-time multi coincidence counter using a time-to-digital converter
CA2425244C (en) Method for reduction of the statistical measurement times in the field of radioactivity measurement
CN1204530C (zh) 一种混沌信号和一般噪声的辨识方法
JPH11161473A (ja) 乱数発生装置と確率発生装置
WO2004081786A1 (ja) 乱数検定方法及び乱数検定装置
Bajc W-boson-loop versus ultraheavy-fermion-loop contributions to the process γ γ→ ZZ
CN1725143A (zh) 密码验证装置及验证方法
CN110376937A (zh) 一种适用于基于脉冲光释光技术的准实时剂量率测量装置的时序控制逻辑和信号处理算法
CN1136484C (zh) 可鉴别测量结果是否在要求范围内的时间测量方法和系统
Sedillo et al. LANSCE 1L Harp data acquisition system upgrade: first results
EP0235985A2 (en) Data processing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: RENESAS ELECTRONICS CORPORATION

Free format text: FORMER OWNER: NEC CORP.

Effective date: 20140401

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20140401

Address after: Kanagawa, Japan

Patentee after: Renesas Electronics Corporation

Address before: Tokyo, Japan

Patentee before: NEC Corp.

CP02 Change in the address of a patent holder

Address after: Tokyo, Japan

Patentee after: Renesas Electronics Corporation

Address before: Kanagawa, Japan

Patentee before: Renesas Electronics Corporation

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050727

Termination date: 20180909

CF01 Termination of patent right due to non-payment of annual fee