随机数发生装置、方法及对应的数据交互系统的制作方法

文档序号:6557401阅读:163来源:国知局
专利名称:随机数发生装置、方法及对应的数据交互系统的制作方法
技术领域
本发明涉及电子技术领域,更具体地说,涉及一种基于振荡器的随机数发生装置、方法及对应的数据交互系统。
背景技术
在目前数据交互过程中,数据的保密主要通过在发送端加密待传输数据并在接收端解密来实现。目前几乎所有的加密系统都依赖于密钥的不可预测性和不可重复性来实现,能够满足密钥的这两个特性的数据则是由随机数发生器(Random Number Generator,RNG)来实现。
目前随机数发生器技术主要有直接放大技术、模拟非稳态技术和振荡器采样技术等。其中直接放大技术通过放大噪声(热噪声或散射噪声)来生成随机数;模拟非稳态技术通过模-数转换器(Analog-Digital Converter,ADC)转换非稳态的模拟信号来生成随机数。这两项技术较为复杂,设计成本较高。
振荡器采样技术通过两个不同频率的振荡器互相采样来生成随机数,具有器件较少、所占芯片面积较小、相对成本较低等优点。如图1所示,为常见的振荡器采样生成随机数生成电路,其由噪声源(Noise Source)11、放大器(AMP)12、低频压控振荡器(L-Freq KVCO)13、高频振荡器(H-Freq Osc)14和D触发器15组成。
其中的噪声源11用于生成热噪声或散射噪声,放大器12将噪声源11产生的噪声进行放大,形成对低频压控振荡器13的频率控制电压。在此控制电压作用下,低频压控振荡器13的频率不断随机地改变。低频压控振荡器13的输出作为D触发器15的时钟输入,同时高频振荡器14的输出作为D触发器15的数据输入,低频压控振荡器13的输出对高频振荡器的输出进行出采样,最终得到随机数据。
然而,由于噪声源11的限制,上述电路产生随机数据的速率低,远小于1Mbps,不能满足现有数据传输速率较快的系统的需要。

发明内容
本发明实施例要解决的技术问题在于,针对上述振荡器采样的随机数产生电路产生随机数的速率较低的缺陷,提供一种新的基于振荡器的随机数发生装置及随机数发生方法。
本发明实施例解决上述技术问题的技术方案是,提供一种随机数发生装置,包括第一级采样模块和第二级采样模块,其中所述第一级采样模块包括第一振荡器,用于产生第一振荡信号;第二振荡器,用于产生第二振荡信号;第一采样器,用于使用所述第二振荡信号采样所述第一振荡信号,产生并输出第一输出信号;所述第二采样模块包括压控振荡器,用于以所述第一输出信号为控制电压产生压控振荡信号;第三振荡器,用于产生第三振荡信号;第二采样器,用于使用所述压控振荡信号采样所述第三振荡信号,产生随机数据;所述第一振荡信号的频率和所述第三振荡信号的频率大于所述第二振荡信号的频率。
本发明的实施例还提供一种随机数发生方法,包括以下步骤(a)使用第二振荡信号采样第一振荡信号,产生第一输出信号,所述第一振荡信号的频率高于所述第二振荡信号的频率;(b)以所述第一输出信号为控制信号,产生受控振荡信号;(c)使用所述受控振荡信号采样第三振荡信号,产生随机数据,所述第三振荡信号的频率高于所述第二振荡信号的频率。
本发明的实施例还提供一种数据交互系统,该系统使用随机数加密待传输数据,包括有用于生成随机数的随机数发生装置,其特征在于,所述随机数发生装置包括第一级采样模块和第二级采样模块,其中所述第一级采样模块包括第一振荡器,用于产生第一振荡信号;第二振荡器,用于产生第二振荡信号;第一采样器,用于使用所述第二振荡信号采样所述第一振荡信号,产生并输出第一输出信号;所述第二采样模块包括压控振荡器,用于以所述第一输出信号为控制电压产生压控振荡信号;第三振荡器,用于产生第三振荡信号;第二采样器,用于使用所述压控振荡信号采样所述第三振荡信号,产生随机数据;所述第一振荡信号的频率和所述第三振荡信号的频率大于所述第二振荡信号的频率。
本发明实施例的随机数发生装置/方法及数据交互系统,通过二级振荡器采样,第一级振荡器采样为第二级振荡器采样提供随机的控制电压,提高了第二级振荡器采样的随机性,同时可以提高输出随机数的速率。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是现有基于振荡器的随机数字发生装置的结构示意图;图2是本发明随机数发生装置的实施例的结构示意图;图3是本发明随机数发生装置的一个具体实施例的结构示意图;图4是图3中第二振荡器的一个实施例的结构示意图;图5是图3中控制电压产生电路的一个实施例的结构示意图;图6是图5中第二部分的一个实施例的结构示意图;
图7是本发明随机数字发生方法实施例的流程图。
具体实施例方式
如图2所示,是本发明随机数发生装置实施例的结构示意图,本发明实施例的随机数发生装置包括第一级采样模块和第二级采样模块,其中第一级采样模块包括第一振荡器24、第二振荡器21以及第一采样器22,第二级采样电路包括第一振荡器24、压控振荡器23以及第二采样器25。
需要指出的是,第二级采样电路所包括的第一振荡器可由其它振荡器替代,只要此振荡器产生的振荡信号的频率大于第二振荡器21产生的振动信号的频率即可。
第一采样器22采用第二振荡器21产生的第二振荡信号采样第一振荡器24产生的第一振荡信号,产生第一输出信号,该第一输出信号作为压控振荡器23的控制信号,使压控振荡器23产生压控振荡信号,第二采样器25采用所述压控振荡信号采样。
图3所示为本发明随机数发生装置的一个具体实施例结构示意图,在本实施例中,第一采样器22采用了控制电压产生电路32;第二采样器25采用第一D触发器35。
第一振荡器24和第二振荡器21分别耦接到控制电压产生电路32的输入端,压控振荡器23耦接到控制电压产生电路32的输出端,第一D触发器35的数据端D耦接到第一振荡器24的输出端且其时钟端CK耦接到压控振荡器23的输出端。当然,上述的第一D触发器35并不限于D触发器,也可通过其他元件组成的电路实现,例如使用JK触发器、RS触发器和T触发器构成的电路等。当然,上述第二级采样模块中的第一振荡器24也可使用一个第三振荡器代替,即第一振荡器24只用于在第一级采样模块中产生振荡信号,以供控制电压产生电路32使用,而不将产生的振荡信号输出至第一D触发器35的数据端,使用一个第三振荡器来产生振荡信号,并将此第三振荡器产生的振荡信号输出给第一D触发器的数据端。
在本实施例中,控制电压产生电路32使用第二振荡器21的振荡信号采样第一振荡器24的振荡信号形成输出信号;第二级采样模块中的压控振荡器23以第一级采样模块的输出信号作为控制电压输出振荡信号,并使用压控振荡器输出的振荡信号通过第一D触发器35采样第一振荡器24输出的振荡信号生成随机数据。
其中第一振荡器24为高频振荡器,而第二振荡器21为低频振荡器。在本实施例中,第一振荡器24输出的振荡信号频率大于第二振荡器21输出的振荡信号频率,且两信号频率的比例大于或等于100∶1。
例如,在上述装置的一个具体应用中,第一振荡器24的中心频率为600MHz,第二振荡器21的中心频率为3MHz,从而第一振荡器24与第二振荡器21输出的振荡信号的频率比为200∶1。压控振荡器23的中心频率为20MHz,和第一振荡器24相比,得到1∶30的频率比率。
当然,在上述的随机数发生装置中,第一D触发器35的数据端D也可连接到一个第三振荡器的输出端,该第三振荡器输出的振荡信号频率大于第二振荡器21输出的振荡信号频率,可与第一振荡器输出的振荡信号频率相当。
上述的随机数发生装置可采用各种现有的生产工艺实现,以下以CMOS工艺为例进行阐述。
如图4所示,为图2中第二振荡器21的一个实施例的结构示意图。在本实施例中,第二振荡器21由5级反相放大电路组成。M0、M1、M2、M3、M4是NMOS器件,RW0、RW1、RW2、RW3、RW4是阱电阻。电源VDD稳定之后,假设输出的初始电压为低电平,则经过M0、M1、M2、M3反相放大后,V0为高电平,V1为低电平,V2为高电平,V3为低电平。V3经过M4放大后,输出信号OUT变为高电平。
在上述电路中,NMOS器件M0、M1、M2、M3、M4形成正反馈回路,输出信号OUT经过正反馈放大后,形成振荡信号。当然,上述第二振荡器21的级数只要是奇数级且级数大于1,就可以形成正反馈回路,生成振荡信号,例如3级或7级等。
在本实施例中,NMOS器件M0、M1、M2、M3、M4的负载电阻采用阱电阻RW0、RW1、RW2、RW3、RW4,由于阱电阻噪声和阻值偏差较大,使得第二振荡器21具有较大的相位噪声和频率偏移。
当然,第二振荡器21除了采用上述的单端环形振荡器,也可以采用差分环形振荡器、单端或差分压控振荡器等。
如图5所示,为图3中控制电压产生电路32的原理图。在本实施例中,控制电压产生电路32由两部分组成第一部分包括第二D触发器321,第二部分包括电压产生电路(VCGEN)322。第二D触发器321的数据端D连接第一振荡器24的输出端、时钟端CK连接第二振荡器21的输出端、输出端Q连接电压产生电路322的输入端IN。第二D触发器321实现了由第二振荡器21产生的低频振荡信号对由第一振荡器24产生的高频振荡信号的采样,因此第二D触发器321的输出端Q是随机的高低电平跳变信号。电压产生电路322把随机的高低电平跳变信号转化为连续的小幅度的缓变信号,实现对压控振荡器23频率变化的连续控制。
图5中电压产生电路322的详细实现方案如图6所示,其由NMOS管N0、N1和N2,PMOS管P0和P1,以及电容CP组成。第一PMOS管P0的栅极接使能信号EN、源极接高电平VDD、漏极接第二PMOS管P1的源极;第二PMOS管P1的栅极和漏极接输出电压VC;第一NMOS管N0的栅极连接输入信号IN,即第二D触发器321的输出端Q、源极接地、漏极接第二NMOS管N1的源极;第二NMOS管、第三NMOS管N1、N2的栅极和漏极分别接输出电压VC;第三NMOS管N2的源极接地;而电容C的一端接地、另一端接输出电压VC。
EN是使能信号,当EN为高电平的时候,PMOS管P0被关断,整个电路没有电流通过,整个电路的功耗降至最低;当EN为低电平的时候,PMOS管P0导通,整个电路处于正常的工作状态。在电路正常工作的时候,由于NMOS管N0的栅极电压由随机的电平跳变信号控制,因此NMOS管N0处于随机的开关状态。当NMOS管N0导通的时候,NMOS管N0、N1、N2和PMOS管P0、P1组成分压电路,输出电压VC由下式决定VC=VDD×rN0,1//rN2rP0,1+rN0,1//rN2---(1)]]>
其中,rN0,1表示NMOS管N0和N1的串连等效电阻,rN2表示NMOS管N2的效电阻,rP0,1表示PMOS管P0和P1的串连等效电阻。当NMOS管N0关闭的时候,NMOS管N1关闭,NMOS管N2和PMOS管P0、P1组成分压电路,输出电压VC由下式决定VC=VDD×rN2rP0,1+rN2---(2)]]>可以看出,输出VC的电压范围由(1)式和(2)决定。选取合适的NMOS和PMOS器件的宽长比,可以得到合适的输出VC电压变化范围,如[1-0.05,1+0.05](V)。
在第二部分中,输出电压VC耦接到一个接地的电容CP,从而利用电容CP充放电的渐变特性,避免了输出电压VC的取值在由(1)式和(2)式确定的电压值之间跳变,获得了对压控振荡器23的连续的控制特性。
通过上述方案产生的输出电压VC可以随机地控制压控振荡器23输出信号的频率变化,这个频率随机变化的信号通过图3中的第一D触发器35采样第一振荡器24的输出,就可以获得0和1分布均匀的随机数据。
如图6所示,是本发明随机数发生方法实施例的流程图。
步骤S61使用第二振荡信号采样第一振荡信号,产生第一输出信号,其中第一振荡信号的频率高于第二振荡信号的频率,较优地,第一振荡信号的频率大于或等于第二振荡信号的频率的100倍。可选地,采样可通过触发器完成,触发器的时钟端输入第二振荡信号、数据端输入第一振荡信号,输出端输出中间随机信号。
将所述中间随机信号进行平滑处理后转化为连续的小幅度缓变的所述第一输出信号。
步骤S62以所述第一输出信号为控制信号,产生受控振荡信号。可选的一种方式,以第一输出信号为控制信号控制压控振荡器,以产生压控振荡信号。
步骤S63使用所述受控振荡信号采样第三频率信号,产生随机数据。第三振荡信号可以与第一振荡信号可为同一振荡信号,也可不一样,只要第三振荡信号的频率大于第二振荡信号的频率即可,优选地,第三振荡信号的频率大于或等于第二振荡信号的频率的100倍。可选地,该步骤的采样可通过一个触发器实现,该触发器的时钟端连接所述受控振荡信号、数据端输入第三振荡信号,输出端即可产生随机数据。
由于采用了二级振荡器采样,第一级振荡器采样为第二级振荡器采样提供随机的控制电压,提高了第二级振荡器采样的随机性,同时可以提高输出随机数的速率,输出随机数的速率可达到20Mbps。
当然,在具体应用中,本发明实施例的装置和方法还可采用更多级的采样,从而实现更高数率的随机数输出。
上述的随机数发生装置、方法可应用于数据交互系统,从而在数据交互系统中可使用本发明的随机数发生装置、方法生成随机数,并使用上述生成的随机数加密待传输数据后进行数据传输。从而保证了数据交互的保密性。
上述的随机数发生装置、方法及数据交互系统,可以满足对随机数速率要求较高(可达到20Mbps)、芯片面积较小的应用。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种随机数发生装置,其特征在于,包括第一级采样模块和第二级采样模块,其中所述第一级采样模块包括第一振荡器,用于产生第一振荡信号;第二振荡器,用于产生第二振荡信号;第一采样器,用于使用所述第二振荡信号采样所述第一振荡信号,产生并输出第一输出信号;所述第二采样模块包括压控振荡器,用于以所述第一输出信号为控制电压产生压控振荡信号;第三振荡器,用于产生第三振荡信号;第二采样器,用于使用所述压控振荡信号采样所述第三振荡信号,产生随机数据;所述第一振荡信号的频率和所述第三振荡信号的频率大于所述第二振荡信号的频率。
2.根据权利要求1所述的随机数发生装置,其特征在于,所述第二采样器为第一D触发器,用于以所述压控振荡信号采样所述第三振荡信号,产生随机数据,所述第一D触发器的数据端耦接到第三振荡器的输出端,所述第一D触发器的时钟端耦接到压控振荡器的输出端。
3.根据权利要求1所述的随机数发生装置,其特征在于,所述第一采样器包括有第二D触发器以及电压产生电路,所述第二D触发器的数据端连接所述第一振荡器的输出端、所述第二D触发器的时钟端连接所述第二振荡器的输出端,所述第二D触发器的输出端连接到电压产生电路的输入端,所述电压产生电路用于将第二D触发器输出的随机跳变信号转化为连续的小幅度缓变的所述第一输出信号。
4.根据权利要求3所述的随机数发生装置,其特征在于,所述电压产生电路包括三个NMOS管、两个PMOS管和一个电容,其中第一PMOS管的栅极接收使能信号、源极接高电平、漏极接第二PMOS管的源极;第二PMOS管的栅极和漏极接输出电压;第一NMOS管的栅极连接到第二D触发器的输出端、源极接地、漏极接第二NMOS管的源极;第二NMOS管的栅极和漏极、第三NMOS管的栅极和漏极分别接输出电压;第三NMOS管的源极接地;而电容的一端接地、另一端接输出电压。
5.根据权利要求1所述的随机数发生装置,其特征在于,所述第一振荡器和第三振荡器的输出信号频率大于或等于第二振荡器的输出信号频率的100倍。
6.根据权利要求1-5中任一项所述的随机数发生装置,其特征在于,所述第一振荡器和第三振荡器为同一器件。
7.根据权利要求1所述的随机数发生装置,其特征在于,所述第二振荡器为单端环形振荡器或差分环形振荡器或单端压控振荡器或差分压控振荡器。
8.一种随机数发生方法,其特征在于,包括以下步骤(a)使用第二振荡信号采样第一振荡信号,产生第一输出信号,所述第一振荡信号的频率高于所述第二振荡信号的频率;(b)以所述第一输出信号为控制信号,产生受控振荡信号;(c)使用所述受控振荡信号采样第三振荡信号,产生随机数据,所述第三振荡信号的频率高于所述第二振荡信号的频率。
9.如权利要求8所述的随机数发生方法,其特征在于,所述(a)步骤使用第二振荡信号采样第一振荡信号,产生第一输出信号具体为以所述第二振荡信号为时钟信号采样所述第一振荡信号,产生中间随机信号;将所述中间随机信号进行平滑处理后转化为连续的小幅度缓变的所述第一输出信号。
10.根据权利要求9所述的随机数发生方法,其特征在于,所述第一振荡信号的频率大于或等于第二振荡信号的100倍,所述第三振荡信号与第一振荡信号为同一振荡信号。
11.一种数据交互系统,该系统使用随机数加密待传输数据,包括有用于生成随机数的随机数发生装置,其特征在于,所述随机数发生装置包括第一级采样模块和第二级采样模块,其中所述第一级采样模块包括第一振荡器,用于产生第一振荡信号;第二振荡器,用于产生第二振荡信号;第一采样器,用于使用所述第二振荡信号采样所述第一振荡信号,产生并输出第一输出信号;所述第二采样模块包括压控振荡器,用于以所述第一输出信号为控制电压产生压控振荡信号;第三振荡器,用于产生第三振荡信号;第二采样器,用于使用所述压控振荡信号采样所述第三振荡信号,产生随机数据;所述第一振荡信号的频率和所述第三振荡信号的频率大于所述第二振荡信号的频率。
全文摘要
本发明涉及一种随机数发生装置,一种随机数发生装置,包括第一级采样模块和第二级采样模块,其中所述第一级采样模块包括第一振荡器、第二振荡器以及用于使用第二振荡器产生信号采样第一振荡器产生信号产生并输出第一输出信号第一采样器;所述第二采样模块包括以所述第一输出信号为控制电压产生压控振荡信号的压控振荡器、用于产生第三振荡信号的第三振荡器以及用于使用所述压控振荡信号采样所述第三振荡信号产生随机数据的第二采样器。本发明还提供一种随机数发生方法及一种数据交互系统。本发明通过二级振荡器采样,第一级振荡器采样为第二级振荡器采样提供随机的控制电压,提高了第二级振荡器采样的随机性,同时可以提高输出随机数的速率。
文档编号G06F7/58GK1949708SQ20061006359
公开日2007年4月18日 申请日期2006年11月10日 优先权日2006年11月10日
发明者宋安飞, 李波 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1