用于随机数产生器的具有磁阻元件的熵源的制作方法

文档序号:6496866阅读:266来源:国知局
用于随机数产生器的具有磁阻元件的熵源的制作方法
【专利摘要】本发明揭示熵源和随机数RN产生器。在一个方面中,低能量熵源包含磁阻MR元件和感测电路。所述MR元件被施加静态电流并且具有基于所述MR元件的磁化而确定的可变电阻。感测电路感测所述MR元件的电阻,并且基于所述MR元件的感测到的电阻提供随机值。在另一方面中,RN产生器包含熵源和后处理模块。熵源包含至少一个MR元件,并且基于所述至少一个MR元件提供第一随机值。所述后处理模块接收和处理所述第一随机值(例如,基于密码散列函数、错误检测码、流密码算法等),并且提供具有改善的随机性特性的第二随机值。
【专利说明】用于随机数产生器的具有磁阻元件的熵源
[0001]本申请案要求2011年9月20日申请的名称为“用于随机数产生器的具有STT-MTJ半导体装置的熵源(ENTROPY SOURCE WITH STT-MTJ SEMICONDUCTOR DEVICE FOR RANDOMNUMBER GENERATOR) ”的第61/536,769号美国临时申请案的优先权,该申请案以全文引用的方式并入本文中。
【技术领域】
[0002]本发明大体上涉及电子电路,且更具体来说涉及用于产生随机值的技术。
【背景技术】
[0003]随机数(RN)产生器广泛用于针对多种应用产生随机值。举例来说,实施密码安全算法的计算机类装置通常需要随机值(通常是随机二进制位)的源。RN产生器可用于向计算机类装置提供随机值以便用于密码安全算法。RN产生器通常也被称作RNG或随机位产生器(RBG)。
[0004]RN产生器可以用熵源来实施,所述熵源可以提供一序列的随机位。熵源可以用一个物理装置来实施,所述物理装置具有在最大程度上可以通过简单的一阶马尔可夫过程建模的状态转移,使得熵质量和相关安全强度可以更容易定量以便确保充足的安全强度。随机位可以从物理装置的一序列的状态转移导出。但是,大多数可以用于熵源的物理装置昂贵、需要高功率并且产生数据较慢。另外,可能将这些物理装置的状态转移建模成简单的马尔可夫过程很难或者不切实际,这可能会使得物理装置的性能更难定量。

【发明内容】

[0005]本文中描述可以基于一个或一个以上磁阻(MR)元件产生随机值的熵源和RN产生器。在一个方面中,低能量熵源可包含MR元件和感测电路。可以向MR元件施加静态电流(并且不施加电流脉冲),并且MR元件可以具有基于MR元件的磁化而确定的可变电阻。静态电流是具有恒定振幅和极性的电流,例如,没有电流脉冲。MR元件可以自发地并且随机地在不同磁化状态之间转移,并且这些转移可能会影响MR元件的电阻。感测电路可以感测MR元件的电阻,并且基于MR元件的感测到的电阻提供随机值。
[0006]在另一方面中,RN产生器可包含熵源和后处理模块。熵源可包含至少一个MR元件,并且可以基于至少一个MR元件提供第一随机值。所述后处理模块可以接收和处理所述第一随机值(例如,基于密码散列函数、错误检测码、流密码算法等),并且提供具有改善的随机性特性的第二随机值。
[0007]在又一方面中,熵源可包含MR单元的阵列和感测电路。MR单元的阵列可以布置成多个行和多个列。每一 MR单元可包括至少一个MR元件。多个字线可以耦合到MR单元的所述多个行。多个选择线可以耦合到MR单元的所述多个列。多个位线也可耦合到MR单元的所述多个列。所述感测电路可以耦合到所述多个选择线,并且可以感测所述阵列中的MR单元的电阻。可以用第一速率选择(例如,以交错方式)和感测阵列中的MR单元,以便用第二速率产生随机值,第二速率可能高于第一速率。
[0008]在又一方面中,篡改检测模块可包含熵源和检测模块。熵源可包含至少一个MR元件,并且可以基于至少一个MR元件提供第一值。检测模块可以接收和处理第一值,并且提供对于熵源的窜改的指示。检测模块可以基于多种准则检测对于熵源的窜改,所述准则例如是:第一值中的“O”的百分比和“ I ”的百分比,或第一值中的“O”游程和“ I ”游程,或第一值中的“O”和“I”的预定模式的出现次数,或第一值的压缩的输出速率等。
[0009]下文更详细地描述本发明的各种方面和特征。
【专利附图】

【附图说明】
[0010]图1展示RN产生器的框图。
[0011]图2A和2B展示低能量熵源的两个设计。
[0012]图3展示高能量熵源的设计。
[0013]图4展示图3中的控制电路执行的过程。
[0014]图5展示具有MR单元阵列的熵源的设计。
[0015]图6A、6B和6C展示MR单元的三个设计。
[0016]图7A到12展示RN产生器的多种设计。
[0017]图13展示篡改检测电路。
[0018]图14展示用于产生随机值的过程。
[0019]图15展示无线装置的框图。
【具体实施方式】
[0020]本文中揭示可以基于一个或一个以上MR元件产生随机值的熵源和RN产生器。MR元件是具有随其磁化而变化的电阻的元件。MR元件可以是磁性隧道结(MTJ)半导体装置、自旋力矩转移磁性隧道结(STT-MTJ)半导体装置或其它某种具有相对于磁化可变的电阻的装置。STT-MTJ是一种MTJ装置,其通过使电流通过装置而被编程/写入(而不是像其它MTJ装置一样用磁场编程)。对熵源使用MR元件(例如,STT-MTJ装置)可以提供某些优点,例如制造起来容易、成本低、性能良好,并且能够对熵和安全强度进行定量。
[0021]熵源和RN产生器可以用于多种电子装置,例如无线装置、蜂窝式电话、智能电话、平板电脑、个人数字助理(PDA)、膝上型计算机、桌上型计算机、迷你笔记本、智能笔记本等。熵源和RN产生器还可用于多种应用,例如密码术、噪声源(例如,用于测试设备)、用于概率逻辑的序列产生(例如,表示随机变量的序列)、蒙特卡洛仿真、优化问题、基因算法等。
[0022]图1展示RN产生器100的设计的框图。在这个设计中,RN产生器100包含熵源110和后处理模块120。熵源110包含一个或一个以上MR元件(例如,一个或一个以上STT-MTJ装置)并且产生第一随机值,所述第一随机值可以是“I”或“O”的随机位。术语“随机”和“不可预测”可以互换使用。在图1中展示的设计中,后处理模块120从熵源110接收第一随机值,并且产生与来自真实随机源的随机值(在统计上)更接近地匹配的第二随机值。模块120进行的后处理可以改善随机性特性。第二随机值可以是二进制值或非二进制值。在图1中未展示的另一设计中,第一随机值可以不加任何后处理直接被提供作为第二随机值。在这个设计中,RN产生器将仅包含熵源110。[0023]在一个方面中,低能量熵源可包含一个或一个以上MR元件,其基于静态电流(例如低DC电流)操作。静态电流也可被称作感测电流,并且可能小于切换MR元件的状态通常需要的电流量。不是将电流脉冲施加到所述一个或一个以上MR元件以诱发电阻变化。而是,由于热噪声和/或其它现象引起的MR元件的电阻变化被检测并且用于产生随机值。对MR元件使用静态电流可以提供多种优点,例如低功耗、简化的电路设计等。低能量熵源使用低能量现象(例如,热噪声)产生熵,而高能量熵源使用较高能量刺激(例如,电流脉冲)产生熵。低能量熵源可以产生合适的数量和质量的熵,所述熵可以与来自高能量熵源的熵相当。
[0024]图2A展示低能量熵源IlOx的示意图,低能量熵源IlOx是图1中的熵源110的一种设计。熵源IlOx包含电阻器210、MR元件220和感测电路230。电阻器210的一个末端耦合到第一参考电压(VKEF1),并且第二末端耦合到节点X。电阻器210还可耦合到供电电压(Vdd)而不是Vkefi电压。MR元件220的一个末端耦合到节点X,并且另一末端耦合到接地电路。感测电路230包含读出放大器240 (例如,比较器)和D触发器250。读出放大器240的非反相输入耦合到节点X,其反相输入接收第二参考电压(Vkef2),并且其输出耦合到触发器250的D输入。触发器250还在其时钟输入处接收时钟,并且在其Q输出处提供第一随机值(例如,随机位)。使用触发器250的优点是触发器的输出的所有转移都与时钟同步。
[0025]MR元件220可包括STT-MTJ装置或其它某种类型的MR元件。STT-MTJ装置是由两个磁性材料层与中间的磁性隧穿层的夹层形成的。两个电导体连接到所述两个磁性材料层。STT-MTJ装置的电阻是可变的,并且取决于所述两个层的相对磁化。所述两个磁性材料层中的一者通常具有固定磁化(自旋极化)并且可被称为固定层。所述两个磁性材料层中的另一者可以切换并且可被称为自由层。即使当没有施加驱动电流时,所述两个层的相对磁化也可以自发地切换(例如,由于热噪声/能量)。STT-MTJ装置的电阻取决于所述两个层的相对磁化。
[0026]在图2A中展示的设计中,使用电阻性分压器来感测MR元件220的电阻。具体来说,节点X处的电压(Vx)取决于电阻器210的固定电阻RpMR元件220的可变电阻R2和施加到电阻性分压器的VKEn电压。Vx电压可以表达为:
[0027]
【权利要求】
1.一种设备,其包括: 磁阻MR元件,其被施加静态电流,并且具有基于所述MR元件的磁化而确定的可变电阻;以及 感测电路,其经配置以感测所述MR元件的所述电阻,并且基于所述MR元件的所述感测到的电阻提供随机值。
2.根据权利要求1所述的设备,所述MR元件包括自旋力矩转移STT磁性隧道结MTJ装置。
3.根据权利要求1所述的设备,所述感测电路包括: 读出放大器,其具有耦合到所述MR元件的第一输入、接收参考电压的第二输入和提供用于产生第一随机值的感测到的值的输出。
4.根据权利要求3所述的设备,其进一步包括: 电阻器,其与所述MR元件串联耦合,并且电阻器与所述MR元件形成电阻性分压器。
5.根据权利要求3所述的设备,其 进一步包括: 第二 MR元件,其耦合到所述读出放大器的所述第二输入。
6.根据权利要求5所述的设备,其中所述MR元件和所述第二MR元件具有不同形状或不同大小或不同厚度或其组合。
7.根据权利要求3所述的设备,其进一步包括: 电流源,其耦合到所述MR元件并且经配置以提供用于测量所述MR元件的所述电阻的所述静态电流。
8.根据权利要求3所述的设备,所述感测电路进一步包括: 触发器,其耦合到所述读出放大器并且经配置以接收所述感测到的值且提供所述随机值。
9.根据权利要求1所述的设备,其进一步包括: 至少一个额外MR元件,其与所述MR元件串联或并联耦合。
10.一种设备,其包括: 熵源,其包括至少一个磁阻MR元件,并且经配置以基于所述至少一个MR元件提供第一随机值;以及 后处理模块,其经配置以接收和处理所述第一随机值,并且提供第二随机值。
11.根据权利要求10所述的设备,其中所述后处理模块经配置以使所述第一随机值成为散列并且提供所述第二随机值。
12.根据权利要求11所述的设备,其中所述后处理模块经配置以基于密码散列函数使所述第一随机值成为散列。
13.根据权利要求10所述的设备,其中每一第二随机值的位的总数大于用于产生所述第二随机值的所有第一随机值的位的总数。
14.根据权利要求10所述的设备,所述后处理模块包括: 多个移位寄存器,其经配置以从包含所述熵源在内的多个熵源接收多个第一随机值序列;以及 散列模块,其经配置以从所述多个移位寄存器接收多个中间值序列,使所述中间值成为散列,并且提供所述第二随机值。
15.根据权利要求14所述的设备,其中每一第一随机值包括一I位值,每一中间值包括一 Q位值,并且每一第二随机值包括一 N位值,其中Q和N各自大于一。
16.根据权利要求10所述的设备,其中所述后处理模块经配置以基于所述第一随机值和错误检测码产生所述第二随机值。
17.根据权利要求16所述的设备,其中所述错误检测码包括循环冗余检查CRC。
18.根据权利要求10所述的设备,所述后处理模块包括: 线性反馈移位寄存器LFSR,其实施产生器多顶式并且经配置以接收所述第一随机值和提供所述第二随机值。
19.根据权利要求10所述的设备,所述后处理模块包括: 多个寄存器,其串联耦合;以及 至少两个组合器,其耦合到所述多个寄存器中的至少两个寄存器,并且经配置以从至少两个熵源接收至少两个第一随机值序列,所述多个寄存器和所述至少两个组合器用至少两个反馈位实施产生器多顶式,并且所述至少两个熵源包含所述熵源。
20.根据权利要求10所述的设备,所述后处理模块包括: 熵累加器,其经配置以接收所述第一随机值并且提供中间随机值;以及 密码模块,其经配置以接收所述中间随机值并且提供第二随机值。
21.根据权利要求10所 述的设备,所述后处理模块包括: 组合器,其经配置以从多个熵源接收多个第一随机值序列且对其进行处理,并且提供所述第二随机值,所述多个熵源包含所述熵源。
22.根据权利要求21所述的设备,所述组合器包括异或XOR电路。
23.根据权利要求21所述的设备,其中所述组合器经配置以对所述多个第一随机值序列中的多个第一随机值执行模M求和,以便获得相应的第二随机值,其中M是大于一的整数。
24.根据权利要求10所述的设备,所述后处理模块包括: 流密码产生器,其经配置以产生所述第二随机值,所述第一随机值更改所述流密码产生器的操作或内部状态。
25.根据权利要求24所述的设备,其中所述流密码产生器经配置以基于流密码算法产生所述第二随机值,所述第一随机值选择所述流密码算法的系数。
26.根据权利要求24所述的设备,其中所述流密码产生器经配置以基于流密码算法产生所述第二随机值,所述第一随机值改变所述流密码产生器的所述内部状态。
27.根据权利要求10所述的设备,其中所述第一随机值包括I位随机值,并且所述第二随机值包括多位随机值。
28.根据权利要求10所述的设备,所述熵源包括: 偏置电路,其经配置以为所述至少一个MR元件提供静态电流;以及 感测电路,其经配置以感测所述至少一个MR元件的电阻,并且基于所述感测到的电阻提供随机值。
29.根据权利要求10所述的设备,所述熵源包括: 电路,其经配置以产生电流或电压脉冲以改变所述至少一个MR元件的状态;以及 感测电路,其经配置以感测所述至少一个MR元件的电阻,并且基于所述感测到的电阻提供随机值。
30.一种设备,其包括: 磁阻MR单元阵列,其布置成多个行和多个列,每一 MR单元包括至少一个MR元件; 多个字线,其耦合到MR单元的所述多个行; 多个选择线,其耦合到MR单元的所述多个列; 感测电路,其耦合到所述多个选择线,并且经配置以感测所述阵列中的所选MR单元的电阻且提供随机值;以及 多个编程源,其耦合到所述多个选择线,并且经配置以提供脉冲以改变所述阵列中的所述MR单元的状态,所述多个编程源包含 第一编程源,当所述所选MR单元要在第一方向上切换时,所述第一编程源耦合到所述所选MR单元;以及 第二编程源,当所述所选MR单元要在第二方向上切换时,所述第二编程源耦合到所述所选MR单元。
31.根据权利要求30所述的设备,其中所述多个编程源经配置以提供电流脉冲或电压脉冲以改变所述阵列中的所述MR单元的所述状态。
32.根据权利要求30所述的设备,其中所述第一和第二编程源中的至少一者经配置以提供基于所述所选MR单元的目标切换概率而确定的可变振幅或可变脉冲持续时间或可变振幅和可变脉冲持续时间两者的脉冲。`
33.根据权利要求30所述的设备,其中所述多个编程源具有单独地配置的脉冲振幅或脉冲持续时间或脉冲振幅和脉冲持续时间两者。
34.根据权利要求30所述的设备,其中所述所选MR单元在单个操作中进行编程,并且在所述单个操作中所述所选MR单元被施加来自所述第一或第二编程源的电流脉冲或电压脉冲。
35.根据权利要求30所述的设备,其中所述所选MR单元在多个操作中进行编程,并且在所述多个操作中的每一者中所述所选MR单元被施加来自所述第一或第二编程源的电流脉冲或电压脉冲。
36.根据权利要求30所述的设备,其中以第一速率选择和感测所述阵列中的所述MR单元以便以高于所述第一速率的第二速率产生随机值。
37.根据权利要求30所述的设备,其中每一MR单元包含串联耦合的多个MR元件。
38.根据权利要求30所述的设备,其中每一MR单元包含并联耦合的多个MR元件。
39.根据权利要求38所述的设备,其中每一MR单元中的所述多个MR元件具有耦合在一起的自由层和也耦合在一起的固定层。
40.根据权利要求30所述的设备,其进一步包括: 至少一个MR单元,其用于为所述感测电路提供参考电压。
41.根据权利要求30所述的设备,其中所述阵列中的所述MR单元包括不同形状或不同大小或不同厚度或其组合的MR元件。
42.—种设备,其包括: 熵源,其包括至少一个磁阻MR元件,并且经配置以基于所述至少一个MR元件提供第一值;以及检测模块,其经配置以接收和处理所述第一值,并且提供对于所述熵源的窜改的指示。
43.根据权利要求42所述的设备,其中所述检测模块经配置以基于所述第一值中的“零”的百分比和“I”的百分比检测对于所述熵源的窜改。
44.根据权利要求42所述的设备,其中所述检测模块经配置以基于所述第一值中的“零”游程和“ I ”游程检测对于所述熵源的窜改。
45.根据权利要求42所述的设备,其中所述检测模块经配置以基于“零”和“I”的预定模式的出现次数检测对于所述熵源的窜改。
46.根据权利要求42所述的设备,其中所述检测模块经配置以执行所述第一值的压缩和基于所述压缩的输出速率检测对于所述熵源的窜改。
47.—种产生随机值的方法,其包括: 向磁阻MR元件施加静态电流,所述MR元件具有基于所述MR元件的磁化而确定的可变电阻; 用施加于所述MR元件的所述静态电流感测所述MR元件的所述电阻;以及 基于所述MR元件的所述感测到的电阻产生第一随机值。
48.根据权利要求47所述的方法,其中所述感测所述MR元件的所述电阻包括将所述MR元件的所述电阻与参考值比较以获得感测到的值,并且其中所述产生所述第一随机值包括锁存所述感测到的值以获得所述第一随机值。
49.根据权利要求47所述的方法,其进一步包括: 处理所述第一随机值以获得第二随机值。
50.根据权利要求49所述的方法,其中所述处理所述第一随机值包括基于密码散列函数、错误检测码或流密码算法中的至少一者处理所述第一随机值。
51.根据权利要求47所述的方法,其进一步包括: 通过感测包含所述MR元件在内的多个MR元件的电阻而产生多个第一随机值序列;以及 处理所述多个第一随机值序列以获得第二随机值。
52.根据权利要求47所述的方法,其进一步包括: 检测对于所述MR元件的窜改。
53.—种设备,其包括: 用于向磁阻MR元件施加静态电流的装置,所述MR元件具有基于所述MR元件的磁化而确定的可变电阻; 用于用施加于所述MR元件的所述静态电流感测所述MR元件的所述电阻的装置;以及 用于基于所述MR元件的所述感测到的电阻产生第一随机值的装置。
54.根据权利要求53所述的设备,其进一步包括: 用于处理所述第一随机值以获得第二随机值的装置。
55.根据权利要求53所述的设备,其进一步包括: 用于通过感测包含所述MR元件在内的多个MR元件的电阻而产生多个第一随机值序列的装置;以及 用于处理所述多个第一随机值序列以获得第二随机值的装置。
56.一种计算机程序产品,其包括:计算机可读媒体,其包括: 用于致使至少一个处理器向磁阻MR元件直接施加静态电流的代码,所述MR元件具有基于所述MR元件的磁化而确定的可变电阻; 用于致使所述至少一个处理器用施加于所述MR元件的所述静态电流直接感测所述MR元件的所述电阻的代码;以及 用于致使所述至少一个处理器基于所述MR元件的所述感测到的电阻直接产生第一随机值的代码。`
【文档编号】G06F7/58GK103890712SQ201280051736
【公开日】2014年6月25日 申请日期:2012年9月17日 优先权日:2011年9月20日
【发明者】戴维·M·雅各布森, 朱晓春, 吴文清, 肯德里克·海·良·袁, 升·H·康 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1