CN109308924B - 一种计算器件及其计算方法 - Google Patents

一种计算器件及其计算方法 Download PDF

Info

Publication number
CN109308924B
CN109308924B CN201810913713.5A CN201810913713A CN109308924B CN 109308924 B CN109308924 B CN 109308924B CN 201810913713 A CN201810913713 A CN 201810913713A CN 109308924 B CN109308924 B CN 109308924B
Authority
CN
China
Prior art keywords
logic
bar
stripe
magnetic
strip
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
Application number
CN201810913713.5A
Other languages
English (en)
Other versions
CN109308924A (zh
Inventor
肖江
余伟超
兰金
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.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN201810913713.5A priority Critical patent/CN109308924B/zh
Priority to PCT/CN2018/115134 priority patent/WO2020029457A1/en
Publication of CN109308924A publication Critical patent/CN109308924A/zh
Priority to US16/420,067 priority patent/US20200051725A1/en
Application granted granted Critical
Publication of CN109308924B publication Critical patent/CN109308924B/zh
Priority to US17/395,015 priority patent/US11647679B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • 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
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01FMAGNETS; INDUCTANCES; TRANSFORMERS; SELECTION OF MATERIALS FOR THEIR MAGNETIC PROPERTIES
    • H01F10/00Thin magnetic films, e.g. of one-domain structure
    • H01F10/32Spin-exchange-coupled multilayers, e.g. nanostructured superlattices
    • H01F10/324Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer
    • H01F10/3268Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer the exchange coupling being asymmetric, e.g. by use of additional pinning, by using antiferromagnetic or ferromagnetic coupling interface, i.e. so-called spin-valve [SV] structure, e.g. NiFe/Cu/NiFe/FeMn
    • H01F10/3272Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer the exchange coupling being asymmetric, e.g. by use of additional pinning, by using antiferromagnetic or ferromagnetic coupling interface, i.e. so-called spin-valve [SV] structure, e.g. NiFe/Cu/NiFe/FeMn by use of anti-parallel coupled [APC] ferromagnetic layers, e.g. artificial ferrimagnets [AFI], artificial [AAF] or synthetic [SAF] anti-ferromagnets
    • H01F10/3277Exchange coupling of magnetic film pairs via a very thin non-magnetic spacer, e.g. by exchange with conduction electrons of the spacer the exchange coupling being asymmetric, e.g. by use of additional pinning, by using antiferromagnetic or ferromagnetic coupling interface, i.e. so-called spin-valve [SV] structure, e.g. NiFe/Cu/NiFe/FeMn by use of anti-parallel coupled [APC] ferromagnetic layers, e.g. artificial ferrimagnets [AFI], artificial [AAF] or synthetic [SAF] anti-ferromagnets by use of artificial ferrimagnets [AFI] only
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/16Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using saturable magnetic devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/18Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using galvano-magnetic devices, e.g. Hall-effect devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B61/00Magnetic memory devices, e.g. magnetoresistive RAM [MRAM] devices
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N50/00Galvanomagnetic devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • 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

Abstract

本申请提供了一种计算器件,所述计算器件包括逻辑条,所述逻辑条包括由逻辑条磁畴壁分开的两个逻辑条磁畴;在逻辑条的第一位置处与逻辑条交叉的输入条,包括至少一个输入条磁畴,所述至少一个输入条磁畴中的每一个包括至少一个输入条存储单元,用于存储二进制0或1;以及在逻辑条的靠近逻辑条磁畴壁的第二位置与逻辑条交叉的输出条,输出条包括至少一个输出条磁畴,所述至少一个输出条磁畴中的每一个包括至少一个输出条存储单元,用于存储二进制0或1。

Description

一种计算器件及其计算方法
技术领域
本公开涉及逻辑计算领域,尤其涉及自旋波控制器件、极化自旋波控制方法、计算器件、处理器件以及逻辑计算方法。
背景技术
随着金属氧化物半导体场效应晶体管(MOSFET)小型化的发展,晶体管的缩小使得数亿个晶体管能够位于单个芯片上,以此增加计算能力。然而,晶体管的缩小导致了巨大的能量耗散。进一步,传统的硅技术利用冯-诺依曼计算架构,其中数据存储和数据处理分别在存储器和中央处理单元中实现。存储器和中央处理单元通过数据总线进行通信。这种分离架构降低了计算速度和能量效率,并且还使得计算断电挥发。
已经开发的基于自旋电子学的存储器,例如自偏转移矩磁随机存储器和磁赛道存储器,用于在不影响速度的情况下减轻能量问题。然而,现有的自旋电子应用仅限于实现数据存储,并且数据存储通常采用传导电子携带的自旋电流来实现,因此尚未完全避免焦耳加热问题。
发明内容
本公开提供一种自旋波控制器件,包括第一磁性层、位于第一磁性层之上的第二磁性层以及与第二磁性层的一部分重叠或与第一磁性层的一部分重叠的覆盖层。第一磁性层具有指向第一方向的磁矩,第二磁性层具有指向与第一方向大致相反的第二方向的磁矩。覆盖层具有大致指向第一方向或大致指向第二方向的磁矩。
在一些实施例中,所述自旋波控制器件还包括在第一磁性层和第二磁性层之间的第一夹层,以及在第二磁性层和覆盖层之间的第二夹层。
在一些实施例中,覆盖层用于使注入自旋波控制器件的极化自旋波的偏振发生偏转。
在一些实施例中,极化自旋波的偏振的偏转方向取决于覆盖层的磁矩方向。
在一些实施例中,极化自旋波的偏振的偏转角度取决于覆盖层的长度、第一夹层的厚度、第二夹层的厚度、偏振自旋波频率、及第一磁性层和第二磁性层的材料特性中的至少一个。覆盖层的长度方向与自旋波控制器件中的极化自旋波的传播方向大致平行。
在一些实施例中,第二磁性层和第一磁性层具有大致相同的宽度。
在一些实施例中,覆盖层的磁矩方向可在大致与第一方向对准和大致与第二方向对准之间切换。
在一些实施例中,所述自旋波控制器件还包括切换器件,切换器件与覆盖层耦合,用于切换覆盖层的磁矩方向。
在一些实施例中,第一方向和第二方向大致垂直于第二磁性层的上表面或大致垂直于第二磁性层的侧表面。
在一些实施例中,第一磁性层和第二磁性层包括相同材料或相同结构,并且第一磁性层的总磁化强度与第二磁性层的总磁化强度相同。
在一些实施例中,第一磁性层和第二磁性层中的每个均包括铁(Fe)、镍 (Ni)、钴(Co)、铬(Cr)或钇铁石榴石(YIG)中的至少一种。覆盖层包括铁 (Fe)、镍(Ni)、钴(Co)、铬(Cr)或钇铁石榴石(YIG)中的至少一种。
本公开还提供了一种控制极化自旋波的方法,包括将极化自旋波注入人工反铁磁体(SyAF)并控制覆盖层的磁矩方向以偏转极化自旋波的偏振。覆盖层与SyAF的一部分重叠。
在一些实施例中,SyAF包括第一磁性层,具有指向第一方向的磁矩,以及位于第一磁性层上方的第二磁性层,具有指向与第一方向大致相反的第二方向的磁矩。控制覆盖层的磁矩方向以偏转所述极化自旋波的偏振包括:控制覆盖层的磁矩方向与第一方向大致对准,以使所述极化自旋波的偏振沿第一偏转方向偏转,或控制覆盖层的磁矩方向大致与第二方向对齐,以使所述极化自旋波的偏振沿第二偏转方向偏转。第二偏转方向与第一偏转方向相反。
本公开还提供了一种计算器件,包括逻辑条,在逻辑条的第一位置处与逻辑条交叉的输入条,以及在逻辑条的靠近逻辑条磁畴壁的第二位置与逻辑条交叉的输出条。逻辑条包括由逻辑条磁畴壁分开的两个逻辑条磁畴。输入条包括至少一个输入条磁畴,所述至少一个输入条磁畴中的每一个包括至少一个输入条存储单元,用于存储二进制 0或1。输出条包括至少一个输出条磁畴,所述至少一个输出条磁畴中的每一个包括至少一个输出条存储单元,用于存储二进制0或1。
在一些实施例中,逻辑条包括第一磁性层和位于第一磁性层上方的第二磁性层。第一磁性层包括位于所述两个逻辑条磁畴中的第一个中的第一磁性部分和位于所述两个逻辑条磁畴中的第二个中的第二磁性部分。第一磁性部分的磁矩指向第一方向,第二磁性部分的磁矩指向大致与第一方向相反的第二方向。第二磁性层包括位于所述两个逻辑条磁畴中的第一个中的第三磁性部分和位于所述两个逻辑条磁畴中的第二个中的第四磁性部分。第三磁性部分的磁矩指向第二方向,第四磁性部分的磁矩指向第一方向。
在一些实施例中,所述至少一个输入条磁畴中的每一个的磁矩大致指向第一方向或大致指向第二方向。
在一些实施例中,第一方向和第二方向大致垂直于逻辑条的上表面。
在一些实施例中,第一方向和第二方向大致垂直于逻辑条的侧表面。
在一些实施例中,第一磁性层和第二磁性层具有相同的宽度。
在一些实施例中,逻辑条磁畴壁位于两个逻辑条磁畴之间的界面处。
在一些实施例中,输入条和输出条大致垂直于逻辑条。
在一些实施例中,所述计算器件还包括与输入条耦合的输入条驱动器件以及与输出条耦合的输出条驱动器件。输入条驱动器件用于驱动所述至少一个输入条存储单元中的一个输入条存储单元进入和离开输入条的重叠部分。输入条的重叠部分是输入条与逻辑条重叠的部分。输出条驱动器用于驱动所述至少一个输出条存储单元中的一个输出条存储单元从输出条的重叠部分中离开。输出条的重叠部分是输出条与逻辑条重叠的部分。
在一些实施例中,第一位置比第二位置更靠近逻辑条的自旋波注入端。
在一些实施例中,所述计算器件还包括与逻辑条交叉的指令条。指令条改变从自旋波注入端注入的自旋波的偏振方向。
在一些实施例中,指令条大致垂直于逻辑条。
在一些实施例中,所述指令条为第一指令条。所述计算器件还包括与逻辑条交叉的第二指令条。
在一些实施例中,第一指令条和第二指令条中的每一个均包括多个磁畴。所述多个磁畴中的每一个的磁矩指向第一方向或大致与第一方向相反的第二方向。第一指令条的磁畴中与逻辑条重叠的磁畴的磁矩和第二指令条的磁畴中与逻辑条重叠的磁畴的磁矩的组合确定了所述自旋波偏振方向的偏转角度。
在一些实施例中,第一指令条和第二指令条大致垂直于逻辑条。
一些实施例中,所述输入条为第一输入条,所述至少一个输入条磁畴为至少一个第一输入条磁畴,以及所述至少一个输入条存储单元为至少一个第一输入条存储单元,并且所述输出条为第一输出条,所述至少一个输出条磁畴为至少一个第一输出条磁畴,以及所述至少一个输出条存储单元为至少一个第一输出条存储单元。所述计算器件还包括:第二输入条,在逻辑条的第三位置处与逻辑条交叉,以及第二输出条,在与逻辑条的第二位置对应且靠近逻辑条磁畴壁的位置处与逻辑条交叉。第二输入条包括至少一个第二输入条磁畴,所述至少一个第二输入条磁畴中的每一个包括至少一个第二输入条存储单元,用于存储二进制0或1。第二输出条包括至少一个第二输出条磁畴,所述至少一个第二输出条磁畴中的每一个包括至少一个第二输出条存储单元,用于存储二进制0或1。
在一些实施例中,第一输入条和第二输入条大致彼此平行并且大致垂直于逻辑条。第一输出条和第二输出条布置在逻辑条的相对两侧上并且彼此大致平行,并且大致垂直于逻辑条。
本公开还提供了一种处理器件,包括正向逻辑条(FLT)、逆向逻辑条(BLT) 和与正向逻辑条和逆向逻辑条交叉的数据条。正向逻辑条包括由正向逻辑条磁畴壁分开的两个正向逻辑条磁畴。逆向逻辑条包括由逆向逻辑条磁畴壁分开的两个逆向逻辑条磁畴。数据条包括对应于正向逻辑条的至少一个输入存储单元和对应于逆向逻辑条的至少一个输出存储单元。所述至少一个输入存储单元中的每一个存储二进制0或1,并且所述至少一个输出存储单元中的每一个存储二进制0或1。
在一些实施例中,正向逻辑条和逆向逻辑条彼此大致平行。
在一些实施例中,数据条大致垂直于正向逻辑条和逆向逻辑条。
在一些实施例中,所述至少一个输入存储单元中的每一个的磁矩大致指向第一方向或大致指向第二方向。第一方向和第二方向彼此相反。
在一些实施例中,所述处理器件还包括与数据条耦合的数据条驱动器件,将驱动所述至少一个输入条存储单元中的一个输入条存储单元进入和离开数据条的正向重叠部分,或者将所述至少一个输出条存储单元中的一个输出条存储单元进入和离开数据条的逆向重叠部分。数据条的正向重叠部分是数据条与正向逻辑条重叠的部分,而数据条的逆向重叠部分是数据条与逆向逻辑条重叠的部分。
在一些实施例中,所述处理器件还包括与正向逻辑条交叉的正向指令条和与逆向逻辑条交叉的逆向指令条。正向指令条通过改变从正向自旋波注入端注入的正向自旋波的偏振方向来设置正向逻辑条的功能。逆向指令条通过改变从逆向自旋波注入端注入的逆向自旋波的偏振方向来设置逆向逻辑条的功能。
在一些实施例中,所述正向指令条为第一正向指令条,所述逆向指令条为第一逆向指令条。所述处理器件还包括与正向逻辑条交叉的第二正向指令条和与逆向逻辑条交叉的第二逆向指令条。第二正向指令条进一步改变正向自旋波的偏振方向,第二逆向指令条进一步改变逆向自旋波的偏振方向。
在一些实施例中,所述处理器件还包括与正向逻辑条和逆向逻辑条交叉的寄存条。寄存条包括正向重叠部分和逆向重叠部分,正向重叠部分在远离正向逻辑条的正向自旋波注入端的位置处与正向逻辑条重叠,逆向重叠部分在远离逆向自旋波注入端的位置处与逆向逻辑条重叠。寄存条还包括至少一个寄存存储单元,用于存储由正向逻辑条中的正向自旋波携带的信息。
在一些实施例中,所述处理器件还包括与寄存条耦合的寄存条驱动器件。寄存条驱动器件将至少一个寄存磁畴从正向重叠部分移位到逆向重叠部分。
在一些实施例中,所述正向逻辑条为上正向逻辑条,所述两个正向逻辑条磁畴为两个上正向逻辑条磁畴,所述正向逻辑条磁畴壁为上正向逻辑条磁畴壁,并且所述逆向逻辑条为上逆向逻辑条,所述两个逆向逻辑条磁畴为两个上逆向逻辑条磁畴,所述逆向逻辑条磁畴壁为上逆向逻辑条磁畴壁。所述处理器件还包括下正向逻辑条和下逆向逻辑条,下正向逻辑条大致平行于上正向逻辑条并位于上正向逻辑条的下方,下逆向逻辑条大致平行于上逆向逻辑条并位于上逆向逻辑条的下方。下正向逻辑条包括由下正向逻辑条磁畴壁分开的两个下正向逻辑条磁畴,上正向逻辑条和下正向逻辑条组成正向逻辑条对。下逆向逻辑条包括由下逆向逻辑条磁畴壁分开的两个下逆向逻辑条磁畴,上逆向逻辑条和下逆向逻辑条组成逆向逻辑条对。
在一些实施例中,所述正向逻辑条对为第一正向逻辑条对,所述上正向逻辑条为第一上正向逻辑条,所述下正向逻辑条为第一下正向逻辑条,所述逆向逻辑条对为第一逆向逻辑条对,所述上逆向逻辑条为第一上逆向逻辑条,所述下逆向逻辑条为第一下逆向逻辑条。所述计算器件还包括第二正向逻辑条对和第二逆向逻辑条对。第二正向逻辑条对位于第一正向逻辑条对附近并且包括第二上正向逻辑条和位于第二上正向逻辑条下方的第二下正向逻辑条,第二逆向逻辑条对位于第一逆向逻辑条对附近并且包括第二上逆向逻辑条和位于第二上逆向逻辑条下方的第二下逆向逻辑条。
在一些实施例中,第一正向逻辑条对和第二正向逻辑条对彼此大致平行,并且第一逆向逻辑条对和第二逆向逻辑条对彼此大致平行。
在一些实施例中,所述处理器件还包括第三正向逻辑条对,第四正向逻辑条对,第三逆向逻辑条对,以及第四逆向逻辑条对。第三正向逻辑条对位于第二正向逻辑条对附近并且包括第三上正向逻辑条和位于第三上正向逻辑条下方的第三下正向逻辑条,第四正向逻辑条对位于第三正向逻辑条对附近并且包括第四上正向逻辑条和位于第四上正向逻辑条下方的第四下正向逻辑条。第三逆向逻辑条对位于第二逆向逻辑条对附近并且包括第三上逆向逻辑条和位于第三上逆向逻辑条下方的第三下逆向逻辑条。第四逆向逻辑条对位于第三逆向逻辑条对附近并且包括第四上逆向逻辑条和位于第四上逆向逻辑条下方的第四下逆向逻辑条。第一正向逻辑条对、第二正向逻辑条对、第三正向逻辑条对和第四正向逻辑条对组成正向逻辑条组。第一上正向逻辑条、第二上正向逻辑条、第三上正向逻辑条和第四上正向逻辑条组成上正向逻辑条层。第一下正向逻辑条、第二下正向逻辑条、第三下正向逻辑条和第四下正向逻辑条组成下正向逻辑条层。第一逆向逻辑条对、第二逆向逻辑条对、第三逆向逻辑条对和第四逆向逻辑条对组成逆向逻辑条组。第一上逆向逻辑条、第二上逆向逻辑条、第三上逆向逻辑条和第四上逆向逻辑条组成上逆向逻辑条层。第一下逆向逻辑条、第二下逆向逻辑条、第三下逆向逻辑条和第四下逆向逻辑条组成下逆向逻辑条层。
在一些实施例中,第一正向逻辑条对、第二正向逻辑条对、第三正向逻辑条对和第四正向逻辑条对大致互相平行,并且第一逆向逻辑条对、第二逆向逻辑条对、第三逆向逻辑条对和第四逆向逻辑条对大致互相平行。
在一些实施例中,所述数据条是第一数据条,所述至少一个输入存储单元是至少一个第一输入存储单元,并且所述至少一个输出存储单元是至少一个第一输出存储单元。所述处理器件还包括与正向逻辑条组交叉的第二数据条。第二数据条包括对应于正向逻辑条组的至少一个第二输入存储单元和对应于逆向逻辑条组的至少一个第二输出存储单元。所述至少一个第二输入存储单元中的每一个存储二进制0或1,并且所述至少一个第二输出存储单元中的每一个存储二进制0或1。第一数据条和第二数据条组成数据条对。
在一些实施例中,第一数据条和第二数据条彼此大致平行。
在一些实施例中,第一数据条和第二数据条至少部分地夹在上正向逻辑条层和下正向逻辑条层之间。
在一些实施例中,所述处理器件还包括与正向逻辑条组交叉的第一上正向指令条,与正向逻辑条组交叉的第二上正向指令条,与正向逻辑条组交叉且位于第一上正向指令条下方的第一下正向指令条,以及与正向逻辑条组交叉且位于第二上正向指令条下方的第二下正向指令条。第一上正向指令条改变上正向逻辑条层中的上正向自旋波的偏振方向。第二上正向指令条进一步改变上正向自旋波的偏振方向。第一下正向指令条改变下正向逻辑条层中的下正向自旋波的偏振方向。第二下正向指令条进一步改变下正向自旋波的偏振方向。
在一些实施例中,第一上正向指令条和第二上正向指令条位于上正向逻辑条层上方,第一下正向指令条和第二下正向指令条位于下正向逻辑条层下方并且分别大致平行于第一上正向指令条和第二上正向指令条。
在一些实施例中,第一上正向指令条、第一下正向指令条、第二上正向指令条和第二下正向指令条至少部分地将上正向逻辑条层和下正向逻辑条层夹在中间。
在一些实施例中,所述处理器件还包括与逆向逻辑条组交叉的第一上逆向指令条,与逆向逻辑条组交叉的第二上逆向指令条,与逆向逻辑条组交叉的第三上逆向指令条,与逆向逻辑条组交叉的第一下逆向指令条,与逆向逻辑条组交叉的第二下逆向指令条,以及与逆向逻辑条组交叉的第三下逆向指令条。第一上逆向指令条改变上逆向逻辑条层中的上逆向自旋波的偏振方向,第二上逆向指令条进一步改变上逆向自旋波的偏振方向。第三上逆向指令条进一步改变上逆向自旋波的偏振方向。第一下逆向指令条改变下逆向逻辑条层中的下逆向自旋波的偏振方向。第二下逆向指令条进一步改变下逆向自旋波的偏振方向。第三下逆向指令条进一步改变下逆向自旋波的偏振方向。
在一些实施例中,第一上逆向指令条、第二上逆向指令条和第三上逆向指令条位于上逆向逻辑条层之上。第一下逆向指令条、第二下逆向指令条和第三下逆向指令条位于下逆向逻辑条层下方并且分别大致平行于第一上逆向指令条、第二上逆向指令条和第三上逆向指令条逆向指令条。
在一些实施例中,第一上逆向指令条、第一下逆向指令条、第二上逆向指令条、第二下逆向指令条、第三上逆向指令条和第三下逆向指令条至少部分地夹住上逆向逻辑条层和下逆向逻辑条层。
在一些实施例中,所述处理器件还包括与正向逻辑条组和逆向逻辑条组交叉的上寄存条,以及与正向逻辑条组和逆向逻辑条组交叉并且位于上寄存条下方的下寄存条。上寄存条包括上正向重叠部分和上逆向重叠部分,上正向重叠部分在远离正向逻辑条组的正向自旋波注入端的位置处与正向逻辑条组重叠,上逆向重叠部分在远离逆向逻辑条组的逆向自旋波注入端的位置处与逆向逻辑条组重叠。上寄存条还包括至少一个上寄存存储单元,存储由上逻辑条层中的上正向自旋波承载的信息。下寄存条包括下正向重叠部分和下逆向重叠部分,下正向重叠部分在远离正向自旋波注入端的位置处与正向逻辑条组重叠,下逆向重叠部分在远离逆向自旋波注入端的位置处与逆向逻辑条组重叠。下寄存条包括至少一个下寄存存储单元,存储由下逻辑条层中的下正向自旋波承载的信息。
在一些实施例中,上寄存条位于正向逻辑条组和逆向逻辑条组上方,下寄存条位于正向逻辑条组和逆向逻辑条组下方。
在一些实施例中,上寄存条和下寄存条至少部分地夹着上正向逻辑条层、下正向逻辑条层、上逆向逻辑条层和下逆向逻辑条层。
本公开还提供了一种逻辑计算方法,包括将输入条的至少一个输入条存储单元移位到输入条与逻辑条重叠的一部分中,并将极化自旋波注入逻辑条。所述极化自旋波由所述至少一个输入条存储单元调制以携带信息。
在一些实施例中,所述逻辑计算方法还包括通过将指令条的至少一个指令存储单元移位到指令条与逻辑条重叠的部分来调制自旋波的偏振方向。
在一些实施例中,所述逻辑计算方法还包括将至少一个输出条存储单元移出输出条与逻辑条重叠的部分。
在一些实施例中,逻辑条包括由逻辑条磁畴壁分开的两个逻辑条磁畴。
在一些实施例中,逻辑条包括第一磁性层和位于第一磁性层上方的第二磁性层。第一磁性层包括位于所述两个逻辑条磁畴中的第一个中的第一磁性部分和位于所述两个逻辑条磁畴中的第二个中的第二磁性部分。第一磁性部分的磁矩指向第一方向,第二磁性部分的磁矩指向与第一方向大致相反的第二方向。第二磁性层包括位于所述两个逻辑条磁畴中的第一个中的第三磁性部分和位于所述两个逻辑条磁畴中的第二个中的第四磁性部分。第三磁性部分的磁矩指向第二方向,第四磁性部分的磁矩指向第一方向。
本公开还提供了另一种逻辑计算方法,包括将多个数据条的多个输入存储单元移位到所述多个数据条与多个正向逻辑条(FLT)重叠的多个部分中,将多个正向极化自旋波注入到所述多个正向逻辑条中,将寄存条的多个寄存存储单元从寄存条与所述多个正向逻辑条重叠的多个部分中移位到寄存条与多个逆向逻辑条重叠(BLT)的多个部分中,并且将多个逆向极化自旋波注入到所述多个逆向逻辑条中。所述多个正向偏振自旋波由所述多个输入条存储单元调制以携带信息,所述多个逆向偏振自旋波由所述多个寄存存储单元调制以携带信息。
在一些实施例中,所述逻辑计算方法还包括将所述多个数据条的多个输出存储单元移出所述多个数据条与所述多个逆向逻辑条重叠的多个部分。
附图说明
图1是本公开实施例提供的一种人工反铁磁体(SyAF)的示意图。
图2是本公开实施例提供的一种自旋波控制器件的示意图。
图3是本公开实施例提供的一种极化自旋波控制方法的流程图。
图4A和4B是本公开实施例提供的极化自旋波驱动磁畴壁的示意图。
图5是本公开实施例提供的一种计算器件的示意图。
图6是本公开实施例提供的一种克隆(CLONE)门的示意图。
图7是本公开实施例提供的一种非(NOT)门的示意图。
图8是本公开实施例提供的另一种计算器件的示意图。
图9是本公开实施例提供的一种或/或非(OR/NOR)门的示意图。
图10是本公开实施例提供的一种同或/异或(XNOR/XOR)门的示意图。
图11是本公开实施例提供的一种与非/与(NAND/AND)门的示意图。
图12是本公开实施例提供的另一种计算器件的示意图。
图13是本公开实施例提供的一种逻辑计算方法的流程图。
图14A至14D是本公开实施例提供的一种处理器件的示意图。
图15是本公开实施例提供的另一种逻辑计算方法的流程图。
具体实施方式
下面结合附图,对本公开的一些实施例作详细说明。所描述的实施例仅仅是用于描述本公开的一些示例,而非限制本公开的范围。附图中自始至终相同或类似的标号表示相同或类似的元件。
图1是本公开实施例提供的人工反铁磁体(SyAF)100的示意图。如图1所示, SyAF100包括第一磁性层101和位于第一磁性层101上方的第二磁性层103。在一些实施例中,第一磁性层101和第二磁性层103可以包括铁磁层。第一磁性层101的磁矩指向第一方向112,第二磁性层103的磁矩指向第二方向114。第二方向114大致与第一方向112相反。在一些实施例中,第一方向112和第二方向114可以大致垂直于第二磁性层103的上表面。例如,如图1所示,第二磁性层103的磁矩指向朝上,即垂直于第二磁性层103的上表面。第一磁性层101的磁矩指向朝下,即与第二磁性层 103的磁矩指向相反。在另一些实施例中,第一方向112和第二方向114可以大致平行于第二磁性层103的上表面或者大致垂直于第二磁性层103的侧面。
在一些实施例中,第一磁性层101和第二磁性层103可以具有大致相同的宽度。在一些实施例中,第一磁性层101和第二磁性层103可以包括相同的材料或者相同的结构,即,除了磁矩指向,第一磁性层101和第二磁性层103可以具有相同的材料属性(如材料成分)或者结构属性(如由两层构成的薄膜)。在一些实施例中,第一磁性层101和第二磁性层103可以具有相同的饱和磁矩强度。在一些实施例中,第一磁性层101和第二磁性层103可以包括磁性金属材料,例如铁(Fe),镍(Ni),钴 (Co),铬(Cr)等。在另一些实施例中,第一磁性层101和第二磁性层103可以包括绝缘材料,例如钇铁石榴石(YIG)等。
在一些实施例中,SyAF 100进一步包括夹在第一磁性层101和第二磁性层103 间的夹层105。在一些实施例中,夹层105可以是金属夹层。在一些实施例中,第一磁性层101和第二磁性层103可以通过夹层105经由Rudderman-Kittel-Kasuya-Yosida (RKKY)相互作用反铁磁耦合。因为第一磁性层101和第二磁性层103在空间上被夹层105隔开,所以左旋圆偏振态自旋波和右旋圆偏振态自旋波可以被分离在SyAF 100的第一磁性层101和第二磁性层。例如,左旋圆偏振态自旋波主要位于磁矩指向朝下的第一磁性层101中,右旋圆偏振态自旋波主要位于磁矩指向朝上的第二磁性层 103中。
图2是本公开实施例提供的自旋波控制器件200的示意图。自旋波控制器件 200可以用于控制注入自旋波控制器件200的极化自旋波的偏振方向。
如图2所示,自旋波控制器件200包括SyAF 100和与SyAF 100相耦合的覆盖层107。覆盖层107与SyAF 100的一部分相重叠。在一些实施例中,覆盖层107可以位于第二磁性层103上方并与第二磁性层103的一部分相重叠。在另一些实施例中,覆盖层107可以位于第一磁性层101下方并与第一磁性层101的一部分相重叠。
在一些实施例中,夹层105是第一夹层105,自旋波控制器件200还包括夹在 SyAF100和覆盖层107间的第二夹层109。在图2的示例中,覆盖层107位于第二磁性层103上,第二夹层109夹在第二磁性层103和覆盖层107之间。第二磁性层103 和覆盖层107的耦合强度取决于第二夹层109的厚度。在覆盖层107位于第一磁性层 101下的示例中,第二夹层109夹在第一磁性层101和覆盖层107之间。第一磁性层 101和覆盖层107的耦合强度取决于第二夹层109的厚度。在一些实施例中,第二夹层 109可以是金属夹层。
在一些实施例中,第一磁性层101和第二磁性层103具有大致相同的宽度。在一些实施例中,覆盖层107的长度可以短于第一磁性层101和第二磁性层103的长度。覆盖层107的长度方向或者第一磁性层101和第二磁性层103的长度方向指的是极化自旋波在自旋波控制器件200中的传输方向。
覆盖层107的磁矩指向大致为第一方向112或者第二方向114。例如,如图2所示,覆盖层107的磁矩指向与第一磁性层101的磁矩指向对齐(如朝下),或者与第二磁性层103的磁矩指向对齐(如朝上)。
在一些实施例中,可以控制覆盖层107的磁矩指向在与第一方向112对齐和与第二方向114对齐之间切换。在一些实施例中,自旋波控制器件200还可以包括与覆盖层107相耦合的切换器件(在图2中未示出)。切换器件可以用于切换覆盖层107 的磁矩指向。例如,切换器件可以通过电流驱动磁畴壁运动来切换覆盖层107的磁矩指向。
自旋波控制器件200用于偏转注入到自旋波控制器件200中的极化自旋波的偏振方向。极化自旋波可以包括线性极化自旋波。极化自旋波偏振的偏转方向取决于覆盖层107的磁矩指向,第一磁性层101的磁矩指向,以及第二磁性层103的磁矩指向。例如,如图2所示,当覆盖层107的磁矩指向大致与第一磁性层101的磁矩指向对齐,并且第一磁性层101的磁矩指向朝下时,极化自旋波的偏振方向顺时针偏转。再如,当覆盖层107的磁矩指向大致与第二磁性层103的磁矩指向对齐,并且第二磁性层 103的磁矩指向朝上时,极化自旋波的偏振方向逆时针偏转。极化自旋波偏振的偏转角度可取决于覆盖层的长度、第一夹层的厚度、第二夹层的厚度、极化自旋波的频率、第一磁性层的材料特性和/或第二磁性层的材料特性,等等。
按照本公开的实施例,自旋波控制器件可以通过将覆盖层耦合到SyAF来实现。通过将覆盖层反铁磁耦合到第一磁性层或第二磁性层,可以在第一磁性层或第二磁性层中引起极化自旋波的额外相位,使得经过覆盖层的极化自旋波可以产生相对相位延迟,导致注入SyAF的极化自旋波的偏振方向发生偏转。由此,自旋波控制器件可以控制极化自旋波的偏振方向。
图3是本公开实施例提供的极化自旋波控制方法300的流程图。
如图3所示,步骤301,将极化自旋波注入SyAF。
极化自旋波可以从SyAF的一端注入,此端也可被称作SyAF的“自旋波注入端”。极化自旋波可以包含具有某一偏振角度的线性极化自旋波。SyAF包括第一磁性层和位于第一磁性层上的第二磁性层。第一磁性层的磁矩指向第一方向,第二磁性层的磁矩指向第二方向。第二方向大致与第一方向相反。在一些实施例中,第一方向和第二方向可以大致垂直于第二磁性层的上表面。在另一些实施例中,第一方向和第二方向可以大致平行于第二磁性层的上表面或者大致垂直于第二磁性层的侧面。本实施例的SyAF与图1所示的SyAF 100相似,在此将不再累述。
步骤330,控制覆盖层的磁矩指向以偏转极化自旋波的偏振方向。
覆盖层与SyAF相耦合,并与SyAF的一部分相重叠。在一些实施例中,覆盖层可以位于第二磁性层上方并与第二磁性层的一部分相重叠。在另一些实施例中,覆盖层可以位于第一磁性层下方并与第一磁性层的一部分相重叠。
在一些实施例中,可以控制覆盖层的磁矩指向大致与第一方向对齐,使得极化自旋波的偏振方向朝第一偏转方向偏转(延迟)。例如,当覆盖层的磁矩指向大致与第一方向对齐,并且第一方向指向朝下时,极化自旋波的偏振向右延迟,即顺时针偏转。再如,当覆盖层的磁矩指向大致与第一方向对齐,并且第一方向指向朝上时,极化自旋波的偏振向左延迟,即逆时针偏转。
在另外一些实施例中,可以控制覆盖层的磁矩指向大致与第二方向对齐,使得极化自旋波的偏振方向朝第二偏转方向偏转(延迟)。第二方向与第一方向相反。例如,当覆盖层的磁矩指向大致与第二方向对齐,并且第二方向指向朝上时,极化自旋波的偏振向左延迟,即逆时针偏转。再如,当覆盖层的磁矩指向大致与第二方向对齐,并且第二方向指向朝下时,极化自旋波的偏振向右延迟,即顺时针偏转。
极化自旋波偏振的偏转角度可取决于覆盖层的长度、第一夹层的厚度、第二夹层的厚度、极化自旋波的频率、第一磁性层的材料特性和/或第二磁性层的材料特性,等等。本实施例中,第一夹层和第二夹层分别与图2中的第一夹层105和第二夹层 109相似,在此将不再累述。
图4A和4B是本公开实施例提供的极化自旋波驱动磁畴壁的示意图。如图4A 和4B所示,SyAF 100包括由磁畴壁隔开的两个磁畴。第一磁性层101包括第一磁性部分101-1和第二磁性部分101-2,其中第一磁性部分101-1位于所述两个磁畴中的第一个磁畴中,第二磁性部分101-2位于所述两个磁畴中的第二个磁畴中。第一磁性部分101-1的磁矩指向与第二磁性部分101-2的磁矩指向相反。例如,第一磁性部分 101-1的磁矩指向第一方向(如朝下),第二磁性部分101-2的磁矩指向第二方向(如朝上)。第二磁性层103包括第三磁性部分103-1和第四磁性部分103-2,其中第三磁性部分103-1位于所述两个磁畴中的第一个磁畴中,第四磁性部分103-2位于所述两个磁畴中的第二个磁畴中。第三磁性部分103-1的磁矩指向与第四磁性部分103-2的磁矩指向相反。例如,第三磁性部分103-1的磁矩指向第二方向(如朝上),第四磁性部分103-2的磁矩指向第一方向(如朝下)。在一些实施例中,第一磁性部分101-1、第二磁性部分101-2、第三磁性部分103-1、和第四磁性部分103-2可包括铁磁部分。
如图4A和4B所示,第三磁性部分103-1位于第一磁性部分101-1之上,第四磁性部分103-2位于第二磁性部分101-2之上。第一磁性部分101-1和第三磁性部分 103-1对应两个磁畴中的第一个磁畴,第二磁性部分101-2和第四磁性部分103-2对应两个磁畴中的第二个磁畴。第一磁性部分101-1和第二磁性部分101-2的交界面与第三磁性部分103-1和第四磁性部分103-2的交界面彼此对齐,并形成两个磁畴中的第一个磁畴和两个磁畴中的第二个磁畴的交界面。
磁畴壁位于所述两个磁畴中的第一个磁畴和两个磁畴中的第二个磁畴的交界面处,例如图4A和4B中显示的位置P1。由于Dzyaloshinskii-Moriya相互作用,磁畴壁可以作为自旋波偏振片,可以传输在某个方向上线性极化的自旋波,并阻挡垂直于特定方向的线性极化自旋波。被阻挡的自旋波可以被磁畴壁反射,并且在磁畴壁上施加力,使得磁畴壁向前移动。例如,如图4A和4B所示,当第一方向是向下方向而第二方向是向上方向时,X极化自旋波可以通过磁畴壁传输,而Y极化自旋波可以被磁畴壁所阻挡。在这种情况下,如图4A所示,X极化自旋波没有影响,因此磁畴壁可以保持在位置P1。相反,如图4B所示,反射的Y极化自旋波可以在磁畴壁上施加力,并推动磁畴壁向前移动到新位置P2。X极化自旋波是指在X方向(例如,纵向)上线性极化偏振的自旋波,并且Y极化自旋波是指在Y方向(例如,横向)上线性极化偏振的自旋波。
因此,通过注入磁畴壁阻挡方向上的线性极化自旋波,可以控制磁畴壁的移动。
下面将详细描述一种计算器件,该计算器件是基于控制极化自旋波的偏振方向和使用极化自旋波驱动磁畴壁运动。
图5是本公开实施例提供的计算器件500的示意图。计算器件500可以通过将信息编码在极化自旋波的偏振角上来实现读取和写入信息。
如图5所示,计算器件500包括逻辑条501、输入条502和输出条503。逻辑条 501包括由逻辑条磁畴壁隔开的两个逻辑条磁畴。逻辑条磁畴壁的位置位于所述两个逻辑条磁畴的交界面处。输入条502在逻辑条501的第一位置处与逻辑条501交叉,输出条503在逻辑条501的第二位置处与逻辑条501交叉。第二位置接近于逻辑条501 的逻辑条磁畴壁。第一位置比第二位置更靠近逻辑条501的自旋波注入端。在一些实施例中,第一位置可以位于所述两个逻辑条磁畴中的第一个逻辑条磁畴中,第二位置可以位于所述两个逻辑条磁畴中的第二个逻辑条磁畴中。在一些实施例中,输入条 502和输出条503可以大致垂直于逻辑条501。在一些实施例中,输入条502和输出条 503可以位于逻辑条501的上方,也可以位于逻辑条501的下方。
逻辑条501包括第一磁性层5011和位于第一磁性层5011上的第二磁性层5012。在一些实施例中,第一磁性层5011和第二磁性层5012具有相同的宽度。在一些实施例中第一磁性层5011和第二磁性层5012包含铁磁层。第一磁性层5011包括第一磁性部分5011-1和第二磁性部分5011-2,其中第一磁性部分5011-1位于所述两个逻辑条磁畴中的第一个逻辑条磁畴中,第二磁性部分5011-2位于所述两个逻辑条磁畴中的第二个逻辑条磁畴中。第一磁性部分5011-1的磁矩指向第一方向,第二磁性部分5011-2 的磁矩指向第二方向。第二磁性层5012包括第三磁性部分5012-1和第四磁性部分 5012-2,其中第三磁性部分5012-1位于所述两个逻辑条磁畴中的第一个逻辑条磁畴中,第四磁性部分5012-2位于所述两个逻辑条磁畴中的第二个磁畴中。第三磁性部分 5012-1的磁矩指向第二方向,第四磁性部分5012-2的磁矩指向第一方向。在一些实施例中,第一方向与第二方向相反。在一些实施例中,第一方向和第二方向可以大致垂直于逻辑条501的上表面。例如,如图5所示,第一方向朝下,第二方向朝上。在另一些实施例中,第一方向和第二方向可以大致平行于逻辑条501的上表面或者大致垂直于逻辑条501的侧面。在一些实施例中,第一磁性部分5011-1、第二磁性部分5011-2、第三磁性部分5012-1和第四磁性部分5012-2可包括铁磁部分。
如图5所示,输入条502包括至少一个输入条磁畴5021。所述至少一个输入条磁畴5021中的每一个输入条磁畴5021可以包括至少一个输入条存储单元。所述至少一个输入条存储单元可以用于存储二进制0或1。二进制0或1可以对应于所述至少一个输入条磁畴5021的磁矩指向,由此,对应于所述至少一个输入条存储单元的磁矩指向。在一些实施例中,所述至少一个输入条磁畴5021中的每一个输入条磁畴5021的磁矩大致指向第一方向或大致指向第二方向。例如,如果某一输入条磁畴5021的磁矩大致指向第一方向,并且第一方向朝下,则该输入条磁畴5021的所述至少一个输入条存储单元存储二进制0。如果某一输入条磁畴5021的磁矩大致指向第二方向,并且第二方向朝上,则该输入条磁畴5021的所述至少一个输入条存储单元存储二进制1。
在一些实施例中,计算器件500进一步包括与输入条502相耦合的输入条驱动器件(图5中未示出)。输入条驱动器件用于驱动至少一个输入条存储单元中的一个输入条存储单元进入和离开至输入条502的重叠部分(例如,通过电流驱动的磁畴壁运动)。输入条502的重叠部分指的是输入条502与逻辑条501重叠的部分。在一些实施例中,输入条驱动器件可以提供时钟控制的电流驱动磁畴壁运动,用于驱动至少一个输入条存储单元中的一个输入条存储单元驱动进入或者离开输入条502的重叠部分。时钟控制的电流是指以特定频率提供的电流。
按照本实施例,输入条502和逻辑条501的两个逻辑条磁畴中的第一个逻辑条磁畴可以实现自旋波控制器件,其类似于图2中的自旋波控制器件200。极化自旋波可以从逻辑条501的自旋波注入端注入到逻辑条501内。当极化自旋波通过输入条 502的重叠部分时,极化自旋波的偏振可以至少根据输入条502的重叠部分的磁矩指向而偏转。由于输入条502的重叠部分的磁矩指向对应于二进制0或1,在经过输入条502的重叠部分之后,存储在输入条502中的信息可以编码在极化自旋波的偏振角上。因此,通过将信息编码在极化自旋波的偏振角上,可以实现读取过程。
输出条503包括至少一个输出条磁畴5031。所述至少一个输出条磁畴5031中的每一个输出条磁畴5031可以包括至少一个输出条存储单元。所述至少一个输出条存储单元可以用于存储二进制0或1。二进制0或1可以对应于所述至少一个输出条磁畴 5031的磁矩指向,由此,对应于所述至少一个输出条存储单元的磁矩指向。在一些实施例中,所述至少一个输出条磁畴5031中的每一个输出条磁畴5031的磁矩大致指向第一方向或大致指向第二方向。例如,如果某一输出条磁畴5031的磁矩大致指向第一方向,并且第一方向朝下,则该输出条磁畴5031的至少一个输出条存储单元存储二进制0。如果某一输出条磁畴5031的磁矩大致指向第二方向,并且第二方向朝上,则该输出条磁畴5031的所述至少一个输出条存储单元存储二进制1。
在一些实施例中,计算器件500进一步包括与输出条503相耦合的输出条驱动器件(图5中未示出)。输出条驱动器件用于(例如,通过电流驱动的磁畴壁运动) 驱动至少一个输出条存储单元中的一个输出条存储单元进入和离开输出条503的重叠部分。输出条503的重叠部分指的是输出条503与逻辑条501重叠的部分。在一些实施例中,输出条驱动器件可以提供时钟控制的电流驱动磁畴壁运动,用于驱动至少一个输出条存储单元中的一个输出条存储单元驱动进入或者离开至输出条503的重叠部分。
如图5所示,逻辑条磁畴壁的自然位置位于P1。P1是极化自旋波未被注入逻辑条501时,所述两个逻辑条磁畴的第一个逻辑条磁畴和第二个逻辑条磁畴的交界面的位置。当极化自旋波被注入逻辑条501,并且经过输入条502的重叠部分之后,若极化自旋波的偏振角在特定范围之外(也被称为“移位范围”),逻辑条磁畴壁可以保持在P1位置。当经过输入条502的重叠部分之后,若极化自旋波的偏振角在移位范围内时,可以推动逻辑条磁畴壁在逻辑条501上移动(移位)到位置P2。即,所述两个逻辑条磁畴中的第一个逻辑条磁畴和第二个逻辑条磁畴的交界面可以移动到位置P2。由此,在经过输入条502的重叠部分之后,逻辑条磁畴壁的位置可以通过极化自旋波的偏振角来调制。
在一些实施例中,P1可以是在第一位置之后(输入条502与逻辑条501在第一位置交叉),并且在第二位置之前(输出条503与逻辑条501在第二位置交叉)。P2 可以是输出条503与逻辑条501交叉的第二位置之后的位置。在此种情况下,当经过输入条502的重叠部分之后,若极化自旋波的偏振角在移位范围之外时,输出条503 可以位于所述两个逻辑条磁畴的第二个逻辑条磁畴中,若极化自旋波的偏振角在移位范围之内时,输出条503可以位于所述两个逻辑条磁畴的第一个逻辑条磁畴中。通过逻辑条501和输出条503之间的反铁磁耦合,逻辑条501在输出条503的重叠部分的磁矩可以影响输出条503的磁矩,例如,输出条503的磁矩(例如,磁矩指向)可以取决于逻辑条501在对应于输出条503的重叠部分位置处的磁矩。因此,输出条503 的磁矩指向可以通过经过输入条502的重叠部分之后的极化自旋波的偏振角来调制。因而,通过经过输入条502的重叠部分之后的极化自旋波的偏振角来驱动逻辑条磁畴壁的运动,可以实现写入过程。
在一些实施例中,所述至少一个输入条存储单元中的每一个输入条存储单元和所述至少一个输出条存储单元中的每一个输出条存储单元可以具有与逻辑条501大致相同的宽度,或者可以比逻辑条501略宽。所述至少一个输入条存储单元中的每一个输入条存储单元和所述至少一个输出条存储单元中的每一个输出条存储单元的长度可以短于逻辑条501的长度。所述至少一个输入条存储单元或所述至少一个输出条存储单元的宽度方向为与逻辑条501交叉的方向。
使用图5所示的计算器件500的结构,可以实现克隆(CLONE)门。图6是本公开实施例提供的CLONE门600的示意图。
与本公开一致,经过输入条502的重叠部分之后,极化自旋波的偏振角的移位范围可以取决于,例如自旋波的幅度、自旋波的频率、逻辑条501的材料特性和/或逻辑条501中的磁畴壁的恢复力。因此,当位于输入条502的重叠部分的输入条存储单元存储二进制0时,经过输入条502的重叠部分之后的极化自旋波的偏振角可以被设置为在移位范围内。在此种情况下,逻辑条磁畴壁可以被推至位置P2,通过第一磁性部分5011-1和输出条503之间的反铁磁耦合,第一磁性部分5011-1在对应于输出条 503的重叠部分的位置处的磁矩可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。第一磁性部分5011-1的磁矩指向可以被设置为与存储二进制0的输入条存储单元的磁矩指向相反,使得位于输出条503的重叠部分的输出条存储单元的磁矩方向与存储二进制0的输入条存储单元的磁矩方向相同。由此,可以实现CLONE-0操作,即将存储在输入条存储单元中的二进制0写入输出条存储单元中。
当位于输入条502的重叠部分的输入条存储单元存储二进制1时,经过输入条 502的重叠部分之后的极化自旋波的偏振角可以被设置为在移位范围外。在此种情况下,逻辑条磁畴壁可以保持在位置P1,通过第二磁性部分5011-2和输出条503之间的反铁磁耦合,第二磁性部分5011-2在对应于输出条503的重叠部分的位置处的磁矩可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。第二磁性部分5011-2 的磁矩指向可以被设置为与存储二进制1的输入条存储单元的磁矩指向相反,使得位于输出条503的重叠部分的输出条存储单元的磁矩方向与存储二进制1的输入条存储单元的磁矩方向相同。由此,可以实现CLONE-1操作,即将存储在输入条存储单元中的二进制1写入输出条存储单元中。
例如,如图6所示,第一磁性部分5011-1和第四磁性部分5012-2的磁矩指向上方,第二磁性部分5011-2和第三磁性部分5012-1的磁矩指向下方。二进制0对应于至少一个输入条磁畴5021的磁矩指向(向下),二进制1对应于至少一个输入条磁畴 5021的磁矩指向(向上)。具有61.25°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条501。通过选择输入条502的长度、逻辑条501的第一磁性部分5011- 1和第三磁性部分5012-1之间的第一夹层的厚度、输入条502和逻辑条501之间的第二夹层的厚度、极化自旋波的频率和/或第一磁性层和第二磁性层的材料特性等,使得对于二进制0,偏转角度为+28.75°,而对于二进制1,偏转角度为-16.25°。由此,当位于输入条502的重叠部分的输入条存储单元存储二进制0时,经过输入条502的重叠部分之后,极化自旋波的偏振角等于61.25°+28.75°=90°。当位于输入条502的重叠部分的输入条存储单元存储二进制1时,经过输入条502的重叠部分之后,极化自旋波的偏振角等于61.25°-16.25°=45°。
在一些实施例中,移位范围可以被设置为,例如68°到112°。由此,当输入条存储单元存储二进制0时,经过输入条502的重叠部分之后,极化自旋波的偏振角为 90°,即偏振角在移位范围内。因此,逻辑条磁畴壁可以被推至位置P2,通过第一磁性部分5011-1和输出条503之间的反铁磁耦合,第一磁性部分5011-1在对应于输出条503的重叠部分的位置处的磁矩可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。此种情况下,位于输出条503的重叠部分处的输出条存储单元的磁矩与第一磁性部分5011-1的磁矩指向相反。即,位于输出条503的重叠部分处的输出条存储单元的磁矩指向朝下。由此,存储在输入条存储单元中的二进制0可以被写入(克隆至)输出条503中。
类似的,当输入条存储单元存储二进制1时,经过输入条502的重叠部分之后,极化自旋波的偏振角为45°,即偏振角在移位范围外。因此,逻辑条磁畴壁可以保持在位置P1,通过第二磁性部分5011-2和输出条503之间的反铁磁耦合,第二磁性部分 5011-2在对应于输出条503的重叠部分的位置处的磁矩,可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。此种情况下,位于输出条503的重叠部分处的输出条存储单元的磁矩与第二磁性部分5011-2的磁矩指向相反。即,位于输出条503 的重叠部分处的输出条存储单元的磁矩指向朝上。由此,存储在输入条存储单元中的二进制1可以被写入(克隆至)输出条503中。
使用图5所示的计算器件500的结构,可以实现非(NOT)门。图7是本公开实施例提供的NOT门700的示意图。
当位于输入条502的重叠部分的输入条存储单元存储二进制0时,经过输入条 502的重叠部分之后的极化自旋波的偏振角可以被设置为在移位范围外。在此种情况下,逻辑条磁畴壁可以保持在位置P1,通过第二磁性部分5011-2和输出条503之间的反铁磁耦合,第二磁性部分5011-2在对应于输出条503的重叠部分的位置处的磁矩可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。第二磁性部分5011-2 的磁矩指向可以被设置为与存储二进制0的输入条存储单元的磁矩指向一致,使得位于输出条503的重叠部分的输出条存储单元的磁矩方向与存储二进制0的输入条存储单元的磁矩方向相反。由此,可以实现NOT-0操作,即,当输入条存储单元中存储二进制0时,将二进制1写入输出条存储单元中。
当位于输入条502的重叠部分的输入条存储单元存储二进制1时,经过输入条 502的重叠部分之后的极化自旋波的偏振角可以被设置为在移位范围内。在此种情况下,逻辑条磁畴壁可以被推至位置P2,通过第一磁性部分5011-1和输出条503之间的反铁磁耦合,第一磁性部分5011-1在对应于输出条503的重叠部分的位置处的磁矩可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。第一磁性部分5011-1 的磁矩指向可以被设置为与存储二进制1的输入条存储单元的磁矩指向相一致,使得位于输出条503的重叠部分的输出条存储单元的磁矩方向与存储二进制1的输入条存储单元的磁矩方向相反。由此,可以实现NOT-1操作,即,当输入条存储单元中存储二进制1时,将二进制0写入输出条存储单元中。
如图7所示,NOT门700与CLONE门600类似。为了实现NOT门700,从逻辑条501的自旋波注入端注入逻辑条501的极化自旋波的偏振角与用于实现CLONE 门600的极化自旋波的偏振角不同。例如,为了实现图7所示的NOT门700,具有 106°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条501。由此,当位于输入条502的重叠部分的输入条存储单元存储二进制0时,经过输入条502的重叠部分之后,极化自旋波的偏振角等于106°+28.75°=134.75°,此时偏振角在位移范围 (68°至112°)之外。因此,逻辑条磁畴壁可以保持在位置P1,通过第二磁性部分 5011-2和输出条503之间的反铁磁耦合,第二磁性部分5011-2在对应于输出条503的重叠部分的位置处的磁矩,可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。此种情况下,位于输出条503的重叠部分处的输出条存储单元的磁矩与第二磁性部分5011-2的磁矩指向相反。即,位于输出条503的重叠部分处的输出条存储单元的磁矩指向朝上。由此,与存储在输入条存储单元中的二进制0相反的二进制1可以被写入输出条503中。
类似的,当位于输入条502的重叠部分的输入条存储单元存储二进制1时,经过输入条502的重叠部分之后,极化自旋波的偏振角等于106°-16.25°=89.75°,此时偏振角在位移范围之内。因此,逻辑条磁畴壁可以被推至位置P2,通过第一磁性部分 5011-1和输出条503之间的反铁磁耦合,第一磁性部分5011-1在对应于输出条503的重叠部分的位置处的磁矩,可以影响位于输出条503的重叠部分处的输出条存储单元的磁矩。此种情况下,位于输出条503的重叠部分处的输出条存储单元的磁矩与第一磁性部分5011-1的磁矩指向相反。即,位于输出条503的重叠部分处的输出条存储单元的磁矩指向朝下。由此,与存储在输入条存储单元中的二进制1相反的二进制0可以被写入输出条503中。
图8是本公开实施例提供的计算器件800的示意图。图8所示的计算器件800 类似于图5所示的计算器件500,但计算器件800还包括另一个输入条504和另一个输出条505。输入条502也称为第一输入条502,至少一个输入条磁畴5021也称为至少一个第一输入条磁畴5021,并且至少一个输入条502的输入条存储单元也称为至少一个第一输入条存储单元。输出条503也称为第一输出条503,至少一个输出条磁畴 5031也称为至少一个第一输出条磁畴5031,并且至少一个输出条503的输入条存储单元也称为至少一个第一输入条存储单元。输入条504也称为第二输入条504,输出条 505也称为第二输出条505。
第二输入条504在逻辑条501的第三位置处与逻辑条501交叉。在一些实施例中,第三位置可以靠近第一位置,并且可以位于所述两个逻辑条磁畴中的第一个逻辑条磁畴处。例如,如图8所示,第二输入条504位于比第一位置更远离逻辑条501的自旋波注入端的第三位置处。第二输出条505可以位于与逻辑条501的第二位置相对应的位置处与逻辑条501交叉。在一些实施例中,第二输出条505可以靠近逻辑条磁畴壁,并且可以位于所述两个逻辑条磁畴中的第二个逻辑条磁畴处。在一些实施例中,第一输入条502和第二输入条504彼此大致平行,并且大致垂直于逻辑条501。进一步,第一输出条503和第二输出条505可以位于逻辑条501的相对两侧,彼此大致平行,并且大致垂直于逻辑条501。在一些实施例中,第二输入条504和第二输出条505 可以位于逻辑条501之上,也可以位于逻辑条501之下。例如,如图8所示,第二输出条505位于逻辑条501下方,且其位置与逻辑条501的第二位置相对应。
在一些实施例中,第二输入条504包括至少一个第二输入条磁畴5041。所述至少一个第二输入条磁畴5041中的每一个第二输入条磁畴5041可以包括至少一个第二输入条存储单元。所述至少一个第二输入条存储单元可以用于存储二进制0或1。二进制0或1可以对应于所述至少一个第二输入条磁畴5041的磁矩指向,由此,对应于所述至少一个第二输入条存储单元的磁矩指向。在一些实施例中,所述至少一个第二输入条磁畴5041中的每一个第二输入条磁畴5041的磁矩大致指向第一方向或大致指向第二方向。例如,如果某一第二输入条磁畴5041的磁矩大致指向第一方向,并且第一方向朝下,则该第二输入条磁畴5041的所述至少一个第二输入条存储单元存储二进制0。另一方面,如果某一第二输入条磁畴5041的磁矩大致指向第二方向,并且第二方向朝上,则该第二输入条磁畴5041的所述至少一个第二输入条存储单元存储二进制 1。
在一些实施例中,第二输出条505包括至少一个第二输出条磁畴5051。所述至少一个第二输出条磁畴5051中的每一个第二输出条磁畴5051可以包括至少一个第二输出条存储单元。所述至少一个第二输出条存储单元可以用于存储二进制0或1。二进制0或1可以对应于所述至少一个第二输出条磁畴5051的磁矩指向,由此,对应于所述至少一个第二输出条存储单元的磁矩指向。在一些实施例中,所述至少一个第二输出条磁畴5051中的每一个第二输出条磁畴5051的磁矩大致指向第一方向或大致指向第二方向。例如,如果某一第二输出条磁畴5051的磁矩大致指向第一方向,并且第一方向朝下,则该第二输出条磁畴5051的所述至少一个第二输出条存储单元存储二进制0。如果某一第二输出条磁畴5051的磁矩大致指向第二方向,并且第二方向朝上,则该第二输出条磁畴5051的所述至少一个第二输出条存储单元存储二进制1。
在一些实施例中,输入条驱动器件也与第二输入条504相耦合,并且用于驱动所述至少一个第二输入条存储单元中的一个第二输入条存储单元进入和离开至第二输入条504的重叠部分(例如,通过电流驱动的磁畴壁运动)。在另一些实施例中,输入条驱动器件是第一输入条驱动器件,计算器件800进一步包含与第二输入条504相耦合的第二输入条驱动器件(图8中未示出)。第二输入条驱动器件用于驱动至少一个第二输入条存储单元中的一个第二输入条存储单元进入和离开第二输入条504的重叠部分(例如,通过电流驱动的磁畴壁运动)。第二输入条504的重叠部分指的是第二输入条504与逻辑条501重叠的部分。在一些实施例中,第二输入条驱动器件可以提供时钟控制的电流驱动磁畴壁运动,驱动所述至少一个第二输入条存储单元中的一个第二输入条存储单元驱动进入或者离开至第二输入条504的重叠部分。
在一些实施例中,输出条驱动器件与第二输出条505相耦合,并且用于驱动至少一个第二输出条存储单元中的一个第二输出条存储单元进入和离开第二输出条505 的重叠部分(例如,通过电流驱动的磁畴壁运动)。在另一些实施例中,输出条驱动器件是第一输出条驱动器件,计算器件800进一步包含与第二输出条505相耦合的第二输出条驱动器件(图8中未示出)。第二输出条驱动器件用于驱动所述至少一个第二输出条存储单元中的一个第二输出条存储单元进入和离开至第二输出条505的重叠部分(例如,通过电流驱动的磁畴壁运动)。第二输出条505的重叠部分指的是第二输出条505与逻辑条501重叠的部分。在一些实施例中,第二输出条驱动器件可以提供时钟控制的电流驱动磁畴壁运动,用于驱动至少一个第二输出条存储单元中的一个第二输出条存储单元进入或者离开第二输出条505的重叠部分。
在一些实施例中,所述至少一个第二输入条存储单元中的每一个第二输入条存储单元和所述至少一个第二输出条存储单元中的每一个第二输出条存储单元可以具有与逻辑条501大致相同的宽度,或者可以比逻辑条501略宽。所述至少一个第二输入条存储单元中的每一个第二输入条存储单元和所述至少一个第二输出条存储单元中的每一个第二输出条存储单元的长度可以短于逻辑条501的长度。所述至少一个第二输入条存储单元或所述至少一个第二输出条存储单元的宽度方向为与逻辑条501交叉的方向。
在一些实施例中,可以具有三个或更多个输入条和/或三个或更多个输出条。本公开不限制输入条和输出条的数量。
第一输入条502和第二输入条504可以具有四种输入组合,即00,10,01和11,并且第一输出条503和第二输出条505均具有两中可能的输出,即,0或1。因此,基于计算器件800的结构,可以实现23=8个不同的门,例如OR、AND、NOR、NAND、 XOR、XNOR等,其示例将在下面描述。
例如,使用图8所示的计算器件800的结构,可以实现或/或非(OR/NOR)门。图9是本公开实施例提供的OR/NOR门900的示意图。
在一些实施例中,如图9所示,第一输出条503和第二输出条505大致彼此平行并且大致垂直于逻辑条501。第一输出条503和第二输出条505分别位于逻辑条501 的上方和下方。第一输出条503的位置和第二输出条505的位置彼此对应。例如,逻辑条501上的第一输出条503的正交投影可以与逻辑条501上的第二输出条505的正交投影相互重叠,例如完全重叠。由于所有相邻层间反铁磁耦合,因此位于逻辑条 501上方的第一输出条503和位于逻辑条501下方的第二输出条505可以生成相反的二进制数。例如,如果第一输出条503输出二进制0,则第二输出条505将输出二进制1。因此,OR/NOR门900可以同时实现OR和NOR的功能。
在一些实施例中,第一输入条502和第二输入条504大致彼此平行并且大致垂直于逻辑条501。第一输入条502和第二输入条504位于逻辑条501的上方。由于二进制0和二进制1引起的偏振偏转是相反的,当第一输入条502的重叠部分处的第一输入条存储单元和第二输入条504的重叠部分处的第二输入条存储单元具有相同的二进制数时(例如,00或11),由第一输入条502和第二输入条504引起的整体偏转可以增强。当第一输入条502的重叠部分处的第一输入条存储单元和第二输入条504的重叠部分处的第二输入条存储单元具有不同的二进制数时(例如,01或10),由第一输入条502和第二输入条504引起的整体偏转可以减弱。
对于输入00(即位于第一输入条502的重叠部分的第一输入条存储单元和位于第二输入条504的重叠部分的第二输入条存储单元均存储二进制0时),经过第一输入条502和第二输入条504的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围内。在此种情况下,逻辑条磁畴壁可以被推至位置P2。由此,第一输出条503 可以输出二进制0,并且相应地,第二输出条505可以输出二进制1。对于其他输入 (即,01,10和11),经过第一输入条502和第二输入条504的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围外。在此种情况下,逻辑条磁畴壁可以保持在位置P1,由此,第一输出条503可以输出二进制1,并且相应地,第二输出条505 可以输出二进制0。也就是说,可以在第一输出条503中实现OR门,并且可以在第二输出条505中实现NOR门。
例如,类似于上面结合图6和7描述的实施例,可以通过选择,例如计算器件 900的材料特性和结构特性,以及自旋波的频率等特性,使得二进制0可以引起+28.75°的偏转角度,并且二进制1可以引起-16.25°的偏转角度。相应的,输入00可以使总偏转角度为2×28.75°=57.5°,输入11可以使总偏转角度为-16.25°×2=-32.5°,输入 01或10可以导致总偏转角度为28.75°–16.25=12.5°。
例如,如图9所示,具有32.5°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条501。经过第一输入条502和第二输入条504的重叠部分之后,对于输入00,极化自旋波的偏振角等于32.5°+57.5°=90°,对于输入11,极化自旋波的偏振角等于32.5°–32.5=0°,对于输入01和10,极化自旋波的偏振角等于 32.5°+12.5=45°。移位范围可以被设置为,例如67.5°到112.5°。因此,对于输入00,经过第一输入条502和第二输入条504的重叠部分之后的极化自旋波的偏振角在移位范围内。由此,逻辑条磁畴壁可以沿着第一输出条503被推至位置P2,第一输出条 503可以输出二进制0。对于其他输入,经过第一输入条502和第二输入条504的重叠部分之后的极化自旋波的偏振角在移位范围外。由此,逻辑条磁畴壁可以保持在位置 P1,第一输出条503可以输出二进制1。因而,OR门可以由第一输出条503实现。由于第二输出条505中的输出二进制数与第一输出条503中的输出二进制数相反,因此可以由第二输出条505实现NOR门。
通过改变从逻辑条501的自旋波注入端注入到逻辑条501中的极化自旋波的偏振角,还可以使用图8所示的计算器件800的结构来实现同或/异或(XNOR/XOR)门。图10是本公开实施例提供的XNOR/XOR门1000的示意图。
对于输入01或者10,经过第一输入条502和第二输入条504的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围内。在此种情况下,逻辑条磁畴壁可以被推至位置P2。由此,第一输出条503可以输出二进制0,并且相应地,第二输出条 505可以输出二进制1。对于输入00或者11,经过第一输入条502和第二输入条504 的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围外。在此种情况下,逻辑条磁畴壁可以保持在位置P1,由此,第一输出条503可以输出二进制1,并且相应地,第二输出条505可以输出二进制0。也就是说,可以在第一输出条503中实现 XNOR门,并且可以在第二输出条505中实现XOR门。
例如,如图10所示,具有77.5°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条501。经过第一输入条502和第二输入条504的重叠部分之后,对于输入00,极化自旋波的偏振角等于77.5°+57.5°=135°,对于输入11,极化自旋波的偏振角等于77.5°–32.5=45°,对于输入01和10,极化自旋波的偏振角等于 77.5°+12.5=90°。因此,对于输入01或者10,经过第一输入条502和第二输入条 504的重叠部分之后的极化自旋波的偏振角在移位范围内。由此,磁畴壁可以沿着第一输出条503被推至位置P2,第一输出条503可以输出二进制0。对于其他输入,经过第一输入条502和第二输入条504的重叠部分之后的极化自旋波的偏振角在移位范围外。由此,磁畴壁可以保持在位置P1,第一输出条503可以输出二进制1。因而, XNOR门可以由第一输出条503实现。由于第二输出条505中的输出二进制数与第一输出条503中的输出二进制数相反,因此可以由第二输出条505实现XOR门。
通过改变从逻辑条501的自旋波注入端注入到逻辑条501中的极化自旋波的偏振角,还可以使用图8所示的计算器件800的结构来实现与非/与(NAND/AND)门。图11是本公开实施例提供的NAND/AND门1100的示意图。
对于输入11,经过第一输入条502和第二输入条504的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围内。在此种情况下,逻辑条磁畴壁可以被推至位置P2。由此,第一输出条503可以输出二进制0,并且相应地,第二输出条505可以输出二进制1。对于输入00,01或者10,经过第一输入条502和第二输入条504的重叠部分之后,极化自旋波的偏振角可以被设置为在移位范围外。在此种情况下,逻辑条磁畴壁可以保持在位置P1,由此,第一输出条503可以输出二进制1,并且相应地,第二输出条505可以输出二进制0。也就是说,可以在第一输出条503中实现 NAND门,并且可以在第二输出条505中实现AND门。
例如,如图11所示,具有122.5°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条501。经过第一输入条502和第二输入条504的重叠部分之后,对于输入00,极化自旋波的偏振角等于122.5°+57.5°=180°,对于输入11,极化自旋波的偏振角等于122.5°–32.5=90°,对于输入01和10,极化自旋波的偏振角等于 122.5°+12.5=135°。因此,对于输入11,经过第一输入条502和第二输入条504的重叠部分之后的极化自旋波的偏振角在移位范围内。由此,磁畴壁可以沿着第一输出条503被推至位置P2,第一输出条503可以输出二进制0。对于其他输入,经过第一输入条502和第二输入条504的重叠部分之后的极化自旋波的偏振角在移位范围外。由此,磁畴壁可以保持在位置P1,第一输出条503可以输出二进制1。因而,NAND 门可以由第一输出条503实现。由于第二输出条505中的输出二进制数与第一输出条 503中的输出二进制数相反,因此可以由第二输出条505实现AND门。
在上述实施例中,描述的计算器件是以一个输入和一个输出,以及两个输入和两个输出为示例。本公开不限于上述示例。与本公开一致的计算器件可以具有更多或更少的输入和/或更多或更少的输出。例如,与本公开一致的计算器件可以具有两个输入条(如图8至11中所示的示例器件),但只有一个输出条,以实现单个OR,NOR, NXOR,XOR,NAND或AND门。
图12是本公开实施例提供的计算器件1200的示意图。图12所示的计算器件 1200类似于图8所示的计算器件800,但计算器件1200进一步包括与逻辑条501交叉的指令条506。指令条506用于改变注入到逻辑条501的自旋波注入端的自旋波的偏振方向。在一些实施例中,指令条506可以大致垂直于逻辑条501。在一些实施例中,指令条506可以位于逻辑条501上方或位于逻辑条501下方。
在一些实施例中,计算器件1200进一步包括与逻辑条501交叉的另一个指令条507。指令条506可以被称为第一指令条506,指令条507可以被称为第二指令条507。在一些实施例中,第一指令条506和第二指令条507可以相互平行,并且大致垂直于逻辑条501。类似于第一指令条506,第二指令条507也可以位于逻辑条501上方或位于逻辑条501下方。例如,如图12所示,第一指令条506和第二指令条507都位于逻辑条501下方。
第一指令条506和第二指令条507均可包括多个磁畴。所述多个磁畴中的每一个磁畴的磁矩指向大致第一方向或大致与第一方向相反的第二方向。第一指令条506 与逻辑条501重叠部分的磁畴的磁矩指向与第二指令条507与逻辑条501重叠部分的磁畴的磁矩指向的组合,可以确定极化自旋波的偏振方向的偏转角度。在一些实施例中,可以具有三个或更多个指令条。本公开不限制指令条的数量。
与本公开一致,通过控制指令条的重叠部分的磁矩指向和/或从逻辑条501的自旋波注入端注入逻辑条501的极化自旋波的偏振角,可以实现不同的逻辑门,诸如CLONE,NOT,OR,AND,NOR,NAND,XOR,XNOR,UNITY,ZERO等。在一些实施例中,具有90°偏振角的极化自旋波从逻辑条501的自旋波注入端注入逻辑条 501。在一些实施例中,当第一指令条506的重叠部分的磁畴存储二进制1,并且在第二指令条507的重叠部分的磁畴存储二进制0时,经过第一指令条506和第二指令条 507的重叠部分之后,极化自旋波的偏振角等于77.5°。由此,可以分别在第一输出条 503和第二输出条505中实现XNOR和XOR门。第一指令条506的重叠部分指的是与逻辑条501重叠的第一指令条506的一部分。第二指令条507的重叠部分指的是与逻辑条重叠的第二指令条507的一部分。
下面的表1列出了通过将不同的二进制数输入到指令条中,使用计算器件1200 可实现的逻辑门。在表1中,I和J可以分别对应于第一指令条506和第二指令条507。 K可以对应于第一输入条502,即,此时第一输入条502作为指令条使用,并且逻辑操作仅作用于存储在第二输入条504中的数据。进一步,表1中的U和L分别对应于第一输出条503和第二输出条505所实现的门。
表1
Figure GDA0002567963570000181
如上所述,与本公开一致的计算器件可以用来实现不同的逻辑计算。图13是与本公开一致的用于逻辑计算的示例性方法1300的流程图。方法1300可以使用与本公开一致的计算器件来实现,例如上述示例性计算器件之一。如图13所示,在步骤 1302,所述计算器件的输入条的至少一个输入条存储单元被移位到所述计算器件的输入条和逻辑条重叠的区域。逻辑条包括两个被一逻辑条磁畴壁分隔开的逻辑条磁畴。在一些实施例中,逻辑条包括一个第一磁性层和一个处于第一磁性层上方的第二磁性层。第一磁性层可包括一个在两个逻辑条磁畴的第一逻辑条磁畴中的第一磁性区域,和一个在两个逻辑条磁畴的第二逻辑条磁畴中的第二磁性区域。第一磁性区域的磁矩可指向第一方向,第二磁性区域的磁矩则指向与第一方向大致相反的第二方向。所述第一方向和第二方向可以与上述结合其它实施例描述的第一方向和第二方向相同,故在此不做详细描述。类似的,第二磁性层可包括一个在所述两个逻辑条磁畴的第一逻辑条磁畴中的第三磁性区域,和一个在所述两个逻辑条磁畴的第二逻辑条磁畴中的第四磁性区域。第三磁性区域的磁矩可指向第二方向,第四磁性区域的磁矩则可指向第一方向。
在步骤1304,极化自旋波被注入到逻辑条中。极化自旋波可以由所述至少一个输入条存储单元进行调制以携带信息。根据存入到所述至少一个输入条存储单元的数据,极化自旋波的偏振方向可被偏转一定角度或者保持不变。因此,所述极化自旋波的偏振方向可以用来指示存入到所述输入条存储单元的数据所对应的信息。进一步,根据所述极化自旋波的偏振方向,所述逻辑条的逻辑条磁畴壁可被推至越过所述计算器件的输出条或者保持不变。因此,极化自旋波所携带的信息可以被写入到所述输出条与所述逻辑条重叠的区域中的至少一个输出条存储单元中。
在步骤1306,所述至少一个输出条存储单元可被移出输出条的重叠区域以输出输出条中的数据。
在一些实施例中,所实现的逻辑计算,即所述计算器件的功能,可以通过进一步调制极化自旋波的偏振方向来控制。例如,将指令条的至少一个指令存储单元移到指令条与逻辑条重叠的区域,可以用来进一步调制所述极化自旋波的偏振方向。由所述计算器件实现的功能可取决于所述至少一个指令存储单元中的数据。
尽管图13中的流程被展示为从一个步骤到另一个步骤,但是本公开不限制所述流程中各个步骤的顺序。例如,极化自旋波的注入(步骤1304)可以在所述至少一个输入条存储单元被移位到重叠区域(步骤1302)之前进行,差不多与其同时进行,或者在其之后进行。
图14A到14D是与本公开一致的示例性处理器件1400的示意图。图14A是处理器件1400的立体示意图。图14B是一处理器件1400的平面示意图。图14C和14D 分别是图14B中的处理器件1400沿着CC’线和DD’线的截面示意图。处理器件1400 可以由一个或多个与本公开一致的计算器件,例如一个或多个根据图4A和4B、图5 至图12所描述的示例性计算器件来构建。对于下面未描述或者未详细描述的处理器件 1400的某些部分,可以参考上述示例性计算器件类似部分的描述。
在图14A到14D的示例中,处理器件1400被配置为算术逻辑单元(ALU)。在其他的一些实施例中,与本公开一致的计算器件可以被组合来构建各种其它类型的处理器件。
如图14A到14D所示,处理器件1400包括多个正向逻辑条(FLT)对1410和多个逆向逻辑条(BLT)对1420。在图14A到14D的示例中,处理器件1400包括四个正向逻辑条对1410和四个逆向逻辑条对1420,可实现四位计算。所述多个正向逻辑条对1410,如图14A到14D所示的四个正向逻辑条对1410,可组成一个正向逻辑条组。所述多个逆向逻辑条对1420,如图14A到14D所示的四个逆向逻辑条对1420,可组成一个逆向逻辑条组。
在一些实施例中,如图14A和14B所示,所述四个正向逻辑条对1410可以一个邻着一个的大致平行排列,所述四个逆向逻辑条对1420可以一个邻着一个的大致平行排列。每一个正向逻辑条对1410包括一个上正向逻辑条1412,和一个与所述上正向逻辑条1412大致平行的下正向逻辑条1414。所有正向逻辑条对1410的上正向逻辑条1412形成上正向逻辑条层,所有正向逻辑条对1410的下正向逻辑条1414形成下正向逻辑条层。类似的,每一个逆向逻辑条对1420包括包括一个上逆向逻辑条1422,和一个与上逆向逻辑条1422大致平行的下逆向逻辑条1424。所有逆向逻辑条对1420 的上逆向逻辑条1422形成上逆向逻辑条层,所有逆向逻辑条1410的下逆向逻辑条 1414形成下逆向逻辑条层。各个正向逻辑条相互大致平行,各个逆向逻辑条相互大致平行。在一些实施例中,各个正向逻辑条与各个逆向逻辑条也相互大致平行。在一些其它实施例中,正向逻辑条的至少一部分与逆向逻辑条的至少一部分之间成一定的角度,比如90度。
各个上正向逻辑条1412和各个下正向逻辑条1414与上述示例性逻辑条有类似的结构,比如说SyAF结构,并且用于传导从其正向自旋波注入端注入的极化自旋波。上正向逻辑条1412和下正向逻辑条1414的正向自旋波注入端也可统称为正向逻辑条组的正向自旋波注入端。类似的,各个上逆向逻辑条1422和各个下逆向逻辑条1424 用于传导从其逆向自旋波注入端注入的极化自旋波。上逆向逻辑条1422和下逆向逻辑条1424的逆向自旋波注入端也可统称为所述逆向逻辑条组的逆向自旋波注入端。
在本公开中,四个正向逻辑条对1410也可分别为第一正向逻辑条对、第二正向逻辑条对、第三正向逻辑条对以及第四正向逻辑条对。相对应的,第一正向逻辑条对、第二正向逻辑条对、第三正向逻辑条对以及第四正向逻辑条对的上正向逻辑条1412也可称为第一、第二、第三以及第四上正向逻辑条。第一正向逻辑条对、第二正向逻辑条对、第三正向逻辑条对以及第四正向逻辑条对的下正向逻辑条1414也可称为第一、第二、第三以及第四下正向逻辑条。类似的,四个逆向逻辑条对1420也可分别为第一逆向逻辑条对、第二逆向逻辑条对、第三逆向逻辑条对、以及第四逆向逻辑条对。相对应的,第一逆向逻辑条对、第二逆向逻辑条对、第三逆向逻辑条对、以及第四逆向逻辑条对的上逆向逻辑条1422也可称为第一、第二、第三以及第四上逆向逻辑条。第一逆向逻辑条对、第二逆向逻辑条对、第三逆向逻辑条对以及第四逆向逻辑条对的下逆向逻辑条1424也可称为第一、第二、第三以及第四下逆向逻辑条。
根据本公开,各个上正向逻辑条1412、各个下正向逻辑条1414、各个上逆向逻辑条1422、以及各个下逆向逻辑条1424和上述任一示例性逻辑条的结构相似。例如,如图14A和14C所示,上正向逻辑条1412包括两个被一个上正向逻辑条磁畴壁1412- 4分隔的上正向逻辑条磁畴1412-2,下正向逻辑条1414包括两个被一个下正向逻辑条磁畴壁1414-4分割开的下正向逻辑条磁畴1414-2。上正向逻辑条磁畴或者下正向逻辑条磁畴可简称为正向逻辑条磁畴。类似的,上正向逻辑条磁畴壁或者下正向逻辑条磁畴壁可简称为正向逻辑条磁畴壁。进一步,如图14A和14D所示,上逆向逻辑条1422 包括两个被一个上逆向逻辑条磁畴壁1422-4分隔的上逆向逻辑条磁畴1422-2,下逆向逻辑条1424包括两个被一个下逆向逻辑条磁畴壁1424-4分割开的下逆向逻辑条磁畴 1424-2。上逆向逻辑条磁畴或者下逆向逻辑条磁畴可简称为逆向逻辑条磁畴。类似的,上逆向逻辑条磁畴壁或者下逆向逻辑条磁畴壁可简称为逆向逻辑条磁畴壁。
如图14A到14D所示,处理器件1400还包括与正向逻辑条组和逆向逻辑条组相交叉布置的数据条对1430。数据条对1430包括相互平行安排的第一数据条1432和第二数据条1434。第一数据条1432和第二数据条1434与各个正向逻辑条和各个逆向逻辑条大致平行。
第一数据条1432和第二数据条1434的至少一部分被夹在上正向逻辑条层和下正向逻辑条层之间。进一步,第一数据条1432和第二数据条1434中的至少一个的至少一部分被夹在上逆向逻辑条层和下逆向逻辑条层之间。在一些实施例中,上逆向逻辑条层和下逆向逻辑条层中一个比另一个短,不与第一数据条1432重叠。例如,如图 14A、14B和14D所示,上逆向逻辑条层比下逆向逻辑条层短,不与第一数据条1432 重叠。在一些实施例中,处理器件1400可包括两对以上数据条,且各个数据条与第一数据条或者第二数据条相似。
在本公开中,各个第一数据条1432和第二数据条1434也可简称为数据条。如图14A和14B所示,一个数据条,如第一数据条1432或者第二数据条1434,包括多个与所述多个正向逻辑条对1410一一对应,且用于存储输入的二进制0或者1的输入存储单元。所述数据条还包括多个与所述多个逆向逻辑条对1420一一对应,且用于存储输出的二进制0或者1的输出存储单元。第一数据条1432的输入存储单元和输出存储单元可分别称为第一输入存储单元和第一输出存储单元。类似的,第二数据条1434 的输入存储单元和输出存储单元可分别称为第二输入存储单元和第二输出存储单元。
数据条的输入存储单元和输出存储单元都是数据条的存储单元。当一个存储单元在正向逻辑条组一侧,所述存储单元为输入存储单元。类似的,当一个存储单元在逆向逻辑条一侧,所述存储单元为输出存储单元。
在一些实施例中,输入存储单元的在垂直于正向逻辑条组径向方向的宽度与正向逻辑条的宽度大致相同,或略大于正向逻辑条的宽度。类似的,输出存储单元的在垂直于逆向逻辑条组径向方向的宽度与逆向逻辑条的宽度大致相同,或略大于逆向逻辑条的宽度。输入单元的宽度不限,只要对应的正向逻辑条,即与输入存储单元重叠的正向逻辑条,其自旋波的偏振可以被有效的偏转。类似的,输出单元的宽度不限,只要可被对应的逆向逻辑条,即与输出存储单元重叠的逆向逻辑条,其磁矩有效的调整。
在一些实施例中,一个或者多个输入存储单元和输出存储单元在同一个磁畴中,所述磁畴的磁矩方向指向第一方向,或者指向与第一方向大致相反的第二方向。输入存储单元或者输出存储单元的磁矩指示存储在输入存储单元或者输出存储单元的二进制数据,即二进制0或者1。所述第一和第二方向分别与上述实施例中的第一和第二方向的定义类似,故此处省略其详细描述。
在一些实施例中,处理器件1400还包括一个或者多个数据条驱动器件(未示出),数据条驱动器件与一个或者多个数据条耦合以驱动所述一个或者多个数据条的存储单元移动。如上所述,数据条驱动器件可以通过,例如电流驱动磁畴壁移动,来驱动所述存储单元。对于每个数据条,与其耦合的数据条驱动器件可以驱动其输入存储单元进出所述数据条与正向逻辑条组重叠的部分,并且可以驱动其输出存储单元进出所述数据条与逆向逻辑条组重叠的部分。所述数据条与正向逻辑条组重叠的部分也可称为所述数据条的正向重叠部分,所述数据条与逆向逻辑条组重叠的部分也可称为所述数据条的逆向重叠部分。
在一些实施例中,第一数据条1432和第二数据条1434可用于将数据发送到处理器件1400,然后读取处理结果以输出。处理器件1400执行什么样的处理,比如,什么样的算术计算,取决于,例如,处理器件1400其他组件的配置,处理器件1400 其他组件的磁矩方向,和/或注入到处理器件1400的自旋波的偏振,如下详述。
如上所述,极化自旋波可由正向逻辑条组的正向自旋波注入端注入到正向逻辑条组中。在一些实施例中,极化自旋波可由上正向逻辑条1412或者下正向逻辑条 1414的正向自旋波注入端注入到上正向逻辑条1412或者下正向逻辑条1414中。处理器件1400还包括第一正向指令条对1440和与第一正向指令条对1440交叉的第二正向指令条对1450。第一正向指令条对1440和第二正向指令条对1450可用于通过改变正向自旋波的偏振方向来设置正向逻辑条组的功能。例如,第一正向指令条对1440可用于改变正向自旋波的偏振方向。在一些实施例中,第二正向指令条对1450可置于第一正向指令条对1440和数据条对1430之间,来进一步改变正向自旋波的偏振方向。
在一些实施例中,如图14A到图14C所示,第一正向指令条对1440包括与正向逻辑条组交叉的第一上正向指令条1442,以及位于第一上正向指令条1442下方且与正向逻辑条组交叉的第一下正向指令条。第一上正向指令条1442与第一下正向指令条1444相互大致平行,且与正向逻辑条对1410大致垂直。第一上正向指令条1442可用于改变在上正向逻辑条层内的正向自旋波(亦可称为上正向自旋波)的偏振方向。第一下正向指令条1444可用于改变在下正向逻辑条层内的正向自旋波(亦可称为下正向自旋波)的偏振方向。
第二正向指令条对1450包括与正向逻辑条组交叉的第二上正向指令条1452,以及位于第二上正向指令条1452下方且与正向逻辑条组交叉的第二下正向指令条。第二上正向指令条1452与第二下正向指令条1454相互大致平行,且与正向逻辑条对 1410大致垂直。第二上正向指令条1452可用于进一步改变在上正向逻辑条层内的正向自旋波(亦可称为上正向自旋波)的偏振方向。第二下正向指令条1454可用于进一步改变在下正向逻辑条层内的正向自旋波(亦可称为下正向自旋波)的偏振方向。
在一些实施例中,例如图14A到图14C所示,第一上正向指令条1442和第二上正向指令条1452位于上正向逻辑条层的上方,第一下正向指令条1444和第二下正向指令条1454位于下正向逻辑条层的下方。在一些实施例中,第一上正向指令条 1442、第一下正向指令条1444、第二上正向指令条1452以及第二下正向指令条1454 夹着至少一部分上正向逻辑条层和下正向逻辑条层。
在一些实施例中,第一上正向指令条1442、第一下正向指令条1444、第二上正向指令条1452以及第二下正向指令条1454中的一个或者多个位于上正向逻辑条层和下正向逻辑条层之间。在一些实施例中,第一上正向指令条1442、第一下正向指令条 1444、第二上正向指令条1452以及第二下正向指令条1454中的一个或者多个的至少一部分夹在上正向逻辑条层和正向逻辑条下层旋之间。例如,第一上正向指令条1442 和第一下正向指令条1444可位于上正向逻辑条层和下正向逻辑条层之间,而第二上正向指令条1452和第二下正向指令条1454可分别位于上正向逻辑条层上方和下正向逻辑条层下方。又例如,第一上正向指令条1442、第一下正向指令条1444、第二上正向指令条1452以及第二下正向指令条1454全都位于上正向逻辑条层和下正向逻辑条层之间。
如图14A到图14D所示,处理器件1400还包括与正向逻辑条组和逆向逻辑条组交叉的寄存条对1460。该寄存条对1460包括一个与正向逻辑条组和逆向逻辑条组交叉的上寄存条1462,以及一个与正向逻辑条组和逆向逻辑条组交叉的,且位于上寄存条1462下方的下寄存条1464。
上寄存条1462包括一个上正向重叠区域和一个上逆向重叠区域。上正向重叠区域在位于远离正向逻辑条组的正向自旋波注入端的位置与正向逻辑条组重叠。上逆向重叠区域在位于远离逆向逻辑条组的逆向自旋波注入端的位置与逆向逻辑条组重叠。上寄存条1462包括一个或者多个用于存储在上正向逻辑条层传播的上正向自旋波所携带的信息的上寄存存储单元。在一些实施例中,所述一个或者多个上寄存存储单元中的每一个可相应于上正向逻辑条1412中的一个,且可用于存储在所对应的上正向逻辑条1412内传播的上正向自旋波所携带的信息。
类似的,下寄存条1464包括一个下正向重叠区域和一个下逆向重叠区域。下正向重叠区域在位于远离正向逻辑条组的正向自旋波注入端的位置与正向逻辑条组重叠。下逆向重叠区域在位于远离逆向逻辑条组的逆向自旋波注入端的位置与逆向逻辑条组重叠。下寄存条1464包括一个或者多个用于存储在下正向逻辑条层传播的下正向自旋波所携带的信息的下寄存存储单元。在一些实施例中,所述一个或者多个下寄存存储单元中的每一个可相应于下正向逻辑条1414中的一个,且可用于存储在所对应的下正向逻辑条1414内传播的下正向自旋波所携带的信息。
在一些实施例中,例如图14A到图14D所示,上寄存条1462位于正向逻辑条组和逆向逻辑条组上方,下寄存条1464位于正向逻辑条组和逆向逻辑条组下方。在一些实施例中,所述上正向逻辑条层,下正向逻辑条层,上逆向逻辑条层和下逆向逻辑条层被夹在至少一部分上寄存条1462和至少一部分下寄存条1464之间。
在一些实施例中,在上寄存条1462和下寄存条1464中的一个或者两个位于上正向逻辑条层和下正向逻辑条层之间,且位于上逆向逻辑条层和下逆向逻辑条层之间。在一些实施例中,在上寄存条1462和下寄存条1464中的一个或者两个的至少一部分被夹在上正向逻辑条层和下正向逻辑条层之间,且被夹在上逆向逻辑条层和下逆向逻辑条层之间。例如,上寄存条1462和下寄存条1464可都位于上正向逻辑条层和下正向逻辑条层之间,且都位于上逆向逻辑条层和下逆向逻辑条层之间。
在一些实施例中,处理器件1400还可包括一个或者多个分别与上寄存条1462 和下寄存条1464中的一个或者两个耦合的寄存条驱动器件(未示出)。与上寄存条 1462耦合的寄存条驱动器件可用于将所述一个或者多个上寄存存储单元从上寄存条 1462的上正向重叠区域移动到上寄存条1462的上逆向重叠区域。类似的,与下寄存条1464耦合的寄存条驱动器件可用于将所述一个或者多个下寄存存储单元从下寄存条 1464的下正向重叠区域移动到下寄存条1464的下逆向重叠区域。即,所述寄存条驱动器件可将存储在寄存存储单元内的数据从正向逻辑条侧转移到逆向逻辑条侧,以调制在逆向逻辑条内传播的自旋波。在一些实施例中,寄存条驱动器件可以通过,例如,电流驱动磁畴壁运动,来移动寄存存储单元。
在正向逻辑条内传播的自旋波可以通过多个正向指令条进行调制,类似的,在逆向逻辑条内传播的自旋波可以通过与逆向逻辑条组交叉的多个逆向指令条进行调制。在一些实施例中,如图14A、图14B以及图14D所示,处理器件1400包括与逆向逻辑条组交叉的第一逆向指令条对1470、第二逆向指令条对1480和第三逆向指令条对 1490,用于通过改变由逆向逻辑条组的逆向自旋波注入端注入并在逆向逻辑条组内传播的逆向自旋波的偏振方向来设置逆向逻辑条组的功能。例如,第一逆向指令条对 1470可用于改变所述逆向自旋波的偏振方向。在一些实施例中,第二逆向指令条对 1480可位于第一逆向指令条对1470和寄存条对1460之间,用于进一步改变所述逆向自旋波的偏振方向。在一些实施例中,第三逆向指令条对1490可位于第二逆向指令条对1480和寄存条对1460之间,用于进一步改变所述自旋波的偏振方向。
在一些实施例中,如图14A、图14B以及图14D,第一逆向指令条对1470包括与逆向逻辑条组交叉的第一上逆向指令条1472,和位于第一上逆向指令条1472的下方且与逆向逻辑条组交叉的第一下逆向指令条1474。第一上逆向指令条1472与第一下逆向指令条1474相互大致平行,并且两者大致垂直于逆向逻辑条对1420。第一上逆向指令条1472用于改变在上逆向逻辑条层内的逆向自旋波的偏振方向,第一下逆向指令条1474用于改变在下逆向逻辑条层内的逆向自旋波的偏振方向。
类似的,第二逆向指令条对1480包括与逆向逻辑条组交叉的第二上逆向指令条1482,和位于第二上逆向指令条1482的下方且与逆向逻辑条组交叉的第二下逆向指令条1484。第二上逆向指令条1482与第二下逆向指令条1484相互大致平行,并且两者大致垂直于逆向逻辑条对1420。第二上逆向指令条1482用于进一步改变在上逆向逻辑条层内的逆向自旋波的偏振方向,第二下逆向指令条1484用于进一步改变在下逆向逻辑条层内的逆向自旋波的偏振方向。
类似的,第三逆向指令条对1490包括与逆向逻辑条组交叉的第三上逆向指令条1492,和位于第三上逆向指令条1492的下方且与逆向逻辑条组交叉的第三下逆向指令条1494。第三上逆向指令条1492与第三下逆向指令条1494相互大致平行,并且两者大致垂直于逆向逻辑条对1420。第三上逆向指令条1492用于进一步改变在上逆向逻辑条层内的逆向自旋波的偏振方向,第三下逆向指令条1494用于进一步改变在下逆向逻辑条层内的逆向自旋波的偏振方向。
在一些实施例中,如图14A、图14B以及图14D所示,第一上逆向指令条1472、第二上逆向指令条1482、所述第三上逆向指令条1492位于上逆向逻辑条层上方。第一下逆向指令条1474、第二下逆向指令条1484、第三下逆向指令条1494位于下逆向逻辑条层下方。在一些实施例中,第一上逆向指令条1472、第一下逆向指令条1474、第二上逆向指令条1482、第二下逆向指令条1484、第三上逆向指令条1492以及第三下逆向指令条1494将至少一部分上逆向逻辑条层和至少一部分下逆向逻辑条层夹在中间。
在一些实施例中,第一上逆向指令条1472、第一下逆向指令条1474、第二上逆向指令条1482、第二下逆向指令条1484、第三上逆向指令条1492以及第三下逆向指令条1494中的一个或者多个可位于上逆向逻辑条层和下逆向逻辑条层之间。在一些实施例中,第一上逆向指令条1472、第一下逆向指令条1474、第二上逆向指令条1482、第二下逆向指令条1484、第三上逆向指令条1492以及第三下逆向指令条1494中一个或者多个的至少一部分位于上逆向逻辑条层和下逆向逻辑条层之间。例如,第一上逆向指令条1472和第一下逆向指令条1474可位于上逆向逻辑条层和下逆向逻辑条层之间,而第二上逆向指令条1482、第二下逆向指令条1484、第三上逆向指令条1492以及第三下逆向指令条1494位于上逆向逻辑条层上方或者下逆向逻辑条层下方。再例如,第一上逆向指令条1472、第一下逆向指令条1474、第二上逆向指令条1482以及第二下逆向指令条1484可位于上逆向逻辑条层和下逆向逻辑条层之间,第三上逆向指令条 1492和第三下逆向指令条1494分别位于上逆向逻辑条层上方和下逆向逻辑条层下方。又例如,第一上逆向指令条1472、第一下逆向指令条1474、第二上逆向指令条1482、第二下逆向指令条1484、第三上逆向指令条1492以及第三下逆向指令条1494可全部位于上逆向逻辑条层和下逆向逻辑条层之间。
如上所述,在本公开的一些实施例中,处理器件1400为算术逻辑单元,可进行各种逻辑和算术运算,例如,与、或、异或、左移/右移、以及加法。图14A到图14D 所示的示例性处理器件可以通过使用16个通用门(每个通用门包括所述四个上正向逻辑条1412、所述四个下正向逻辑条1414、所述四个上逆向逻辑条1422和所述四个下逆向逻辑条1424中的一个,还包括与配置相对应的逻辑条的指令条和输入/输出数据的数据条)来实现全功能4位算术逻辑单元,使用的门数远远少于现有的技术,现有技术需要超过100个与非门来构建部分功能的4位算术逻辑单元。与本公开一致的自旋波算术逻辑单元不仅可以执行所有一元和二元逻辑计算,还可以执行高级算术运算,例如左移/右移、带进位和退位的加/减法。表2为一真值表,列举了在指令条和数据条内的用于进行1位运算1+1=10的二进制值以及逻辑条所对应实现的功能(表2只列举了在一个正向逻辑条对和对应的一个逆向逻辑条对上的数据)。在表2中,G1、G2、 G3、G4和G5分别对应于第一正向指令条对1440、第二正向指令条对1450、第三逆向指令条对1490、第二逆向指令条对1480和第一逆向指令条对1470。A和B可分别对应于第一数据条1432和所述第二数据条1434,R可对应于所述寄存条对1460。
表2
Figure GDA0002567963570000251
图15为一与本公开一致的示例性逻辑计算方法1500的流程图。方法1500可以由,例如,上述处理器件1400,实现。如图15所示,在步骤1502,多个数据条的多个输入存储单元被移到所述多个数据条的与多个正向逻辑条重叠的多个部分。所述多个输入存储单元可存储一些即将被执行二进制运算的二进制数字。在一些实施例中,所述输入存储单元可通过电流驱动磁畴壁运动进行移动。
在步骤1504,多个正向极化自旋波被注入到多个正向逻辑条中。所述多个正向极化自旋波可由所述多个输入存储单元进行调制,以携带信息。根据存储在所述多个输入存储单元内的数据,所述多个正向极化自旋波的偏振方向可偏转一定角度,或者保持不变,因此,所述多个的正向极化自旋波的偏振方向可以指示存储在所述输入存储单元的数据所对应的信息。进一步,根据所述多个正向极化自旋波的偏振方向,0 个、1个或者多个所述正向逻辑条的逻辑条磁畴壁可被推至越过寄存条。因此,所述多个正向极化自旋波多携带的信息可写入到在所述寄存条与所述多个正向逻辑条重叠的多个区域内的所述寄存条的多个寄存存储单元中。
在步骤1506,所述多个寄存存储单元被移进所述寄存条与多个逆向逻辑条重叠的多个区域内。在一些实施例中,所述寄存存储单元可通过电流驱动磁畴壁运动进行移动。
在步骤1508,多个逆向极化自旋波被注入到所述多个逆向逻辑条中。因此所述多个逆向极化自旋波可被在多个所述寄存条与所述多个逆向逻辑条重叠的区域内的所述多个寄存存储单元调制,以携带信息,例如,与所述逆向极化自旋波的偏振方向相关的信息。与所述正向逻辑条相似,根据所述多个逆向极化自旋波的偏振方向,0个、 1个或者多个所述逆向逻辑条的逻辑条磁畴壁可被推至越过所述数据条。因此,所述逆向极化自旋波所携带的信息可写入到在所述数据条与所述多个逆向逻辑条重叠的多个区域内的多个输出数据存储单元中。
在步骤1510,判断计算是否结束。如果结束(步骤1510:是),执行1512,即将所述多个输出存储单元移出所述数据条与所述多个逆向逻辑条重叠的区域,例如,通过磁畴壁运动,以输出存储在所述输出存储单元的数据。相反的,如果所述运算没有结束(步骤1510:否),执行步骤1514,即将所述多个输出存储单元移回所述数据条与所述多个正向逻辑条重叠的区域,使其成为输入存储单元以进行下个运算循环,然后返回步骤1504。
尽管图15中的流程被展示为从一个步骤到另一个步骤,但是本公开不限制所述流程中各个步骤的顺序。例如,正向极化自旋波的注入(步骤1504)可以在所述输入存储单元被移位到所述与所述正向逻辑条重叠的区域(步骤1502)之前进行,差不多与其同时进行,或者在其之后进行。类似的,逆向极化自旋波的注入(步骤1508)可以在所述寄存存储单元被移位到所述与所述逆向逻辑条重叠的区域(步骤1506)之前进行,差不多与其同时进行,或者在其之后进行。
结合本公开的说明书和实施例的运用,本公开的其他实施例对于本领域的技术人员来说是显而易见的。所述说明书和示例仅为示例性的,而不是限制本公开的范围,本发明的真正范围和精神在所附权利要求中指出。

Claims (21)

1.一种计算器件,包括:
逻辑条,包括由逻辑条磁畴壁分开的两个逻辑条磁畴;
在逻辑条的第一位置处与逻辑条交叉的输入条,包括至少一个输入条磁畴,所述至少一个输入条磁畴中的每一个包括至少一个输入条存储单元,用于存储二进制0或1;以及
在逻辑条的第二位置与逻辑条交叉的输出条,包括至少一个输出条磁畴,所述至少一个输出条磁畴中的每一个包括至少一个输出条存储单元,用于存储二进制0或1;
其中第一位置比第二位置更靠近逻辑条的自旋波注入端,第二位置比第一位置更靠近逻辑条磁畴壁。
2.根据权利要求1的计算器件,其中逻辑条包括:
第一磁性层,包括:
位于所述两个逻辑条磁畴中的第一个中的第一磁性部分,第一磁性部分的磁矩指向第一方向;以及
位于所述两个逻辑条磁畴中的第二个中的第二磁性部分,第二磁性部分的磁矩指向大致与第一方向相反的第二方向;以及
位于第一磁性层上方的第二磁性层,包括:
位于所述两个逻辑条磁畴中的第一个中的第三磁性部分,第三磁性部分的磁矩指向第二方向,以及
位于所述两个逻辑条磁畴中的第二个中的第四磁性部分,第四磁性部分的磁矩指向第一方向。
3.根据权利要求2的计算器件,其中所述至少一个输入条磁畴中的每一个的磁矩大致指向第一方向或大致指向第二方向。
4.根据权利要求2的计算器件,其中第一方向和第二方向大致垂直于逻辑条的上表面。
5.根据权利要求2的计算器件,其中第一方向和第二方向大致垂直于逻辑条的侧表面。
6.根据权利要求2的计算器件,其中第一磁性层和第二磁性层具有相同的宽度。
7.根据权利要求1的计算器件,其中逻辑条磁畴壁位于两个逻辑条磁畴之间的界面处。
8.根据权利要求1的计算器件,其中输入条和输出条大致垂直于逻辑条。
9.根据权利要求1的计算器件,还包括:
与输入条耦合的输入条驱动器件,用于驱动所述至少一个输入条存储单元中的一个进入和离开输入条的重叠部分,输入条的重叠部分是输入条与逻辑条重叠的部分;以及
与输出条耦合的输出条驱动器件,用于驱动所述至少一个输出条存储单元中的一个从输出条的重叠部分中离开,输出条的重叠部分是输出条与逻辑条重叠的部分。
10.根据权利要求1的计算器件,还包括:
与逻辑条交叉的指令条,用于改变从自旋波注入端注入的自旋波的偏振方向。
11.根据权利要求1的计算器件,其中指令条大致垂直于逻辑条。
12.根据权利要求10的计算器件,其中所述指令条为第一指令条,所述计算器件还包括:
与逻辑条交叉的第二指令条。
13.根据权利要求12的计算器件,其中:
第一指令条和第二指令条中的每一个包括多个磁畴,所述多个磁畴中的每一个的磁矩指向第一方向或大致与第一方向相反的第二方向;以及
第一指令条的磁畴中与逻辑条重叠的磁畴的磁化强度和第二指令条的磁畴中与逻辑条重叠的磁畴的磁化强度的组合确定了所述自旋波偏振方向的偏转角度。
14.根据权利要求12的计算器件,其中第一指令条和第二指令条大致垂直于逻辑条。
15.根据权利要求1至14中任何一个的计算器件,其中所述输入条为第一输入条,所述至少一个输入条磁畴为至少一个第一输入条磁畴,以及所述至少一个输入条存储单元为至少一个第一输入条存储单元,并且所述输出条为第一输出条,所述至少一个输出条磁畴为至少一个第一输出条磁畴,以及所述至少一个输出条存储单元为至少一个第一输出条存储单元,所述计算器件还包括:
第二输入条,在逻辑条的第三位置处与逻辑条交叉,第二输入条包括至少一个第二输入条磁畴,所述至少一个第二输入条磁畴中的每一个包括至少一个第二输入条存储单元,用于存储二进制0或1;以及
第二输出条,在逻辑条的与逻辑条的第二位置对应且靠近逻辑条磁畴壁的位置处与逻辑条交叉,第二输出条包括至少一个第二输出条磁畴,所述至少一个第二输出条磁畴中的每一个包括至少一个第二输出条存储单元,用于存储二进制0或1。
16.根据权利要求15的计算器件,其中:
第一输入条和第二输入条大致彼此平行并且大致垂直于逻辑条;以及
第一输出条和第二输出条布置在逻辑条的相对两侧上并且彼此大致平行,并且大致垂直于逻辑条。
17.一种逻辑计算方法,所述逻辑计算方法应用于如权利要求1-16任一项的计算器件,所述逻辑计算方法包括:
将输入条的至少一个输入条存储单元移入输入条与逻辑条重叠的一部分中;以及
将极化自旋波注入逻辑条,所述极化自旋波由所述至少一个输入条存储单元调制以携带信息。
18.根据权利要求17的逻辑计算方法,还包括:
通过将指令条的至少一个指令存储单元移位到指令条与逻辑条重叠的部分来调制自旋波的偏振方向。
19.根据权利要求17的逻辑计算方法,还包括:
将至少一个输出条存储单元移出输出条与逻辑条重叠的部分。
20.根据权利要求17的逻辑计算方法,其中逻辑条包括由逻辑条磁畴壁分开的两个逻辑条磁畴。
21.根据权利要求20的逻辑计算方法,其中逻辑条包括:
第一磁性层,包括:
位于所述两个逻辑条磁畴中的第一个中的第一磁性部分,第一磁性部分的磁矩指向第一方向;以及
位于所述两个逻辑条磁畴中的第二个中的第二磁性部分,第二磁性部分的磁矩指向与第一方向大致相反的第二方向;以及
位于第一磁性层上方的第二磁性层,包括:
位于所述两个逻辑条磁畴中的第一个中的第三磁性部分,第三磁性部分的磁矩指向第二方向;以及
位于所述两个逻辑条磁畴中的第二个中的第四磁性部分,第四磁性部分的磁矩指向第一方向。
CN201810913713.5A 2018-08-10 2018-08-10 一种计算器件及其计算方法 Active CN109308924B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201810913713.5A CN109308924B (zh) 2018-08-10 2018-08-10 一种计算器件及其计算方法
PCT/CN2018/115134 WO2020029457A1 (en) 2018-08-10 2018-11-13 Logic computing
US16/420,067 US20200051725A1 (en) 2018-08-10 2019-05-22 Logic computing
US17/395,015 US11647679B2 (en) 2018-08-10 2021-08-05 Logic computing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810913713.5A CN109308924B (zh) 2018-08-10 2018-08-10 一种计算器件及其计算方法

Publications (2)

Publication Number Publication Date
CN109308924A CN109308924A (zh) 2019-02-05
CN109308924B true CN109308924B (zh) 2021-01-01

Family

ID=65223844

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810913713.5A Active CN109308924B (zh) 2018-08-10 2018-08-10 一种计算器件及其计算方法

Country Status (3)

Country Link
US (2) US20200051725A1 (zh)
CN (1) CN109308924B (zh)
WO (1) WO2020029457A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11539365B2 (en) * 2019-06-27 2022-12-27 Board Of Regents, The University Of Texas System Reversible computing system and method based on conservative magnetic skyrmion logic
IT201900013542A1 (it) * 2019-07-31 2021-01-31 Torino Politecnico Dispositivo per memorizzare e processare dati e relativo metodo
IT202000001783A1 (it) * 2020-01-30 2021-07-30 Torino Politecnico Dispositivo per memorizzare e processare dati con funzioni logiche booleane e relativo metodo
US11348627B2 (en) * 2020-08-31 2022-05-31 Samsung Electronics Co., Ltd. Race-track memory with improved domain wall motion control
US11641783B2 (en) * 2020-12-08 2023-05-02 Ceremorphic, Inc. Interlayer exchange coupled adder
EP4099571A1 (en) * 2021-06-04 2022-12-07 Imec VZW Logic gates based on phase shifters
CN115359820A (zh) * 2022-08-24 2022-11-18 中国科学院微电子研究所 一种基于自旋波单元的存内计算阵列结构及其控制方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101145571A (zh) * 2006-09-15 2008-03-19 三星电子株式会社 采用磁畴壁移动的存储器装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546337A (en) * 1994-01-31 1996-08-13 Terastore, Inc. Method and apparatus for storing data using spin-polarized electrons
KR100718153B1 (ko) * 2006-02-17 2007-05-14 삼성전자주식회사 마그네틱 도메인 이동을 이용한 자기메모리
KR100695171B1 (ko) * 2006-02-23 2007-03-14 삼성전자주식회사 마그네틱 도메인 이동을 이용하는 자기 메모리 장치
JP5339272B2 (ja) * 2008-06-05 2013-11-13 国立大学法人東北大学 スピントロニクスデバイス及び情報伝達方法
KR101584099B1 (ko) * 2009-08-19 2016-01-13 삼성전자주식회사 자성층을 구비한 트랙 및 이를 포함하는 자성소자
KR101698931B1 (ko) 2010-02-05 2017-01-24 삼성전자 주식회사 자성트랙 및 이를 포함하는 정보저장장치
US8649214B2 (en) 2011-12-20 2014-02-11 Samsung Electronics Co., Ltd. Magnetic memory including magnetic memory cells integrated with a magnetic shift register and methods thereof
US8698517B2 (en) * 2012-08-13 2014-04-15 Globalfoundries Inc. Computing multi-magnet based devices and methods for solution of optimization problems
JP6104774B2 (ja) * 2013-09-19 2017-03-29 株式会社東芝 磁壁移動型メモリおよびその書き込み方法
CN104464758B (zh) 2013-09-24 2017-10-27 华为技术有限公司 一种信息存储装置及方法
EP3123537A4 (en) 2014-03-25 2018-02-14 Intel Corporation Magnetic domain wall logic devices and interconnect
EP3082129B1 (en) * 2015-04-13 2021-09-08 Crocus Technology S.A. Logic gate module for performing logic functions comprising a mram cell and method for operating the same
CN104766621B (zh) * 2015-04-20 2017-04-26 北京航空航天大学 一种基于应力控制的磁性逻辑器件
CN105514260B (zh) * 2016-01-29 2018-02-27 中国科学院物理研究所 自旋逻辑器件和包括其的电子设备
CN108279065B (zh) * 2018-01-23 2021-04-23 电子科技大学 一种探测自旋波信息传输频率的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101145571A (zh) * 2006-09-15 2008-03-19 三星电子株式会社 采用磁畴壁移动的存储器装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Magnetic Domain-Wall Racetrack Memory;Stuart S. P. Parkin 等;《Science》;20080411;第320卷(第5873期);第190-194页 *

Also Published As

Publication number Publication date
US11647679B2 (en) 2023-05-09
US20200051725A1 (en) 2020-02-13
CN109308924A (zh) 2019-02-05
WO2020029457A1 (en) 2020-02-13
US20210367141A1 (en) 2021-11-25

Similar Documents

Publication Publication Date Title
CN109308924B (zh) 一种计算器件及其计算方法
KR100428596B1 (ko) 자기 랜덤 액세스 메모리
EP1805766B1 (en) Spin-transfer based mram using angular-dependent selectivity
US8416611B2 (en) Magnetoresistance effect element and magnetic random access memory
US8558571B2 (en) All-spin logic devices
JP5206414B2 (ja) 磁気メモリセルおよび磁気ランダムアクセスメモリ
US8344758B2 (en) Magnetic device for performing a logic function
CN107732005B (zh) 一种自旋多数门器件及逻辑电路
CN112767980B (zh) 自旋轨道矩磁随机存储单元、阵列及汉明距离计算方法
KR20060135738A (ko) 개선된 마그네틱 스위칭
US9300295B1 (en) Elimination of undesirable current paths in GSHE-MTJ based circuits
JP5477419B2 (ja) 磁気ランダムアクセスメモリ及びその動作方法
KR20130143428A (ko) 자기 메모리소자 및 그 동작방법
US20040066668A1 (en) Antiferromagnetically coupled bi-layer sensor for magnetic random access memory
US4075613A (en) Logic gate for cross-tie wall memory system incorporating isotropic data tracks
US4410963A (en) Cross-tie propagation using offset serration and cross-tie rocking action
EP2024976A2 (en) Nonvolatile memory with data clearing functionality
US20230245698A1 (en) Three-dimensional structure of memories for in-memory computing
Wang et al. Topology in magnetism
US7515462B2 (en) Writing method for magnetic memory cell and magnetic memory array structure
US20120127550A1 (en) Optical logic devices having polarization-based logic level representation and method of designing the same
JP2008192711A (ja) 磁気メモリ
US20220270658A1 (en) Device for Data Storage and Processing, and Method Thereof
US11362661B2 (en) Magnetic logic device
US20230124011A1 (en) Reconfigurable puf device based on fully electric field-controlled domain wall motion

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