一种随机数生成电路及相应的安全芯片

申请号 CN202110801071.1 申请日 2021-07-15 公开(公告)号 CN113434114B 公开(公告)日 2024-04-16
申请人 兆讯恒达科技股份有限公司; 发明人 李立; 王韩;
摘要 本 发明 公开了一种随机数生成 电路 及相应的安全芯片。该电路包括随机 电压 生成单元、高速压控振荡单元、高速振荡单元、逻辑异或单元、低速振荡单元和触发单元。本发明利用随机电压生成单元为高速压控振荡单元提供随机变化电压,使其生成 频率 相应变化的第一高频时钟 信号 ,该第一高频 时钟信号 和与其独立不相关的由高速振荡单元生成的第二高频时钟信号进行异或后,一方面增加了异或后的第三高频时钟信号与低频时钟信号的不相干性,另一方面增加了除了高速压控振荡单元的有源器件引入的 电流 噪声和热噪声外,还增加了由随机电压生成单元为高速压控振荡单元提供的随机变化电压,作为其控制电压所产生的随机噪声,从而提高了本发明生成随机数的随机性。
权利要求

1.一种随机数生成电路,其特征在于包括随机电压生成单元、高速压控振荡单元、高速振荡单元、逻辑异或单元、低速振荡单元和触发单元,所述随机电压生成单元连接所述高速压控振荡单元,所述高速压控振荡单元与所述高速振荡单元连接所述逻辑异或单元,所述逻辑异或单元与所述低速振荡单元连接所述触发单元;
所述随机电压生成单元包括迟滞比较器、限压器、电容、充电和放电开关、第一反相器、第二反相器及第一电流镜像器、第二电流镜像器、第三电流镜像器和第四电流镜像器,所述迟滞比较器的第一和第二输入端连接所述限压器的相应输出端,所述迟滞比较器的第三输入端连接所述电容的一端和所述充电和放电开关的输出端,所述迟滞比较器的第一输出端连接所述第一反相器的输入端,所述第一反相器的输出端连接所述迟滞比较器的第四输入端和所述第二反相器的输入端,所述第二反相器的输出端连接所述充电和放电开关的输入端,所述电容的一端还作为所述随机电压生成单元的输出端,用于连接所述高速压控振荡单元的输入端,所述电容的另一端接地,所述第一电流镜像器一方面连接第一电流源,另一方面连接所述第二电流镜像器和所述第三电流镜像器,所述第二电流镜像器连接所述限压器和所述第四电流镜像器,所述第三电流镜像器和所述第四电流镜像器连接所述充电和放电开关;
利用所述随机电压生成单元为所述高速压控振荡单元提供一个周期固定的随机变化电压,使得所述高速压控振荡单元生成频率相应变化的第一高频时钟信号,输出到所述逻辑异或单元,所述逻辑异或单元将所述第一高频时钟信号与所述高速振荡单元提供的频率固定的第二高频时钟信号进行异或,得到频率随机变化的第三高频时钟信号输出到所述触发单元,所述触发单元将所述低速振荡单元提供的低频时钟信号作为采样时钟采样所述第三高频时钟信号,以提高随机数的随机性。
2.如权利要求1所述的随机数生成电路,其特征在于:
所述迟滞比较器包括第一PMOS管、第二PMOS管、第三PMOS管、第四PMOS管、第五PMOS管、第七PMOS管、第一NMOS管、第二NMOS管和第三NMOS管,所述第一PMOS管与所述第二PMOS管的源极连接电源电压,所述第一PMOS管与所述第二PMOS管的栅极连接所述第二电流镜像器和所述第四电流镜像器,所述第一PMOS管的漏极连接所述第三PMOS管、所述第四PMOS管和所述第五PMOS管的源极,所述第三PMOS管的栅极连接所述限压器的第一输出端,所述第四PMOS管的栅极连接所述限压器的第二输出端,所述第五PMOS管的栅极连接所述电容的一端和所述充电和放电开关的输出端,所述第三PMOS管的漏极连接所述第七PMOS管的漏极、所述第一NMOS管的栅极和漏极、所述第二NMOS管的栅极,所述第七PMOS管的源极连接所述第四PMOS管的漏极,所述第七PMOS管的栅极连接所述第一反相器的输出端和所述第二反相器的输入端,所述第二NMOS管的漏极连接所述第五PMOS管的漏极和所述第三NMOS管的栅极,所述第三NMOS管与所述第二PMOS管的漏极连接所述第一反相器的输入端,所述第一NMOS管、所述第二NMOS管和所述第三NMOS管的源极均接地。
3.如权利要求1所述的随机数生成电路,其特征在于:
所述高速压控振荡单元包括电压转电流模、第一延迟模块、第一差分转单端模块和第一驱动模块,所述电压转电流模块的输入端连接所述随机电压生成单元的输出端,所述电压转电流模块的输出端连接所述第一延迟模块,所述第一延迟模块的输出端连接所述第一差分转单端模块的输入端,所述第一差分转单端模块的输出端连接所述第一驱动模块的输入端,所述第一驱动模块的输出端连接所述逻辑异或单元的输入端。
4.如权利要求3所述的随机数生成电路,其特征在于:
所述电压转电流模块包括第八NMOS管、第十一PMOS管和第十二PMOS管,第八NMOS管的栅极连接所述随机电压生成单元的输出端,所述第八NMOS管的漏极连接所述第十一PMOS管的栅极和漏极、所述第十二PMOS管的栅极,所述第十二PMOS管的漏极连接所述第一延迟模块的输入端,所述第十一PMOS管和所述第十二PMOS管的源极均连接电源电压,所述第八NMOS管的源极接地。
5.如权利要求1所述的随机数生成电路,其特征在于:
所述高速振荡单元包括电流模块、第二延迟模块、第二差分转单端模块和第二驱动模块,所述电流模块的输出端连接所述第二延迟模块,所述第二延迟模块的输出端连接所述第二差分转单端模块的输入端,所述第二差分转单端模块的输出端连接所述第二驱动模块的输入端,所述第二驱动模块的输出端连接所述逻辑异或单元的输入端。
6.如权利要求5所述的随机数生成电路,其特征在于:
所述电流模块包括第二十一PMOS管、第二十二PMOS管、第十七NMOS管和第十八NMOS管,第十七NMOS管的栅极和漏极、所述第十八NMOS管的栅极均连接第二电流源,所述第十八NMOS管的漏极连接所述第二十一PMOS管的栅极和漏极、所述第二十二PMOS管的栅极,所述第二十二PMOS管的漏极作为所述电流模块的输出端,用于连接所述第二延迟模块的输入端,所述第二十一PMOS管和所述第二十二PMOS管的源极连接电源电压,所述第十七NMOS管和所述第十八NMOS管的源极接地。
7.如权利要求3或5所述的随机数生成电路,其特征在于:
所述第一延迟模块和/或所述第二延迟模块由偶数个延迟子模块首尾相连组成,并且首个所述延迟子模块的输入端与最后一个所述延迟子模块的输出端交叉连接;
或者,所述第一延迟模块和/或所述第二延迟模块由奇数个延迟子模块首尾相连组成。
8.如权利要求7所述的随机数生成电路,其特征在于:
所述延迟子模块包括第十三PMOS管、第十四PMOS管、第十五PMOS管、第十六PMOS管、第九NMOS管、第十NMOS管、第十一NMOS管和第十二NMOS管,所述第十三PMOS管与所述第十四PMOS管的栅极连接在一起作为所述延迟子模块的一个输入端,所述第十三PMOS管、所述第十四PMOS管、所述第十五PMOS管和所述第十六PMOS管的源极连接在一起后,相应的连接电压转电流模块和电流模块的输出端,所述第十三PMOS管、所述第九NMOS管、所述第十四PMOS管、所述第十NMOS管的漏极、所述第十五PMOS管和所述第十一NMOS管的栅极相互连接,所述第十四PMOS管、所述第十NMOS管的栅极、所述第十五PMOS管、所述第十一NMOS管、所述第十六PMOS管和所述第十二NMOS管的漏极相互连接,所述第十六PMOS管和所述第十二NMOS管的栅极连接在一起作为所述延迟子模块的另一个输入端,所述第九NMOS管、所述第十NMOS管、所述第十一NMOS管和所述第十二NMOS管的源极接地,所述第十三PMOS管与所述第九NMOS管的漏极连接在一起作为所述延迟子模块的一个输出端,所述第十六PMOS管和所述第十二NMOS管的漏极连接在一起作为所述延迟子模块的另一个输出端。
9.一种安全芯片,其特征在于包括如权利要求1~8中任意一项所述的随机数生成电路。

说明书全文

一种随机数生成电路及相应的安全芯片

技术领域

[0001] 本发明涉及一种随机数生成电路,同时也涉及相应的安全芯片,属于数据安全技术领域。

背景技术

[0002] 随机数(也称模拟随机源)主要应用在信息加密设备中,利用其产生不可预测的随机序列,对信息加密起到重要作用。其中,该随机数的随机性和安全性,决定了整个加密算法的安全性。
[0003] 现有生成随机数的实现方式包括基于电阻热噪声的实现方式和亚稳态采样的实现方式。基于电阻热噪声的实现方式,在实际电路设计的过程中,不可避免的一些非理想因素会降低生成随机数的随机性。其中,非理想因素包括:衬底和电源的耦合噪声、放大器的失调和有限的带宽以及1/f噪声的影响。
[0004] 亚稳态采样随机数的实现方式是通过低频时钟对高频随机抖动的时钟采样,得到不确定模拟随机数的输出。由于低频时钟和高频时钟是采用有源晶体管实现的,所以器件存在一定的电流噪声和热噪声,使得在低频振荡器和高频振荡器上产生随机的相位抖动,抖动的大小取决于噪声的大小。为此,亚稳态采样随机数采样减少放大器和电阻等器件的使用,降低引入的噪声,从而提高一部分随机数的随机性。但是,在实际设计的过程中,生成的随机数的随机性能会严重的依赖高速振荡器的随机噪声,如果高速振荡器的随机性能不好,会直接导致生成的随机数的性能变差。

发明内容

[0005] 本发明所要解决的首要技术问题在于提供一种随机数生成电路。
[0006] 本发明所要解决的另一技术问题在于提供一种包括上述随机数的安全芯片。
[0007] 为了实现上述目的,本发明采用下述技术方案:
[0008] 根据本发明实施例的第一方面,提供一种随机数生成电路,包括随机电压生成单元、高速压控振荡单元、高速振荡单元、逻辑异或单元、低速振荡单元和触发单元,所述随机电压生成单元连接所述高速压控振荡单元,所述高速压控振荡单元与所述高速振荡单元连接所述逻辑异或单元,所述逻辑异或单元与所述低速振荡单元连接所述触发单元;
[0009] 利用所述随机电压生成单元为所述高速压控振荡单元提供一个周期固定的随机变化电压,使得所述高速压控振荡单元生成频率相应变化的第一高频时钟信号,输出到所述逻辑异或单元,所述逻辑异或单元将所述第一高频时钟信号与所述高速振荡单元提供的频率固定的第二高频时钟信号进行异或,得到频率随机变化的第三高频时钟信号输出到所述触发单元,所述触发单元将所述低速振荡单元提供的低频时钟信号作为采样时钟采样所述第三高频时钟信号,以提高得到的随机数的随机性。
[0010] 其中较优地,所述随机电压生成单元包括迟滞比较器、限压器、电容、充电和放电开关、第一反相器、第二反相器及第一电流镜像器、第二电流镜像器、第三电流镜像器和第四电流镜像器,所述迟滞比较器的第一和第二输入端连接所述限压器的相应输出端,所述迟滞比较器的第三输入端连接所述电容的一端和所述充电和放电开关的输出端,所述迟滞比较器的第一输出端连接所述第一反相器的输入端,所述第一反相器的输出端连接所述迟滞比较器的第四输入端和所述第二反相器的输入端,所述第二反相器的输出端连接所述充电和放电开关的输入端,所述电容的一端还作为所述随机电压生成单元的输出端,用于连接所述高速压控振荡单元的输入端,所述电容的另一端接地,所述第一电流镜像器一方面连接第一电流源,另一方面连接所述第二电流镜像器和所述第三电流镜像器,所述第二电流镜像器连接所述限压器和所述第四电流镜像器,所述第三电流镜像器和所述第四电流镜像器连接所述充电和放电开关。
[0011] 其中较优地,所述迟滞比较器包括第一PMOS管、第二PMOS管、第三PMOS管、第四PMOS管、第五PMOS管、第七PMOS管、第一NMOS管、第二NMOS管和第三NMOS管,所述第一PMOS管与所述第二PMOS管的源极连接电源电压,所述第一PMOS管与所述第二PMOS管的栅极连接所述第二电流镜像器和所述第四电流镜像器,所述第一PMOS管的漏极连接所述第三PMOS管、所述第四PMOS管和所述第五PMOS管的源极,所述第三PMOS管的栅极连接所述限压器的第一输出端,所述第四PMOS管的栅极连接所述限压器的第二输出端,所述第五PMOS管的栅极连接所述电容的一端和所述充电和放电开关的输出端,所述第三PMOS管的漏极连接所述第七PMOS管的漏极、所述第一NMOS管的栅极和漏极、所述第二NMOS管的栅极,所述第七PMOS管的源极连接所述第四PMOS管的漏极,所述第七PMOS管的栅极连接所述第一反相器的输出端和所述第二反相器的输入端,所述第二NMOS管的漏极连接所述第五PMOS管的漏极和所述第三NMOS管的栅极,所述第三NMOS管与所述第二PMOS管的漏极连接所述第一反相器的输入端,所述第一NMOS管、所述第二NMOS管和所述第三NMOS管的源极均接地。
[0012] 其中较优地,所述高速压控振荡单元包括电压转电流模、第一延迟模块、第一差分转单端模块和第一驱动模块,所述电压转电流模块的输入端连接所述随机电压生成单元的输出端,所述电压转电流模块的输出端连接所述第一延迟模块,所述第一延迟模块的输出端连接所述第一差分转单端模块的输入端,所述第一差分转单端模块的输出端连接所述第一驱动模块的输入端,所述第一驱动模块的输出端连接所述逻辑异或单元的输入端。
[0013] 其中较优地,所述电压转电流模块包括第八NMOS管、第十一PMOS管和第十二PMOS管,第八NMOS管的栅极连接所述随机电压生成单元的输出端,所述第八NMOS管的漏极连接所述第十一PMOS管的栅极和漏极、所述第十二PMOS管的栅极,所述第十二PMOS管的漏极连接所述第一延迟模块的输入端,所述第十一PMOS管和所述第十二PMOS管的源极均连接电源电压,所述第八NMOS管的源极接地。
[0014] 其中较优地,所述高速振荡单元包括电流模块、第二延迟模块、第二差分转单端模块和第二驱动模块,所述电流模块的输出端连接所述第二延迟模块,所述第二延迟模块的输出端连接所述第二差分转单端模块的输入端,所述第二差分转单端模块的输出端连接所述第二驱动模块的输入端,所述第二驱动模块的输出端连接所述逻辑异或单元的输入端。
[0015] 其中较优地,所述电流模块包括第二十一PMOS管、第二十二PMOS管、第十七NMOS管和第十八NMOS管,第十七NMOS管的栅极和漏极、所述第十八NMOS管的栅极均连接第二电流源,所述第十八NMOS管的漏极连接所述第二十一PMOS管的栅极和漏极、所述第二十二PMOS管的栅极,所述第二十二PMOS管的漏极作为所述电流模块的输出端,用于连接所述第二延迟模块的输入端,所述第二十一PMOS管和所述第二十二PMOS管的源极连接电源电压,所述第十七NMOS管和所述第十八NMOS管的源极接地。
[0016] 其中较优地,所述第一延迟模块和/或所述第二延迟模块由偶数个延迟子模块首尾相连组成,并且首个所述延迟子模块的输入端与最后一个所述延迟子模块的输出端交叉连接;
[0017] 或者,所述第一延迟模块和/或所述第二延迟模块由奇数个延迟子模块首尾相连组成。
[0018] 其中较优地,所述延迟子模块包括第十三PMOS管、第十四PMOS管、第十五PMOS管、第十六PMOS管、第九NMOS管、第十NMOS管、第十一NMOS管和第十二NMOS管,所述第十三PMOS管与所述第十四PMOS管的栅极连接在一起作为所述延迟子模块的一个输入端,所述第十三PMOS管、所述第十四PMOS管、所述第十五PMOS管和所述第十六PMOS管的源极连接在一起后,相应的连接电压转电流模块和电流模块的输出端,所述第十三PMOS管、所述第九NMOS管、所述第十四PMOS管、所述第十NMOS管的漏极、所述第十五PMOS管和所述第十一NMOS管的栅极相互连接,所述第十四PMOS管、所述第十NMOS管的栅极、所述第十五PMOS管、所述第十一NMOS管、所述第十六PMOS管和所述第十二NMOS管的漏极相互连接,所述第十六PMOS管和所述第十二NMOS管的栅极连接在一起作为所述延迟子模块的另一个输入端,所述第九NMOS管、所述第十NMOS管、所述第十一NMOS管和所述第十二NMOS管的源极接地,所述第十三PMOS管与所述第九NMOS管的漏极连接在一起作为所述延迟子模块的一个输出端,所述第十六PMOS管和所述第十二NMOS管的漏极连接在一起作为所述延迟子模块的另一个输出端。
[0019] 根据本发明实施例的第二方面,提供一种安全芯片,包括上述的随机数生成电路。
[0020] 本发明所提供的随机数生成电路及相应的安全芯片采用两路独立不同结构的高速压控振荡单元和高速振荡单元,并利用随机电压生成单元为高速压控振荡单元提供随机变化电压,使其生成频率相应变化的第一高频时钟信号,该第一高频时钟信号和与其独立不相关的由高速振荡单元生成的第二高频时钟信号进行异或后,一方面增加了异或后的第三高频时钟信号与低频时钟信号的不相干性,另一方面增加了除了高速压控振荡单元的有源器件引入的电流噪声和热噪声外,还增加了由随机电压生成单元为高速压控振荡单元提供的随机变化电压,作为其控制电压所产生的随机噪声,从而提高了本发明生成的随机数的随机性。附图说明
[0021] 图1为本发明实施例提供的随机数生成电路的原理框图
[0022] 图2为本发明实施例提供的随机数生成电路中,随机电压生成单元的电路原理图;
[0023] 图3为本发明实施例提供的随机数生成电路中,高速压控振荡单元的电路原理图;
[0024] 图4为本发明实施例提供的随机数生成电路中,高速压控振荡单元的每个延迟子模块的电路原理图;
[0025] 图5为本发明实施例提供的随机数生成电路工作的基本时序图;
[0026] 图6为本发明实施例提供的随机数生成电路中,高速振荡单元的电路原理图;
[0027] 图7为本发明实施例提供的随机数生成电路与现有随机数生成电路生成随机数的效果对比图。

具体实施方式

[0028] 下面结合附图和具体实施例对本发明的技术内容做进一步的详细说明。
[0029] 为了解决采用亚稳态采样的实现方式生成随机数时,因过分的依赖高速振荡器的随机噪声而容易出现随机数的随机性变差的问题,如图1所示,本发明实施例提供了随机数生成电路,包括随机电压生成单元1、高速压控振荡单元OSCH_V1、高速振荡单元OSCH_V2、逻辑异或单元2、低速振荡单元OSCL和触发单元3;随机电压生成单元1的输出端连接高速压控振荡单元OSCH_V1的输入端,高速压控振荡单元OSCH_V1与高速振荡单元OSCH_V2的输出端连接逻辑异或单元2的输入端,逻辑异或单元2与低速振荡单元OSCL的输出端连接触发单元3。
[0030] 利用随机电压生成单元1为高速压控振荡单元OSCH_V1提供一个周期固定的随机变化电压,使得高速压控振荡单元OSCH_V1生成频率相应变化的第一高频时钟信号,输出到逻辑异或单元2,逻辑异或单元2将该第一高频时钟信号与高速振荡单元OSCH_V2提供的频率固定的第二高频时钟信号进行异或,得到频率随机变化的第三高频时钟信号输出到触发单元3,触发单元3将低速振荡单元OSCL提供的低频时钟信号作为采样时钟采样第三高频时钟信号,以提高得到的随机数的随机性。
[0031] 具体的说,如图2所示,随机电压生成单元1包括迟滞比较器11、限压器12、电容C0、充电和放电开关13、第一反相器INV1、第二反相器INV2及第一电流镜像器14、第二电流镜像器15、第三电流镜像器16和第四电流镜像器17,迟滞比较器11的第一和第二输入端连接限压器12的相应输出端,迟滞比较器11的第三输入端连接电容C0的一端和充电和放电开关13的输出端,迟滞比较器11的第一输出端连接第一反相器INV1的输入端,第一反相器INV1的输出端连接迟滞比较器11的第四输入端和第二反相器INV2的输入端,第二反相器INV2的输出端连接充电和放电开关13的输入端,电容C0的一端还作为随机电压生成单元1的输出端,用于连接高速压控振荡单元OSCH_V1的输入端,电容C0的另一端接地,第一电流镜像器14一方面连接第一电流源,另一方面连接第二电流镜像器15和第三电流镜像器16,第二电流镜像器15连接限压器12和第四电流镜像器17,第三电流镜像器16和第四电流镜像器17连接充电和放电开关13。
[0032] 如图2所示,迟滞比较器11包括第一PMOS管MP1、第二PMOS管MP2、第三PMOS管MP3、第四PMOS管MP4、第五PMOS管MP5、第七PMOS管MP7、第一NMOS管NM1、第二NMOS管NM2和第三NMOS管NM3;迟滞比较器11的各部分连接关系如下:第一PMOS管MP1与第二PMOS管MP2的源极连接电源电压,第一PMOS管MP1与第二PMOS管MP2的栅极连接第二电流镜像器15和第四电流镜像器17,第一PMOS管MP1的漏极连接第三PMOS管MP3、第四PMOS管MP4和第五PMOS管MP5的源极,第三PMOS管MP3的栅极作为迟滞比较器11的第一输入端,用于连接限压器12的第一输出端,第四PMOS管MP4的栅极作为迟滞比较器11的第二输入端,用于连接限压器12的第二输出端,第五PMOS管MP5的栅极作为迟滞比较器11的第三输入端,用于连接电容C0的一端和充电和放电开关13的输出端,第三PMOS管MP3的漏极连接第七PMOS管MP7的漏极、第一NMOS管NM1的栅极和漏极、第二NMOS管NM2的栅极,第七PMOS管MP7的源极连接第四PMOS管MP4的漏极,第七PMOS管MP7的栅极作为迟滞比较器11的第四输入端,用于连接第一反相器INV1的输出端和第二反相器INV2的输入端,第二NMOS管NM2的漏极连接第五PMOS管MP5的漏极和第三NMOS管NM3的栅极,第三NMOS管NM3与第二PMOS管MP2的漏极连接在一起作为迟滞比较器11的第一输出端,用于连接第一反相器INV1的输入端,第一NMOS管NM1、第二NMOS管NM2和第三NMOS管NM3的源极均接地。
[0033] 如图2所示,限压器12由第一电阻R1与第二电阻R2串联组成。具体的说,第一电阻R1的一端连接第二电流镜像器15,并且第一电阻R1的该端还作为限压器12的第一输出端,用于连接迟滞比较器11的第一输入端,第一电阻R1的另一端于第二电阻R2的一端连接在一起,作为限压器12的第二输出端,用于连接迟滞比较器11的第二输入端,第二电阻R2的另一端接地。
[0034] 如图2所示,充电和放电开关13包括第六PMOS管MP6和第四NMOS管NM4,第六PMOS管MP6和第四NMOS管NM4的栅极连接在一起作为充电和放电开关13的输入端,用于连接第二反相器INV2的输出端,第六PMOS管MP6和第四NMOS管NM4的漏极连接在一起作为充电和放电开关13的输出端,用于连接迟滞比较器11的第三输入端和电容C0的一端,第六PMOS管MP6的源极连接第四电流镜像器17,第四NMOS管NM4的源极连接第三电流镜像器16。
[0035] 如图2所示,第一电流镜像器14包括第六NMOS管NM6和第七NMOS管NM7,第七NMOS管NM7的漏极连接其栅极、第一电流源、第六NMOS管NM6的栅极和第三电流镜像器16,第六NMOS管NM6的漏极连接第二电流镜像器15,第六NMOS管NM6和第七NMOS管NM7的源极接地。第二电流镜像器15包括第九PMOS管MP9和第十PMOS管MP10,第九PMOS管MP9的栅极连接第十PMOS管MP 10的栅极和漏极、第六NMOS管NM6的漏极、第一PMOS管MP1与第二PMOS管MP2的栅极、第四电流镜像器17,第九PMOS管MP9的漏极连接第一电阻R1的一端,第九PMOS管MP9和第十PMOS管MP10的源极连接电源电压。第三电流镜像器16采用第五NMOS管NM5实现,第五NMOS管NM5的栅极连接第六NMOS管NM6的栅极,第五NMOS管NM5的漏极连接第四NMOS管NM4的源极,第五NMOS管NM5的源极接地。第四电流镜像器17采用第八PMOS管MP8实现,第八PMOS管MP8的栅极连接第二PMOS管MP2的栅极,第八PMOS管MP8的漏极连接第六PMOS管MP6的源极,第八PMOS管MP8的源极连接电源电压。通过第一电流镜像器14、第二电流镜像器15、第三电流镜像器16和第四电流镜像器17按照预设比例分别从第一电流源复制所需电流。其中,第一电流源为现有成熟技术,根据电路实际所需电流选取即可,在此不再赘述。
[0036] 随机电压生成单元1的工作原理如下:在随机电压生成单元1中,由限压器12生成第一电压V1和第二电压V2,作为随机电压生成单元1输出的电压的上限和下限,第一PMOS管MP1与第二PMOS管MP2组成电流镜像器,用于从第一电流源按照预设比例复制电流。当电容C0上的电压V3大于第一电阻R1上的第一电压V1时,则迟滞比较器11的第一输出端输出的电压V5为高电平,该电压V5经过第一反相器INV1后输出的电压V6变为低电平,使得第七PMOS管MP7导通,此时迟滞比较器11由第一输入端的第一电压V1自动切换到第二输出端的第二电压V2,同时第二反相器INV2输出的电压V7为高电平,此时第四NMOS管NM4导通,使得电容C0上的电压则通过第五NMOS管NM5提供的放电电流进行泄放,当电容C0上的电压V3降低到小于第二电压V2时,迟滞比较器11的第一输出端输出的电压V5为低电平,该电压V5经过第一反相器INV1后输出的电压V6变为高电平,则将第七PMOS管MP7关闭,此时迟滞比较器11调整到第一输入端的第一电压V1;同时第二反相器INV2输出的电压V7为低电平,使得第六PMOS管MP6导通,通过第八PMOS管MP8提供的充电电流对电容C0进行充电,当电容C0上的电压V3大于第一电压V1时,继续重复上面的工作。最终在电容C0上面就生成了一个周期固定的随机变化电压Vctrl。
[0037] 如图3所示,高速压控振荡单元OSCH_V1包括电压转电流模块30、第一延迟模块31、第一差分转单端模块32和第一驱动模块33;电压转电流模块30的输入端连接随机电压生成单元1的输出端,电压转电流模块30的输出端连接第一延迟模块31,第一延迟模块31的输出端连接第一差分转单端模块32的输入端,第一差分转单端模块32的输出端连接第一驱动模块33的输入端,第一驱动模块33的输出端连接逻辑异或单元2的输入端。
[0038] 电压转电流模块30,用于将随机电压生成单元1提供的随机变化电压Vctrl转换为相应的电流后,并按照预设比例进行复制,得到应随机变化电压Vctrl变化的电流。如图3所示,电压转电流模块30包括第八NMOS管NM8、第十一PMOS管MP11和第十二PMOS管MP12,第八NMOS管NM8的栅极作为高速压控振荡单元OSCH_V1的输入端,用于连接随机电压生成单元1的输出端,第八NMOS管NM8的漏极连接第十一PMOS管MP11的栅极和漏极、第十二PMOS管MP12的栅极,第十二PMOS管MP12的漏极作为电压转电流模块30的输出端,用于连接第一延迟模块31的输入端,第十一PMOS管MP11和第十二PMOS管MP12的源极均连接电源电压,第八NMOS管NM8的源极接地。其中,通过第八NMOS管NM8实现将随机电压生成单元1提供的随机变化电压Vctrl转换为相应的电流,由第十一PMOS管MP 11和第十二PMOS管MP12组成的电流镜像器实现按照预设比例进行复制,得到应随机变化电压Vctrl变化的电流。
[0039] 第一延迟模块31,用于根据第十二PMOS管MP12提供的电流,生成频率相应变化的高频时钟信号。第一延迟模块31可以由偶数个延迟子模块310首尾相连组成,并且首个延迟子模块310的输入端与最后一个延迟子模块310的输出端交叉连接,即首个延迟子模块310的输入端IP连接最后一个延迟子模块310的输出端YP,首个延迟子模块310的输入端IN连接最后一个延迟子模块310的输出端YN。如图3所示,以两个延迟子模块310组成的第一延迟模块31为例,第一个延迟子模块310的输入端IP连接第二个延迟子模块310的输出端YP,第一个延迟子模块310的输入端IN连接第二个延迟子模块310的输出端YN,第一个延迟子模块310的输出端YN连接第二个延迟子模块310的输入端IP,第一个延迟子模块310的输出端YP连接第二个延迟子模块310的输入端IN。
[0040] 第一延迟模块31还可以由奇数个延迟子模块310首尾相连组成,并且首个延迟子模块310的输入端与最后一个延迟子模块310的输出端对应连接,即首个延迟子模块310的输入端IP连接最后一个延迟子模块310的输出端YN,首个延迟子模块310的输入端IN连接最后一个延迟子模块310的输出端YP,如图6示出的3个延迟子模块310的连接方式。
[0041] 如图4所示,延迟子模块310包括第十三PMOS管MP13、第十四PMOS管MP 14、第十五PMOS管MP15、第十六PMOS管MP 16、第九NMOS管NM9、第十NMOS管NM10、第十一NMOS管NM11和第十二NMOS管NM12;第十三PMOS管MP13与第十四PMOS管MP14的栅极连接在一起作为延迟子模块310的一个输入端IN,第十三PMOS管MP13、第十四PMOS管MP 14、第十五PMOS管MP15和第十六PMOS管MP16的源极连接电压转电流模块30的输出端(第十二PMOS管MP 12的漏极),第十三PMOS管MP13、第九NMOS管NM9、第十四PMOS管MP14、第十NMOS管NM10的漏极、第十五PMOS管MP15和第十一NMOS管NM11的栅极相互连接,第十四PMOS管MP14、第十NMOS管NM10的栅极、第十五PMOS管MP15、第十一NMOS管NM11、第十六PMOS管MP16和第十二NMOS管NM12的漏极相互连接,第十六PMOS管MP16和第十二NMOS管NM12的栅极连接在一起作为延迟子模块310的另一个输入端IP,第九NMOS管NM9、第十NMOS管NM10、第十一NMOS管NM11和第十二NMOS管NM12的源极接地。其中,第十三PMOS管MP13与第九NMOS管NM9的漏极连接在一起作为延迟子模块310的一个输出端YP,第十六PMOS管MP 16和第十二NMOS管NM12的漏极连接在一起作为延迟子模块310的另一个输出端YP。
[0042] 其中,第十三PMOS管MP13与第九NMOS管NM9组成一个反相器,第十六PMOS管MP16和第十二NMOS管NM12组成另一个反相器;第十四PMOS管MP14、第十五PMOS管MP15和第十NMOS管NM10和第十一NMOS管NM11组成正反馈的闩,能够加速时钟的上升下降时间。
[0043] 根据高速压控振荡单元OSCH_V1的震荡条件,需要满足各个延迟子模块310形成正反馈形式。以图3示出的两个延迟子模块310组成的第一延迟模块31为例,第一个延迟子模块310的输入端IP1输入为0时,第十六PMOS管MP16导通,则该延迟子模块310的输出端YN1输出为1;第一个延迟子模块310的输入端IN1输入为1,第九NMOS管NM9导通,则输出该延迟子模块310的输出端YP1输出为0。此时第二个延迟子模块310的输入端IP2输入为1,则该延迟子模块310输出端YN2输出为0,第二个延迟子模块310的输入端IN2输入为0,则该延迟子模块310的输出端YP2输出为1。由于第二个延迟子模块310的输出端YN2输出为0,会输入到与其连接的第一个延迟子模块310的输入端IN1上,因此就将第一个延迟子模块310的输入端IN1由1更新为0。同样,第二个延迟子模块310的输出端YP2输出为1,会输入到与其连接的第一个延迟子模块310的输入端IP 1上,使得第一个延迟子模块310的输入端IP1由0更新为1。以此类推,这样高速压控振荡单元OSCH_V1的会不停的振荡,其振荡频率由高速压控振荡单元OSCH_V1里面的第十二PMOS管MP12的电流大小决定。因此,当随机电压生成单元1为高速压控振荡单元OSCH_V1提供随机变化电压时,使得高速压控振荡单元OSCH_V1生成频率相应变化的第一高频时钟信号,相当于增加了高速压控振荡单元OSCH_V1的抖动。
[0044] 第一差分转单端模块32,用于将第一延迟模块31输出的高频时钟信号转换成单端的第一高频时钟信号(如图5所示的高速压控振荡单元OSCH_V1输出的第一高频时钟信号)。如图3所示,第一差分转单端模块32包括第十七PMOS管MP 17、第十八PMOS管MP18、第十三NMOS管NM13和第十四NMOS管NM14;第十七PMOS管MP 17的栅极连接第一延迟模块31的一个输出端,第十八PMOS管MP18的栅极连接第一延迟模块31的另一个输出端,第十七PMOS管MP17的漏极连接第十三NMOS管NM13的栅极和漏极、第十四NMOS管NM14的栅极,第十四NMOS管NM14与第十八PMOS管MP18的漏极连接在一起作为第一差分转单端模块32输出端,用于连接第一驱动模块33的输入端,第十七PMOS管MP17和第十八PMOS管MP18的源极连接电源电压,第十三NMOS管NM13和第十四NMOS管NM14的源极接地。
[0045] 第一驱动模块33,用于对第一差分转单端模块32输出的第一高频时钟信号起到驱动作用,使其快速输出到逻辑异或单元2。如图3所示,第一驱动模块33包括第十九PMOS管MP19、第二十PMOS管MP20、第十五NMOS管NM15和第十六NMOS管NM16;其中,第十九PMOS管MP 19、第十五NMOS管NM15和第二十PMOS管MP20、第十六NMOS管NM16分别组成一个反相器。
[0046] 如图6所示,高速振荡单元OSCH_V2包括电流模块40、第二延迟模块41、第二差分转单端模块42和第二驱动模块43;电流模块40的输出端连接第二延迟模块41,第二延迟模块41的输出端连接第二差分转单端模块42的输入端,第二差分转单端模块42的输出端连接第二驱动模块43的输入端,第二驱动模块43的输出端连接逻辑异或单元2的输入端。其中,高速振荡单元OSCH_V2的结构与高速压控振荡单元OSCH_V1的结构不同之处在于:高速振荡单元OSCH_V2基于电流模块40提供的预设固定电流,生成频率固定的第二高频时钟信号(如图
5所示的高速振荡单元OSCH_V2输出的第二高频时钟信号)。第二延迟模块41、第二差分转单端模块42和第二驱动模块43的结构与原理和高速压控振荡单元OSCH_V1第一延迟模块31、第一差分转单端模块32和第一驱动模块33的结构与原理相同,在此不再赘述。
[0047] 如图6所示,电流模块40包括第二十一PMOS管MP21、第二十二PMOS管MP22、第十七NMOS管NM17和第十八NMOS管NM18;第十七NMOS管NM17的栅极和漏极、第十八NMOS管NM18的栅极均连接第二电流源I0,第十八NMOS管NM18的漏极连接第二十一PMOS管MP21的栅极和漏极、第二十二PMOS管MP22的栅极,第二十二PMOS管MP22的漏极作为电流模块40的输出端,用于连接第二延迟模块41的输入端,第二十一PMOS管MP21和第二十二PMOS管MP22的源极连接电源电压,第十七NMOS管NM17和第十八NMOS管NM18的源极接地。
[0048] 逻辑异或单元2将第一高频时钟信号与第二高频时钟信号进行异或,即这两个时钟信号时序相反时输出高电平,反之输出低电平,从而得到频率随机变化的第三高频时钟信号,如图5所示。
[0049] 本发明中,触发单元3将低速振荡单元OSCL提供的低频时钟信号作为采样时钟采样第三高频时钟信号时,具体是将低频时钟信号的上升沿的时刻对应的第三高频时钟信号的高电平或低电平,作为触发单元3的输出结果,即得到随机数,如图5所示的随机数TRNG。由于将独立不相关的第一高频时钟信号与第二高频时钟信号进行异或后,一方面增加了异或后的第三高频时钟信号与低频时钟信号的不相干性,另一方面增加了除了高速压控振荡单元OSCH_V1的有源器件引入的电流噪声和热噪声外,还增加了由随机电压生成单元1为高速压控振荡单元OSCH_V1提供的随机变化电压,作为其控制电压所产生的随机噪声,因此提高了随机数的随机性。其中,低速振荡单元OSCL(如低速振荡器)与触发单元3(如DFF触发器)为现有成熟技术,在此不再赘述。
[0050] 将本发明实施例提供的随机数生成电路与现有随机数生成方式进行仿真实验,如图7所示,Y_V1为高速压控振荡器生成的随机数,Y_V3为普通的亚稳态采样,生成的随机数,Y_V2为本发明采用的将亚稳态采样和高速压控振荡器组合的方式,生成的随机数。不难发现,本发明所生成的随机数的随机性更好。
[0051] 另外,本发明实施例提供的随机数生成电路可以被用在安全芯片中,以实现识别攻击、密码保护等功能。对于该安全芯片中随机数生成电路的具体结构,在此不再一一详述。
[0052] 本发明所提供的随机数生成电路及相应的安全芯片采用两路独立不同结构的高速压控振荡单元和高速振荡单元,并利用随机电压生成单元为高速压控振荡单元提供随机变化电压,使其生成频率相应变化的第一高频时钟信号,该第一高频时钟信号和与其独立不相关的由高速振荡单元生成的第二高频时钟信号进行异或后,一方面增加了异或后的第三高频时钟信号与低频时钟信号的不相干性,另一方面增加了除了高速压控振荡单元的有源器件引入的电流噪声和热噪声外,还增加了由随机电压生成单元为高速压控振荡单元提供的随机变化电压,作为其控制电压所产生的随机噪声,从而解决因过分的依赖高速振荡器的随机噪声而容易出现随机数的随机性变差的问题,并提高了本发明生成的随机数的随机性。
[0053] 以上对本发明所提供的随机数生成电路及相应的安全芯片进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质内容的前提下对它所做的任何显而易见的改动,都将属于本发明专利权的保护范围。
QQ群二维码
意见反馈