CN111969981B - 一种时钟产生电路和随机数产生电路 - Google Patents
一种时钟产生电路和随机数产生电路 Download PDFInfo
- Publication number
- CN111969981B CN111969981B CN202011128048.2A CN202011128048A CN111969981B CN 111969981 B CN111969981 B CN 111969981B CN 202011128048 A CN202011128048 A CN 202011128048A CN 111969981 B CN111969981 B CN 111969981B
- Authority
- CN
- China
- Prior art keywords
- signal
- chain
- inverters
- random
- clock
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
- H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
- H03K3/03—Astable circuits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION, OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
Abstract
一种时钟产生电路,包括第一反相器链、第二反相器链、第一随机信号产生电路以及第一控制模块。第一反相器链包括串联连接的多个第一反相器,其用于根据第一配置信号选择所述第一反相器的个数以输出第一时钟信号;第二反相器链包括串联连接的多个第二反相器,其用于根据第二配置信号选择第二反相器的个数以输出第二时钟信号;第一随机信号产生电路用于对第一时钟信号和第二时钟信号进行组合来产生第一随机信号;第一控制模块用于根据第一随机信号生成第一配置信号或者第二配置信号,以变更第一反相器链中的第一反相器的个数或者变更第二反相器链中的第二反相器的个数。本发明还提供了一种随机数产生电路。
Description
技术领域
本发明涉及电子电路技术领域,尤其涉及一种时钟产生电路和随机数产生电路。
背景技术
在安全芯片中,为了防止加解密算法被攻击手段破解,需要使用随机时钟作为加解密逻辑电路的工作时钟。现有方案需要外接时钟信号,对时钟做加扰处理之后输出。由于外接输入的时钟信号直接暴露在安全芯片的引脚上,时钟信号很容易被攻击者获取并利用。
发明内容
基于上述问题,本发明实施例提供了一种时钟产生电路,用于在安全芯片内部产生随机时钟信号,从而解决现有安全芯片的时钟信号安全性不高的问题。
一种时钟产生电路,包括第一反相器链、第二反相器链、第一随机信号产生电路以及第一控制模块;
所述第一反相器链包括串联连接的多个第一反相器,所述第一反相器链用于根据第一配置信号选择所述第一反相器的个数以输出第一时钟信号;
所述第二反相器链包括串联连接的多个第二反相器,所述第二反相器链用于根据第二配置信号选择所述第二反相器的个数以输出第二时钟信号;
所述第一随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第一随机信号;
所述第一控制模块用于根据所述第一随机信号生成所述第一配置信号或者所述第二配置信号,以变更所述第一反相器链中的所述第一反相器的个数或者变更所述第二反相器链中的所述第二反相器的个数。
可选地,所述时钟产生电路还包括第二随机信号产生电路和第二控制模块,所述第二随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第二随机信号,所述第一控制模块用于根据所述第一随机信号生成所述第二配置信号,以变更所述第二反相器链中的所述第二反相器的个数;所述第二控制模块用于根据所述第二随机信号生成所述第一配置信号,以变更所述第一反相器链中的所述第一反相器的个数。
可选地,所述第一随机信号产生电路包括第一计数器和第一D触发器,所述第一时钟信号连接到所述第一D触发器的时钟信号输入端,所述第二时钟信号连接到所述第一计数器的时钟信号输入端,所述第一计数器的输出端连接到所述第一D触发器的数据输入端,所述第一D触发器的输出端产生所述第一随机信号。
可选地,所述第一随机信号产生电路还包括第二D触发器,所述第一时钟信号连接到所述第二D触发器的时钟信号输入端,所述第一D触发器的输出端连接到所述第二D触发器的数据输入端,所述第二D触发器的输出端产生所述第一随机信号。
可选地,所述第二随机信号产生电路包括第二计数器和第三D触发器,所述第二时钟信号连接到所述第三D触发器的时钟信号输入端,所述第一时钟信号连接到所述第二计数器的时钟信号输入端,所述第二计数器的输出端连接到所述第三D触发器的数据输入端,所述第三D触发器的输出端产生所述第二随机信号。
可选地,所述第二随机信号产生电路还包括第四D触发器,所述第二时钟信号连接到所述第四D触发器的时钟信号输入端,所述第三D触发器的输出端连接到所述第四D触发器的数据输入端,所述第四D触发器的输出端产生所述第二随机信号。
可选地,所述第一控制模块生成的所述第二配置信号还连接到所述第二控制模块的输入端。
可选地,所述第二控制模块生成的所述第一配置信号还连接到所述第一控制模块的输入端。
可选地,所述第一反相器链包括第一固定链和第一可变链,所述第一固定链的输出端连接到所述第一可变链的输入端,所述第一可变链的输出端连接到所述第一固定链的输入端,所述第一固定链和所述第一可变链共同组成一个环形振荡器,所述第一可变链中第一反相器的个数根据所述第一配置信号不同而产生变化。
可选地,所述第一固定链由奇数个第一反相器首尾相连而成,所述第一可变链由偶数个第一反相器首尾相连而成,所述第一可变链中的每两个相连的第一反相器组成第一反相器组,每个第一反相器组的输入端都通过一个开关连接到所述第一固定链的输入端,所述开关的接通或者断开由所述第一配置信号所控制。
可选地,所述第二反相器链包括第二固定链和第二可变链,所述第二固定链的输出端连接到所述第二可变链的输入端,所述第二可变链的输出端连接到所述第二固定链的输入端,所述第二固定链和所述第二可变链共同组成一个环形振荡器,所述第二可变链中第二反相器的个数根据所述第二配置信号不同而产生变化。
可选地,所述第二固定链由奇数个第二反相器首尾相连而成,所述第二可变链由偶数个第二反相器首尾相连而成,所述第二可变链中的每两个相连的第二反相器组成第二反相器组,每个第二反相器组的输入端都通过一个开关连接到所述第二固定链的输入端,所述开关的接通或者断开由所述第二配置信号所控制。
可选地,还包括选择电路,所述选择电路用于根据控制信号选择性地输出所述第一时钟信号或者所述第二时钟信号。
可选地,所述第一随机信号产生电路还包括第一控制信号产生电路,所述第一控制信号产生电路与所述第一控制模块连接,所述第一控制信号产生电路用于当所述第一控制模块产生所述第二配置信号时将第一控制信号输出至所述选择电路,以使得所述选择电路输出所述第一时钟信号。
可选地,所述第二随机信号产生电路还包括第二控制信号产生电路,所述第二控制信号产生电路与所述第二控制模块连接,所述第二控制信号产生电路用于当所述第二控制模块产生所述第一配置信号时将第二控制信号输出至所述选择电路,以使得所述选择电路输出所述第二时钟信号。
本发明实施例还提供了一种随机数产生电路,包括第一反相器链、第二反相器链、第一随机信号产生电路以及第一控制模块;
所述第一反相器链包括串联连接的多个第一反相器,所述第一反相器链用于根据第一配置信号选择所述第一反相器的个数以输出第一时钟信号;
所述第二反相器链包括串联连接的多个第二反相器,所述第二反相器链用于根据第二配置信号选择所述第二反相器的个数以输出第二时钟信号;
所述第一随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第一随机信号;
所述第一控制模块用于根据所述第一随机信号生成第一随机数,所述第一随机数输出至所述第一配置信号或者所述第二配置信号,以变更所述第一反相器链中的所述第一反相器的个数或者变更所述第二反相器链中的所述第二反相器的个数。
可选地,所述随机数产生电路还包括第二随机信号产生电路和第二控制模块,所述第二随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第二随机信号,所述第一控制模块用于根据所述第一随机信号生成所述第一随机数,所述第一随机数输出至所述第二配置信号,以变更所述第二反相器链中的所述第二反相器的个数;所述第二控制模块用于根据所述第二随机信号生成第二随机数,所述第二随机数输出至所述第一配置信号,以变更所述第一反相器链中的所述第一反相器的个数。
本发明实施例提供的时钟产生电路具有以下优势:
1、使用第一反相器链和第二反相器链生成时钟,从而使时钟生成电路可以配置在安全芯片的内部,无需外接时钟源。
2、使用第一随机信号产生电路对所述第一时钟信号和所述第二时钟信号进行组合来产生随机信号,无需额外集成随机数生成器。
3、根据所述第一随机信号生成所述第一配置信号或者所述第二配置信号,以变更所述第一反相器链中的所述第一反相器的个数或者变更所述第二反相器链中的所述第二反相器的个数,从而增强了输出时钟的随机性。
可见,本发明实施提供的时钟产生电路在减低安全芯片内部的随机时钟生成模块集成难度的同时,也进一步提高时钟的随机性。
类似地,本发明实施例提供的随机数产生电路所产生的随机数,其随机性也有所提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的时钟产生电路的系统框图。
图2为本发明另一实施例提供的时钟产生电路的系统框图。
图3为图1或者图2中的第一反相器链和第二反相器链的电路结构示意图。
图4为图1或者图2中的随机信号产生电路的电路结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
请同时参见图1,图3至图4,本发明实施例提供的时钟产生电路100,包括第一反相器链110、第二反相器链120、第一随机信号产生电路130,第一控制模块140。所述第一反相器链110包括串联连接的多个第一反相器11。所述第一反相器链110用于根据第一配置信号clk_cfg0选择所述第一反相器11的个数以输出第一时钟信号clk_0。所述第二反相器链120包括串联连接的多个第二反相器12。所述第二反相器链120用于根据第二配置信号clk_cfg1选择所述第二反相器12的个数以输出第二时钟信号clk_1。所述第一随机信号产生电路130用于对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合来产生第一随机信号。所述第一控制模块140用于根据所述第一随机信号生成所述第一配置信号clk_cfg0或者所述第二配置信号clk_cfg1,以变更所述第一反相器链110中的所述第一反相器11的个数或者变更所述第二反相器链120中的所述第二反相器12的个数。
在本发明实施提供的时钟产生电路100中,使用第一反相器链110和第二反相器链120生成时钟,从而使时钟生成电路100可以配置在安全芯片的内部,无需外接时钟源。其次,使用第一随机信号产生电路130对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合来产生随机信号,无需额外集成随机数生成器。再次,根据所述第一随机信号生成所述第一配置信号clk_cfg0或者所述第二配置信号clk_cfg1,以变更所述第一反相器链110中的所述第一反相器11的个数或者变更所述第二反相器链120中的所述第二反相器12的个数,从而增强了输出时钟的随机性。可见,本发明实施提供的时钟产生电路100在减低安全芯片内部的随机时钟生成模块集成难度的同时,也进一步提高时钟的随机性。
本发明实施提供的时钟产生电路100可以应用于安全芯片中,并用于各种使用随机数执行操作的设备,包括但不限于:便携式计算机、移动电话、平板电脑、个人数字助理(PDA)、IC卡或者半导体器件。
在本实施例中,所述第一反相器链110和所述第二反相器链120的结构相同,但是配置信号不同。所述第一反相器链110的配置信号为clk_cfg0,输出信号为clk_0。所述第二反相器链120的配置信号为clk_cfg1,输出信号为clk_1。具体地,所述第一反相器链110包括第一固定链111和第一可变链112。所述第一固定链111的输出端连接到所述第一可变链112的输入端。所述第一可变链112的输出端连接到所述第一固定链111的输入端。所述第一固定链111和所述第一可变链112共同组成一个环形振荡器。所述环形振荡器的工作原理为:利用反相器的固有传输延迟时间将奇数个反相器首尾相接而产生振荡电路。以三个反相器A、B、C为例,假定某一时刻,反相器A的输入端因为某种原因产生高电平,在经过延迟时间t后,反相器A的输出端变为低电平;其中t为反相器的固有传输延迟时间。在经过延迟时间2t后,反相器B的输出端变为高电平;在经过延迟时间3t后,反相器C的输出端变为低电平;依次类推。经过延迟时间6t后,反相器A的输入端又变回高电平从而完成一个周期的振荡。因此,环形振荡器的频率f=1/2Nt。其中,t为反相器的固有传输延迟时间,N为环形振荡器中反相器的数量。可见,改变环形振荡器中反相器的个数就可以改变环形振荡器的输出的时钟频率。
在本实施例中,所述第二固定链111由奇数个反相器11首尾相连而成。具体地,所述第一固定链111中的反相器11个数为m个。所述第一可变链112由偶数个反相器11首尾相连而成。所述第一可变链112中的每两个相连的反相器11组成一组,每组反相器11的输入端都通过一个开关连接到所述第一固定链111的输入端。即,第一组反相器的输入端通过开关S0连接到所述第一固定链111的输入端;第二组反相器的输入端通过开关S1连接到所述第一固定链111的输入端;第n组反相器的输入端通过开关S(n-1)连接到所述第一固定链111的输入端。根据需要,第n组反相器的输出端通过开关Sn连接到所述第一固定链111的输入端。通过第一配置信号clk_cfg0来选择要打开的开关S0-Sn,从而决定最终接入所述第一反相器链的反相器个数。例如,clk_cfg0=1选择将开关S1闭合,其余开关打开,则第一可变链112接入的反相器11个数为2个;clk_cfg0=n选择将开关Sn闭合,其余开关打开,则第一可变链112接入的反相器11个数为2n个。由环形振荡器的工作原理可知,当所述第一可变链112的所有反相器11都接入振荡电路时,所述第一可变链112所输出的时钟频率f = 1/2(m+2n)t,其中,t为单个反相器的固有传输延迟时间。可以看到,通过改变clk_cfg0的配置值,就可以改变第一可变链112中接入的反相器11个数,从而改变第一可变链组成的环形振荡器的输出频率。
类似地,所述第二反相器链120包括第二固定链121和第二可变链122。所述第二固定链121的输出端连接到所述第二可变链122的输入端。所述第二可变链122的输出端连接到所述第二固定链121的输入端。所述第二固定链121和所述第二可变链122共同组成一个环形振荡器。所述第二固定链121由奇数个反相器12首尾相连而成。具体地,所述第二固定链121中的反相器12个数为m个。所述第二可变链122由偶数个反相器12首尾相连而成。所述第二可变链122中的每两个相连的反相器12组成一组,每组反相器12的输入端都通过一个开关连接到所述第二固定链121的输入端。即,第一组反相器的输入端通过开关S0连接到所述第二固定链121的输入端;第二组反相器的输入端通过开关S1连接到所述第二固定链121的输入端;第n组反相器的输入端通过开关S(n-1)连接到所述第二固定链121的输入端。根据需要,第n组反相器的输出端通过开关Sn连接到所述第二固定链121的输入端。通过第二配置信号clk_cfg1来选择要打开的开关S0-Sn,从而决定最终接入所述第二反相器链120的反相器个数。例如,clk_cfg1=1选择将开关S1闭合,其余开关打开,则第二可变链122接入的反相器12个数为2个;clk_cfg1=n选择将开关Sn闭合,其余开关打开,则第二可变链122接入的反相器12个数为2n个。由环形振荡器的工作原理可知,当所述第二可变链122的所有反相器12都接入振荡电路时,所述第二可变链122所输出的时钟频率f = 1/2(m+2n)t,其中,t为单个反相器的固有传输延迟时间。可以看到,通过改变clk_cfg1的配置值,就可以改变第二可变链122中接入的反相器12个数,从而改变第二可变链组成的环形振荡器的输出频率。
具体地,所述第一随机信号产生电路130包括第一计数器131和第一D触发器132。所述第一时钟信号clk_0连接到所述第一D触发器132的时钟信号输入端,所述第二时钟信号clk_1连接到所述第一计数器131的时钟信号输入端。所述第一计数器131的输出端连接到所述第一D触发器132的数据输入端。所述第一D触发器132的输出端产生所述第一随机信号。根据需要,所述第一随机信号产生电路130还包括第二D触发器133。所述第一时钟信号clk_0连接到所述第二D触发器133的时钟信号输入端。所述第一D触发器132的输出端连接到所述第二D触发器133的数据输入端。所述第二D触发器133的输出端产生所述第一随机信号。所述第一随机信号产生电路130的工作原理如下所述:
第一计数器131在第二时钟信号clk_1的驱动下,从0开始往上计数。计满溢出之后又回到0,如此循环反复。对于第一计数器131,把第二时钟信号clk_1称为发射时钟。第一计数器131的输出值,被第一时钟信号clk_0驱动的第一D触发器132和第二D触发器133采样,其中的第一时钟信号clk_0称为采样时钟。
第一计数器131的输出对于第一时钟信号clk_0而言是一个异步信号,输出具有随机性,随机性来自两个方面:
1、如果第一时钟信号clk_0的时钟频率高于第二时钟信号clk_1的时钟频率,则在不出现亚稳态的情况下,被第一时钟信号clk_0驱动的第一D触发器132和第二D触发器133采样到的数字也是顺序变化的,比如0 0 1 1 2 2 3 3 4 4 ……等。由于第一时钟信号clk_0跟第二时钟信号clk_1是异步时钟,会出现亚稳态现象,导致第一时钟信号clk_0驱动的第一D触发器132和第二D触发器133采样的的数字可能出现突变,比如0 0 1 1 2 2 3 34 4 1 ……等。这个序列里面的1就是由于亚稳态导致的突变,具有随机性,可以被用来作为配置数据。
2、如第一时钟信号clk_0的时钟频率低于第二时钟信号clk_1的时钟频率,则第一时钟信号clk_0驱动的第一D触发器132和第二D触发器133采样的的序列必定是跳变的,比如0 3 6 8 ……等。具体跳变到哪个值具有随机性,主要由第一时钟信号clk_0跟第二时钟信号clk_1之间的频率差以及相位差决定。更进一步地,当第一时钟信号clk_0采集第二时钟信号clk_1出现亚稳态时,则采样值的随机性还受到亚稳态的影响。
当发现采样值出现突变时,表示这次采样具有真随机数特性,可以被利用。通过这种方式来对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合,所述第一随机信号产生电路130可以产生第一随机信号。所述第一控制模块140根据第一随机信号生成第一配置信号clk_cfg0或者第二配置信号clk_cfg1,以变更第一反相器链110中的第一反相器11的个数或者变更第二反相器链120中的第二反相器12的个数。因此,第一反相器链110所输出的第一时钟信号clk_0也随之变更,或者第二反相器链120所输出的第二时钟信号clk_1也随之变更。
请同时参见图2至图4,所述时钟产生电路100还可以包括第二随机信号产生电路150和第二控制模块160。所述第二随机信号产生电路150用于对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合来产生第二随机信号。在本实施例中,所述第一控制模块140用于根据所述第一随机信号生成所述第二配置信号clk_cfg1,以变更所述第二反相器链120中的所述第二反相器12的个数;所述第二控制模块160用于根据所述第二随机信号生成所述第一配置信号clk_cfg0,以变更所述第一反相器链110中的所述第一反相器11的个数。
在本实施例中,所述第二随机信号产生电路150包括第二计数器151和第三D触发器152。所述第二时钟信号clk_1连接到所述第三D触发器152的时钟信号输入端。所述第一时钟信号clk_0连接到所述第二计数器151的时钟信号输入端。所述第二计数器151的输出端连接到所述第三D触发器152的数据输入端。所述第三D触发器152的输出端产生所述第二随机信号。根据需要,所述第二随机信号产生电路150还包括第四D触发器153。所述第二时钟信号clk_1连接到所述第四D触发器153的时钟信号输入端。所述第三D触发器152的输出端连接到所述第四D触发器153的数据输入端。所述第四D触发器153的输出端产生所述第二随机信号。所述第二随机信号产生电路150与所述第一随机信号产生电路130的结构类似,只是发射时钟和采样时钟互换。由以上的描述可知,当发现采样值出现突变时,表示这次采样具有真随机数特性,可以被利用。通过这种方式来对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合,所述第二随机信号产生电路150可以产生第二随机信号。所述第二控制模块160根据第二随机信号生成第一配置信号clk_cfg0,以变更第一反相器链110中的第一反相器11的个数。此时,所述第一控制模块140根据第一随机信号生成第二配置信号clk_cfg1,以变更第二反相器链120中的第二反相器12的个数。
可以看到,第一随机信号产生电路130和第二随机信号产生电路150与第一反相器链110和第二反相器链120存在一个反馈。即,第一反相器链110的第一配置参数clk_cfg0是由第二随机信号产生电路150产生的第二随机数所确定的;第二反相器链120的第二配置参数clk_cfg1是由第一随机信号产生电路130产生的第一随机数所确定的。一旦获取到一个真随机数,第一反相器链110或者第二反相器链120中反相器个数将会发送变化,从而使到第一时钟信号clk_0和第二时钟信号clk_1的输出时钟的频率、相位都发生变化。输出时钟相位、频率的改变,又会影响到第一随机信号产生电路130和第二随机信号产生电路150中输出时钟与采样时钟之间的频率比、相位关系,从而改变第一随机信号产生电路130和第二随机信号产生电路150的特征。可见,通过第一随机信号产生电路130和第二随机信号产生电路150与第一反相器链110和第二反相器链120之间的反馈,提高了输出时钟的随机性。
根据需要,所述时钟产生电路100还包括选择电路170。所述选择电路170用于根据控制信号选择性地输出所述第一时钟信号clk_0或者所述第二时钟信号clk_1。具体地,所述时钟产生电路100还包括第一控制信号产生电路141,所述第一控制信号产生电路141与所述第一控制模块140连接,所述第一控制信号产生电路141用于当所述第一控制模块140产生所述第二配置信号clk_cfg1时将第一控制信号输出至所述选择电路170,以使得所述选择电路170输出所述第一时钟信号clk_0。所述时钟产生电路100还包括第二控制信号产生电路161,所述第二控制信号产生电路161与所述第二控制模块160连接,所述第二控制信号产生电路161用于当所述第二控制模块160产生所述第一配置信号clk_cfg0时将第二控制信号输出至所述选择电路170,以使得所述选择电路170输出所述第二时钟信号clk_1。
根据需要,所述第一控制模块140生成的所述第二配置信号clk_cfg1还连接到所述第二控制模块160的输入端,所述第二控制模块160生成的所述第一配置信号clk_cfg0还连接到所述第一控制模块140的输入端,以提升所述第一配置信号clk_cfg0和所述第二配置信号clk_cfg1的随机性。
可以理解地,本发明实施例提供的时钟产生电路100也可以用于产生随机数。一种随机数产生电路100,包括第一反相器链110、第二反相器链120、第一随机信号产生电路130以及第一控制模块140;
所述第一反相器链110包括串联连接的多个第一反相器11,所述第一反相器链110用于根据第一配置信号clk_cfg0选择所述第一反相器11的个数以输出第一时钟信号clk_0;
所述第二反相器链120包括串联连接的多个第二反相器12,所述第二反相器链120用于根据第二配置信号clk_cfg1选择所述第二反相器12的个数以输出第二时钟信号clk_1;
所述第一随机信号产生电路130用于对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合来产生第一随机信号;
所述第一控制模块140用于根据所述第一随机信号生成第一随机数,所述第一随机数输出至所述第一配置信号clk_cfg0或者所述第二配置信号clk_cfg1,以变更所述第一反相器链110中的所述第一反相器11的个数或者变更所述第二反相器链120中的所述第二反相器12的个数。
根据需要,所述随机数产生电路100还包括第二随机信号产生电路150和第二控制模块160,所述第二随机信号产生电路150用于对所述第一时钟信号clk_0和所述第二时钟信号clk_1进行组合来产生第二随机信号,所述第一控制模块140用于根据所述第一随机信号生成所述第一随机数,所述第一随机数输出至所述第二配置信号clk_cfg1,以变更所述第二反相器链120中的所述第二反相器12的个数;所述第二控制模块160用于根据所述第二随机信号生成第二随机数,所述第二随机数输出至所述第一配置信号clk_cfg0,以变更所述第一反相器链110中的所述第一反相器11的个数。
需要说明的是,上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (15)
1.一种时钟产生电路,其特征在于,包括第一反相器链、第二反相器链、第一随机信号产生电路以及第一控制模块;
所述第一反相器链包括串联连接的多个第一反相器,所述第一反相器链用于根据第一配置信号选择所述第一反相器的个数以输出第一时钟信号;
所述第二反相器链包括串联连接的多个第二反相器,所述第二反相器链用于根据第二配置信号选择所述第二反相器的个数以输出第二时钟信号;
所述第一随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第一随机信号;
所述第一控制模块用于根据所述第一随机信号生成所述第一配置信号或者所述第二配置信号,以变更所述第一反相器链中的所述第一反相器的个数或者变更所述第二反相器链中的所述第二反相器的个数;
所述时钟产生电路还包括第二随机信号产生电路和第二控制模块,所述第二随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第二随机信号,所述第一控制模块用于根据所述第一随机信号生成所述第二配置信号,以变更所述第二反相器链中的所述第二反相器的个数;所述第二控制模块用于根据所述第二随机信号生成所述第一配置信号,以变更所述第一反相器链中的所述第一反相器的个数。
2.如权利要求1所述的时钟产生电路,其特征在于,所述第一随机信号产生电路包括第一计数器和第一D触发器,所述第一时钟信号连接到所述第一D触发器的时钟信号输入端,所述第二时钟信号连接到所述第一计数器的时钟信号输入端,所述第一计数器的输出端连接到所述第一D触发器的数据输入端,所述第一D触发器的输出端产生所述第一随机信号。
3.如权利要求2所述的时钟产生电路,其特征在于,所述第一随机信号产生电路还包括第二D触发器,所述第一时钟信号连接到所述第二D触发器的时钟信号输入端,所述第一D触发器的输出端连接到所述第二D触发器的数据输入端,所述第二D触发器的输出端产生所述第一随机信号。
4.如权利要求2所述的时钟产生电路,其特征在于,所述第二随机信号产生电路包括第二计数器和第三D触发器,所述第二时钟信号连接到所述第三D触发器的时钟信号输入端,所述第一时钟信号连接到所述第二计数器的时钟信号输入端,所述第二计数器的输出端连接到所述第三D触发器的数据输入端,所述第三D触发器的输出端产生所述第二随机信号。
5.如权利要求4所述的时钟产生电路,其特征在于,所述第二随机信号产生电路还包括第四D触发器,所述第二时钟信号连接到所述第四D触发器的时钟信号输入端,所述第三D触发器的输出端连接到所述第四D触发器的数据输入端,所述第四D触发器的输出端产生所述第二随机信号。
6.如权利要求1-5任意一项所述的时钟产生电路,其特征在于,所述第一控制模块生成的所述第二配置信号还连接到所述第二控制模块的输入端。
7.如权利要求1-5任意一项所述的时钟产生电路,其特征在于,所述第二控制模块生成的所述第一配置信号还连接到所述第一控制模块的输入端。
8.如权利要求1-5任意一项所述的时钟产生电路,其特征在于,所述第一反相器链包括第一固定链和第一可变链,所述第一固定链的输出端连接到所述第一可变链的输入端,所述第一可变链的输出端连接到所述第一固定链的输入端,所述第一固定链和所述第一可变链共同组成一个环形振荡器,所述第一可变链中第一反相器的个数根据所述第一配置信号不同而产生变化。
9.如权利要求8所述的时钟产生电路,其特征在于,所述第一固定链由奇数个第一反相器首尾相连而成,所述第一可变链由偶数个第一反相器首尾相连而成,所述第一可变链中的每两个相连的第一反相器组成第一反相器组,每个第一反相器组的输入端都通过一个开关连接到所述第一固定链的输入端,所述开关的打开或者闭合由所述第一配置信号所控制。
10.如权利要求1-5任意一项所述的时钟产生电路,其特征在于,所述第二反相器链包括第二固定链和第二可变链,所述第二固定链的输出端连接到所述第二可变链的输入端,所述第二可变链的输出端连接到所述第二固定链的输入端,所述第二固定链和所述第二可变链共同组成一个环形振荡器,所述第二可变链中第二反相器的个数根据所述第二配置信号不同而产生变化。
11.如权利要求10所述的时钟产生电路,其特征在于,所述第二固定链由奇数个第二反相器首尾相连而成,所述第二可变链由偶数个第二反相器首尾相连而成,所述第二可变链中的每两个相连的第二反相器组成第二反相器组,每个第二反相器组的输入端都通过一个开关连接到所述第二固定链的输入端,所述开关的打开或者闭合由所述第二配置信号所控制。
12.如权利要求1-5任意一项所述的时钟产生电路,其特征在于,还包括选择电路,所述选择电路用于根据控制信号选择性地输出所述第一时钟信号或者所述第二时钟信号。
13.如权利要求12所述的时钟产生电路,其特征在于,所述第一随机信号产生电路还包括第一控制信号产生电路,所述第一控制信号产生电路与所述第一控制模块连接,所述第一控制信号产生电路用于当所述第一控制模块产生所述第二配置信号时将第一控制信号输出至所述选择电路,以使得所述选择电路输出所述第一时钟信号。
14.如权利要求12所述的时钟产生电路,其特征在于,所述第二随机信号产生电路还包括第二控制信号产生电路,所述第二控制信号产生电路与所述第二控制模块连接,所述第二控制信号产生电路用于当所述第二控制模块产生所述第一配置信号时将第二控制信号输出至所述选择电路,以使得所述选择电路输出所述第二时钟信号。
15.一种随机数产生电路,其特征在于,包括第一反相器链、第二反相器链、第一随机信号产生电路以及第一控制模块;
所述第一反相器链包括串联连接的多个第一反相器,所述第一反相器链用于根据第一配置信号选择所述第一反相器的个数以输出第一时钟信号;
所述第二反相器链包括串联连接的多个第二反相器,所述第二反相器链用于根据第二配置信号选择所述第二反相器的个数以输出第二时钟信号;
所述第一随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第一随机信号;
所述第一控制模块用于根据所述第一随机信号生成第一随机数,所述第一随机数输出至所述第一配置信号或者所述第二配置信号,以变更所述第一反相器链中的所述第一反相器的个数或者变更所述第二反相器链中的所述第二反相器的个数;
所述随机数产生电路还包括第二随机信号产生电路和第二控制模块,所述第二随机信号产生电路用于对所述第一时钟信号和所述第二时钟信号进行组合来产生第二随机信号,所述第一控制模块用于根据所述第一随机信号生成所述第一随机数,所述第一随机数输出至所述第二配置信号,以变更所述第二反相器链中的所述第二反相器的个数;所述第二控制模块用于根据所述第二随机信号生成第二随机数,所述第二随机数输出至所述第一配置信号,以变更所述第一反相器链中的所述第一反相器的个数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011128048.2A CN111969981B (zh) | 2020-10-21 | 2020-10-21 | 一种时钟产生电路和随机数产生电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011128048.2A CN111969981B (zh) | 2020-10-21 | 2020-10-21 | 一种时钟产生电路和随机数产生电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111969981A CN111969981A (zh) | 2020-11-20 |
CN111969981B true CN111969981B (zh) | 2021-01-12 |
Family
ID=73387115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011128048.2A Active CN111969981B (zh) | 2020-10-21 | 2020-10-21 | 一种时钟产生电路和随机数产生电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111969981B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377337B (zh) * | 2021-07-07 | 2022-11-04 | 山东方寸微电子科技有限公司 | 一种真随机数发生器及芯片 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1573681A (zh) * | 2003-06-24 | 2005-02-02 | 株式会社瑞萨科技 | 具备环形振荡电路的随机数产生装置 |
CN1782987A (zh) * | 2004-09-28 | 2006-06-07 | 迈克纳斯公司 | 随机数发生器及生成随机数的方法 |
JP2010117846A (ja) * | 2008-11-12 | 2010-05-27 | Nippon Telegr & Teleph Corp <Ntt> | 乱数生成回路 |
CN103513955A (zh) * | 2012-06-20 | 2014-01-15 | 罗伯特·博世有限公司 | 用于产生随机数的方法 |
US8886692B2 (en) * | 2009-02-09 | 2014-11-11 | Samsung Electronics Co., Ltd. | Apparatus for generating random number |
CN104572014A (zh) * | 2013-10-15 | 2015-04-29 | 飞思卡尔半导体公司 | 具有重复激活的振荡器的真随机数生成器 |
CN106293617A (zh) * | 2016-08-12 | 2017-01-04 | 上海坚芯电子科技有限公司 | 真随机数发生器 |
CN107038015A (zh) * | 2016-11-18 | 2017-08-11 | 杭州电子科技大学 | 一种高速真随机数发生器 |
CN107797788A (zh) * | 2017-11-03 | 2018-03-13 | 大唐微电子技术有限公司 | 一种随机数发生装置、真随机数发生器及系统级芯片 |
CN109286378A (zh) * | 2018-09-26 | 2019-01-29 | 复旦大学 | 一种具有自适应失调调节功能的斩波电路 |
CN111008005A (zh) * | 2019-11-22 | 2020-04-14 | 深圳市纽创信安科技开发有限公司 | 一种真随机数发生器和真随机数发生方法 |
-
2020
- 2020-10-21 CN CN202011128048.2A patent/CN111969981B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1573681A (zh) * | 2003-06-24 | 2005-02-02 | 株式会社瑞萨科技 | 具备环形振荡电路的随机数产生装置 |
CN1782987A (zh) * | 2004-09-28 | 2006-06-07 | 迈克纳斯公司 | 随机数发生器及生成随机数的方法 |
JP2010117846A (ja) * | 2008-11-12 | 2010-05-27 | Nippon Telegr & Teleph Corp <Ntt> | 乱数生成回路 |
US8886692B2 (en) * | 2009-02-09 | 2014-11-11 | Samsung Electronics Co., Ltd. | Apparatus for generating random number |
CN103513955A (zh) * | 2012-06-20 | 2014-01-15 | 罗伯特·博世有限公司 | 用于产生随机数的方法 |
CN104572014A (zh) * | 2013-10-15 | 2015-04-29 | 飞思卡尔半导体公司 | 具有重复激活的振荡器的真随机数生成器 |
CN106293617A (zh) * | 2016-08-12 | 2017-01-04 | 上海坚芯电子科技有限公司 | 真随机数发生器 |
CN107038015A (zh) * | 2016-11-18 | 2017-08-11 | 杭州电子科技大学 | 一种高速真随机数发生器 |
CN107797788A (zh) * | 2017-11-03 | 2018-03-13 | 大唐微电子技术有限公司 | 一种随机数发生装置、真随机数发生器及系统级芯片 |
CN109286378A (zh) * | 2018-09-26 | 2019-01-29 | 复旦大学 | 一种具有自适应失调调节功能的斩波电路 |
CN111008005A (zh) * | 2019-11-22 | 2020-04-14 | 深圳市纽创信安科技开发有限公司 | 一种真随机数发生器和真随机数发生方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111969981A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5973507A (en) | Exclusive-or gate for use in delay using transmission gate circuitry | |
US7424500B2 (en) | Random number generator with ring oscillation circuit | |
US9047152B2 (en) | Delay device, method, and random number generator using the same | |
JP4780144B2 (ja) | 分周回路 | |
EP1543407B1 (en) | Switching electronic circuit for random number generation | |
KR0159213B1 (ko) | 가변 지연회로 | |
KR100578219B1 (ko) | 온-칩 데이터 전송 제어장치 및 그 제어방법 | |
CN110912549A (zh) | 一种串并转换电路及其驱动方法、显示面板 | |
CN111969981B (zh) | 一种时钟产生电路和随机数产生电路 | |
US7325021B2 (en) | VLSI implementation of metastability-based random number generator using delay ladders | |
CN114968179A (zh) | 一种基于时钟抖动和亚稳态的真随机数产生电路 | |
US7692564B2 (en) | Serial-to-parallel conversion circuit and method of designing the same | |
CN208999990U (zh) | 真随机数发生器 | |
KR960701539A (ko) | 단일 단자 펄스 게이팅 회로(single-ended pulse gating circuit) | |
JP3649874B2 (ja) | 分周回路 | |
US5200647A (en) | High-speed signal multiplexing circuit for multiplexing high-speed signals | |
CN213585746U (zh) | 分频器电路 | |
WO2021142830A1 (zh) | 随机数生成电路、随机数生成方法和电子设备 | |
US5379038A (en) | Parallel-serial data converter | |
EP0930706A2 (en) | Variable frequency oscillator | |
US6040723A (en) | Interface circuit with high speed data transmission | |
WO2004051458A2 (en) | System and method for true random number generation | |
EP2391007A2 (en) | Division circuit, division device, and electronic apparatus | |
JP3227700B2 (ja) | 情報伝達方式 | |
KR20230015225A (ko) | 복수의 샘플링 신호들에 기초하여 난수를 생성하는 난수 생성 회로 및 이의 동작 방법 |
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 |