CN103927147A - 用于随机数产生器的延迟装置及方法及其随机数产生器 - Google Patents
用于随机数产生器的延迟装置及方法及其随机数产生器 Download PDFInfo
- Publication number
- CN103927147A CN103927147A CN201310143391.8A CN201310143391A CN103927147A CN 103927147 A CN103927147 A CN 103927147A CN 201310143391 A CN201310143391 A CN 201310143391A CN 103927147 A CN103927147 A CN 103927147A
- Authority
- CN
- China
- Prior art keywords
- signal
- random
- tandom number
- delayed
- multiplexer
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/84—Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
Abstract
本发明公开了一种用于一随机数产生器中的延迟装置,用来产生一信号以提供予一随机组件,该延迟装置包括有一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;一多任务器,耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值;以及一延迟选择装置,耦接至该多任务器,用来产生一选择信号,该选择信号控制该多任务器选择输出该延迟信号作为该延迟触发信号。
Description
技术领域
本发明涉及一种用于一随机数产生器的延迟装置及方法及其随机数产生器,尤其涉及一种可产生延迟的输入信号以提供予随机组件,进而提升随机性的延迟装置及方法及其随机数产生器。
背景技术
随机数产生器普遍应用于密码学中,用来提供随机的数值或不定值,以产生可用于同步或异步加密算法的随机数、随机数或金钥。公知随机数产生器的随机数源(entropy source)具有数个相同或不同的随机组件,而每一随机组件的输出值可相互结合,进而产生一随机的输出结果。
公知随机组件可分为二种类型:延迟变异型(jitter-based)及亚稳态型(metastability-based),此二种类型的随机组件都可用来产生随机位值。一般来说,随机位值的随机性会受到环境因素的影响,如工艺过程、电压及温度等。举例来说,工艺偏移会影响随机性。由于工艺偏移造成随机组件出现某种程度的一致性,使得随机组件所输出的随机位值因此偏离真正的随机。在某些情况下,此一致性可能造成随机组件持续产生相同的位值输出(如一连串的1或一连串的0),抑或输出的随机位值具有周期性。如此一来,随机数产生器的随机性会降低。
为达到较高的随机性,公知随机数产生器的随机数源往往使用大量的随机组件并结合这些随机组件的输出结果。然而,大量的随机组件会消耗大量的电能并占据大幅电路面积。除此之外,随机组件通常是通过半导体工艺中的标准逻辑单元(standard logic cell)电路来实现,而每一标准逻辑单元都具有某种程度的一致性,因此,将这些具有同构型的随机组件的输出值结合,所产生的结果往往不具有令人满意的随机性。再者,用于随机组件的触发信号通常来自于同一个系统频率,而系统频率的周期性使得不同随机组件可能具有相似的触发结果。有鉴于此,公知技术实有改善的必要。
发明内容
因此,本发明的主要目的即在于提供一种可产生延迟的输入信号以提供予随机组件,进而提升随机性的延迟装置及方法及其随机数产生器。
本发明公开一种用于一随机数产生器中的延迟装置,用来产生一信号以提供予一随机组件,该延迟装置包括有一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;一多任务器,耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值;以及一延迟选择装置,耦接至该多任务器,用来产生一选择信号,该选择信号控制该多任务器选择输出该延迟信号作为该延迟触发信号。
本发明还公开一种随机数产生器,包括有一随机组件;以及一延迟装置,用来产生一信号以提供予该随机组件。该延迟装置包括有一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;一多任务器,耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值;以及一延迟选择装置,耦接至该多任务器,用来产生一选择信号,该选择信号控制该多任务器选择输出该延迟信号作为该延迟触发信号。
本发明还公开一种随机数产生器,包括有多个随机组件;以及一延迟装置,用来产生一信号以提供予该多个随机组件中每一随机组件。该延迟装置包括有一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;多个多任务器,其中每一多任务器都耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该多个随机组件中每一随机组件产生一随机位值;以及一延迟选择装置,耦接至该多个多任务器,用来产生一选择信号,该选择信号控制该多个多任务器中每一多任务器选择输出该延迟信号作为该延迟触发信号。
本发明还公开一种在一随机数产生器中产生一信号以提供予一随机组件的方法,包括有产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;以及产生一选择信号,该选择信号选择输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值。
附图说明
图1为本发明实施例一亚稳态型随机组件的示意图。
图2A为亚稳态型随机组件在振荡模式时的等效电路示意图。
图2B为亚稳态型随机组件在解析模式时的等效电路示意图。
图3为本发明实施例亚稳态型随机组件的波形示意图。
图4A为使用延迟触发信号的亚稳态型随机组件的波形示意图。
图4B为图4A的波形的细部示意图。
图5为本发明实施例一亚稳态的示意图。
图6为本发明实施例一延迟装置搭配随机组件的示意图。
图7为本发明实施例一随机数值产生流程的示意图。
图8为本发明另一实施例一随机数值产生流程的示意图。
图9A为本发明实施例一随机数产生器的示意图。
图9B为图9A所示的延迟触发信号的详细说明的示意图。
图10为本发明另一实施例一随机数产生器的示意图。
图11A为公知一随机数产生器的一随机数源的示意图。
图11B为本发明实施例具有一随机数源搭配一延迟装置的一随机数产生器的示意图。
其中,附图标记说明如下:
10 亚稳态型随机组件
100、102 反相器
110、112 延迟单元
120、122 多任务器
Q 输出信号
TRIG 触发信号
TRIG_D 延迟触发信号
60 随机数产生器
600 延迟装置
602 延迟模块
604 多任务器
606 延迟选择装置
SDL 选择信号
Nd_1~Nd_N 延迟信号
70 流程
700~712 步骤
80 流程
800~814 步骤
90 随机数产生器
900 延迟装置
902 延迟模块
904_1~904_X 多任务器
906 延迟选择装置
910 随机数产生器控制单元
950_1~950_X 随机组件
TRIG_D1~TRIG_DX 延迟触发信号
1000 随机数产生器
1002 延迟模块
1004_1~1004_X 多任务器
1006 延迟选择装置
1010 延迟装置
1050_1~1050_X 随机组件
FF_1~FF_X 正反器
1100 随机数源
RC_1~RC_Y 随机组件
1150 随机数源
RC_1’~RC_X’ 随机组件
1152 延迟装置
具体实施方式
本发明的实施例主要应用于随机组件。在上述二种类型的随机组件中,由于亚稳态型(metastability-based)随机组件使用较少电路组件且耗电量较低,相较于须使用环式振荡器(ring oscillator)的延迟变异型(jitter-based)随机组件来说,亚稳态型随机组件更容易实现。因此,较佳地,亚稳态型随机组件可实施于随机数产生器中作为随机数源(entropy source)。请参考图1,图1为本发明实施例一亚稳态型随机组件10的示意图。亚稳态型随机组件10通过一双重单反相器交互反馈电路(dual single-inverter cross-feedbackcircuit)来实现,其包括有反相器100、102、延迟单元110、112及多任务器120、122。如图1所示,延迟单元110的输入端耦接至反相器100的输出端,而延迟单元112的输入端耦接至反相器102的输出端。多任务器120、122都具有二输入端、一输出端及一控制端。在多任务器120中,一输入端耦接至延迟单元110的输出端,另一输入端耦接至反相器102的输出端,输出端耦接至反相器100的输入端,以及控制端接收一触发信号TRIG。在多任务器122中,一输入端耦接至延迟单元112的输出端,另一输入端耦接至反相器100的输出端,输出端耦接至反相器102的输入端,以及控制端接收触发信号TRIG。
请继续参考图1。触发信号TRIG同时控制多任务器120、122,使随机组件10可在一振荡模式(oscillation mode)及一解析模式(resolution mode)之间切换。举例来说,当触发信号TRIG为“1”时,多任务器120会控制延迟单元110的输出端耦接至反相器100的输入端,而多任务器122会控制延迟单元112的输出端耦接至反相器102的输入端,使随机组件10处在振荡模式。请参考图2A,图2A为亚稳态型随机组件10在振荡模式时的等效电路示意图。如图2A所示,随机组件10可简化为二振荡器。一输出信号Q可产生于反相器100、102其中之一的输出端,在振荡模式中,输出信号Q在“1”与“0”之间振荡。另一方面,当触发信号TRIG为“0”时,多任务器120会控制反相器102的输出端耦接至反相器100的输入端,而多任务器122会控制反相器100的输出端耦接至反相器102的输入端,使随机组件10处在解析模式。请参考图2B,图2B为亚稳态型随机组件10在解析模式时的等效电路示意图。如图2B所示,随机组件10可简化为二个以交互反馈方式连接的反相器。在解析模式中,输出信号Q会随机趋向于一输出值“1”或“0”。
请参考图3,图3为本发明实施例亚稳态型随机组件10的波形示意图。如图3所示,当触发信号TRIG为“1”时,随机组件10处在振荡模式,且输出信号Q为振荡的状态。当触发信号TRIG转换为“0”时,多任务器120、122同时被触发信号TRIG所触发,而随机组件10进入解析模式,使得输出信号Q趋向于一输出值“1”或“0”。接着,一取样时钟对输出信号Q进行取样,以输出取样结果作为随机组件10的一随机位值。如图3所示,输出信号Q在随机组件10进入解析模式且经过一个频率以后被取样,但在其它实施例中,只要随机组件10仍落在解析模式且输出信号Q为稳定状态,取样时钟可在任何时间对输出信号Q进行取样,而不限于此。
然而,如上所述,随机组件的随机性会受到环境因素(如工艺过程、电压及温度)影响,使得随机组件所输出的随机位值偏离真正的随机。为提升随机数产生器的随机性,可将触发信号TRIG延迟不同时间,以在不同时间点对多任务器120、122进行触发。使用延迟的触发信号TRIG_D的亚稳态型随机组件10的波形绘示于图4A。如图4A所示,延迟触发信号TRIG_D在不同时间点由“1”改变至“0”,亦即,延迟触发信号TRIG_D在不同时间点对随机组件10进行触发,使得随机组件10在不同时间点由振荡模式切换至解析模式,因此,输出信号Q可在不同条件之下由振荡的状态转换为固定输出值“1”或“0”,进而提升输出信号Q数值的随机性。
更具体而言,请参考图4B,图4B绘示图4A的波形的细部。图4B包括取样时钟、延迟触发信号TRIG_D及输出信号Q的详细波形。如图4B所示,延迟触发信号TRIG_D可将原始的触发信号TRIG延迟一段时间,进而在一个时序区间内的不同时间点触发随机组件10,使其由振荡模式转换至解析模式。若随机组件10在某一点A被触发,此时由于输出信号Q振荡至一较高电压,随机组件10较可能倾向于输出“1”。若随机组件10在某一点B被触发,此时由于输出信号Q振荡至一较低电压,随机组件10较可能倾向于输出“0”。若随机组件10在某一点C被触发,此时由于输出信号Q振荡至一中间电压,则随机组件10输出“1”或“0”的机率相近。当输出信号Q位于点C时可视为亚稳态,其详细原理绘示于图5中。当随机组件10在点C被触发时,其呈现的状态如同放置在一钟形曲线顶端的一颗球。这颗球可能会在钟的顶端停留一段时间,接着随机地往右侧(逻辑“1”)或左侧(逻辑“0”)落下。因此,上述实施例的高随机性不仅来自于触发点在时序区间内的不确定性,同时也来自于亚稳态状况下的不确定性。
延迟触发信号TRIG_D的不同延迟时间可通过一延迟装置来实现。请参考图6,图6为本发明实施例一延迟装置600搭配随机组件10的示意图。延迟装置600所产生的信号可用于随机组件10,其包括有一延迟模块602、一多任务器604及一延迟选择装置606。延迟模块602可用来产生N个延迟信号Nd_1~Nd_N,其中N可为大于1的任意正整数。每一延迟信号Nd_1~Nd_N具有大于或等于零的延迟时间,且每一延迟时间都不同于其它延迟信号的延迟时间。多任务器604耦接至延迟模块602,用来输出延迟信号Nd_1~Nd_N中任一延迟信号作为一延迟触发信号TRIG_D,以控制随机组件10产生一随机位值。延迟选择装置606耦接至多任务器604,用来产生一选择信号SDL,选择信号SDL控制多任务器604选择输出任一延迟信号作为延迟触发信号TRIG_D。
详细来说,当随机组件10需要产生一随机位值时,触发信号TRIG不直接触发随机组件10,而是先由延迟装置600中的延迟模块602所接收。延迟模块602接收触发信号TRIG以后,将触发信号TRIG分别延迟一段不同的时间,以产生延迟信号Nd_1~Nd_N,其中每一延迟时间都大于或等于零且不同于其它延迟信号的延迟时间。接着,延迟信号Nd_1~Nd_N分别由多任务器604的N个输入端所接收。延迟选择装置606并产生选择信号SDL以控制多任务器604选择任一延迟信号Nd_1~Nd_N并将其输出,作为延迟触发信号TRIG_D。随机组件10接收到延迟触发信号TRIG_D以后,再由振荡模式转换为解析模式,以产生随机位值。由于延迟触发信号TRIG_D可能的延迟时间具有一定的变异程度,因此随机位值也会具有一定的随机性。
在部分实施例中,由于延迟装置600搭配随机组件10输出的随机位值已具有足够的随机性,其足以构成一随机数产生器60。在系统应用上,随机数产生器60用来产生具有一预设长度的随机位值序列。因此,可在随机数产生器60中利用一判断单元来判断随机数产生器60所产生的随机位值的数量是否已达到预设长度(即需要产生的随机位值数量)。每当系统需要一串随机位值序列时,触发信号TRIG经由延迟装置600的延迟,产生具有任意延迟时间的延迟触发信号TRIG_D,以触发随机组件10由振荡模式转换至解析模式,进而产生一随机位值。接着,判断单元判断随机数产生器60所产生的随机位值的数量是否达到预设长度。若判断单元判断随机数产生器60所产生的随机位值的数量未达到预设长度时,触发信号TRIG再次被延迟,以产生下一次的延迟触发信号TRIG_D来触发随机组件10,进而产生下一个随机位值。若判断单元判断随机数产生器60所产生的随机位值的数量已达到预设长度时,即完成随机位值序列的产生流程。
为了产生具有较高随机性的随机位值序列,延迟信号Nd_1~Nd_N的数量必须够大。具体来说,数量N必须足以提供延迟选择装置606进行选择,以确保随机位值序列中每一随机位值都可对应至延迟信号Nd_1~Nd_N中的不同延迟信号,进而达到较高的随机性。一般来说,当延迟信号Nd_1~Nd_N的数量愈大,随机性就会愈高。换句话说,若随机数产生器60需要产生的随机位值序列的长度愈长,则随机数产生器60需要更多延迟信号Nd_1~Nd_N来达到较高的随机性。
对一串随机位值序列而言,延迟选择装置606可控制多任务器604依任何顺序选择延迟信号Nd_1~Nd_N。举例来说,多任务器604可依直接顺序选择延迟信号Nd_1~Nd_N,即Nd_1、Nd_2、Nd_3…。此方式可通过一计数器来实现,例如上数/下数计数器(up/down counter)、环形计数器(ringcounter)、强生计数器(Johnson counter)或格雷码计数器(Gray-code counter)。计数器可用于延迟选择装置606中,以根据计数器的类型,依序产生选择信号SDL。选择信号SDL可通过具有log2(N)位的二进制信号来实现,其可控制多任务器604在N个延迟信号之间进行选择。若延迟选择装置606通过一计数器来实现时,选择信号SDL可视为计数器的输出信号,使得延迟信号Nd_1~Nd_N可根据计数器的类型,依照一特定顺序进行选择。一般来说,计数器的结构较为简单,可降低延迟装置600的耗电及电路面积。
若需要产生具有更高随机性的随机位值序列,延迟信号Nd_1~Nd_N的选择可通过更复杂的方式进行。举例来说,延迟信号Nd_1~Nd_N可依照一虚拟随机(pseudo random)的顺序进行选择。此选择方式可通过一线性反馈移位寄存器(Linear Feedback Shift Register,LFSR)来实现,线性反馈移位寄存器用于延迟选择装置606中,以产生虚拟随机顺序的选择信号SDL。在部分实施例中,随机数产生器60还包括一随机数产生器控制单元(未绘示)。随机数产生器控制单元会产生一种子值,种子值可用来输入延迟选择装置606,进而产生选择信号SDL,随机数产生器控制单元并产生触发信号TRIG以提供予延迟模块602。种子值可针对用于延迟选择装置606的计数器或线性反馈移位寄存器进行初始化。每当系统需要一随机位值序列而启动随机数产生器60时,随机数产生器控制单元可产生不同种子值,用以初始化计数器或线性反馈移位寄存器,进而提升随机数产生器60的随机性。
上述关于随机数产生器60的运作可归纳为一随机数值产生流程70。如图7所示,随机数值产生流程70包括以下步骤:
步骤700:开始。
步骤702:产生一种子值,以对延迟选择装置606进行初始化。
步骤704:产生触发信号TRIG,以提供予延迟模块602。
步骤706:延迟模块602延迟触发信号TRIG以产生延迟信号Nd_1~Nd_N,其中每一延迟信号Nd_1~Nd_N具有一延迟时间,且每一延迟信号Nd_1~Nd_N的延迟时间互不相同。
步骤708:延迟选择装置606产生选择信号SDL,以控制多任务器604选择输出延迟信号Nd_1~Nd_N中一延迟信号作为延迟触发信号TRIG_D,延迟触发信号TRIG_D则控制随机组件10产生一随机位值。
步骤710:判断单元判断随机数产生器60所产生的随机位值的数量是否达到需要产生的一预设数量。若是,则执行步骤712;若否,则执行步骤704。
步骤712:结束。
在部分实施例中,延迟信号Nd_1~Nd_N的选择可由随机数产生器60先前输出的随机位值或其它随机数源进行控制。此选择方式可依据随机数产生器60先前输出的一随机位值或数个随机位值的结合来决定,或通过其它随机数源来决定。举例来说,随机数产生器控制单元或延迟选择装置606可接收随机组件10的输出信号Q,并根据先前接收的一输出信号Q或部分输出信号Q的结合来产生选择信号SDL。如此一来,选择信号SDL可依照真正随机的顺序来控制多任务器604选择延迟信号Nd_1~Nd_N,可更进一步提升随机数产生器60的随机性。
上述关于随机数产生器60根据先前的随机位值选择延迟信号Nd_1~Nd_N的运作可归纳为一随机数值产生流程80。随机数值产生流程80与随机数值产生流程70略有不同。如图8所示,随机数值产生流程80包括以下步骤:
步骤800:开始。
步骤802:产生一种子值,以根据随机数产生器60先前输出的随机位值,对延迟选择装置606进行初始化。
步骤804:产生触发信号TRIG,以提供予延迟模块602。
步骤806:延迟模块602延迟触发信号TRIG以产生延迟信号Nd_1~Nd_N,其中每一延迟信号Nd_1~Nd_N具有一延迟时间,且每一延迟信号Nd_1~Nd_N的延迟时间互不相同。
步骤808:延迟选择装置606产生选择信号SDL,以控制多任务器604选择输出延迟信号Nd_1~Nd_N中一延迟信号作为延迟触发信号TRIG_D,延迟触发信号TRIG_D则控制随机组件10产生一随机位值。
步骤810:随机数产生器控制单元接收随机组件10所输出的随机位值。
步骤812:判断单元判断随机数产生器60所产生的随机位值的数量是否达到需要产生的一预设数量。若是,则执行步骤814;若否,则执行步骤802。
步骤814:结束。
为达到更高的随机性,一随机数产生器可使用多个随机组件搭配一延迟装置来实现,多个随机组件产生的每一随机位值可相互结合(如使用互斥或(exclusive-or)逻辑闸),以产生具有更高随机性的另一随机位值。请参考图9,图9为本发明另一实施例一随机数产生器90的示意图。随机数产生器90包括一延迟装置900及随机组件950_1~950_X。延迟装置900包括一延迟模块902、多任务器904_1~904_X及一延迟选择装置906。延迟模块902及延迟选择装置906的架构及功能分别与延迟模块602及延迟选择装置606相似,且每一多任务器904_1~904_X的架构及功能也相似于多任务器604,因此,用于这些模块的相同信号都以相同符号表示。实际上,具有多个随机组件的随机数产生器也可通过复制多个随机数产生器60来实现。然而,多个随机数产生器的结合可能造成更多耗电及更大的电路面积。相较之下,随机数产生器90仅使用一个延迟模块902及一个延迟选择装置906,使得耗电及电路面积大幅降低。
随机数产生器90与随机数产生器60的主要差异在于随机数产生器90具有X个随机组件950_1~950_X。由于每一随机组件都必须接收一延迟触发信号,因此须使用X个多任务器904_1~904_X来产生X个延迟触发信号,以分别提供予X个随机组件950_1~950_X。此外,随机数产生器90还包括一随机数产生器控制单元910,用来产生一种子值,以对延迟选择装置906进行初始化,进而产生选择信号SDL。随机数产生器控制单元910可能还产生触发信号TRIG以提供予延迟模块902。
详细来说,当随机数产生器90需要产生一随机位值时,触发信号TRIG先由延迟模块902所接收。延迟模块902接收触发信号TRIG以后,将触发信号TRIG分别延迟一段不同的时间,以产生延迟信号Nd_1~Nd_N,其中每一延迟时间都大于或等于零且不同于其它延迟信号的延迟时间。接着,延迟信号Nd_1~Nd_N同时由每一多任务器904_1~904_X的输入端所接收。延迟选择装置906利用选择信号SDL来控制每一多任务器904_1~904_X选择任一延迟信号Nd_1~Nd_N,接着,每一多任务器904_1~904_X输出所选择的延迟信号,以分别作为延迟触发信号TRIG_D1~TRIG_DX中相对应的延迟触发信号。每一随机组件950_1~950_X可接收延迟触发信号TRIG_D1~TRIG_DX中相对应的延迟触发信号,从而由振荡模式转换为解析模式,以产生随机位值。由于延迟触发信号TRIG_D可能的延迟时间具有一定的变异程度,因此随机位值也会具有一定的随机性。除此之外,随机组件950_1~950_X所产生的X个随机位值也可相互结合(如使用互斥或逻辑闸),以产生具有更高随机性的另一随机位值作为随机数产生器90的输出随机位值,进而提升随机数产生器90的随机性。
值得注意的是,不同延迟触发信号TRIG_D1~TRIG_DX可由每一多任务器904_1~904_X依照不同方式选择而得。在部分实施例中,多任务器904_1~904_X可依照不同方式耦接至延迟模块902,以依照不同方式选择延迟触发信号TRIG_D1~TRIG_DX。换句话说,延迟模块902与不同多任务器904_1~904_X之间可具有不同的接线方式。举例来说,延迟模块902与多任务器904_1的输入端之间的接线可能依照延迟信号Nd_1、Nd_2、Nd_3…、Nd_N的顺序连接,延迟模块902与多任务器904_2的输入端之间的接线可能依照延迟信号Nd_2、Nd_3…、Nd_N、Nd_1的顺序连接,延迟模块902与多任务器904_3的输入端之间的接线可能依照延迟信号Nd_3、Nd_4…、Nd_N、Nd_1、Nd_2的顺序连接等等。不同接线方式使得多任务器904_1~904_X接收到相同选择信号SDL时,可选择具有不同延迟时间的不同延迟信号Nd_1~Nd_N,如此更大幅提升随机数产生器90的随机性。在部分实施例中,延迟模块902与多任务器904_1~904_X中任一多任务器之间的接线可通过其它方式配置甚至以打乱方式配置。此外,选择不同延迟触发信号TRIG_D1~TRIG_DX的方式也可通过使用不同类型的多任务器或使多任务器904_1~904_X接收不同选择信号来实现,而不限于此。
请参考图9B,图9B涉及图9A所示的延迟触发信号TRIG_D1~TRIG_DX的详细说明,其绘示随机数产生器90的随机性如何被提升。详细来说,随机数产生器90在延迟信号Nd_1~Nd_N中选择一延迟信号,以产生每一延迟触发信号TRIG_D1~TRIG_DX,因此,存在于每一延迟触发信号TRIG_D1~TRIG_DX的延迟时间位于延迟信号Nd_1~Nd_N延迟的时间范围内且具有一定程度的变异性,因而具有一定程度的随机性。对每一延迟触发信号TRIG_D1~TRIG_DX而言,随机性来自于延迟不同时间长度的触发点所造成的不确定性。除此之外,更高的随机性也可来自于延迟模块902及不同多任务器904_1~904_X之间的接线差异,使得不同多任务器904_1~904_X在接收到相同的选择信号SDL时,选择具有不同延迟时间的不同延迟信号Nd_1~Nd_N,进而产生具有不同延迟时间的延迟触发信号TRIG_D1~TRIG_DX。更进一步地,X个随机位值输出可相互结合并产生一具有较高随机性的随机位值。在此情况下,若水平线代表根据延迟时间的不确定性所产生的随机性且垂直线代表根据不同接线所产生的随机性时,更高的随机性即来自于对应于水平线及垂直线的两种随机性的结合。换句话说,对应于水平线的随机性以及对应于垂直线的随机性可相互结合,进而产生一种对应于面的更高随机性。
值得注意的是,本发明的主要精神在于提供一种用于一随机数产生器的延迟装置及方法,以产生用于随机数产生器中的随机组件的延迟输入信号,进而提升随机数产生器的随机性。本领域的技术人员当可据以修饰或变化,而不限于此。换句话说,只要随机数产生器的随机性可通过延迟其触发信号的时间来提升,都属于本发明的范畴,其任何修饰或变化都可根据系统需求进行调整。举例来说,一随机数产生器可根据系统对随机性的需求,使用任何数量的随机组件,而不限于此。
除此之外,上述实施例中的随机组件也可通过环式振荡器来实现。请参考图10,图10为本发明另一实施例一随机数产生器1000的示意图。如图10所示,随机数产生器1000包括一延迟装置1010、随机组件1050_1~1050_X及正反器(flip-flop)FF_1~FF_X。延迟装置1010包括一延迟模块1002、多任务器1004_1~1004_X及一延迟选择装置1006。延迟模块1002、多任务器1004_1~1004_X及延迟选择装置1006的架构及功能都分别与延迟模块902、多任务器904_1~904_X及延迟选择装置906相似,因此,相关于这些模块的相同信号都以相同符号表示。随机数产生器1000与随机数产生器90之间的主要差异在于随机数产生器1000使用延迟变异型随机组件1050_1~1050_X(即环式振荡器)作为随机数源。随机组件1050_1~1050_X的输出分别由正反器FF_1~FF_X进行取样,以产生X个随机位值。正反器FF_1~FF_X分别接收延迟装置1010所产生的延迟触发信号TRIG_D1~TRIG_DX作为取样时钟,以分别对随机组件1050_1~1050_X的输出进行取样。如此一来,随机组件1050_1~1050_X的输出可通过具有不同延迟时间的延迟取样时钟来进行取样,进而提升随机数产生器1000的随机性。除此之外,每一随机组件1050_1~1050_X也可使用不同数量的反相器,以进一步提升随机性。关于随机数产生器1000及延迟装置1010的详细运作方式已详述于前文,在此不再赘述。
根据本发明的上述实施例,使用少量随机组件即可达到一定的随机性,然而,在公知技术中,同样程度的随机性必须使用更多随机组件才能达到。请参考图11A及图11B,其中图11A为一公知随机数产生器的一随机数源1100的示意图,而图11B为本发明实施例具有一随机数源1150搭配一延迟装置1152的一随机数产生器的示意图。随机数源1100包括Y个随机组件RC_1~RC_Y,同时随机数源1150包括X个随机组件RC_1’~RC_X’。假设所有随机组件RC_1~RC_Y及RC_1’~RC_X’都相同,若随机数源1100的随机性与随机数源1150相等时,随机组件RC_1~RC_Y的数量必须大于随机组件RC_1’~RC_X’的数量(即Y>X)。如此一来,相较于公知随机数产生器,本发明上述实施例的随机数产生器使用较少随机组件即可达到相同的随机性,因而大幅节省耗电及电路面积,有时还可节省产生随机位值须耗费的时间。举例来说,若系统需要32个随机位值时,随机数源1100可使用32个随机组件(即Y=32),并结合32个随机组件的随机输出值(如使用互斥或逻辑闸)来实现,因此每一周期可产生具有足够随机性的一随机位值,接着,随机数源1100可在32个周期中重复同样的流程32次,以产生所需的32个随机位值。相较之下,随机数源1150仅须使用一随机组件(即X=1),即可在每一周期产生具有足够随机性的一随机位值,接着,随机数源1150可在32个周期中重复同样的流程32次,以产生所需的32个随机位值。在其它实施例中,随机数源1150也可使用32个随机组件(即X=32),直接产生32个具有足够随机性的随机位值。如此一来,产生随机位值所花费的时间可大幅降低。
在公知技术中,公知随机数产生器的随机数源往往使用大量的随机组件并结合这些随机组件的输出结果以达到较高的随机性,此大量的随机组件会消耗大量的电能并占据大幅电路面积。此外,每一标准逻辑单元都具有某种程度的一致性,因此,将这些具有同构型的随机组件的输出值结合,所产生的结果往往不具有令人满意的随机性。相较之下,本发明提供一种用于随机数产生器的延迟装置及方法,其可产生延迟的输入信号以提供予随机数产生器中的随机组件。因此,相较于公知随机数产生器而言,通过本发明实施例,仅须使用较少随机组件即可达到相同的随机性,进而节省耗电及电路面积,产生随机位值所花费的时间也可大幅降低。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (40)
1.一种用于一随机数产生器中的延迟装置,用来产生一信号以提供予一随机组件,该延迟装置包括有:
一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;
一多任务器,耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值;以及
一延迟选择装置,耦接至该多任务器,用来产生一选择信号,该选择信号控制该多任务器选择输出该延迟信号作为该延迟触发信号。
2.如权利要求1所述的延迟装置,其特征在于,该随机数产生器还包括一随机数产生器控制单元,用来初始化该延迟选择装置,并产生一触发信号以提供予该延迟模块,使得该延迟模块延迟该触发信号以产生该多个延迟信号。
3.如权利要求1所述的延迟装置,其特征在于,该随机组件是一亚稳态型随机组件。
4.如权利要求1所述的延迟装置,其特征在于,该随机组件是一延迟变异型随机组件。
5.如权利要求1所述的延迟装置,其特征在于,该延迟选择装置包括一计数器,以根据该计数器的类型,依序选择该延迟信号作为该延迟触发信号并输出。
6.如权利要求1所述的延迟装置,其特征在于,该延迟选择装置包括一线性反馈移位寄存器,用来依照一虚拟随机的顺序选择该延迟信号作为该延迟触发信号并输出。
7.如权利要求6所述的延迟装置,其特征在于,该线性反馈移位寄存器根据一种子值进行初始化。
8.如权利要求7所述的延迟装置,其特征在于,该种子值是由一随机数产生器控制单元或该随机组件所产生。
9.如权利要求1所述的延迟装置,其特征在于,该随机数产生器还包括一判断单元,用来判断由该随机数产生器所产生的随机位值的数量是否达到需要产生的一预设数量。
10.如权利要求9所述的延迟装置,其特征在于,当该判断单元判断所产生的该随机位值的数量未达到该预设数量时,该延迟选择装置产生另一选择信号,来控制该多任务器选择输出另一延迟信号作为该延迟触发信号,以控制该随机组件产生另一随机位值。
11.一种随机数产生器,包括有:
一随机组件;以及
一延迟装置,用来产生一信号以提供予该随机组件,该延迟装置包括有:
一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;
一多任务器,耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值;以及
一延迟选择装置,耦接至该多任务器,用来产生一选择信号,该选择信号控制该多任务器选择输出该延迟信号作为该延迟触发信号。
12.如权利要求11所述的随机数产生器,其特征在于,该随机数产生器还包括一随机数产生器控制单元,用来初始化该延迟选择装置,并产生一触发信号以提供予该延迟模块,使得该延迟模块延迟该触发信号以产生该多个延迟信号。
13.如权利要求11所述的随机数产生器,其特征在于,该随机组件是一亚稳态型随机组件。
14.如权利要求11所述的随机数产生器,其特征在于,该随机组件是一延迟变异型随机组件。
15.如权利要求11所述的随机数产生器,其特征在于,该延迟选择装置包括一计数器,以根据该计数器的类型,依序选择该延迟信号作为该延迟触发信号并输出。
16.如权利要求11所述的随机数产生器,其特征在于,该延迟选择装置包括一线性反馈移位寄存器,用来依照一虚拟随机的顺序选择该延迟信号作为该延迟触发信号并输出。
17.如权利要求16所述的随机数产生器,其特征在于,该线性反馈移位寄存器根据一种子值进行初始化。
18.如权利要求17所述的随机数产生器,其特征在于,该种子值是由一随机数产生器控制单元或该随机组件所产生。
19.如权利要求11所述的随机数产生器,其特征在于,该随机数产生器还包括一判断单元,用来判断由该随机数产生器所产生的随机位值的数量是否达到需要产生的一预设数量。
20.如权利要求19所述的随机数产生器,其特征在于,当该判断单元判断所产生的该随机位值的数量未达到该预设数量时,该延迟选择装置产生另一选择信号,来控制该多任务器选择输出另一延迟信号作为该延迟触发信号,以控制该随机组件产生另一随机位值。
21.一种随机数产生器,包括有:
多个随机组件;以及
一延迟装置,用来产生一信号以提供予该多个随机组件中每一随机组件,该延迟装置包括有:
一延迟模块,用来产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;
多个多任务器,其中每一多任务器都耦接至该延迟模块,用来输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该多个随机组件中每一随机组件产生一随机位值;以及
一延迟选择装置,耦接至该多个多任务器,用来产生一选择信号,该选择信号控制该多个多任务器中每一多任务器选择输出该延迟信号作为该延迟触发信号。
22.如权利要求21所述的随机数产生器,其特征在于,该随机数产生器还包括一随机数产生器控制单元,用来初始化该延迟选择装置,并产生一触发信号以提供予该延迟模块,使得该延迟模块延迟该触发信号以产生该多个延迟信号。
23.如权利要求21所述的随机数产生器,其特征在于,该多个随机组件中每一随机组件都为一亚稳态型随机组件。
24.如权利要求21所述的随机数产生器,其特征在于,该多个随机组件中每一随机组件都为一延迟变异型随机组件。
25.如权利要求23所述的随机数产生器,其特征在于,该延迟选择装置包括一计数器,以根据该计数器的类型,依序选择该延迟信号作为该延迟触发信号并输出。
26.如权利要求21所述的随机数产生器,其特征在于,该延迟选择装置包括一线性反馈移位寄存器,用来依照一虚拟随机的顺序选择该延迟信号作为该延迟触发信号并输出。
27.如权利要求26所述的随机数产生器,其特征在于,该线性反馈移位寄存器根据一种子值进行初始化。
28.如权利要求27所述的随机数产生器,其特征在于,该种子值是由一随机数产生器控制单元或该随机组件所产生。
29.如权利要求21所述的随机数产生器,其特征在于,该延迟触发信号是由该多个多任务器中每一多任务器依照不同方式选择而得,以控制该多个随机组件中每一随机组件。
30.如权利要求29所述的随机数产生器,其特征在于,该多个多任务器依照不同方式耦接至该延迟模块,使得该多个多任务器中每一多任务器依照不同方式选择该延迟触发信号,以控制该多个随机组件中每一随机组件。
31.如权利要求21所述的随机数产生器,其特征在于,该随机数产生器还包括一判断单元,用来判断由该随机数产生器所产生的随机位值的数量是否达到需要产生的一预设数量。
32.如权利要求31所述的随机数产生器,其特征在于,当该判断单元判断所产生的该随机位值的数量未达到该预设数量时,该延迟选择装置产生另一选择信号,来控制该多个多任务器中每一多任务器选择输出另一延迟信号作为该延迟触发信号,以控制该多个随机组件中每一随机组件产生另一随机位值。
33.一种在一随机数产生器中产生一信号以提供予一随机组件的方法,包括有:
产生多个延迟信号,其中每一延迟信号具有一延迟时间,且该延迟时间不同于其它延迟信号的延迟时间;以及
产生一选择信号,该选择信号选择输出该多个延迟信号中一延迟信号作为一延迟触发信号,以控制该随机组件产生一随机位值。
34.如权利要求33所述的方法,其特征在于,该方法还包括初始化该延迟触发信号的选择,并产生一触发信号,用来产生该多个延迟信号。
35.如权利要求33所述的方法,其特征在于,产生该选择信号,以选择输出该多个延迟信号中该延迟信号作为该延迟触发信号的步骤包括根据一计数器的类型产生该选择信号,以依序选择该延迟信号作为该延迟触发信号并输出。
36.如权利要求33所述的方法,其特征在于,产生该选择信号,以选择输出该多个延迟信号中该延迟信号作为该延迟触发信号的步骤包括利用一线性反馈移位寄存器产生该选择信号,以依照一虚拟随机的顺序选择该延迟信号作为该延迟触发信号并输出。
37.如权利要求36所述的方法,其特征在于,该线性反馈移位寄存器根据一种子值进行初始化。
38.如权利要求37所述的方法,其特征在于,该种子值是由一随机数产生器控制单元或该随机组件所产生。
39.如权利要求33所述的方法,其特征在于,该方法还包括判断由该随机数产生器所产生的随机位值的数量是否达到需要产生的一预设数量。
40.如权利要求39所述的方法,其特征在于,当判断所产生的该随机位值的数量未达到该预设数量时,产生另一选择信号来选择输出另一延迟信号作为该延迟触发信号,以控制该随机组件产生另一随机位值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/742,357 | 2013-01-16 | ||
US13/742,357 US9047152B2 (en) | 2013-01-16 | 2013-01-16 | Delay device, method, and random number generator using the same |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103927147A true CN103927147A (zh) | 2014-07-16 |
Family
ID=51145381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310143391.8A Pending CN103927147A (zh) | 2013-01-16 | 2013-04-23 | 用于随机数产生器的延迟装置及方法及其随机数产生器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9047152B2 (zh) |
CN (1) | CN103927147A (zh) |
TW (1) | TW201430699A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899005A (zh) * | 2015-06-15 | 2015-09-09 | 联想(北京)有限公司 | 一种随机数采集装置及密码芯片 |
CN106374884A (zh) * | 2015-07-22 | 2017-02-01 | 飞思卡尔半导体公司 | 扩频时钟发生器 |
CN108196824A (zh) * | 2018-01-12 | 2018-06-22 | 江苏华存电子科技有限公司 | 一种用以增强随机数产生器随机效果的装置和方法 |
CN110069242A (zh) * | 2019-04-26 | 2019-07-30 | 迅付信息科技有限公司 | 一种随机数发生器及电子券、动态支付码的生成方法 |
TWI706320B (zh) * | 2019-01-29 | 2020-10-01 | 睿寬智能科技有限公司 | 現場可編程閘陣列的真實隨機數產生裝置及方法 |
CN111900958A (zh) * | 2020-06-19 | 2020-11-06 | 上海美仁半导体有限公司 | 随机数产生电路、芯片及家用电器 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9047152B2 (en) * | 2013-01-16 | 2015-06-02 | Skymedi Corporation | Delay device, method, and random number generator using the same |
US9361066B2 (en) * | 2013-04-30 | 2016-06-07 | The United States Of America As Represented By The Secretary Of The Air Force. | Random number generator using ring oscillators with initial delay |
KR101630628B1 (ko) * | 2014-05-16 | 2016-06-15 | 주식회사 이노와이어리스 | 복수 fpga 사이의 동기 유지 장치 |
EP2966836B1 (en) * | 2014-07-08 | 2017-09-06 | Giesecke+Devrient Mobile Security GmbH | Secure Element Causing a Delay for Use in a Network |
KR102652735B1 (ko) | 2016-11-24 | 2024-04-02 | 삼성전자주식회사 | 조절 가능한 메타-스테이블 전압을 이용하는 난수 생성기 및 난수 생성 방법 |
TWI793429B (zh) * | 2019-07-25 | 2023-02-21 | 熵碼科技股份有限公司 | 加密金鑰生成器及傳輸系統 |
TWI765479B (zh) * | 2020-12-17 | 2022-05-21 | 國立中山大學 | 亂數產生器 |
TWI778557B (zh) * | 2021-03-26 | 2022-09-21 | 新唐科技股份有限公司 | 真實亂數產生器及真實亂數產生方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6150863A (en) * | 1998-04-01 | 2000-11-21 | Xilinx, Inc. | User-controlled delay circuit for a programmable logic device |
TW200408922A (en) * | 2001-11-29 | 2004-06-01 | Koninkl Philips Electronics Nv | Method and apparatus for preventing noise influencing a random number generator based on flip-flop meta-stability |
TW200415507A (en) * | 2003-02-11 | 2004-08-16 | Ip First Llc | Random number generator with selectable dual random bit string engines |
US20050004959A1 (en) * | 2003-03-14 | 2005-01-06 | Laszlo Hars | VLSI implementation of metastability-based random number generator using delay ladders |
TW200802079A (en) * | 2006-06-30 | 2008-01-01 | Primax Electronics Ltd | Random number generator and random number generating method |
US7356551B2 (en) * | 2003-03-14 | 2008-04-08 | Nxp B.V. | Method and apparatus of retaining maximum speed of flip-flop metastability based random number generators |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030236802A1 (en) * | 2002-06-20 | 2003-12-25 | Koninklijke Philips Electronics N.V. | Method and apparatus for generating a random number using the meta-stable behavior of latches |
KR101481572B1 (ko) * | 2007-10-19 | 2015-01-26 | 삼성전자주식회사 | 난수 발생 장치 |
US8131789B2 (en) * | 2008-03-28 | 2012-03-06 | Atmel Corporation | True random number generator |
KR20110060033A (ko) * | 2009-11-30 | 2011-06-08 | 박옥희 | 해상 구조물용 커플링 |
US8285767B2 (en) * | 2011-03-07 | 2012-10-09 | Arm Limited | Apparatus and method for generating a random number |
JP6034153B2 (ja) * | 2012-11-21 | 2016-11-30 | 株式会社東芝 | 乱数生成回路 |
US9047152B2 (en) * | 2013-01-16 | 2015-06-02 | Skymedi Corporation | Delay device, method, and random number generator using the same |
-
2013
- 2013-01-16 US US13/742,357 patent/US9047152B2/en active Active - Reinstated
- 2013-04-02 TW TW102111978A patent/TW201430699A/zh unknown
- 2013-04-23 CN CN201310143391.8A patent/CN103927147A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6150863A (en) * | 1998-04-01 | 2000-11-21 | Xilinx, Inc. | User-controlled delay circuit for a programmable logic device |
TW200408922A (en) * | 2001-11-29 | 2004-06-01 | Koninkl Philips Electronics Nv | Method and apparatus for preventing noise influencing a random number generator based on flip-flop meta-stability |
CN1596395A (zh) * | 2001-11-29 | 2005-03-16 | 皇家飞利浦电子股份有限公司 | 防止噪声影响随机数发生器的方法和设备 |
TW200415507A (en) * | 2003-02-11 | 2004-08-16 | Ip First Llc | Random number generator with selectable dual random bit string engines |
TWI240200B (en) * | 2003-02-11 | 2005-09-21 | Ip First Llc | Random number generator with selectable dual random bit string engines |
US20050004959A1 (en) * | 2003-03-14 | 2005-01-06 | Laszlo Hars | VLSI implementation of metastability-based random number generator using delay ladders |
US7325021B2 (en) * | 2003-03-14 | 2008-01-29 | Nxp B.V. | VLSI implementation of metastability-based random number generator using delay ladders |
US7356551B2 (en) * | 2003-03-14 | 2008-04-08 | Nxp B.V. | Method and apparatus of retaining maximum speed of flip-flop metastability based random number generators |
TW200802079A (en) * | 2006-06-30 | 2008-01-01 | Primax Electronics Ltd | Random number generator and random number generating method |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899005A (zh) * | 2015-06-15 | 2015-09-09 | 联想(北京)有限公司 | 一种随机数采集装置及密码芯片 |
CN104899005B (zh) * | 2015-06-15 | 2017-12-12 | 北京联想核芯科技有限公司 | 一种随机数采集装置及密码芯片 |
CN106374884A (zh) * | 2015-07-22 | 2017-02-01 | 飞思卡尔半导体公司 | 扩频时钟发生器 |
CN106374884B (zh) * | 2015-07-22 | 2021-05-07 | 恩智浦美国有限公司 | 扩频时钟发生器 |
CN108196824A (zh) * | 2018-01-12 | 2018-06-22 | 江苏华存电子科技有限公司 | 一种用以增强随机数产生器随机效果的装置和方法 |
WO2019136984A1 (zh) * | 2018-01-12 | 2019-07-18 | 江苏华存电子科技有限公司 | 一种用以增强随机数产生器随机效果的装置和方法 |
TWI706320B (zh) * | 2019-01-29 | 2020-10-01 | 睿寬智能科技有限公司 | 現場可編程閘陣列的真實隨機數產生裝置及方法 |
CN110069242A (zh) * | 2019-04-26 | 2019-07-30 | 迅付信息科技有限公司 | 一种随机数发生器及电子券、动态支付码的生成方法 |
CN111900958A (zh) * | 2020-06-19 | 2020-11-06 | 上海美仁半导体有限公司 | 随机数产生电路、芯片及家用电器 |
Also Published As
Publication number | Publication date |
---|---|
US20140201253A1 (en) | 2014-07-17 |
TW201430699A (zh) | 2014-08-01 |
US9047152B2 (en) | 2015-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103927147A (zh) | 用于随机数产生器的延迟装置及方法及其随机数产生器 | |
US6240432B1 (en) | Enhanced random number generator | |
CN102007470B (zh) | 用于产生随机比特序列的装置和方法 | |
KR101481572B1 (ko) | 난수 발생 장치 | |
US9377997B2 (en) | Random number generator | |
CN102968290B (zh) | 一种异构轻量级的真随机数产生器 | |
CN105247471A (zh) | 用于动态调谐对于随机数生成器的反馈控制的系统和方法 | |
KR20060087431A (ko) | 난수 발생 방법 및 난수 발생기 | |
CN109460681A (zh) | 一种基于延时链的可配置物理不可克隆函数电路 | |
US7315874B2 (en) | Electronic circuit for random number generation | |
CN111258548A (zh) | 一种真随机数发生器 | |
JP2005534249A (ja) | 乱数生成用の切換え式電子回路 | |
Mei et al. | A highly flexible lightweight and high speed true random number generator on FPGA | |
CN109117118B (zh) | 基于环形振荡器结构真随机数发生器的随机数提取方法 | |
CN106878014A (zh) | 随机数密钥产生装置及随机数密钥产生方法 | |
CN208999990U (zh) | 真随机数发生器 | |
CN114357539A (zh) | 一种基于环形振荡器的频率可控puf电路 | |
US7356552B2 (en) | VLSI implementation of a random number generator using a plurality of simple flip-flops | |
Sakare | A power and area efficient architecture of a PRBS generator with multiple outputs | |
US6552588B1 (en) | Method and apparatus to generate pseudo-random non-periodic digital sequences | |
CN103885747B (zh) | 低功耗随机数发生器 | |
TW201421356A (zh) | 具有亂數產生模式的儲存電路 | |
CN102931983B (zh) | 延迟元件及数字控制振荡器 | |
CN115373633A (zh) | 一种真随机数生成器以及真随机数生成方法 | |
CN111124363B (zh) | 一种真随机数生成方法及真随机数发生器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140716 |
|
WD01 | Invention patent application deemed withdrawn after publication |