CN108701100A - 管理非易失性存储器中的阈值电压位移 - Google Patents
管理非易失性存储器中的阈值电压位移 Download PDFInfo
- Publication number
- CN108701100A CN108701100A CN201780014585.4A CN201780014585A CN108701100A CN 108701100 A CN108701100 A CN 108701100A CN 201780014585 A CN201780014585 A CN 201780014585A CN 108701100 A CN108701100 A CN 108701100A
- Authority
- CN
- China
- Prior art keywords
- compensation
- vdm
- interference
- memory cell
- amount
- 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
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0033—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/004—Reading or sensing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Read Only Memory (AREA)
- Semiconductor Memories (AREA)
Abstract
公开和描述了用于校正非易失性存储器设备中的阈值电压漂移的装置、系统和方法。在一个示例中,通过基于时间的漂移补偿方案或基于干扰的漂移补偿方案生成补偿的分界电压,并且使用补偿的电压阈值来执行对非易失性存储器的读取和写入操作。
Description
背景技术
存储器结构是向各种电子设备提供数据存储的集成元件。存储器可以包括在未供电时丢失存储的信息的易失性存储器结构(例如,动态随机存取存储器(DRAM)),或在没有电力的情况下保留存储的信息的非易失性存储器(NVM)结构。NVM类型的示例可以包括NAND闪存、NOR闪存、磁阻RAM(MRAM)和相变存储器(PCM)等。
附图说明
根据下面结合附图的详细描述,各种实施例的特征和优点将变得显而易见,其中:
图1是模拟数据的图形表示;
图2是计算系统的框图;
图3a是非易失性存储器设备的框图;
图3b是相变存储器单元的框图;
图4a是示例性方法步骤的图;
图4b是示例性方法步骤的图;
图4c是示例性方法步骤的图;
图5是计算系统的框图;
图6是计算系统的框图;以及
图7是示例性方法步骤的图。
具体实施方式
在描述所公开的实施例之前,应理解本公开不限于本文公开的特定结构、过程步骤或材料,而是延伸至其等同物,如相关领域的普通技术人员将认识到的。还应该理解,本文采用的术语仅用于描述特定的示例或实施例,而不是限制性的。不同附图中的相同附图标记表示相同元件。流程图和过程中提供的数字是为了提供清楚地说明步骤和操作,而并不一定表示特定的次序或序列。
此外,所描述的特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。在以下描述中,提供了许多具体细节,例如布局、距离、网络示例等的示例,以提供对各种实施例的透彻理解。然而,相关领域的技术人员将认识到,这些详细的实施例不限制本文所阐述的整体概念,而仅仅是其代表。
如在该书面描述中所使用的,单数形式的“一(a)”、“一个(an)”和“该(the)”包括对复数指示物的支持,除非上下文另有明确规定。因此,例如,对“位线”的引用包括对多个这种位线的支持。
如本文所用,“包括(comprise)、包含(comprising)”、“含有(containing)”和“具有(having)”等可以具有美国专利法中赋予它们的含义并且可以表示“包括(includes)、包含(including)”等,并且是通常被解释为开放式术语。术语“由......组成(consistingof)”或者“由......构成(consists of)”是封闭式术语,并且仅包括结合这些术语具体列出的部件、结构、步骤等,以及根据美国专利法的那些。“基本上由……组成”或者基本上由……构成”具有美国专利法通常赋予它们的含义。特别地,这些术语通常是封闭式术语,但允许包含实质上并不影响结合其使用的基本和新颖特性或功能的其他项目、材料、部件、步骤或元件。例如,如果以“基本上由......组成”语言存在,则组合物中存在但不影响组合物性质或特性的微量元素是允许的,即使在这些术语之后的项目列表中没有明确记载。当在本书面描述中使用开放式术语时,例如“包含”或“包括”,应理解也直接支持“基本上由......组成”语言以及“基本上由......构成”语言,如同明确说明的那样,反之亦然。
说明书和权利要求书中的术语“第一”、“第二”、“第三”、“第四”等(如果有的话)用于区分相似的元件,而不一定用于描述特定的次序或时间次序。应当理解,如此使用的术语在适当的情况下是可互换的,使得本文描述的实施例例如能够以不同于本文所示或以其他方式描述的次序操作。类似地,如果在此将方法描述为包括一系列步骤,则这里所示的这些步骤的次序不一定是可以执行这些步骤的唯一次序,并且可以省略所述步骤中的某些和/或本文未描述的特定其他步骤可以添加到该方法中。
使用说明书和权利要求书中的术语“左”、“右”、“前”、“后”、“顶部”、“底部”、“上方”、“下方”等(如果有的话)用于描述目的,而不一定用于描述永久相对位置。应当理解,如此使用的术语在适当的情况下是可互换的,使得本文描述的实施例例如能够以除了本文所示或以其他方式描述的方位之外的其他方位操作。
如本文所使用的,当与设备或过程的描述结合使用时,“增强的”、“改进的”、“性能增强的”、“更新的”等指的是提供与先前已知的设备或过程相比提供更好测量形式或功能的设备或过程的特性。这既适用于设备或过程中各个部件的形式和功能,也适用于整个此类设备或过程。
如本文所使用的,“耦合”是指一个项目与另一项目之间的物理或电连接或附接的关系,并且包括直接或间接连接或附接的关系。可以耦合任意数量的项目,例如材料、部件、结构、层、设备、对象等。
如本文所使用的,“直接耦合”是指一个项目与另一项目之间的物理或电连接或附接的关系,其中项目具有直接物理接触点中的至少一个点或以其他方式彼此接触。例如,当一层材料沉积在另一层材料上或针对另一层材料沉积时,可以说这些层是直接耦合的。
这里描述为彼此“相邻”的对象或结构可以彼此物理接触,彼此非常接近,或者在彼此相同的一般区域或面积中,如使用该短语的上下文所适合的。
如这里所使用的,术语“控制器”指的是控制与存储器之间的通信的任何电路、电子部件或设备。这可以包括存储器控制器、集成存储器控制器、控制器中心、芯片组、微控制器等。
如本文所使用的,术语“基本上”是指动作、特性、性质、状态、结构、项目或结果的完全或接近完全的程度或度。例如,“基本上”封闭的对象意味着该对象要么完全封闭,要么几乎完全封闭。在一些情况下,与绝与确切的完整性的允许偏差程度可能取决于特定上下文。然而,一般而言,接近完全将具有相同的总体结果,就好像获得绝对和完全完成一样。当在负面含义中使用时,“基本上”的使用同样适用于指代动作、特性、性质、状态、结构、项目或结果的完全或接近完全缺乏。例如,“基本上不含”颗粒的组合物要么完全没有颗粒,要么几乎完全没有颗粒,其效果与完全没有颗粒的效果相同。换言之,只要不存在可测量的效果,“基本上不含”成分或元素的组合物实际上仍可含有该项目。
当与数值结合使用时,术语“约”用于提供“略高于”或“略低于”特定值的灵活性。然而,应该理解,在该书面描述中的这种叙述也提供了对所述精确数值的支持。
如本文所使用的,为方便起见,可以在共同列表中呈现多个项目、结构元素、组成元素和/或材料。然而,这些列表应该被解释为好像列表中的每个成员都被单独标识为独立且唯一的成员。因此,此类列表中的任何个体成员在没有相反的指示的情况下,都不应仅仅基于其在共同组中的表述而被解释为同一列表中任何其他成员的实际等同物。
浓度、量和其他数值数据可以以范围格式在本文中表达或呈现。应当理解,这样的范围格式仅仅是为了方便和简洁而使用,而因此应该灵活地解释为不仅包括明确列举为范围限制的数值,而且还包括所有单独的数值或包含在该范围内的子范围,好像每个数值和子范围被明确地叙述。作为说明,“约1至约5”的数值范围应该被解释为不仅包括明确列举的约1至约5的值,而且还包括在所指示的范围内的单个值和子范围。因此,包含于该数值范围内的是单个值,例如2、3和4以及子范围,例如1-3、2-4和3-5等,以及分别为1、1.5、2、2.3、3、3.8、4、4.6、5和5.1。
同样的原理适用于仅将一个数值作为最小值或最大值进行记录的范围。此外,无论范围的广度或所描述的特征如何,都应该应用这种解释。
贯穿本说明书对“示例”的引用意味着结合该示例描述的特定特征、结构或特性包括在至少一个实施例中。因此,在整个说明书中各处出现的短语“在示例中”不一定都指的是同一实施例。
没有详细描述公知的方法、过程、部件和电路,以免模糊特定示例。此外,可以使用各种设计实现方式来实现示例的各个方面,所述各种设计实现方式例如集成半导体电路(“硬件”)、组织成一个或多个程序的计算机可读指令(“软件”),或硬件和软件的特定组合。出于本公开的目的,对“逻辑”的引用应表示硬件、软件或其特定组合。
示例性实施例
下面提供实施例的初始概述,并且进一步详细描述具体实施例。该初始概述旨在帮助读者更快地理解实施例,但不旨在识别关键或基本技术特征,也不旨在限制所要求保护的主题的范围。
许多类型的非易失性存储器(NVM)利用阈值电压(Vt)的测量作为用于识别存储器单元的位状态的机制。这种NVM技术的非限制性示例可以包括NAND闪存、三维(3D)交叉点存储器、自旋转移扭矩随机存取存储器(STT-RAM)、磁阻随机存取存储器(MRAM)、就地写入非易失性MRAM,相变存储器(PCM)等。例如,在PCM中,Vt与给定存储器单元中的相变材料的晶格结构相关。在一个示例中,结晶和非晶的二进制晶格配置用于存储信息位。然而,附加的中间晶格状态是可能的,并且可以扩展单个PCM单元的位存储容量。使用相变材料作为存储器介质取决于“阈值偏移”现象。虽然“阈值偏移”是一种适用于大多数(如果不是全部)NVM的现象,但目前的讨论很多都是针对PCM型设备的。这仅仅是为了方便起见,并且应该理解,其他适用的NVM技术被认为是在本发明的范围内。
处于非晶态的典型相变材料具有这种高电阻,以至于需要极高的电压来输送足够的电流来将材料加热到高于结晶温度。然而,当在这种非晶材料上施加高于Vt的电压时,电阻会迅速降低,并且非晶材料变得导电。在这些导电条件下,相变材料可以通过突然的电流快速加热和熔化。因此,Vt表示相变材料经历从高电阻到低电阻状态的电导率变化的阈值。如果在熔化之后电流被突然关闭,则相变材料将返回到非晶态,并且Vt将随时间缓慢恢复到阈值移位前值。非晶态被称为“重置”状态,并且通常对应于位状态0。如果材料被加热到在结晶温度(或玻璃转化温度)与该材料的熔点温度之间的温度,然后保持在该温度(或在该范围内)足够的时间,则相变材料将结晶并随后在该导电状态下冷却。结晶状态被称为“设置”状态,并且通常对应于位状态1。
从低电压/高电阻状态到高电压/低电阻状态的阈值切换转换非常快速地发生,例如大约几皮秒。然而,跨设备的电压变化要慢得多,例如大约几纳秒。结果,由于该电位差,瞬态电流(即,快速恢复电流)在设备中流动,这在一些示例中可用于读取给定PCM单元或具有相变性质的其它设备或材料的位状态。例如,可以通过在单元上应用分界偏差(Vdm)来确定PCM单元位状态。如果生成快速恢复电流(即,PCM单元“快速”),则Vdm高于Vt。更具体地,如果Vdm的电压被设置在设置状态的预期Vt和重置状态的预期Vt之间,则存在快速恢复电流将指示正被读取的存储器单元具有低于Vdm的Vt,并且处于设置状态。另一方面,没有快速恢复电流将指示正被读取的存储器单元具有高于Vdm的Vt,并且处于重置状态。
然而,可能出现的一个挑战是Vt的移位,这指的是相变材料随着时间从其编程值移位或漂移的趋势。由于各种因素,可能发生这种移位效应。例如,由于对单元或者在一些情况下对相邻单元执行读取操作的数量,因为读取干扰,可能发生漂移。漂移也可能仅仅由于时间的经过以及读取干扰和时间经过的组合而发生。例如,图1示出了沿Vt轴的设置单元Vts 102的分布(或设置(tmin))和重置单元Vts 104的分布(或重置(tmin))的图。Vt-set(p)和Vt-reset(p)分别表示在编程时的设置单元102和重置单元104的分布的中心。这些分布倾向于由于从编程起的时间流逝、存储器单元的使用或者两者而引起的漂移,这通过向右的分布和向设置单元106的set(tmax)分布和重置单元108的reset(tmax)分布的相应移位来示出。Vt-set(d)和Vt-reset(d)分别表示在漂移周期之后设置单元106和重置单元108的分布的中心的Vt。因此,为了确定相关联的存储器单元的位状态,在两个分布之间的点处应用Vdm,如上所述。在接近编程时,可以获得明确的位状态确定。然而,Vt分布(包括作为整体以及个体或小组存储器单元的分布)的漂移,可能导致分布或分布的一部分漂移得足够远以引起读取错误。例如,当设置存储器单元的Vts漂移到大于Vdm的Vt时,由于相关联的Vts大于Vdm,这些设置单元将被读取为重置单元。注意,由于跨分布的各个存储器单元的不同使用,一些单元可能比其他单元漂移得更快。
在一个示例性实施例中,可以通过生成考虑Vt漂移的补偿的Vdm,并且通过命令地址或其他总线发送补偿的Vdm作为用于读取和写入操作的命令序列的一部分,在一些情况下用于每次读取和写入操作来校正Vt的移位。在一些示例中,可以实时计算补偿的Vdm,而在其他示例中,可以从预先生成的查找表中挑选补偿的Vdm。此外,预期可以设置补偿的Vdm或者可以在制造期间对Vdm值的查找表进行编程。在其他示例中,可以在使用期间计算或以其他方式生成补偿的Vdm。
提供各种设备、系统和方法作为示例性实现。图2示出了电子设备或系统的示例性实施例的所选方面的高级框图。这样的设备或系统200包括处理器(或多个处理器)202、控制器204、将处理器202耦合到控制器204的互连206、存储器设备(或多个设备)208和总线210。图2是高级图示,总线210可以是系统总线(或内部总线)或通信总线(或外部总线),这取决于存储器设备208的本质和位置。例如,在一个实施例中,存储器设备208可以是系统存储器,并且因此总线210可以是内部总线。在另一示例中,存储器设备208可以是诸如存储设备之类的远程存储器设备,而因此,总线210可以是外部总线。在又一示例中,存储器设备208可以表示系统存储器设备和远程存储器设备,而因此总线210可以表示内部总线和外部总线。
类似地,互连206的性质可以取决于系统的性质和设计而变化。在一些示例中,互连206可以是将处理器202耦合到单独的控制器204的系统总线(或内部总线)。在其他示例中,控制器204可以是集成的存储器控制器,并且因此与处理器202(或CPU封装)集成。在这种情况下,互连206可以代表处理器或CPU封装的内部电路。处理器202可以是任何数量的处理器,并且可以是中央处理单元、嵌入式处理器、分区处理器、多核处理器等。在一些示例中,控制器204在与处理器202的电路或封装分开的电路或封装中实现。
如已经描述的,可以将补偿的Vdm值或类似的指令并入到用于读取和写入操作的命令序列中,以便考虑Vt漂移。通常,漂移补偿电路指的是在补偿的Vdm或Vdm值的计算、取回或传递中涉及的任何电路、处理器、过程、代码、逻辑、查找表等。漂移补偿电路可以物理地位于计算或其他电子系统中的任何地方,例如,中央处理单元或其他主处理器、控制器、存储器控制器,包括集成存储器控制器、控制器中心、存储器设备,例如远程存储器存储设备中的电路,双列直插式存储器模块(DIMM)中的电路等,控制器中心或任何其他存储器相关结构,包括其任何可能的组合。
图3a-图3b是示出了电子设备或系统的示例性实施例的简化框图,所述电子设备或系统包括存储器302,该存储器302例如由通过字线(WL)306的阵列和位线(BL)308的阵列寻址的PCM单元304的阵列组成。如图3b所示,PCM单元304的一个示例包括选择设备(SD)310和耦合到SD的相变材料(PM)312,其中PM具有编程状态。在一个实施例中,程序状态可以是结晶(设置)或非晶(重置),但是可以预期中间程序状态。另外,虽然WL 306被示出耦合到SD310并且BL 308被示出耦合到PM 312,但是在一些实施例中,可以切换该耦合布置。
电子设备或系统还包括通过总线316耦合到存储器302的漂移补偿电路314。如上所述,总线316可以是内部总线或外部总线,这取决于存储器302的性质。漂移补偿电路314通常被配置为通过生成或以其他方式提供考虑Vt漂移的补偿的Vdm来校正Vt的漂移,并且在一些示例中,将补偿后的Vdm作为用于读取和/或写入操作的命令序列的一部分发送。漂移补偿电路314通常表示为通过总线316耦合到存储器302,其可以取决于存储器和电子设备配置而变化。
如上所述,Vt漂移可以由读取干扰(或扰乱)以及仅仅时间的经过产生。例如,更经常地读取的存储器单元可以比不经常读取的存储器单元更快地漂移。虽然在一些实施例中,存储器设备可以被设置为遵循基于时间、基于干扰(即,基于扰乱)或基于预先知道给定存储器设备的潜在使用的中间漂移补偿方案,但在一些实施例中,可以做出基于时间或基于干扰的决定以反映存储器设备的实际使用。虽然构想了各种实施方式,但是在一个实施例中,漂移模式补偿电路314可以包括模式指示符318以指示当前基于时间或基于干扰的操作模式,尽管模式指示符不需要物理地位于漂移补偿电路314中、处或附近。此外,虽然模式指示符可以是存储器设备范围的指示符,但是在一些实施例中,模式指示符318可以在存储器组、存储器页面、高速缓存线或甚至是存储器单元的级别上实现。例如,在存储器单元级别,考虑到个体存储器单元的通常不同的使用特性,可以使用时间和使用历史来更精确地补偿Vt漂移。在一个实施例中,模式指示符可以是存储器位置中的模式位,例如存储器设备中的位位置,或者第二存储器中的位位置,例如控制器处的NVM。在其他实施例中,模式指示符可以是专用存储器或电路。
例如,图4a示出了基于存储器使用的决策方案,无论其是用于存储器设备、存储器单元还是其间的任何存储器增量。在一个示例性实施例中,选择方法可以包括402确定漂移补偿模式。例如,漂移补偿模式可以是基于时间的漂移补偿模式或基于干扰的漂移补偿模式,但是也可以考虑中间时间/干扰补偿模式和基于与读取周期数不同的漂移相关干扰的补偿模式。
在一个实施例中,可以从模式指示符318读取漂移补偿模式。可以以多种方式将漂移补偿模式设置为给定的补偿模式。例如,存储器或并入存储器的设备或系统的制造商可以在制造期间将模式指示符设置为基于时间或基于干扰的漂移补偿模式。在另一示例中,其中并入存储器的系统或设备的分配器可以设置模式指示符。在又一示例中,模式指示符可以通过最终用户设置,或者通过由于存储器使用而引起的设备或系统中的漂移补偿电路设置。另外,在一些示例中,在模式指示符中设置的模式是永久的,或者至少不被设计为由最终用户修改。在其他示例中,模式指示符被设计为允许在使用设备时修改设置模式。
在另一实施例中,可以根据存储器位置处的存储器单元的使用历史来确定漂移补偿模式。例如,如果存储器位置处的存储器单元或多个存储器单元经历了高于阈值数量的多个读取操作或其他干扰,则可以选择基于干扰的漂移补偿模式。例如,如果读取或干扰操作的数量低于阈值数量,则使用基于时间的漂移补偿模式。因此,可以跟踪干扰操作的数量并将其与阈值进行比较,以确定是否要使用基于干扰的补偿模式来确定补偿的Vdm。虽然在一些情况下,基于干扰的补偿模式可以基于存储器单元所经历的读取干扰的数量,但在其他情况下,基于干扰的补偿模式可以基于干扰的数量,而不管干扰的性质或来源。例如,在编程事件(或写入事件)发生在PCM单元中的情况下,该PCM单元足够接近以引起被监视的PCM单元中的漂移,这可以被认为是干扰事件。
因此,操作404根据模式指示符或存储器使用历史来确定是否使用基于干扰的漂移补偿模式。如果确定是针对基于时间的漂移补偿模式,则控制转到操作406,并且漂移补偿电路314实现基于时间的漂移补偿算法,该算法基于从对存储器单元或存储器位置的存储器单元的上次写入操作以来经过的时间量来校正Vt漂移。如果确定是针对基于干扰的漂移补偿模式,则控制转到操作408,并且漂移补偿电路314实现基于干扰的漂移补偿算法,该算法基于从对存储器单元或存储器位置的存储器单元的上次写入操作依赖的读取操作或其他干扰的数量来校正Vt漂移。
在一个示例性实施例中,基于时间的漂移补偿模式可以包括通过任何数量的技术来确定补偿的Vdm。例如,在一个实施例中,可以直接根据经过的时间或干扰周期的数量来计算或估计预期漂移量,然后可以将预期漂移加到基线Vdm以确定补偿的Vdm。基线Vdm可以是在没有漂移的情况下预期的Vdm。在另一示例性实施例中,可以将基于时间的漂移历史的范围和基于干扰的漂移历史的范围划分为多个子范围,其中每个子范围与特定的补偿的Vdm(或潜在补偿的Vdm)相关。例如,如果漂移补偿电路314指示基于时间的漂移模式将用于特定的存储器单元,则基于从对存储器单元的上次写入操作以来经过的时间量来确定哪个基于时间子范围对应于该存储器单元。然后,该子范围的补偿的Vdm将用于读取存储器单元。类似地,如果使用基于干扰的漂移模式,则确定哪个基于干扰的子范围对应于存储器单元的干扰历史(干扰的数量),并且与该子范围相关联的补偿的Vdm用于读取存储器单元。
在一些情况下,针对基于时间和基于干扰的模式的多个子范围可以由制造商、供应商等预先配置。在其他情况下,可以在使用期间生成针对基于时间和基于干扰的模式的多个子范围,包括初始建立子范围,在预先配置的子范围上进行写入,在使用期间先前建立的子范围上进行写入等。子范围可以是重叠的或非重叠的,并且它们可以是均匀或非均匀的尺寸。例如,如果确定存储器单元的漂移速率将随时间加速,那么与上次写入操作在时间上更远的子范围在总持续时间上可能比在时间上更接近的子范围相比更短以考虑漂移率的加速。
在一个非限制性的基于时间的漂移模式示例中,总的潜在经过的时间范围可以被划分为一组四个经过的时间子范围(El_TimelMlN…El_TimelMAx,El_Time2MIN,El_Time2MAX,El_Time3MIN...El Time3MAX,El_Time4MIN...El_Time4MAX),其中每个子范围与补偿的Vdm(即,Vdm1、Vdm2、Vdm3和Vdm4)相关联。可以利用任何数量的子范围和相关联的补偿的Vdms来考虑存储器单元漂移。在接收到引用存储器位置和/或存储器位置中的存储器单元的读取或写入操作请求时,漂移补偿电路确定从对存储器位置的存储器单元的上次写入操作以来经过的时间(或经过的时间),并且然后,将经过的时间与经过的时间子范围进行比较,以选择匹配的子范围。因此,将与匹配的子范围相关联的补偿后的Vdm用作补偿后的Vdm,以对存储器单元执行读取或写入操作。
在一个非限制性示例中,第一时间窗口(El_TimelMIN...El_TimelMAX)可以从50ns延伸到10μs,第二时间窗口(El_Time2MIN...El_Time2MAX)可以从10μs延伸到60μs,第三时间窗口(El_Time3MIN...El_Time3MAX)可以从60μs延伸到600μs,而第四时间窗口(El_Time4MIN...El_Time4MAX)可以从600μs延伸到3ms。在另一非限制性示例中,第一时间窗口(El_TimelMIN...El_TimelMAX)可以从50ns延伸到10μs,第二时间窗口(E2_TimelMIN...E2_TimelMAX)可以从5μs延伸到60μs,第三时间窗口(El_Time3MIN...El_Time3MAX)可以从30μs延伸到600μs,并且第四时间窗口(El_Time4MIN...El_Time4MAX)可以从300μs延伸到3ms。应当理解,时间窗口的值可以取决于设备的设计和预期用途而有很大变化,并且可以被定制以适合给定的设备或设备应用。在一些情况下,例如,如果预期设备的存储器单元在从微秒或毫秒到数年甚至数十年的时间段内漂移,那么所使用的子范围窗口的值可以以重叠或不重叠的方式共同地包括从毫秒到数年或数十年来适应漂移的全部范围。对于重叠范围,可以通过许多技术中的任何一种来选择补偿的Vdm。例如,在一个实施例中,经过的时间落在两个范围的重叠部分中,可以使用与子范围窗口中的任一个相关联的补偿的Vdm。在另一实施例中,中间补偿的Vdm(例如,平均)可以用于落入重叠区域内的经过的时间。
在一些示例中,经过的时间范围的时间值可以使用EQ 1以科学记数法表示,以最小化相关联的位大小:
等式1经过的时间=[x].[y]e[a][z]
在表1中所示的非限制性实施例中进一步描述[x]、[y]、[a]和[z]。
表1:基于时间的漂移:
因此,对于16位存储位置,例如,低字节(位0-7)存储[z]值(位0-6)和[z]值的符号(位7),以及高字节(位8-15)存储[x]值(位12-15)和[y]值(位8-11)。存储位置可以是能够存储经过的时间值的任何控制器可存取的存储器位置。在一个示例中,存储位置可以是存储器控制器处的存储器寄存器。在另一示例中,存储位置可以在NVM处。
在一个实施例中,如图4B所示,基于时间的漂移补偿方案可以包括410确定或取回经过的时间子范围,如上所述。在操作412处,控制器接收输入/输出(I/O)请求,并且414确定I/O请求是读取操作还是写入操作。如果I/O请求不是读取或写入操作,则控制返回到操作412,并且控制器等待接收另一I/O操作。然而,如果I/O请求是读取或写入操作,则控制转到416并且漂移补偿电路314确定自从对与读取操作或写入操作所指向的物理地址相关联的存储器单元的上次写入操作以来,或者换句话说,从Vt通过写入操作重置以来经过的时间量。注意,在一些实施例中,410确定经过的时间子范围可以在操作412之前发生,如图所示,或者在操作412期间或之后发生。此外,虽然在一些实施例中,漂移补偿电路314可以确定从上次写入操作以来经过的时间量,但在其他实施例中,漂移补偿电路314可以确定从上次读取操作或者读取/写入操作的特定组合以来已经过的时间量。
在操作418处,漂移补偿电路314至少部分地基于从对与读取或写入操作所指向的物理地址相关联的存储器单元的上次写入操作以来经过的时间量,来确定补偿的Vdm。在一些实施例中,可以通过将经过的时间与经过的时间子范围之一进行匹配,并利用与匹配的子范围相关联的补偿后的Vdm来确定补偿后的Vdm。作为参考表1中的子范围的示例,经过的时间为100ns的存储器单元将落在第一子范围的50ns至10μs内(El_TimelMIN…E1_Time1MAX)。这样,与第一子范围相关联的补偿的Vdm将用于对存储器单元读取或写入。
在操作420处,控制器使用补偿的Vdm作为Vdm对与读取或写入操作所指向的物理地址相关联的存储器单元执行读取或写入操作,以便区分设置单元和重置单元。对于读取操作,补偿的Vdm相对于原始Vdm已经移位以考虑Vt的漂移。对于写入操作,编程脉冲可以被发送到存储器单元,其中编程脉冲具有高于补偿的Vdm的电压,以确保编程脉冲引起Vt移位并熔化存储器单元中的相变材料,这将使存储器单元的Vt重置为其程序状态值。
在一个非限制性的基于干扰漂移模式示例中,总潜在经过的时间范围可以划分为一组四个干扰数量子范围(Dist#1MIN…Dist#1MAX,Dist#2MIN…Dist#2MAX,Dist#3MIN…Dist#3MAX,Dist#4MIN…Dist#4MAX),其中每个子范围与补偿的Vdm(即,Vdm1、Vdm2、Vdm3和Vdm4)相关联。可以利用任何数量的子范围和相关联的补偿的Vdms来解释存储器单元漂移。在接收到引用存储器位置和/或存储器位置中的存储器单元的读取或写入操作请求时,漂移补偿电路确定从对存储器位置的存储器单元的上次写入操作以来的干扰的数量,并且然后比较干扰数量与干扰数量子范围以选择匹配的子范围。因此,与匹配的子范围相关联的补偿后的Vdm用作补偿后的Vdm,以对存储器单元执行读取或写入操作。
在一个非限制性示例中,第一干扰数量子范围(Dist#1MIN…Dist#1MAX)可以从0延伸到le3干扰,第二干扰数量子范围(Dist#2MIN...Dist#2MAX)可以从le3延伸到1e4干扰,第三干扰数量子范围(Dist#3MIN…Dist#3MAX)可以从1e4延伸到1e6干扰,而第四干扰数量子范围(Dist#4MIN...Dist#4MAX)可以从1e6延伸到1e7干扰。在另一非限制性示例中,第一干扰数量子范围(Dist#1MIN…Dist#1MAX)可以从0延伸到1e4干扰,第二干扰数量子范围(Dist#2MIN…Dist#2MAX)可以从le3延伸到1e4干扰,第三干扰数量子范围(Dist#3MIN…Dist#3MAX)可以从1e4延伸到1e6干扰,并且第四干扰数量子范围(Dist#4MIN…Dist#4MAX)可以从1e5延伸到1e7干扰。应当理解,干扰数量子范围的值可以取决于设备的设计和预期用途而有很大变化,并且可以被定制以适合给定的设备或设备应用。因此,子范围值可以在设备的预期寿命中以任何数量的子范围展开。
在一些示例中,可以使用等式2来表示干扰数量子范围中使用的干扰的数量:
EQ 2干扰数量=[y]e[z]
非限制性示例显示在表3中。
表2.基于干扰的VDM:
因此,对于8位存储位置,例如,[z]值可以存储在位0-3,并且[y]值可以存储在位4-7。存储位置可以是能够存储多个干扰值的任何控制器可存取的存储器位置。在一个示例中,存储位置可以是存储器控制器处的存储器寄存器。在另一示例中,存储位置可以在NVM处。
在另一示例性实施例中,如图4c所示,基于干扰的漂移补偿方案可以包括422确定或取回干扰数量子范围,如上所述。在操作424处,控制器接收I/O请求,并且426确定I/O请求是读取操作还是写入操作。如果I/O请求不是读取或写入操作,则控制返回到操作424,并且控制器等待接收另一I/O操作。然而,如果I/O请求是读取或写入操作,则控制转到428,并且漂移补偿电路314确定从对与读取或写入操作所指向的物理地址相关联的存储器单元的上次写入操作以来,或换句话说,从Vt由写入操作重置以来的干扰数量。注意,在一些实施例中,422确定干扰数量子范围可以在操作424之前发生,如图所示,或者在操作424期间或之后发生。
在操作430处,漂移补偿电路314至少部分地基于从对存储器单元的上次写入操作以来的干扰数量来确定补偿的Vdm。在一些实施例中,可以通过将干扰数量与干扰数量子范围之一匹配来确定补偿后的Vdm,然后利用与匹配的子范围相关联的补偿后的Vdm。作为一个示例,从上次写入事件以来具有4,500个干扰的存储器单元将落在上述Dist#2MIN…Dist#2MAX的le3到1e4干扰范围内。这样,与该子范围相关联的补偿的Vdm将用于对存储器单元读取或写入。干扰可以包括可以引起存储器单元中Vt漂移的任何干扰,例如对存储器单元的读取操作,以及对附近存储器单元的干扰,例如写入操作。
在操作432处,控制器使用补偿的Vdm作为Vdm对与读取或写入操作所指向的物理地址相关联的存储器单元执行读取或写入操作,以便区分设置单元和重置单元。对于读取操作,补偿的Vdm相对于原始Vdm已经移位以考虑Vt的漂移。对于写入操作,编程脉冲可以被发送到存储器单元,其中编程脉冲具有比补偿的Vdm更高的电压,以确保编程脉冲引起Vt移位并熔化存储器单元中的相变材料,这将使存储器单元的Vt重置为其程序状态值。
在一个示例性实施例中,从上述匹配的子范围(以及未补偿的Vdm)获得的补偿的Vdm,而在另一实施例中,用于生成补偿的Vdm的指令可以从存储器控制器发送到存储器,作为用于读取和写入操作的命令序列(在一些情况下用于读取或写入操作)的一部分。在一个具体示例中,在命令操作中保留两位,如表3所示。因此,通过跟踪一个或多个存储器单元的Vt漂移,用于读取和写入操作的Vdm的值可以更接近地反映用于区分设置存储器单元与重置存储器单元的实际分界点,无论发生的漂移速率或程度如何。通过发送Vdm的漂移补偿电压值和与用于读取和/或写入操作的命令序列一起用于生成Vdm的指令(即,指示使用哪个Vdm),系统经由在分解操作中使用的实际Vdm的命令序列更新在发生漂移时快速响应漂移。
在一个实施例中,使用具有上述四个子范例的表3,位VDM1和VDM2作为命令序列的一部分向存储器传达哪个子范围(即,子范围01、子范围02、子范围03、子范围04)表示读取或写入操作时存储器单元的漂移程度。例如,如果存储器单元已经漂移到第三子范围,则命令序列将子范围03发送到存储器。存储器接收用于读取或写入操作的命令序列,并利用相关联的子范围03信息来修改操作中使用的Vdm值。在这种情况下,子范围03将与Vdm3相关联,并且存储器将使用存储在存储器中的Vdm3的值,或者利用Vdm3相关联的修改因子来修改存储在存储器中的Vdm值,以生成对应于漂移程度的适当Vdm3。例如,如果第三子范围对应于4.5V的补偿的Vdm电压,则命令序列将包括子范围03,并且将取回对应于子范围03的存储器存储值4.5V并将其用作用于操作的Vdm。替代地,可以取回与子范围03相关联并存储在存储器中的修改因子,并将其应用于初始Vdm以生成4.5V的Vdm3值。
表3:具有8个周期的5-CA引脚的命令地址格式
CMD-命令位
VDM-分界电压位
PA-分区地址从S15核心内的16个分区中选择1个
MA–存储器地址位以16B的粒度访问
RFU-保留位以供将来使用
虽然已经示出使用两位(VDM0和1)来选择子范围,但是至少取决于子范围的数量可以使用更多或更少的位。
如已经描述的,可以在各种非限制性实施方式中实现各种结构、设备、系统等。例如,如图5所示,系统可以包括经由内部总线506耦合到非易失性系统存储器504的中央处理单元(CPU)封装502。CPU封装502包括处理器508和集成存储器控制器510。处理器508可以是任何数量的处理器,并且可以是中央处理单元、嵌入式处理器、分区处理器、多核处理器等。
非易失性系统存储器504可以包括可以由于使用或时间的经过而经历Vt的漂移的任何类型的NVM。另外,在一个实施例中,NVM设备可以包括块可寻址模式存储器设备,例如NAND或NOR技术,或者更具体地,多阈值级NAND闪存、NOR闪存等。存储器设备还可以包括字节可寻址的三维交叉点存储器设备,或其他字节可寻址的就地写入非易失性存储器设备,例如单级或多级PCM,使用硫属化物相变材料(例如,硫属化物玻璃)的存储器设备,电阻存储器,基于纳米线的NVM,铁电晶体管随机存取存储器(FeTRAM),并入忆阻器技术的磁阻随机存取存储器(MRAM),自旋转移扭矩随机存取存储器(STT)-MRAM等,包括其组合。在一些示例中,非易失性系统存储器可以被配置为具有双列直插式存储器模块(DIMM)架构。
在另一示例性实施例中,如图6所示,系统可以包括经由内部总线606耦合到控制器中心604的CPU封装602。控制器中心604可以包括与CPU封装602不同的任何类型的控制器中心、控制器设备、芯片组等。CPU封装602包括处理器608和集成存储器控制器610。处理器608可以是任何数量的处理器,并且可以是中央处理单元、嵌入式处理器、分区处理器、多核处理器等。该系统还包括NVM存储设备612,其经由外部或通信总线616耦合到控制器中心604。
NVM存储设备还包括NVM 614,该NVM 614可以包括任何类型的NVM,其可以由于使用或时间的经过而经历Vt的漂移,并且可以用在存储器存储设备中。在一个实施例中,NVM设备可以包括块可寻址模式存储器设备,例如NAND或NOR技术,或者更具体地,多阈值级NAND闪存、NOR闪存等。存储器设备还可以包括字节可寻址三维交叉点存储器设备,或其他字节可寻址的就地写入非易失性存储器设备,例如单级或多级PCM、使用硫属化物相变材料的存储器设备、电阻存储器、基于纳米线的NVM、FeTRAM、并入忆阻器技术的MRAM、STT-MRAM等,包括其组合。在一些示例中,NVM存储设备可以包括在使用时耦合到控制器中心604的控制器。
外部总线616可以包括能够与存储设备通信的任何类型的总线。这样的非限制性示例包括串行高级技术附件(SATA)规范、快速PCI PCIE接口、非易失性介质快速(NVMe)接口、存储器高速接口等。
虽然未示出,但是任何系统都可以包括和使用电源,例如但不限于电池、AC-DC转换器,至少接收交流电和供应直流电、可再生能源(例如,太阳能或基于运动的电力)等。
在另一实施例中,提供了一种方法,在一些情况下该方法可以是计算机实现的方法。如图7所示,这种方法可以包括702从控制器接收关于NVM设备中的存储器位置的读取或写入操作,704选择基于时间的漂移补偿模式或基于干扰的漂移补偿模式作为补偿模式,706基于所选的补偿模式为存储器位置的存储器单元生成补偿分界电压(Vdm),以及708使用补偿的Vdm对存储器位置处的存储器单元执行读取或写入操作。
在各种示例中,这里讨论的操作可以被实现为硬件(例如,电路)、软件、固件、微代码或其组合,其可以被提供为计算机程序产品,例如,包括有形的(例如,非瞬态)机器可读或计算机可读介质,其上存储有用于对计算机进行编程以执行本文所讨论的过程的指令(或软件过程)。此外,作为示例,术语“逻辑”可以包括软件、硬件或软件和硬件的组合。机器可读介质可以包括诸如本文所讨论的那些的存储设备。
示例
以下示例涉及特定实施例并且指出可以在实现这样的实施例中使用或以其他方式组合的特定特征、元件或步骤。
在一个示例中,提供了一种存储器控制器,包括电路,该电路被配置为:
通过基于时间的漂移补偿模式或基于干扰的漂移补偿模式获得补偿的分界电压(Vdm);以及
将补偿的Vdm应用于非易失性存储器(NVM)设备的存储器位置的存储器单元。
在存储器控制器的一个示例中,为了通过基于时间的漂移补偿模式来获得补偿的Vdm,所述电路还被配置为:
接收引用存储器位置的读取或写入操作;
确定从对所述存储器位置的存储器单元的上次写入操作以来经过的时间;以及
使用经过的时间来确定补偿的Vdm。
在存储器控制器的一个示例中,为了确定补偿的Vdm,所述电路还被配置为:
将经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从多个经过的时间子范围中选择包括经过的时间的经过的时间子范围;以及
将与所选的经过的时间子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
在存储器控制器的一个示例中,为了通过基于干扰的漂移补偿模式来获得补偿的Vdm,所述电路还被配置为:
接收引用存储器位置的读取或写入操作;
确定从对存储器单元的上次写入以来对所述存储器单元的干扰数量;以及
使用干扰数量来确定补偿的Vdm。
在存储器控制器的一个示例中,为了确定补偿的Vdm,所述电路还被配置为:
将干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从多个干扰数量子范围中选择包括对存储器单元的干扰数量的干扰数量子范围;以及
将与所选干扰数量子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
在存储器控制器的一个示例中,所述干扰数量包括对所述存储器单元的读取操作的数量。
在存储器控制器的一个示例中,所述电路还包括:
模式指示符,其被配置为指定是根据基于时间的漂移补偿模式还是基于干扰的漂移补偿模式来获得补偿的Vdm。
在存储器控制器的一个示例中,所述模式指示符是模式位。
在存储器控制器的一个示例中,所述存储器单元包括相变存储器(PCM)单元。
在存储器控制器的一个示例中,所述NVM设备包括三维(3D)交叉点阵列。
在一个示例中,提供了一种计算系统,包括:
至少一个处理器;
包括存储器单元的阵列的非易失性存储器(NVM)设备;以及
控制器,其耦合到NVM设备和至少一个处理器,所述控制器还包括电路,该电路被配置成:
确定是根据基于时间的漂移补偿模式还是基于干扰的漂移补偿模式来获得补偿的分界电压(Vdm);
根据确定出的模式来获得补偿的Vdm;以及
将补偿的Vdm应用于存储器单元的阵列的存储器位置的存储器单元。
在计算系统的一个示例中,系统还包括模式指示符,其耦合到控制器上,并被配置为指定补偿的Vdm是根据基于时间的漂移补偿模式还是基于干扰的漂移补偿模式而获得。
在计算系统的一个示例中,为了通过基于时间的漂移补偿模式来获得补偿的Vdm,所述电路还被配置为:
接收引用存储器位置的读取或写入操作;
确定从对所述存储器位置的存储器单元的上次写入操作以来经过的时间;以及
使用经过的时间来确定补偿的Vdm。
在计算系统的一个示例中,为了确定补偿的Vdm,所述电路还被配置为:
将经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从多个经过的时间子范围中选择包括经过的时间的经过的时间子范围;以及
将与所选的经过的时间子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
在计算系统的一个示例中,为了通过基于干扰的漂移补偿模式获得补偿的Vdm,所述电路还被配置为:
接收引用存储器位置的读取或写入操作;
确定从对存储器单元的上次写入以来对所述存储器单元的干扰数量;以及
使用干扰数量来确定补偿的Vdm。
在计算系统的一个示例中,为了确定补偿的Vdm,所述电路还被配置为:
将干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从多个干扰数量子范围中选择包括对存储器单元的干扰数量的干扰数量子范围;以及
将与所选干扰数量子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
在计算系统的一个示例中,所述存储器单元包括相变存储器单元(PCM)。
在计算系统的一个示例中,所述PCM单元的阵列被配置为三维(3D)交叉点阵列。
在计算系统的一个示例中,所述系统还包括以下中的一个或多个:网络接口,其通信地耦合到至少一个处理器;显示器,其通信地耦合到至少一个处理器;或者电源,其通信地耦合到至少一个处理器。
在一个示例中,提供了一种计算机实现的方法,包括:
从控制器接收引用非易失性存储器(NVM)设备中存储器位置的读取或写入操作;
选择基于时间的漂移补偿模式或基于干扰的漂移补偿模式作为补偿模式;
基于所选择的补偿模式,生成针对存储器位置的存储单元的补偿分界电压(Vdm);以及
使用补偿的Vdm对存储器位置处的存储器单元执行读取或写入操作。
在计算机实现的方法的一个示例中,选择基于时间的漂移补偿模式或基于干扰的漂移补偿模式作为补偿模式,还包括:
确定从对存储器单元的上次写入操作以来对存储器单元的干扰数量;以及
使用干扰数量来选择基于时间的漂移补偿模式或基于干扰的漂移补偿模式。
在计算机实现的方法的一个示例中,所述干扰数量包括对所述存储器单元的读取操作的数量。
在计算机实现的方法的一个示例中,所述方法还包括:
选择基于时间的漂移补偿模式作为补偿模式;
确定从对存储器位置的存储器单元的上次写入操作以来经过的时间;以及
使用经过的时间来确定补偿的Vdm。
在计算机实现的方法的一个示例中,为了确定补偿的Vdm,所述方法还包括:
将经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从多个经过的时间子范围中选择包括经过的时间的经过的时间子范围;以及
将与所选的经过的时间子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
在计算机实现的方法的一个示例中,所述方法还包括:
选择基于干扰的漂移补偿模式作为补偿模式;
确定从对存储器单元的上次写入操作以来对所述存储器单元的干扰数量;以及
使用干扰数量来确定补偿的Vdm。
在计算机实现的方法的一个示例中,为了确定补偿的Vdm,所述方法还包括:
将干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从多个干扰数量子范围中选择包括对存储器单元的干扰数量的干扰数量子范围;以及
将与所选的干扰数量子范围相关联的可能的补偿的Vdm识别为补偿的Vdm。
虽然前述示例说明了一个或多个特定应用中的实施例的原理,但是对于本领域普通技术人员来说显而易见的是,可以在不执行创造性能力的情况下对形式、使用和实现细节进行多种修改,并且不背离本公开的原理和概念。
Claims (26)
1.一种存储器控制器,包括电路,所述电路被配置为:
通过基于时间的漂移补偿模式或基于干扰的漂移补偿模式来获得补偿的分界电压(Vdm);以及
将所述补偿的Vdm应用于非易失性存储器(NVM)设备的存储器位置的存储器单元。
2.根据权利要求1所述的控制器,其中,为了通过所述基于时间的漂移补偿模式而获得所述补偿的Vdm,所述电路还被配置为:
接收引用所述存储器位置的读取操作或写入操作;
确定从对所述存储器位置的所述存储器单元的最后写入操作以来经过的时间;以及
使用所述经过的时间来确定所述补偿的Vdm。
3.根据权利要求2所述的控制器,其中,为了确定所述补偿的Vdm,所述电路还被配置为:
将所述经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从所述多个经过的时间子范围中选择包括所述经过的时间的经过的时间子范围;以及
将与选择的经过的时间子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
4.根据权利要求1所述的控制器,其中,为了通过所述基于干扰的漂移补偿模式来获得所述补偿的Vdm,所述电路还被配置为:
接收引用所述存储器位置的读取操作或写入操作;
确定从对所述存储器单元的最后写入以来对所述存储器单元的干扰数量;以及
使用所述干扰数量来确定所述补偿的Vdm。
5.根据权利要求4所述的控制器,其中,为了确定所述补偿的Vdm,所述电路还被配置为:
将所述干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从所述多个干扰数量子范围中选择包括所述对所述存储器单元的干扰数量的干扰数量子范围;以及
将与选择的干扰数量子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
6.根据权利要求4所述的控制器,其中,所述干扰数量包括对所述存储器单元的读取操作的数量。
7.根据权利要求1所述的控制器,其中,所述电路还包括:
模式指示符,其被配置为指定所述补偿的Vdm是根据所述基于时间的漂移补偿模式还是根据所述基于干扰的漂移补偿模式而获得的。
8.根据权利要求7所述的控制器,其中,所述模式指示符是模式位。
9.根据权利要求7所述的控制器,其中,所述存储器单元包括相变存储器(PCM)单元。
10.根据权利要求1所述的控制器,其中,所述NVM设备包括三维(3D)交叉点阵列。
11.一种计算系统,包括:
至少一个处理器;
包括存储器单元的阵列的非易失性存储器(NVM)设备;以及
控制器,其耦合到所述NVM设备和所述至少一个处理器,所述控制器还包括电路,所述电路被配置为:
确定补偿的分界电压(Vdm)是根据基于时间的漂移补偿模式还是根据基于干扰的漂移补偿模式而获得的;
根据确定出的模式来获得所述补偿的Vdm;以及
将所述补偿的Vdm应用于所述存储器单元的阵列的存储器位置的存储器单元。
12.根据权利要求11所述的系统,还包括模式指示符,其耦合到所述控制器,并且被配置为指定所述补偿的Vdm是根据所述基于时间的漂移补偿模式还是根据所述基于干扰的漂移补偿模式而获得的。
13.根据权利要求11所述的系统,其中,为了通过所述基于时间的漂移补偿模式而获得所述补偿的Vdm,所述电路还被配置为:
接收引用所述存储器位置的读取操作或写入操作;
确定从对所述存储器位置的所述存储器单元的最后写入操作以来经过的时间;以及
使用所述经过的时间来确定所述补偿的Vdm。
14.根据权利要求13所述的系统,其中,为了确定所述补偿的Vdm,所述电路还被配置为:
将所述经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从所述多个经过的时间子范围中选择包括所述经过的时间的经过的时间子范围;以及
将与选择的经过的时间子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
15.根据权利要求11所述的系统,其中,为了通过所述基于干扰的漂移补偿模式来获得所述补偿的Vdm,所述电路还被配置为:
接收引用所述存储器位置的读取操作或写入操作;
确定从对所述存储器单元的最后写入以来对所述存储器单元的干扰数量;以及
使用所述干扰数量来确定所述补偿的Vdm。
16.根据权利要求15所述的系统,其中,为了确定所述补偿的Vdm,所述电路还被配置为:
将所述干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从所述多个干扰数量子范围中选择包括所述对所述存储器单元的干扰数量的干扰数量子范围;以及
将与选择的干扰数量子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
17.根据权利要求11所述的系统,其中,所述存储器单元包括相变存储器单元(PCM)。
18.根据权利要求17所述的系统,其中,所述PCM单元的阵列被配置为三维(3D)交叉点阵列。
19.根据权利要求11所述的系统,还包括以下中的一个或多个:
网络接口,其通信地耦合到所述至少一个处理器;
显示器,其通信地耦合到所述至少一个处理器;或者
电源,其通信地耦合到所述至少一个处理器。
20.一种计算机实现的方法,包括:
从控制器接收引用非易失性存储器(NVM)设备中的存储器位置的读取操作或写入操作;
选择基于时间的漂移补偿模式或基于干扰的漂移补偿模式作为补偿模式;
基于选择的补偿模式,来生成针对所述存储器位置的存储单元的补偿的分界电压(Vdm);以及
使用所述补偿的Vdm对所述存储器位置处的所述存储器单元执行所述读取操作或所述写入操作。
21.根据权利要求20所述的方法,其中,选择所述基于时间的漂移补偿模式或所述基于干扰的漂移补偿模式作为所述补偿模式,还包括:
确定从对所述存储器单元的最后写入操作以来对所述存储器单元的干扰数量;以及
使用所述干扰数量来选择所述基于时间的漂移补偿模式或所述基于干扰的漂移补偿模式。
22.根据权利要求21所述的方法,其中,所述干扰数量包括对所述存储器单元的读取操作的数量。
23.根据权利要求21所述的方法,还包括:
选择所述基于时间的漂移补偿模式作为所述补偿模式;
确定从对所述存储器位置的所述存储器单元的最后写入操作以来经过的时间;以及
使用所述经过的时间来确定所述补偿的Vdm。
24.根据权利要求23所述的方法,其中,为了确定所述补偿的Vdm,所述方法还包括:
将所述经过的时间与同多个可能的补偿的Vdm相关的多个经过的时间子范围进行比较;
从所述多个经过的时间子范围中选择包括所述经过的时间的经过的时间子范围;以及
将与选择的经过的时间子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
25.根据权利要求21所述的方法,还包括:
选择所述基于干扰的漂移补偿模式作为所述补偿模式;
确定从对所述存储器单元的最后写入以来对所述存储器单元的干扰数量;以及
使用所述干扰数量来确定所述补偿的Vdm。
26.根据权利要求25所述的方法,其中,为了确定所述补偿的Vdm,所述方法还包括:
将所述干扰数量与同多个可能的补偿的Vdm相关的多个干扰数量子范围进行比较;
从所述多个干扰数量子范围中选择包括所述对所述存储器单元的干扰数量的干扰数量子范围;以及
将与选择的干扰数量子范围相关联的可能的补偿的Vdm识别为所述补偿的Vdm。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/089,507 | 2016-04-02 | ||
US15/089,507 US9721657B1 (en) | 2016-04-02 | 2016-04-02 | Managing threshold voltage shift in nonvolatile memory |
PCT/US2017/020989 WO2017172283A1 (en) | 2016-04-02 | 2017-03-06 | Managing threshold voltage shift in nonvolatile memory |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108701100A true CN108701100A (zh) | 2018-10-23 |
CN108701100B CN108701100B (zh) | 2022-09-20 |
Family
ID=58387899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780014585.4A Active CN108701100B (zh) | 2016-04-02 | 2017-03-06 | 管理非易失性存储器中的阈值电压位移 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9721657B1 (zh) |
EP (1) | EP3436960B1 (zh) |
CN (1) | CN108701100B (zh) |
WO (1) | WO2017172283A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113632071A (zh) * | 2019-03-01 | 2021-11-09 | 戴尔产品有限公司 | 用于配置漂移检测和修复的系统和方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9721657B1 (en) * | 2016-04-02 | 2017-08-01 | Intel Corporation | Managing threshold voltage shift in nonvolatile memory |
KR102401183B1 (ko) * | 2017-12-05 | 2022-05-24 | 삼성전자주식회사 | 메모리 장치 및 그 동작 방법 |
US10679698B2 (en) | 2018-03-28 | 2020-06-09 | Intel Corporation | Memory preset adjustment based on adaptive calibration |
TWI735873B (zh) * | 2018-10-24 | 2021-08-11 | 旺宏電子股份有限公司 | 用以執行乘積和運算之半導體裝置 |
US20190206491A1 (en) * | 2019-03-07 | 2019-07-04 | Intel Corporation | Techniques to mitigate selection failure for a memory device |
US10861539B1 (en) * | 2019-08-21 | 2020-12-08 | Micron Technology, Inc. | Neural network memory |
JP2023001593A (ja) | 2021-06-21 | 2023-01-06 | キオクシア株式会社 | 記憶装置 |
US11756597B2 (en) * | 2021-08-03 | 2023-09-12 | Micron Technology, Inc. | Power-on read demarcation voltage optimization |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8000141B1 (en) * | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
US20120320670A1 (en) * | 2011-06-20 | 2012-12-20 | Kau Derchang | Fast verify for phase change memory with switch |
WO2013166200A1 (en) * | 2012-05-04 | 2013-11-07 | Lsi Corporation | Zero-one balance management in a solid-state disk controller |
EP2765578A1 (en) * | 2013-02-10 | 2014-08-13 | LSI Corporation | Retention-drift-history-based non-volatile memory read threshold optimization |
US20150035608A1 (en) * | 2013-08-02 | 2015-02-05 | Fujitsu Limited | Distortion compensating apparatus and distortion compensation method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7502255B2 (en) * | 2007-03-07 | 2009-03-10 | Sandisk Corporation | Method for cache page copy in a non-volatile memory |
US7499320B2 (en) * | 2007-03-07 | 2009-03-03 | Sandisk Corporation | Non-volatile memory with cache page copy |
US20150205664A1 (en) * | 2014-01-17 | 2015-07-23 | Fusion-Io, Inc. | Determining a configuration parameter using a soft read command |
US9552251B2 (en) * | 2014-04-22 | 2017-01-24 | Sandisk Technologies Llc | Neighboring word line program disturb countermeasure for charge-trapping memory |
US9721657B1 (en) * | 2016-04-02 | 2017-08-01 | Intel Corporation | Managing threshold voltage shift in nonvolatile memory |
-
2016
- 2016-04-02 US US15/089,507 patent/US9721657B1/en active Active
-
2017
- 2017-03-06 EP EP17712592.9A patent/EP3436960B1/en active Active
- 2017-03-06 WO PCT/US2017/020989 patent/WO2017172283A1/en active Application Filing
- 2017-03-06 CN CN201780014585.4A patent/CN108701100B/zh active Active
- 2017-07-10 US US15/645,990 patent/US10056139B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8000141B1 (en) * | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
US20120320670A1 (en) * | 2011-06-20 | 2012-12-20 | Kau Derchang | Fast verify for phase change memory with switch |
WO2013166200A1 (en) * | 2012-05-04 | 2013-11-07 | Lsi Corporation | Zero-one balance management in a solid-state disk controller |
EP2765578A1 (en) * | 2013-02-10 | 2014-08-13 | LSI Corporation | Retention-drift-history-based non-volatile memory read threshold optimization |
US20150035608A1 (en) * | 2013-08-02 | 2015-02-05 | Fujitsu Limited | Distortion compensating apparatus and distortion compensation method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113632071A (zh) * | 2019-03-01 | 2021-11-09 | 戴尔产品有限公司 | 用于配置漂移检测和修复的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US9721657B1 (en) | 2017-08-01 |
US10056139B2 (en) | 2018-08-21 |
EP3436960B1 (en) | 2023-01-04 |
CN108701100B (zh) | 2022-09-20 |
WO2017172283A1 (en) | 2017-10-05 |
EP3436960A1 (en) | 2019-02-06 |
US20170372780A1 (en) | 2017-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108701100A (zh) | 管理非易失性存储器中的阈值电压位移 | |
US9627055B1 (en) | Phase change memory devices and systems having reduced voltage threshold drift and associated methods | |
US9899081B2 (en) | Resistive memory device and a memory system including the same | |
Dong et al. | Nvsim: A circuit-level performance, energy, and area model for emerging nonvolatile memory | |
CN101471133B (zh) | 层叠有存储器阵列的半导体装置 | |
Xie | Emerging memory technologies: design, architecture, and applications | |
US10303617B2 (en) | Storage device supporting byte accessible interface and block accessible interface and electronic system including the same | |
CN108475528B (zh) | 写入之前的双分界电压感测 | |
CN101887350B (zh) | 用于存储总线接口的pcm存储器 | |
CN103106149B (zh) | 半导体器件 | |
KR101448915B1 (ko) | 프로그램 및 검증 동작을 수행하는 가변 저항 메모리 장치 | |
CN110136764A (zh) | 非易失性存储器装置及其读取方法 | |
US11086737B2 (en) | Non-volatile storage system with rapid recovery from ungraceful shutdown | |
CN101828234A (zh) | 信息处理系统 | |
CN107230499A (zh) | 非易失性存储器装置及其编程验证操作的方法 | |
KR102533229B1 (ko) | 상대 주소를 사용하는 메모리 장치의 접근 방법 | |
CN109935253A (zh) | 用于执行存储器阵列的同时多页读取的系统和方法 | |
CN113946283B (zh) | 存储器装置的分区命名空间中的部分区存储器单元处置 | |
Son et al. | Modeling and signal integrity analysis of 3D XPoint memory cells and interconnections with memory size variations during read operation | |
CN109727618A (zh) | 具有电阻可变存储器件的半导体存储器系统及其驱动方法 | |
CN109461466A (zh) | 具有减小的芯片尺寸的电阻性存储器器件及其操作方法 | |
CN102890963A (zh) | 一种非易失性随机存储器及其操作方法 | |
Boukhobza | Emerged and emerging NVM: technologies & challenges | |
WO2021137883A1 (en) | Two-page read in nonvolatile memory |
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 |