用于存取存储器单元的基于计数器的方法和系统与流程
1.本公开大体上涉及操作存储器单元的阵列存储器,且更具体地说,涉及用于存取存储器单元的基于计数器的方法和系统。
背景技术:
2.存储器装置用于许多电子系统,例如移动电话、个人数字助理、膝上型计算机、数码相机及类似者。存在各种类型的存储器装置,包含磁性硬盘、随机存取存储器(ram)、只读存储器(rom)、动态ram(dram)、同步动态ram(sdram)、铁电ram(feram)、磁性ram(mram)、电阻式ram(rram)、快闪存储器、相变存储器(pcm)等。存储器装置可以是易失性或非易失性的。非易失性存储器在断开电力时仍保持其内容,这使其成为用于存储将在系统重启之后检索的信息的存储器装置的良好选择。具体来说,非易失性存储器单元可甚至在不存在外部电源的情况下在很长一段时间内维持其所存储的逻辑状态。除非由外部电源定期刷新,否则易失性存储器单元可能随时间推移而丢失其存储状态。
3.通过编程存储器装置的不同状态来存储信息。举例来说,二进制装置具有通常由逻辑“1”或逻辑“0”表示的两个状态。在其它系统中,可存储多于两个状态。为了存取所存储信息,存储器装置的组件可读取或感测所存储状态。为了存储信息,存储器装置的组件可写入或编程逻辑状态。
4.一般来说,改进存储器装置可包含增大存储器单元密度、提高读取/写入速度、增加可靠性、增强数据保持、减少电力消耗、减少制造成本以及按比例调整成小于传统装置(其可导致相对较高的错误率)等。
5.当存储器单元展现可变电特性,具体来说,存储器装置具有三维(3d)存储器单元阵列时,可能需要更稳固的读取技术来提高存储器装置性能和可靠性。
附图说明
6.图1为示出可根据本公开的实施例读取的示例性存储器单元的示例性框图;
7.图2示意性地示出示例性存储器单元阵列的一部分;
8.图3a和3b示出根据本公开的实施例支持用于读取存储器单元的基于计数器的方法的数据模式的实例;
9.图4a和4b示意性地示出根据本公开的实施例在读取阶段期间由存储器单元显现的逻辑状态的分布;
10.图5示意性地示出根据本公开的方法操作的读取算法的逻辑块;
11.图6为根据本公开表示方法的步骤的流程图;以及
12.图7展示根据本公开包含存储器装置的系统的示意性框图。
具体实施方式
13.参考那些图式,本文将公开用于存储器单元的改进的读取操作的方法和系统。
14.在以下详细描述中,阐述众多具体细节以提供对所要求的主题的透彻理解。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所要求的主题。在其它情况下,未详细描述所属领域的一般技术人员已知的方法、设备和/或系统以便不会混淆所要求的主题。
15.非易失性存储器在断开电力时仍保持其内容,这使其成为用于存储将在系统重启之后检索的信息的良好选择。快闪存储器是保持所存储数据且特征在于非常快速的存取时间的一种非易失性存储器。此外,其可成块擦除,而非一次一个字节地擦除。每一可擦除存储器块包括布置成行和列的矩阵的多个非易失性存储器单元。每一单元耦合到存取线和/或数据线。通过操控存取线和数据线上的电压来对单元进行编程和擦除。快闪存储器沿用已久且较适用于大容量存储应用;然而,其性能并不满足如今大部分要求高的应用。例如3d交叉点(3dxpoint)存储器和自选存储器(ssm)的新技术例如在存取时间和存取粒度(数据可经编程且以页、字或原则上甚至以位粒度读取)方面具有较好性能。随着技术的扩展,在读取操作期间存取数据越来越具有挑战性。
16.图1示出根据本公开的包括可布置成阵列且接着编程和读取的存储器单元100'的示例性组合件100的框图。
17.在图1所说明的实施例中,存储器单元100'包含存取线104与106之间的存储材料102。存取线104、106将存储器单元100'与电路142电耦合,所述电路对存储器单元100'进行写入和读取。术语“耦合”可指以物理方式、以电气方式和/或以通信方式直接或间接地连接的元件,且可与本文中的术语“连接”互换使用。物理耦合可包含直接接触。电耦合包含允许组件之间的电流动和/或信号传递的介接或互连。通信耦合包含允许组件交换数据的连接,包含有线和无线连接。
18.在一个实施例中,存储材料102包含展现存储器效应的自选材料。自选材料为实现阵列中的存储器单元的选择而不需要单独选择器元件的材料。因此,图1将存储材料102示出为“选择器/存储材料”。如果用于存取存储器单元的电路可使材料处于多个状态中的一个(例如,经由写入操作)且稍后确定经编程状态(例如,经由读取操作),那么材料展现存储器效应。用于存取存储器单元(例如,经由读取和写入操作)的电路通常被称作“存取电路”,且在下文中参考存取电路143进一步论述。存取电路可通过使存储材料102处于特定状态来将信息存储于存储器单元100'中。存储材料102可包含例如硫族化物材料,如te-se合金、as-se合金、ge-te合金、as-se-te合金、ge-as-se合金、te-as-ge合金、si-ge-as-se合金、si-te-as-ge合金或能够充当存储元件和选择器两者的其它材料,以使得能够对特定存储器单元进行寻址且确定存储器单元的状态。因此,在一个实施例中,存储器单元100'为包含单层材料的自选存储器单元,所述自选存储器单元充当选择存储器单元的选择器元件和存储逻辑状态(即,与单元的给定极性有关的状态)的存储器元件两者。
19.在一个实施例中,存储材料102为相变材料。相变材料可在完全非晶形状态与完全结晶状态之间跨越整个光谱在一般非晶形状态与一般结晶状态之间以电气方式切换。存储器单元100'可进一步包含存取线104与106之间的选择装置(未图示);选择装置可串联耦合到存储材料102。在另一实施例中,存储材料102不是相变材料。在存储材料102不是相变材料的一个实施例中,存储材料能够在不改变相的情况下在两个或更多个稳定状态之间切换。存取电路143能够通过施加具有特定极性的电压使存储材料102处于所要稳定状态来对
存储器单元100'进行编程。
20.在一个此类实施例中,对存储器单元100'进行编程使存储器单元100'到达“阈值”或经历“阈值事件”。当存储器单元到达阈值(例如,在编程电压脉冲期间)时,存储器单元经历物理变化,所述物理变化使得存储器单元响应于后续电压(例如,具有特定量值和极性的读取电压)的施加而展现特定阈值电压。对存储器单元100'进行编程可因此涉及施加给定极性的电压以诱发编程阈值事件,所述编程阈值事件使得存储器单元100'在相同或不同极性的后续读取电压下展现特定阈值电压。在一个此类实施例中,存储材料102为可通过诱发阈值事件而经编程的自选材料(例如,非相变硫族化物材料或其它自选材料)。
21.如下文进一步详细解释,当读取时,此类存储器单元的输出随用于编程存储器单元的极性和用于读取存储器单元的极性变化。举例来说,存储材料102可基于编程和读取电压两者的极性响应于读取电压而展现“较低阈值电压”或“较高阈值电压”。在本公开的上下文中,展现阈值电压意味着响应于具有特定量值和极性的电压施加到存储器单元的端子,存储器单元上的电压大致等于阈值电压。阈值电压因此对应于在输入处施加以产生输出,即看到确定的单元电响应所需的最小电压。换句话说,在本公开的上下文中,动词“到达阈值”意味着单元经历阈值事件,即所述单元响应于所施加的电压高于给定阈值而具有电响应,由此展现独特阈值电压。
22.如上文所提及,存取线104、106将存储器单元100'与电路142电耦合。存取线104、106可分别被称作位线和字线。字线用于存取存储器阵列中的特定字,且位线用于存取字中的特定位。在一个实施例中,存取线104、106可由以下各者中的一或多种制成:合适的金属,包含:al、cu、ni、cr、co、ru、rh、pd、ag、pt、au、ir、ta和w;导电金属氮化物,包含tin、tan、wn和tacn;导电金属硅化物,包含硅化钽、硅化钨、硅化镍、硅化钴和硅化钛;导电金属氮硅化物,包含tisin和wsin;导电金属碳氮化物,包含ticn和wcn或任何其它合适的导电材料。
23.在一个实施例中,电极108安置于存储材料102与存取线104、106之间。电极108将存取线104、106与存储材料102电耦合。电极108可由以下各者中的一或多种制成:导电和/或半导电材料,例如碳(c)、碳氮化物(c
x
ny);n掺杂多晶硅和p掺杂多晶硅;金属,包含al、cu、ni、cr、co、ru、rh、pd、ag、pt、au、ir、ta和w;导电金属氮化物,包含tin、tan、wn和tacn;导电金属硅化物,包含硅化钽、硅化钨、硅化镍、硅化钴和硅化钛;导电金属氮硅化物,包含tisin和wsin;导电金属碳氮化物,包含ticn和wcn;导电金属氧化物,包含ruo2或其它合适的导电材料。
24.由电极108和存储材料102组成的堆叠在下文中被称作存储器单元100',而不限制本公开的范围。在各种实施例中,存储器单元100'可包括更多或更少元件。因此,存储器单元100'是存储器单元的一个实例。其它实施例可包含相比于图1中所示出的存储器单元具有额外、更少或不同材料层(例如,存储材料与存取线之间的薄介电材料等)的存储器单元。
25.再次参考电路142,根据实施例,存取线104、106将电路142以通信方式耦合到存储器单元100'。电路142包含存取电路143和感测电路145。电路包含电子组件,所述电子组件经电耦合以对所接收或所存储信息、输出信息和/或存储信息执行模拟或逻辑操作。硬件逻辑为用以执行逻辑操作,例如数据处理中涉及的逻辑操作的电路。在一个实施例中,存取电路143将电压脉冲施加到存取线104、106以对存储器单元100'进行写入或读取。术语“写入”和“编程”可互换使用以描述将信息存储在存储器单元中的动作。为了写入到存储器单元
100',存取电路将具有特定量值和极性的电压脉冲施加到存取线104、106,这可同时选择存储器单元100'和对存储器单元100'进行编程。
26.举例来说,存取电路143施加具有一个极性的读取电压以将存储器单元100'编程成处于一个逻辑状态,且施加具有不同极性的脉冲以将存储器单元100'编程成处于不同逻辑状态。由于存储器单元的编程极性,存取电路143接着可在不同逻辑状态之间进行区分。举例来说,在存储器读取的情况下,存取电路143将具有特定量值和极性的电压脉冲施加到存取线104、106,这产生感测电路145可检测到的电响应。检测电响应可包含例如检测以下各者中的一或多者:给定存储器单元阵列的端子两端的电压降(例如,阈值电压)、通过给定存储器单元的电流以及给定存储器单元的阈值事件。在一些情况下,检测存储器单元的阈值电压可包含确定单元的阈值电压低于或高于参考电压,例如读取电压。存取电路143可基于对读取序列中的电压脉冲中的一或多者的电响应而确定存储器单元100'的逻辑状态。
27.在施加读取电压后产生的电流因此取决于由逻辑状态存储元件的电阻确定的存储器单元的阈值电压。举例来说,第一逻辑状态(例如,设定(set)状态)可对应于有限量的电流,而第二逻辑状态(例如,重设(reset)状态)可对应于无电流或可忽略不计的小电流。替代地,第一逻辑状态可对应于高于电流阈值的电流,而第二逻辑状态可对应于低于电流阈值的电流。
28.图2展示根据实施例的存储器单元阵列200的一部分,其可包含多个存储器单元,例如图1的存储器单元100'。存储器单元阵列200为三维交叉点存储器结构(3d x point)的实例。存储器单元阵列200包含多个存取线204、206,所述存取线可与关于图1所描述的存取线104、106相同或类似。存取线204、206可被称为位线和字线。在图2中所说明的实施例中,位线(例如,存取线204)与字线(例如,存取线206)正交。存储材料202(例如,图1的存储材料102)安置于存取线204、206之间。如关于图1所公开,在一些实例中,存储材料202可为自选存储材料;在其它实例中,存储材料202可串联耦合到选择装置(未图示)。在一个实施例中,在位线与字线之间的相交处形成“交叉点”。存储器单元由位线与字线之间的存储材料202产生,其中位线与字线相交(应注意,在图2中,未展示例如电极的额外层,以使得单元由存储材料202示意性地表示,而不限制本公开的范围,且可存在额外层)。一般来说,相交处限定存储器单元的地址。存储材料202可为硫族化物材料,例如上文关于图1所描述的存储材料102。在一个实施例中,如同上文关于图1所描述的存取线104、106,存取线204、206也由一或多种导电材料制成。尽管图2中展示单个层级或层的存储器单元,但存储器单元阵列200可包含多个层级或层的存储器单元(例如,在z方向上)。
29.因此,“交叉点”是指在其处形成存储器单元以使得在存取线连接到存储器单元的不同节点时与存储器单元相关联的存取线在拓扑上彼此“交叉”的位置。交叉点架构使得能够达到由存取线的最小间距确定的理论上最小的单元面积。
30.图1和2示出存储器单元和阵列的实例。然而,可使用其中存储器单元展现随编程和读取极性变化的电响应的其它存储器单元结构和阵列。举例来说,在3d存储器阵列中,存储器单元(未图示)可形成于充当位线的竖直导电柱与充当字线的水平导电平面之间的交叉位置处。此和其它阵列组织还可产生如上文所描述的交叉点架构。
31.理想情况下,存储器装置的所有存储器单元的特征应为相同(标称)电阻率,且因此针对同一逻辑状态为同一阈值电压,其中阈值电压为待施加到存储器单元以用于使其传
导电流的电压,即,如上文所定义的产生端子之间的导电路径所需的电压最小值。然而,由于编程成同一逻辑状态的不同单元由于若干因素(例如,由执行数个读取-写入操作和/或由制造公差引起的相变材料的电特性的变化)而实际上呈现不同电阻率值,因此每一逻辑状态实际上与相应电阻率分布(通常为高斯型分布)相关联,且因此与相应阈值电压分布相关联。
32.为了评估单元的逻辑状态,进行读取操作以评估单元的阈值电压分布所属阈值电压分布。举例来说,可经由存取线将读取电压施加到单元,且基于响应于所述读取电压的电流(存在或不存在)、取决于单元的阈值电压的电流(存在或不存在)来评估单元的逻辑状态。当在其两个端子之间施加合适的电压差时,单元到达阈值(例如,其变成导电的);此类电压差可以不同方式获得,例如,将例如字线端子的一个端子偏置到负电压(例如,选择电压),且将例如位线端子的另一端子偏置到正电压(例如,读取电压)。其它偏置配置可产生相同效应(例如,字线和位线端子两者都被偏置到正电压,或字线端子被偏置到参考电压,例如接地电压,且位线端子被偏置到正电压)。
33.换句话说,可通过激活或选择字线206和位线204来对存储器单元执行例如读取和写入等操作,所述操作可被称为存取操作。如所属领域中已知,字线206还可被称为行线、感测线和存取线。位线204还可被称为数字线、列线、数据线以及存取线。对字线和位线或其类似物的参考在不损失理解或操作的情况下可互换。举例来说,存取线可为字线且数据线可为位线。字线206和位线204可彼此垂直(或几乎垂直)以产生阵列,如先前参考图2所展示。取决于存储器单元的类型(例如,feram、rram等),可存在其它存取线(图中未展示),例如板线。应了解,可基于存储器单元的类型和/或存储器装置中使用的特定存取线而更改存储器装置的确切操作。激活或选择字线206或位线204可包含经由专用驱动器将电压施加到相应线。通过激活一个字线和一个位线,可在其相交处存取单个存储器单元202。存取存储器单元可包含读取或写入存储器单元。
34.可通过行解码器或列解码器(未图示)来控制对存储器单元的存取。举例来说,行解码器可从存储器控制器接收行地址且基于所接收行地址激活适当字线。类似地,列解码器可从存储器控制器接收列地址且激活适当位线。
35.如先前所提到,在数个循环操作(例如,一系列读取或写入操作)之后,存储器单元202可展现不同的电特性。举例来说,在接收到相同编程脉冲以存储逻辑状态1(例如设定(set)编程脉冲)之后,如果与已经循环通过较大数目的读取或写入操作的存储器单元相比,存储器单元相对较新(例如具有较小数目的读取或写入操作的pcm单元),那么对应于逻辑状态1的存储器单元202(例如pcm单元)的阈值电压可不同。另外,在一些情况下,在写入操作期间硫族化物材料的编程(例如结晶或淬灭)之后,存储器单元(例如,逻辑存储元件102或202)中的硫族化物材料可经历其电阻的改变(其还可被称作漂移)。电阻的此类改变可导致存储器单元的阈值电压的改变,且可妨碍在经过某一时间段之后从存储器单元(例如,pcm单元)准确读取信息。在一些实施例中,变化量可随环境温度而变。在许多情况下,依赖于错误校正机制来处置错误可能是不可行的。
36.本公开还提供一种稳固且可靠的读取技术,其用于存储器单元(例如,pcm单元或ssm单元)展现可来源于各种因素的不同、不均匀、可变电特性的情况,所述因素包含统计过程变化、循环事件(例如,对存储器单元进行的读取或写入操作)或漂移(例如,硫族化合物
合金的电阻变化)以及其它,如上文所描述。
37.更确切地说,根据本公开的存储器单元读取技术,对一组用户数据(例如,码字、页)的读取和对存储于与存储器单元阵列相关联的存储器部分(下文称为计数器)中的数据的读取同时进行,计数器的数据用于恰当地读取用户数据。因此,本公开可通过极有效的读取操作来确定与给定逻辑状态相关联的存储器单元的总数,从而基于用于读取存储器单元(明确地说,在3d存储器装置中)的基于计数器的感测放大器方法提供新且更有效的解决方案。
38.图3a示出示例性用户数据模式图301。用户数据模式图301包含用户数据310a及经编码用户数据315a。在存储器单元阵列的编程阶段中执行的编码过程320a可将用户数据310a转换成经编码用户数据315a。经编码用户数据315a可存储于一组存储器单元中,所述存储器单元可为例如参考图1和2所描述的存储器单元100'或202。经编码用户数据315a的每一框可对应于可展现逻辑状态1或逻辑状态0的存储器单元。在编码过程320a期间,可将数个奇偶校验位添加到用户数据310a以建立具有给定逻辑值(例如,逻辑值1)的经编码用户数据315a的预定位数。因此,经编码用户数据315a中的位数可大于用户数据310a中的位数(例如,如果添加一些位,例如奇偶校验位,那么n大于m)。过程325可在已准确读取经编码用户数据315a后将经编码用户数据315a转换回用户数据310a。
39.在实施例中,待读取的多个经编码位表示码字(cw)。码字可包含待在读取阶段期间使用的各种信息。
40.在一些实施例中,对于每一组用户数据310a,对应经编码用户数据315a中展示逻辑状态1和逻辑状态0的存储器单元的数目可相同(其也可被称作平衡编码方案,其中经编码用户数据位的一半具有逻辑值1,且另一半具有逻辑值0)。因而,经编码用户数据可被称为具有50%权重。在一些实施例中,对于每一用户数据310a,对应经编码用户数据315a可具有展现给定逻辑状态(例如,逻辑状态1)的预定数目个存储器单元,因此产生可不同于50%(其也可被称作恒定权重编码方案)的恒定权重。一般来说,编码过程320a的结果可为建立经编码用户数据315a中的展现给定逻辑状态(例如,逻辑状态1)的预定数目个存储器单元。
41.换句话说,根据本公开的实施例,可通过添加一些额外信息位来操控码字以将展现给定逻辑值(例如,逻辑值1)的位数限定为已知的所要预定值,通常在最小值与最大值之间(例如,在{min1,max1}之间或在范围内)。因此,在一些实施例中,阵列的存储器单元可配置成存储经编码用户数据,所述经编码用户数据包含经修改用户数据(或在一些情况下,包含原始用户数据)和可添加到其的位数,即执行数据操纵以将码字中具有末端前逻辑值的位数(例如,数目1)限制为若干(例如,2到4)奇偶校验或反转位。以此方式,码字的统计数据通过使用具有呈给定逻辑值的合理位数的分布,明确地说具有为逻辑值1的预定位数的分布,或具有为给定范围中的逻辑值1的位数的分布来改进,从而促进读取操作且避免其中极少位展现第一逻辑值的极端情况。这还允许利用极少额外位以统计方式跟踪码字的使用(例如漂移和循环),以及改进速度。
42.在本公开的上下文中,将具有逻辑值1的位(例如,对应于逻辑状态1中的单元)识别为处于第一逻辑状态的位,而将具有逻辑值0的位(例如,对应于逻辑状态0中的单元)识别为处于第二逻辑状态的位,即使可使用其它定义也是如此。
43.因此,本公开在编程阶段中提供将用户数据(例如经编码用户数据315a)存储在存
储器阵列的多个存储器单元中,所述数据经历如先前所描述的编码方案。更明确地说,可将用户数据编码在具有展现第一逻辑值的预定位数的码字中。举例来说,在实施例中,经编码用户数据中具有逻辑值1和逻辑值0的位数可相同,即经编码用户数据中具有的展现第一逻辑值和第二逻辑值的位数大体上相同,即使可使用其中经编码用户数据具有呈第一逻辑值的已知预定位数的其它配置也是如此。
44.此外,本公开的方法和系统使用码字部分,即上述计数器,所述码字部分具有用ecc和/或用例如投票方案的其它机制保护的位。因此,阵列的一组存储器单元配置成存储用户数据,而额外一组存储器单元配置成将计数信息存储在计数器中。在实施例中,计数信息可表示用户数据中具有逻辑状态1的位数。计数信息在下文中被称作计数数据。
45.图3b示出支持本公开的存储器单元读取技术的用户数据模式图302的实例。用户数据模式图302包含用户数据310b和经编码数据315b。编码过程320b可将用户数据310b编码成经编码数据315b。除了计数数据330外,经编码用户数据还可包含用户数据310b。如已经参考图3a所论述,编码方案可包含在编码过程期间将数个额外位(其也可被称作奇偶校验位或反转位)添加到用户数据,使得经编码用户数据310b可由于过程320b而不同于起始用户数据。
46.在一些实施例中,编码方案用于以计数数据330的形式存储计数信息,所述计数数据对应于数个存储器单元中在用户数据中具有给定逻辑状态(例如,逻辑状态1)的总位数。计数信息可存储为表示用户数据中具有给定逻辑状态的总位数的二进制数。在其它情况下,计数信息可经编码以具有给定权重(例如,20%、30%、50%(即存储计数信息的存储器单元的一半具有给定逻辑状态)、75%等)的权重模式,如下文将详述。在一些情况下,编码方案可导致用户数据中具有给定逻辑状态(例如,逻辑状态1)的总位数处于预定权重范围(例如,48%到50%、40%到48%、40%到45%或20%到25%)而非精确预定权重。在一些情况下,一些额外位可经编程以获得精确权重。
47.在实施例中,计数数据330的存储器单元的数目可由用户数据310b的长度确定。在一些情况下,当用户数据为2k位长时,计数数据330包含k个存储器单元。在其它情况下,当用户数据为2k位长时,计数数据330可包含2
×
k个存储器单元。换句话说,k可为用以获得具有2k码字长度的完美平衡代码的位数,其中具有值1的位数通常维持在给定间隔[x;2k/2]中,其中较小额外位数小于k。
[0048]
在一些实施例中,在编码过程320b期间,可识别用户数据310b的具有给定逻辑值(例如,逻辑值1)的总位数,且可将所述总数存储于计数数据330中(例如,作为二进制数)。例如,当用户数据310b为16位长(例如,24位长)且16位中9位的逻辑状态为1时,计数数据330为4位长且对应于二进制数1001。在其它实施例中,在编码过程320b期间,可识别用户数据310b的展现给定逻辑值(例如,逻辑值1)的总位数,且可通过将二进制数(例如,1001)的每一数字转换成一对数字(例如,1到10的二进制数字和0到01的二进制数字)而将总数编码在计数数据330中。使用上文所描述的同一实例,当用户数据310b为16位长(例如,24位长)且有9位(例如,1001的二进制数)展现逻辑值1时,计数数据330可为8位长且对应于10010110。此类编码使计数数据330具有50%的平衡权重,如还将在下文中论述。
[0049]
编码过程320b的结果可因此为建立用户数据310b中具有给定逻辑状态(例如,逻辑状态“1”)的已知数目个存储器单元,且接着将其存储在计数数据330中。在任何情况下,
根据本公开,存储在计数器中的值用于准确地读取用户数据310b。
[0050]
因此,本公开在与存储器单元阵列相关联的计数器中存储与用户数据中具有给定逻辑值(例如,第一逻辑值1)的总位数对应的信息(即,计数数据)。更明确地说,在实施例中,将计数数据存储在计数器中可包括将具有第一逻辑值的目标位数(即,目标1)存储在码字中。
[0051]
此外,根据本公开的实施例,计数器位为具有第一逻辑值的目标(总)位数与具有所述第一逻辑值的最小预期位数之间的差(即,计数器位=target1-min1)的结果,而不是仅存储可多达max 1,即具有第一逻辑值的最大位数的目标位数。此方案是有益的,因为其减少所存储的计数器位的数目。换句话说,存储计数数据可包括存储用户数据中具有必须存储于码字中的给定逻辑值(特别是第一逻辑值1)的位的目标值与最小值之间的差。
[0052]
替代地,存储目标位数2的补数。
[0053]
在任何情况下,根据本公开,码字cw包括用户数据(例如,码字用户数据部分310b)+计数数据(例如,码字计数数据部分330),如图3b中所展示。
[0054]
如上文所提及,本公开的实施例以一方式平衡计数器,所述方式使得所述计数器包括具有第一逻辑值的已知预定位数。换句话说,计数器可用额外信息位进行操控,使得所述计数器包括具有给定逻辑值的受控位数(例如,具有第一逻辑值1的受控位数)。例如,计数器可具有50%平衡方案(如先前所展示),或其可具有为不同于50%的第一逻辑值1的另一预定固定位数。
[0055]
当在计数器读取操作期间读取具有第一逻辑值的已知数目个计数器位时,这允许获得目标值(且接着停止计数器的读取)。换句话说,当读取具有第一逻辑值的预设预期位数时,将考虑完成计数器位的读取,且可在读取算法中使用目标值以恰当地读取码字的用户数据。举例来说,在计数器具有50%平衡方案的情况下,计数器的读取操作在读取到计数器位的一半时完成。
[0056]
因此,在实施例中,本公开提供一种平衡方案以在达到预期数目1时停止计数器的读取。这是通过用额外信息操控计数器直到其变成受控数目1来获得的。当读取到计数器中具有第一逻辑值1的预定位数时提供并使用计数器的目标值。
[0057]
这允许计数器dl在计数器达到目标时放电,从而最小化对计数器单元的重设读取干扰(rrd),这是因为在切换之后切断位线会减少所述干扰。
[0058]
感测阶段可对用户数据的所有逻辑值“1”进行计数,且将其与由计数器部分330中包含的位给出的值(即,与目标值)进行比较。随后如果不存在单元错误,那么可停止读取阶段。
[0059]
可根据本公开进一步改进码字的读取。更明确地说,本公开依赖于经由计数数据提供具有给定逻辑状态(明确地说,第一逻辑状态1)的精确数目个存储器单元的编码方案,其能够准确地读取用户数据而不管存储器单元的不同电特性。适当地根据本公开,在正读取用户数据时确定计数数据。
[0060]
图4a以示意性方式展示根据本公开在读取阶段期间由存储器单元展现的逻辑状态的分布。举例来说,所展示的分布可来源于阵列的单元的可变电特性。相对于竖直轴线“单元的#”和水平轴线“阈值电压”表示单元分布曲线。相对于竖直轴线“读取电压”和水平轴线“时间”表示读取电压。
[0061]
值得注意的是,当所施加的读取电压和编程电压具有同一极性时,阈值电压的量值较低。举例来说,正编程电压(例如,对应于逻辑状态“1”)产生较低阈值电压。可通过施加正读取电压来确定逻辑状态“1”,从而产生所述较低阈值电压,如图4a中所展示的分布401。当所施加的读取电压和编程电压具有不同极性时,阈值电压的量值较高。举例来说,当在正极性下读取时,负编程电压(例如,对应于逻辑状态“0”)产生较高阈值电压,如图4a中所展示的分布402。因此,当偏置正的低读取电压时,在逻辑状态“0”下的单元并未达到阈值。存取电路可基于存储器单元对读取电压的施加的电响应而确定存储器单元的逻辑状态。
[0062]
在图4a中,计数器位的分布被称作403和404,且比分布401和402窄(这是因为计数器包括较小位数),并以统计方式基本上集中在所述分布的峰周围。图4a的分布401和402可对应于图3b的码字部分310b中所含有的位,且图4a的分布403和404可对应于图3b的码字部分330中所含有的位。
[0063]
接着将读取电压405施加到阵列的存储器单元以读取存储于其中的用户数据。同时,还将所述读取电压施加到计数器的单元以读取存储在计数器中的计数数据,以便提供与用户数据中具有第一逻辑值(例如,在实施例中为逻辑值1)的位数对应的目标值。以此方式,在读取电压405的施加期间,以一方式同时读取计数数据和用户数据,所述方式使得在用户数据的读取期间提供目标值。换句话说,根据本公开,有利的是在含有用户数据的主要码字的位存储于阵列中的同时读取计数器的位。
[0064]
感测电路检测多个存储器单元对所施加读取电压405的电响应(例如,单元端子两端的阈值电压),并且基于阈值电压,检测多个存储器单元中的一或多个单元相关联的逻辑状态。如图4a的实施例中所展示,存储器单元在存储器单元处于第一逻辑状态1时展现具有较低量值的阈值电压,且在存储器单元处于第二相反逻辑状态0时展现具有较高量值的阈值电压。
[0065]
在本公开的实施例中,读取电压405为电压斜坡,且优选地,所述电压斜坡为可变阶梯电压斜坡。
[0066]
在实施例中,如图4a中所示,施加到阵列中含有用户数据的单元的读取电压405(即,施加到读取分布401和402的读取电压)与施加到含有计数数据的单元的读取电压(即,施加到读取分布403和404的读取电压)相同。换句话说,存储用户数据的存储器单元的第一读取电压和存储计数数据的存储器单元的第二读取电压可为同时施加到阵列的单元的同一电压(即,仅一个电压)。读取电压可为电压斜坡,例如阶梯电压斜坡。
[0067]
根据图4b中展示的另一实施例,将电压斜坡405,例如第一电压斜坡405(相对于竖直轴线“读取电压”和水平轴线“时间”表示)施加到含有用户数据的单元(即,施加到读取分布401和402-相对于竖直轴线“单元的#”和水平轴线“阈值电压”表示),且将偏移电压斜坡405',例如第二电压斜坡405'施加到计数器的单元(即,施加到读取分布403'和404',其因此在时间上呈现移位)。在此实施例中,第二读取电压405'是相对于第一读取电压405偏移预定电压偏移量的电压。举例来说,偏移量可为250mv(偏移量可受编程成处于逻辑状态1的存储器单元的分布中的预期最小阈值电压限制)。
[0068]
偏移读取电压405'可例如借助于硬件组件,例如二极管或分压器从读取电压405产生,或反过来。
[0069]
施加到计数器单元的偏移读取电压405'解决双重分布情况,且在实际需要主要码
字之前使计数器就绪,如图4b中示意性地展示。参看图4b,计数数据在t0处就绪,且其实际上在t1之后(即,接近分布末端)需要,使得计数器的目标值在读取操作期间更早可用且随后其可恰当地用于读取算法中。以此方式,实现计数器位的读取中的有用时间容限。换句话说,由于通过修改用于产生相关感测电路的电压的供电电压来将电压偏移施加到计数器单元,因此计数器位通过时间容限预见,即相对于其中斜坡不具有偏移的情况较早读取计数器位,使得在读取操作期间实际上可见的计数器分布为图4b的分布403'和404'。这是有益的,原因在于在读取电压的施加开始时计数数据尚未可用,所以偏移允许提前具有和使用所述数据。换句话说,可施加第一读取电压以用于读取存储用户数据的存储器单元,且可并行,例如同时施加第二读取电压以读取存储计数数据的存储器单元。第二读取电压可为相对于第一读取电压偏移的电压。所述偏移可使得第一第二读取电压的瞬时振幅大于第一读取电压的同时瞬时振幅。第一和第二读取电压可以是电压斜坡,例如阶梯电压斜坡。
[0070]
如先前所公开,同时读取用户数据和计数数据,且在读取电压(第一读取电压和第二读取电压中的任一者或两者)的施加开始时,计数数据(其分布集中在用户数据分布的峰周围且较窄)仍不可用于读取算法。举例来说,在施加第一读取脉冲(其允许读取某一数目的用户数据位,即,至多分布的峰)之后,将基于读取计数数据提供关于后续读取脉冲的施加的指令;然而,在读取操作开始时,仍不读取计数数据,且计数的用户数据位大于计数器位,这将导致读取操作的非所要停止。
[0071]
出于此原因,在本公开的实施例中,产生命令以使得能够施加读取电压,例如第一读取电压以用于读取用户数据,直到读取所有计数器位且提供目标值,即,此类命令避免了用于读取用户数据的读取电压由于缺乏来自计数器的计数数据而中断。一旦读取计数数据,就不再产生启用命令,且所述计数数据用于读取算法中以执行用户数据的恰当读取。基于读取计数数据,接着在读取操作期间选择(第一)读取电压作为与具有第一逻辑值的确定性位数对应的电压,增加读取电压直到呈第一逻辑值的计数用户数据位的数目达到由计数数据提供的目标值。
[0072]
因此,当用户数据中具有第一逻辑值的位数等于所述目标值时,由计数器提供的目标值用于停止用户数据的读取。
[0073]
换句话说,启用命令的产生对应于指向最可能码字的虚假计数器(即,具有指向最可能码字以避免读取电压的中断的虚假位数)的使用,使用此虚假计数器直到实际计数器的平衡读取触发所达到的目标值,并将虚假计数器换成真正计数器。因此使用虚假计数器直到已读取实际计数器的值(即,平衡值),且在读取算法中产生并使用目标启用命令。
[0074]
如之前所见,当读取如在平衡方案中所建立的计数器的展现第一逻辑值的所有位时,计数器可被视为已读取。举例来说,如果计数数据已根据平衡方案经编码有50%权重(即,相同数目的1和0),那么在已读取二分之一计数器位时,计数数据被视为已读取,且随后计数数据可代替启用命令以执行其余用户数据单元的恰当读取。
[0075]
图5展示根据本公开操作的读取算法的逻辑块。计数数据从计数器读取,且在用户数据读取算法的执行期间“即时”使用,即,并行地执行对框501和502的读取。在读取用户数据时将所读取计数数据引入到算法中,从而改进读取性能。在计数数据仍未完全读取的时间帧中,启用命令(即,虚假计数器)用以启用用户数据的读取,直到计数器的读取操作完成且最终提供目标值。
[0076]
在框501处,由于计数器平衡,因此使用指向最可能码字的启用命令(即,虚假计数器),直到计数器已达到平衡值且产生指示目标值就绪且可在基于计数器的读取算法中使用的信号,且因此在框502处执行用户数据的恰当读取。
[0077]
当读取计数器的目标值时,所述值在查表(lut)中用于产生恰当读取电压,明确地说,用于定义待施加到阵列的存储器单元的所有后续读取电压脉冲。计数器的值因此被传输到查表,且读取电压产生器(例如,斜坡dac产生器)接收用于斜坡的产生的所有信息。
[0078]
本公开因此提供对计数器位和数据位的同时读取,其中读取计数器位,如同其为主要码字的位,从而提供新方法而不是首先读取计数器且随后将其下载到读取电压产生器中。
[0079]
如先前所展示,在读取电压的施加开始时,仍必须读取计数器位(这将导致读取操作的非所要停止)。在本公开的替代实施例中,为了解决此问题,从其最大数目开始对计数器位进行计数,且随后递减所述最大数目直到读取所有计数器位。因此,在此实施例中,每当计数器的位由于读取电压的施加而交换时,计数值从最大值递减。
[0080]
以此方式,将解码逻辑方案施加到计数器位,使得将计数数据初始存储为已经读取的数据(即,所述数据将从其最大位数开始计数且计数递减)。因此,根据此实施例,在读取操作开始时,计数器位的数目大于用户数据中读取的具有预定逻辑值的位数,且读取操作可继续而不中断,接着在读取操作期间递减计数器位的数目。
[0081]
当计数器中的所有位由于读取电压的施加而交换(读取)时,将目标值提供为所交换计数器位的数目,且当读取用户数据位的数目对应于所交换计数数据位的所述数目,即匹配目标值时,可停止读取操作。由于如参考图4a和4b所论述的分布形状,由于用户数据和计数数据的读取操作并行发生,所以在实际上需要来自计数器的数据的时间t1之前读取来自所述数据。
[0082]
换句话说,在此实施例中,计数器的位以一方式反转(例如,在逻辑上或借助于反转器),所述方式使得在读取操作开始时,读取脉冲的施加不会由于计数器位从其最大值计数而中断。在此实施例中,不需要针对计数器使用平衡方案。
[0083]
在此情况下,如先前所提及,存储目标位数2的补数,即,存储最大目标,且以便以最大值开始且使其递减,获得最大目标的补数。
[0084]
一般来说,读取电压的施加基于计数器的读取目标值,且当用户数据的具有预定逻辑值(例如,第一逻辑值1)的位数对应于存储于所述计数器中的值时,停止施加读取电压。
[0085]
根据本公开的实施例,在施加读取电压期间评估运行时的用户数据。替代地,在读取目标值之后评估用户数据,即,在产生表示已恰当地读取计数器的目标信号之后评估用户数据位。
[0086]
根据本公开的实施例,计数器的位根据多数投票方案,例如3x投票方案而存储和读取,其中一个计数器位对应于三个阵列单元,甚至此方案可应用于计数器的n个阵列单元。通常,取决于原始ber选择投票的次数。本公开因此向计数器单元提供具有投票方案的平衡码的使用,使得计数数据为平衡数据(例如,四个1作为目标)且每一位由投票方案(例如,3x投票方案)保护。
[0087]
因此,通过应用冗余信息或校正方案或其组合来保护计数器免受可靠性问题的影响且减少ber,例如投票方案,其使得一个计数器位对应于n个阵列单元(例如,n=3);差分单元,其使得一个计数器位对应于0处的一个阵列单元和1处的一个阵列单元;以及使用计数器奇偶校验位的错误校正方案,其中针对每一位进行投票或差分。所有这些方案也可彼此组合。
[0088]
此外,还可能区分计数器位的保护等级。举例来说,在本公开的实施例中,计数器的lsb比msb(例如,具有投票5x的lsb和具有投票3x的msb)更受保护。因此,lsb位可受更强的保护,这是因为其与最可能的cw有关。
[0089]
在实施例中,使用错误校正码(ecc)和/或差分单元方案保护用户数据。
[0090]
总之,根据本公开,同时读取用户数据位和计数器数据位,使得在用户数据之前不读取计数器值,但与用户数据一起读取,且在读取用户数据时即时使用。
[0091]
所公开的基于计数器的读取算法具有许多益处,包含极快的自参考(三个或四个步骤)而不具有下载额外等待时间,这是因为计数器与主要码字并行读取。此外,由于计数器与主要码字以相同方式读取,因此用户数据单元和计数器单元需要相同设计架构(例如,相同感测放大器、解码器、阵列等),从而简化系统架构。
[0092]
此外,由于存储于计数器中的数据可对应于具有第一逻辑值的预期位的目标值与最小数目(即,min1,即将存储于码字中的最小数目1)之间的差而不是仅目标值,因此计数器具有减少的位数,远小于主要码字。因此,本公开还产生可靠计数(其中功率减小、面积减小)所需的减少的单元数目。
[0093]
图6为表示根据本公开的方法600的步骤的流程图。所描述的过程可由硬件逻辑和电路执行。举例来说,将以下过程描述为由存取电路和感测电路执行,如本文所公开。然而,其它实施例可包含适合于执行过程的不同电路配置。
[0094]
本公开的方法为一种用于改进存储器单元的读取操作的方法。在读取存储器单元之前,存取电路将数据写入到多个存储器单元。举例来说,存取电路将逻辑0和逻辑1写入到多个存储器单元,例如图1的存储器单元100'。在一个实施例中,存取电路可通过施加具有负极性的编程脉冲来写入逻辑0,且通过施加具有正极性的编程脉冲来写入逻辑1。还可采用相反的惯例。在将数据写入到多个存储器单元之后,存取电路可使用本公开的读取序列读取多个存储器单元。
[0095]
更确切地说,在步骤610处,将用户数据存储于存储器阵列的多个存储器单元中,且在步骤620处,将与用户数据中具有预定第一逻辑值的位数对应的计数数据存储于与存储器单元阵列相关联的计数器中。在一些情况下,可在存储例如具有范围内的位数之前对用户数据进行编码。在一些实例中,计数数据可指示用户数据中具有第一逻辑值的位的目标值与用户数据中具有所述第一逻辑值的位的最小值之间的差。
[0096]
在步骤630处,将读取电压施加到存储器单元以读取存储于存储器单元阵列中的用户数据。施加到存储用户数据的存储器单元的读取电压可为第一读取电压。同时,读取电压施加到计数器的单元以读取存储在计数器中的计数数据,且提供与用户数据中具有第一逻辑值的位数对应的目标值。施加到存储计数器数据的存储器单元的读取电压可为第二读取电压。在一些实施例中,第二读取电压可相对于第一读取电压偏移。根据本公开,在读取电压的施加期间,以一方式同时读取计数数据和用户数据,所述方式使得在用户数据的读
取期间提供目标值。
[0097]
在步骤640处,将读取用户数据位的数目(其通过递增专用计数器进行计数)与目标值进行比较。
[0098]
基于计数器的目标值,当用户数据中具有第一逻辑值的位数对应于目标值时,在步骤650处停止读取电压,例如第一读取电压的施加。替代地,方法600继续(例如,从步骤630开始,利用增大的读取电压)。在一些例子中,第一和第二读取电压可以是电压斜坡,例如阶梯电压斜坡。
[0099]
图7为可执行本公开的读取算法的系统700的高级方案。系统700包含存储器装置710,所述存储器装置又包含存储器单元阵列720和以操作方式耦合到存储器单元720的电路730;存储器单元720和电路730形成存储器部分,在本文中被称作存储器部分700'。
[0100]
存储器装置710包括存储器控制器740,所述存储器控制器表示例如响应于主机750的命令而产生存储器存取命令的控制逻辑。存储器控制器740存取存储器部分700'。在一个实施例中,存储器控制器740还可实施于主机750中,明确地说,实施为主机处理器760的部分,即使本公开不受特定架构限制也是如此。控制器740可包含嵌入式固件且适于管理和控制存储器部分700'的操作。
[0101]
一般来说,存储器控制器740可通过输入/输出io接收用户数据。如之前所展示,在一些实施例中,存储器控制器在将用户数据存储于存储器单元中之前对用户数据进行编码以满足条件。当经编码用户数据具有展现给定逻辑值(例如,逻辑值1)的预定位数时,可满足条件。作为实例,经编码用户数据可配置成具有50%的存储经编码用户数据的存储器单元展现逻辑状态1,而其它50%的存储器单元展现逻辑状态0(即,平衡编码方案,其中一半经编码用户数据位具有逻辑状态1,且另一半具有逻辑状态0)。在编码过程期间,存储器控制器140可将特定数目的位(例如,奇偶校验位)添加到用户数据以建立预定数目个展现给定逻辑状态的存储器单元。由于添加奇偶校验位,经编码用户数据可比用户数据具有更多位。在一些实施例中,可在编码过程期间采用展现逻辑状态1的不同百分比值(例如,40%、60%、75%)的存储器单元。
[0102]
计数数据可定义为具有给定逻辑状态(例如,逻辑状态1)的经编码用户数据的位数,且计数数据的值可由阵列中的存储器控制器740作为码字部分编码和存储。
[0103]
控制器740可配置成管理用户数据和计数数据的同时读取,且基于目标值,可配置成在用户数据中具有第一逻辑值的位数等于目标值时停止用户数据的读取。
[0104]
存储器装置710还可包括其它组件,例如耦合到控制器740的处理器单元、天线、与主机装置的连接构件(未图示)及类似者。
[0105]
多个信号线将存储器控制器740与存储器部分700'耦合。举例来说,此类信号线可包含时钟、命令/地址和写入数据(dq)、读取dq和零或更多个其它信号线。存储器控制器740因此经由合适的总线以操作方式耦合到存储器部分700'。
[0106]
存储器部分700'表示用于系统700的存储器资源。在一个实施例中,存储器单元阵列720被管理为经由字线(行)和位线(行内的个别位)控制而存取的数据行。在一个实施例中,存储器单元阵列720包含3d交叉点阵列,例如图2的存储器单元阵列200。存储器单元阵列720可组织为存储器的单独通道、组和排组。通道是到存储器部分内的存储位置的独立控制路径。组是指多个存储器装置上的共同位置(例如,不同装置内的同一行地址)。排组是指
存储器装置内的存储器位置的阵列。在一个实施例中,将存储器组分成子排组,所述子排组具有用于所述子排组的共享电路(例如,驱动器、信号线、控制逻辑)的至少一部分。应理解,存储器位置的通道、组、排组或其它组织和组织的组合可重叠物理资源。举例来说,如同特定排组,可存取特定通道上的同一物理存储器位置,所述特定排组还可属于组。因此,存储器资源的组织将以包含性的而非排他性的方式理解。
[0107]
在一个实施例中,存储器控制器740包含刷新(ref)逻辑741。在一个实施例中,刷新逻辑741指示刷新的位置和待执行的刷新类型。刷新逻辑741可触发存储器内的自刷新,且通过发送刷新命令而发出外部刷新以触发刷新操作的执行。
[0108]
在一个实施例中,电路730的存取电路731对在读取序列期间未刷新的任何所存取的存储器单元执行刷新(例如,重新编程)。因此,可以最小额外刷新操作实现存储器单元的完全刷新,这主要是存储器读取序列的副作用。
[0109]
在实施例中,电路还可嵌入存储器控制器中,即使本公开成不受特定架构限制也是如此。
[0110]
在图7中所说明的示例性实施例中,存储器控制器740包含错误校正电路742。错误检测/校正电路742可包含硬件逻辑以实施错误校正码(ecc)以检测从存储器部分读取数据时发生的错误。在一个实施例中,错误检测/校正电路742还校正错误(基于所实施的ecc代码,高达某一错误率)。然而,在其它实施例中,错误检测/校正电路742仅检测错误但不进行校正。
[0111]
在所说明的实施例中,存储器控制器740包含命令(cmd)逻辑743,所述命令逻辑表示用以产生发送到存储器部分的命令的逻辑或电路。存储器控制器740还可包含计数器744,例如上文所公开的每一码字计数器,且配置成对读取操作期间交换的位数进行计数。显然,还可采用其它架构,例如计数器可嵌入主机750中或还可嵌入电路730中。
[0112]
基于所接收的命令和地址信息,电路730的存取电路731执行用以实行命令的操作,如本公开的读取操作。在一个此类实施例中,电路730包含感测电路732以检测一或多个存储器单元对所施加的读取电压的电响应。在一个实施例中,感测电路732包含感测放大器。图7将存取电路731和感测电路732示出为嵌入于存储器部分700'中,然而,其它实施例可包含与存储器部分700'分离的存取电路和/或感测电路。举例来说,存取电路和感测电路可包含于存储器控制器,例如存储器控制器740中。
[0113]
感测电路可配置成响应于读取电压而检测通过给定存储器单元的电流,其中存取电路配置成基于检测到电流的量值大于或等于阈值电流而确定给定存储器单元处于第一逻辑状态。
[0114]
在一个实施例中,存储器部分700'包含一或多个寄存器733。寄存器733表示提供用于存储器部分的操作的配置或设置的一或多个存储装置或存储位置。此外,在一个实施例中,电路730还包含解码电路734。
[0115]
主机装置750为根据本文中所描述的任何实施例的计算装置,且可为膝上型计算机、桌上型计算机、服务器、游戏或娱乐控制系统、扫描器、复印机、打印机、路由或开关装置、嵌入式计算装置或例如智能手机等其它电子装置。存储器装置710还可嵌入主机装置750中。
[0116]
在一个实施例中,系统700包含耦合到处理器760的接口770,其可表示需要较高带
宽连接的系统组件和/或图形接口组件的较高速度接口或高通量接口。图形接口介接到图形组件以用于将视觉显示提供到系统700的用户。在一个实施例中,图形接口基于存储在存储器装置中的数据或基于由处理器执行的操作或这两者而产生显示内容。
[0117]
系统还可包括以通信方式耦合到主机或存储器装置例如以用于与其它系统连接的网络接口780,和/或经耦合以将电力提供到所述系统的电池。
[0118]
总之,本公开提供对计数器位和码字的其它位的同时读取,从而改进阵列的性能。
[0119]
根据示例性实施例,一种用于操作(存取)存储器单元阵列的方法包括以下步骤:将用户数据存储于存储器阵列的多个存储器单元中;将与用户数据中具有预定第一逻辑值的位数对应的计数数据存储于与存储器单元阵列相关联的计数器中;将读取电压(第一读取电压)施加到存储器单元以读取存储于存储器单元阵列中的用户数据;将读取电压(第二读取电压)施加到计数器的单元以读取存储于计数器中的计数数据且提供与用户数据中具有所述第一逻辑值的位数对应的目标值,其中在所述读取电压的施加期间,以一方式同时读取计数数据和用户数据,所述方式使得在用户数据的读取期间提供目标值;以及基于计数器的目标值,在用户数据中具有第一逻辑值的位数等于所述目标值时停止读取电压的施加。
[0120]
根据另一示例性实施例,一种对包括一或多个存储器阵列的竖直3d存储器装置中的存储器单元进行编程和读取的方法包括以下步骤:将包含用户数据和计数数据的码字存储于存储器阵列中,所述计数数据对应于用户数据中具有预定第一逻辑值的位数;将用户数据中具有将存储于码字中的所述第一逻辑值的位的目标值与最小值之间的差存储在计数器中;将(第一)读取电压施加到存储器单元以读取存储于存储器单元阵列中的用户数据;将(第二)读取电压施加到计数器的单元以读取存储于计数器中的计数数据且提供与用户数据中具有所述第一逻辑值的位数对应的目标值,其中在所述读取电压的施加期间,以一方式同时读取计数数据和用户数据,所述方式使得在用户数据的读取期间提供目标值;以及基于计数器的目标值,在用户数据中具有第一逻辑值的位数等于所述目标值时停止读取电压的施加。
[0121]
本公开还公开了一种存储器装置,其包括:一或多个存储器单元阵列;所述存储器阵列中包含用户数据和计数数据的至少码字,所述计数数据对应于用户数据中具有预定第一逻辑值的位数;存储器控制器,其支持用于读取存储器单元的基于计数器的方法;以及用于读取存储器单元的电路,所述电路以操作方式与存储器单元阵列耦合且至少包括:存取电路,其配置成:将第一读取电压施加到存储器单元以读取存储于存储器单元阵列中的用户数据;并且将第二读取电压施加到计数器的单元以读取存储于计数器中的计数数据且提供与用户数据中具有所述第一逻辑值的位数对应的目标值,其中在所述读取电压的施加期间,以一方式同时读取计数数据和用户数据,所述方式使得在用户数据的读取期间提供目标值;且包括感测电路,其配置成:响应于读取电压的施加,检测由多个存储器单元展现的阈值电压,其中基于计数器的目标值,控制器配置成在用户数据中具有第一逻辑值的位数等于所述目标值时停止读取电压的施加。在实施例中,存储单元阵列包括自选存储器(ssm)或3d交叉点(3d x point)存储器。
[0122]
还公开了一种相关系统,其包括如上面所述的主机装置和存储器装置,所述系统包括例如以通信方式耦合到存储器装置或主机的显示器、以通信方式耦合到存储器装置或
主机的网络接口以及经耦合以将电力提供到所述系统的电池中的任一者。
[0123]
在先前实施方式中,参考形成本发明的一部分的附图,且其中借助于说明展示特定实例。在附图中,遍及若干视图,相同的标号描述大体上类似的组件。在不脱离本公开的范围的情况下,可利用其它实例,并且可做出结构、逻辑和/或电性改变。此外,如将了解,图式中提供的元件的比例和相对标度意图说明本公开的实施例,且不应以限制性意义理解。
[0124]
如本文中所使用,“一(a/an)”或“数个”某物可指此类事物中的一或多个。“多个”某物意指两个或更多个。如本文中所使用,术语“耦合”可包含电耦合、在没有中间元件的情况下(例如,通过直接物理接触)直接耦合和/或直接连接,或在有中间元件的情况下间接耦合和/或连接。术语耦合可进一步包含彼此协作或交互(例如,成因果关系)的两个或更多个元件。
[0125]
尽管已在本文中示出并描述了具体实例,但所属领域的一般技术人员应了解,经计算以实现相同结果的布置可取代所展示的具体实施例。本公开意图涵盖本公开的一或多个实施例的修改或变化形式。应理解,以上描述是以说明性方式而非限制性方式进行的。应参考所附权利要求以及此类权利要求所赋予的等效物的全部范围来确定本公开的一或多个实例的范围。
技术特征:
1.一种用于存取存储器单元阵列的方法,其包括以下步骤:-将用户数据存储于存储器阵列的多个存储器单元中;-将与所述用户数据中具有预定第一逻辑值的位数对应的计数数据存储于与所述存储器单元阵列相关联的计数器中;-将第一读取电压施加到所述存储器单元以读取存储于所述存储器单元阵列中的所述用户数据;-将第二读取电压施加到所述计数器的单元以读取存储于所述计数器中的所述计数数据且提供与所述用户数据中具有所述第一逻辑值的所述位数对应的目标值,其中在所述读取电压的所述施加期间,以一方式同时读取所述计数数据和所述用户数据,所述方式使得在所述用户数据的所述读取期间提供所述目标值;以及-基于所述计数器的所述目标值,在所述用户数据中具有所述第一逻辑值的所述位数对应于所述目标值时停止所述第一读取电压的所述施加。2.根据权利要求1所述的方法,其中将所述用户数据编码在码字中,其位数展现一范围内的第一逻辑状态,所述编码步骤包括操控所述码字以约束展现所述范围内的所述第一逻辑值的所述位数。3.根据权利要求2所述的方法,其中经编码用户数据具有展现所述第一逻辑值和第二逻辑值的大体上相同的位数。4.根据权利要求1所述的方法,其中存储所述计数数据包括存储所述用户数据中具有所述第一逻辑值的位的所述目标值与所述用户数据中具有将存储于码字中的所述第一逻辑值的位的最小值之间的差。5.根据权利要求1所述的方法,其中根据多数投票方案存储和读取存储于所述计数器中的所述位。6.根据权利要求1所述的方法,其包括根据平衡方案平衡所述计数器,使得所述计数器包含展现所述第一逻辑值的已知预定位数,所述平衡方案包括用额外位操控所述计数器。7.根据权利要求6所述的方法,其中当读取所述计数器中展现所述第一逻辑值的所述预定位数时,停止施加所述第二读取电压且提供所述目标值。8.根据权利要求7所述的方法,其包括以下步骤:产生一命令,所述命令允许所述第二读取电压的所述施加,直到读取所述计数器中展现所述第一逻辑值的所述预定位数且提供所述目标值为止,所述目标值随后在所述用户数据中具有所述第一逻辑值的所述位数对应于所述目标值时用于停止所述用户数据的所述读取。9.根据权利要求1所述的方法,其中从计数器位的最大数目开始对其进行计数,每次读取计数器位时,所述最大数目都会递减,直到读取所有所述计数器位。10.根据权利要求1所述的方法,其中所述第二读取电压是相对于所述第一读取电压偏移的电压。11.根据权利要求1所述的方法,其中使用错误校正码(ecc)和/或差分单元方案保护所述用户数据。12.根据权利要求1所述的方法,其中当所述存储器单元处于所述第一逻辑状态时,所述存储器单元展现具有较低量值的阈值电压,并且当所述存储器单元处于第二逻辑状态时,所述存储器单元展现具有较高量值的阈值电压,且其中响应于所施加的第一读取电压,
基于所述存储器单元是展现较高还是较低量值的阈值电压确定给定单元的逻辑状态。13.根据权利要求1所述的方法,其中在所述第一读取电压的所述施加期间评估运行时的所述用户数据。14.根据权利要求1所述的方法,其中在读取所述目标值之后评估所述用户数据。15.根据权利要求1所述的方法,其包括以下步骤:将所述目标值传输到查表(lut)且从所述查表接收数据以用于产生待施加到所述存储器单元的所述第一读取电压。16.一种存储器装置,其包括:-存储器单元阵列;-所述存储器阵列中包含用户数据和计数数据的至少码字,所述计数数据对应于所述用户数据中具有预定第一逻辑值的位数;-存储器控制器,其支持用于读取所述存储器单元的基于计数器的方法;以及-用于读取所述存储器单元的电路,所述电路以操作方式与所述存储器单元阵列耦合且至少包括:-存取电路,其配置成:-将第一读取电压施加到所述存储器单元以读取存储于所述存储器单元阵列中的所述用户数据;并且-将第二读取电压施加到计数器的单元以读取存储于所述计数器中的所述计数数据且提供与所述用户数据中具有所述第一逻辑值的所述位数对应的目标值,其中在所述读取电压的所述施加期间,以一方式同时读取所述计数数据和所述用户数据,所述方式使得在所述用户数据的所述读取期间提供所述目标值;以及-感测电路,其配置成:-响应于所述第一读取电压的施加,检测由存储用户数据的存储器单元展现的阈值电压,其中基于所述计数器的所述目标值,所述控制器配置成在所述用户数据中具有所述第一逻辑值的所述位数对应于所述目标值时停止所述第一读取电压的所述施加。17.根据权利要求16所述的存储器装置,其中所述感测电路配置成响应于所述第一读取电压而检测通过给定存储器单元的第一电流,且其中所述存取电路配置成基于检测到所述第一电流的量值大于或等于第一阈值电流而确定所述给定存储器单元处于第一逻辑状态。18.根据权利要求16所述的存储器装置,其中所述第一读取电压为阶梯电压斜坡。19.根据权利要求18所述的存储器装置,其中所述第二读取电压是相对于所述阶梯电压斜坡偏移的第二电压斜坡。20.根据权利要求16所述的存储器装置,其中所述控制器配置成产生一命令,所述命令允许所述用户数据的所述读取,直到读取所述计数器的所述目标值,且其中基于所述目标值,所述控制器配置成在所述用户数据中具有所述第一逻辑值的所述位数对应于所述目标值时用于停止所述用户数据的所述读取。21.根据权利要求16所述的存储器装置,其中所述计数器的位经反转且所述电路配置成从计数器位的最大数目开始对其进行计数,每次读取计数器位时,所述最大数目都会递减,直到读取所有所述计数器位。
22.根据权利要求16所述的存储器装置,其配置成存储含有用于产生所述第一读取电压的信息的查表(lut)。23.根据权利要求16所述的存储器装置,其中所述存储器单元阵列包括自选存储器(ssm)或3d交叉点(3d x point)存储器。24.一种系统,其包括:-主机装置;以及-根据权利要求16所述的存储器装置。25.根据权利要求24所述的系统,其进一步包括以通信方式耦合到所述存储器装置或所述主机的显示器、以通信方式耦合到所述存储器装置或所述主机的网络接口以及经耦合以将电力提供到所述系统的电池中的任一者。26.一种用于对包括存储器阵列的竖直3d存储器装置中的存储器单元进行编程和读取的方法,所述方法包括以下步骤:-将包含用户数据和计数数据的码字存储于所述存储器阵列中,所述计数数据对应于所述用户数据中具有预定第一逻辑值的位数;-将所述用户数据中具有将存储于所述码字中的所述第一逻辑值的位的目标值与最小值之间的差存储在所述计数器中;-将读取电压施加到所述存储器单元以读取存储于存储器单元阵列中的所述用户数据;-将偏移读取电压施加到所述计数器的单元以读取存储于所述计数器中的所述计数数据且提供与所述用户数据中具有所述第一逻辑值的所述位数对应的目标值,其中在所述读取电压的所述施加期间,以一方式同时读取所述计数数据和所述用户数据,所述方式使得在所述用户数据的所述读取期间提供所述目标值;以及-基于所述计数器的所述目标值,在所述用户数据中具有所述第一逻辑值的所述位数对应于所述目标值时停止所述读取电压的所述施加。
技术总结
本公开涉及一种用于存取存储器单元阵列的方法,含以下步骤:将用户数据存储于存储器阵列的多个存储器单元中;将与用户数据中具有预定第一逻辑值的位数对应的计数数据存储于与存储器单元阵列相关联的计数器中;将读取电压施加到存储器单元以读取存储于存储器单元阵列中的用户数据;将读取电压施加到计数器的单元以读取存储于计数器中的计数数据且提供与用户数据中具有第一逻辑值的位数对应的目标值,其中在读取电压的施加期间,以一方式同时读取计数数据和用户数据,方式使得在用户数据的读取期间提供目标值;以及基于计数器的目标值,在用户数据中具有第一逻辑值的位数对应于目标值时停止读取电压的施加。还公开了一种相关存储器装置和相关系统。相关存储器装置和相关系统。相关存储器装置和相关系统。
