CN106716536B - 数据存储设备的锁存器初始化 - Google Patents
数据存储设备的锁存器初始化 Download PDFInfo
- Publication number
- CN106716536B CN106716536B CN201580046679.0A CN201580046679A CN106716536B CN 106716536 B CN106716536 B CN 106716536B CN 201580046679 A CN201580046679 A CN 201580046679A CN 106716536 B CN106716536 B CN 106716536B
- Authority
- CN
- China
- Prior art keywords
- memory
- collection
- page
- institute
- rheme
- 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
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 62
- 230000015654 memory Effects 0.000 claims abstract description 437
- 238000000034 method Methods 0.000 claims abstract description 63
- 238000003860 storage Methods 0.000 claims description 46
- 230000008569 process Effects 0.000 claims description 32
- 239000000758 substrate Substances 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 10
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 claims description 8
- 229910052710 silicon Inorganic materials 0.000 claims description 8
- 239000010703 silicon Substances 0.000 claims description 8
- 230000000717 retained effect Effects 0.000 claims description 4
- 230000032696 parturition Effects 0.000 claims 1
- 230000037361 pathway Effects 0.000 description 17
- 239000004065 semiconductor Substances 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 239000000463 material Substances 0.000 description 6
- 230000005611 electricity Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 229910052581 Si3N4 Inorganic materials 0.000 description 1
- 238000005299 abrasion Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 210000001367 artery Anatomy 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000011370 conductive nanoparticle Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 238000006880 cross-coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000003989 dielectric material Substances 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005621 ferroelectricity Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 230000000631 nonopiate Effects 0.000 description 1
- 239000012782 phase change material Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 239000000377 silicon dioxide Substances 0.000 description 1
- HQVNEWCFYHHQES-UHFFFAOYSA-N silicon nitride Chemical compound N12[Si]34N5[Si]62N3[Si]51N64 HQVNEWCFYHHQES-UHFFFAOYSA-N 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5614—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using conductive bridging RAM [CBRAM] or programming metallization cells [PMC]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- 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
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
- G11C7/1009—Data masking during input/output
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/20—Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5671—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge trapping in an insulator
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1087—Data input latches
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
一种数据存储设备可以包括存储器管芯。所述存储器管芯包括存储器和锁存器。一种方法可以包括:接收与将信息写入所述存储器中的写入操作相对应的命令。所述方法可以进一步包括:在于所述存储器管芯处接收所述信息之前,将位集加载到所述锁存器中。所述位集至少包括具有第一值的第一位以及具有与所述第一值不同的第二值的第二位。所述方法进一步包括:在所述存储器管芯处接收所述信息以及用所述信息在所述锁存器处覆写所述位集的至少一部分。
Description
技术领域
本公开总体上涉及一种数据存储设备并且更具体地涉及数据存储设备的锁存器初始化。
背景技术
非易失性数据存储设备已经使数据和软件应用的增加可移植性成为可能。例如,存储器设备的多级存储单元(MLC)存储元件可以各自存储指示多个数据位的值,从而相比单级单元(SLC)存储器设备增强了数据存储密度。因此,存储器设备可以使用户存储并访问大量的数据。在一些情况中,数据可以包括连续值序列(例如,逻辑“0”值字符串或者逻辑“1”值字符串)。
将公共值存储在多个相邻的存储元件中可以如通过在一些存储器设备中引起较大泄漏电流而使存储器设备的性能降级。为了说明,在电阻式随机存取存储器(ReRAM)中,将一列存储元件编程为低阻状态可能产生较大的泄漏电流。此外,将公共值存储在多个相邻的存储元件中可以在一些存储器设备中引起干扰效应。例如,如果相邻的存储元件被编程为公共值,则闪存设备的存储元件可能更倾向于产生交叉耦合效应(并因此读取误差和解码误差)。
为了避免对相邻存储元件编程公共值,一些存储器设备对有待存储的数据进行扰码或塑形。在一些情况下,这种技术可能仍导致将公共值编码给相邻的存储元件,如,在有待写入的数据中存在“间隙”的情况(在这种情况中,重复的“默认”值序列可以代替间隙被写入,如,逻辑“0”值或逻辑“1”值的序列)。一些存储器设备可以在这种间隙中插入伪数据,以避免编程默认的公共值序列。然而,将伪数据从控制器发送至存储器可以使用存储器设备处的大量资源(例如,通过使用电源来经由总线在控制器与存储器之间传送伪数据)。
发明内容
一种数据存储设备,包括存储器管芯。所述存储器管芯可以包括存储器、锁存和初始化电路,所述初始化电路对所述锁存器进行初始化以进行将信息写入所述存储器中的写入操作。可以使用具有多个位值(例如,第一位值以及不同于所述第一位值的第二位值)的位集(例如,随机化位序列或位模式)对锁存器进行初始化。例如,所述位集可以是由存储器管芯生成的或从存储器管芯检索到的随机的或伪随机的位序列。在将所述位集加载到锁存器中之后,有待写入存储器中的信息可以由数据存储设备的控制器或由主机设备提供给锁存器(例如,以覆写所述位集)。所述信息然后可以被编程到存储器,如使用存储器管芯的读/写电路。
如果信息的位长小于锁存器的存储大小,则当将存储在存储器中的信息加载到锁存器中时可能存在“间隙”。在这种情况下,使用具有多个值的位集来对锁存器进行初始化可以避免将公共值序列(例如,默认的逻辑“0”值或逻辑“1”值序列)编程到存储器中,因此在存储器处减小了泄漏电流和/或读取干扰效应(例如,如果包括1和0的随机化位序列或位模式被编程到相邻的存储元件中而不是将公共值编程到相邻的存储元件中)。在一些实施方式中,存储器可以具有多级存储单元(MLC)配置,并且有待写入存储器中的信息可以包括多个逻辑页,所述逻辑页被锁存到存储器的多个锁存器中。在这种情况下,在将多个逻辑页存储到多个锁存器中之前,不同的随机化位序列可以用于对每个锁存器进行初始化。以下参照附图描述了其他示例。
附图说明
图1是一种包括可以被配置成用于使用具有多个值的位集对锁存器进行初始化的数据存储设备的系统的具体说明性实施例的框图;
图2是可以包括在图1的数据存储设备中的存储器管芯的一部分的说明性实施例的简图;
图3是可以包括在图1的数据存储设备中的存储器管芯的一部分的另一个说明性实施例的简图;以及
图4是一种操作图1的数据存储设备的方法的说明性实施例的流程图。
具体实施方式
由非易失性存储器使用的写入进程可以使用多阶段写入进程来将数据页写入非易失性存储器中。例如,写入进程可以包括(例如,由存储器控制器或由主机计算机)将写入操作码发送至存储器管芯。存储器管芯可以对页大小的易失性锁存器进行初始化以接收有待写入非易失性存储器中的数据。例如,所述初始化可以将锁存器的所有位设置为逻辑“1”状态或逻辑“0”状态。在一些实施方式中,对锁存器进行初始化是在将与数据相关联的目的地址发送至存储器管芯之后执行的。
存储器控制器或主机计算机可以发送执行所述写入操作的地址的一个或多个字节。所述地址可以包括两个元素:有待写入的页的标识(例如,管芯编号、管芯内的平面编号、平面内的块编号和/或块内的页编号)以及页内的起始位置的标识(例如,页内的字节编号,也被称为列编号)。在一些设备中,写入从页的起始处开始并且列编号为零。
存储器控制器或主机计算机可以将有待写入的数据字节序列发送至非易失性存储器。(在一些存储器中,总线宽度为16位(例如,两个字节或一个字),因此可以发送字序列而不是字节序列。)数据序列的长度可以对应于(例如,受限于)页内(由接收到的地址指定的)起始位置与页末尾之间的间隔量。
存储器管芯可以将传入数据字节插入到从由接收到的地址指定的列开始的所述初始化锁存器中。如果写入数据字节序列在到达锁存器的末尾之前结束(即,如果数据位长小于锁存器容量),则锁存器的末端保持为初始化状态。类似地,如果列编号大于零且插入并非从第一字节开始,则锁存器的头部保持为初始化状态。
在将数据插入初始化锁存器中之后,存储器控制器或主机计算机可以发送指示已经到达数据序列末尾并且将执行将数据编程到非易失性存储器单元阵列中的操作码。在一些情况中,编程可以在所有数据被插入锁存器中之前开始。存储器可以自主执行附加操作来将锁存器的内容存储到由所接收到的地址指定的页中(例如,使用存储器管芯的读/写电路来将锁存器的内容写入到存储器阵列的页中)。这种操作可以在二维(2D)存储器阵列或三维(3D)存储器阵列处执行。
为了方便展示,这个示例写入进程是针对将数据写入目标页内的连续位置中的情况进行描述的。在其他写入进程中,数据可以不必是完全连续的。例如,数据可以包括一个或多个间隙。在这种情况下,在一个或多个字节之后(例如,在连续字节的子序列之后),数据可以“跳转”或“跳过”页中的一个或多个字节,接着是另一个数据序列或子序列。为了简洁起见,虽然某些势力是参照“无间隙”情况进行描述的,应注意的是,在此描述的技术同样可适用于具有一个或多个“间隙”的数据序列。
一些电阻式随机存取存储器(ReRAM)设备通过相应的存储器单元被编程到低阻状态来表示逻辑值“1”并且通过相应的存储器单元被编程到高阻状态来表示逻辑值“0”。低阻状态中的单元相比高阻状态中的单元可以引起较高的泄露电流(当邻居单元被访问时)。因此,具有大量处于低阻状态中的ReRAM单元消耗功率。此外,当相邻单元具有公共值时,闪存可能倾向于产生干扰(以及因此产生数据读取误差)。因此,具有大量处于擦除状态或处于逻辑高状态中的单元可能降低闪存设备的性能(例如,通过引起干扰和读取误差)。
为了避免与将公共值编程到相邻存储器单元中相关联的高功率消耗或性能降低,存储器控制器或主机计算机可以在将数据编程到存储器单元阵列中之前将用户数据随机化(或进行扰码)。然而,即使在将用户数据随机化之后,对用户数据进行编程仍可以导致大量相邻存储元件具有公共状态,如当用户数据包括一个或多个“间隙”时。例如,如果锁存器的一部分被初始化为某状态(例如,逻辑“1”状态)并且不被写入操作更改(例如,由于用户数据中的“间隙”而不被用户数据覆写),那么多个相邻的存储器单元可以被编程为公共状态(例如,逻辑“1”状态)。相邻的存储器单元可以被包括在页的尾部部分中(如果用户数据在页的尾部之前结束)或者被包括在页的头部部分中(如果用户数据不在页的开头处开始)。在其他情况中,相邻存储器单元可以被包括在页的中间部分中(例如,如果在数据的中间存在“间隙”)。
一些存储器控制器将随机化“伪”数据插入用户数据内,从而使得用伪数据对页的未使用部分进行编程(而不是将公共状态编程到页的未使用部分中)。例如,可以用伪数据对页的未使用头部或尾部进行编程(而不是基于锁存器的初始化状态进行编程)。伪数据可以被锁存到锁存器中并且与用户数据一起被编程到非易失性存储器中。
伪数据的使用可以与附加复杂性相关联并且可以利用附加的处理资源、功率和/或硬件。进一步地,经由总线在存储器管芯与存储器控制器或主机计算机之间传送数据可以利用功率和传送时间。例如,表可以被传送至存储器管芯以用于存储在非易失性存储器处。所述表可以包括多个条目,每个条目包括512字节。每个条目可以占据一页,其中,页大小为4千字节(kB)。因此,针对被传送至存储器管芯的用户数据的每个字节,存储器控制器可以经由总线将8字节传送至存储器管芯(1字节用户数据和7字节伪数据),其可是无效的。因此,有用的是避免存储器控制器或主机计算机传送针对存储器的页的未使用部分的伪数据,同时仍使存储器单元的与所述未使用部分相对应的状态的“随机化”成为可能。
根据本公开,存储器管芯的输入锁存器被初始化为随机模式而不是完全相同的位模式。初始化为随机模式可以是“默认”选项,从而使得其针对每个写入操作默认地发生。替代性地,存储器管芯可以支持初始化为随机模式以及将所有位初始化为公共值(如,“1”)两者。例如,存储器控制器或主机计算机可以在初始化为随机模式与初始化为公共值之间进行选择。
可以使用一种或多种技术来执行两个选项之间的选择(即,在初始化为随机模式或初始化为公共值)。作为示例,每个选项可以与对应的写入操作码相关联。作为另一个示例,一个选项为选作默认,而另一个选项可以通过在写入操作码之前插入前缀来指定。作为另一个示例,存储器管芯可以存储全局标志,所述全局标志指示两个选项中的哪个选项当前有效。在这个示例中,针对每次写入操作,可以根据标志在发起写入操作时的状态来对锁存器进行初始化。命令可以由存储器控制器或主机计算机用来改变标志的状态。
根据本公开,存储在页的任何未写入部分(例如,页的头部部分或尾部部分)中的数据可以被随机化,而不要求将伪数据发送到存储器管芯中并且不消耗能量以及与传送伪数据相关联的时间。存储器管芯可以包括硬件和/或用于生成和/或用于存储有待插入输入锁存器中的随机位序列的指令。以下描述了一些示例用于说明而不旨在用于限制。
在第一示例中,预先确定的位模式可以维持在存储器管芯处。所述模式的大小可以等于页长,并且每当对输入锁存器进行初始化时,可以将所述模式复制到输入锁存器中。
在第二示例中,预先确定的随机位模式维持在存储器管芯处,并且所述模式的大小比页小。在这个示例中,每当对输入锁存器进行初始化时,可以多次将所述模式复制到输入锁存器中。例如,如果页大小为8kB,则存储器管芯可以储存2kB的预定模式并且可以将所述模式的四个副本加载到锁存器中。第二示例可以相比于第一示例保存存储器管芯的硅区域(因为较小的模式存储在存储器管芯处)。
在第三示例中,针对多级存储单元(MLC)存储器的不同逻辑页(例如,上部页、下部页和/或中间页)可以维持多个位模式。为了说明,在MLC存储器中,可能不期望的是使与公共字线相关联的不同逻辑页使用相同的预先确定的模式。因此,可以利用多个预先确定的模式,其中,每种模式用于特定的逻辑页(例如,用于上部页、用于下部页、或者用于中间页)。
为了进一步说明,结合每单元两位的存储器,一个模式可以与下部页相关联而另一种模式可以与上部页相关联。在这种情况下,存储器104可以具有每单元两位的MLC架构,写入操作可以用于将上部页或下部页写入存储器104中,并且位集116可以选自与上部页和下部页相关联的多个位集。针对每单元三位的存储器,第一模式可以与下部页相关联,第二模式可以与中间页相关联,而第三模式可以与上部页相关联。在这种情况下,存储器104可以具有每单元三位的MLC架构,写入操作可以用于将上部页、中间页或下部页写入存储器104中,并且位集116可以选自与上部页、中间页和下部页相关联的多个位集。
在第四示例中,多个不相关的模式用于存储器的字线。为了说明,在一些存储器中,不期望沿位线具有位值的相关性,因为相关的位值可能引起干扰以及其他不期望的效应。在这种情况下,针对所有字线使用单个预先确定的模式可能导致较差的性能。根据第四示例,可以使用彼此不相关的多个不同的预先确定的模式,其中,每个模式被分配给块的不同字线。在示例实施方式中,所述模式可以小于页大小,并且一个模式可以在锁存器内被复制多次,如参照第二示例所描述的。
在第五示例中,可以通过将仅几个模式存储在存储器中并在块中重复一个模式多次而减小模式的数量(以及因此存储模式的成本)。例如,如果块包含64个字线并且使用8个模式,那么第一模式可以用于字线0、8、16、24、32、40、48和56,第二模式用于字线1、9、17、25、33、41、49和57,等等。模式的数量可以足够大以避免相同模式的两个连续使用之间的相关性,从而避免存储器中不期望的效应。
在第六示例中,有待用在字线中的模式可以由存储器随机地或伪随机地选择。针对每次写入操作,可以从预先确定的模式列表中随机地选择一个模式。
在第七示例中,有待用在字线中的模式可以由存储器控制器或主机计算机选择。针对每次写入操作,可以由存储器控制器或主机计算机从预先确定的模式列表中选择模式。存储器控制器或主机计算机可以通过下发与对应不同模式相关联的多个写入操作码之一来指示所述选择,如通过将不同的前缀添加在写入命令之前、通过将参数添加到写入命令、通过控制指示当前使用模式的全局参数、或者通过任何其他技术。
在第八示例中,存储器可以避免存储预先确定的模式并且代替地存储器每写入命令生成新的随机模式。在这个示例中,可以响应于每个写入命令在存储器管芯处实时地随机地或伪随机地生成模式。
应注意的是,某些存储器可以包括内置板上扰码电路,所述扰码电路可以将存储在输入锁存器中的用户数据随机化或解除随机化,这与在将信息加载到输入锁存器中之前针对写入进程将输入锁存器初始化不同。存储器管芯内部的扰码和解除扰码比存储器控制器中的扰码和解除扰码要慢。例如,随机化通常是连续进程,其中,沿着页的前一位影响后一位的值,这在存储器管芯处实现会是复杂的。存储器管芯内的锁存器操作本质上可以是并行的(例如,将数据熊一个锁存器复制到另一个锁存器,这针对页中所有位可以是并行执行的)。存储器管芯内的扰码和解除扰码可以使用专用连续位处理,这可以使用大量的操作,如针对具有较长页长的页。如果扰码或解除扰码是在存储器控制器中执行的,那么所述操作可以实时地执行,同时数据被按顺序处理以用于其他目的。例如,在将数据移动到纠错编码模块并由纠错编码模块对其进行处理时可以对数据进行扰码,或者当从闪存总线按顺序检索数据时可以对数据解除扰码。此外,针对沿位线轴线将数据随机化的存储器,扰码可能变得更复杂并且在存储器控制器中比在存储器管芯中更好实现。因此,在存储器管芯处使用板上扰码和解除扰码以使锁存器处的数据随机化可能是低效的。根据本公开的锁存器初始化进程可以使用具有多个值的预定义位集(例如,随机化位序列)来使数据随机化并且可以避免较大的电路和复杂的操作来使数据随机化(如在一些板上扰码和解除扰码方案中)。
参照图1,描绘并总体上表征了100系统的说明性示例。系统100包括数据存储设备102和主机设备154。数据存储设备102和主机设备154可以经由连接(如总线或无线连接)操作性地耦合。数据存储设备102可以如根据美国联合电子器件工程委员会(JEDEC)固态技术协会通用闪存(UFS)配置而被嵌入在主机设备154内。替代性地,数据存储设备102可以从主机设备154拆卸(即,“可拆卸地”耦合至主机设备154)。作为示例,数据存储设备102可以根据可拆卸通用串行总线(USB)配置可拆卸地耦合至主机设备154。
数据存储设备102可以包括存储器管芯103和控制器130。存储器管芯103与控制器130可以经由一根或多根总线、一个或多个接口、和/或另一个结构耦合。接口可以是有线的(例如,总线结构)或者无线的(例如,无线通信接口)。尽管图1为了方便描绘了单个存储器管芯(存储器管芯103),应理解的是,数据存储设备102可以包括与存储器管芯103相对应的另一数量的存储器管芯(例如,两个存储器管芯、八个存储器管芯或者另一数量的存储器管芯)。进一步地,尽管图1展示数据存储式设备102包括控制器130,在其他实施方式中,存储器管芯103可以直接耦合至主机设备154(例如,主机设备154可以包括访问存储器管芯103的控制器或其他设备)。
存储器管芯103包括存储器104,如非易失性存储器。例如,存储器104可以包括闪存(如AND闪存)或电阻式存储器(如电阻式随机存取存储器(ReRAM)),如示例所展示的。存储器104可以具有三维(3D)存储器配置。作为示例,存储器104可以具有3D竖直位线(VBL)配置。在具体实施方式中,存储器104是非易失性存储器,具有单片地形成在具有布置在硅衬底上方的有效区域的存储器单元阵列的一个或多个物理层中的3D存储器配置。替代性地,存储器104可以具有另一个配置,如二维(2D)存储器配置或非单片3D存储器配置(例如,堆叠式管芯3D存储器配置)。
存储器104可以包括一个或多个存储元件(在此也被称为存储器单元)块,如存储元件的一个或多个擦除分组。块可以包括连接存储元件的多个位线和字线。为了说明,存储器104可以包括存储区域106,所述存储区域可以对应于存储元件的一个或多个块或者一个或多个字线,如示例所展示的。存储区域106可以包括多个存储元件,如代表性存储元件108。存储区域106的每个存储元件(例如,存储元件108)可以被编程为指示一个或多个位值的状态(例如,阈值电压或电阻状态)。
存储器管芯103可以进一步包括一个或多个锁存器(例如,一个或多个数据锁存器和/或一个或多个控制锁存器)。例如,存储器管芯103可以包括锁存器110。锁存器110可以对应于被配置成用于从控制器130接收针对存储器104的写入操作的信息的数据锁存器。锁存器110可以具有特定的存储大小或容量,其可以对应于存储器104的每个字线的存储大小。应注意的是,存储器管芯103可以包括多于一个的锁存器。例如,在MLC配置中,存储器管芯103可以包括两个锁存器(例如,针对每单元两位的实施方式)或者三个锁存器(例如,针对每单元三位的实施方式),如示例所展示的。在一些配置中,存储器管芯103的锁存器数量可以大于或小于每单元存储的位数量(例如,结合每单元三位的实施方式的四个锁存器,如示例所展示的)。锁存器110可以包括易失性存储元件,如,易失性随机存取存储器(RAM)存储元件。图1还展示了存储器管芯103可以进一步包括读/写电路112和初始化电路114。读/写电路112和初始化电路114可以耦合至锁存器110。
控制器130可以包括纠错码(ECC)引擎132和主机接口148。控制器130可以经由主机接口148耦合至主机设备154。
控制器130被配置成用于从主机设备154接收数据和指令并且用于将数据发送至主机设备154。例如,控制器130可以经由主机接口148从主机设备154接收数据并且可以经由主机接口148将数据发送至主机设备154。
控制器130被配置成用于将数据和命令发送至存储器104并且用于从存储器104接收数据。例如,控制器130被配置成用于发送数据和写入命令以使存储器104将数据存储于存储器104的指定地址。写入命令可以指定存储器104用来存储数据的一部分的物理地址。控制器130被配置成用于将读取数据命令发送至存储器104以从存储器104的指定地址访问数据。读取命令可以指定存储器104的一部分的物理地址。
ECC引擎132可以被配置成用于接收数据并且用于基于所述数据生成一个或多个ECC码字。ECC引擎132可以包括汉明(Hamming)编码器、里德所罗门(Reed-Solomon)(RS)编码器、博斯-查德胡里-霍昆格母(Bose-Chaudhuri-Hocquenghem)(BCH)编码器、低密度奇偶校验(LDPC)编码器、turbo编码器、被配置成用于根据一个或多个其他ECC方案来对数据进行编码的编码器、或其组合。ECC引擎132可以被配置成用于对从存储器104存取的数据的进行解码。例如,ECC引擎132可以被配置成用于对从存储器104存取的数据的进行解码以检测并校正可能存在与数据中的一个或多个误差,直到特定ECC方案的误差校正容量。ECC引擎132可以包括汉明解码器、RS解码器、BCH解码器、LDPC解码器、turbo解码器、被配置成用于根据一个或多个其他ECC方案来对数据进行解码的解码器、或其组合。
在具体实施例中,数据存储设备102包括被配置成用于对有待写入存储器104中的数据的值进行“扰码”的扰码器。扰码器可以被包括在控制器130或存储器管芯103中,如示例所展示。例如,控制器130可以包括在控制器130将数据发送至存储器管芯103以用于存储之前对数据进行扰码的扰码器。作为另一个示例,存储器管芯103可以包括在将数据锁存到锁存器110处之后对数据进行扰码的扰码器。
主机设备154可以对应于移动电话、计算机(例如,膝上计算机、平板计算机或笔记本计算机)、音乐播放器、视频播放器、游戏设备或控制台、电子书阅读器、个人数字助理(PDA)、便携式导航设备、另一个电子设备、或其组合。主机设备154经由主机控制器进行通信,其可以使主机设备154与数据存储设备102进行通信。主机设备154可以按照JEDEC固态技术协会工业规范来操作,如嵌入式多媒体卡(eMMC)规范或者通用闪存(UFS)主机控制器接口规范。主机设备154可以按照一个或多个其他规范来操作,如安全数字(SD)主机控制器规范,如示例所展示的。替代性地,主机设备154可以根据另一种通信协议与数据存储设备102进行通信。
在操作进程中,控制器130可以接收数据150并请求从主机设备154对存储器104进行写访问。控制器130可以将数据150输入到ECC引擎132。ECC引擎132可以对数据150进行编码以生成信息122(例如,一个或多个ECC码字)。
在将信息122发送至存储器管芯103以用于存储在存储器104处之前,数据存储设备102可以发起初始化进程。初始化电路114可以被配置成用于执行初始化进程以对锁存器110进行初始化。例如,初始化电路114可以被配置成用于将位集116加载到锁存器110。位集116至少包括具有第一值的第一位以及有与所述第一值不同的第二值的第二位。例如,位集116可以包括一个或多个逻辑“0”位并且可以进一步包括一个或多个逻辑“1”位。
位集116可以是随机或伪随机位序列,所述位序列是在接收信息122之前(以及在将与命令120相关联的数据(如,信息122)写入存储器104之前)从存储器管芯103检索到的或者由存储器管芯103生成的。在这种情况中,位集116可以包括逻辑“0”位和逻辑“1”位的随机或伪随机安排。位集116可以是从存储器104或者从存储器管芯103的另一个位置检索到的,如存储位集116的只读存储器(ROM)(未在图1中示出)。例如,初始化电路114可以被配置成用于(在将位集116加载到锁存器110之前)从存储器管芯103检索位集116并且用于在检索位集116之后将位集116加载到锁存器110。在接收与写入操作相关联的信息之前,位集116可以对应于锁存器110的“默认”状态,并且在写入操作之前,初始化电路114可以将锁存器110初始化为“默认”状态。
初始化电路114可以被配置成用于响应于从控制器130接收命令120而执行初始化进程。命令120指示将信息122写入存储器104的写入进程将要发生。例如,命令120可以指示写入进程被调度以发生并且存储器管芯103用于对锁存器110进行初始化以接收信息122。命令120可以指示与用于将信息122写入存储器104的写入操作相关联的地址(例如,存储器104的页的物理地址,如,与页相关联的页索引)。替代性地或另外地,命令120可以指示于写入操作相关联的写入操作码。
初始化电路114可以被配置成用于检测命令120(例如,通过检测地址和/或写入操作码)并且用于在接收信息122之前使用位集对锁存器110进行初始化。根据具体的实施方式,可以使用可以基于特定应用选择的特定结构和操作来执行初始化进程。以下描述了初始化进程的某些示例来进行说明。应理解的是,所述示例是说明性的并且不旨在为详尽或限制性的。
根据第一示例,位集116具有等于与存储器104的页相关联的页长的位长(即,位数量)。例如,存储器104的每个字线的存储大小可以与页长相关联(即,可以被配置成用于存储具有页长的页)。在这个示例中,信息122可以对应于有待写入存储器104中的单页,并且位集116和信息122可以具有公共位长。
根据第二示例,位集116包括特定位模式的多个副本,并且所述特定位模式具有小于与存储器104相关联的页长的位长。在这个示例中,初始化电路114可以被配置成用于将特定位模式“复制”正数n次,以产生位集116。为了说明,如果页长(或字线大小)等于正整数x位数并且特定位模式的位长等于x/n,那么初始化电路114可以被配置成用于将特定的位模式复制(例如,串联)n次,以产生位集116。
在其他示例中,数据存储设备102被配置成用于存储多个位集。例如,存储器管芯103可以可选地存储除了位集116之外的第二位集117和第三位集118。位集116、117和118中的每一个位集可以包括不同的(例如,唯一的)位序列。位集117可以至少包括具有第一值的第一位以及有与所述第一值不同的第二值的第二位。例如,位集117可以包括一个或多个逻辑“0”位并且可以进一步包括一个或多个逻辑“1”位。位集118可以至少包括具有第一值的第一位以及有与所述第一值不同的第二值的第二位。例如,位集118可以包括一个或多个逻辑“0”位并且可以进一步包括一个或多个逻辑“1”位。存储器管芯103可以被配置成用于在位集116、117与118之间进行选择,如以下附加示例进一步所述。
根据第三示例,存储器104具有MLC架构,并且信息122包括上部页、中间页和/或下部页。例如,如果存储器104具有每单元两位的架构,则信息122可以包括两个逻辑页(上部页和中间页)。所述两个逻辑页可以被写入存储器104的公共字线中。作为另一个示例,如果存储器104具有每单元三位的架构,则信息122可以包括三个逻辑页(上部页、中间页和下部页)。所述三个逻辑页可以被写入存储器104的公共字线中。初始化电路114可以被配置成用于从在存储器管芯103处存储的多个位集中选择位集116。所述多个位集可以包括与上部页相对应的第一位集(例如,位集116,所述位集可以对第一锁存器进行初始化以接收信息122的上部页)、与下部页相对应的第二位集(例如,位集117,所述位集可以对第二锁存器进行初始化以接收信息122的中间页)和/或与中间页相对应的第三位集(例如,位集118,所述位集可以对第三锁存器进行初始化以接收信息122的下部页)。替代性地,公共锁存器可以用于下部页、上部页和中间页,在每种情况下利用不同的位集(例如,位集116、位集117或位集118)对其进行初始化。
根据第四示例,命令120指示存储器104的地址,并且初始化电路114被配置成用于基于由命令120指示的地址从多个位集中选择位集116。为了说明,地址可以包括指示存储器104的特定块内的特定页(例如,存储元素的字线分组)的页索引。特定块可以对应于存储区域106或者存储器104的另一个区域。块的每一页可以与多个位集中的对应位集(例如,块的k页的正整数k个位集之一)相关联。在这种情况下,初始化电路114可以被配置成用于基于页索引从位集中进行选择。在存储器管芯103的3D存储器实施方式中,块的每一页可以与存储器管芯103的不同“层级”(例如,距存储器管芯103的衬底的距离)相关联。
根据第五示例,多个位集对应于特定块的页子集(例如,而不是如在第四示例中位集与页的一一对应关系)。在这种情况中,所述多个位集可以包括针对存储器104的相应页所保留的位集。例如,所述多个位集包括针对与第一页索引集相关联的第一页子集保留的第一位集并且可以进一步包括针对与第二页索引集相关联的第二页子集保留的第二位集。例如,所述第一集可以包括与偶数编号的索引相关联的页并且所述第二集可以包括与奇数编号的索引相关联的页,如示例所展示的。
根据第六示例,初始化电路114被配置成用于响应于接收命令120而从多个位集当中随机地或伪随机地选择位集116。在说明性实施方式中,初始化电路114可以包括被配置成用于生成号数的伪随机数生成器(PRNG)。初始化电路114可以基于所述编码选择多个位集之一。
根据第七示例,命令120包括从多个位集当中标识位集116的指示。在这种情况下,控制器130(或主机设备154)可以选择位集116。初始化电路114可以被配置成用于基于所述指示从多个位集中选择位集116。根据具体实施方式,指示(以及命令120)可以或者从控制器130或者从主机设备154中接收。
根据第八示例,初始化电路114被配置成用于响应于接收命令120而随机地或伪随机地生成位集。在这个示例中,初始化电路114可以包括PRNG,所述PRNG被配置成用于响应于接收命令120而随机地或伪随机地生成位集116。
在任何前述示例中,初始化电路114可以被配置成用于响应于接收命令120通过将位集116加载到锁存器110中而对锁存器110进行初始化。在初始化电路114将锁存器110初始化之后(例如,在完成初始化进程之后),控制器130可以在存储器管芯103处发起写入操作。例如,存储器管芯103可以将指示锁存器110准备好接收信息(例如,指示初始化进程完成)的消息(例如,采用“读取”信号形式)发送至控制器130。在其他实施方式中,控制器130可以查询存储器管芯103初始化进程是否完成,或者控制器130可以在发送命令120之后特定时间段(例如,在发送命令120之后特定数量的时钟周期)发起写入操作。控制器130可以通过将信息122发送至存储器管芯103而发起写入操作。信息122可以在锁存器110中覆写位集116的至少一部分(例如,通过更改存储在锁存器110中的位集116的一个或多个值)。
在存储器管芯103接收信息122之后,读/写电路112可以将来自锁存器110的信息122(或信息122的表示)存储到存储器104中。例如,信息122可以存储在存储区域106处。在信息122在锁存器110处被接收之后以及在信息122在锁存器110处覆写位集116的至少一部分之后,读/写电路112可以将信息122存储在存储设备106处。存储器管芯103可以将指示写入操作的状态(例如,写入操作成功时的通过状态或者写入操作不成功时(如在供电中断或其他错误情况下)的失败状态)的状态信号返回至控制器130。
在一些实施方式中,具有多个值的位集(例如,位集116)用于针对存储器104的每次写入操作对锁存器110进行初始化。在其他实施方式中,可以在一个或多个具有不同值的位集与具有公共值的位集(例如,“0”位集或“1”位集)之间进行选择,利用其对锁存器110进行初始化。例如,存储器管芯103可以存储(除了位集116之外的)第二位集,第二位集中的每一位具有公共值。针对每个写入操作,可以在位集116与第二位集之间进行选择。例如,第一写入操作码可以由控制器130(或者由主机设备154)下发以指导初始化电路114使用位集116,并且第二写入操作码可以由控制器130(或者由主机设备154)下发以指导初始化电路114使用第二位集。作为另一个示例,初始化电路114可以被配置成用于响应于写入操作码使用默认位集116,并且可以响应于写入操作码的修改(例如,如果在写入操作码之前插入前缀)来选择第二位集。作为另一个示例,存储器管芯103可以存储指示位集116或第二位集是否有待被用来对锁存器110进行初始化的全局标志。在这个示例中,针对每次写入操作,可以基于标志在发起写入操作时的值来对锁存器110进行初始化。控制器130(或者主机设备154)可以被配置成用于调整标志的值(例如,通过将指示标志的值或者指示标志的值变化的命令)。
图1的示例可以使能够通过减小或避免将公共值编码给存储器104的相邻存储元件而减小存储器104处的泄漏电流和/或干扰效应。例如,如果信息122的位长小于锁存器110的存储大小,则当将信息122被加载到锁存器110中时可能存在“间隙”。使用具有多个值的位集(例如,使用位集116)对锁存器110进行初始化可以减小或消除“间隙”导致将公共值序列编程到存储器104的可能性,因此减小存储器104处的泄漏电流和/或读取干扰效应。
尽管图1的某些方面为了方便被单独地描述,应理解的是,本领域技术人员可以基于特定的应用将一些示例进行组合。为了说明,针对每个锁存器,可以通过多次将位模式复制到锁存器中而对第二示例和第三示例进行组合(如果位模式具有小于锁存器的存储大小的位长)。因此,在这个示例中,针对每个锁存器可以使用不同的位模式来进行MLC写入操作,并且每个位模式可以多次被复制到锁存器中。可以在不背离本公开的范围的情况下做出各种组合和修改。
图2展示了具有NAND闪存配置的存储器管芯200的一部分。存储器管芯200可以包括在图1的数据存储设备102中。例如,存储器管芯200可以对应于图1的存储器管芯103。存储器管芯200可以耦合至图1的控制器130(或者至图1的主机设备154)。
存储器管芯200包括初始化电路202、读/写电路204以及一个或多个锁存器(例如,锁存器205)。初始化电路202可以被配置成用于使用具有多个值的位集203来对锁存器205进行初始化以用于写入操作。初始化电路202可以对应于图1的初始化电路114,读/写电路204可以对应于图1的读/写电路112,并且锁存器205可以对应于图1的锁存器110。位集203可以对应于图1的位集116、117和118中任何一个。
存储器管芯200包括多个物理层,如,物理层290分组。所述多个物理层单片地形成在衬底294(如,硅衬底)上方。存储元件(例如,存储器单元),如代表性存储器单元210被安排在物理层阵列中。
代表性存储器单元210包括在字线/控制栅(WL4)228与传导通道212之间的电荷俘获结构214。电荷可以经由传导通道212相对于字线228的偏置而被注入电荷俘获结构214中或者从电荷俘获结构214排除。例如,电荷俘获结构214可以包括氮化硅并且可以通过栅极介质(如,氧化硅)与字线228和传导通道122分开。电荷俘获结构214中的电荷量影响在存储器单元210的读取操作进程中通过传导通道212的电流量并且指示存储在存储器单元210中的一个或多个位值。
存储器管芯200包括多个擦除块,包括第一块(块0)250、第二块(块1)252和第三块(块2)254。每个块250-254包括物理层290的“竖直切片”,所述竖直切片包括字线堆叠,被展示为第一字线(WL0)220、第二字线(WL1)222、第三字线(WL2)224、第四字线(WL3)226和第五字线(WL4)228。多个传导通道(关于图2具有基本上竖直的取向)延伸穿过字线堆叠。每个传导通道耦合至每个字线220-228中的存储元件,形成存储元件的AND串。为了说明简洁性,图2展示了三个块250-254、每个块中的五个字线220-228以及每个块中的三个传导通道。然而,存储器管芯200可以具有多于三个块,每个块多于五个字线、并且每个块多于三个传导通道。
读/写电路204经由多根传导线耦合至传导通道,被展示为在传导通道的(例如,更远离衬底294的)“顶”端处的第一位线(BL1)232、第二位线(BL2)234和第三位线(BL2)234以及在传导通道的(例如,更靠近衬底294或在衬底294内的)“底”端处的第一源线(SL0)240、第二源线(SL1)242和第三源线(SL2)244。读/写电路204被展示为经由“P”控制线耦合至位线230-234、经由“M”控制线耦合至源线240-244、并且经由“N”控制线耦合至字线220-228。P、M和N中的每一者基于存储器管芯200的特定配置可以具有正整数值。在图2的说明性示例中,P=3、M=3且N=5。
在具体实施例中,每一根位线与每一根源线可以耦合至不同传导通道的同一端(例如,顶端或底端)。例如,特定的位线可以耦合至传导通道292的顶部并且特定的源线可以耦合至传导通道212的顶部。传导通道292的底部可以耦合(例如,电耦合)至传导通道212的底部。因此,传导通道292和传导通道212可以串联地耦合并且可以耦合至特定的位线和特定的源线。
在读取操作进程中,图1的控制器130可以接收来自主机设备(如,图1的主机设备154)的请求。控制器130可以通过将适当的信号施加到控制线而使读/写电路204从存储器管芯200的特定存储元件读取位,从而使所选字线的存储元件被感测到。因此,存储器管芯200可以被配置成用于从一个或多个存储元件读取数据并将数据写入一个或多个存储元件。
在写入操作进程中,图1的控制器130可以接收来自主机设备(如,图1的主机设备154)的请求。所述请求可以包括有待写入存储器管芯200的存储元件处的数据(例如,图1的数据150)。控制器130可以将命令发送至存储器管芯200,以使存储器管芯200被初始化用于写入操作。例如,控制器130可以将命令120发送至存储器管芯200,并且命令120可以使初始化电路202将一个或多个位集(例如,位集203)加载到锁存器205中。
在初始化电路202将锁存器205初始化之后,控制器130可以将数据(例如,信息122)发送至存储器管芯200以写入存储器管芯200的存储元件中。例如,控制器130可以通过在锁存器205中用数据覆写位集203而将数据锁存到锁存器205中。
读/写电路204可以被配置成用于访问锁存器205中的数据并且用于将数据编程到存储器管芯200的存储元件中。例如,读/写电路204可以被配置成用于将选择信号施加到与字线220-228、位线230-234、和源线240-242耦合的控制线,从而使编程电压(例如,电压脉冲或电压脉冲序列)施加在所选字线(例如,第四字线228,如示例所展示的)的一个或多个所选存储元件的两端。
图3展示了具有ReRAM配置的存储器管芯300的一部分。存储器管芯300可以包括在图1的数据存储设备102中。例如,存储器管芯300可以对应于图1的存储器管芯103。存储器管芯300可以耦合至图1的控制器130(或者至图1的主机设备154)。
存储器管芯300包括初始化电路302、读/写电路304以及一个或多个锁存器(例如,锁存器305)。初始化电路302可以被配置成用于使用具有多个值的位集303来对锁存器305进行初始化以用于写入操作。初始化电路302可以对应于图1的初始化电路114,读/写电路304可以对应于图1的读/写电路112,并且锁存器305可以对应于图1的锁存器110。位集303可以对应于图1的位集116、117和118中任何一个。
在图3的示例中,存储器管芯300包括在衬底上方(例如,基本上平行于衬底的表面)的物理层中具有多根传导线的竖直位线(VBL)ReRAM,如代表性字线320、321、322和323(图3中仅示出其一部分)以及穿过物理层的多根竖直传导线,如代表性位线310、311、312和313。字线322可以包括或者对应于第一物理层分组,并且字线320、321可以包括或者对应于第二物理层分组。
存储器管芯300还包括多个基于电阻的存储元件(例如,存储器单元),如代表性存储元件330、331、332、340、341和342。存储元件330、331、332、340、341和342中的每一个存储元件与衬底(例如,硅衬底)上方的多个物理层中的存储器单元阵列中的位线和字线相耦合(或相关联)。
在图3的示例中,每根字线包括多个指状物。为了说明,字线320包括指状物324、325、326和327。每个指状物可以耦合至多于一根字线。例如,字线320的指状物324经由指状物324的第一端处的存储元件330耦合至位线310,并且指状物324经由指状物324的第二端处的存储元件340进一步耦合至位线311。
在图3的示例中,每根位线可以耦合至多于一根字线。为了说明,位线310经由存储元件330耦合至字线320,并且字线310经由存储元件332进一步耦合至字线322。
在写入操作进程中,图1的控制器130可以接收来自主机设备(如,图1的主机设备154)的数据(例如,图1的数据150)。控制器130可以将命令发送至存储器管芯300,以使存储器管芯300被初始化用于写入操作。例如,控制器130可以将命令120发送至存储器管芯300,并且命令120可以使初始化电路302将一个或多个位集(例如,位集303)加载到锁存器305中。
在初始化电路302将锁存器305初始化之后,控制器130可以将数据(例如,信息122)发送至存储器管芯300以写入存储器管芯300的存储元件中。例如,控制器130可以通过在锁存器305中用数据覆写位集303而将数据锁存到锁存器305中。
读/写电路304可以被配置成用于访问锁存器305中的数据并且用于将数据编程到与数据的目的地相对应的存储元件中。例如,读/写电路304可以将选择信号施加到耦合至字线驱动器308和位线驱动器306的选择控制信号线,从而使写入电压被施加到所选存储元件的两端。作为说明性示例,为了选择存储元件330,读/写电路304可以激活字线驱动器308和位线驱动器306,以驱使编程电流(也被称为写入电流)通过存储元件330。为了说明,第一写入电流可以用于将第一逻辑值(例如,与高阻状态相对应的值)写入存储元件330,而第二写入电流可以用于将第二逻辑值(例如,与低阻状态相对应的值)写入存储元件330。可以通过将第一电压施加到位线310以及到除了字线320之外的字线并且通过将第二电压施加到字线320通过生成存储元件330两端的编程电压而施加编程电流。在具体实施例中,第一电压被施加到其他位线(例如,位线314、315),以减小存储器管芯300中的泄漏电流。
在读取操作进程中,控制器130可以接收来自主机设备(如,图1的主机设备154)的请求。控制器130可以将指定存储器管芯300的一个或多个物理地址的命令下发至存储器管芯300。
存储器管芯300可以使读/写电路304从存储器管芯300的特定存储元件读取位,如,通过将选择信号施加到耦合至字线驱动器308和位线驱动器306的选择控制信号线,从而使写入电压被施加到所选存储元件的两端。例如,为了选择存储元件330,读/写电路304可以激活字线驱动器308和位线驱动器306,以将第一电压(例如,0.7伏(V))施加到位线310以及到除了字线320之外的字线。可以对字线320施加较低的电压(例如,0V)。因此,读取电压被施加于存储元件330两端,并且可以在读/写电路304的感测放大器处检测到与读取电压相对应的读取电流。读取电流(经由欧姆定律)对应于存储元件330的电阻状态,所述电阻状态对应于存储在存储元件330处的逻辑值。从存储元件330读取的逻辑值以及在读取操作进程中读取的其他元素可以(例如,经由锁存器305)被提供给图1的控制器130。
参照图4,描绘并总体上表征了400方法的说明性示例。方法400可以在包括存储器管芯(例如,存储器管芯103、200和300中任一个)的数据存储设备(例如,数据存储设备102)处被执行。存储器管芯可以包括存储器(例如,存储器104)和锁存器(例如,锁存器110、205和305中的任一个)。
方法400可以包括:在402,接收与将信息写入存储器中的写入操作相对应的命令。例如,命令可以对应于命令120,所述命令可以使图1的初始化电路114发起或执行初始化进程。
方法400可以进一步包括:在404,在于存储器管芯处接收所述信息之前,将位集加载到锁存器中。所述位集至少包括具有第一值的第一位以及具有与所述第一值不同的第二值的第二位。例如,位集可以对应于图1的位集116、117和118中任何一个。
方法400可以进一步包括:在406,在存储器管芯处接收信息。例如,存储器管芯103可以接收来自图1的控制器130的信息122。可以结合将信息122写入存储器104中的写入操作来接收信息122。
方法400可以进一步包括:在408,用所述信息在锁存器处覆写位集的至少一部分。例如,信息122可以存储在锁存器110处,并且信息122可以在锁存器110处覆写位集116的一个或多个值。覆写位集116的一个或多个值可以包括基于信息122的一个或多个位来更改位集116的一个或多个位值,如通过将位集116的一个或多个“0”位改变为信息122的一个或多个“1”位。替代性地或另外地,覆写位集116的一个或多个值可以包括将位集116的一个或多个“1”位改变为信息122的一个或多个“0”位。在将信息122加载到锁存器110之后,存储器管芯103可以将信息122编程到存储器104中,如,通过使读/写电路112将存储在锁存器110中的值写入存储器104的存储元件中(例如,基于由命令120指示的物理地址)。
图4的示例展示了可以通过将位集(例如,预定的随机化位序列)加载到锁存器中来将锁存器初始化以用于写入进程。方法400可以用于将信息“随机化”,同时避免在控制器与存储器之间发送大量“伪”数据。方法400还可以使存储器能够减少或避免存储器上的扰码操作,同时仍促进被编程到存储器中的数据的“随机化”。
尽管在此描述的控制器130和某些其他部件被展示为块部件并采用一般术语描述,但这些部件可以包括一个或多个微处理器、状态机和/或其他电路,所述其他电路被配置成用于使数据存数设备102(或者其一个或多个部件)执行在此所描述的操作。在此所描述的部件可以使用一个或多个节点、一根或多根总线(例如,数据总线和/或控制总线)、一个或多个其他结构或者其组合来彼此操作性地耦合。在此所描述的一个或多个部件(例如,初始化电路114)可以包括一个或多个物理部件,如,硬件控制器、状态机、逻辑电路、一个或多个其他结构或者其组合,以便使数据存储设备102执行在此所描述的一个或多个操作。
替代性地或另外地,可以使用微处理器或被编程(例如,通过执行指令)为用于执行在此所描述的操作(如,图4的方法400的一个或多个操作)的微控制器来实现数据存储设备102的一个或多个方面。可以使用执行指令的处理器来实现参照初始化电路114所描述的一个或多个操作。在具体实施例中,数据存储设备102包括用于执行从存储器104中检索的指令(例如,固件)的处理器。替代性地或另外地,由处理器执行的指令可以从分离的存储器位置中检索出来,所述分离的存储器位置不是存储器104的一部分,如,在只读存储器(ROM)处。
还应注意的是,可以如使用固件更新或其它更新来修改数据存储设备102的某些特性。为了说明,当操作数据存储设备102时,数据存储设备102的物理特性可以改变(例如,存储器104的存储元件可以经历物理退化或磨损)。物理特性的改变可以导致数据存储设备102的不同操作,如增加泄漏电流。可以如通过增加用于对图1的锁存器110进行初始化的位集的数量(例如,使用四个或五个或更多位集来进一步降低存储器104的存储元件之间的值的相关性)来更新(例如,经由固件更新)在此所描述的技术。
应理解的是,可以在存储器104处执行如由控制器130执行的在此所描述的一个或多个操作。作为说明性示例,替代性地或另外地在控制器130处执行这些操作,可以在存储器管芯103处执行“存储器中的”ECC操作。
数据存储设备102可以被附接到或嵌入一个或多个主设备内,如,主通信设备(例如,主设备154)的外壳内。例如,数据存储设备102可以被集成到装置内,如,移动电话、计算机(例如,膝上计算机、平板计算机或笔记本计算机)、音乐播放器、视频播放器、游戏设备或控制台、电子书阅读器、个人数字助理(PDA)、便携式导航设备或使用内部非易失性存储器的其他设备。然而,在其他实施例中,可以在便携式设备中实现数据存储设备102,所述便携式设备被配置成用于选择性地耦合到一个或多个外部设备,比如,主机设备154。
为了进一步说明,数据存储设备102可以被配置成用于耦合到主机设备154作为嵌入存储器,如,结合嵌入式多媒体卡(佛吉尼亚州,阿灵顿市,JEDEC固态技术协会商标)配置,如示例所展示的。数据存储设备102可以对应于eMMC设备。作为另一个示例,数据存储设备102可以对应于存储器卡,如安全数字卡、微卡、卡(特拉华州,威明顿市,SD-3C LLC商标)、卡(佛吉尼亚州,阿灵顿市,JEDEC固态技术协会商标)、或者(CF)卡(加利福尼亚,苗必达市,闪迪(SanDisk)公司商标)。数据存储设备102可以按照JEDEC工业规范来操作。例如,数据存储设备102可以按照JEDEC eMMC规范、JEDEC通用快闪存储(UFS)规范、一个或多个其他规范或者其组合来操作。
存储器104可以包括三维(3D)存储器,如,电阻式随机存取存储器(ReRAM)、闪存(例如,AND存储器、NOR存储器、单级单元(SLC)闪存、多级存储单元(MLC)闪存、经划分的位线NOR(DINOR)存储器、AND存储器、高电容性耦合比(HiCR)设备、非对称性非接触式晶体管(ACT)设备或另一个闪存)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、一次性可编程存储器(OTP)或其组合。替代性地或另外地,存储器104可以包括另一类型的存储器。存储器104可以包括半导体存储器设备。
半导体存储器设备包括易失性存储器设备(如动态随机存取存储器(“DRAM”)或静态随机存取存储器(“SRAM”))、非易失性存储器设备(如电阻式随机存取存储器(“ReRAM”)、电可擦除可编程只读存储器(“EEPROM”)、闪存(其还可以被考虑为EEPROM的子集)、铁电随机存取存储器(“FRAM”))、以及能够存储信息的其他半导体元件。每种类型的存储器设备可以具有不同的配置。例如,闪存设备可以被配置成NAND或NOR配置。
存储器设备可由无源和/或有源元件以任何组合来形成。通过非限制性示例的方式,无源半导体存储器元件包括ReRAM设备元件,在一些实施例中,所述元件包括如反熔丝相变材料等电阻率切换存储元件以及(可选地)如二极管等操控元件。进一步通过非限制性示例的方式,有源半导体存储器元件包括EEPROM和闪存设备元件,在一些实施例中,所述元件包括如浮栅、导电纳米颗粒、或电荷存储介电材料等包含了电荷存储区域的元件。
多个存储器元件可以被配置为使得它们串联或使得每个元件是可单独访问的。通过非限制性示例的方式,NAND配置(NAND存储器)中的闪存设备通常包含串联的存储器元件。NAND存储器阵列可以被配置为使得阵列包括多个存储器串,其中,串包括共享单个位线并作为群组被访问的多个存储器元件。替代性地,存储器元件可以被配置为使得每一个元件是可单独访问的(例如,NOR存储器阵列)。NAND和NOR存储器配置是示例性的,并且存储器元件可以以其他方式配置。
位于基板内和/或上方的半导体存储器元件可以被安排在两个或三个维度(如二维存储器结构或三维存储器结构)中。在二维存储器结构中,半导体存储器元件被安排在单个分组或单个存储器设备级中。通常,在二维存储器结构中,存储器元件被安排在基本上平行于支撑存储器元件的基板的主要表面而延伸的平面中(例如,在x-z方向平面中)。基板可以是在其上方或在其中形成存储器元件层的晶片,或者其可以是在形成存储器元件之后附接至其上的载体基板。作为非限制性示例,基板可以包括如硅等半导体。
可以在单个存储器设备级中将存储器元件安排成有序阵列,如在多个行和/或列中。然而,可以在非规则或非正交配置中排列存储器元件。存储器元件中的每个存储器元件可以具有两个或更多个电极或接触线,如位线和字线。
三维存储器阵列被安排成使得存储器元件占据多个平面或多个存储器设备级,由此在三个维度(即,在x方向、y方向和z方向上,其中,y方向基本上垂直于并且x和z方向基本上平行于基板的主表面)中形成结构。作为非限制性示例,三维存储器结构可以被垂直地安排成多个二维存储器设备级的堆叠。作为另一个非限制性示例,三维存储器阵列可以被安排成多个垂直列(例如,基本上垂直于基板的主表面延伸的列,即,在y方向上),每列在每列中具有多个存储器元件。可以在二维配置中(例如,在x-z平面中)安排所述列,导致存储器元件的三维安排,元件位于多个垂直堆叠的存储器平面上。存储器元件在三个维度中的其他配置也可以构成三维存储器阵列。
通过非限制性示例的方式,在三维NAND存储器阵列中,存储器元件可以被耦合在一起,以便在单个水平(例如,x-z)存储器设备级内形成NAND串。替代性地,存储器元件可以被耦合在一起,以便形成横跨多个水平存储器设备级的垂直NAND串。可以设想其他三维配置,其中,一些NAND串包含单个存储器级中的存储器元件,而其他串包含跨越多个存储器级的存储器元件。还可以在NOR配置中和在ReRAM配置中设计三维存储器阵列。
通常,在单片式三维存储器阵列中,在单个基板上方形成一个或多个存储器设备级。可选地,单片式三维存储器阵列还可以具有至少部分地位于单个基板内的一个或多个存储器层。作为非限制性示例,基板可以包括如硅等半导体。在单片式三维阵列中,构成阵列的每个存储器设备级的层通常在阵列的基础存储器设备级的层上形成。然而,单片式三维存储器阵列的邻近存储器设备级的层可以被共享或在存储器设备级之间存在中间层。
替代性地,二维阵列可以被单独地形成并且然后被封装在一起,以便形成具有多个存储器层的非单片式存储器设备。例如,非单片式堆叠存储器可以通过在单独的基板上形成存储器级然后将存储器级堆叠在彼此顶上来构造。可以减薄基板或者可以在堆叠之前将其从存储器设备级中移除,但是因为存储器设备级最初地在单独的基板上方形成,所以所产生的存储器阵列不是单片式三维存储器阵列。此外,多个二维存储器阵列或三维存储器阵列(单片式或非单片式)可以在单独的芯片上形成然后被封装在一起,以便形成堆叠芯片存储器设备。
存储器元件的操作以及与存储器元件的通信通常需要相关联的电路。作为非限制性示例,存储器设备可以具有用于控制和驱动存储器元件完成如编程和读取等功能的电路。此相关联的电路可以位于与存储器元件相同的基板上和/或位于单独的基板上。例如,用于存储器读-写操作的控制器可以位于单独的控制器芯片上和/或位于与存储器元件相同的基板上。
本领域的技术人员将意识到,本公开不限于所描述的二维和三维示例性结构,但涵盖了如此处描述的本公开的精神和范围内的和如本领域的技术人员理解的所有相关存储器结构。在此描述的实施例的说明旨在提供各实施例的总体理解。其它实施例可以被利用并且从本公开中导出,从而使得可以在不背离本公开的范围的情况下进行结构和逻辑替代和变化。本公开旨在涵盖各实施例的任何和所有随后的适配物或者变体。本领域技术人员将认识的是,这种修改是在本公开的范围内。
以上所公开的主题将被认为是说明性的而非限制性的,并且所附权利要求书旨在涵盖所有这种修改、增强以及落入本公开范围内的其他实施例。因此,在法律所允许的最大程度上,本发明的范围将由以下权利要求书及其等效物的最宽泛的可允许的解释来确定,并且不应被前述详细说明书约束或限制。
Claims (34)
1.一种方法,包括:
在包括存储器管芯的数据存储设备中,其中,所述存储器管芯包括存储器和锁存器,在所述存储器管芯处执行以下操作:
接收与将信息写入所述存储器中的写入操作相对应的命令;
在于所述存储器管芯处接收所述信息之前,将位集加载到所述锁存器中,其中,所述位集至少包括具有第一值的第一位以及具有与所述第一值不同的第二值的第二位;
在所述存储器管芯处接收所述信息;以及
用所述信息在所述锁存器处覆写所述位集的至少一部分。
2.如权利要求1所述的方法,其中,所述位集包括随机的或伪随机的位序列。
3.如权利要求1所述的方法,其中,所述位集是从所述存储器管芯检索到的。
4.如权利要求1所述的方法,其中,所述位集具有等于与所述存储器的页相关联的页长的位长。
5.如权利要求1所述的方法,其中,所述位集包括特定位模式的多个副本,其中,所述特定位模式具有小于与所述存储器相关联的页长的位长。
6.如权利要求1所述的方法,其中,所述存储器具有每单元三位的多级存储单元架构,其中,所述写入操作用于对上部页、中间页或下部页进行写入,并且其中,所述位集选自与上部页、中间页和下部页相关联的多个位集。
7.如权利要求1所述的方法,其中,所述存储器具有每单元两位的多级存储单元架构,其中,所述写入操作用于对上部页或下部页进行写入,并且其中,所述位集选自与上部页和下部页相关联的多个位集。
8.如权利要求1所述的方法,其中,所述命令指示所述存储器的地址,并且所述方法进一步包括基于所述地址从多个位集中选择所述位集。
9.如权利要求8所述的方法,其中,所述地址包括指示所述存储器的特定块内的特定页的页索引,并且其中,所述块的每一页与所述多个位集中的对应位集相关联。
10.如权利要求8所述的方法,其中,所述多个位集包括针对第一页子集保留的第一位集,所述第一页子集与第一页索引集相关联,并且所述多个位集进一步包括针对第二页子集保留的第二位集,所述第二页子集与第二页索引集相关联。
11.如权利要求1所述的方法,进一步包括响应于接收所述命令而从多个位集当中随机地或伪随机地选择所述位集。
12.如权利要求1所述的方法,其中,所述命令包括从多个位集当中标识所述位集的指示。
13.如权利要求12所述的方法,其中,所述指示是从耦合至所述存储器管芯的控制器或者从主机设备接收的。
14.如权利要求1所述的方法,进一步包括响应于接收所述命令而生成所述位集。
15.如权利要求14所述的方法,其中,所述位集是随机地或伪随机地生成的。
16.如权利要求1所述的方法,其中,所述存储器具有单片地形成在具有在硅衬底上方的有效区域的存储器单元阵列的一个或多个物理层中的三维存储器配置,并且其中,所述存储器管芯包括与所述存储器单元的操作相关联的电路。
17.一种数据存储设备,包括:
存储器;
锁存器;
初始化电路,其中,所述初始化电路被配置成用于在接收写入进程的写入数据之前,将位集加载到所述锁存器中以针对所述写入进程对所述锁存器进行初始化,并且其中,所述位集至少包括具有第一值的第一位以及具有与所述第一值不同的第二值的第二位;以及
读/写电路,其中,所述读/写电路被配置成用于在信息在所述锁存器处被接收之后以及在所述信息在所述锁存器处覆写所述位集的至少一部分之后执行所述写入进程。
18.如权利要求17所述的数据存储设备,进一步包括控制器,所述控制器被配置成用于将命令发送至所述初始化电路,其中,所述初始化电路进一步被配置成用于响应于接收所述命令而将所述位集加载到所述锁存器中。
19.如权利要求17所述的数据存储设备,其中,所述初始化电路进一步被配置成用于响应于接收来自主机设备的命令而将所述位集加载到所述锁存器中。
20.如权利要求19所述的数据存储设备,其中,所述初始化电路进一步被配置成用于在将所述位集加载到所述锁存器中之前检索所述位集。
21.如权利要求17所述的数据存储设备,其中,所述位集包括随机的或伪随机的位序列。
22.如权利要求17所述的数据存储设备,其中,所述位集具有等于与所述存储器的页相关联的页长的位长。
23.如权利要求17所述的数据存储设备,其中,所述位集包括特定位模式的多个副本,其中,所述特定位模式具有小于与所述存储器相关联的页长的位长。
24.如权利要求17所述的数据存储设备,其中,所述存储器具有每单元三位的多级存储单元架构,其中,所述写入进程用于对上部页、中间页或下部页进行写入,并且其中,所述初始化电路进一步被配置成用于从与上部页、中间页和下部页相关联的多个位集中选择所述位集。
25.如权利要求17所述的数据存储设备,其中,所述存储器具有每单元两位的多级存储单元架构,其中,所述写入进程用于对上部页或下部页进行写入,并且其中,所述初始化电路进一步被配置成用于从与上部页和下部页相关联的多个位集中选择所述位集。
26.如权利要求17所述的数据存储设备,其中,所述初始化电路进一步被配置成用于基于与所述写入进程相关联的所述存储器的地址从多个位集当中选择所述位集。
27.如权利要求26所述的数据存储设备,其中,所述地址包括指示所述存储器的特定块内的特定页的页索引,并且其中,所述块的每一页与所述多个位集中的对应位集相关联。
28.如权利要求26所述的数据存储设备,其中,所述多个位集包括针对第一页子集保留的第一位集,所述第一页子集与第一页索引集相关联,并且所述多个位集进一步包括针对第二页子集保留的第二位集,所述第二页子集与第二页索引集相关联。
29.如权利要求17所述的数据存储设备,其中,所述初始化电路进一步被配置成用于从多个位集当中随机地或伪随机地选择所述位集。
30.如权利要求17所述的数据存储设备,其中,所述初始化电路进一步被配置成用于接收从多个位集当中标识所述位集的指示。
31.如权利要求30所述的数据存储设备,其中,所述指示是从控制器或者从主机设备接收的。
32.如权利要求17所述的数据存储设备,其中,所述初始化电路进一步被配置成用于生成所述位集。
33.如权利要求32所述的数据存储设备,其中,所述初始化电路进一步被配置成用于随机地或伪随机地生成所述位集。
34.如权利要求17所述的数据存储设备,其中,所述存储器具有单片地形成在具有在硅衬底上方的有效区域的存储器单元阵列的一个或多个物理层中的三维存储器配置,并且其中,所述读/写电路与所述存储器单元的操作相关联。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/504,268 US9355732B2 (en) | 2014-10-01 | 2014-10-01 | Latch initialization for a data storage device |
US14/504,268 | 2014-10-01 | ||
PCT/US2015/047967 WO2016053553A1 (en) | 2014-10-01 | 2015-09-01 | Latch initialization for a data storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106716536A CN106716536A (zh) | 2017-05-24 |
CN106716536B true CN106716536B (zh) | 2019-06-28 |
Family
ID=54073045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580046679.0A Active CN106716536B (zh) | 2014-10-01 | 2015-09-01 | 数据存储设备的锁存器初始化 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9355732B2 (zh) |
CN (1) | CN106716536B (zh) |
DE (1) | DE112015004531T5 (zh) |
WO (1) | WO2016053553A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10521338B2 (en) * | 2017-06-05 | 2019-12-31 | Arm Ltd. | Method, system and device for memory device operation |
US10153021B1 (en) * | 2017-06-09 | 2018-12-11 | Micron Technology, Inc. | Time-based access of a memory cell |
US10153022B1 (en) | 2017-06-09 | 2018-12-11 | Micron Technology, Inc | Time-based access of a memory cell |
KR20190006680A (ko) * | 2017-07-11 | 2019-01-21 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
TWI640996B (zh) * | 2017-12-21 | 2018-11-11 | 新唐科技股份有限公司 | 記憶體電路及其測試方法 |
US20190214087A1 (en) * | 2018-01-09 | 2019-07-11 | Western Digital Technologies, Inc. | Non-volatile storage system with decoupling of write transfers from write operations |
KR20200052150A (ko) * | 2018-11-06 | 2020-05-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7245532B2 (en) * | 1996-05-01 | 2007-07-17 | Renesas Technology Corporation | Nonvolatile semiconductor memory device which stores multi-value information |
CN101627442A (zh) * | 2006-12-29 | 2010-01-13 | 桑迪士克股份有限公司 | 用于包括耦合补偿的非易失性存储器读取操作的边际化相邻者读取 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7134069B1 (en) * | 1999-06-16 | 2006-11-07 | Madrone Solutions, Inc. | Method and apparatus for error detection and correction |
EP1274098B1 (en) * | 2001-06-20 | 2005-12-21 | Broadcom Corporation | Cache memory self test circuit |
DE10154066B4 (de) * | 2001-11-02 | 2004-02-12 | Infineon Technologies Ag | Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers |
JP3935151B2 (ja) * | 2004-01-26 | 2007-06-20 | 株式会社東芝 | 半導体集積回路装置 |
US20070150644A1 (en) * | 2005-12-28 | 2007-06-28 | Yosi Pinto | System for writing non-volatile memories for increased endurance |
US8065585B1 (en) * | 2007-08-30 | 2011-11-22 | L-3 Communications Corporation | High data throughput turbo product encoder |
US8533562B2 (en) * | 2007-09-12 | 2013-09-10 | Sandisk Technologies Inc. | Data protection after possible write abort or erase abort |
US8713330B1 (en) | 2008-10-30 | 2014-04-29 | Apple Inc. | Data scrambling in memory devices |
JP2010123156A (ja) * | 2008-11-17 | 2010-06-03 | Elpida Memory Inc | 半導体記憶装置及びその制御方法 |
US8400830B2 (en) * | 2008-11-26 | 2013-03-19 | Sharp Kabushiki Kaisha | Nonvolatile semiconductor memory device and driving method therefor |
KR20100111990A (ko) | 2009-04-08 | 2010-10-18 | 삼성전자주식회사 | 플래시 메모리 장치 및 그것의 데이터 랜덤화 방법 |
JP5492679B2 (ja) | 2009-06-30 | 2014-05-14 | パナソニック株式会社 | 記憶装置およびメモリコントローラ |
JP5443420B2 (ja) | 2011-03-23 | 2014-03-19 | 株式会社東芝 | 半導体記憶装置 |
US9251900B2 (en) | 2011-11-15 | 2016-02-02 | Sandisk Technologies Inc. | Data scrambling based on transition characteristic of the data |
US9443615B2 (en) * | 2012-12-04 | 2016-09-13 | Micron Technology, Inc. | Methods and apparatuses for memory testing with data compression |
US8902672B2 (en) * | 2013-01-01 | 2014-12-02 | Memoir Systems, Inc. | Methods and apparatus for designing and constructing multi-port memory circuits |
-
2014
- 2014-10-01 US US14/504,268 patent/US9355732B2/en active Active
-
2015
- 2015-09-01 CN CN201580046679.0A patent/CN106716536B/zh active Active
- 2015-09-01 DE DE112015004531.7T patent/DE112015004531T5/de not_active Withdrawn
- 2015-09-01 WO PCT/US2015/047967 patent/WO2016053553A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7245532B2 (en) * | 1996-05-01 | 2007-07-17 | Renesas Technology Corporation | Nonvolatile semiconductor memory device which stores multi-value information |
CN101627442A (zh) * | 2006-12-29 | 2010-01-13 | 桑迪士克股份有限公司 | 用于包括耦合补偿的非易失性存储器读取操作的边际化相邻者读取 |
Also Published As
Publication number | Publication date |
---|---|
US20160099065A1 (en) | 2016-04-07 |
US9355732B2 (en) | 2016-05-31 |
CN106716536A (zh) | 2017-05-24 |
WO2016053553A1 (en) | 2016-04-07 |
DE112015004531T5 (de) | 2017-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106716536B (zh) | 数据存储设备的锁存器初始化 | |
US10372603B2 (en) | Handling of unaligned writes | |
CN103093818B (zh) | 存储系统及其操作方法 | |
CN103971739B (zh) | 包括非易失性存储设备的存储系统及其编程方法 | |
US9105333B1 (en) | On-chip copying of data between NAND flash memory and ReRAM of a memory die | |
US9323613B2 (en) | Parity scheme for a data storage device | |
CN106157999A (zh) | 包括虚设存储单元的半导体存储器件及其操作方法 | |
CN106663046A (zh) | 用于刷新存储器设备中的数据的系统和方法 | |
US8942028B1 (en) | Data reprogramming for a data storage device | |
US9841910B2 (en) | Moving and committing valid data on a set-by-set basis | |
CN108573733A (zh) | 具有编程失败恢复的非易失性存储器 | |
CN105487985A (zh) | 预编码直接写入到多级单元存储器的数据的系统和方法 | |
US9053790B1 (en) | Counter for write operations at a data storage device | |
US9870174B2 (en) | Multi-stage programming at a storage device using multiple instructions from a host | |
CN110321070A (zh) | 存储器控制器及其操作方法 | |
CN110390970A (zh) | 存储器装置及其操作方法 | |
CN110287130A (zh) | 存储装置及其操作方法 | |
WO2016153560A1 (en) | Updating resistive memory | |
CN109542394A (zh) | 控制器、半导体存储器装置及具有它们的存储器系统 | |
CN110399092A (zh) | 存储装置以及操作存储装置的方法 | |
CN104103318B (zh) | 操作存储控制器的方法和包括存储控制器的数据存储设备 | |
US20160094339A1 (en) | Scrambling schemes for scrambling and descrambling data | |
US9146824B1 (en) | Management of bit line errors based on a stored set of data | |
CN110299178A (zh) | 存储装置及用于操作存储装置的方法 | |
CN106560781A (zh) | 数据处理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |