磁阻随机存取存储器中的写入效率的制作方法

文档序号:26009763发布日期:2021-07-23 21:29阅读:90来源:国知局
磁阻随机存取存储器中的写入效率的制作方法



背景技术:

申请人提供以下说明以帮助读者理解。所提供的信息或所引用的参考文献均不被承认是现有技术。

存储器设备用于各种各样的应用中以用于存储数据。磁阻随机存取存储器(“mram”)是近年来已普及的一种类型的存储器设备。然而,当今的mram设备由于其配置和其操作方式而具有局限性。



技术实现要素:

本公开的系统、方法和设备各自具有若干创新方面,这些创新方面中没有一个独自负责本文所公开的所有期望的属性。

现在将参照某些示例和实施方案来描述本公开的各个方面,这些示例和实施方案旨在举例说明而非限制本公开。尽管出于举例说明的目的,本文所述的示例和实施方案将关注于特定的系统和过程,但本领域的技术人员将会理解,这些示例仅是例示性的,并非旨在进行限制。

根据本公开的一些方面,公开了一种方法。该方法包括由与存储器设备相关联的存储器控制器确定要存储在该存储器设备中的b位字的多个位的写入脉冲的参数的值。该参数的值基于该b位字中的多个位的位位置对涉及该b位字的机器学习或信号处理任务的执行的相对重要性、保真性度量和资源度量。该方法还包括由该存储器控制器使用基于针对该多个位中的特定一个位所确定的该参数的值而生成的该写入脉冲来将该b位字的多个位中的每个位写入该存储器设备的不同子阵列中。

根据本公开的一些其他方面,公开了一种系统。该系统包括具有多个子阵列的存储器设备。该多个子阵列中的每个子阵列存储b位字的一位。该系统还包括与该多个子阵列中的每个子阵列操作地关联的存储器控制器。该存储器控制器包括用于确定该b位字的最高有效位的第一写入脉冲和该b位字的最低有效位的第二写入脉冲的编程指令。该第一写入脉冲的参数的值大于该第二写入脉冲的该参数的值,并且该第一写入脉冲和该第二写入脉冲的该参数的值被确定为最小化保真性度量并满足资源度量,并且反映该最高有效位和该最低有效位对涉及该b位字的机器学习或信号处理任务的执行的相对重要性。该存储器控制器进一步包括编程指令,该编程指令用于基于该第一写入脉冲将该最高有效位存储在该多个子阵列的第一子阵列中,并且基于该第二写入脉冲将该最低有效位存储在该多个子阵列的第二子阵列中。

根据本公开的其他方面,公开了一种存储有计算机可读指令的非暂态计算机可读介质。该计算机可读指令在由与磁阻随机存取存储器相关联的处理器执行时使得该处理器接收保真性度量、资源度量和粒度。该计算机可读指令还使得该处理器确定b位字的多个位位置的写入脉冲的参数的值以满足该粒度和该资源度量,同时最小化该保真性度量,并且反映该多个位位置对涉及该b位字的机器学习或信号处理任务的执行的相对重要性。较重要的位位置的该写入脉冲的参数的值大于较不重要的位位置的该写入脉冲的参数的值。

前述发明内容仅是例示性的,并不旨在以任何方式进行限制。除了上述例示性方面、实施方案和特征之外,通过参考以下附图和具体实施方式,另外的方面、实施方案和特征将变得显而易见。

附图说明

图1是根据本公开的一些实施方案的计算系统的示例性框图。

图2a是在根据本公开的一些实施方案的图1的计算系统的存储器设备中使用的二维mram阵列的示例性框图。

图2b是在根据本公开的一些实施方案的图1的计算系统的存储器设备中使用的三维mram阵列的示例性框图。

图2c是在根据本公开的一些实施方案的图1的计算系统的存储器设备中使用的三维mram阵列的另一示例性框图。

图3是根据本公开的一些实施方案的图2a至图2c的mram阵列的更详细地示出mram单元的部分的示例性框图。

图4是示出根据本公开的一些实施方案的图2a至图3的mram阵列中的读取和写入操作的示例性电路图。

图5是根据本公开的一些实施方案的示出图2a至图2c的mram阵列的附加细节的示例性框图。

图6是根据本公开的一些实施方案的示出图5的mram阵列的另外细节的示例性框图。

图7是根据本公开的一些实施方案的示例性流程图,其简要示出用于操作图5和图6的mram阵列的操作。

图8是根据本公开的一些实施方案的描绘存储在图6的mram阵列中的数据的特定位位置的保真性度量和写入能量之间的关系的示例性曲线图。

图9是根据本公开的一些实施方案的描绘存储在图6的mram阵列中的数据的特定位位置的另一保真性度量和写入能量之间的关系的示例性曲线图。

图10是根据本公开的一些实施方案的示出损耗均衡操作的示例性框图。

结合附图,根据以下描述和所附权利要求,本公开的上述和其它特征将变得显而易见。应当理解,这些附图仅描绘了根据本公开的若干实施方案,并且因此不应被认为是对其范围的限制,通过使用附图,将更具体且更详细地描述本公开。

具体实施方式

在以下具体实施方式中,参考了形成该具体实施方式的一部分的附图。在附图中,除非上下文另外指明,否则类似的符号通常标识类似的部件。在具体实施方式、附图和权利要求中描述的例示性实施方案并非旨在为限制性的。在不脱离在此呈现的主题的实质或范围的情况下,可利用其它实施方案,并且可进行其它改变。将容易理解的是,如本文一般所述并且在图中示出的本公开的各方面可被布置、取代、组合和设计成广泛多种不同的配置,所有这些配置均被明确地设想并成为本公开的一部分。

磁阻随机存取存储器(“mram”)是将数据存储在磁存储元件中的高密度非易失性存储器。mram阵列可包括多个mram单元,其中每个mram单元被配置成存储一位数据。可通过施加写入脉冲将数据位写入到mram单元,该写入脉冲促进mram单元的磁存储元件的磁性状态的改变。写入脉冲是写入电流的量值和脉冲宽度的长度/持续时间的函数。脉冲宽度可被定义为写入脉冲的上升沿与下一个下降沿之间的时间。因此,脉冲宽度可以以时间单位表示。写入脉冲的写入电流和脉冲宽度影响mram单元的写入错误率(“wer”)(在本文中也称为写入故障率)。wer可被定义为对于给定写入脉冲在mram单元中出现写入错误的概率。换句话讲,wer可以被定义为对于给定的写入电流和写入脉冲的脉冲宽度,在将数据位写入到mram单元期间发生写入错误的概率。写入错误可被定义为无法将期望写入的数据位写入到mram单元中。因此,wer也是写入电流和写入脉冲的脉冲宽度的函数。

一般来讲,随着写入电流增大或随着脉冲宽度增大,wer减小。因此,通过增大写入电流的量值或通过在写入脉冲中使用更长/更大持续时间的脉冲宽度,可以减小wer。然而,增加写入电流的量值或使用更长/更大持续时间的脉冲宽度增加了将数据位写入到mram单元所需或消耗的写入能量或功率。增加写入能量还可以增加mram单元上的损耗和磨损,并最终降低相关联的mram阵列的耐久性。因此,不期望增加写入能量。本公开提供了用于减少wer,同时还减少在将数据位写入到mram单元期间所需/消耗的写入能量,从而提高写入效率的技术解决方案。

更具体地讲,本公开提供了一种基于数据的位位置的相对重要性来确定优化写入脉冲的机制。例如,在一些应用中,数据的最高有效位(“msb”)位置中的写入错误可能比数据的最低有效位(“lsb”)位置中的写入错误造成更多伤害。因此,在某些应用中,可认为msb比lsb更重要。为了减少msb中的写入错误,并因此减少msb的wer,可增加用于写入msb位的写入电流和/或写入脉冲的脉冲宽度。例如,在一些实施方案中,可定义写入能量约束。然后可通过识别使受写入能量约束的wer最小化的优化的写入电流和/或优化的脉冲宽度来优化msb的写入脉冲。在一些实施方案中,还可以优化用于lsb和其他位位置的写入脉冲。然而,通过基于位位置的相对重要性来改变写入能量约束,也可以确定那些位位置的优化的写入脉冲以及因此优化的写入电流和优化的脉冲宽度。在一些实施方案中,用于较重要位位置(例如,msb)的优化的写入电流的量值可大于用于较不重要位位置(例如,lsb)的优化的写入电流的量值。类似地,在一些实施方案中,用于较重要位位置(例如,msb)的优化的脉冲宽度的长度/持续时间可以大于用于较不重要位位置(例如,lsb)的优化的写入电流的长度/持续时间。通过基于数据的位位置的相对重要性来优化写入脉冲,可以控制数据中的wer,同时实现期望的写入能量。

虽然以写入电流描述了本公开,但本公开也适用于写入脉冲的写入电压。例如,在一些实施方案中,写入脉冲可以以写入电压和脉冲宽度来定义。当以写入电压来定义写入脉冲时,代替或除了计算最佳写入电流,可基于数据的位位置的相对重要性来计算最佳写入电压。以下用于写入电流的公式也可用于写入电压,其中电流变量i在那些公式中用电压变量v替换。写入电流、脉冲宽度和写入电压是写入脉冲的参数。

现在参见图1,其中示出了根据本公开的一些实施方案的计算系统100的示例性框图。计算系统100包括与存储器设备110相关联的主机设备105。主机设备105可被配置为接收来自一个或多个输入设备115的输入并向一个或多个输出设备120提供输出。主机设备105可被配置为分别经由适当接口或通道125a、125b和125c与存储器设备110、输入设备115和输出设备120进行通信。计算系统100可在多种计算设备中实现,该多种计算设备诸如计算机(例如,台式计算机、膝上型计算机等)、平板电脑、个人数字助理、移动设备、可穿戴计算设备(诸如智能手表、其它手持式或便携式设备)、或适于使用主机设备105执行操作的任何其它计算单元。

输入设备115可包括多种输入技术中的任一种,诸如键盘、触笔、触摸屏、鼠标、轨迹球、小键盘、麦克风、语音识别、运动识别、远程控制器、输入端口、一个或多个按钮、拨号盘、操纵杆、以及与主机设备105相关联并且允许外部源(诸如用户)将信息(例如,数据)键入主机设备中并且将指令发送到主机设备的任何其它输入外围设备。类似地,输出设备120可包括多种输出技术,诸如外部存储器、打印机、扬声器、显示器、麦克风、发光二极管、耳机、绘图仪、语音生成设备、视频设备、全球定位系统、以及被配置为从主机设备105接收信息(例如,数据)的任何其它输出外围设备。输入到主机设备105中和/或从主机设备输出的“数据”可包括多种文本数据、图形数据、视频数据、声音数据、位置数据、它们的组合,或适于使用计算系统100进行处理的其它类型的模拟和/或数字数据中的任一种。

主机设备105可包括一个或多个中央处理单元(“cpu”)内核或处理器130a-130n,其可被配置为执行用于运行与主机设备相关联的一个或多个应用程序的指令。在一些实施方案中,运行一个或多个应用程序所需的指令和数据可存储在存储器设备110内。主机设备105还可被配置为将运行一个或多个应用程序的结果存储在存储器设备110内。因此,主机设备105可被配置为请求存储器设备110执行各种操作。例如,主机设备105可请求存储器设备110读取数据、写入数据、更新或删除数据、和/或执行管理或其它操作。

为了便于与存储器设备110进行通信,主机设备105可以与存储器设备的存储器控制器135进行通信。虽然存储器控制器135被示出为存储器设备110的一部分,但在一些实施方案中,该存储器控制器可为主机设备105的一部分或计算系统100的另一个元件并且与主机设备/存储器设备操作地相关联。存储器控制器135可被配置为从主机设备105接收指令并且根据那些指令执行操作的逻辑块或电路。例如,存储器控制器135可被配置为经由接口125a从存储器设备110读取数据或将数据写入该存储器设备。

在一些实施方案中并且如图所示,存储器设备110可以包括磁阻随机存取存储器(“mram”)模块140。在一些实施方案中,mram模块140可以是磁致电子随机存取存储器(“meram”)或自旋转移扭矩mram(“stt-mram”)(有时也称为stt-ram、st-mram、st-ram等)、自旋轨道扭矩mram(“sot-mram”)类型。在其他实施方案中,mram模块140可包括其他类型的mram。在一些实施方案中,存储器设备110可包括除mram模块140之外的存储器模块,该存储器模块可受益于改善如本文所述的写入效率。例如,在一些实施方案中,存储器设备110可包括动态随机存取存储器(“dram”)、电阻式随机存取存储器(“reram”)、静态随机存取存储器(“sram”)等。在一些实施方案中,存储器设备110可包括mram模块140以及可受益于本文所述的操作的其他类型的存储器(例如,诸如上面讨论的那些)。此外,尽管存储器设备110已被示出为具有单个存储器模块(例如,mram存储器模块140),但在其他实施方案中,存储器设备可由多个存储器模块构成。为了便于描述,mram将用于此处的描述中,但各种实施方案的范围涵盖这些其他存储器类型,包括上述那些存储器类型。

mram模块140可包括mram阵列145。mram阵列145可包括允许将数据位存储为磁性状态而不是电荷的多个mram单元。图2a至图2c更详细地描述mram阵列145的示例。虽然单个mram阵列145已被示出为mram模块140的一部分,但是在一些实施方案中,多个mram阵列可存在于mram模块内。

应当理解,图1中示出和描述了计算系统100的仅一些部件。然而,计算系统100可包括其它部件,诸如各种电池和电源、联网接口、路由器、交换机、外部存储器系统、控制器等。一般来讲,计算系统100可包括执行本文所述的功能所需或被认为是期望的多种硬件、软件和/或固件部件中的任一种。类似地,主机设备105、输入设备115、输出设备120以及包括mram模块140和mram阵列145的存储器设备110可包括在执行本文所述的功能时被认为是必要的或期望的其它硬件、软件和/或固件部件。此外,在某些实施方案中,存储器设备110可集成主机设备105的一些或所有部件,包括例如cpu内核130a至130n,并且那些cpu内核可实现如本文所述的写入脉冲确定和相关控制。

现在转到图2a至图2c,示出了根据本公开的一些实施方案的mram阵列的示例性配置。例如,图2a示出mram阵列200的示例,图2b示出mram阵列205的示例,并且图2c示出mram阵列210的示例。mram阵列200至210类似于图1的mram阵列145。具体参见图2a,mram阵列200是二维存储器阵列,该二维存储器阵列具有在x方向220和y方向225上延伸的多个mram单元215a至215h,并且形成mram单元的二维阵列。虽然在mram阵列200中示出了多个mram单元215a至215h中的九个mram单元,但是应当理解,x方向220和y方向225上的mram单元的数量可以与所示数量不同,这取决于期望的mram阵列的容量。mram阵列200还包括多条字线230a至230d,其中在图2a中示出仅四条字线。根据多个mram单元215a至215h的数量,多条字线220a至220d的数量可以变化。一般来讲,可以为多个mram单元215a至215h的每行提供多条字线230a至230d中的一条字线,如图2a所示。如本文所用,“行”是指在x方向220上延伸的水平线。因此,例如,多个mram单元215a、215b、215c和215d可被认为是在一个“行”中,并且连接到并共享字线230a。类似地,与mram单元215f相同的行中的多个mram单元连接到并共享字线230b等。

mram阵列200还包括多条位线235a至235e。多条位线235a至235e垂直于(或基本上垂直于)多条字线230a至230d延伸。类似于多条字线230a至230d,多条位线235a至235e的数量根据mram阵列200中的多个mram单元215a至215h的数量而变化。一般而言,可以为多个mram单元215中的每个“列”提供多条位线235a至235e中的一条位线,如图2a所示。如本文所用,“列”是指在y方向225上延伸的竖直线。因此,例如,多个mram单元215e、215f、215g和215h可以被认为是在一个“列”中,并且可以连接到并共享位线235e。类似地,与mram单元215d相同的列中的多个mram单元可以连接到并共享位线235d等。

因此,存储器阵列200包括以交错或交叉点配置布置的多条字线230a至230d和多条位线235a至235e。多条字线230a至230d中的每条字线和多条位线235a至235e中的每条位线是可用于选择多个mram单元215a至215h中的相关联的一个mram单元的导体或导线。此外,多条字线230a至230d中的每条字线可以从相邻字线偏移以限定其间的间距。类似地,多条位线235a至235e中的每条位线可以从相邻位线偏移,以在x方向220上限定其间的间距。

多个mram单元215a至215h中的每个mram单元位于多条字线230a至230d中的一条字线和多条位线235a至235e中的一条位线的相交区域或相交点处。例如,mram单元215a位于字线230a和位线235a的相交部处并连接到该相交部。类似地,mram单元215b位于字线230a和位线235b的相交部处并连接到该相交部等。由于多条字线230a至230d和多条位线235a至235e彼此偏移以限定上述间距,因此多个mram单元215a至215h中的每个mram单元也从相邻mram单元偏移。

代替mram阵列200的二维阵列,mram阵列205和210本质上是三维的。例如,在一些实施方案中,mram阵列205和210可堆叠多个二维mram阵列以形成三维mram阵列。mram阵列205和210示出堆叠的两个二维mram阵列。然而,在其他实施方案中,堆叠以形成三维mram阵列的二维阵列的数量可大于二。具体参见图2b,mram阵列205包括在垂直于x方向220以及y方向225的z方向250上堆叠的第一二维mram阵列240和第二二维mram阵列245。第一二维mram阵列240和第二二维mram阵列245中的每者可被配置为mram阵列200,该mram阵列具有在字线和位线的相交部处形成的多个mram单元,如上所述。

例如,如图2b所示,第一二维mram阵列240可包括如上关于mram阵列200所述布置的多个mram单元215a至215h、多条字线230a至230d和多条位线235a至235e。类似地,第二二维mram阵列245可包括如上关于mram阵列200所述布置的多个mram单元215a至215h、多条字线230a至230d和多条位线235a至235e。此外,第一二维mram阵列240和第二二维mram阵列245可以通过绝缘层彼此分开,为了清楚起见,绝缘层在图2b中未示出。

应当理解,第一二维mram阵列240和第二二维mram阵列245中的每者中的多个mram单元215a至215h的数量可以与所示数量不同。因此,第一二维mram阵列240和第二二维mram阵列245中的每者中的多条字线230a至230d和多条位线235a至235e的数量可以与所示数量不同。此外,尽管第一二维mram阵列240和第二二维mram阵列245中的每者中的多个mram单元215至215h的数量(以及因此多条字线230a至230d和多条位线235a至235e的数量)被示出为相等,但是在其他实施方案中,多个mram单元的数量(以及因此多条字线的数量和多条位线的数量)可以不相等。

图2c示出了三维mram阵列的另一个示例。mram阵列210可被配置为镜像配置,其中相邻的二维mram阵列共享一组位线或字线。例如,mram阵列210被示出为共享多条位线235a至235e。因此,mram阵列210包括第一二维mram阵列255和第二二维mram阵列260,这两者共享多条位线235a至235e。第一二维mram阵列255和第二二维mram阵列260中的每者包括其多个mram单元215a至215h的单独实例和其多条字线230a至230d的单独实例。虽然未示出,但是替代地mram阵列210可被配置为共享多条字线230a至230d。

应当理解,第一二维mram阵列2255和第二二维mram阵列260中的每者中的多个mram单元215a至215h的数量可以与所示数量不同。因此,第一二维mram阵列255和第二二维mram阵列260中的每者中的多条字线230a至230d和多条位线235a至235e的数量可以与所示数量不同。此外,尽管第一二维mram阵列255和第二二维mram阵列260中的每者中的多个mram单元215至215h的数量(以及因此多条字线230a至230d的数量)被示出为相等,但是在其他实施方案中,多个mram单元的数量(以及因此多条字线和多条位线的数量)可以不相等。

转到图3,更详细地示出根据本公开的一些实施方案的示例性mram单元300。mram单元300可对应于上文图2a至图2c所示的多个mram单元215a至215h中的一个mram单元。。mram单元300在字线305和位线310的相交部处形成并连接到该字线和该位线。字线305对应于多条字线230a至230d中的一条字线。类似地,位线310对应于多条位线235a至235e中的一条位线。例如,如果mram单元300对应于mram单元215a,则字线305对应于字线230a,并且位线310对应于位线235a。为简单起见,图3中仅示出字线305的一部分和位线310的一部分。

mram单元300可通过沉积多个层315来形成。多个层315中的每个层可以是连续的未图案化层,并且可通过各向异性地将多个层蚀刻成柱结构阵列来沉积。另选地,可以通过将多个层沉积在绝缘层中的开口中,通过镶嵌工艺形成mram单元300的多个层315。在其他实施方案中,其他工艺可用于沉积和形成构成mram单元300的多个层315。mram单元300的多个层315可包括由层320、325和330形成的磁性隧道结的串联连接。在一些实施方案中,磁性隧道结可以是磁电隧道结(metj)。在其他实施方案中,磁性隧道结可为其他类型。磁性隧道结的层330形成铁磁自由(未钉扎)层,层325形成绝缘隧穿氧化物层,并且层320形成铁磁固定参考(钉扎)层。层320在本文中被称为参考层320,层325在本文中被称为绝缘层325,并且层330在本文中被称为自由层330。

mram单元300的多个层315还可包括双端子选择器元件335。多个层315还可包括用于钉扎参考层320的一个或多个磁钉扎层。在一些实施方案中,多个层315中的一个或多个钉扎层可以包括铁磁钉扎层340和位于该铁磁钉扎层和参考层320之间的任选的抗磁性或反铁磁耦合层345。尽管未示出,但是在一些实施方案中,铁磁钉扎层340本身可以包括层的叠堆,诸如各自厚度为0.3nm至0.4nm的六至十个交替钴和铂层的叠堆。在一些实施方案中,任选的耦合层345可以是0.2nm至0.3nm厚的钽层。在一些实施方案中,代替和/或除了上述材料和厚度之外的任何其他合适的层材料和厚度可以用于钉扎参考层320。

参考层320具有固定的磁化方向。参考层320的磁化方向可以通过(例如)钉扎层340和耦合层345的组合来固定。例如,钉扎层340可以包括永磁体,该永磁体具有平行于mram单元300的高度方向并且因此垂直于自由层330和绝缘层325之间的界面的磁化方向。在一些实施方案中,自由层330的磁化可以与参考层320的磁化反平行。可以选择耦合层345的厚度,使得参考层320的磁化与钉扎层340的磁化反平行。因此,参考层320的磁化可以垂直于自由层330和绝缘层325之间的界面。例如,参考层320可包括具有在1nm至2nm的范围内的厚度的cofeb层。在一些实施方案中,可以选择参考层320的磁矩,使得基本上没有净垂直磁场存在于自由层330处。

绝缘层325允许泄漏电流从中通过,例如,用于测量磁性隧道结的电阻,因此确定自由层330的磁化相对于参考层320的磁化的对准。自由层330的磁性各向异性提供了易磁化轴线,这使得自由层能够处于两种稳定状态。当自由层330的磁化平行于参考层320的磁化时,产生具有低电阻rp的低电阻状态。当自由层330的磁化与参考层320的磁化反平行时,产生具有高电阻rap的高电阻状态。隧穿磁阻比率(其被定义为(rap/rp)-1)是对磁性隧道结的性能度量的量度,并且直接影响感测边界和错误率。在一些实施方案中,选择绝缘层325的厚度使得自旋扭矩传递(stt)效应在所施加的电偏置电压下相对于自由层330围绕内平面(在自由层和绝缘层325之间的界面平面内)轴线的磁化进动是不显著的。例如,绝缘层325可以包括mgo层。mgo层优选地具有大于1.2nm的厚度以降低切换能量,诸如1.3nm至3nm范围内的厚度,诸如从1.4nm至1.7nm。

自由层330具有垂直磁性各向异性。因此,易磁化轴线可以垂直于自由层330和绝缘层325之间的界面。在其中自由层330和绝缘层325之间的界面为水平的实施方案中,自由层的磁化可以沿“向上”方向或沿“向下”方向(即,这两个竖直方向中的一个方向)。磁性隧道结可以被形成为沿竖直方向具有内置的不对称性。在这种情况下,垂直磁性各向异性(“pma”)可以包括与整个自由层330和参考层320上的施加的电压无关的常数项以及与整个自由层和参考层上的施加的电压成比例的显著量值(相对于恒定项)的奇数项。换句话讲,可以通过在整个自由层330和参考层320上施加合适极性的外部偏置电压来显著增大或减小垂直磁性各向异性。在一些实施方案中,自由层330可以包括cofeb层。自由层330可以具有小于1.4nm的厚度,诸如在0.9nm至1.3nm范围内的厚度,以允许电场在操作期间穿透该厚度,但也可以采用较小和更大的厚度。

mram单元300以竖直配置示出,并且在一些实施方案中,mram单元可替代地以水平配置配置。在水平配置中,自由层330可以位于参考层320下方而不是参考层上方,并且钉扎层340可以位于参考层上方。此外,在水平配置中,选择器元件335可被定位成使得剩余层形成在选择器元件上方。可使用电压控制的磁性各向异性(vcma)效应写入或读取mram单元300。换句话讲,电压可以施加在选择的字线和选择的位线之间,并且由于vcma效应,mram单元300可以通过在一个方向上(例如,在正向偏置模式下)使电压脉冲化,诸如通过向自由层330施加负电压极性和向参考层320施加正电压极性而在平行状态和反平行状态之间来回切换。在一些实施方案中,在写入操作期间,非常小的电流可以在自由层330和参考层320之间流动。然而,电流可以小,以至于可以忽略stt效应,并且欧姆耗散可以是最小的,这降低了写入能量。作为对比,在读取操作期间,较大电流可以在自由层330和参考层320之间流过绝缘层325。

现在参考图4,示出了根据本公开的一些实施方案的mram阵列400的mram单元中的示例性读取和写入操作。mram阵列400包括多个mram单元405a至405i。虽然在mram阵列400中示出了九个mram单元,但是mram阵列中的mram单元的数量可以变化。多个mram单元405a至405i中的每个mram单元可以连接到位线和字线。例如,mram单元405a、405d和405g可被认为是在同一“列”中,并且共享并连接到位线410。mram单元405b、405e和405h共享并连接到位线415。类似地,mram单元405c、405f和405i共享并连接到位线420。mram单元405a、405b和405c可被认为是在同一“行”中,并且连接到字线425。类似地,mram单元405d、405e和405f连接到字线430,而mram单元405g、405h和405i连接到字线435。因此,多个mram单元405a至405i中的每个mram单元形成在位线和字线的相交部处。

可通过启用相关联的位线和字线来选择要编程或读取的mram单元。例如,为了从mram单元405e编程或读取,可以启用与mram单元连接的位线415和字线430。因此,位线415和字线430可以分别被认为是“选择的位线”(“sbl”)和“选择的字线”(“swl”)。其他位线(例如,位线410和420)可以被认为是“未选择的位线”(“ubl”),并且其他字线(例如,字线425和435)可以被认为是“未选择的字线”(“uwl”)。为了写入或编程mram单元405e,在一些实施方案中,可以施加正向偏置以促进该mram单元的磁性隧道结的自由层的磁化状态的切换。类似地,为了从mram单元405e读取,在一些实施方案中,可以施加反向偏置以感测该mram单元的磁性隧道结的自由层的磁化状态。在读取和写入操作期间,未选择的磁性隧道结的双端子选择器元件防止写入和/或干扰未选择的mram单元。例如,当mram单元405e是所选择的mram单元时,mram单元405a至405d和405f至4015i是未选择的mram单元,并且那些mram单元的相关联的选择器元件440a至44d和440f至440i可分别防止读取/写入那些mram单元。

在一些实施方案中,具有第一抑制电压的写入脉冲可以被施加到uwl(例如,uwl425和435)中的每者,并且具有第二抑制电压的写入脉冲可以在读取和写入所选择的mram单元(例如,mram单元405e)期间被施加到ubl(例如,ubl410和420)中的每者。在一些实施方案中,在编程期间,第一抑制电压可以在0.4v至1.2v的范围内,诸如0.6v,并且第二抑制电压可以在0.4v至1.2v的范围内,诸如0.6v。第二抑制电压可以与第一抑制电压相同、高于或低于第一抑制电压。另一方面,swl430和sbl415可被偏置以提供写入脉冲电压,从而对相关联的mram单元405e进行编程。写入脉冲可大于相关联的选择器元件440e的接通电压。例如,sbl415被偏置为处于0v,并且swl430可以被偏置成具有在从1.0v到2.5v的范围内的量值的正电压脉冲,诸如对于复位操作(即,平行磁性状态到反平行磁性状态)和置位操作(即,反平行磁性状态到平行磁性状态)两者为1.2v。写入脉冲的脉冲宽度持续时间可为纳秒量级。

在读取期间,第一抑制电压可以在从0.3v至1.0v的范围内,诸如0.45v至5v,并且第二抑制电压可以在从0.3v至1.0v的范围内,诸如0.45v至5v。第二抑制电压可以与第一抑制电压相同、高于或低于第一抑制电压。感测期间的第一抑制电压和第二抑制电压可以分别与编程期间的第一抑制电压和第二抑制电压相同或不同。如果所有抑制电压相同,则这将节省从读取到写入的时间切换,因为写入之前的读取可以用于每次写入(以确定是否发送写入脉冲)。swl430和sbl415可以被偏置以提供最佳读取电压,该最佳读取电压不具有与写入脉冲的情况一样的时间限制。例如,sbl415可以被偏置处于从0.7v至2.0v的范围内的电压,诸如0.9v至1v,并且swl430可以被偏置为具有0v。

现在转到图5,示出了根据本公开的一些实施方案的mram阵列500。mram阵列500类似于mram阵列145、205、210和215。mram阵列500包括多个mram子阵列505a至505n。多个mram子阵列505a至505n中的每个mram子阵列可以包括多个mram单元。此外,多个mram子阵列505a至505n中的每个mram子阵列分别包括沿列方向延伸的多条位线510a至510n,如上所讨论的。多个mram子阵列505a至505n中的每个mram子阵列还分别包括沿行方向延伸的多条字线515a至515n。此外,多个mram子阵列505a至505n中的每个mram子阵列可被配置用于独立的操作和控制。

因此,多个mram子阵列505a至505n中的每个mram子阵列可以分别与行解码器520a至520n相关联,以基于经由地址总线525提供的地址信息来选择多条字线515a至515n中的相关联的一条字线。多个mram子阵列505a至505n中的每个mram子阵列还可以分别与列解码器530a至530n相关联,以选择多条位线510a至510n中的相关联的一条位线。通过选择和取消选择多个mram子阵列505a至505n的字线和位线,可以启用那些mram子阵列的mram单元以将数据写入到那些mram单元中或从那些mram单元读取数据。多个mram子阵列505a至505n中的每个mram子阵列还可以分别与读写电路535a至535n相关联。在一些实施方案中,读写电路535a至535n中的每个读写电路可以包括一个或多个感测放大器,以在控制器540的控制下启用对多个mram子阵列505a至505n中的相关联的一个mram子阵列的读取和写入数据。控制器540可类似于图1中的存储器控制器135。在一些实施方案中,控制器540可与存储器控制器分开。此外,读写电路535a至535n中的每个读写电路可与数据缓冲器545连接。在一些实施方案中,数据缓冲器545的单独实例可用于多个mram子阵列505a至505n中的每个mram子阵列。数据缓冲器545可用于存储经由数据总线550接收的数据,该数据将写入到多个mram子阵列505a至505n中。数据缓冲器545还可用于在数据总线550上传输该数据之前存储从多个mram子阵列505a至505n读取的数据。

因此,多个mram子阵列505a至505n中的每个mram子阵列被配置用于并行操作。换句话讲,与mram阵列500相关联的控制器540可能够独立地而且同时地控制多个mram子阵列505a至505n中的每个mram子阵列。另外,多个mram子阵列505a至505n中的每个mram子阵列可相对于其他子阵列具有相同的大小(例如,相同的容量)或不同的大小。多个mram子阵列505a至505n中的每个mram子阵列可被配置为存储存储在mram阵列500内的数据。对于存储在mram阵列500内的每条数据,多个mram子阵列505a至505n中的每个mram子阵列被配置为存储该条数据的一位。例如,对于存储在mram阵列500内的八位数据,多个mram子阵列505a至505n中的第一子阵列的mram单元可被配置为存储该八位数据的第一位,第二子阵列的mram单元可被配置为存储该八位数据的第二位,第三子阵列的mram单元可被配置为存储该八位数据的第三位等。此外,多个mram子阵列505a至505n中的每个mram子阵列可被配置成存储多个数据,其中每个mram子阵列存储多个数据中的每个数据的一位。

形成多个mram子阵列505a至505n的一部分的子阵列的数量可基于mram阵列500的配置和mram模块存储的每条数据的带宽(例如,位宽度)而变化。在一些实施方案中,多个mram子阵列505a至505n可包括八个子阵列以存储八位数据。在其他实施方案中,多个mram子阵列505a至505n可包括十六个子阵列以存储十六位数据。在其他实施方案中,可形成子阵列组以存储宽度大于八位的数据。例如,在一些实施方案中,第一组八个子阵列可存储数据的零至七位,而第二组八个子阵列可存储十六位数据的八至十五位。因此,根据要存储的数据的大小和mram阵列500的配置,多个mram子阵列505a至505n中的子阵列的数量可变化。

此外,多个mram子阵列505a至505n中的每个mram子阵列可专用于存储数据的特定位位置。具体地讲,无论位宽度如何,每条数据包括最低有效位(“lsb”)、最高有效位(“msb”)以及占据lsb与msb之间的位位置的位。如本文所用,lsb是一条数据的最低位,msb是该条数据的最高位。因此,例如,对于八位数据b0b1b2b3b4b5b6b7,b7是msb并且b0是lsb。位b1-b6占据msb与lsb之间的位位置。在一些实施方案中,可以说msb位b7占据第一个位位置,可以说位b6占据第二个位位置,可以说位b5占据第三个位位置等。可以说lsb位b0占据第八个位位置。多个mram子阵列505a至505n中的每个mram子阵列可专用于存储一条数据的特定位位置。

参考图6,示出了根据本公开的一些实施方案的示例性mram阵列600。mram阵列600类似于mram阵列500,但是在图6中仅示出了一些元件。类似于mram阵列500,mram阵列600包括多个mram子阵列605a至605n。在一些实施方案中,为了存储b位字,多个mram子阵列605a至605n包括b个mram子阵列,其中每个mram子阵列存储b位字的一位。如上所述,多个mram子阵列605a至605n中的每个mram子阵列可以专用于存储b位字的特定位位置。例如并且如图6所示,mram子阵列605a可被配置为存储lsb(例如,以上示例中的位b0),mram子阵列605n可被配置为存储msb(例如,以上示例中的位b7),而mram子阵列605b至605m可被配置为存储lsb与msb之间的位位置(例如,以上示例中的位b1至b6)。由于专用于存储数据的特定位位置,每当要存储一条数据时,该数据的lsb可存储在mram子阵列605a内,该数据的msb可存储在mram子阵列605n内,并且lsb与msb之间的每个位可存储在mram子阵列605a与605n之间的一个mram子阵列内,具体取决于该位的位位置以及被配置为存储该位位置的mram子阵列。

同样如上所述,在一些实施方案中,为了存储b位字,多个mram子阵列605a至605n可包括b个mram子阵列。在其他实施方案中,可以创建多组mram子阵列,其中每个组存储b位字的子组。例如,为了存储十六位字,可以创建多个mram子阵列605a至605n中的第一组610以存储十六位字中的位位置一到八,并且可以创建第二组615以存储十六位字中的位位置九到十六。因此,第一组610和第二组615中的每者可以包括八个mram子阵列以存储十六位字中的一位。因此,第一组610中的多个mram子阵列605a至605n可包括八个mram子阵列。类似地,第二组615可包括mram子阵列620a至620n,并且具体地讲,八个mram子阵列。对于大于十六位的字大小,可以形成附加组的mram子阵列。另选地,可以增加第一组610和第二组615中的mram子阵列的数量。

此外,对于十六位字,其中位位置一至八存储在多个mram子阵列605a至605n中,并且位位置九至十六存储在多个mram子阵列620a至620n中,位位置一至八中的msb可以是对应于位位置一的位,并且可以存储在专用于存储msb的mram子阵列(例如,mram子阵列605n)内,并且位位置八是lsb,并且可以存储在专用于存储lsb的mram子阵列(例如,mram子阵列605a)中。类似地,对于位位置九至十六,位位置九是msb并且可以存储在专用于存储msb的mram子阵列(例如,mram子阵列620n)内,并且位位置十六是lsb并且可以存储在专用于存储lsb的mram子阵列(例如,mram子阵列620a)中。因此,存储在每组中的数据位的子组中的lsb和msb可被识别并存储在专用于该位位置的mram子阵列中。

为了简单起见,下面的讨论是关于多个mram子阵列605a至605n。然而,相同的讨论也适用于多个mram子阵列620a至620n。

mram阵列600的交织器625可以被配置为知道多个子阵列605a至605n中的哪个mram子阵列存储哪个位位置的数据。因此,交织器625可被配置为知道要将数据的lsb存储在mram子阵列605a内,要将数据的msb存储在mram子阵列605n内等。例如,对于八位数据x=(x0,x1,x2,...x7),其中位x0是lsb并且位x7是msb,交织器625可将位x0存储mram子阵列605a中、将位x1存储在mram子阵列605b中、将位x7存储在mram子阵列605n中等。如下面将进一步讨论的,交织器625可被配置为周期性地加扰或改变mram子阵列存储哪些位位置以减少mram子阵列605a至605n上的损耗。此外,交织器625还可用于存储多个mram子阵列620a至620n中的数据位。在一些实施方案中,单独的交织器可用于多个mram子阵列620a至620n。因此,每个mram子阵列可被配置为存储对应于特定位位置的数据位。

通过将每个数据位存储在不同的mram子阵列中,写入脉冲优化系统630可以根据存储在特定mram子阵列中的数据的位位置来确定多个mram子阵列605a至605n中的一个或多个mram子阵列的写入脉冲的优化参数(例如,写入电流和脉冲宽度)。在诸如机器学习应用和信号处理的许多应用中,位错误的影响取决于位位置。例如,与lsb位置中的错误相比,图像像素的msb位置中的错误可使整体图像质量劣化更多。msb中的错误也可影响机器学习应用中的推断或表征准确性。因此,lsb中的错误可比msb中的错误更易容忍。换句话讲,保持msb的准确性可能比保持lsb的准确性更重要。为了保持msb与lsb相比更高的准确度,如本文所讨论,用于将数据位写入msb位置的写入脉冲可与用于将数据位写入lsb位置的写入脉冲不同。在其他实施方案中,除msb位置和lsb位置之外的其他位位置中的错误可使数据劣化更多。通过将一条数据的每个位分离并存储在单独的mram子阵列中,mram阵列600提供基于存储在那些子阵列中的数据位的位位置的相对重要性来确定多个mram子阵列605a至605n中的一个或多个mram子阵列的不同写入脉冲的能力。写入脉冲优化系统630可被配置为根据那些位位置的相对重要性来确定一个或多个位位置的写入脉冲。

如上所讨论的,写入脉冲是写入电流和脉冲宽度的函数。通过增加写入电流的量值和/或脉冲宽度的长度/持续时间,可以减小wer。然而,增加写入电流的量值和/或脉冲宽度的长度/持续时间增加了写入数据位所需的写入能量或功率。因此,写入能量e也是写入电流和写入脉冲的脉冲宽度的函数:

e∝i2t(公式i)

从上面的公式i可以看出,写入脉冲e与写入电流i和脉冲宽度t的长度/持续时间成正比。此外,写入一条数据的每个位的错误可以以误码率(“ber”)(在本文中也称为写入错误率(“wer”)或写入故障率(“wfr”))来定义。具体地讲,ber可被定义为特定位在每单位时间的写入错误数。较低的ber通常是期望的。ber在本文中称为保真性度量。随着写入脉冲的写入电流增大,ber以指数方式减小。类似地,随着写入脉冲的脉冲宽度的长度/持续时间增加,ber以指数方式减小。berpf可表示为:

其中:

j=i-1=过驱动电流

i=归一化电流=i/ico

ico临界电流并且i=写入电流

t=写入脉冲的脉冲宽度

t0=基于磁矩的特征弛豫时间的修正参数。

如何导出公式ii的附加细节可见于khvalkovskiy等人的“存储器阵列中stt-mram单元操作的基本原理(basicprinciplesofstt-mramcelloperationinmemoryarrays)”,物理学杂志d应用物理学,第46卷,第7期,2013年2月,其全部内容以引用方式并入本文。

可使用凸优化算法求解公式ii以使受到资源度量约束的ber最小化。在一些实施方案中,资源度量可以是写入能量。例如,对于期望的写入能量,可求解公式ii,以获得减小或最小化ber的优化的写入电流的量值和/或优化的脉冲宽度的长度/持续时间。在一些实施方案中,可使用交替凸搜索(“acs”)算法来求解公式ii。在一些实施方案中,acs算法可交替求解以下两个优化,直到满足停止标准:

(1)修正i,然后求解:约束于e(i,t)≤ε,0≤t≤δ

(2)修正t=t*,然后求解:约束于e(i,t*)≤ε,1<i

下面更详细地讨论上面的公式。在其他实施方案中,可使用其他凸算法和可能的非凸算法来求解公式ii。因此,可使用多种凸算法和非凸算法求解公式ii,以受到(例如,满足)期望资源度量(例如,写入能量)的保真性度量(例如,ber)最小化。此外,在一些实施方案中,可使用acs算法(或另一种算法)通过修正写入电流的量值并确定最佳脉冲宽度t*的长度/持续时间来求解公式ii,如下:

约束于e(i,t)≤ε,0≤t≤δ(公式iii)

其中:

e(i,t)=写入能量,写入能量为写入电流和脉冲宽度的长度/持续时间的函数。

ε=最大允许写入能量(例如,资源度量约束)。

t=未优化的脉冲宽度的长度/持续时间。

δ=脉冲宽度的最大允许长度/持续时间(使得优化的脉冲宽度不能超过最大允许脉冲宽度长度/持续时间)。

δ是能量势垒的比率,其附加细节可见于khvalkovskiy等人,如上所述。

因此,通过求解公式iii,可针对特定数据位获得最佳脉冲宽度t*,该特定数据位在满足写入能量约束的同时减小ber或使其最小化。在确定特定位的最佳脉冲宽度t*时,可将以下公式中的脉冲宽度t修正为使用公式iii确定的最佳脉冲宽度t*,然后可求解公式ii以确定最佳写入电流值i*,如下:

约束于e(i,t*)≤ε,1<i(公式iv)

其中t=t*由求解公式iii获得。

因此,通过求解公式iii,可针对特定数据位获得最佳写入电流i*,该特定数据位在满足写入能量约束的同时减小ber或使其最小化。一旦确定了最佳写入电流值i*,可将公式iii中的写入电流值i修正为最佳写入电流值i*,并且可再次求解公式iii和iv,如上所述。重复以下循环:在将写入电流修正为来自前一循环的最佳写入电流值的同时确定最佳脉冲宽度,然后在将脉冲宽度修正为来自同一循环的最佳脉冲宽度的同时确定最佳电流值,直到满足停止标准。

在一些实施方案中,停止标准可基于求解公式iii和iv的循环的数量(例如,十个循环)。在其他实施方案中,停止标准可为脉冲宽度和写入电流值的收敛。在其他实施方案中,可使用其他停止标准。当达到停止标准时,通过求解公式iii确定的最佳脉冲宽度可用作写入脉冲的最佳脉冲宽度,并且通过公式iv确定的最佳写入电流可用作写入脉冲的最佳写入电流。在分别根据公式iii和iv施加具有最佳写入电流值和最佳脉冲宽度的写入脉冲时,特定mram单元的ber可被最小化,并且写入能量可小于最大允许写入能量ε。

在一些实施方案中,代替优化写入电流和脉冲宽度二者,可优化写入电流或脉冲宽度。例如,在一些实施方案中,可使用公式iv来确定最佳写入电流。具体地,为了确定最佳写入电流,公式iv中的脉冲宽度t可修正为预定脉冲宽度值,并且可定义资源度量(例如,写入能量)。然后,通过求解公式iv,可获得最佳写入电流值。因此,写入电流被优化,但在这种情况下脉冲宽度未被优化。在其他实施方案中,可使用公式iii确定最佳脉冲宽度。具体地,为了确定最佳脉冲宽度,可将公式iii中的写入电流i修正为预定写入电流值,并且可定义资源度量(例如,写入能量)。然后,通过求解公式iii,可获得最佳脉冲宽度值。因此,脉冲宽度被优化,但写入电流未被优化。在一些实施方案中,最佳参数可为通过如上所述优化公式而获得的i=2和

因此,通过优化写入电流和/或写入脉冲的脉冲宽度,可以使特定mram单元的ber最小化,同时满足期望的资源度量(例如,写入能量)。ber是保真性度量的一个示例。在其他实施方案中,可使用其他保真性度量。例如,均方误差(“mse”)是另一种保真性度量。ber定义数据的每位的错误率,而mse定义组合的数据的所有位的累积错误率。峰值信噪比(“psnr”)是可用于代替ber和mse的另一种保真性度量。psnr表示一条数据中的峰值错误的量度。可根据需要使用其他保真性度量。类似地,写入能量是一个资源度量。在其他实施方案中,可使用其他类型的资源量度,诸如写入速度等。

如果b位字的保真性度量是mse(其中b位字的每个位的保真性度量是ber),则b位字的mse可被定义为:

在上面的公式中,b表示位位置,tb表示用于写入具有特定位位置b的位的写入脉冲的脉冲宽度,并且ib表示用于写入具有特定位位置b的位的写入脉冲的写入电流。此外,p(ib,tb)表示每个位位置的ber,并且可以通过求解上面的公式ii来最小化。因此,b位字的mse是b位字的每位的ber的总和。在公式v中,4b表示每个位置的不同重要性。换句话讲,4b的值基于位位置而改变。例如,对于b=0,4b=1,而对于b=7,4b=16384。上述公式v的其他细节可见于kim等人的“用于源感知型节能sram的通用注水(generalizedwater-fillingforsource-awareenergy-efficientsrams)”,第66卷,第10期,2018年10月,其全文以引用方式并入本文。

因此,基于4b的值,b位字的mse改变。上述公式可总结如下:

可以设想凸优化问题来求解上述公式并确定b位字的每个位位置的最佳脉冲宽度和/或最佳写入电流。在一些实施方案中,对于给定的写入能量约束,可以针对使mse最小化的b位字的每个位位置计算最佳写入电流值和/或最佳脉冲宽度。具体地讲,在一些实施方案中,写入电流和脉冲宽度可在多个循环中如上文相对于ber所讨论的那样交替更新。例如,在一些实施方案中,在第一循环中,写入电流可以被修正,并且最佳脉冲宽度t*可以如下计算:

约束于e(i,t)≤ε,0≤tb≤δ(公式vi)

其中:

p(ib,tb)=位位置b的ber,并且使用公式ii计算,如上所讨论的。

ε=最大允许写入能量(资源度量约束)。

δ=脉冲宽度的最大允许持续时间或脉冲宽度的上限。

公式vi可使用acs算法或被认为是合适的任何其他算法来求解。在使用公式vi计算最佳脉冲宽度t*时,脉冲宽度t可被修正为t*,并且最佳写入电流i*可如下计算:

修正t=t*,然后求解:

约束于e(i,t*)≤ε,1+∈≤ib(公式vii)

其中:

p(ib,tb)=位位置b的ber,并且使用公式ii计算,如上所讨论的。

ε=最大允许写入能量(资源度量约束)

和pf(i=1)→∞。

然后在循环2中可将从公式vii获得的最佳写入电流值i*修正为公式vi中的写入电流i值,并且可再次求解公式vi。然后可将通过在循环2中求解公式vi获得的最佳脉冲宽度的值修正为公式vii中的脉冲宽度值,并且可求解公式vii以获得最佳写入电流值。可重复求解公式vi和vii的循环,直到达到如上所讨论的停止标准。来自最终循环的最佳写入电流和最佳脉冲宽度的值使mse最小化,同时满足写入能量约束。然后可以使用这些最终值来为多个mram子阵列605a至605n中的每个mram子阵列生成写入脉冲。

具体地讲,通过如上所讨论地求解公式vi和vii,可以生成b位字的最佳写入电流的b值和最佳脉冲宽度的b值,并且这些值基于位的位位置而变化。例如,对于8位字,通过求解公式vi和vii,可以生成最佳写入电流的八个值和最佳脉冲宽度的八个值,其中最佳写入电流和最佳脉冲宽度的每个值用于根据存储在该mram子阵列中的位的位位置为一个mram子阵列生成最佳写入脉冲。在一些实施方案中,写入脉冲发生器635可用于生成具有最佳写入电流和最佳脉冲宽度的写入脉冲。对于每个mram子阵列,写入脉冲发生器635可以生成写入脉冲,该写入脉冲具有为该mram子阵列确定的最佳写入电流值和最佳脉冲宽度。因此,多个mram子阵列605a至605n中的每个mram子阵列可以具有不同的写入脉冲。

在一些实施方案中,代替在第一循环中求解公式vi,第一循环可从首先求解公式vii开始。在此类情况下,公式vii中的脉冲宽度t可修正为预定值,并且公式vii可针对最佳写入电流值求解。当在公式vi之前求解公式vii时,不需要多个循环。因此,可求解公式vii以获得最佳电流值,然后可求解公式vi以获得最佳脉冲宽度。不需要额外的循环。通过以这种方式求解公式vii和vi,可以为b位字获得最佳写入电流的b值和最佳脉冲宽度的b值。在其他实施方案中,可将上限置于脉冲宽度上。脉冲宽度上的上限可用于实现期望的写入速度性能。在脉冲宽度没有上限的情况下,最佳脉冲宽度可能非常大,这可能不利地影响写入性能。此外,在脉冲宽度没有上限的情况下,最佳写入电流对于位位置中的每者可以是相同的(例如,),这可能是不期望的。通过设定脉冲宽度的上限,可使用公式vi和vii来获得各个位置的不同最佳写入电流,如上所讨论的。

在其他实施方案中,代替确定一个或多个位位置的最佳写入电流值和最佳脉冲宽度,写入电流或脉冲宽度可被修正,而另一个变量可为被优化。例如,在一些实施方案中,写入电流可以修正为预定值,并且可以使用公式vi优化脉冲宽度。当仅优化脉冲宽度时,可将相同的写入电流值施加到每个位位置,但可将使用公式vi计算的非均匀最佳脉冲宽度施加到一个或多个位位置。相似地,在一些实施方案中,脉冲宽度可修正为预定值,并且可使用公式vii来优化写入电流。当仅优化写入电流时,可将相同的脉冲宽度施加到每个位位置,并且可将使用公式vii计算的非均匀最佳写入电流施加到一个或多个位位置。

此外,如上所述,在一些实施方案中,psnr可被用作保真性度量而不是mse。psnr与mse成反比:

psnr=10log10((2b-1)2)/mse

因此,如果期望psnr作为保真性度量,则可如本文所讨论的那样计算mse,并且可以使用上述计算式从mse计算psnr。

因此,写入脉冲优化系统630确定b位字的一个或多个位的最佳写入电流和/或最佳脉冲宽度,以满足给定的保真性度量和资源度量。此外,一个或多个位位置的最佳写入电流和/或最佳脉冲宽度基于每个位位置的相对重要性。在一些实施方案中,可认为msb比lsb更重要。在此类情况下,最佳写入电流可以比lsb的最佳写入电流更高,并且/或者msb的最佳脉冲宽度可以比lsb的最佳脉冲宽度更长。在其他实施方案中,可认为lsb比msb更重要。在这些情况下,lsb的最佳写入电流可以比msb的最佳写入电流更高,并且/或者lsb的最佳脉冲宽度可以比msb的最佳脉冲宽度长。在其他实施方案中,可认为除lsb和msb之外的位位置更重要。在这些情况下,这些位位置可具有比lsb和msb更大的最佳写入电流和/或更长的最佳脉冲宽度。因此,一个或多个位位置的最佳写入电流和/或最佳脉冲宽度可以基于位位置在b位字中的相对重要性。通过基于相对位位置选择性地增大写入电流的量值和/或使脉冲宽度更长,增大了仅用于更重要位位置的写入能量,并且减小了用于写入b位字的总写入能量。通过将写入能量设置为资源度量约束,写入能量的增加可被限制为由资源度量约束所设置的值。另外,减小了wer。

写入脉冲优化系统630可被配置为确定一个或多个位位置的相对重要性。在一些实施方案中,相对重要性可基于应用。例如并且如上所述,在机器学习和信号处理应用中,msb比lsb更重要。在一些实施方案中,可使用其他指定的标准来确定每个位位置的相对重要性。在一些实施方案中,存储器控制器640可向写入脉冲优化系统630提供每个位位置的相对重要性的指示。写入脉冲优化系统630、交织器625和写入脉冲发生器635可以是存储器控制器640的一部分或与之相关联。在其他实施方案中,写入脉冲优化系统630、交织器625和写入脉冲发生器635中的一者或多者可与存储器控制器640分开并与其操作地相关联。此外,在一些实施方案中,写入脉冲优化系统630、交织器625和写入脉冲发生器635中的一者或多者可一起集成到单个部件中,并且组合部件可执行已组合的各个部件的功能。

写入脉冲优化系统630、交织器625和写入脉冲发生器635中的一者或多者可被配置为软件、固件、硬件或它们的组合。尽管未示出,但写入脉冲优化系统630、交织器625和写入脉冲发生器635中的一者或多者可具有其自己的处理单元和存储器以存储由相应处理单元执行的指令。存储器控制器640类似于存储器控制器135。

在确定一个或多个位位置的最佳写入电流和/或最佳脉冲宽度时,写入脉冲优化系统630可向写入脉冲发生器635提供最佳写入电流和/或最佳脉冲宽度值。然后,写入脉冲发生器635可根据最佳写入电流和/或最佳脉冲宽度值生成写入脉冲。具体地,写入脉冲发生器635可以基于该位位置的所计算的最佳写入电流和/或最佳脉冲宽度以及存储对应于该位位置的位的子阵列,将不同的最佳写入电流和/或最佳脉冲宽度施加到多个mram子阵列605a至605n中的每个mram子阵列。例如并且如图6所示,如果针对八位字计算的最佳脉冲宽度是t=(t0,t1,t2,...t7),其中t0是lsb的最佳脉冲宽度,并且t7是msb的最佳脉冲宽度,并且八位字的最佳写入电流是i=(i0,i1,i2,...i7),其中i0是lsb的最佳写入电流,并且i7是msb的最佳写入电流,写入脉冲发生器635可以为mram子阵列605a生成具有t0脉冲宽度和i0写入电流的第一写入脉冲,为mram子阵列605b生成具有t1脉冲宽度和i1写入电流的的第二写入脉冲650等。

因此,基于位位置的相对重要性,最佳写入电流和/或最佳脉冲宽度可变化。此外,在一些实施方案中,可控制最佳写入电流和/或最佳脉冲宽度的数量的粒度。例如并且如上所述,对于b位字,针对每个位位置计算最佳写入电流和/或最佳脉冲宽度。在一些实施方案中,位位置可具有相对于其他位位置的最佳写入电流和/或最佳脉冲宽度的不同值,使得b位字的最佳写入电流和/或最佳脉冲宽度的粒度为b。在一些实施方案中,可能期望更低的粒度。例如,可能期望八位字的前四位可以具有第一最佳写入电流和/或第一最佳脉冲宽度,而八位字的最后四位具有第二最佳写入电流和/或第二最佳脉冲宽度。因此,可使用最佳写入电流的两个不同值和/或最佳脉冲宽度的两个不同值,从而使得最佳写入电流和最佳脉冲宽度中的每者的粒度为二。类似地,在一些实施方案中,可使用四的粒度,使得成对的位具有相同的最佳写入电流和/或最佳脉冲宽度。如果将相同的最佳写入电流和/或最佳脉冲宽度施加到位位置中的每者,则粒度为一。在一些实施方案中,最佳写入电流的粒度可以与最佳脉冲宽度的粒度相同。在其他实施方案中,最佳写入电流和最佳脉冲宽度的粒度可以变化。因此,对于b位字而言,最佳写入电流和最佳脉冲宽度中的每者的粒度可在一和b之间变化。

另外,不管使用的粒度如何,针对每个位位置计算的最佳写入电流和/或最佳脉冲宽度仍然基于位位置的相对重要性。例如,当使用二的粒度使得一半位位置具有第一最佳写入电流和/或第一最佳脉冲宽度而另一半具有第二最佳写入电流和/或第二最佳脉冲宽度时,第一最佳写入电流和/或第一最佳脉冲宽度以及第二最佳写入电流和/或第二最佳脉冲宽度的值基于相对位位置。具体地,与朝向lsb的位位置相比,朝向msb的位位置具有更大的最佳写入电流和/或更长的最佳脉冲宽度。因此,在粒度为二的八位字中,最靠近msb的四位可比最靠近lsb的四位具有更大的最佳写入电流和/或更长的最佳脉冲宽度。

在一些实施方案中,可基于期望的粒度来选择用于写入脉冲的最佳写入电流和/或最佳脉冲宽度。例如,对于b位字,可以如上所讨论针对每个位位置计算最佳写入电流和/或最佳脉冲宽度。根据这些所计算的最佳写入电流和/或最佳脉冲宽度,可基于期望的粒度来选择某些值。例如,当粒度为二时,在一些实施方案中,lsb的最佳写入电流和/或最佳脉冲宽度也可用于最靠近lsb的其他位位置,而不管针对这些位位置计算的最佳写入电流和/或最佳脉冲宽度(例如,如果针对那些其他位位置计算的最佳写入电流和/或最佳脉冲宽度与lsb的最佳写入电流和/或最佳脉冲宽度不同,则lsb的最佳写入电流和/或最佳脉冲宽度也可用于那些其他位位置)。类似地,msb的最佳写入电流和/或最佳脉冲宽度可用于最靠近msb的那一半的位位置,而不管为那些其他位位置计算的最佳写入电流和/或最佳脉冲宽度如何。

在一些实施方案中,可针对保真性度量、资源度量和粒度的各种组合预先计算b位字的位位置的最佳写入电流和/或最佳脉冲宽度,并将其存储在写入脉冲优化系统630的查找表中。该查找表的输入可以是期望的保真性度量、期望的资源度量和/或粒度,并且输出可以是b位字的每个位位置的最佳写入电流和/或最佳脉冲宽度。例如,在一些实施方案中,为了使mse最小化并实现期望的写入能量,可将该期望的写入能量约束用作该查找表的输入。可从该查找表中具有期望的写入能量约束的所有记录中选择最小mse。然后,对应于最小mse的写入电流和脉冲宽度可以给出b位字的一个或多个位位置的最佳写入电流和/或最佳脉冲宽度。对于八位字,查找表可输出多达八个最佳刷新间隔值,八个位位置中的每个位位置对应一个刷新间隔值。在其他实施方案中,可将最小mse用作查找表的输入。可从具有最小mse的所有记录中选择对应于期望的写入能量的记录以输出最佳写入电流和/或最佳脉冲宽度。

类似地,在一些实施方案中,可获得最佳写入电流和/或最佳脉冲宽度以最小化写入能量并实现给定mse。然后可如下获得最佳写入电流和/或最佳写入脉冲宽度:

修正i,然后求解

约束于

=最大允许mse(保真性度量约束)。

可使用如上所讨论的acs算法或者使用被认为是合适的任何其他算法来求解公式viii。在使用公式viii计算最佳脉冲宽度t*时,脉冲宽度t可被修正为t*,并且最佳写入电流i*可如下计算:

修正t=t*,然后求解:

约束于

公式viii和ix可以在循环中多次重复求解,直到达到停止标准,如上所讨论的。通过求解和优化公式viii和ix,可以获得位位置的最佳写入电流和/或最佳脉冲宽度。在一些实施方案中,公式ix可在公式viii之前求解。在此类情况下,求解公式ix和viii的单个循环可能足以提供最佳写入电流和/或最佳脉冲宽度。

此外,当使用查找表时,mse可用作查找表的输入。如果在查找表中找到mse的多个记录,则可选择具有最小写入能量值的记录。然后,对应于该最小写入能量的写入电流和/或脉冲宽度可以为b位字的位位置提供最佳写入电流和/或最佳脉冲宽度。在其他实施方案中,可选择具有最小写入能量的记录。可从那些记录中选择具有期望mse的记录以输出最佳写入电流和/或最佳脉冲宽度。

在一些实施方案中,最佳写入电流和/或最佳脉冲宽度的粒度也可用作输入,以确定最佳写入电流和/或最佳脉冲宽度。因此,查找表可以多种方式结构化。在其他实施方案中,可使用查找表之外的机制来确定每个位位置的最佳写入电流和/或最佳脉冲宽度。

参见图7,示出了根据本公开的一些实施方案的示例性流程图,其简要示出基于位位置的相对重要性来生成写入脉冲的过程700的操作。根据具体实施方案,过程700可包括附加操作或其他操作。过程700可由存储器控制器640的写入脉冲优化系统630、交织器625和写入脉冲发生器635实施。在操作705开始时,存储器控制器640(例如,从主机设备105)接收将b位字存储在mram阵列600中的指令。交织器625将该b位字的每个位存储在mram阵列600的多个mram子阵列605a至605n中的单独的一个mram子阵列中。交织器625知道哪个mram子阵列被配置用于存储哪个位位置。因此,交织器625将msb存储在被配置为存储msb的mram子阵列(例如,mram子阵列605n)中,将lsb存储在被配置为存储lsb的mram子阵列(例如,mram子阵列605a)中,并且将其余位存储在被配置为存储其余位的位位置的mram子阵列中。

在操作710处,写入脉冲优化系统630接收保真性度量。如上所讨论的,保真性度量可以是定义写入数据错误率或与写入数据错误率相关联的ber、mse、psnr等。在一些实施方案中,写入脉冲优化系统630可从存储器控制器640接收保真性度量,该存储器控制器反过来可已经从主机设备105接收保真性度量。在其他实施方案中,写入脉冲优化系统630可直接从主机设备105或从与写入脉冲优化系统相关联的计算设备的另一部件接收保真性度量。在操作715处,写入脉冲优化系统630可接收资源度量。如上所述,资源度量可以是写入能量、写入速度等。写入脉冲优化系统630可以以与保真性度量类似的方式接收资源度量。换句话讲,写入脉冲优化系统630可从存储器控制器640、主机设备105或与写入脉冲优化系统相关联的计算系统的任何其他部件接收资源度量。

在操作720处,写入脉冲优化系统630接收粒度,该粒度定义要用于最佳写入电流和/或最佳脉冲宽度的值的数量。如上所讨论的,在一些实施方案中,b位字的每个位位置可具有不同的最佳写入电流和/或最佳脉冲宽度。在此类情况下,b位字的粒度为“b”。在其他实施方案中,可使用更小的粒度,使得可以针对b位字的多个位位置使用相同的最佳写入电流和/或最佳脉冲宽度。写入脉冲优化系统630可从存储器控制器640、主机设备105或与写入脉冲优化系统相关联的计算系统的任何其他部件接收粒度。尽管过程700已被描述为在资源度量之前接收保真性度量(其被描述为在粒度之前被接收),但应当理解,保真性度量、资源度量和粒度可以任何顺序接收。

在操作725处,写入脉冲优化系统630为b位字的一个或多个位位置计算最佳写入电流和/或最佳脉冲宽度。在一些实施方案中,写入脉冲优化系统630可以计算每个位位置的最佳写入电流和最佳脉冲宽度。在其他实施方案中,写入脉冲优化系统630可以计算b位字的位位置的子组的最佳写入电流和最佳脉冲宽度。此外,在一些实施方案中,写入脉冲优化系统630可在计算其最佳写入电流和/或最佳脉冲宽度之前首先确定各个位位置的相对重要性。此外,写入脉冲优化系统630确定b位字的一个或多个位位置的最佳写入电流和/或最佳脉冲宽度。在一些实施方案中,写入脉冲优化系统630可以确定b位字的一个或多个位位置的最佳写入电流和最佳脉冲宽度二者。在其他实施方案中,写入脉冲优化系统630可以确定b位字的一个或多个位位置的最佳写入电流或最佳脉冲宽度。例如,在一些实施方案中,写入脉冲优化系统630可以计算b位字的一个或多个位位置的最佳写入电流,并且对那些位位置使用预定未优化的脉冲宽度。类似地,在一些实施方案中,写入脉冲优化系统630可以计算b位字的一个或多个位位置的最佳脉冲宽度,并且对那些位位置使用预定的未优化的写入电流。因此,根据实施方案,写入脉冲优化系统630可优化写入电流、脉冲宽度或两者。

在一些实施方案中,在接收保真性度量、资源度量和粒度时,写入脉冲优化系统630可以使用查找表来确定最佳写入电流和/或最佳脉冲宽度,如上所讨论的。写入脉冲优化系统630可以继续使用优化的写入电流和/或优化的脉冲宽度来写入数据,直到在操作730处接收到新的保真性度量。因此,在操作730处,写入脉冲优化系统630可确定是否接收到新的保真性度量。写入脉冲优化系统630可周期性地或在满足预定条件时检查新的保真性度量。

操作730的新保真性度量可以是与先前在操作710处接收的保真性度量不同的保真性度量,或者该新保真性度量可以是在操作710处接收的相同度量的不同值。换句话讲,如果先前在操作710处接收的保真性度量是mse,则在操作730处接收的新保真性度量可以是psnr或不同值的mse。可采用与在操作710处接收的保真性度量相同或类似的方式接收新的保真性度量。如果在操作730处接收到新的保真性度量,则过程700循环回到操作710并重复操作710至725。在一些实施方案中,如果在操作730处没有接收到新的保真性度量,则写入脉冲优化系统630可在操作735处确定是否接收到新的资源度量或粒度。如果在操作735处没有接收到新的资源度量和新的粒度,则写入脉冲优化系统630返回到操作730并继续监测保真性度量的更新。如果在操作735处接收到新的资源度量,则过程700循环回到操作715,如图7所示,并且使用先前在操作710处接收的保真性度量来重复操作715至725。如果在操作735处接收到新的粒度,则过程700循环回到操作720(图7中未示出)并使用先前在操作710处接收的保真性度量和先前在操作715处接收的资源度量来重复操作725。

因此,过程700提供了一种机制来根据b位字的位位置的相对重要性动态地、基本上实时地更新每个位位置的最佳写入电流和最佳脉冲宽度,同时实现期望的保真性度量和资源度量。

参见图8,示出了根据本公开的一些实施方案的比较mse和归一化写入能量的示例性曲线图800。较低的mse和较低的写入能量消耗是期望的。曲线图800绘制了x轴805上的归一化写入能量与y轴810上的mse的关系。曲线图800还包括对应于使用常规机制获得的特定位位置的写入能量的第一曲线815,以及对应于使用本公开获得的特定位位置的写入能量的第二曲线820。与第一曲线815相比,第二曲线820具有较低的mse并且消耗较少的写入能量。例如,在mse为一时,与第一曲线815的写入能量相比,第二曲线820的写入能量示出了降低了约百分之二十。因此,本公开的最佳计算的写入脉冲减少了位位置中的错误,同时节省了写入能量。

参见图9,示出了根据本公开的一些实施方案的比较mse和归一化写入能量的示例性曲线图900。较高的psnr和较低的写入能量消耗是期望的。曲线图900绘制了x轴905上的归一化写入能量与y轴910上的psnr的关系。曲线图900还包括对应于使用常规机制获得的特定位位置的写入能量的第一曲线915以及对应于使用本公开获得的特定位位置的写入能量的第二曲线920。与第一曲线915相比,第二曲线920具有更高的psnr并且消耗更少的写入能量。

现在转到图10,示出了根据本公开的一些实施方案的损耗均衡操作1000的示例性框图。如上所讨论的,b位字的每个位存储在mram模块的不同子阵列中。同样如上所讨论的,存储具有更重要位位置的位(例如,msb)的mram子阵列比存储具有较不重要位位置的位(例如,lsb)的mram子阵列具有更高的写入能量(例如,更高的电流和/或更长的脉冲宽度)。使用较高写入能量的mram子阵列可能比使用较低写入能量的mram子阵列遭受更大的损耗。为了在一定程度上均衡mram子阵列上的损耗,在一些实施方案中,交织器(例如,交织器625)可应用损耗均衡操作1000。

在损耗均衡操作1000中,存储在mram子阵列1005a至1005n中的位位置可被旋转,使得每个mram子阵列经历具有较高写入能量(例如,当存储msb时)和较低写入能量(例如,当存储lsb时)的周期。具体地讲,如图10所示,在第一轮1010中,mram子阵列1005a可存储lsb,并且子阵列1005n可存储msb。因此,在第一轮1010期间,mram子阵列1005n具有比mram子阵列1005a更高的写入能量。在第二轮1015中,位位置可移位一步,使得mram子阵列1005a现在存储msb,并且mram子阵列1005b现在存储lsb等。因此,在第二轮1015期间,mram子阵列1005a比mram子阵列1205b和子阵列1205n具有更高的写入能量。虽然移位被示出为向右一步,但在其他实施方案中,移位可为向左一步或可移位多步。

因此,通过执行损耗均衡操作1200,可使子阵列1205a-1205n上的损耗均衡。当满足某些预定条件时,可发生从第一轮1210到第二轮1210的切换。例如,在一些实施方案中,可在已经执行指定数量的写入操作之后进行轮的切换。在其他实施方案中,该切换可在经过预定的时间段等之后发生。

虽然本公开关注于mram,但本文所公开的系统和方法可适用于利用写入脉冲将数据写入存储器单元的任何存储器。此外,在一些实施方案中,并且特别是对于存储多于一位信息(例如,被配置为多级单元)的存储器,可使用格雷映射以及本文讨论的最佳写入电流和最佳脉冲宽度。根据实施方案,本文所述的任何过程或算法的某些动作、事件或功能可以不同的顺序执行,可以一起添加、合并或省略(例如,并非所有所述的操作或事件对于算法的实践都是必要的)。此外,在某些实施方案中,操作或事件可例如通过多线程处理、中断处理或多个处理器或处理器内核同时执行,或者在其他并行架构上同时执行,而不是顺序执行。

结合本文所公开的实施方案描述的各种例示性逻辑块、模块、例程和算法步骤可被实现为电子硬件,或电子硬件和计算机软件的组合。为了清楚地举例说明这种可互换性,上文已经在其功能方面对各种例示性部件、块、模块和步骤进行了总体描述。将此功能性实现为硬件还是在硬件上运行的软件取决于特定应用和施加于整个系统的设计约束。可针对每个特定应用以不同方式实现所描述的功能,但这种实现决策不应被解释为导致脱离本公开的范围。

此外,结合本文所公开的实施方案描述的各种例示性逻辑框和模块可由被设计成执行本文所述的功能的机器实现或执行,诸如通用处理器设备、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、离散门或晶体管逻辑部件、离散硬件部件或它们的任何组合。控制处理器可合成fpga的模型。例如,控制处理器可合成逻辑可编程门的模型以实现张量阵列和/或像素阵列。控制通道可合成模型以连接fpga、可重新配置的芯片和/或管芯等上的张量阵列和/或像素阵列。通用处理器设备可以是微处理器,但是在替代方案中,处理器设备可以是控制器、微控制器或状态机、它们的组合等。处理器设备可包括被配置为处理计算机可执行指令的电路。在另一个实施方案中,处理器设备包括在不处理计算机可执行指令的情况下执行逻辑操作的fpga或其他可编程设备。处理器设备还可以实现为计算设备的组合,例如dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp内核,或任何其他这样的配置。尽管本文主要相对于数字技术进行描述,但处理器设备还可主要包括模拟部件。例如,本文所述算法中的一些或全部算法可在模拟电路或混合模拟和数字电路中实现。计算环境可包括任何类型的计算机系统,包括但不限于例如基于微处理器的计算机系统、大型计算机、数字信号处理器、便携式计算设备、设备控制器或器具内的计算引擎。

结合本文所公开的实施方案而描述的方法、过程、例程或算法的要素可直接体现于硬件中、由处理器设备执行的软件模块中或两者的组合中。软件模块可驻留在ram存储器、闪存存储器、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动磁盘、cd-rom或任何其他形式的非暂态计算机可读存储介质中。示例性存储介质可以耦接到处理器设备,使得处理器设备可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以是处理器设备的组成部分。处理器设备和存储介质可以驻留在asic中。asic可以驻留在用户终端中。在替代方案中,处理器设备和存储介质可作为分立部件驻留在用户终端中。

除非另外特别说明或在所使用的上下文内以其他方式理解,否则本文所用的条件语言诸如“可以”、“可”、“可能”、“可能会”、“例如”等通常旨在传达某些实施方案包括某些特征、元件和/或步骤,而其他实施方案不包括该某些特征、元件和/或步骤。因此,此类条件语言通常不旨在暗示特征、元件和/或步骤以任何方式是一个或多个实施方案所需要的,或者一个或多个实施方案必须包括用于在具有或不具有其他输入或提示的情况下决定这些特征、元件和/或步骤是否包括在任何具体实施方案或将在任何具体实施方案中执行的逻辑。术语“包含”、“包括”、“具有”等是同义的,并且以开放式方式包含性地使用,并且不排除附加的元件、特征、动作、操作等。另外,术语“或”以其包含性意义(而不是以其排他性意义)使用,使得当用于例如连接要素列表时,术语“或”是指该列表中的一个、一些或所有要素。

虽然以上详细描述已经示出、描述并指出了应用于各种实施方案的新颖特征,但可理解,在不脱离本公开的实质的情况下,可对所例示的设备或算法的形式和细节进行各种省略、替换和改变。可以认识到,本文所述的某些实施方案可体现为不提供本文所述的所有特征和有益效果的形式,因为一些特征可与其他特征分开使用或实践。

本文所述的主题有时说明了包含在不同其它部件内或与不同其它部件连接的不同部件。应当理解,此类描绘的架构仅是示例性的,并且事实上实现相同功能的许多其它架构可被实现。在概念意义上,用以实现相同功能的部件的任何布置被有效地“相关联”,使得实现期望功能。因此,本文组合以实现特定功能的任何两个部件可被视为彼此“相关联”,使得实现期望功能,而与架构或中间部件无关。同样地,如此相关联的任何两个部件还可被视为彼此“可操作地连接”、或“可操作地耦接”以实现期望功能,并且能够如此相关联的任何两个部件还可被视为彼此“可操作地耦接”以实现期望功能。可操作地耦接的具体示例包括但不限于物理上可匹配和/或物理上交互的部件和/或无线可交互和/或无线交互的部件和/或逻辑上交互和/或逻辑上可交互的部件。

关于在本文基本上任何复数和/或单数术语的使用,本领域的技术人员可视上下文和/或应用而定从复数转化为单数和/或从单数转化为复数。为了清楚起见,本文可明确地阐述各种单数/复数变换。

本领域的技术人员应当理解,一般而言,在本文中,尤其在所附权利要求书中所用的术语(例如,所附权利要求书中的主体)通常意指“开放性”术语(例如,术语“包括”应被解释为“包括但不限于”,术语“具有”应被解释为“具有至少”,术语“包括”应被解释为“包括但不限于”等)。本领域的技术人员还应当理解,如果意图引入特定数目的引入的权利要求表述,则这种意图将在权利要求书中明确表述,并且在不存在此类表述的情况下,不存在此类意图。例如,为了有助于理解,以下所附权利要求书可包含使介绍性短语“至少一个”和“一个或多个”以引入权利要求表述。然而,此类短语的使用不应被解释为暗示由不定冠词“一个”或“一种”引入的权利要求表述将包含此类引入的权利要求表述的任何特定权利要求书限制为仅包含一个此类表述的发明,即使当相同权利要求包括介绍性短语“一个或多个”或“至少一个”以及不定冠词诸如“一个”或“一种”(例如,“一个”和/或“一种”通常应被解译为表示“至少一个”或“一个或多个”)时也是如此;使用用于引入权利要求表述的定冠词也是如此。此外,即使明确地表述了特定数目的引入的权利要求表述,本领域的那些技术人员也将认识到,此类表述通常应被解释为意思是至少所述表述的数目(例如,在没有其它修饰语的情况下,“两种表述”的无修饰表述通常意思是至少两种表述,或者两种或更多种表述)。此外,在其中使用类似于“a、b和c等中的至少一者”的常规惯例的那些情况下,一般来讲这种构造意指是在本领域的技术人员将理解常规惯例的意义上(例如,“具有a、b和c中的至少一者的系统”将包括但不限于单独具有a、单独具有b、单独具有c、同时具有a和b、同时具有a和c、同时具有b和c、和/或同时具有a、b和c的系统等)。在其中使用类似于“a、b或c等中的至少一者”的常规惯例的那些情况下,一般来讲这种构造意指是在本领域的技术人员将理解常规惯例的意义上(例如,“具有a、b或c中的至少一者的系统”将包括但不限于单独具有a、单独具有b、单独具有c、同时具有a和b、同时具有a和c、同时具有b和c、和/或同时具有a、b和c的系统等)。本领域技术人员将会进一步理解,实际上无论是在说明书、权利要求书还是在附图中,呈现两个或更多个替代性术语的任何分离性词语和/或短语应被理解为设想包括术语中的一个、术语中的任一个或两个术语的可能性。例如,短语“a或b”将被理解为包括“a”或“b”或“a和b”的可能性。此外,除非另外指明,否则使用词语“大约”、“约”、“周围”,“基本上”等意思是加或减百分之十。

已出于说明和描述的目的呈现了例示性实施方案的前述描述。在所公开的精确形式方面并非旨在是穷举性的或限制性的,并且根据上述教导内容,修改形式和变型形式是可能的,或者可从所公开的实施方案的实践中获得。本发明的范围旨在由所附权利要求书及其等效物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1