CN115129296A - 真实随机数产生器及真实随机数产生方法 - Google Patents

真实随机数产生器及真实随机数产生方法 Download PDF

Info

Publication number
CN115129296A
CN115129296A CN202111038211.0A CN202111038211A CN115129296A CN 115129296 A CN115129296 A CN 115129296A CN 202111038211 A CN202111038211 A CN 202111038211A CN 115129296 A CN115129296 A CN 115129296A
Authority
CN
China
Prior art keywords
signal
sampling
count value
random number
circuit
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.)
Pending
Application number
CN202111038211.0A
Other languages
English (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.)
Nuvoton Technology Corp
Original Assignee
Nuvoton Technology 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 Nuvoton Technology Corp filed Critical Nuvoton Technology Corp
Publication of CN115129296A publication Critical patent/CN115129296A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • H03K19/17708Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays
    • H03K19/17716Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register
    • 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/582Pseudo-random number generators
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/01Modifications for accelerating switching
    • H03K19/017Modifications for accelerating switching in field-effect transistor circuits
    • H03K19/01728Modifications for accelerating switching in field-effect transistor circuits in synchronous circuits, i.e. by using clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/00006Changing the frequency

Abstract

本发明提供一种真实随机数产生器及真实随机数产生方法,用以产生一随机变数。一第一延迟电路延迟一输入信号,用以产生一第一延迟信号。一第二延迟电路延迟第一延迟信号,用以产生一第二延迟信号。一第一取样电路根据一时脉信号,取样输入信号,用以产生一第一取样信号。一第二取样电路根据时脉信号,取样第一延迟信号,用以产生一第二取样信号。一第三取样电路根据时脉信号,取样第二延迟信号,用以产生一第三取样信号。一运算电路根据第一取样信号、第二取样信号及第三取样信号,产生随机变数,并调整一计数值。运算电路根据计数值,调整时脉信号。本发明可以实现随机数产生时规则不易被预测出,提高电脑内部数据的安全性。

Description

真实随机数产生器及真实随机数产生方法
技术领域
本发明有关于一种随机数产生器,特别是有关于一种真实随机数产生器及真实随机数产生方法。
背景技术
随着电子装置的发展,随机数(random number)被应用于电脑安全防护等领域,特别在电脑安全防护的领域上。然而,当随机数出现的规则被预测出时,将会影响电脑内部数据的安全性。
发明内容
本发明的一实施例提供一种真实随机数产生器,用以产生一随机变数,并包括一第一延迟电路、一第二延迟电路、一第一取样电路、一第二取样电路、一第三取样电路以及一运算电路。第一延迟电路延迟一输入信号,用以产生一第一延迟信号。第二延迟电路延迟第一延迟信号,用以产生一第二延迟信号。第一取样电路根据一时脉信号,取样输入信号,用以产生一第一取样信号。第二取样电路根据时脉信号,取样第一延迟信号,用以产生一第二取样信号。第三取样电路根据时脉信号,取样第二延迟信号,用以产生一第三取样信号。运算电路根据第一取样信号、第二取样信号及第三取样信号,产生随机变数并调整一计数值。运算电路根据计数值,调整时脉信号。
本发明另提供一种真实随机数产生方法,用以产生一随机变数,并包括:延迟一输入信号,用以产生一第一延迟信号;延迟第一延迟信号,用以产生一第二延迟信号;根据一时脉信号,取样输入信号,用以产生一第一取样信号;根据时脉信号,取样第一延迟信号,用以产生一第二取样信号;根据时脉信号,取样第二延迟信号,用以产生一第三取样信号;根据第一取样信号、第二取样信号及第三取样信号,产生随机变数,并调整一计数值;以及根据计数值,调整时脉信号。
本发明的真实随机数产生方法可经由本发明的真实随机数产生器来实现,其为可执行特定功能的硬件或固件,亦可以通过程序代码方式收录于一纪录媒体中,并结合特定硬件来实现。当程序代码被电子装置、处理器、电脑或机器载入且执行时,电子装置、处理器、电脑或机器变成用以实现本发明的真实随机数产生器。
附图说明
图1为本发明的真实随机数产生器的示意图;
图2为本发明的运算电路的一可能示意图;
图3为本发明的取样信号的示意图;
图4为本发明的真实随机数产生方法的流程示意图。
附图标号:
100:真实随机数产生器;
110、200:运算电路;
120:时脉产生电路;
RN:随机变数;
D1~DN、D1、D2:延迟电路;
S1~SN、S1、S2、S3、S4:取样电路;
X0:输入信号;
DS1~DS(N-1)、DS1、DS2、DS3:延迟信号;
X1~XN、X1、X2、X3、X4、X1~X4:取样信号;
CT:计数值;
CLK:时脉信号;
AD1、AD2:调整信号;
210:互斥或闸;
220:计数器;
230:处理器;
300:时间点;
S411、S412、S413、S414、S415、S416、S417:步骤。
具体实施方式
为让本发明的目的、特征和优点能更明显易懂,下文特举出实施例,并配合所附图式,做详细的说明。本发明说明书提供不同的实施例来说明本发明不同实施方式的技术特征。其中,实施例中的各元件的配置为说明之用,并非用以限制本发明。另外,实施例中图式标号的部分重复,是为了简化说明,并非意指不同实施例之间的关联性。
图1为本发明的真实随机数产生器的示意图。真实随机数产生器100用以产生一随机变数(random variable)RN,并包括延迟电路D1~DN、取样电路S1~SN以及一运算电路110。延迟电路D1~DN串接在一起。由于延迟电路D1~DN的特性相同,故以下仅说明延迟电路D1及延迟电路D2。在本实施例中,延迟电路D1延迟一输入信号X0,用以产生一延迟信号DS1。延迟电路D2延迟延迟信号DS1,用以产生一延迟信号DS2。在一可能实施例中,输入信号X0为一随机数数据(random data)。
取样电路S1~SN取样延迟信号DS1~DS(N-1)。由于取样电路S1~SN的特性相同,故以下仅说明取样电路S1、取样电路S2及取样电路S3。取样电路S1根据一时脉信号CLK,取样输入信号X0,用以产生一取样信号X1。取样电路S2根据时脉信号CLK,取样延迟信号DS1,用以产生一取样信号X2。取样电路S3根据时脉信号CLK,取样延迟信号DS2,用以产生一取样信号X3。本发明并不限定取样电路S1~SN的种类。在一可能实施例中,取样电路S1~SN为触发器(如D型触发器)、锁存器(latch)或是暂存器(register)。
运算电路110根据取样信号X1~XN,产生随机变数RN并调整一计数值CT。在一可能实施例中,运算电路110具有一亚稳态检测电路(未显示)。亚稳态检测电路根据取样信号X1~XN的电平,判断是否发生一亚稳态(metastable)现象。以取样电路S4为例,当亚稳态现象未发生时,取样信号X4的电平相同于延迟信号DS3的电平。然而,当亚稳态现象发生时,取样信号X4的电平不等于延迟信号DS3的电平。此时,取样信号X4的电平无法预测,可能为一高电平或是一低电平。
在一可能实施例中,当发生亚稳态现象时,运算电路110调整计数值CT。在此例中,当亚稳态现象发生的次数过低时,运算电路110调整(如增加)时脉信号CLK的频率,用以增加亚稳态现象发生的次数。在另一可能实施例中,当亚稳态现象发生的次数过多时,运算电路110调整(如减少)时脉信号CLK的频率,用以减少亚稳态现象发生的次数。
在其它实施例中,运算电路110根据取样信号X1~XN的电平,决定是否调整计数值CT。举例而言,当取样信号X1~XN的一个的电平不同于取样信号X1~XN的另一个的电平时,运算电路110调整计数值CT。当取样信号X1~XN具有相同的电平时,运算电路110不调整计数值CT。
在一些实施例中,运算电路110判断计数值CT达一预设值的时间。当计数值CT达一预设值的时间大于一第一预设时间(如5秒)时,表示亚稳态现象发生的次数过低。因此,运算电路110增加时脉信号CLK的频率。然而,当计数值CT达一预设值的时间小于一第二预设时间(如1秒)时,表示亚稳态现象发生的次数过高。因此,运算电路110减少时脉信号CLK的频率。
在其它实施例中,在运算电路110接收到取样信号X1~XN后,运算电路110使能一计时器(未显示)。当计时器执行一计时操作的时间达一第三预设时间(如10秒)时,计时器可能发出一中断信号(未显示)。在此例中,在接收到中断信号后,运算电路110判断计数值CT是否等于一预设值。当计数值CT不等于预设值时,运算电路110增加时脉信号CLK的频率。
本发明并不限定运算电路110如何调整时脉信号CLK。在一可能实施例中,运算电路110根据计数值CT,产生一调整信号AD1于一时脉产生电路120。时脉产生电路120根据调整信号AD1,调整时脉信号CLK的频率。在一些实施例中,时脉产生电路120为一高频振荡器(high frequency oscillator)。在本实施例中,时脉产生电路120整合于真实随机数产生器100之中。在其它实施例中,时脉产生电路120可能独立于真实随机数产生器100之外,或是整合于运算电路110之中。
在一些实施例中,运算电路110根据计数值CT,调整延迟电路D1~DN的延迟时间。在此例中,运算电路110根据计数值CT,产生一调整信号AD2。延迟电路D1~DN根据不同的调整信号AD2,设定一延迟时间,再根据该延迟时间,延迟输入信号X0及延迟信号DS1~DS(N-1)。在一些实施例中,当亚稳态现象发生的次数过低时,运算电路110可能通过调整信号AD2,增加延迟电路D1~DN的延迟时间。当亚稳态现象发生的次数过高时,运算电路110可能通过调整信号AD2,减少延迟电路D1~DN的延迟时间。在本实施例中,运算电路110提供调整信号AD2于延迟电路D1~DN,但并非用以限制本发明。在其它实施例中,运算电路110可能提供调整信号AD2于部分的延迟电路。在一些实施例中,运算电路110可能提供不同的调整信号于不同的延迟电路。因此,延迟电路D1~DN的一个的延迟时间不同于延迟电路D1~DN的另一个的延迟时间。
在其它实施例中,在运算电路110接收到取样信号X1~XN后,运算电路110使能一计时器(未显示)。当计时器执行一计时操作的时间达一第三预设时间时,计时器可能发出一中断信号(未显示)。在此例中,在接收到中断信号后,运算电路110判断计数值CT是否等于一预设值。当计数值CT不等于预设值时,运算电路110增加延迟电路D1~DN的延迟时间。
本发明并不限定运算电路110产生调整信号AD1及AD2的顺序。在一可能实施例中,当亚稳态现象发生的次数过低时,运算电路110只产生调整信号AD1,而不产生调整信号AD2。在此例中,当时脉信号CLK的频率达一最大频率时,如果亚稳态现象发生的次数仍然过低时,运算电路110更产生调整信号AD2。在另一可能实施例中,当亚稳态现象发生的次数过低时,运算电路110只产生调整信号AD2,而不产生调整信号AD1。在此例中,当延迟电路D1~DN的延迟时间达一最大值时,如果亚稳态现象发生的次数仍然过低时,运算电路110才开始产生调整信号AD1。
由于亚稳态现象发生的时间点无法预测,并且亚稳态现象发生所引起的错误取样信号的电平也无法预测,故当运算电路110根据取样信号X1~XN产生随机变数RN时,则随机变数RN也无法预测。因此,大幅提高随机变数RN的安全性。举例而言,当亚稳态现象未发生时,取样信号X1~XN均处于正确的电平。然而,当亚稳态现象发生时,取样信号X1~XN的至少一个处于错误的电平。由于错误的电平无法预测,可能是高电平或低电平,故若运算电路110将具有错误电平的取样信号作为随机变数RN时,则可大幅降低随机变数RN的可预测性(predictability)。
图2为本发明的运算电路的一可能示意图。如图2所示,运算电路200包括一互斥或闸(XOR)210、一计数器(counter)220以及一处理器230。互斥或闸210接收取样信号X1~XN。当取样信号X1~XN的一的电平不同于取样信号X1~XN的另一个时,互斥或闸210输出一第一电平。当取样信号X1~XN具有相同的电平时,互斥或闸210输出一第二电平。第二电平相对于第一电平。在一可能实施例中,第一电平为一高电平,第二电平为一低电平。
计数器220耦接互斥或闸210,并根据互斥或闸210的输出,调整计数值CT。在一可能实施例中,当互斥或闸210输出第一电平时,计数器220调整(增加或减少)计数值CT。当互斥或闸210输出第二电平时,计数器220不调整计数值CT。在本实施例中,计数值CT与亚稳态现象出现的次数有关。
处理器230耦接互斥或闸210及计数器220。在一可能实施例中,处理器230根据互斥或闸210的输出,产生随机变数RN。在此例中,处理器230直接将互斥或闸210的输出作为随机变数RN。在另一可能实施例中,处理器230接收取样信号X1~XN,并将具有错误电平的取样信号作为随机变数RN。在其它实施例中,处理器230耦接计数器220,用以读取计数值CT。在此例中,处理器230根据计数值CT,产生调整信号AD1及调整信号AD2的至少一个。
图3为本发明的取样信号X1~X4的示意图。为方便说明,图3仅显示取样信号X1~X4。在时间点300,时脉信号CLK触发取样电路S1、取样电路S2、取样电路S3及取样电路S4。因此,取样电路S1、取样电路S2、取样电路S3及取样电路S4产生取样信号X1~X4。在此例中,由于取样电路S4的建立时间及保持时间不适合,故在时间点300,取样信号X4的电平尚未稳定维持于一目标值。
图4为本发明的真实随机数产生方法。首先,接收并延迟一输入信号,用以产生一第一延迟信号(步骤S411)。在一可能实施例中,步骤S411使用一第一延迟电路。在此例中,第一延迟电路根据一第一延迟时间,延迟输入信号。在一些实施例中,输入信号为一随机数数据。
接着,延迟第一延迟信号,用以产生一第二延迟信号(步骤S412)。在一可能实施例中,步骤S412使用一第二延迟电路。在此例中,第二延迟电路根据一第二延迟时间,延迟第一延迟信号。在此例中,第二延迟电路串接第一延迟电路。第一延迟时间可能相同或不同于第二延迟时间。
根据一时脉信号,取样输入信号,用以产生一第一取样信号(步骤S413)。在一可能实施例中,步骤S413使用一第一取样电路,对输入信号进行取样。在一些实施例中,第一取样电路可能是触发器、锁存器或是暂存器。
根据该时脉信号,取样第一延迟信号,用以产生一第二取样信号(步骤S414)。在一可能实施例中,步骤S414使用一第二取样电路,对第一延迟信号进行取样。在一些实施例中,第二取样电路可能是触发器、锁存器或是暂存器。
根据该时脉信号,取样第二延迟信号,用以产生一第三取样信号(步骤S415)。在一可能实施例中,步骤S415使用一第三取样电路,对第二延迟信号进行取样。在一些实施例中,第三取样电路可能是触发器、锁存器或是暂存器。
根据第一取样信号、第二取样信号及第三取样信号,产生一随机变数并调整一计数值(步骤S416)。在一可能实施例中,步骤S416可能对第一取样信号、第二取样信号及第三取样信号进行一互斥或运算,并将运算结果作为一随机变数。在另一可能实施例中,步骤S416可能检测第一取样信号、第二取样信号及第三取样信号的电平。假设,第一取样信号的电平不同于第二取样信号及第三取样信号的电平。在此例中,步骤S416将第一取样信号作为一随机变数。
在其它实施例中,步骤S416根据第一取样信号、第二取样信号及第三取样信号,判断是否发生一亚稳态现象。当发生亚稳态现象时,步骤S416调整一计数值。然而,当亚稳态现象未发生时,步骤S416不调整计数值。在一些实施例中,当第一取样信号、第二取样信号及第三取样信号的一个的电平不同于第一取样信号、第二取样信号及第三取样信号的另一个时,步骤S416调整计数值。然而,当第一取样信号、第二取样信号及第三取样信号具有相同的电平时,步骤S416停止调整计数值。
根据计数值,调整时脉信号(步骤S417)。在一可能实施例中,步骤S417先检测计数值达一预设值的时间。当计数值达一预设值的时间大于一第一预设时间时,步骤S417增加时脉信号的频率。另外,当计数值达该预设值的时间小于一第二预设时间时,步骤S417减少时脉信号的频率。
在其它实施例中,步骤S417在一第三预设时间后,判断计数值是否等于一预设值。当计数值不等于预设值时,步骤S417增加该时脉信号的频率。在一些实施例中,步骤S417调整第一延迟信号及第二延迟信号之间的一延迟时间。在此例中,步骤S417调整第一延迟时间及第二延迟时间的至少一个。
本发明的真实随机数产生方法,或特定型态或其部份,可以以程序代码的型态存在。程序代码可储存于实体媒体,如软碟、光碟片、硬碟、或是任何其他机器可读取(如电脑可读取)储存媒体,亦或不限于外在形式的电脑程序产品,其中,当程序代码被机器,如电脑载入且执行时,此机器变成用以参与本发明的真实随机数产生器。程序代码也可通过一些传送媒体,如电线或电缆、光纤、或是任何传输型态进行传送,其中,当程序代码被机器,如电脑接收、载入且执行时,此机器变成用以参与本发明的真实随机数产生器。当在一般用途处理单元实现时,程序代码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
除非另作定义,在此所有词汇(包含技术与科学词汇)均属本领域技术人员的一般理解。此外,除非明白表示,词汇于一般字典中的定义应解释为与其相关技术领域的文章中意义一致,而不应解释为理想状态或过分正式的语态。虽然“第一”、“第二”等术语可用于描述各种元件及预设值,但这些元件及预设值不应受这些术语的限制。这些术语只是用以区分一个元件和另一个元件或是一个预设值和另一个预设值。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰。举例来说,本发明实施例所述的系统、装置或是方法可以硬件、软件或硬件以及软件的组合的实体实施例加以实现。因此本发明的保护范围当以前附的权利要求所限定范围为准。

Claims (20)

1.一种真实随机数产生器,其特征在于,用以产生一随机变数,并包括:
一第一延迟电路,延迟一输入信号,用以产生一第一延迟信号;
一第二延迟电路,延迟该第一延迟信号,用以产生一第二延迟信号;
一第一取样电路,根据一时脉信号,取样该输入信号,用以产生一第一取样信号;
一第二取样电路,根据该时脉信号,取样该第一延迟信号,用以产生一第二取样信号;
一第三取样电路,根据该时脉信号,取样该第二延迟信号,用以产生一第三取样信号;以及
一运算电路,根据该第一取样信号、该第二取样信号及该第三取样信号,产生该随机变数,并调整一计数值,
其中该运算电路根据该计数值,调整该时脉信号。
2.如权利要求1所述的真实随机数产生器,其特征在于,该运算电路根据该计数值,调整该第一延迟电路及该第二延迟电路的至少一个的一延迟时间。
3.如权利要求1所述的真实随机数产生器,其特征在于,该运算电路根据该第一取样信号、该第二取样信号及该第三取样信号,判断是否发生一亚稳态现象,当发生该亚稳态现象时,该运算电路调整该计数值。
4.如权利要求1所述的真实随机数产生器,其特征在于,当该第一取样信号、该第二取样信号及该第三取样信号的一个的电平不同于该第一取样信号、该第二取样信号及该第三取样信号的另一个时,该运算电路调整该计数值。
5.如权利要求4所述的真实随机数产生器,其特征在于,当该第一取样信号、该第二取样信号及该第三取样信号具有相同的电平时,该运算电路不调整该计数值。
6.如权利要求5所述的真实随机数产生器,其特征在于,该运算电路包括:
一互斥或闸,该互斥或闸接收该第一取样信号、该第二取样信号及该第三取样信号,
其中当该第一取样信号、该第二取样信号及该第三取样信号的一个的电平不同于该第一取样信号、该第二取样信号及该第三取样信号的另一个时,该互斥或闸输出一第一电平,该第一取样信号、该第二取样信号及该第三取样信号具有相同的电平时,该互斥或闸输出一第二电平,该第二电平相对于该第一电平。
7.如权利要求6所述的真实随机数产生器,其特征在于,该运算电路更包括:
一计数器,耦接该互斥或闸,
其中当该互斥或闸输出该第一电平时,该计数器调整该计数值,当该互斥或闸输出该第二电平时,该计数器不调整该计数值。
8.如权利要求1所述的真实随机数产生器,其特征在于,该运算电路判断该计数值达一预设值的时间,当该计数值达该预设值的时间大于一第一预设时间时,该运算电路增加该时脉信号的频率。
9.如权利要求8所述的真实随机数产生器,其特征在于,当该计数值达该预设值的时间小于一第二预设时间时,该运算电路减少该时脉信号的频率。
10.如权利要求1所述的真实随机数产生器,其特征在于,在一第三预设时间后,该运算电路判断该计数值是否等于一预设值,当该计数值不等于该预设值时,该运算电路增加该时脉信号的频率。
11.如权利要求1所述的真实随机数产生器,其特征在于,该输入信号为一随机数数据。
12.一种真实随机数产生方法,其特征在于,用以产生一随机变数,并包括:
延迟一输入信号,用以产生一第一延迟信号;
延迟该第一延迟信号,用以产生一第二延迟信号;
根据一时脉信号,取样该输入信号,用以产生一第一取样信号;
根据该时脉信号,取样该第一延迟信号,用以产生一第二取样信号;
根据该时脉信号,取样该第二延迟信号,用以产生一第三取样信号;
根据该第一取样信号、该第二取样信号及该第三取样信号,产生该随机变数,并调整一计数值;以及
根据该计数值,调整该时脉信号。
13.如权利要求12所述的真实随机数产生方法,其特征在于,更包括:
根据该计数值,调整该第一延迟信号及该第二延迟信号之间的一延迟时间。
14.如权利要求12所述的真实随机数产生方法,其特征在于,更包括:
根据该第一取样信号、该第二取样信号及该第三取样信号,判断是否发生一亚稳态现象;
当发生该亚稳态现象时,调整该计数值;以及
当未发生该亚稳态现象时,停止调整该计数值。
15.如权利要求12所述的真实随机数产生方法,其特征在于,根据该第一取样信号、该第二取样信号及该第三取样信号,调整该计数值的步骤包括:
检测该第一取样信号、该第二取样信号及该第三取样信号的电平;以及
当该第一取样信号、该第二取样信号及该第三取样信号的一个的电平不同于该第一取样信号、该第二取样信号及该第三取样信号的另一个时,调整该计数值。
16.如权利要求15所述的真实随机数产生方法,其特征在于,根据该第一取样信号、该第二取样信号及该第三取样信号,调整该计数值的步骤更包括:
当该第一取样信号、该第二取样信号及该第三取样信号具有相同的电平时,停止调整该计数值。
17.如权利要求12所述的真实随机数产生方法,其特征在于,根据该计数值,调整该时脉信号的步骤包括:
判断该计数值达一预设值的时间;以及
当该计数值达该预设值的时间大于一第一预设时间时,增加该时脉信号的频率。
18.如权利要求17所述的真实随机数产生方法,其特征在于,根据该计数值,调整该时脉信号的步骤更包括:
当该计数值达该预设值的时间小于一第二预设时间时,减少该时脉信号的频率。
19.如权利要求12所述的真实随机数产生方法,其特征在于,更包括:
在一第三预设时间后,判断该计数值是否等于一预设值;以及
当该计数值不等于该预设值时,增加该时脉信号的频率。
20.如权利要求12所述的真实随机数产生方法,其特征在于,该输入信号为一随机数数据。
CN202111038211.0A 2021-03-26 2021-09-06 真实随机数产生器及真实随机数产生方法 Pending CN115129296A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW110111082A TWI778557B (zh) 2021-03-26 2021-03-26 真實亂數產生器及真實亂數產生方法
TW110111082 2021-03-26

Publications (1)

Publication Number Publication Date
CN115129296A true CN115129296A (zh) 2022-09-30

Family

ID=83362773

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111038211.0A Pending CN115129296A (zh) 2021-03-26 2021-09-06 真实随机数产生器及真实随机数产生方法

Country Status (3)

Country Link
US (1) US11757450B2 (zh)
CN (1) CN115129296A (zh)
TW (1) TWI778557B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116069295B (zh) * 2022-12-22 2023-10-20 海光集成电路设计(北京)有限公司 真随机数发生电路、方法及电子设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862605B2 (en) * 2001-08-15 2005-03-01 Scott A. Wilber True random number generator and entropy calculation device and method
US20100281088A1 (en) * 2009-04-29 2010-11-04 Psigenics Corporation Integrated true random number generator
CN101620523B (zh) * 2009-07-29 2011-04-13 深圳国微技术有限公司 一种随机数发生器电路
US9047152B2 (en) * 2013-01-16 2015-06-02 Skymedi Corporation Delay device, method, and random number generator using the same
US9058228B2 (en) * 2013-02-19 2015-06-16 Raytheon Company Random number generator for generating truly random numbers
CN105242903B (zh) * 2015-10-21 2018-01-16 昆腾微电子股份有限公司 随机数生成装置和方法
CN111258548A (zh) * 2018-11-30 2020-06-09 紫光同芯微电子有限公司 一种真随机数发生器
US10824396B2 (en) * 2019-01-28 2020-11-03 Nuvoton Technology Corporation Random number generator based on meta-stability of shorted back-to-back inverters
TWI706320B (zh) * 2019-01-29 2020-10-01 睿寬智能科技有限公司 現場可編程閘陣列的真實隨機數產生裝置及方法
US11294640B2 (en) * 2019-03-13 2022-04-05 Ememory Technology Inc. Random number generator
JP7389348B2 (ja) * 2020-03-12 2023-11-30 富士通株式会社 擬似乱数生成回路装置
CN111538475B (zh) * 2020-03-25 2023-06-23 上海交通大学 基于fpga的真随机数发生器构建系统及方法

Also Published As

Publication number Publication date
US11757450B2 (en) 2023-09-12
TW202238365A (zh) 2022-10-01
US20220311443A1 (en) 2022-09-29
TWI778557B (zh) 2022-09-21

Similar Documents

Publication Publication Date Title
KR100847213B1 (ko) 난수 생성 방법 및 난수 생성기
US9325487B1 (en) Systems and methods for transferring a signal from a first clock domain to a second clock domain
EP2525489A1 (en) Bit sequence generation device and bit sequence generation method
US7714619B2 (en) High-frequency clock detection circuit
CN113901447A (zh) 集成电路中的电压毛刺检测
US7042250B1 (en) Synchronization of clock signals in a multi-clock domain
US5398270A (en) Data coincidence detecting circuit
CN115129296A (zh) 真实随机数产生器及真实随机数产生方法
GB2359706A (en) Synchronising data and clock signals using a programmable delay circuit
US8284879B2 (en) Lossless transfer of events across clock domains
US20130346458A1 (en) Method for monitoring the output of a random generator
US6265904B1 (en) Digital phase shift amplification and detection system and method
CN111211774B (zh) 除弹跳电路
US7461305B1 (en) System and method for detecting and preventing race condition in circuits
CN113574473B (zh) 时间测量电路
US10326433B2 (en) Clock filter and clock processing method
US8762764B2 (en) Method to detect clock tampering
EP3767849A1 (en) A hardware component and a method for implementing a camouflage of current traces generated by a digital system
US6885228B2 (en) Non-iterative signal synchronization
US7750831B2 (en) Phase detector utilizing analog-to-digital converter components
US20230327657A1 (en) Clock domain crossing
US10746791B2 (en) Glitch measurement device and glitch measurement method
CN108780385B (zh) 模数转换结果读出电路
US11468958B1 (en) Shift register circuit and a method for controlling a shift register circuit
JP2010206603A (ja) 遅延発生装置及びicテスタ

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination