CN111406248A - 用磁性隧道结生成随机位流 - Google Patents

用磁性隧道结生成随机位流 Download PDF

Info

Publication number
CN111406248A
CN111406248A CN201980005957.6A CN201980005957A CN111406248A CN 111406248 A CN111406248 A CN 111406248A CN 201980005957 A CN201980005957 A CN 201980005957A CN 111406248 A CN111406248 A CN 111406248A
Authority
CN
China
Prior art keywords
pulse
perturbation
probability
mtj
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
Application number
CN201980005957.6A
Other languages
English (en)
Other versions
CN111406248B (zh
Inventor
W·H·崔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SanDisk Technologies LLC
Original Assignee
SanDisk Technologies LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of CN111406248A publication Critical patent/CN111406248A/zh
Application granted granted Critical
Publication of CN111406248B publication Critical patent/CN111406248B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/45Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of non-linear magnetic or dielectric devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/161Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect details concerning the memory cell structure, e.g. the layers of the ferromagnetic memory cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1653Address circuits or decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1695Protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B61/00Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices
    • H10B61/20Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices comprising components having three or more electrodes, e.g. transistors
    • H10B61/22Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices comprising components having three or more electrodes, e.g. transistors of the field-effect transistor [FET] type
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N50/00Galvanomagnetic devices
    • H10N50/80Constructional details
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N50/00Galvanomagnetic devices
    • H10N50/10Magnetoresistive devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Hall/Mr Elements (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

本公开提出了采用磁性隧道结(MTJ)元件的真随机数生成(TRNG)电路,所述MTJ元件可以响应于电脉冲的施加而概率性改变磁化状态。一些实施方式包括脉冲发生器,所述脉冲发生器将扰动序列施加到所述MTJ元件。所述MTJ元件响应性产生与磁化状态的变化有关的随机化输出。包括了概率补偿器,所述概率补偿器监测所述随机化输出中的测量概率与目标概率的偏差。所述概率补偿器作出对所述扰动序列的调整,以影响所述MTJ元件的所述磁化状态的概率性变化并使所述测量概率在与所述目标概率的预先确定的偏差内。

Description

用磁性隧道结生成随机位流
技术领域
本公开的各方面涉及随机数生成电路和系统的领域。
背景技术
就安全通信、加密方案、稳健的数据存储、以及其他技术领域来说,随机数生成已经成为现代技术的重要部分。依赖于随机数生成器的许多系统实际上采用所谓的伪随机数生成器。伪随机数生成器(PRNG),也被称为确定性随机数生成器,产生近似真随机性的数字串。尽管这些方案不是真随机的,但是它们足以在安全、加密等领域中满足许多应用的需要。然而,由这些PRNG生成的数字仍在一定程度上是确定性的,并且因此已经开发了基于硬件的随机数生成电路。
硬件随机数生成器(也被称为真随机数生成器(TRNG))依赖于具有自然随机成分的物理性质或过程。从这些硬件系统产生的随机输出更接近于真随机化输出。因此,TRNG用于其中期望更高的安全性和更少的确定性随机数的应用中。
已经尝试将磁性隧道结(MTJ)布置用于硬件TRNG中。MTJ使用隧道磁电阻(TMR)操作,TMR是磁阻效应。MTJ通常由两个铁磁体组成,该两个铁磁体由薄绝缘体分开,电子可以通过该薄绝缘体量子力学地从一个铁磁体隧穿到另一个铁磁体中。在存在热噪声的情况下,可以观察到因输入电流的流动而造成的MTJ的切换行为本质上是随机的。然而,在MTJ间的制造差异和随机行为差异可能会对这些元件在TRNG系统中的表现造成限制。此外,随机位流可能仍要求长时间帧才能生成多数字位随机数,从而导致在上文所讨论的各种应用中使用的整体TRN过程较慢。
概述
提出了采用磁性隧道结(MTJ)元件的随机数生成电路,该MTJ元件可以响应于电脉冲的施加而概率性改变磁化状态。一些实施方式包括脉冲发生器,该脉冲发生器将扰动序列施加到MTJ元件。MTJ元件响应性产生与磁化状态的变化有关的随机化输出。包括了概率补偿器,该概率补偿器监测随机化输出中的测量概率与目标概率的偏差。概率补偿器作出对扰动序列的调整,以影响MTJ元件的磁化状态的概率性变化并使测量概率在与目标概率的预先确定的偏差内。
附图说明
参考以下附图可以更好地理解本公开的许多方面。附图中的部件未必按比例绘制,而是将重点放在清楚地示出本公开的原理上。此外,在附图中,相似的附图标记贯穿若干视图表示对应的部分。尽管结合这些附图描述了若干实施方案,但是本公开不限于本文所公开的实施方案。相反,其旨在涵盖所有另选方案、修改和等同物。
图1示出了示例性随机数生成系统。
图2示出了随机数生成系统的示例性操作。
图3示出了随机数生成系统中的示例性概率补偿。
图4示出了随机数生成系统的示例性输出。
图5示出了随机数生成电路的示例性阵列。
图6示出了随机数生成电路的示例性控制操作。
图7示出了磁性隧道结元件的示例性状态操作。
具体实施方式
本文讨论了采用具有概率性磁化状态切换性质的磁性隧道结(MTJ)元件的各种增强随机数生成器电路和布置。还讨论了各种增强支持电路、互连和控制系统。在本文所讨论的随机数生成器电路中,包括了至少一个MTJ元件以及用于驱动MTJ元件以产生随机位值、随机位流或随机位向量的电路。采用了概率补偿器,该概率补偿器可以补偿在MTJ元件间的差异、以及补偿随时间的漂移和其他因素。概率补偿器还使随机数生成器电路在概率目标内,诸如以形成随机数生成配置。当与概率补偿器一起进行部署时,随机数生成电路生成独立、不可预测、不确定且非定期的随机数。除其他应用之外,这些随机数可以用于各种应用中,诸如生成加密密钥和密文以用于安全数据存储操作和安全通信中。而且,可以形成单独的随机数生成器电路的大的并行阵列(在本文中被称为随机位流生成器电路),其有利地提供比单一随机数生成器电路更快的随机数生成。
如本文所用,磁性隧道结元件或MTJ元件是电路的每个部件,该部件由至少两层铁磁材料组成,该至少两层铁磁材料层由薄绝缘体分开,电子可以通过该薄绝缘体从一个铁磁层隧穿到另一个铁磁层中。MTJ元件的一个铁磁层可以被称为钉扎层,该钉扎层具有固定磁化状态,而MTJ元件的另一个铁磁层包括磁化状态可变化的自由层。包括分开两个铁磁层的薄绝缘体的中间层可以由氧化物材料或其他合适的电绝缘体形成。可以形成电端子以将MTJ元件的自由层和钉扎层交接到电路中的其他部件,该电端子在本文中被称为自由层端子和钉扎层端子。
自旋传递扭矩(STT)MTJ元件是MTJ元件的一种示例性布置,其可以用于随机数生成器电路中。STT在本文中是指其中自旋极化电流可逆地切换铁磁层的磁化状态、即上述自由层的磁化状态的器件。在存在热噪声的情况下,可以观察到因所施加的扰动脉冲流过相关联的钉扎层而造成的MTJ元件的自由层的切换行为本质上是随机的,并且在MTJ元件中切换磁化状态的概率随所施加的扰动脉冲的量值或持续时间而增大。MTJ元件的垂直或平行布置两者都可以被采用,该MTJ元件的垂直或平行布置是指一种类型的磁性各向异性,该类型的磁性各向异性与MTJ元件内的磁矩相对于对应半导体衬底的表面的优选对准方向相关联。
单独的随机位流生成器电路各自产生一系列随机位值(在本文中被称为随机位流)。这些单独的随机位流响应于将扰动序列循环地施加到单独的随机位流生成器电路的相关联的MTJ元件而产生。在用于产生单一随机数的示例性扰动序列中,扰动电路施加初始复位电压,该初始复位电压大至足以迫使MTJ元件进入复位状态。在复位电压之后,扰动电路以相反极性施加较小扰动电压,从而以目标50%概率引起在MTJ元件中的自旋传递扭矩(STT)切换。然后,扰动电路以与复位电压相同的极性将小的读取电压施加到MTJ元件以产生MTJ元件的读出的分辨状态。在单一随机位流生成器电路的情况下的n位随机数可能要求将“n”个扰动序列施加到随机位流生成器电路。还可以形成并联电路布置以提高随机数生成速度。当采用“m”级别的并行随机位流生成器电路时,随机数生成速度提高了“m”倍。因此,当使用并行布置来生成n位随机数时,可以采用“n”/“m”个扰动序列。
然而,在存在MTJ元件变化的情况下,每个扰动脉冲都不能保证阵列中采用的所有的MTJ元件或单独的MTJ元件随时间推移的50%概率。即使每个扰动脉冲采用类似的特性(诸如匹配的脉冲宽度或脉冲振幅),情况也可能如此。有利地,在本文的示例中,概率补偿电路用作每个单独的随机位流生成器电路的控制环路。该概率补偿电路可以调整提供到MTJ元件的参考电位以在所施加的扰动序列下校准MTJ元件的磁化切换行为。
可以以各种周期性施加概率补偿过程,诸如一次调整、在预先确定的时间段之后进行的周期性调整、或用于补偿所生成的每一随机位值的“实时地”进行的调整。一次调整可以在制造测试过程期间进行,并且可以补偿制造公差、可制造性问题、以及可能在相关联的电路中变化但在初始时间帧之后仍保持相对稳定的其他特性。周期性调整可以在随机数生成器电路的每次通电、起动或引导过程时进行,并且可以解决因集成电路的固有寿命限制而造成的各种随时间推移的电路退化,诸如MTJ单元退化。实时调整可以以快速周转时间进行,诸如比单一位生成时间更快的校准周转时间。实时调整可以补偿短期瞬态影响,诸如热瞬态、周围噪声环境、以及其他快速变化瞬态。实时补偿可以补偿所生成的每一随机位值,或补偿预先确定量的随机位值。
本文所讨论的随机数生成器电路还可以采用包括对应MTJ元件的单独的随机位流生成器(RBG)电路的多通道阵列,并且提供增强操作和随机数生成器功能性,同时具有可扩展且可选择的速度、易于制造、以及比其他先前方法更低的切换电流。此外,可以将在本文中采用MTJ元件的随机数生成器电路组装成致密水平阵列和竖直堆叠。这些竖直堆叠允许部署在多层磁性随机存取存储器(MRAM)配置中,该MRAM配置可以将数据存储MTJ元件与随机数生成器电路中采用的MTJ元件组合在一起。以此方式,可以从半导体衬底构建嵌入在MRAM阵列中的随机数生成器电路的高密度堆叠。可以在同一半导体衬底上形成各种互连和控制逻辑,从而允许在紧凑集成电路中建立大型集成存储器和随机数生成器电路。此外,MRAM阵列控制电路(诸如地址解码器、感测放大器、位线、字线、以及其他电路/互连)可以是多功能的,以处理随机数生成器布置和数据存储布置两者。
图1被呈现为随机数生成器系统的第一示例。图1是示出随机数生成器系统100的系统图。系统100包括一个或多个随机位流生成器(RBG)电路110-112、脉冲发生器120、以及输出电路150。来自随机位流生成器电路110-112的位流输出通过相关联的链路164-166输出,该位流输出也可以提供到输出元件150。当采用时,输出元件150在链路170处传输随机数输出,该随机数输出包括由多个并行随机位流生成器电路的位流形成的组合位向量输出。链路170包括用于呈现为系统100的电路的电输出节点。
如本文所论述,随机数可以包括由一个或多个位组成的数字的数字或二进制表示。如本文所讨论,位流包括一系列位或位串。当位流由相关联的RBG电路产生时,该位流在本文中被称为随机位流。来自一个或多个RBG电路的位流可以组合以形成位向量。因此,本文所讨论的术语随机位流是指由单一RBG电路产生的一系列位或位串,而本文所讨论的术语随机位向量是指多数字位随机数。本文所讨论的随机位向量通常通过组合多于一个RBG电路的输出或单一位流的所选择的部分来形成。
每个随机位流生成器(RBG)电路110-112(在本文中被称为RBG 110-112)包括MTJ元件130、概率计算器141、电压偏移电路142、以及感测放大器143。概率计算器141和电压偏移电路142包括概率补偿器140,在每个RBG电路110-112中都包括了该概率补偿器。每个RBG电路的输入耦合到脉冲发生器120的脉冲输出端子121。扰动序列由脉冲发生器通过脉冲输出端子121来施加到相关联的MTJ元件,该脉冲输出端子耦合到MTJ元件130的自由层端子134。MTJ元件130的自由层端子134还耦合到感测放大器143的感测输入。感测放大器143的参考端子耦合到参考电压VR,该参考电压可以是与VOFFSET不同的电压。MTJ元件130的钉扎层端子135耦合到电压偏移电路142的参考电压输出163。参考电压输出163在本文中被称为VOFFSET
在操作中,多个随机位流生成器以大体上并行的方式部署在脉冲发生器120与输出元件150之间,以提供“m”个并行随机位流生成器。多个随机位流生成器在另外的RBG电路(当采用时)中被称为RBG电路110-112。在图1的示例中,RBG电路110-112各自产生随机位流输出。这些位流输出可以由另外的电路和系统单独地采用,或可以由输出元件150组合成多数字位随机数,以通过链路170呈现。任选的寄存器或存储器元件可以包括在输出元件150中,以在通过链路170传输之前存储一个或多个随机数输出。
如上所述,RBG电路110-112中的每个包括对应MTJ元件130。这些MTJ元件可以响应于由相关联的脉冲发生器120施加的扰动脉冲而改变磁化状态。MTJ元件130的磁化状态变化可以被视为随机或概率性过程,其至少受扰动脉冲的脉冲宽度和脉冲振幅特性的影响。脉冲发生器120各自基于目标概率(诸如对于真随机数生成为50%概率)来确定对应MTJ元件130的扰动序列。扰动序列通常包括三个阶段或操作,即复位阶段、扰动阶段和读取阶段,每个阶段都有伴随脉冲信号被施加到相关联的MTJ元件。在扰动阶段期间施加的扰动脉冲的特性由脉冲发生器120至少基于MTJ元件130的目标概率和特性来确定。在图1中,这些脉冲针对RBG电路110示出以举例说明针对RBG电路110-112中的任一个的脉冲。读取脉冲和复位脉冲以第一方向或极性施加到MTJ元件130,而扰动脉冲以第二方向或极性施加到MTJ元件130,第二方向或极性与第一方向的方向或极性相反。
以RBG电路110为例,由脉冲发生器120施加到MTJ元件130的读取脉冲可以指示在链路160上的当前磁化状态。感测放大器143可以感测当前磁化状态并通过链路164产生反映MTJ元件130的磁化状态的输出。由于MTJ元件130根据至少MTJ元件的所施加的扰动脉冲和随机性质两者来改变磁化状态,因此针对MTJ元件130产生的输出可以针对每个所施加的扰动序列而变化。因此,在施加扰动序列的至少一个读取脉冲部分之后,在链路164处产生的位流输出对应于MTJ元件130的磁化状态。如上所述,输出元件150可以被配置为合并、级联或以其他方式组合来自许多RBG电路的位流输出以通过链路170产生包括n位向量的随机数输出。
重复地施加与读取脉冲和对应复位脉冲交替的扰动脉冲产生每个RBG电路的一系列随机位输出,并且在一些示例中产生系统100的随机位向量输出。然而,每个MTJ元件和对应RBG电路的位流输出可能无法实现目标概率。与目标概率(诸如50%概率)的偏差可能导致下游应用不太有效的非随机或确定性输出。这些偏差可能因由脉冲发生器120施加的脉冲的变化、热变化和噪声、在MTJ元件间的特性差异、包括MTJ元件的每个电路元件的制造公差、电或磁性瞬变效应、或其他因素而造成。可以通过作出对至少施加到MTJ元件的参考电压的调整来影响RBG电路的MTJ元件的磁化状态变化的实际测量概率。
为了补偿这些偏差中的至少一些,图1中提供了概率补偿器。概率补偿器140包括反馈电路,该反馈电路可以监测由RBG电路产生的位流输出以确定由RBG电路输出的位流的当前概率。该概率由概率计算器141计算,该概率计算器通过链路161监测感测放大器143的输出,该输出指示MTJ元件130的磁化状态。一旦确定概率,该概率可能跨越链路161的若干样本或RBG电路的位流输出的周期,概率计算器141便通过概率输出端子162产生概率偏差指示符。概率输出端子162包括在概率计算器141与电压偏移电路142之间的电链路。电压偏移电路142通过概率输出端子162接收该概率指示符并产生电压偏移(VOFFSET),该电压偏移更改在节点163处施加到MTJ元件130的钉扎层端子135的参考电位。VOFFSET的这种更改通过更改施加到MTJ元件130的参考电位来更改施加到相关联的MTJ元件的扰动脉冲的有效振幅。因此,VOFFSET调整切换MTJ元件130的磁化状态的概率。在一些示例中,可以省略概率补偿器140以提供未补偿的位流输出或未补偿的并行位流输出。
尽管通常采用50%目标概率来形成真随机数生成器,但是可以使用本文所讨论的电路和系统来选择其他目标概率。目标概率可在概率范围内选择。可以通过更改所施加的扰动序列的特性或通过作出对VOFFSET的调整来调整目标概率。概率调整电路(诸如概率补偿器140)可以监测在MTJ元件的磁化状态间测量概率与目标概率的偏差。概率补偿器140可以监测预先确定量的随机位流或位向量输出以确定测量概率。然后,概率补偿器140发起对扰动序列的调整。一旦确定测量概率,则概率补偿器140可以确定使当前概率在目标概率的预先确定的偏差内所需的对所施加的扰动序列或VOFFSET的调整。概率补偿器140可以将对调整的指示提供到电压偏移电路142或提供到脉冲发生器120以实施调整。
当指示对扰动序列的调整时,脉冲发生器120可以作出至少对扰动脉冲的调整,以影响MTJ元件的磁化状态的概率性变化并使测量概率在目标概率的预先确定的偏差内。脉冲发生器120通过至少更改与将扰动脉冲施加到多个单位随机位流生成器中的MTJ元件相关联的脉冲振幅和脉冲宽度中的一个或多个来作出对扰动脉冲的调整。尽管为了清楚起见在图1中未示出,但是脉冲发生器120可以具有可包括输入电压的输入端子,该输入端子设置扰动脉冲的脉冲宽度和脉冲振幅中的至少一个来至少实现对应MTJ元件的目标概率的初始近似。
由于每个MTJ元件在特性、制造公差、瞬态效应和其他因素上可以不同,因此单一扰动脉冲宽度/振幅选择或调整可能不会在所有的MTJ元件上产生目标概率。因此,脉冲发生器120可以产生针对在多个单位随机位流生成器中采用的所有的MTJ元件上的目标概率的“粗略”调整。可以使用本文的VOFFSET调整技术作出微调调整,以单独地调整每个MTJ元件切换行为来符合目标概率。当指示对VOFFSET的这些微调调整时,电压偏移电路142可以调整施加到多个单位随机位流生成器中的MTJ元件的参考电压。有利地,尽管在MTJ元件间存在差异,但是对于所有的MTJ元件都可以实现该目标概率。
现在转到对图1的元件的进一步讨论,本文所讨论的控制元件中的每个可以由分立电路和逻辑组成,或可以包括结合到处理系统、微处理器中的集成部分。然而,针对本文的示例,讨论了示例性分立电路。MTJ元件130通常是分立元件或形成在诸如在MRAM或其他设备中的MTJ元件阵列间。
脉冲发生器120包括双向脉冲发生和递送电路。脉冲发生器120具有相关联的脉冲输出端子121,电压或电流脉冲通过该相关联的脉冲输出端子传输。脉冲发生器120包括处理或逻辑电路,以基于目标概率来确定通过脉冲输出端子121输出的脉冲宽度和脉冲振幅。该目标概率可以被硬编码或硬接线到脉冲发生器120中,或可以替代地包括到脉冲发生器120的控制输入(为了清楚起见在图1中未示出)。由脉冲发生器120产生的脉冲包括具有特定持续时间、振幅、方向或极性的电压脉冲或电流脉冲。可以将各种控制信号呈现到脉冲发生器120以发起包括复位脉冲、读取脉冲和扰动脉冲的扰动序列。在脉冲发生器120中可以包括一个或多个切换元件,诸如晶体管或传输栅极,以在相关联的操作阶段期间选择性地提供各种脉冲。
每个磁性隧道结(MTJ)元件130包括自旋传递扭矩(STT)MTJ元件,该STT MTJ元件具有可更改的磁化状态。每个MTJ元件130包括设置在薄绝缘层132的相对侧上的第一铁磁层131和第二铁磁层133。每个MTJ元件的第一铁磁层131包括由铁磁材料组成的自由铁磁层(在本文中被称为自由层),该自由铁磁层准许对应铁磁材料的磁矩响应于电磁力而改变取向。磁矩取向的这种变化在本文中被称为磁化状态,其相对于每个MTJ元件的第二铁磁层133改变。该第二铁磁层133在本文中被称为钉扎层,但是可以使用其他通用术语,诸如参考层或固定层。每个MTJ元件的钉扎层是铁磁材料层,即使在可能改变自由层的状态的电磁力的影响下,该铁磁材料层将对应铁磁材料的磁矩保持在预先确定的或固定状态下。当自由层和钉扎层在相同磁化状态下时,则认为MTJ元件在并行状态(P)下。当自由层和钉扎层在不同磁化状态下时,则认为MTJ元件在反并行状态(AP)下。本文所讨论的MTJ元件的可更改的磁化状态可以在两种状态(即,并行状态和反并行状态)间改变。
由于MTJ元件的概率性行为,扰动脉冲向MTJ元件的每个特定施加可以(或可以不)改变扰动元件的磁化状态。MTJ元件中存在的热噪声以及相关联的扰动脉冲电流或电压中的热噪声变化可能会向MTJ元件的磁化状态变化行为添加概率性或随机变化。扰动脉冲的性质(诸如振幅/量值和持续时间/宽度)可能会影响相关联的MTJ元件的概率性或随机切换行为。因此,可以执行重复的扰动或“写入”尝试,之后进行对应读取和复位尝试,以产生MTJ元件的一系列磁化状态变化。在本文的示例中,除其他概率之外,扰动脉冲宽度和振幅通常由脉冲发生器120根据目标概率(诸如50%概率)确定。
每个MTJ元件130还具有对应端子,外部电路可以使用该对应端子来施加脉冲和参考电压。具体地,每个MTJ元件130具有自由层端子134,该自由层端子将MTJ的自由层131电耦合到电节点或电路链路。每个MTJ元件130还具有钉扎层端子135,该钉扎层端子将MTJ的钉扎层133电耦合到电节点或电路链路。通常,钉扎层端子135耦合到可调整的参考节点,而自由层端子134耦合到脉冲发生器,以施加电压或电流脉冲。
可以包括感测放大器143,该感测放大器感测相对于对应参考电压VR的电压或电流变化。感测放大器143的感测端子耦合到链路160,并且感测放大器143的参考端子耦合到VR或接地电压。感测放大器143产生表示MTJ元件130的磁化状态的电压。响应于由脉冲发生器120产生的每个读取脉冲,在链路160上的信号就对应于MTJ元件130的磁化状态。MTJ元件130的磁化状态可以通过响应于由脉冲发生器120施加到MTJ元件130的读取脉冲而在链路160上产生的电压或电流变化来指示。感测放大器143可以检测到可能包括电压尖峰或电流尖峰的这些电压变化或电流变化,并且产生呈所选择的信号格式的输出。该所选择的格式可以包括指示MTJ元件130的当前磁化状态的二进制位流输出表示的逻辑电平或电压范围。该所选择的格式可以替代地仅指示磁化状态何时改变,由此当MTJ元件130将状态从初始状态改变为所得状态时,感测放大器143可以产生改变逻辑电平的位流输出。
概率计算器141包括概率计算元件和概率输出端子162。在该示例中,概率计算元件包括被配置为监测在链路161/164上的位流输出并确定与位流输出相对应的概率的电路。除其他持续时间之外,可以监测在预先确定的时间段、或预先确定量的样本内的位流输出。概率计算器141可以对位流输出中指示的变化求和并对在一定量的样本内的和求平均,以确定位流输出表现出的概率。除其他元件之外,概率计算器141可以包括由求和电路、求平均电路、或输出结果组合和存储电路形成的求平均元件。除其他电路之外,求和电路或求和元件可以包括被配置为产生求和输出的逻辑求和块、逻辑加法器、算术电路或微处理器电路。概率计算器141还可以包括用于位流输出的二进制计数电路,该二进制计数电路可以包括各种逻辑电路,诸如逻辑门、触发器、移位寄存器等。另选地,位流计数器可以包括带有用于对MTJ元件的磁化状态的变化进行计数的操作指令的微处理器电路或系统。
电压偏移电路142包括电压偏移发生器和输出端子163。输出端子包括产生可调整的参考电位的电节点。电压偏移电路142可以包括电压电平移位电路、电压偏移电路、运算放大器、感测放大器、参考缓冲器、以及其他电路。电压偏移发生器产生针对相关联的MTJ元件的VOFFSET调整作为耦合到MTJ元件的参考电位。可以在参考端子163上提供可调整的参考电压。电压偏移发生器还包括逻辑电路或其他处理电路,以将呈现在概率输出端子162上的概率指示符或概率偏差指示符转换为电压偏移。然后,电压偏移电路142在链路163上实现电压偏移。
输出元件150具有一个或多个输入,该一个或多个输入耦合到任何数量的RBG电路(例如,图1中的RBG电路110-112)的位流输出。输出元件150还为系统100提供数字输出,由图1中的链路170指示。在一些示例中,输出元件150包括级联元件以将若干并行输入呈现为组合输出,或包括串行器电路以将若干并行输入呈现为串行输出。除存储表示一个或多个随机数输出以通过链路170呈现的多位向量的元件之外,输出元件150可以包括存储电路、寄存器、以及存储器元件。可以包括寄存器或存储器元件的一个或多个等级或级,以存储与一个或多个随机数生成循环相对应的多位向量。输出节点还由输出元件150提供。如本文所讨论,输出节点包括电节点,其呈现并传输由一个或多个随机位流生成器电路110-112产生的随机数。在图1中,链路170包括系统100的输出节点。
为了进一步描述图1的元件的操作,在图2中呈现了流程图200。图2示出了随机数生成电路的示例性操作。尽管在图1的上下文中讨论了图2的操作,但是可以将类似的操作施加到本文所呈现的其他图中出现的系统和电路。图2的操作可以由图1的单独的元件来控制,但是可以替代地采用集中式或分布式控制系统。
在图2中,脉冲发生器120将扰动序列施加(201)到磁性隧道结(MTJ)元件,诸如图1的MTJ元件130。脉冲发生器120基于要为MTJ元件130实现的目标切换概率来确定将以重复或循环方式施加到MTJ元件的扰动序列的特性。具体地,可以根据目标概率(诸如50%切换概率或其他量度)来选择扰动脉冲宽度和振幅。一旦确定扰动脉冲的脉冲宽度/持续时间和振幅,脉冲发生器120便将扰动序列(其包括扰动脉冲)施加到随机位流生成器块,诸如RBG电路110-112,以产生相关联的MTJ元件130的磁化状态变化。应注意,可以选择脉冲宽度作为用于根据目标概率来调整扰动脉冲的唯一特性,而脉冲振幅在固定级别上产生。在其他示例中,可以根据目标概率来调整脉冲振幅,或脉冲宽度和脉冲振幅的组合。
在图1的RBG电路110中,在被复位为初始磁化状态之后,MTJ元件130响应于扰动脉冲施加的每个循环而概率性改变磁化状态。响应于每次施加扰动脉冲,MTJ元件130可以改变或可以不改变磁化状态。尽管扰动脉冲的特性影响MTJ元件130的概率性切换行为,但是MTJ元件130仍表现出随机行为,其中切换的概率受扰动脉冲的特性的影响。由于扰动脉冲的特性部分地基于目标切换概率来确定,则每个MTJ元件的切换行为平均而言将表现出接近目标切换概率的磁化状态变化。
感测放大器143产生(202)由MTJ元件130的磁化状态组成的随机位流输出。在相关联的读取阶段期间从MTJ元件130读取磁化状态变化,并且感测放大器143被配置为感测MTJ元件130的磁化状态变化。具体地,磁化状态的指示将在MTJ元件130的自由层端子134处产生到链路160上,并且感测放大器143可以检测这些指示。感测放大器143可以以所期望的信号格式诸如所期望的逻辑电平或电压电平在链路161/164上产生另外的指示。
每个状态变化都可以在链路161/164上由“位”指示。在第一示例性输出类型中,仅磁化状态的变化响应于将读取脉冲施加到MTJ元件130而由感测放大器143检测到。感测放大器143可以被配置为在检测到磁化状态的变化时在链路161/164上产生第一指示,并且在没有检测到变化时保持在先前输出状态中。在该第一示例性输出类型中,随机位流输出包括MTJ元件130的磁化状态的因扰动序列而造成的变化的指示。在第二示例性输出类型中,感测放大器143或其他支持电路在读取脉冲的施加之后产生指示MTJ元件130的当前磁化状态的输出。第一磁化状态(诸如并行或P)可以对应于逻辑“0”电平,而第二磁化状态(诸如反并行或AP)可以对应于逻辑“1”电平。可以替代地采用其他各种输出电平。在该第二示例性输出类型中,随机位流输出包括MTJ元件130的磁化状态的变化和无变化。可以采用第一示例性输出类型和第二示例性输出类型来产生随机位流输出。
当采用多于一个RBG电路时,可以执行如本文针对RBG电路110所述的类似的操作。此外,可以通过链路170呈现随机数输出以递送到任何外部电路或递送到可能与系统100集成在一起的其他电路。输出元件150可以组合来自多于一个RBG电路的位流输出以产生随机数输出。该随机数输出可以包括呈二进制格式或某种其他等同格式的“n”位向量。若干RBG电路可以并行地产生随机位输出,并且输出元件150可以组合来自每个RBG电路的位以形成随机数输出。在一些示例中,输出元件150从每个RBG电路获取多于一个位、或位流的一部分以产生随机数输出。可以将在链路170上的随机数输出提供到控制系统或主机系统以进一步控制系统100。当采用主机系统时,该主机系统可以包括一个或多个计算机系统、软件元件或其他硬件/软件控制系统。
可以采用多个RBG电路(即,数量为“m”个的RBG电路),其数量可以为数十、数百或数千。如上所述,输出元件150可以将从每个RBG电路接收到的单独的位流输出组合为结果以作为链路170上的随机数输出呈现。随机数输出包括组合位流的数字表示。为了组合从各种RBG电路接收到的位流,输出元件150可以包括各种逻辑、级联电路、组合电路或对位流或其一部分执行一个或多个操作的处理系统。例如,采用数量为“m”个的RBG电路来产生相关联的位流,并且单独的位流指示相关联的MTJ元件的状态变化。可以应用函数来确定数量为“m”个的RBG电路的位流的预先确定的部分的组合。因此,随机数输出可以包括“n”位向量,该“n”位向量由每个RBG电路在一时间段内产生的每个位流的所选择的部分组成。每个位流的部分可以组合以形成较大的随机数,诸如来自每个“m”并行位流的“x”个位组合成(x*m=n)数字位的输出数。在一个示例中,每个位流的部分是单一位,并且因此“m”将等于“n”。每个位流的较大部分可以替代地组合以形成较大的随机数。
然而,由每个RBG电路单独地输出的位流和在链路170上的组合随机数输出都可能会遭受测量概率与目标概率的偏差。如果真随机数生成器函数的目标概率为50%,则RBG电路的输出的偏差可以产生49%或51%概率输出而不是目标。其他任意概率目标可以具有类似的偏差。概率补偿器140用来补偿这些偏差并使RBG电路110-112的操作返回在目标概率的预先确定的偏差内。在扰动序列的施加和磁化状态变化的相关感测期间,概率补偿器140监测(203)在磁化状态间测量概率与目标概率的偏差。响应于在测量概率中检测到的与目标概率的偏差,概率补偿器140调整(204)扰动序列的特性以影响MTJ元件130的磁化状态的概率性变化并使测量概率在与目标概率的预先确定的偏差内。
在概率补偿器140的一个示例性操作中,概率计算器141监测在链路161上产生的位流输出。针对预先确定的时间段或预先确定的位样本,概率计算器141监测位流并确定由RBG电路110实现的测量或实际概率。一个示例性量的位包括链路161的1000个样本,但是可以监测其他量的样本。可以使用各种逻辑或处理电路来计算概率,诸如被配置为计算总位数中的位数变化的电路。当计算出概率偏离目标概率时,则概率计算器141可以通过概率输出端子162输出概率偏差指示符。该概率偏差指示符可以指示需要由概率补偿器140校正以使位流的测量概率返回到目标概率的偏差量的模拟或数字电压表示。例如,概率偏差指示符可以包括在预先确定的时间段内存在偏差的位数,或指示偏差的量值和+/-方向的电压。可以通过概率输出端子162提供其他表示。
本文所讨论的目标概率可以硬编码或硬接线到系统100的元件中,诸如在脉冲发生器120或概率补偿器140中。可以替代地经由目标概率输入171、或到脉冲发生器120(在图1中未示出)的对应输入来选择目标概率。可以采用一定范围的概率目标,诸如当脉冲发生器120被配置为产生针对“粗略”概率目标的扰动脉冲时,并且概率补偿器140可以在粗略概率目标的特定范围内作出“精细”调整。可以使用目标百分比值的数字或模拟表示、0-1的概率值或其他表示将目标概率指示给系统100。在另外的示例中,可以在系统100中采用一个或多个可配置的存储寄存器,其可以保持目标概率的当前值。用户或操作员可以随时间推移而更改这些目标概率。
响应于通过概率输出端子162接收概率偏差指示符,电压偏移电路142产生对耦合到MTJ元件130的钉扎层端子135的参考节点163的调整。参考节点163是可调整的参考节点,其包括电节点,可以从该电节点参考电压,以用于施加到MTJ元件130的扰动序列。对参考节点163的这些调整有效地更改MTJ元件130在扰动序列期间施加至少扰动脉冲期间经历的“接地”或参考电位。MTJ元件130的参考电位的更改可以在扰动脉冲的影响下影响磁化切换行为,这最终地可以使对应RBG电路的磁化切换行为返回目标概率。在电压偏移电路142中可以包括参考缓冲器、模拟电压修改电路、晶体管电路或其他电路元件,以更改提供到MTJ元件130的参考电位。
返回讨论扰动序列,以循环方式重复操作201-202以产生随机位流输出,其中在每个循环内都施加相关联的扰动序列。经过复位、扰动和读取阶段序列的一个循环包括扰动序列。扰动序列可以重复多次以产生对应长度的随机位流。上面所指出的随机位流值将对应于每个MTJ所发生的由所施加的扰动序列导致的磁化状态。在已经对施加到对应MTJ元件的参考电压作出概率补偿调整之后,可以重复操作201-204。
现在关于操作201中指示的扰动序列在下面进行更详细的讨论。如上所述,扰动序列包括各种阶段,在该示例中,其包括复位阶段、扰动阶段和读取阶段。复位阶段发生在扰动阶段之前,以将MTJ元件初始化为预先确定的初始磁化状态。在复位阶段(210)期间,脉冲发生器120在第一极性或第一方向上跨相关联的MTJ元件产生具有相对高的脉冲振幅的复位脉冲。脉冲发生器120产生复位脉冲作为在脉冲输出端子121上引入的电压脉冲或电流脉冲。尽管以与读取脉冲类似的方向/极性施加复位脉冲,但是复位脉冲通常具有比读取脉冲更高的量值(振幅和/或持续时间)。这些复位脉冲通常不随目标切换概率而变化,而是预先确定的电压脉冲或电流脉冲,其使相应MTJ元件置于初始磁化状态中。初始磁化状态可以是反并行(AP)或并行(P)的,但是在本文的示例中,将考虑AP的初始磁化状态。
在每个复位阶段之后,都会发生扰动阶段(211)。在扰动阶段期间,脉冲发生器120通过脉冲输出端子121将扰动脉冲施加到MTJ元件。扰动阶段在读取阶段之前发生,以使用扰动脉冲概率性切换MTJ元件的磁化状态。在施加扰动脉冲时,MTJ元件可以从在复位阶段期间建立的初始磁化状态切换到不同磁化状态,或保持在初始磁化状态中。例如,如果初始磁化状态包括反并行(AP)磁化状态,则MTJ元件可以单独地改变为并行(P)磁化状态或保持在AP状态中。
读取阶段(212)在施加扰动脉冲之后发生。在读取阶段期间,脉冲发生器120通过脉冲输出端子121将读取脉冲施加到MTJ元件,以确定因先前施加扰动脉冲而造成的在MTJ元件间的磁化状态变化。当特定MTJ元件发生状态变化时,读取脉冲将在耦合到MTJ元件的自由层的电端子处产生信号,该信号指示磁化状态的变化。该信号可以包括因将读取脉冲施加到MTJ元件而造成的电压尖峰。电压尖峰可以包括在耦合到MTJ元件的自由层的电端子处的电压因传递通过MTJ元件的读取电流而造成的短持续时间增加。对于图1中的MTJ元件130,可以通过对应链路160将电压尖峰提供到感测放大器143并之后输出为在链路164上的位流。
现在呈现图3以进一步示出图1的元件的示例性操作。图3是被呈现来示出在概率调整300-302的范围内的示例性测量位流输出的波形图。在图3中,使用由概率补偿器140建立的VOFFSET调整来作出调整,但是可以采用其他形式的调整。图1的单一随机位流生成器产生每个样本位流303-305,诸如RBG电路110-112中的任一个。在图3中的由TMEASURE指示的样本周期期间,一系列扰动序列被施加到示例性随机位流生成器。因此,在该TMEASURE周期内,将若干扰动序列施加到MTJ元件以产生对应数量的位。
图3中示出了如施加到参考电压输出163的来自0伏(V)的接地电位的三个示例性调整电压(VOFFSET),即-0.020V(例如,300)、+0.030V(例如,301)和+0.050V(例如,302)。响应于施加到相关联的MTJ元件的扰动序列而产生位流波形303-305,该扰动序列可以包括由相关联的感测放大器对其他电路的调节或滤波。在图3的示例中,将多个扰动序列施加到MTJ元件,其中对应脉冲串表示用特定调整电压VOFFSET进行的概率调整。
在图3中,示例性调整电压各自呈现在参考电压输出163处,该参考电压输出针对所施加的扰动脉冲响应性更改MTJ元件的参考电位。调整电压是从0伏的理想“接地”电压起的调整。在脉冲发生器将每个扰动脉冲呈现到MTJ元件时,MTJ元件将概率性改变磁化状态或保持在初始磁化状态中。位流波形303-305反映了所得磁化状态,其中“高”或“1”电平指示磁化状态从初始状态改变,而“低”或“0”电平指示磁化状态从初始状态无变化。
位流波形303-305中的每个具有与对VOFFSET作出的调整概率性相关的对应量的磁化变化。对于输出波形303(对应于-0.020V的VOFFSET),在TMEASURE周期内的磁化状态变化量指示43.75%的切换概率311。对于输出波形304(对应于+0.030V的VOFFSET),在TMEASURE周期内的磁化状态变化量指示50.00%的切换概率312。对于输出波形305(对应于+0.050V的VOFFSET),在TMEASURE周期内的磁化状态变化量指示56.25%的切换概率313。因此,如果将目标概率设置为50%,则+0.030V的VOFFSET最佳地对应于目标概率(例如,50.00%概率)。每个位流生成器电路将具有单独地确定的VOFFSET值,该值将施加到对应参考电压输出。因此,图3的+0.030V的示例性VOFFSET将通常仅对单一MTJ元件或位流生成器电路有效。如上所述,可以对VOFFSET作出周期性调整以确保实现目标概率。
一旦已经根据本文所讨论的增强过程和电路对单独的位流生成器电路作出补偿,则可以进一步生成位流输出以建立并行输出和与多数字位随机数相对应的多位向量。可以采用所选择的数量“m”个并行位流生成器电路,其中每个输出组合以形成多位向量输出。有利地,每个位流生成器电路可以同时地生成随机位值,并且因此,每个扰动序列可以产生“m”数字位数。
为了示出具有对应位流计数的并行位流生成器电路系统,呈现了图4。图4是被呈现来示出图1的“m”数字位并行位流生成器电路方案的示例性输出的波形图400,诸如针对RBG电路110-112的组合使用等。图4中的示例示出了来自以并行布置中采用的形成四通道位流生成器的四个MTJ元件的若干扰动序列的结果。尽管图4中示出了四个并行位流,但是可以将这种布置按比例放大或缩小至数量为“m”个的并行位流生成器电路,其施加有数量为“n”个的扰动序列。可以采用选择器或选择电路来选择所期望的数量的并行位流生成器电路,以形成多通道位流生成器电路。
在图4中,脉冲发生器120生成具有部分地从目标概率确定的特性的重复的扰动序列。具体地,基于目标概率(诸如通过从目标概率到扰动脉冲的脉冲振幅或脉冲宽度的比例或缩放转换)来确定扰动脉冲的脉冲振幅或脉冲宽度。在脉冲发生器将每个扰动脉冲呈现到MTJ元件时,MTJ元件概率性改变磁化状态或保持在初始磁化状态中。输出波形401-404反映了所得磁化状态,其中“高”或“1”电平指示磁化状态从初始状态改变,而“低”或“0”电平指示磁化状态无变化。
在施加重复的扰动序列期间,概率补偿器140将校准的电压偏移(VOFFSET)施加到每个MTJ元件的钉扎层端子。具体地,对位流401施加+0.003V的VOFFSET,对位流402施加+0.030V的VOFFSET,对位流403施加+0.010V的VOFFSET,并且对位流404施加-0.020V的VOFFSET。尽管针对每个示例性位流产生十六(16)个位,但是每个位流的单独的位可以被组合为对应于随机数(ROUT)的输出值421。例如,输出411由每个16位位流中的第四个位形成,并且具有值0x1000,或以10为底的“8”。输出412由每个16位位流中的第七个位形成,并且具有值0x0011,或以10为底的“3”。输出413由每个16位位流中的第十一个位形成,并且具有值0x0001,或以10为底的“1”。因此,单独的输出数与输出数中的对应于并行位流生成器电路量的位数同时地产生。
有利地,图1和图4中所示的多通道或高度并行位流生成器电路和操作提供了比单通道位流生成器电路布置更快的随机数生成时间。大量并行位流生成器电路被组合以产生包括随机数的数字输出。当采用单一位流生成器电路布置时,获得n数字位随机数将需要数量为n个的扰动序列。例如,为了生成256位高级加密标准(AES-256)加密密钥,则将需要发生256个扰动循环。有利地,当如本文所讨论的那样采用多通道位流生成器电路布置时,在采用256个并行位流生成器电路的情况下,可以在单一扰动循环中获得这256个位,或在采用少于256个并行位流生成器电路的情况下,可以获得更大数量的扰动循环。这些并行位流生成器电路的输出如本文所讨论的那样组合以产生n数字位随机数。由于每个并行位流生成器电路都具有使用MTJ元件概率性生成的对应输出,则针对目标概率在测量位流概率间将发生变化。可以使用增强概率补偿电路来有利地补偿该变化,该增强概率补偿电路将校准的电压偏移(VOFFSET)单独地施加到每个MTJ元件。
为了示出并行位流生成器电路的另外的架构和布置,呈现了图5。图5示出了在示例性磁阻随机存取存储器(MRAM)阵列间形成的位流生成器电路的示例性阵列500。阵列500可以与各种控制逻辑、互连或其他电路一起制造到半导体衬底上。在一些示例中,MRAM阵列将具有在相对于衬底水平地跨过的MRAM器件间形成的字线和位线。可以形成MRAM阵列的与图5中所示的不同的其他阵列配置和布置以及相关联的控制/互连逻辑,诸如竖直地堆叠的阵列。
阵列500包括MRAM子阵列510和控制电路530。MRAM子阵列510由STT-MRAM单元行和列、列地址解码器511、行地址解码器512和字线(WL)驱动器513组成。多个行,诸如所示出的行516-517,由包括MTJ元件的若干STT-MRAM单元形成。MRAM子阵列510的行各自具有由行地址解码器512控制的对应位线(BL)和源线(SL)。MRAM子阵列510的列各自具有由列地址解码器511和WL驱动器513控制的对应字线(WL)。因此,MRAM子阵列510形成具有多个存储器位的可寻址阵列,每个存储器位由对应MTJ元件形成。在MRAM子阵列510的每一行内,所选择的存储器位可以用于位流生成目的,诸如本文针对随机位生成器所讨论的。控制电路530可以在MRAM子阵列510的存储器位中进行选择,以采用STT-MRAM单元中的各个STT-MRAM单元进行存储器存储或随机位生成。尽管在图5中仅突出显示了两个示例性位流生成位514-515,但是在另外的示例中,在SRAM阵列中的存储器位间形成的大型多通道位流生成器系统中采用了更大数量的位。因此,大得多的SRAM阵列的一部分仅由图5中的MRAM子阵列510示出。
STT-MRAM单元520的详细视图被示出为MRAM子阵列510的存储器位中的任一个的示例。尽管单元520被示出为从位514扩展,但是单元520可以表示本文所包括的存储器位中的任一个的结构/配置,无论是用作存储器存储元件还是用作随机位生成器元件。单元520由STT类型的MTJ元件521组成,其中示出了钉扎层(P)、隧道层(T)和自由层(F)。可包括晶体管、选择器、传输栅极或其他可选择的元件的切换元件525耦合在示例性源线(SL)523与MTJ元件521的钉扎层端子之间的源极端子和漏极端子处。切换元件525的控制端子耦合到示例性字线(WL)524。MTJ元件521的自由层端子耦合到示例性位线(BL)522。相同的STT类型的MTJ元件用于存储器存储应用和随机位生成器应用。
由控制电路530的部分和MRAM子阵列510的部分组成的选择和控制电路可以在存储应用中选择性地采用存储器位中的一个而在随机位生成器应用中采用存储器位中的另一个。因此,可以在MRAM子阵列510中实现在存储器和随机位生成器功能间的可调整且动态的配置,诸如当特定随机位生成器任务可能期望不同数量的随机位生成器元件时。未用于随机位生成器任务的存储器位可以用来存储单独的随机位生成器元件的位流输出或多通道位流生成系统的数字输出,诸如通过使用由MRAM子阵列510的多个存储器位形成的位阵列。可以由控制电路530或图5中未示出的其他控制电路选择在随机位生成器应用中采用的一定量的存储器位,以实现在每个扰动序列中生成的所期望的大小的随机数。为了实现较大的随机数,可以采用较多的存储器位。相反地,为了实现较小的随机数,可以采用较少的存储器位。
现在转到控制电路530,图5中所示的各种电路表示用于MRAM子阵列510和位流生成系统的控制电路或控制系统元件的至少一部分。可以包括另外的元件,但是为了清楚起见在图5中未示出。这些另外的元件可以包括微处理器、处理系统、主机系统等。控制电路530包括电压偏移电路531、双向脉冲发生器532、概率计算器电路533、级联元件534、感测放大器535和参考缓冲器536。电压偏移电路531还包括概率选择器538、电压偏移发生器537。控制电路530的部分可以通过对应位流使能链路560进行启用/禁用。
可调整的目标概率使用概率选择元件538进行选择。可以使用输入信号、数据寄存器、用户界面或其他输入机制将目标概率引入到概率选择元件538。在一些示例中,诸如50%概率的真随机生成器(TRNG)示例,该目标概率可以被硬编码或硬接线。概率选择元件538通过对应链路566-567向对应双向脉冲发生器532提供目标概率的指示。
每个双向脉冲发生器532耦合到MRAM子阵列510的特定存储器位的位线和源线。例如,第一双向脉冲发生器532在链路552处耦合到BL1并在链路554处耦合到SL1,并且给定“m”双向脉冲发生器532在链路553处耦合到BLM并在链路555处耦合到SLM。地址解码器512可以将链路552-555选择性耦合到MRAM子阵列510的任一行,诸如针对与图5中的位514和位515相对应的行所示。以此方式,每个双向脉冲发生器532可以跨所选择的MTJ元件施加脉冲。这些脉冲可以具有可调整的脉冲宽度和脉冲振幅,如本文所讨论。双向脉冲发生器532至少根据从概率选择元件538指示的目标概率来确定扰动序列中的扰动脉冲的振幅或持续时间特性。
此外,每个双向脉冲发生器532可以调整施加到MTJ元件的参考电位。电压偏移电路531的电压偏移发生器537向对应双向脉冲发生器532指示电压偏移,该双向脉冲发生器采用参考缓冲器536来实现电压偏移。可以包括参考缓冲器536以更改MTJ元件的在对应源线处耦合到MTJ元件的钉扎层端子的参考电位(通过对应选择元件)。参考缓冲器536实现每个MTJ元件的可调整的参考电位,如对应双向脉冲发生器532所控制。在图5中,链路554-555包括双向脉冲发生器532的可调整的参考节点。
为了确定电压偏移,包括了概率计算电路533和电压偏移电路531。概率计算电路533监测在链路570-571上产生的位流并测量在位流中表现出的概率。当在目标概率与测量概率之间测量到偏差时,则概率计算电路533可以向电压偏移电路531指示该概率偏差。电压偏移电路531确定可校正或补偿在目标概率与测量概率之间的偏差的电压偏移。电压偏移电路531可以使用查找表来快速地计算电压偏移(VOFFSET),或替代地使用数学/算法关系来计算VOFFSET。电压偏移电路531然后通过对应链路566-567产生电压偏移的指示符,并且双向脉冲发生器532可以至少使用参考缓冲器536来实现这些电压偏移。
在位流生成期间,MRAM子阵列510中的各种MTJ元件产生对应于当前磁化状态的输出。感测放大器535检测每个MTJ元件的输出,诸如通过图5中的链路556和557。每个MTJ元件的这些输出对应于MTJ元件的磁化状态的响应于由对应双向脉冲发生器532发出的扰动脉冲和后续的读取脉冲而造成的变化。每个感测放大器535在感测输入处耦合到位线(诸如经由链路556和557),并且在参考输入处耦合到参考电压VR。通常,VR将设置为接地电位或零(0)伏,但是在其他示例中,该配置可能不同。而且,应注意,每个感测放大器535的参考电压VR可以与施加到每个MTJ元件的参考电位不同。读取使能信号耦合到每个感测放大器以对感测输入的采样进行选通来使其与由双向脉冲发生器532进行的读取脉冲的施加重合。
位流输出通过链路564-565来提供到级联元件534。级联元件534将这些单独的位流输出作为输入并应用一个或多个组合过程来在链路569处产生数字输出(DOUT)。如本文所讨论,组合过程可以包括位的级联,或可以替代地包括数学算法。DOUT包括预先确定的位宽度的位向量,该预先确定的位宽度对应于输出数中的数字位的所期望量。在一些示例中,数字位的量对应于所采用的位流输出的数量。在其他示例中,来自每个位流输出的多于一个位被组合以形成较大的输出数。可以另选地通过链路570-571提供感测放大器535的输出以用于直接位流读出。直接位流读出可以耦合到外部系统,该外部系统用来取代控制电路530的元件,诸如逻辑阵列、处理设备、主机系统,或用来转换成其他形式的接口信令。
图6示出了位流生成电路(诸如MRAM子阵列510的控制部分以及控制电路530)的示例性控制操作600。在图6中,表示了两种功能模式,即信号视图610中的STT-MRAM模式和视图620中的位流生成模式。STT-MRAM模式对应于将MRAM单元用作存储器存储位,而位流生成模式对应于将MRAM单元用作位流生成元件。根据特定控制信令和连接的控制元件,MRAM子阵列510中的存储器位中的任一个都可以以STT-MRAM模式或位流生成模式操作。
对于表示STT-MRAM模式的信号视图610,位流使能信号611保持在逻辑低(或“0”)电平,以确保联结到链路560的元件是不活动的。字线(WL)信号612指示低电平,其之后是逻辑“高”(或“1”)电平,以实现与所期望的MTJ元件相关联的特定选择元件,诸如针对单元520的详细视图所示。位线(BL)信号613具有在TWRITE周期内施加的VWRITE写入电压脉冲,以将值写入MTJ元件中以进行存储。对于写入过程,源线(SL)信号保持低电平,以充当MTJ元件的参考电位。因此,MTJ元件可以用作一个数据位的存储器存储元件。在之后的时间,可以通过在TREAD周期内将VREAD读取电压脉冲施加到BL来将该数据位读出为MTJ磁化状态,如BL信号613所指示。VREAD具有比VWRITE更低的相对电压振幅,并且确切的值将基于实施方式而变化。
对于表示位流生成模式的信号视图620,位流使能信号621保持在逻辑高(或“1”)电平,以确保联结到链路560的元件是活动的。字线(WL)信号622指示低电平,其之后是逻辑“高”(或“1”)电平,以实现与所期望的MTJ元件相关联的特定选择元件,诸如针对单元520的详细视图所示。位线(BL)信号623具有在TRESET周期内施加的VRESET复位电压脉冲,以将MTJ元件复位为预选择的初始磁化状态,诸如由所施加的复位脉冲的极性指示的反并行。然后,通过将BL保持为低电平来施加扰动脉冲(VPERTURB),而同时在TPERTURB的持续时间内将SL信号524短暂地脉冲到VPERTURB
如本文所讨论,扰动电压/振幅(VPERTURB)和持续时间(TPERTURB)根据目标概率而变化。该扰动脉冲根据扰动脉冲的特性和其他随机性质来概率性改变相关联的MTJ元件的磁化状态。另外地,电压偏移电路531通过链路556-567向双向脉冲发生器532提供电压偏移信息,该双向脉冲发生器以双向方式起作用来将对应电压偏移(VOFFSET)施加到至少跨每个特定MTJ元件的BL/SL对生成的扰动脉冲。在一些示例中,该电压偏移可以施加到SL线554-555,或当跨BL/SL对施加时使用考虑VOFFSET的小脉冲振幅调整来实现。
在信号视图620中的之后时间,可以通过在TREAD周期内将VREAD电压脉冲施加到BL来读出MTJ磁化状态,如在BL信号613中所指示。在该TREAD周期期间,SL信号624保持为低。VREAD具有比VRESET和VPERTURB更低的相对电压振幅,并且确切的值将基于实施方式而变化。在该示例中,以与复位脉冲和随后的读取脉冲不同的极性或方向施加扰动脉冲(VPERTURB)。因此,双向脉冲发生器532以双向方式起作用以跨每个特定MTJ元件的BL/SL对施加对应电压脉冲。以此方式,可以将MTJ元件用作位流生成元件。
以与针对图6的信号视图620中的操作所描述的方式类似的方式来控制包括单通道位流生成器的每个位流生成元件,其中VPERTURB值与目标概率成比例地设置。选择器可以被配置为使所选择量的多个单通道位流生成器能够实现具有所期望量的数字位的随机数,以通过链路569产生输出。通过链路569产生的数字输出基于目标概率,并且包括具有数量为“n”个位的位向量。选择器可以选择多个单通道位流生成器中的数量为“m”个的单通道位流生成器以包括在多通道位流生成系统中来同时地提供m位,m位可以由级联元件534组合以形成n位数。如本文所讨论的选择器可以包括地址解码器511-512的元件,如相关联的控制系统或主机系统所指示。另选地,选择器可以包括切换元件、多路复用器和逻辑电路以控制选择操作。
有利地,可以由阵列500采用并行操作的位流生成元件的大的阵列来形成多通道位流生成系统,当选择50%目标概率时,该多通道位流生成系统可以包括真随机数生成器(TRNG)过程。如本文所讨论,单通道位流生成器的阵列形成阵列500。该阵列包括1-“m”个单通道位流生成器,其在图1中示意性表示为单独的RNG电路110-112。在图5中,这些单通道位流生成器由具有对应MTJ元件的所选择的MRAM行形成。这些MTJ元件各自都结合到由MTJ元件、地址解码器511-512的部分、双向脉冲发生器523、电压偏移电路531、概率计算电路533、感测放大器535和相关联的互连形成的单通道位流生成器中。尽管以大体上并行的方式耦合,但是每个单通道位流生成器可以具有相关联的连接电路、接口逻辑或其他互通元件以耦合单通道位流生成器来形成阵列。每个位流生成器的输出可以通过链路570-571单独地呈现,或由级联元件534组合以形成呈现在输出链路569上的多位组合数。
为了进一步示出在MTJ元件间的磁化状态变化,呈现了图7。图7示出了在反并行(AP)状态与并行(P)状态间切换状态的MTJ元件的操作。示出了示例性MTJ元件配置,该MTJ元件配置具有钉扎层、隧道势垒层和自由层。钉扎层通常具有固定在特定取向上的磁化,诸如图7所示。自由层可以根据所施加的电流或电压脉冲来改变取向。当钉扎层和自由层都在相同磁性取向上时,则可以认为这两个层在“并行”状态下。当钉扎层和自由层在不同磁性取向上时,则可以认为这两个层在“反并行”状态下。该MTJ元件配置可以示意性表示为配置700中所示的可更改状态的电阻器元件。
为了改变在MTJ元件间的状态,诸如通过改变在钉扎层与自由层之间的相对磁性取向,可以将电流或电压脉冲施加到MTJ元件。曲线图701示出了一种示例性状态改变布置。曲线图701示出了如何施加扰动电流(IPERTURB)、MTJ元件如何可以从初始AP状态进入后续P状态、以及如何从初始P状态进入后续AP状态。表现出类磁滞的行为,其中一旦MTJ元件已经变为另一种状态,就需要扰动电流的足够的量值(脉冲振幅)和持续时间(脉冲宽度)来改变MTJ元件的状态。各种P状态和AP状态具有与其相关联的相关联的电阻(RMTJ),该相关联的电阻由曲线图701中的竖直轴线指示。在曲线图701中,AP状态具有相对于P状态高的相关联的电阻(RAP),而P状态具有相对于AP状态低的相关联的电阻(RP)。如本文所讨论,这些电阻变化可以用于响应于读取脉冲而产生输出。
如上所述,扰动脉冲的特性(诸如量值和持续时间)可以影响状态变化。通常,将脉冲或脉冲串施加到MTJ元件以尝试改变MTJ元件的状态。如曲线图703所示,该脉冲可以具有脉冲宽度和脉冲振幅。脉冲宽度可以用秒(或图7中的纳秒)表示,而脉冲振幅可以用电压或安培数表示。图7示出了电压振幅,该电压振幅可能会为MTJ元件感生出电流。脉冲宽度或脉冲振幅不足可能会导致无法切换MTJ元件的状态,因为一旦移除所施加的脉冲,相关联的磁化就会开始泄漏。足够的脉冲宽度或脉冲振幅、或足够的系列脉冲,可能会导致MTJ元件进行状态切换。因此,MTJ元件表现出概率性或随机行为。MTJ元件中的随机热波动可以用于生成随机位值。切换概率是所施加的扰动脉冲的特性的强函数。一旦MTJ元件改变磁化状态,则必须将MTJ元件复位回初始状态。因此,MTJ元件的操作可以分解为三个循环,即“扰动”阶段、然后是“读取”阶段和“复位”阶段。
图7的曲线图703提供了在沿竖直轴线的各种脉冲宽度(以纳秒为单位)和沿水平轴线的各种脉冲振幅(以电压为单位)下MTJ元件的行为的表征的图示。示出了50%轮廓线704以示出在一定范围的脉冲宽度和脉冲振幅下MTJ元件的真随机数生成器(TRNG)行为的示例性特性行为。每个轮廓阴影指示MTJ元件从AP状态到P状态的相关联的切换概率的区域。本文所讨论的各种概率补偿电路调整扰动脉冲的特性,并且由此影响MTJ元件的切换概率,如曲线图703所示。该切换概率可以从50%轮廓线704变化,并且在本文中提供了概率补偿电路,以使所呈现的概率返回到在50%轮廓线的目标概率内。因此,本文所讨论的MTJ元件可以用来产生补偿漂移和制造差异的输出数的真随机性。而且,与单独的随机数生成电路相比,可以采用并行电路布置在更少的扰动循环中实现更快的随机数生成时间。
在本文所讨论的系统、电路和元件的一些实施方式中,可以建立随机电路。除其他电路外,随机电路可以包括随机数生成器电路。随机电路可以包括用于将复位脉冲施加到多个磁性隧道结(MTJ)元件以将MTJ元件复位到预先确定的磁化状态中的装置。随机电路可以包括用于在复位脉冲的施加之后将扰动脉冲施加到多个MTJ元件以影响多个MTJ元件的磁化状态的装置。随机电路可以包括用于在扰动脉冲的施加之后将读取脉冲施加到多个MTJ元件以指示在多个MTJ元件间的磁化状态的装置。随机电路可以包括用于将磁化状态呈现为与随机输出相对应的多位数的装置、以及用于测量在因复位脉冲、扰动脉冲和读取脉冲的重复的顺序施加而造成的磁化状态的变化间的概率的装置。随机电路可以包括用于检测在概率间与目标概率的偏差的装置、以及用于指示对扰动脉冲的调整以使概率在与目标概率的预先确定的偏差内的装置。随机电路还可以包括用于通过更改对扰动脉冲的调整来在概率范围内选择目标概率的装置。
除本文所讨论的元件之外,用于施加复位脉冲的装置、用于施加扰动脉冲的装置、以及用于施加读取脉冲的装置可以各自包括脉冲发生器120、脉冲输出端子121、链路160-163、RBG电路110-112、MTJ元件130、概率补偿器140、概率计算器141、电压偏移电路142、MRAM子阵列510、控制电路530、双向脉冲发生器532、链路551-555、链路560、地址解码器511、WL驱动器513、地址解码器512、以及相关联的位线、源线和字线中的任一个。除本文所讨论的元件之外,用于测量在因复位脉冲、扰动脉冲和读取脉冲的重复的顺序施加而造成的磁化状态的变化间的概率的装置可以包括RBG电路110-112、MTJ元件130、概率补偿器140、概率计算器141、电压偏移电路142、感测放大器143、链路160-166、控制电路530、概率计算电路533、偏移发生器531、链路566-567、参考缓冲器536、电压偏移发生器537、感测放大器535、感测输入链路556-557、感测输出链路566-567、读取使能链路568-569、使能链路560、计数输出链路570-571、以及级联元件534中的任一个。用于检测在概率间与目标概率的偏差的装置、以及用于指示对扰动脉冲的调整以使概率在与目标概率的预先确定的偏差内的装置可以包括RBG电路110-112、MTJ元件130、概率补偿器140、概率计算器141、电压偏移电路142、感测放大器143、链路160-166、控制电路530、概率计算电路533、偏移发生器531、链路566-567、参考缓冲器536、电压偏移发生器537、感测放大器535、感测输入链路556-557、感测输出链路566-567、使能链路560、读取使能链路568-569、计数输出链路570-571、以及级联元件534中的任一个。除本文所讨论的元件之外,用于将磁化状态呈现为与随机输出相对应的多位数的装置可以包括RBG电路110-112、输出元件150、输出链路170、链路164-166、控制电路530、使能链路560、链路564-565、感测输出链路568-569、输出链路570-571、级联元件534和数字输出链路569中的任一个。除本文所讨论的元件之外,用于通过更改对扰动脉冲的调整来在概率范围内选择目标概率的装置可以包括控制电路530、双向脉冲发生器532、概率计算电路533、偏移发生器531、链路566-567、参考缓冲器536、电压偏移发生器537、概率选择器538、感测放大器535、感测输入链路556-557、感测输出链路566-567、读取使能链路568-569、使能链路560、计数输出和链路570-571。
所包括的描述和附图描绘了教导本领域技术人员如何制作和使用最佳模式的具体实施方案。出于教导发明性原理的目的,已经简化或省略了一些常规的方面。本领域技术人员将理解来自落入本公开范围内的这些实施方案的变型。本领域技术人员还将理解,上述特征可以以各种方式组合以形成多个实施方案。因此,本发明不受上述具体实施方案的限制,而是仅受权利要求及其等同物的限制。

Claims (25)

1.一种电路,所述电路包括:
脉冲发生器,所述脉冲发生器具有脉冲输出端子,所述脉冲输出端子被配置为产生扰动脉冲;
随机位流生成器,所述随机位流生成器包括:
磁性隧道结(MTJ)元件,所述MTJ元件在自由层端子处耦合到所述脉冲发生器的所述脉冲输出端子,并且在钉扎层端子处耦合到可调整的参考节点;和
所述电路的输出节点,所述电路的所述输出节点耦合到所述MTJ元件的所述自由层端子;和
概率补偿器,所述概率补偿器包括:
概率计算器,所述概率计算器耦合到所述输出节点并被配置为响应于所述扰动脉冲而确定与所述MTJ元件表现出的目标概率的偏差;
电压偏移发生器,所述电压偏移发生器耦合到所述概率计算器的概率输出端子;和
参考缓冲器,所述参考缓冲器耦合到所述电压偏移发生器的输出端子,其中所述参考缓冲器包括所述可调整的参考节点。
2.根据权利要求1所述的电路,其中所述MTJ元件被配置为响应于施加在所述脉冲输出端子与所述可调整的参考节点之间的所述扰动脉冲而概率性改变磁化状态。
3.根据权利要求1所述的电路,其中所述MTJ元件包括在磁性随机存取存储器(MRAM)阵列中的存储器位,所述MRAM阵列能够选择为存储器存储元件或随机位生成器元件。
4.根据权利要求1所述的电路,其中所述脉冲发生器包括双向脉冲发生元件,所述双向脉冲发生元件用于经由所述脉冲输出端子在第一方向上选择性地施加复位脉冲和读取脉冲穿过所述MTJ元件,并且经由所述脉冲输出端子在第二方向上选择性地施加扰动脉冲穿过所述MTJ元件。
5.根据权利要求1所述的电路,还包括:
包括多个随机发生器的阵列,所述多个随机发生器耦合到多个参考调整模块,以产生随机位向量,所述随机位向量具有与所述多个随机发生器的数量相对应的位数量。
6.一种装置,包括:
多个随机位生成器,所述多个随机位生成器包括磁性隧道结(MTJ)元件,所述MTJ元件被配置为响应于所施加的扰动序列而产生磁化状态的概率性变化;
概率调整电路,所述概率调整电路被配置为监测所述磁化状态的所述概率性变化以得到测量概率与目标概率的偏差,并且发起对所述扰动序列的调整以影响所述MTJ元件的所述磁化状态的所述概率性变化并使所述测量概率在与所述目标概率的预先确定的偏差内;
一个或多个脉冲发生器,所述一个或多个脉冲发生器被配置为至少根据由所述概率调整电路发起的所述调整来将所述扰动序列施加到所述多个随机位生成器;和
输出电路,所述输出电路被配置为呈现随机位向量,所述随机位向量由来自至少一个扰动序列的所述多个随机位生成器的所述磁化状态组成。
7.根据权利要求6所述的装置,其中所述扰动序列包括:
复位阶段,所述复位阶段使所述多个脉冲发生器在扰动电压脉冲的施加之前将复位电压脉冲施加到所述MTJ元件以使所述MTJ元件置于预先确定的磁化状态中;
扰动阶段,所述扰动阶段使所述多个脉冲发生器将所述扰动电压脉冲施加到所述MTJ元件以产生所述磁化状态的所述概率性变化;和
读取阶段,所述读取阶段使所述多个脉冲发生器通过所述多个脉冲发生器将读取电压脉冲施加到所述MTJ元件以确定因所述扰动电压脉冲的施加而造成的在所述MTJ元件间的所述磁化状态。
8.根据权利要求6所述的装置,其中所述概率调整电路被配置为通过更改在与由产生所述磁化状态的所述概率性变化的所述一个或多个脉冲发生器施加扰动电压脉冲相关联的脉冲振幅、脉冲宽度和参考电压中的一个或多个来执行对所述扰动序列的所述调整。
9.根据权利要求6所述的装置,其中所述概率调整电路跨预先确定量的扰动序列监测所述多个随机位生成器的所述磁化状态以确定所述测量概率与所述目标概率的所述偏差。
10.根据权利要求6所述的装置,其中所述MTJ元件中的每个具有相关联的自由层端子,所述相关联的自由层端子耦合到生成并施加所述扰动序列的对应脉冲发生器;并且
其中所述MTJ元件中的每个具有相关联的钉扎层端子,所述相关联的钉扎层端子耦合到可调整的参考节点,所述可调整的参考节点能够根据对所述扰动序列的所述调整来改变所施加的参考电压。
11.根据权利要求6所述的装置,其中所述目标概率通过更改对所述扰动序列的所述调整而能够在概率范围内选择。
12.根据权利要求6所述的装置,其中所述扰动序列以循环方式重复以产生一系列随机位向量输出;并且
其中所述概率调整电路在监测预先确定量的随机位向量之后发起对所述扰动序列的所述调整。
13.一种随机数生成的方法,包括:
将扰动脉冲施加到包括在多个随机位流生成器中的磁性隧道结(MTJ)元件;
在所述扰动脉冲的施加之后将读取脉冲施加到所述MTJ元件以确定在所述MTJ元件间的磁化状态;
在所述扰动脉冲的施加之前将复位脉冲施加到所述MTJ元件以使所述MTJ元件置于预先确定的磁化状态中;以及
在至少一个对应读取脉冲的施加之后,产生由所述多个随机位流生成器的所述磁化状态中的每个组成的随机位向量输出;以及
监测在所述磁化状态间测量概率与目标概率的偏差;以及
作出对所述扰动脉冲的调整,以影响所述MTJ元件的所述磁化状态的概率性变化并使所述测量概率在与所述目标概率的预先确定的偏差内。
14.根据权利要求13所述的方法,还包括:
重复与所述读取脉冲和对应复位脉冲交替的所述扰动脉冲的施加,以产生一系列随机位向量输出;以及
在监测预先确定量的随机位向量输出之后作出对所述扰动脉冲的所述调整。
15.根据权利要求13所述的方法,其中作出对所述扰动脉冲的所述调整包括更改在与将所述扰动脉冲施加到所述多个随机位流生成器相关联的脉冲振幅、脉冲宽度和参考电压中的一个或多个。
16.根据权利要求13所述的方法,还包括:
将所述扰动脉冲和所述读取脉冲作为带有第一极性的对应电压脉冲施加到所述MTJ元件的自由层端子;
将所述复位脉冲作为带有与所述第一极性相反的第二极性的复位电压脉冲施加到所述MTJ元件的所述自由层端子;并且
其中所述MTJ元件的钉扎层端子耦合到可调整的参考电压,所述可调整的参考电压用于作出对所述扰动脉冲的振幅调整,以影响所述MTJ元件的所述磁化状态的所述概率性变化。
17.根据权利要求13所述的方法,其中所述目标概率通过更改对所述扰动电压脉冲的所述调整而能够在概率范围内选择。
18.一种用于生成随机数的系统,包括:
磁性随机存取存储器(MRAM)阵列,所述MRAM阵列由数据存储元件的行形成,并且包括地址解码器电路,所述地址解码器电路被配置为将所选择的行分配到第一组或第二组;
其中所述行的第一组具有在数据存储操作中采用的相关联的数据存储元件,并且其中所述行的第二组具有在随机数生成电路中采用的所选择的数据存储元件;和
控制电路,所述控制电路用于随机数生成电路,所述控制电路包括:
脉冲发生器,所述脉冲发生器被配置为至少跨所述行的所述第二组的所选择的数据存储元件施加扰动序列,以概率性地影响所述数据存储元件的磁化状态;
输出电路,所述输出电路被配置为呈现输出位向量,所述输出位向量由所选择的数据存储元件的所述磁化状态的指示组成;和
概率补偿器,所述概率补偿器被配置为测量在因所述扰动序列而造成的所述磁化状态的所述指示间的概率,检测在所述概率间与目标概率的偏差,并且指示将由所述脉冲发生器施加到所选择的数据存储元件的对参考电压的调整,其中所述调整被选择以使所述概率在与所述目标概率的预先确定的偏差内。
19.根据权利要求18所述的系统,其中所述控制电路被配置为循环进行所述扰动序列的施加以产生一系列输出位向量;并且
其中所述扰动序列各自包括复位脉冲、扰动脉冲和读取脉冲的施加;
其中所述脉冲发生器在所述扰动脉冲的施加之前施加所述复位脉冲以使所选择的数据存储元件置于预先确定的磁化状态中;
其中所述脉冲发生器施加所述扰动脉冲以概率性影响所述数据存储元件的所述磁化状态;并且
其中所述脉冲发生器施加所述读取脉冲以确定所选择的数据存储元件的所述磁化状态的所述指示。
20.根据权利要求19所述的系统,其中所述脉冲发生器具有输入电压,所述输入电压设置所述扰动脉冲的脉冲宽度和脉冲振幅中的至少一个以实现对所选择的数据存储元件的所述目标概率的初始近似;并且
其中响应于所述扰动脉冲的所选择的数据存储元件的磁化状态变化的实际概率受对所述参考电压的所述调整的影响,以至少补偿在所选择的数据存储元件的特性间的制造和温度变化。
21.根据权利要求18所述的系统,其中所述数据存储元件包括磁性隧道结(MTJ)元件,所述MTJ元件具有耦合到所述MRAM阵列的位线的自由层端子、以及通过选择元件耦合到所述MRAM阵列的源线的钉扎层端子,并且其中所述选择元件的控制端子耦合到所述MRAM阵列的字线。
22.根据权利要求21所述的系统,其中所述脉冲发生器将所述扰动序列作为对应电压脉冲施加在相关联的位线和相关联的源线上。
23.根据权利要求18所述的系统,其中将由所述脉冲发生器施加到所选择的数据存储元件的对所述参考电压的所述调整调整由所述脉冲发生器提供的扰动脉冲的振幅,以影响所选择的数据存储元件中的概率性磁化状态变化。
24.一种随机电路,包括:
用于将复位脉冲施加到多个磁性隧道结(MTJ)元件以将所述MTJ元件复位到预先确定的磁化状态中的装置;
用于在所述复位脉冲的施加之后将扰动脉冲施加到所述多个MTJ元件以影响所述多个MTJ元件的磁化状态的装置;
用于在所述扰动脉冲的施加之后将读取脉冲施加到所述多个MTJ元件以指示在所述多个MTJ元件间的所述磁化状态的装置;
用于将所述磁化状态呈现为与随机输出相对应的多位数的装置;
用于测量在因所述复位脉冲、所述扰动脉冲和所述读取脉冲的重复的顺序施加而造成的所述磁化状态的变化间的概率的装置;
用于检测在所述概率间与目标概率的偏差的装置;和
用于指示对所述扰动脉冲的调整以使所述概率在与所述目标概率的预先确定的偏差内的装置。
25.根据权利要求24所述的随机电路,还包括:
用于通过更改对所述扰动脉冲的所述调整来在概率范围内选择所述目标概率的装置。
CN201980005957.6A 2018-05-10 2019-03-20 用磁性隧道结生成随机位流 Active CN111406248B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/976,384 US10732933B2 (en) 2018-05-10 2018-05-10 Generating random bitstreams with magnetic tunnel junctions
US15/976,384 2018-05-10
PCT/US2019/023185 WO2019216994A1 (en) 2018-05-10 2019-03-20 Generating random bitstreams with magnetic tunnel junctions

Publications (2)

Publication Number Publication Date
CN111406248A true CN111406248A (zh) 2020-07-10
CN111406248B CN111406248B (zh) 2023-12-15

Family

ID=68464698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980005957.6A Active CN111406248B (zh) 2018-05-10 2019-03-20 用磁性隧道结生成随机位流

Country Status (3)

Country Link
US (1) US10732933B2 (zh)
CN (1) CN111406248B (zh)
WO (1) WO2019216994A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112558925A (zh) * 2020-12-15 2021-03-26 中国科学院上海微系统与信息技术研究所 随机数发生单元以及随机数发生器
CN112835556A (zh) * 2021-01-28 2021-05-25 广东省大湾区集成电路与系统应用研究院 一种基于mtj的真随机数发生器
WO2024083141A1 (zh) * 2022-10-18 2024-04-25 北京大学 调节随机比特流概率的方法、设备和计算机存储介质

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10365833B2 (en) 2016-01-22 2019-07-30 Micron Technology, Inc. Apparatuses and methods for encoding and decoding of signal lines for multi-level communication architectures
US11468248B2 (en) * 2017-04-07 2022-10-11 Nec Corporation Semiconductor device
US10283187B2 (en) * 2017-07-19 2019-05-07 Micron Technology, Inc. Apparatuses and methods for providing additional drive to multilevel signals representing data
US10732933B2 (en) * 2018-05-10 2020-08-04 Sandisk Technologies Llc Generating random bitstreams with magnetic tunnel junctions
US11531524B2 (en) * 2018-09-24 2022-12-20 Taiwan Semiconductor Manufacturing Company, Ltd. Magnetoresistive random-access memory (MRAM) random number generator (RNG) and a related method for generating a random bit
US11544040B2 (en) * 2019-10-18 2023-01-03 Tohoku University Random number generator
US11435982B2 (en) * 2020-01-30 2022-09-06 Globalfoundries U.S. Inc. True random number generation and physically unclonable functions using voltage control of magnetic anisotropy effects in STT-MRAM
CN111562901B (zh) * 2020-04-30 2023-09-22 清华大学 随机数生成器和随机数的生成方法
US20220343030A1 (en) * 2021-04-26 2022-10-27 Everspin Technologies, Inc. Cryptographic mram and methods thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010182258A (ja) * 2009-02-09 2010-08-19 Toshiba Corp 乱数発生器および乱数発生方法
US20130073598A1 (en) * 2011-09-20 2013-03-21 Qualcomm Incorporated Entropy source with magneto-resistive element for random number generator
US20140022837A1 (en) * 2008-10-30 2014-01-23 Seagate Technology Llc Random bit generator with magnetic tunnel junction
US20140108478A1 (en) * 2012-10-15 2014-04-17 Qualcomm Incorporated Magnetic tunnel junction based random number generator
CN107995976A (zh) * 2015-06-17 2018-05-04 英特尔公司 随机数发生器

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7307268B2 (en) * 2005-01-19 2007-12-11 Sandisk Corporation Structure and method for biasing phase change memory array for reliable writing
US9368716B2 (en) 2009-02-02 2016-06-14 Qualcomm Incorporated Magnetic tunnel junction (MTJ) storage element and spin transfer torque magnetoresistive random access memory (STT-MRAM) cells having an MTJ
US7936592B2 (en) * 2009-02-03 2011-05-03 Seagate Technology Llc Non-volatile memory cell with precessional switching
US8344433B2 (en) 2009-04-14 2013-01-01 Qualcomm Incorporated Magnetic tunnel junction (MTJ) and methods, and magnetic random access memory (MRAM) employing same
US7969767B2 (en) 2009-05-29 2011-06-28 Qualcomm Incorporated Spin transfer torque—magnetic tunnel junction device and method of operation
US8609262B2 (en) 2009-07-17 2013-12-17 Magic Technologies, Inc. Structure and method to fabricate high performance MTJ devices for spin-transfer torque (STT)-RAM application
US8227351B2 (en) 2010-03-22 2012-07-24 Qualcomm Incorporated Fabrication of magnetic tunnel junction (MTJ) devices with reduced surface roughness for magnetic random access memory (MRAM)
US8604572B2 (en) * 2010-06-14 2013-12-10 Regents Of The University Of Minnesota Magnetic tunnel junction device
US9159908B2 (en) 2011-05-05 2015-10-13 Headway Technologies, Inc. Composite free layer within magnetic tunnel junction for MRAM applications
US8823118B2 (en) 2012-01-05 2014-09-02 Headway Technologies, Inc. Spin torque transfer magnetic tunnel junction fabricated with a composite tunneling barrier layer
US9110746B2 (en) 2012-09-04 2015-08-18 Qualcomm Incorporated Magnetic tunnel junction based random number generator
US20160028544A1 (en) * 2012-11-15 2016-01-28 Elwha Llc Random number generator functions in memory
US8786039B2 (en) * 2012-12-20 2014-07-22 Samsung Electronics Co., Ltd. Method and system for providing magnetic junctions having engineered perpendicular magnetic anisotropy
US9620706B2 (en) 2014-12-02 2017-04-11 Qualcomm Incorporated Magnetic etch stop layer for spin-transfer torque magnetoresistive random access memory magnetic tunnel junction device
US9971566B2 (en) * 2015-08-13 2018-05-15 Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University Random number generating systems and related methods
US20170330070A1 (en) * 2016-02-28 2017-11-16 Purdue Research Foundation Spin orbit torque based electronic neuron
US10175949B2 (en) * 2016-09-06 2019-01-08 Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University Data compiler for true random number generation and related methods
US10078496B2 (en) * 2017-02-23 2018-09-18 International Business Machines Corporation Magnetic tunnel junction (MTJ) based true random number generators (TRNG)
US10790016B2 (en) * 2018-03-02 2020-09-29 Western Digital Technologies, Inc. Probabilistic neuron circuits
US10200058B1 (en) * 2018-04-24 2019-02-05 Sandisk Technologies Llc Analog-to-digital conversion with magnetic tunnel junctions
US10732933B2 (en) * 2018-05-10 2020-08-04 Sandisk Technologies Llc Generating random bitstreams with magnetic tunnel junctions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140022837A1 (en) * 2008-10-30 2014-01-23 Seagate Technology Llc Random bit generator with magnetic tunnel junction
JP2010182258A (ja) * 2009-02-09 2010-08-19 Toshiba Corp 乱数発生器および乱数発生方法
US20130073598A1 (en) * 2011-09-20 2013-03-21 Qualcomm Incorporated Entropy source with magneto-resistive element for random number generator
CN103890712A (zh) * 2011-09-20 2014-06-25 高通股份有限公司 用于随机数产生器的具有磁阻元件的熵源
US20140108478A1 (en) * 2012-10-15 2014-04-17 Qualcomm Incorporated Magnetic tunnel junction based random number generator
CN107995976A (zh) * 2015-06-17 2018-05-04 英特尔公司 随机数发生器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112558925A (zh) * 2020-12-15 2021-03-26 中国科学院上海微系统与信息技术研究所 随机数发生单元以及随机数发生器
CN112835556A (zh) * 2021-01-28 2021-05-25 广东省大湾区集成电路与系统应用研究院 一种基于mtj的真随机数发生器
CN112835556B (zh) * 2021-01-28 2024-01-16 广东省大湾区集成电路与系统应用研究院 一种基于mtj的真随机数发生器
WO2024083141A1 (zh) * 2022-10-18 2024-04-25 北京大学 调节随机比特流概率的方法、设备和计算机存储介质

Also Published As

Publication number Publication date
US20190347074A1 (en) 2019-11-14
CN111406248B (zh) 2023-12-15
WO2019216994A1 (en) 2019-11-14
US10732933B2 (en) 2020-08-04

Similar Documents

Publication Publication Date Title
CN111406248B (zh) 用磁性隧道结生成随机位流
US9087593B2 (en) Random bit generator that applies alternating current (AC) to magnetic tunnel junction to generate a random bit
CN110447074A (zh) 具有增强热稳定性的自旋轨道扭矩mram存储器单元
EP2163984A1 (en) Random number generator
EP3335219A1 (en) Method and apparatus for bipolar memory write-verify
US20100174766A1 (en) Magnetic Precession Based True Random Number Generator
US6754097B2 (en) Read operations on multi-bit memory cells in resistive cross point arrays
US20200326911A1 (en) Magnetic tunnel junction based true random number generator
US11726747B2 (en) Magnetoresistive random-access memory (MRAM) random number generator (RNG) and a related method for generating a random bit
WO2013071254A2 (en) Circuit and method for generating a reference level for a magnetic random access memory element
US7715228B2 (en) Cross-point magnetoresistive memory
US9164729B2 (en) Method and apparatus for generating random numbers using a physical entropy source
Schnitzspan et al. Nanosecond true-random-number generation with superparamagnetic tunnel junctions: Identification of Joule heating and spin-transfer-torque effects
Zink et al. Review of magnetic tunnel junctions for stochastic computing
Leonard et al. Stochastic domain wall-magnetic tunnel junction artificial neurons for noise-resilient spiking neural networks
Wu et al. Stochastic switching in a magnetic-tunnel-junction neuron and a bias-dependent Néel-Arrhenius model
US7499313B2 (en) Nonvolatile memory with data clearing functionality
Chen et al. On the hardware implementation of MRAM physically unclonable function
CN111596891B (zh) 真随机数发生装置及发生方法
US10200058B1 (en) Analog-to-digital conversion with magnetic tunnel junctions
US11915733B2 (en) Memory devices, circuits and methods of adjusting a sensing current for the memory device
CN115473644A (zh) 物理不可克隆功能器件、半导体器件及其操作方法
Motaman et al. Novel application of spintronics in computing, sensing, storage and cybersecurity
US20150221357A1 (en) Spintronic circuit and method of operation therefore
US20220398068A1 (en) Magnetic-tunnel-junction-based random number generator

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