CN116069295A - 真随机数发生电路、方法及电子设备 - Google Patents
真随机数发生电路、方法及电子设备 Download PDFInfo
- Publication number
- CN116069295A CN116069295A CN202211656823.0A CN202211656823A CN116069295A CN 116069295 A CN116069295 A CN 116069295A CN 202211656823 A CN202211656823 A CN 202211656823A CN 116069295 A CN116069295 A CN 116069295A
- Authority
- CN
- China
- Prior art keywords
- signal
- clock
- random number
- sampling
- 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.)
- Granted
Links
Images
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/588—Random 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)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本申请实施例提供一种真随机数发生电路、方法及电子设备,所述电路包括:数据信号生成模块,用于接收第一时钟信号,并增加所述第一时钟信号的时钟抖动以获得数据信号;采样信号生成模块,用于接收第二时钟信号,并增加所述第二时钟信号的时钟抖动以获得采样信号;收集模块,用于接收所述数据信号和所述采样信号,根据所述采样信号对所述数据信号进行采样,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。本申请实施例提供的真随机数发生电路能够提高输出序列的随机性。
Description
技术领域
本发明实施例涉及电子技术领域,具体涉及一种真随机数发生电路、方法及电子设备。
背景技术
真随机数(true random number)是一种靠着纯物理现象生成的随机数,有着无规律性以及难以复现的优点。不同于计算机生成的伪随机数,真随机数是完全不可预测的。因此,真随机数在统计学、信息安全等领域有着广泛的应用。在芯片或系统设计中,常用于统计、加密、信息熵相关的算法实现等。在这些领域中,不仅要求数据序列分布均匀、彼此独立,而且要求其具有不可预测性,能够抵御针对随机性的攻击。
常见的真随机数发生电路的实现方法有随机噪声源直接放大法、基于振荡器的随机数发生器和基于亚稳态的随机数发生器等。其中,基于亚稳态的随机数发生电路是利用数字电路中的亚稳态去产生真随机数,其所产生的随机数随机性高,但亚稳态的产生和使用并不容易,电路很容易朝同一个方向脱离亚稳态,导致输出的序列带有周期性而缺乏随机度。因此,如何提高电路输出序列的随机性成为本领域技术人员亟需解决的技术问题。
发明内容
有鉴于此,本申请实施例提供一种真随机数发生电路、方法及电子设备,能够稳定生成真随机数序列。
为实现上述目的,本申请实施例提供如下技术方案。
第一方面,本发明实施例提供一种真随机数发生电路,包括:
数据信号生成模块,用于接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;
采样信号生成模块,用于接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;
收集模块,用于接收所述数据信号和所述采样信号,根据所述采样信号对所述数据信号进行采样,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。
可选的,所述收集模块为D触发器,所述D触发器包括:数据端与时钟端,其中所述数据端与所述数据信号生成模块连接,所述时钟端与所述采样信号生成模块连接。
可选的,所述数据信号生成模块包括:第一振荡电路,用于生成第一振荡信号,所述第一振荡信号的频率与所述第一时钟信号的频率之比大于2;第一叠加电路,用于接收所述第一时钟信号与所述第一振荡信号,并将所述第一振荡信号的频率信息作为时钟抖动叠加到所述第一时钟信号。
可选的,所述第一叠加电路为采样电路,根据所述第一时钟信号对所述第一振荡信号进行采样,将采样输出作为所述数据信号,或所述第一叠加电路为混频电路,根据所述第一时钟信号对所述第一振荡信号进行混频,将混频输出作为所述数据信号。
可选的,所述采样信号生成模块包括:第二振荡电路,用于生成第二振荡信号,所述第二振荡信号与所述第二时钟信号的频率之比大于2;第二叠加电路,用于接收所述第二时钟信号与所述第二振荡信号,并将所述第二振荡信号的频率信息作为时钟抖动叠加到所述第二时钟信号。
可选的,所述第二叠加电路为采样电路,根据所述第二时钟信号对所述第二振荡信号进行采样,将采样输出作为所述采样信号;或所述第二叠加电路为混频电路,根据所述第二时钟信号对所述第二振荡信号进行混频,将混频输出作为所述采样信号。
可选的,所述第一振荡电路、所述第二振荡电路包括振荡器。
可选的,所述振荡器为环形振荡器、张弛振荡器或压控振荡器。
可选的,所述第一振荡信号与所述第二振荡信号的频率之比为非整数。
第二方面,本申请实施例还提供一种真随机数发生方法,包括:
接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;
接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;
根据所述采样信号对所述数据信号进行采样,在所述数据信号和所述采样信号满足亚稳态出现条件时,输出真随机数序列。
第三方面,本申请实施例还提供一种电子设备,包括前述的真随机数发生电路。
可以看出,本发明实施例提供的真随机数发生电路、方法及电子设备通过增加输入到收集模块的数据信号和采样信号的时钟抖动,使得收集模块偏离亚稳态区间的方向是随机的,从而保证输出的序列的随机性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为一种真随机数发生电路的结构示意图;
图2为图1所示的真随机数发生电路处于亚稳态时的信号时序图;
图3为图1所示的真随机数发生电路朝同一个方向持续性脱离亚稳态时的信号时序图;
图4为本发明一实施例提供的真随机数发生电路的结构示意图;
图5为本发明又一实施例提供的真随机数发生电路的结构示意图;
图6为本发明又一实施例提供的真随机数发生电路的结构示意图;
图7为图6所示的真随机数发生电路的信号时序图;
图8为本发明又一实施例提供的真随机数发生电路的结构示意图;
图9为本发明又一实施例提供的真随机数发生电路的结构示意图;
图10为本发明一实施例提供的真随机数发生方法的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如背景技术所述,现有的基于亚稳态的真随机数发生电路存在着电路容易朝同一个方向脱离亚稳态的缺陷,从而导致输出的序列缺乏随机度。
下面对现有的真随机数发生电路进行介绍。
真随机数发生电路,或称之为真随机数发生器(true random number generator,TRNG)的基本模型为三个部分,分别是熵源、收集部分和后处理部分。熵源为物理世界中的某些随机信号,收集部分用于“抓取”熵源产生的随机信号,后处理部分则通过某些处理方法输出随机序列。从硬件电路实现角度来看,真随机数发生器通常包括:用于将随机物理现象的某些方面转换为电信号的转换器(传感器)、用于将随机波动的幅度增加到可测量的水平的放大电路、以及用于将输出转换为数字信号的模数转换器。通过持续采样随机变化的信号,获得一系列随机数。
参考图1,图中示出了一种基于亚稳态的真随机数发生电路。示例中的真随机数发生电路包括:高频时钟源、低频时钟源以及D触发器(D-flip-flop,DFF)。
其中,高频时钟源和低频时钟源作为熵源,D触发器作为收集电路,高频时钟源输出的时钟信号输入到D触发器的数据端(D端),低频时钟源输出的时钟信号输入到D触发器的时钟端(CLK端)。
其中,高频时钟源和低频时钟源的输出频率满足固定比例,当高频时钟源和低频时钟源输出的波形出现时钟边沿对齐的情形时,D触发器在时钟采样时进入亚稳态,输出随机的码流。参考图2,图中示出了当高频时钟源和低频时钟源的频率之比为7:2时,D触发器输入信号的时序。其中,data信号为D触发器的数据端输入信号,clock信号为D触发器的时钟端输入信号。由于寄存器有建立时间和保持时间的限制,若clock信号的采样边沿(默认为上升沿,下降沿同理)和data信号的变化边沿对齐,或虽然没有严格对齐但恰好违反了寄存器建立时间和保持时间的要求,则D触发器会进入亚稳态,其输出端(Q端)的输出即为随机值。然而,在实际情况中,上述真随机数发生电路并不能总是保持亚稳态,而是很容易朝同一个方向脱离亚稳态,导致输出的序列缺乏随机度。
发明人研究发现,导致上述情况发生是因为D触发器在亚稳态采集数据时,受电路噪声、抖动、振荡器相位、PVT(process,voltage,temperature,即工艺、电压、温度这三个直接影响集成电路中晶体管性能的物理量)等因素偏差影响,D触发器时钟端和数据端输入的两个方波边沿难以完全对齐。
如图3所示,实际情况中,由于噪声等非理想因素的存在,相位噪声、起振时间、时钟抖动的差异会使得输入到D触发器的数据端和时钟端的变化边沿错开。由于数据端和时钟端输入的两个方波的频率比相对固定,而用于产生方波的振荡器的抖动输出有限(典型情况下环振输出信号的抖动可能小于5%),进而D触发器的时钟端对数据端的采样点将会持续偏离数据端信号边沿,使得D触发器朝着同一个方向持续性脱离亚稳态,导致输出出现连续的重叠子序列例如101010,从而使采集到的序列缺乏随机性。
针对上述问题,本公开实施例的一个方面,提供了一种真随机数发生电路,所述电路包括:数据信号生成模块,用于接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;采样信号生成模块,用于接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;收集模块,用于接收所述数据信号和所述采样信号,根据所述采样信号对所述数据信号进行采样,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。
针对上述问题,本公开实施例的另一个方面,提供了一种真随机数发生方法,所述方法包括:接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;根据所述采样信号对所述数据信号进行采样,在所述数据信号和所述采样信号满足亚稳态出现条件时,输出真随机数序列。
可以看出,本发明实施例提供的真随机数发生电路、方法通过增加输入到收集模块的数据信号和采样信号的时钟抖动,使得收集模块偏离亚稳态区间的方向是随机的,从而保证输出的序列的随机性。
为使本领域技术人员更好的理解和实施,以下对本发明实施例的构思、原理及优点等,通过具体实施例并结合具体应用场景和附图,进行详细描述。
下面将对本发明实施例提供的真随机数发生电路进行详细介绍。
参考图4,该图为本发明一个实施例提供的真随机数发生电路的结构示意图。所述真随机数发生电路包括:数据信号生成模块110、采样信号生成模块130、收集模块150。其中,数据信号生成模块110用于接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;采样信号生成模块130用于接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号;收集模块150用于接收所述数据信号和所述采样信号,根据所述采样信号对所述数据信号进行采样,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。
所述第一时钟信号与所述第二时钟信号可以分别由相应的时钟源产生,所述时钟源可以为各种类型的振荡器,例如环形振荡器、张弛振荡器、压控振荡器等。作为一种示例,参考图6,用于产生第一时钟信号、第二时钟信号的时钟源均为环形振荡器,所述环形振荡器由奇数个反相器级联形成。
所述第一时钟信号的频率大于所述第二时钟信号的频率,相应的,根据所述第一时钟信号生成的数据信号的频率大于根据所述第二时钟信号生成的采样信号的频率。在一些实施例中,所述第一时钟信号与第二时钟信号的频率之比相对固定。作为一种示例,所述第一时钟信号与第二时钟信号的频率之比为(2M+1):2,其中,M为正整数。
本发明一些实施例中,所述数据信号生成模块110的输入端与第一时钟源连接,用于接收第一时钟源输出的第一时钟信号。所述数据信号生成模块110的输出端与所述收集模块150的数据端连接,所述第一时钟信号经过所述数据信号生成模块110处理后生成数据信号,该数据信号被输出到所述收集模块150的数据端。所述采样信号生成模块130的输入端与第二时钟源连接,用于接收第二时钟源输出的第二时钟信号。所述采样信号生成模块130的输出端与所述收集模块150的时钟端连接,所述第二时钟信号经过所述采样信号生成模块130处理后生成采样信号,该采样信号被输出到所述收集模块150的时钟端。
在理想情况下,一个频率固定的时钟信号的翻转周期应该是固定的,例如频率为1MHz的时钟信号其周期应该恰好是1us,每500ns有一个跳变沿。然而实际情况中信号周期的长度总会有一定的变化,从而导致下一个沿的到来时间不确定,这种不确定就是抖动(jitter)。抖动是对信号时域变化的测量结果,它从本质上描述了信号周期距离其理想值偏离了多少。时钟抖动(clock jitter)通常被定义为信号边沿到来的实际时刻与理想时刻的偏差。
所述数据信号生成模块110用于增加所述第一时钟信号的时钟抖动,所述采样信号生成模块130用于增加所述第二时钟信号的时钟抖动。
参考图5,所述数据信号生成模块110可以进一步包括:第一振荡电路111和第一叠加电路113。其中,所述第一振荡电路111用于生成第一振荡信号,所述第一振荡信号的频率与所述第一时钟信号的频率之比大于2。所述第一叠加电路用于接收所述第一时钟信号与所述第一振荡信号,并将所述第一振荡信号的频率信息作为时钟抖动叠加到所述第一时钟信号。
所述采样信号生成模块130可以进一步包括:第二振荡电路131和第二叠加电路133。其中,所述第二振荡电路131用于生成第二振荡信号,所述第二振荡信号与所述第二时钟信号的频率之比大于2。所述第二叠加电路133用于接收所述第二时钟信号与所述第二振荡信号,并将所述第二振荡信号的频率信息作为时钟抖动叠加到所述第二时钟信号。
在一些实施例中,所述第一振荡电路111、所述第二振荡电路131可以为各种类型的振荡器,例如环形振荡器、张弛振荡器、压控振荡器等。作为一种示例,所述第一振荡电路111、所述第二振荡电路131均为环形振荡器,所述环形振荡器由奇数个反相器级联形成。
在一些实施例中,所述第一振荡电路111、所述第二振荡电路131各自还可以进一步包括相应的频率配置模块,所述第一振荡电路111的频率配置模块用于控制所述第一振荡电路111所输出的第一振荡信号的频率,所述第二振荡电路131的频率配置模块用于控制所述第二振荡电路131所输出的第二振荡信号的频率。所述真随机数发生电路的时钟抖动程度由所述第一振荡电路111、所述第二振荡电路131的频率控制,通过所述频率配置模块可以根据具体需求对所述真随机数发生电路的时钟抖动程度进行调整,通过适当的配置,所述真随机数发生电路时钟抖动可以达到原时钟周期的一半。在一些实施例中,所述控制模块设置在所述真随机数发生电路的外部,以进一步方便调整电路的时钟抖动程度,增加电路的灵活性。
在一些实施例中,可以通过对时钟信号进行采样的方式将振荡信号的频率信息叠加到时钟信号上,从而增加时钟信号的时钟抖动。作为一种示例,所述第一叠加电路113为采样电路,该采样电路用于根据所述第一时钟信号对所述第一振荡信号进行采样,将采样输出作为所述数据信号。
请参考图6,图中第一时钟源输出的第一时钟信号被输入到D触发器FF1的数据端,第一振荡电路111输出的第一振荡信号被输入到D触发器FF1的时钟端,D触发器FF1根据所述第一时钟信号对所述第一振荡信号进行采样,将采样输出作为所述数据信号。类似的,第二时钟源输出的第二时钟信号被输入到D触发器FF2的数据端,第二振荡电路131输出的第二振荡信号被输入到D触发器FF2的时钟端,D触发器FF2根据所述第二时钟信号对所述第二振荡信号进行采样,将采样输出作为所述采样信号。根据奈奎斯特采样原理,第一振荡信号的频率大于第一时钟信号频率的2倍,第二振荡信号的频率大于第二时钟信号频率的2倍,且第一振荡信号和第二振荡信号的频率之比为非整数。
本实施例中,由于输入到D触发器FF1的时钟端和数据端的两个信号并不同源,且输入到时钟端的信号的频率大于输入到数据端的信号的频率的2倍,因此在第一时钟信号的正半周和负半周至少有一个采样点,且采样位置相对于边沿并不固定,这样就间接实现了增大时钟抖动的目的。图7为图6所示电路的信号时序图,可以看出,第一时钟信号被D触发器FF1采样后生成的数据信号的时钟抖动明显增加,且时钟抖动的方向不固定。若数据信号中两个不同周期的时间长度分别为Ti和Ti+1,则数据信号的时钟抖动可以表示为tjitter1=|Ti+1-Ti|。
同样的,由于输入到D触发器FF2的时钟端和数据端的两个信号并不同源,且输入到时钟端的信号的频率大于输入到数据端的信号的频率的2倍,因此在第二时钟信号的正半周和负半周至少有一个采样点,且采样位置相对于边沿并不固定,这样就间接实现了增大时钟抖动的目的。第二时钟信号被D触发器FF2采样后生成的采样信号的时钟抖动也将明显增加,且时钟抖动的方向不固定。若采样信号中两个不同周期的时间长度分别为Tj和Tj+1,则采样信号的时钟抖动可以表示为tjitter2=|Tj+1-Tj|。
所述收集模块150在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。所述亚稳态是指所述收集模块150无法在某个规定时间段内达到一个可确认的状态。当收集模块150进入亚稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在这期间,收集模块150会输出一些随机的电平。所述收集模块150可以采用诸如D触发器、锁存器等时序逻辑电路来实现。
本实施例中,所述收集模块150为D触发器FF,该D触发器FF的数据端与D触发器FF1的输出端连接,用于接收D触发器FF1生成的数据信号,D触发器FF的时钟端与D触发器FF2的输出端连接,用于接收D触发器FF2生成的采样信号。
作为一种示例,如图6所示,D触发器FF1与收集模块150之间设置有多路选择器,D触发器FF1输出的数据信号经由该多路选择器连接至所述收集模块150。D触发器FF2与收集模块150之间也设置有多路选择器,D触发器FF2输出的采样信号经由该多路选择器连接至所述收集模块150。当多路选择器的使能端EN输入为0时,第一时钟源(或第二时钟源)被选通,此时电路中信号具有较小的时钟抖动,整个电路容易朝着同一个方向持续性脱离亚稳态;当多路选择器的使能端EN输入为1时,D触发器FF1(或D触发器FF2)被选通,D触发器FF1和D触发器FF2的输出将分别作为收集模块150的数据端输入和时钟端输入,此时收集模块150在采样时,既可能进入亚稳态,也可能进入稳态,但进入稳态的方向是随机的,既有可能在时钟边沿之前,也有可能在时钟边沿之后,从而有效规避了收集模块150朝着同一个方向持续性脱离亚稳态的问题。
在一些实施例中,可以通过对时钟信号进行混频的方式将振荡信号的频率信息叠加到时钟信号上,从而增加时钟信号的时钟抖动。作为一种示例,所述第一叠加电路113为混频电路,该混频电路用于根据所述第一时钟信号对所述第一振荡信号进行混频,将混频输出作为所述数据信号。
请参考图8,图中第一时钟源输出的第一时钟信号被输入到混频器M1的第一输入端,第一振荡电路111输出的第一振荡信号被输入到混频器M1的第二输入端,混频器M1根据所述第一时钟信号对所述第一振荡信号进行混频,将混频输出作为所述数据信号。类似的,第二时钟源输出的第二时钟信号被输入到混频器M2的第一输入端,第二振荡电路131输出的第二振荡信号被输入到混频器M2的第二输入端,混频器M2根据所述第二时钟信号对所述第二振荡信号进行混频,将混频输出作为所述采样信号。
请参考图9,图中第一时钟源输出的第一时钟信号被输入到加法器A1的第一输入端,第一振荡电路111输出的第一振荡信号被输入到加法器A1的第二输入端,加法器A1根据所述第一时钟信号对所述第一振荡信号进行处理,将处理后的输出作为所述数据信号。类似的,第二时钟源输出的第二时钟信号被输入到加法器A2的第一输入端,第二振荡电路131输出的第二振荡信号被输入到加法器A2的第二输入端,加法器A2根据所述第二时钟信号对所述第二振荡信号进行处理,将处理后的输出作为所述采样信号。
下面对本发明实施例提供的真随机数发生方法进行介绍。
参考图10,本发明实施例所提供的真随机数发生方法包括:
步骤S210,接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号。
其中,所述第一时钟信号可以由时钟源产生,所述时钟源可以为各种类型的振荡器,例如环形振荡器、张弛振荡器、压控振荡器等。
在一些实施例中,所述数据信号的生成方法包括:获取第一振荡信号,将所述第一振荡信号的频率信息作为时钟抖动叠加到所述第一时钟信号,其中,所述第一振荡信号的频率与所述第一时钟信号的频率之比大于2;以叠加后的所述第一时钟信号作为所述数据信号。
在一些实施例中,所述数据信号的生成方法包括:获取第一振荡信号,根据所述第一时钟信号对所述第一振荡信号进行采样,将采样输出作为所述数据信号。
在一些实施例中,所述数据信号的生成方法包括:获取第一振荡信号,根据所述第一时钟信号对所述第一振荡信号进行混频,将混频输出作为所述数据信号。
步骤S230,接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数。
其中,所述第二时钟信号可以由时钟源产生,所述时钟源可以为各种类型的振荡器,例如环形振荡器、张弛振荡器、压控振荡器等。
在一些实施例中,所述采样信号的生成方法包括:获取第一振荡信号,将所述第一振荡信号的频率信息作为时钟抖动叠加到所述第一时钟信号,其中,所述第一振荡信号的频率与所述第一时钟信号的频率之比大于2;以叠加后的所述第二时钟信号作为所述采样信号。
在一些实施例中,所述采样信号的生成方法包括:获取第二振荡信号,根据所述第二时钟信号对所述第二振荡信号进行采样,将采样输出作为所述采样信号。
在一些实施例中,所述采样信号的生成方法包括:获取第二振荡信号,根据所述第二时钟信号对所述第二振荡信号进行混频,将混频输出作为所述采样信号。
步骤S250,根据所述采样信号对所述数据信号进行采样,在所述数据信号和所述采样信号满足亚稳态出现条件时,输出真随机数序列。
在一些实施例中,所述采样信号和所述数据信号被送入收集模块,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。
下面对本发明实施例提供的电子设备进行介绍。
在本申请实施例中,还提供了一种电子设备,该电子设备可以包括本申请实施例中所提供的真随机数发生电路。
作为一种示例,本申请实施例中的电子设备可以为信息安全系统中的电子设备,比如加密服务器、具有数据加密功能的终端设备(包括但不限于手机、笔记本电脑、台式机、平板电脑等)等。
可以看出,本发明实施例提供的真随机数发生电路、方法及电子设备通过增加输入到收集模块的数据信号和采样信号的时钟抖动,使得收集模块偏离亚稳态区间的方向是随机的,从而保证输出的序列的随机性。
上文描述了本发明实施例提供的多个实施例方案,各实施例方案介绍的各可选方式可在不冲突的情况下相互结合、交叉引用,从而延伸出多种可能的实施例方案,这些均可认为是本发明实施例披露、公开的实施例方案。
虽然本申请实施例披露如上,但本申请并非限定于此。任何本领域技术人员,在不脱离本申请的精神和范围内,均可作各种更动与修改,因此本申请的保护范围应当以权利要求所限定的范围为准。
Claims (11)
1.一种真随机数发生电路,其特征在于,包括:
数据信号生成模块,用于接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;
采样信号生成模块,用于接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;
收集模块,用于接收所述数据信号和所述采样信号,根据所述采样信号对所述数据信号进行采样,所述收集模块在所述数据信号和所述采样信号满足所述收集模块的亚稳态出现条件时,所述收集模块处于亚稳态状态,输出真随机数序列。
2.根据权利要求1所述的真随机数发生电路,其特征在于,所述收集模块为D触发器,所述D触发器包括:数据端与时钟端,其中所述数据端与所述数据信号生成模块连接,所述时钟端与所述采样信号生成模块连接。
3.根据权利要求1所述的真随机数发生电路,其特征在于,所述数据信号生成模块包括:
第一振荡电路,用于生成第一振荡信号,所述第一振荡信号的频率与所述第一时钟信号的频率之比大于2;
第一叠加电路,用于接收所述第一时钟信号与所述第一振荡信号,并将所述第一振荡信号的频率信息作为时钟抖动叠加到所述第一时钟信号。
4.根据权利要求3所述的真随机数发生电路,其特征在于,
所述第一叠加电路为采样电路,根据所述第一时钟信号对所述第一振荡信号进行采样,将采样输出作为所述数据信号,或
所述第一叠加电路为混频电路,根据所述第一时钟信号对所述第一振荡信号进行混频,将混频输出作为所述数据信号。
5.根据权利要求1或3所述的真随机数发生电路,其特征在于,所述采样信号生成模块包括:
第二振荡电路,用于生成第二振荡信号,所述第二振荡信号与所述第二时钟信号的频率之比大于2;
第二叠加电路,用于接收所述第二时钟信号与所述第二振荡信号,并将所述第二振荡信号的频率信息作为时钟抖动叠加到所述第二时钟信号。
6.根据权利要求5所述的真随机数发生电路,其特征在于,
所述第二叠加电路为采样电路,根据所述第二时钟信号对所述第二振荡信号进行采样,将采样输出作为所述采样信号;或
所述第二叠加电路为混频电路,根据所述第二时钟信号对所述第二振荡信号进行混频,将混频输出作为所述采样信号。
7.根据权利要求5所述的真随机数发生电路,其特征在于,所述第一振荡电路、所述第二振荡电路包括振荡器。
8.根据权利要求7所述的真随机数发生电路,其特征在于,所述振荡器为环形振荡器、张弛振荡器或压控振荡器。
9.根据权利要求5所述的真随机数发生电路,其特征在于,所述第一振荡信号与所述第二振荡信号的频率之比为非整数。
10.一种真随机数发生方法,其特征在于,包括:
接收第一时钟信号,并增加所述第一时钟信号的时钟抖动,以获得数据信号;
接收第二时钟信号,并增加所述第二时钟信号的时钟抖动,以获得采样信号,其中,所述第二时钟信号与所述第一时钟信号的频率之比为(2M+1):2,M为正整数;
根据所述采样信号对所述数据信号进行采样,在所述数据信号和所述采样信号满足亚稳态出现条件时,输出真随机数序列。
11.一种电子设备,其特征在于,包括如权利要求1-9任一项所述的真随机数发生电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211656823.0A CN116069295B (zh) | 2022-12-22 | 2022-12-22 | 真随机数发生电路、方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211656823.0A CN116069295B (zh) | 2022-12-22 | 2022-12-22 | 真随机数发生电路、方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116069295A true CN116069295A (zh) | 2023-05-05 |
CN116069295B CN116069295B (zh) | 2023-10-20 |
Family
ID=86169210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211656823.0A Active CN116069295B (zh) | 2022-12-22 | 2022-12-22 | 真随机数发生电路、方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116069295B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005044090A (ja) * | 2003-07-28 | 2005-02-17 | Renesas Technology Corp | 乱数発生装置 |
CN102662625A (zh) * | 2012-04-06 | 2012-09-12 | 国网电力科学研究院 | 一种真随机数发生器及其实现方法 |
CN103150138A (zh) * | 2013-03-29 | 2013-06-12 | 成都三零嘉微电子有限公司 | 一种基于数字电路的真随机数发生器 |
EP3106978A1 (en) * | 2015-06-17 | 2016-12-21 | Nxp B.V. | Digital true random number generator based on s-boxes |
CN106775583A (zh) * | 2016-11-18 | 2017-05-31 | 杭州电子科技大学 | 一种高速真随机数的产生方法 |
CN109830888A (zh) * | 2019-01-24 | 2019-05-31 | 西南大学 | 一种基于硅基微腔混沌产生物理随机数装置 |
CN110413257A (zh) * | 2019-07-30 | 2019-11-05 | 北京智芯微电子科技有限公司 | 随机数产生电路 |
CN111338603A (zh) * | 2020-05-19 | 2020-06-26 | 深圳市汇顶科技股份有限公司 | 真随机数发生器及电子设备 |
US20200278839A1 (en) * | 2019-03-01 | 2020-09-03 | Goke Taiwan Research Laboratory Ltd. | True Random Number Generator of a Field Programmable Gate Array |
CN114968179A (zh) * | 2022-05-23 | 2022-08-30 | 西安水木芯邦半导体设计有限公司 | 一种基于时钟抖动和亚稳态的真随机数产生电路 |
US20220311443A1 (en) * | 2021-03-26 | 2022-09-29 | Nuvoton Technology Corporation | Random-number generator and random-number generating method |
-
2022
- 2022-12-22 CN CN202211656823.0A patent/CN116069295B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005044090A (ja) * | 2003-07-28 | 2005-02-17 | Renesas Technology Corp | 乱数発生装置 |
CN102662625A (zh) * | 2012-04-06 | 2012-09-12 | 国网电力科学研究院 | 一种真随机数发生器及其实现方法 |
CN103150138A (zh) * | 2013-03-29 | 2013-06-12 | 成都三零嘉微电子有限公司 | 一种基于数字电路的真随机数发生器 |
EP3106978A1 (en) * | 2015-06-17 | 2016-12-21 | Nxp B.V. | Digital true random number generator based on s-boxes |
CN106775583A (zh) * | 2016-11-18 | 2017-05-31 | 杭州电子科技大学 | 一种高速真随机数的产生方法 |
CN109830888A (zh) * | 2019-01-24 | 2019-05-31 | 西南大学 | 一种基于硅基微腔混沌产生物理随机数装置 |
US20200278839A1 (en) * | 2019-03-01 | 2020-09-03 | Goke Taiwan Research Laboratory Ltd. | True Random Number Generator of a Field Programmable Gate Array |
CN110413257A (zh) * | 2019-07-30 | 2019-11-05 | 北京智芯微电子科技有限公司 | 随机数产生电路 |
CN111338603A (zh) * | 2020-05-19 | 2020-06-26 | 深圳市汇顶科技股份有限公司 | 真随机数发生器及电子设备 |
US20220311443A1 (en) * | 2021-03-26 | 2022-09-29 | Nuvoton Technology Corporation | Random-number generator and random-number generating method |
CN114968179A (zh) * | 2022-05-23 | 2022-08-30 | 西安水木芯邦半导体设计有限公司 | 一种基于时钟抖动和亚稳态的真随机数产生电路 |
Non-Patent Citations (3)
Title |
---|
张鸿飞;王坚;罗春丽;崔珂;姚志明;梁昊;金革;: "基于抖动的高速真随机数发生器的设计和实现", 核技术, no. 07 * |
邓焕;金荣华;陈俊;谢磊;曾晓洋;郭亚炜;: "基于振荡器的高性能真随机数发生器", 固体电子学研究与进展, no. 03 * |
郑小岳;沈海斌;: "基于振荡采样的真随机数发生器IP设计", 江南大学学报(自然科学版), no. 05 * |
Also Published As
Publication number | Publication date |
---|---|
CN116069295B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7720895B2 (en) | Random number generator and method for generating random numbers | |
US8583712B2 (en) | Multi-bit sampling of oscillator jitter for random number generation | |
US8285767B2 (en) | Apparatus and method for generating a random number | |
US10929102B2 (en) | True random number generator | |
Ergün et al. | Truly random number generators based on non‐autonomous continuous‐time chaos | |
Mureddu et al. | Experimental study of locking phenomena on oscillating rings implemented in logic devices | |
CN109117118B (zh) | 基于环形振荡器结构真随机数发生器的随机数提取方法 | |
Cao et al. | An energy-efficient true random number generator based on current starved ring oscillators | |
Fujieda | On the feasibility of TERO-based true random number generator on Xilinx FPGAs | |
US11777541B2 (en) | Digital fingerprint generation circuit, generation method and electronic device | |
Bharat Meitei et al. | FPGA implementation of true random number generator architecture using all digital phase-locked loop | |
CN116069295B (zh) | 真随机数发生电路、方法及电子设备 | |
CN111124363B (zh) | 一种真随机数生成方法及真随机数发生器 | |
Zhang et al. | A High Throughput STR-based TRNG by Jitter Precise Quantization Superposing | |
US20150193208A1 (en) | Random Number Generator Using Ring Oscillators With Initial Delay | |
CN114115807A (zh) | 随机数生成器及随机数生成方法 | |
US6998882B1 (en) | Frequency divider with 50% duty cycle | |
Simka et al. | Model of a true random number generator aimed at cryptographic applications | |
WO2021142830A1 (zh) | 随机数生成电路、随机数生成方法和电子设备 | |
CN111782179B (zh) | 一种真随机数发生器 | |
JPH07283697A (ja) | 電圧制御発振回路 | |
Fujieda et al. | Enhanced use of mixed-mode clock manager for coherent sampling-based true random number generator | |
Maffezzoni et al. | Exploiting oscillator arrays as randomness sources for cryptographic applications | |
KR20120101836A (ko) | 난수 발생 장치 | |
Luo et al. | High speed true random number generator controlled by logistic map |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |