[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN103971739B - 包括非易失性存储设备的存储系统及其编程方法 - Google Patents

包括非易失性存储设备的存储系统及其编程方法 Download PDF

Info

Publication number
CN103971739B
CN103971739B CN201410045093.XA CN201410045093A CN103971739B CN 103971739 B CN103971739 B CN 103971739B CN 201410045093 A CN201410045093 A CN 201410045093A CN 103971739 B CN103971739 B CN 103971739B
Authority
CN
China
Prior art keywords
programming
pseudo
data
storage unit
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410045093.XA
Other languages
English (en)
Other versions
CN103971739A (zh
Inventor
郭东勋
朴起台
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103971739A publication Critical patent/CN103971739A/zh
Application granted granted Critical
Publication of CN103971739B publication Critical patent/CN103971739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5621Digital 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/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

一种存储系统及其编程方法。存储系统包括:非易失性存储设备;以及存储控制器,被配置为控制所述非易失性存储设备,使得通过第一编程模式和第二编程模式中的一个对与所述非易失性存储设备的所选择的行相连接的存储单元进行编程。在所述第一编程模式,将数目与最大页数目相对应的多个逻辑页存储在所述存储单元;以及在所述第二编程模式,使用与在所述第一编程模式中使用的不同的偏置条件将数目小于所述最大页数目的一个或多个逻辑页存储在所述存储单元。

Description

包括非易失性存储设备的存储系统及其编程方法
相关申请的交叉引用
本申请要求于2013年2月4日向韩国知识产权局提交的韩国专利申请No.10-2013-0012514的优先权,特此通过引用并入其全部内容。
技术领域
在此描述的发明概念涉及半导体存储器,更具体地涉及包括非易失性存储器的存储系统以及由包括非易失性存储器的存储系统执行的编程方法。
背景技术
半导体存储设备可以是易失性的或非易失性的。易失性半导体存储设备通常具有在断电状态下丢失所存储的内容的特征,而非易失性半导体存储设备通常具有在断电状态下保持所存储的内容的特征。
闪速存储器是非易失性半导体存储设备的一个示例,其已在电子工业中广泛采用。闪速存储器可以用于存储在诸如计算机、蜂窝电话、PDA、数字相机、可携式摄像机、语音记录器、MP3播放器、手持式PC、游戏机、传真机、扫描仪、打印机等的信息装置中的大量语音、图像数据和其他数据。
同时,在努力满足对高度集成的存储设备的持续需求中,研究已关注于其中以三维来布置存储单元的非易失性存储设备(下面,称为三维(3D)非易失性存储设备)的开发。字线之间的干扰是在设计3D非易失性存储设备中必须解决的特定问题。然而,可以利用电荷捕获闪速(CTF)存储单元来增加单元大小,其能够大部分地缓解字线干扰。这可以允许在所谓的一次编程模式中在存储单元编程多位数据,在一次编程模式中,同时在存储单元编程多个数据位,这与在存储单元一次编程一位数据的阴影编程模式相反。
发明内容
本发明概念的实施例的一个方面旨在提供一种存储系统,其包括:非易失性存储设备,被配置为在编程周期期间用多位数据对存储单元进行编程;以及存储控制器,被配置为控制非易失性存储设备,使得依据写入命令通过第一编程模式和第二编程模式中的一个对与非易失性存储设备的所选择的行相连接的存储单元进行编程。在第一编程模式,将数目与最大页数目相对应的多个逻辑页存储在存储单元,以及在第二编程模式,使用与在第一编程模式中使用的不同的偏置条件将数目小于最大页数目的一个或多个逻辑页存储在存储单元。
本发明概念的实施例的另一个方面涉及提供一种存储系统,其包括:非易失性存储设备,包括存储单元阵列并且被配置为对与存储单元阵列的相同字线相连接的存储单元中的N个逻辑数据页进行编程,其中N是2或大于2的整数。存储系统进一步包括:存储控制器,被配置为接收外部提供的写入命令和请求写入的数据,并且以正常编程模式和伪编程模式中的所选择的一个来控制非易失性存储设备。在正常编程模式中,存储控制器控制非易失性存储器将请求写入的数据作为N位数据存储在与存储单元阵列的相同字线相连接的存储单元中。在伪编程模式中,存储控制器控制非易失性存储器将请求写入的数据作为小于N位的数据存储在与存储单元阵列的相同字线相连接的存储单元中。伪编程模式的至少一个偏置条件不同于正常编程模式的至少一个偏置条件,使得伪编程模式的编程速度大于正常编程模式的编程速度。
本发明概念的实施例的又一个方面涉及提供一种存储系统,其包括:非易失性存储设备,包括由单级单元形成的第一存储器区域和由多级单元形成的第二存储器区域;以及存储控制器,被配置为控制所述非易失性存储设备,使得根据第一编程模式将从外部设备提供的数据存储在第一存储器区域以及将存储在第一存储器区域处的数据编程在第二存储器区域。所述存储控制器被配置为控制所述非易失性存储设备,使得基于第一存储器区域是否处于擦除状态,在第二编程模式下将请求写入的数据存储在第二存储器区域。在第一编程模式,在编程周期期间将多个页数据存储在所选择的存储单元;以及在第二编程模式,将大小小于所述多个页数据的数据编程在所选择的存储单元,第二编程模式的编程速度大于第一编程模式的编程速度。
本发明概念的还一方面提供了一种非易失性存储设备的编程方法,其以一次编程模式对多个数据页进行编程。所述方法包括:将请求写入的数据的大小与参考大小进行比较;当请求写入的数据的大小小于参考大小时,向非易失性存储设备发布对请求写入的数据的伪编程命令;依据伪编程命令在伪编程模式下用请求写入的数据对所选择的存储单元进行编程;以及在映射表处从包括在所选择的存储单元中的多个逻辑页区当中映射出被伪编程模式排除的逻辑页区的页地址。根据伪编程模式形成的存储单元的编程状态具有与根据一次编程模式形成的特征阈值电压分布不同的特征阈值电压分布。
本发明概念的实施例的另一个方面提供了一种非易失性存储设备的编程方法。非易失性存储设备包括第一存储器区域和第二存储器区域,根据一次编程模式将数据编程在第二存储器区域。所述编程方法包括:接收写入数据;以及确定第一存储器区域是否处于擦除状态。所述方法进一步包括:当确定第一存储器区域不处于擦除状态时,根据伪编程模式将写入数据编程在第二存储器区域的所选择的存储单元,而不在第一存储器区域缓冲写入数据;以及在映射表处从包括在所选择的存储单元中的多个逻辑页区映射出被伪编程模式排除的逻辑页区的页地址。根据伪编程模式形成的所选择的存储单元的特征阈值电压分布包括擦除状态和至少一个伪编程状态,该至少一个伪编程状态对应于所分配的逻辑页的读取电压的最宽的电压窗口。
附图说明
上述和其他方面和特征从下面的参考附图的详细描述将变得显而易见,其中在整个附图中相似的参考数字指代相同的部分,除非另外指定,并且其中:
图1是示意性图示根据本发明概念的实施例的存储系统的框图;
图2是在描述图1的控制器的编程模式判定方法的示例中用于参考的图;
图3是示意性图示根据本发明概念的实施例的非易失性存储设备的框图;
图4是在描述根据本发明概念的实施例的一次编程操作的示例的参考图;
图5是在描述根据本发明概念的实施例的伪编程方法的示例中用于参考的图;
图6是在描述根据本发明概念的实施例的存储控制器的操作的示例中用于参考的流程图;
图7是在描述执行参考图6描述的伪编程操作的存储控制器的操作的示例中用于参考的流程图;
图8A和8B是示意性图示根据本发明概念的实施例的伪编程操作的命令序列的示例的时序图;
图9是示意性图示图1的映射表的示例的表;
图10A、10B、10C和10D是在描述根据本发明概念的实施例的伪编程方法的示例中用于参考的图;
图11是在描述读取通过伪编程操作编程的存储单元的方法的示例中用于参考的时序图;
图12A和12B是在描述对3位多级单元的伪编程方法的示例中用于参考的图;
图13A和13B是在描述对3位多级单元的伪编程方法的另一示例中用于参考的图;
图14A和14B是在描述对3位多级单元的伪编程方法的又一示例中用于参考的图;
图15A和15B是在描述对4位多级单元的伪编程方法的示例中用于参考的图;
图16A和16B是在描述对4位多级单元的伪编程方法的另一示例中用于参考的图;
图17是在描述根据本发明概念的实施例的存储系统的操作的示例中用于参考的图;
图18是图1的非易失性存储设备的存储块的示例的立体图;
图19是在描述根据本发明概念的另一实施例的存储系统的示例中用于参考的图;
图20是示意性图示图19的非易失性存储设备的示例的框图;
图21是在描述图19的存储系统的操作的示例中用于参考的流程图;
图22是在描述根据本发明概念的另一实施例的存储系统的操作的示例中用于参考的流程图;
图23是图示根据本发明概念的实施例的包括固态驱动器的用户设备的框图;
图24是图示根据本发明概念的实施例的数据存储设备的框图;以及
图25是示意性图示根据本发明概念的实施例的计算系统的框图。
具体实施方式
将参考附图详细描述实施例。然而,本发明概念可以以各种不同的形式来具体化,并且不应认为仅限于所图示的实施例。相反,作为示例提供这些实施例,使得该公开将是全面和完整的,并且将向本领域技术人员全面传递本发明概念的概念。因此,关于本发明概念的实施例中的一些,没有描述已知的过程、元件和技术。除非另外指出,否则在整个附图和说明书中相同的参考数字表示相同的元素,因而将不重复描述。在附图中,为了清楚起见,可以放大层和区域的大小和相对大小。
应理解,尽管在此可以使用术语“第一”、“第二”、“第三”等来描述各种元件、组件、区域、层和/或部分,但是这些元件、组件、区域、层和/或部分不应受这些术语限制。这些术语仅用来将一个元件、组件、区域、层或部分与另一区域、层或部分相区分。因而,可以将下面讨论的第一元件、组件、区域、层或部分术语化为第二元件、组件、区域、层或部分,而不背离本发明概念的教导。
为了便于描述如图中所图示的一个元件或特征与另一个元件或特征的关系,在此可以使用空间相关术语,诸如“下面”、“之下”、“低”、“下”、“上面”、“上”等。应理解,空间相关术语旨在涵盖除了图中描述的朝向外的设备在使用或操作中的不同朝向。例如,将图中的设备反转,可以将被描述为在其他元件或特征“之下”或“下面”或“下”的元件定向为在所述其他元件或特征“上面”。因而,示范性术语“下面”和“下”可以涵盖上面和下面两个朝向。可以另外对设备定向(旋转90度或在其他朝向),并且相应地解释在此使用的空间相关描述。此外,还应理解,当将层称为在两个层“之间”时,其可以是在该两个层之间的唯一层,或者也可以存在一个或多个插入层。
在此使用的词语仅用于描述特定实施例的目的,而不旨在限制本发明概念。如在此使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文明确指示并非如此。进一步应理解,在本说明书中使用的术语“包括”和/或“包含”指定所述特征、整体、步骤、操作、元件、和/或组件的存在,但是不排除一个或多个其他特征、整体、步骤、操作、元件、组件、和/或组的存在或增加。如在此使用的,术语“和/或”包括关联列出的项中的一个或多个的任何和所有组合。而且,术语“示范性”旨在引用示例或图示。
应理解,当将元件或层称为在另一个元件或层“上”、“连接到”、“耦接到”或“相邻于”另一个元件或层时,其可以直接在另一个元件或层上、直接“连接到”、“耦接到”或“相邻于”另一个元件或层,或可以存在插入元件或层。相比而言,当将元件或层称为直接在另一个元件或层“上”、“直接连接到”、“直接耦接到”或“直接相邻于”另一个元件或层时,不存在插入元件或层。
除非另外定义,否则在此使用的所有术语(包括技术和科学术语)具有与本发明概念所属的领域的普通技术人员所理解的含义相同的含义。进一步应理解,诸如词典中共同使用的词语应被解释为具有与其在相关领域和/或本说明书的上下文中的含义一致的含义,并且不应以理想化或过度正式的意思来解释,除非在此明确如此定义。
下面,使用闪速存储设备作为非易失性存储介质来示范性描述本发明概念的特征和功能。然而,本发明概念不限于此。也就是说,存储介质可以由其他非易失性存储设备形成。例如,存储介质可以由PRAM、MRAM、ReRAM、FRAM、NOR闪速存储器等来形式。
可以通过不同的实施例来实现或应用本发明概念。此外,在不背离本发明概念的范围、精神或其他目的的情况下,可以根据观点和应用对详细描述进行修改或改变。下面,将参考附图来描述本发明概念。
图1是示意性图示根据本发明概念的实施例的存储系统的框图。参考图1,存储系统100可以包括存储控制器110和非易失性存储设备120。
存储控制器110可以响应于主机的请求而控制非易失性存储设备120。存储控制器110可以提供主机和非易失性存储设备120之间的接口。存储控制器110可以响应于主机的写入请求而控制非易失性存储设备120的写入操作。存储控制器110可以响应于主机的读取请求而控制非易失性存储设备120的读取操作。
存储控制器110可以驱动作为固件类型的闪速转换层(此后称为FTL)。FTL可以提供用于在主机的文件系统和非易失性存储设备120之间隐藏非易失性存储设备120的擦除操作的接口。FTL可以补偿非易失性存储设备的特征缺陷,诸如写入前擦除(erase-before-write)、擦除单元和写入单元之间的误匹配等。而且,在非易失性存储设备120的写入操作,FTL可以将文件系统生成的逻辑地址LA映射到非易失性存储设备120的物理地址PN。存储控制器110可以包括用于这样的地址映射的映射表。
存储控制器110可以根据主机请求的数据写入的大小来选择多个编程模式中的一个。当请求写入的数据的大小小于参考值时,存储控制器110可以选择伪编程模式。当请求写入的数据的大小大于参考值时,存储控制器110可以选择正常编程模式。这里,参考值可以对应于比一次编程模式的编程单元的数据大小小的数据大小。例如,如果一个编程单元对应于3个数据页,则参考值可以对应于2个数据页或1个数据页。
当选择伪编程模式时,存储控制器110可以向非易失性存储设备120发布伪编程命令PP_CMD。当选择正常编程模式时,存储控制器110可以向非易失性存储设备120发布正常编程命令NP_CMD,使得根据其中利用编程单位(例如对应于三页)的正常编程模式来编程请求写入的数据。
非易失性存储设备120可以根据存储控制器110的控制来执行擦除操作、读取操作和写入操作。非易失性存储设备120可以包括多个存储块BLK1至BLKi(i是大于等于2的整数)。每个存储块可以包括以行和列排列的多个存储单元。每个存储单元可以是能够存储多个位的多级单元(MLC)。在非易失性存储设备120中,每个存储块可以是擦除单元。每个存储块可以包括NAND单元串,其中沿与基底交叉的方向堆叠存储单元。
非易失性存储设备120可以响应于伪编程命令PP_CMD而以相对高的速度将输入数据编程在所选择的存储单元。可以高速将伪编程命令PP_CMD提供的写入数据编程在所选择的存储单元。也就是说,在伪编程模式,可以在与正常编程模式的偏置条件不同的偏置条件下执行编程操作。例如,在伪编程操作的编程循环数、开始编程电压、递增步阶脉冲编程(ISPP)方案的步阶电压的电平等可以与正常编程模式的那些不同。
利用本发明概念的实施例,可以用通过随机模式请求写入的相对小的大小的数据(例如元数据)对非易失性存储单元进行编程。可以对要存储在非易失性存储单元处的数据进行编程而无须设立用于一次编程的编程单元。在该情况下,可以最小化在突然断电的事件中丢失的数据。此外,可以根据请求写入的数据的相对重要性和属性来决定是否执行伪编程模式。
图2是在描述图1的控制器的编程模式判定方法中用于参考的图。参考图2,存储控制器110可以基于请求写入的数据的大小来决定非易失性存储设备120的编程模式。
如果请求写入的数据Write Data1的大小小于参考大小,则存储控制器可以选择伪编程模式。如果请求写入的数据Write Data2的大小大于参考大小,则存储控制器可以选择正常编程模式。
在图2中,图示了根据请求写入的数据的大小来决定请求写入的数据的编程模式的示例。然而,本发明概念不限于此。例如,如上面所建议的,可以基于写入数据的相对重要性、属性和/或输入式样来决定编程模式。例如,即使数据的大小小,也可以根据正常编程模式对不要求快速编程的具有低重要性的数据进行编程。
图3是示意性图示根据本发明概念的实施例的非易失性存储设备的框图。参考图3,非易失性存储设备110可以包括单元阵列121、行译码器122、页缓冲器123、输入/输出缓冲器124、控制逻辑125和电压生成器126。
单元阵列121可以通过字线和选择线连接到行译码器。单元阵列121可以通过位线BL0至BLn-1连接到页缓冲器123。单元阵列121可以包括多个NAND单元串,其每一个形成垂直或水平方向上的通道。可以在垂直方向上堆叠单元阵列121的字线。具体地,在其中在垂直方向上形成单元串的非易失性存储设备中,可以使用其中在编程周期内编程多个位的一次编程模式来对存储单元进行编程。在该情况下,指示存储了多位数据的标记单元可以是不必要的。
行译码器122可以响应于地址ADD而选择存储块中的一个。行译码器122可以选择所选择的存储块的字线中的一个。行译码器122可以向所选择的字线提供来自电压生成器126的电压。在编程操作,行译码器122可以将编程或验证电压传递到所选择的字线,以及将通过电压传递到未选择的字线。
在编程操作,页缓冲器123可以向单元阵列121的位线BL0至BLn-1提供与要编程的数据相对应的位线电压。在读取操作,页缓冲器123可以读出和锁存通过位线BL0至BLn-1存储在所选择的存储单元处的数据。页缓冲器123可以将所锁存的数据传递到输入/输出缓冲器124。
在编程操作,输入/输出缓冲器124可以将写入数据传递到页缓冲器123。在读取操作,输入/输出缓冲器124可以向外部设备输出从页缓冲器123提供的读取数据。输入/输出缓冲器124可以向控制逻辑125或行译码器122提供输入地址或命令。
控制逻辑125可以响应于通过输入/输出缓冲器124传递的命令CMD和地址ADD而控制页缓冲器123和电压生成器126。控制逻辑125可以响应于编程命令而控制电压生成器126,以根据不同模式生成偏置。例如,响应于编程命令PP_CMD,控制逻辑125可以控制电压生成器126生成要提供给所选择的字线的粗糙编程电压。响应于正常编程命令NP_CMD,控制逻辑125可以控制电压生成器126生成精细编程电压。
可以通过控制逻辑125来控制电压生成器126,并且电压生成器126可以生成要提供给字线的字线电压、要提供给其中形成存储单元的体(bulk)的电压等。字线电压可以包括编程电压、通过电压、选择和未选择电压等。电压生成器126可以响应于控制逻辑125的控制而生成粗糙编程电压和精细编程电压。
粗糙编程电压可以是具有相对高的开始电平的编程电压或其中编程脉冲之间的步阶电压较大的ISPP(递增步阶脉冲编程电压)。替选地,粗糙编程电压可以是被确定为使得使用相对低数目的编程循环的编程电压。也就是说,粗糙编程电压可以是被确定为使得降低编程验证脉冲的数目的电压。另一方面,精细编程电压可以是用于最佳形成所选择的存储单元的分布的ISPP电压。此外,在所有编程状态上的验证电压脉冲可以包括在精细编程电压中。
非易失性存储设备120可以根据存储控制器110的编程命令来生成不同的编程电压。也就是说,响应于伪编程命令PP_CMD,非易失性存储设备120可以高速在所选择的存储单元处对写入数据进行编程。可以通过伪编程操作高速利用小的大小的数据将所选择的存储单元编程。
图4是在描述根据本发明概念的实施例的一次编程操作中用于参考的图。参考图4,(I)可以示出在编程之前的存储单元的阈值电压状态,以及(II)可以示出在一次编程之后分别与编程状态相对应的存储单元的阈值电压分布。
参考图4的上部分(I),未编程的所有存储单元可以具有与擦除状态E0相对应的阈值电压。所选择的存储单元通过擦除操作可以具有与擦除状态E0相对应的阈值电压。如果接收能够存储的所选择的存储单元的数据的最大大小,则可以执行一次编程操作。
一次编程操作可以是其中通过编程周期对要存储在多位单元的多位数据进行编程的编程操作。也就是说,在2位多级单元的情况下,通过一次编程操作在编程周期期间可以对2位数据进行编程。一个编程周期可以由多个增加的编程脉冲和分别与在相应编程脉冲之后的目标状态Q1、Q2和Q3相对应的验证电压形成。也就是说,一次编程操作可以与其中在编程周期将1位数据存储在多级单元的阴影编程操作相区分。
一次编程技术可以应用于其中在字线之间的干扰(编程干扰)不成问题的垂直非易失性存储设备。在本概念的多级单元编程模式中,响应于正常编程命令NP_CMD而执行的非易失性存储设备的编程模式可以是一次编程模式。
图5是在描述根据本发明概念的实施例的伪编程方法中用于参考的图。在图5的示例中,可以通过字线单元来对本发明概念的非易失性存储单元进行编程,并且每个非易失性存储单元可以存储2位数据。
假设通过一次编程操作利用2位数据对与字线WL0至WL1相连接的存储单元进行编程。利用该假设,与字线WL0至WL1相连接的每个存储单元通过一次编程操作可以具有与四个阈值电压状态E0、Q1、Q2和Q3中的一个相对应的阈值电压。在存储控制器110的判定下通过伪编程操作对输入数据进行编程的情况下,可以高速在与字线WL2相连接的每个存储单元编程1位数据。
当根据伪编程操作对与字线WL2相连接的存储单元进行编程时,控制逻辑125(参考图3)可以控制电压生成器126(参考图3)来生成具有与正常编程操作的电平不同的电平的电压。电压生成器126可以向与字线WL2相连接的存储单元提供字线电压,用于能够执行高速编程操作的伪编程操作。利用伪编程操作,可能相对粗略地控制电压。对此的原因可以是目标阈值电压PS1在读取电压R1和R3之间。例如,在伪编程操作提供的编程脉冲可以被确定为使得编程循环的数目相对小或开始编程电压相对高。伪编程操作可以仅使与目标阈值电压PS1相对应的验证脉冲是必要的。因而,在伪编程操作的验证脉冲的数目可以小于在正常编程操作的验证脉冲。这可以意味着伪编程操作的速度显著快于正常编程操作的速度。
可以使用用于读MSB页的读取电压R1和R3来读取根据伪编程操作编程的存储单元。由于存储在与字线WL2相连接的存储单元处的LSB页从映射表115映射出,所以可以将通过读取电压R1和R3读取的数据作为有效数据输出。结果,可以通过MSB页读取操作来读出通过伪编程操作编程的存储单元。
可以通过使用读取操作R1执行读出操作和使用读取操作R2执行读出操作,来读取存储在与字线WL2相连接的存储单元处的MSB页。最后,可以使用读取电压R1读取通过伪编程操作写入的数据。
图6是在描述根据本发明概念的实施例的存储控制器的操作中用于参考的流程图。在该实施例的示例中,存储控制器110可以响应于主机的请求而选择伪编程操作或正常编程操作。
在操作S110,如果请求了写入操作,则存储控制器110可以接收请求写入的数据。这里,可以由主机来请求写入操作。然而,本发明概念不限于此。例如,可以通过存储控制器110的内部操作来请求与相对小的大小的数据相关联的读取操作。
在操作S120,存储控制器110可以确定请求写入的数据的大小是否小于参考大小。如果请求写入的数据的大小小于参考大小,则该方法可以进行到操作S130。如果请求写入的数据的大小等于或大于参考大小,则该方法可以前进到操作S140。
在操作S130,存储控制器110可以根据伪编程操作在非易失性存储设备120编程请求写入的数据。也就是说,存储控制器110可以发布单独的命令序列,以将请求写入的数据编程在非易失性存储设备120的所选择的区。响应于伪编程命令PP_CMD,非易失性存储设备120可以使用与正常编程操作的偏置条件不同的偏置条件来执行高速编程操作。然后,存储控制器110可以在映射表115记录所选择的存储单元的页地址中由于伪编程操作而映射出的一个或多个地址。
在操作S140,存储控制器110可以根据正常编程操作来编程请求写入的数据。存储控制器110可以向非易失性存储设备120发布正常编程命令NP_CMD,以将请求写入的数据编程在所选择的存储单元。响应于正常编程命令NP_CMD,非易失性存储设备120可以通过一次编程操作来对所选择的存储单元进行编程。也就是说,在编程周期期间,可以利用数据页来编程所选择的存储单元(即与字线相连接的存储单元)。
在此描述了其中基于数据大小来确定关于请求写入的数据的编程模式的示例。然而,本发明概念不限于此。例如,可以使用数据的输入模式和/或属性和/或相对重要性作为确定上述编程模式的参考。
图7是在描述执行参考图6描述的伪编程操作的存储控制器的操作中用于参考的流程图。这里,如下面将描述的,存储控制器110可以使用映射表115来映射用于伪编程操作的地址。
在操作S132中,当确定伪编程操作时,存储控制器110可以选择要存储写入数据的存储单元。可以根据字线的位置依序对非易失性存储设备120的存储单元进行编程。然而,在确定伪编程操作的情况下,可以使与字线相连接的存储单元的页区中的至少一个(例如,MSB和LSB页)无效。
在操作S134中,存储控制器可以向非易失性存储设备120发送伪编程命令PP_CMD和数据。响应于伪编程命令PP_CMD,非易失性存储设备120可以生成编程电压或验证电压,用于所选择的存储单元的伪编程操作。非易失性存储设备120可以使用所生成的电压来高速编程所选择的存储单元。
在操作S136中,存储控制器110可以根据伪编程操作来更新映射表115。所选择的存储单元的页区的一部分可能由于伪编程操作而被映射出。可以在读取操作使用映射出的页区,以阻止读取操作或使读取操作无效。
图8A和8B是示意性图示根据本发明概念的实施例的用于伪编程操作的命令序列的示例的时序图。参考图8A,可以将新命令集分配给与伪编程命令PP_CMD相对应的命令序列。在命令锁存使能信号CLE的高电平间隔期间,非易失性存储设备120(参考图3)可以接收指引对数据Din的伪编程操作的第一命令集131。在地址锁存使能信号ALE的高电平间隔期间,非易失性存储设备120可以接收用于伪编程操作的列地址CA和行地址RA。可以在地址输入周期期间将列和行地址CA和RA提供给非易失性存储设备120。
在接收了地址之后,可以接收请求写入的数据。可以与写入使能信号/WE(未示出)同步地接收写入数据Din。在接收了写入数据Din之后,可以在命令锁存使能信号CLE的高电平间隔期间接收指引编程确认的第二命令集133。响应于第二命令集133,非易失性存储设备120可以根据伪编程模式将写入数据编程在所选择的存储单元。通过伪编程操作将数据编程在所选择的存储单元花费的时间可以是与就绪/忙信号RnB相对应的编程时间tPROG。与伪编程模式相对应的编程时间可以比与正常编程模式相对应的编程时间相对短。
这里,与指引伪编程操作的命令集CS1和CS2中的一个相对应的代码或与命令集CS1和CS2相对应的代码可以与正常编程操作的不同。
参考图8B,在命令锁存使能信号CLE的高电平间隔期间,非易失性存储设备120可以接收命令集80h和10h。在地址锁存使能信号ALE的高电平间隔期间,非易失性存储设备120可以接收用于伪编程操作的列地址CA和行地址RA’。也就是说,可以通过地址集RA’的改变替代用于伪编程操作的命令集来控制非易失性存储设备120。
图9是示意性图示图1的映射表的示例的表。参考图9,存储控制器110可以确定为伪编程操作选择的存储单元的页地址。例如,在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射出与字线WL2相连接的存储单元的LSB页(第一页)。这里,映射出(map-out)操作可以是用于从分配给所选择的存储单元的页区中指定不存储数据的页区的操作。例如,在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以仅仅映射存储数据的MSB页(例如第2页)。也就是说,如图5的表中所示,可以将第5页映射在与字线WL2相连接的存储单元的MSB页(例如第2页)。因而,可以通过对与字线WL2相连接的存储单元执行MSB页(第2页)读取操作来读出伪编程的数据。
图10A至10D是在描述根据本发明概念的实施例的伪编程方法的示例中用于参考的图。图10A示出应用于在正常编程操作选择的存储单元的字线电压。图10B至10D示出应用于在伪编程操作选择的存储单元的字线的电压。假设所选择的存储单元是2位多级单元。在该情况下,可以将存储单元的阈值电压改变为对应于在一次编程操作的擦除状态E0和三个目标状态Q1至Q3中的一个。
参考图10A,应用于在正常编程操作选择的存储单元的编程电压可以被提供为其电平根据循环数目的增加而增加的脉冲。也就是说,编程电压可以符合递增步阶脉冲编程(ISPP)方案。利用ISPP方案,可以将以递增量ΔV1依序增加的脉冲队列应用于所选择的存储单元的字线。在编程电压脉冲Vpgm1至VpgmM中的每个之后,可以应用分别与目标状态Q1、Q2和Q3相对应的验证电压Vfy1、Vfy2和Vfy3。可以应用编程电压脉冲和验证电压脉冲,直到达到最大循环数目(LoopM)为止。
参考示出应用于在本发明概念的实施例的伪编程操作选择的字线的电压的图10B,在伪编程操作的每个循环,可以向所选择的存储单元应用其电平根据循环数目的增加而以递增量ΔV1增加的编程电压脉冲VpgmM(M是大于或等于3的整数)和具有固定值的验证电压脉冲Vfy1。在伪编程操作的编程电压Vpgm的递增量V1的电平可以等于在参考图10A描述的正常编程操作的电平,同时可以将开始编程电压设置为编程电压Vpgm3。因而,可以降低总编程循环数。此外,可以在每个编程循环应用用来验证目标状态P1的验证电压脉冲Vfy1。可以应用编程电压脉冲和验证电压脉冲,直到达到最大循环数(LoopM)为止。
这里,验证电压Vfy1可以是在正常编程操作用来验证编程状态Q1的电压。然而,可以将验证电压Vfy1设置为比用来验证编程状态Q1的验证电压低或高,以改进编程速度。
参考图10C,其示出在开始编程电压相同的假设下在伪编程操作的编程电压脉冲VpgmN(1≤N≤M)的脉冲持续时间的示例,目标状态可以存在于伪编程操作处,使得缩短用于编程验证的时间。因而,可以将编程脉冲之间的持续时间从ΔT1降低到ΔT2(其中ΔT1>ΔT2)。
参考示出在伪编程操作提供的字线电压的另一个示例的图10D,在伪编程操作的递增量ΔV2的电平可以高于在正常编程操作的ΔV1。在伪编程操作的编程电压脉冲VpgmN之间的持续时间ΔT2可以短于在正常编程操作的ΔT1。在该情况下,与图10A至10C相比,可以明显改进编程速度。
通过参考图10A至10D的示例描述了在伪编程操作提供的编程电压和验证电压。然而,本发明概念不限于这些特定示例,并且可以进行对字线电压的各种修改和改变。
图11是在描述读取通过伪编程操作编程的存储单元的方法的示例中用于参考的时序图。参考图11,可以提供所指定的行地址RA(P)以读取根据伪编程命令PP_CMD编程的存储单元。如参考图5所描述的,在2位多级单元中,存储控制器110可以忽略参考映射表115(参考图1)映射出的逻辑页区。存储控制器110可以向非易失性存储设备提供包括关于通过伪编程操作写入在存储单元的行地址RA(P)的读取命令序列。
在命令锁存使能信号CLE的高电平间隔期间,存储控制器110可以向非易失性存储设备120发布命令集00h(参考图1),以读取伪编程的数据。在地址锁存使能信号ALE的高电平间隔期间,存储控制器110可以向非易失性存储设备120提供列地址CA和行地址(RA(P))140。可以基于如上所述映射出的页地址来确定行地址140。在提供地址之后,存储控制器110可以在命令锁存使能信号CLE的高电平间隔期间向非易失性存储设备120发布命令集30h。
响应于命令的输入,非易失性存储设备120可以在读取时间tR期间读出和锁存数据。非易失性存储设备120可以基于行地址(RA(P))140执行MSB页读取操作。在根据伪编程模式对M位多级单元(M是大于或等于3的整数)进行编程的情况下,行地址(RA(P))140可以是与多个逻辑页中的一个或两个逻辑页相对应的地址。
如果准备好输出数据,则非易失性存储设备120可以将就绪/忙信号RnB设置为高电平,以向存储控制器110通知其准备好输出数据。存储控制器110可以参考就绪/忙信号RnB的高电平从非易失性存储设备120取得数据Dout。
图12A和12B是在描述3位多级单元的伪编程方法的示例中用于参考的图。图12A示出了当在伪编程操作在每个所选择的存储单元处编程1位数据的阈值电压分布。具体地,可以将三个逻辑页区中的第一页区(第1页)指定为用于伪编程的存储单元,并且可以在映射表115(参考图1)映射出其余的逻辑页区(第2和第3页)。
参考图12A,可以在伪编程操作在每个所选择的存储单元编程1位数据。可以使用一次编程模式通过正常编程操作将3位数据存储在所选择的存储单元。在正常编程操作的情况下,编程的存储单元可以具有擦除状态E0和编程状态P1至P7中的一个。
如果通过伪编程操作以高速编程,则所选择的存储单元可以具有擦除状态E0和伪编程状态PS1中的一个。在图12A中,图示了其中通过高速伪编程操作对存储单元进行编程以具有伪编程状态PS1的示例。然而,本发明概念不限于此。由于伪编程状态PS1具有宽的电压窗口并且对应于低阈值电压,所以在编程速度方面是有利的。
在读取操作,可以通过第一页读取操作来读取根据伪编程操作编程的存储单元。例如,可以仅通过其中使用读取电压R1和R5来读取所选择的存储单元的第一页读取操作,来读取伪编程的存储单元。更详细地,可以使用读取电压R1来确定所选择的存储单元是具有擦除状态E0还是伪编程状态PS1。
在读取操作,存储控制器110可以提供关于所选择的存储单元的三个逻辑页区的第一页区(第1页)的地址。非易失性存储设备120可以依序生成用于读出所选择的存储单元的第一页区(第1页)的读取电压R1和R5,并且将它们提供给与所选择的存储单元相连接的字线。可以使用读取电压R1和R5来确定所选择的存储单元是接通单元还是断开单元,并且可以将确定结果存储在特定锁存处。然后,非易失性存储设备120可以输出使用读取电压R1读出的数据作为伪编程的数据。
参考示出在对3位多级单元的伪编程操作存储控制器110的映射表115的示例的图12B,存储控制器110可以对与字线WL2相连接的存储单元执行伪编程操作,并且然后更新映射表115。这时,存储控制器110可以映射出与字线WL2相连接的存储单元的第2页区(第2页)和第3页区(第3页)。在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射实际存储数据的第1页区(第1页)。也就是说,可以将与字线WL2相连接的存储单元的第1页区(第1页)映射在与从主机输入的逻辑地址相对应的非易失性存储设备120的第7页上。因而,可以通过对与字线WL2相连接的存储单元的第1页读取操作来读取伪编程的数据。
图13A和13B是在描述对3位多级单元的伪编程方法的另一个示例中用于参考的图。图13示出了当在伪编程操作在所选择的存储单元的每个处编程1位数据的阈值电压分布。具体地,可以将三个逻辑页区的第3页区(第3页)指定给存储单元用于伪编程,并且可以在映射表115(参考图1)映射出其余逻辑页区第1页和第2页。
参考图13A,可以在伪编程操作处在每个所选择的存储单元编程1位数据。如果通过伪编程操作被高速编程,则所选择的存储单元可以具有擦除状态E0和伪编程状态PS1中的一个。图13A中的伪编程状态PS1的阈值电压电平可以比图12A中的那些高。因而,在图13A的伪编程操作使用的验证电压的电平可以比在图12A的伪编程操作中使用的高。因而,编程速度相对于先前参考图12A描述的伪编程操作的编程速度可能较慢。
在读取操作,可以通过第3页读取操作来读取根据伪编程操作编程的存储单元。例如,可以仅通过其中使用读取电压R3和R7读取所选择的存储单元的第3页读取操作来读取伪编程的存储单元。更详细地,可以使用读取电压R3来确定所选择的存储器是具有擦除状态E0还是伪编程状态PS1。
在读取操作,存储控制器110可以提供关于所选择的存储单元的三个逻辑页区的第3页区(第3页)的地址。非易失性存储设备120可以依序生成用于读出所选择的存储单元的第3页区(第3页)的读取电压R3和R7,并且将它们提供给与所选择的存储单元相连接的字线。可以使用读取电压R3和R7来确定所选择的存储单元是接通单元还是断开单元,并且可以将确定结果存储在特定锁存处。然后,非易失性存储设备120可以输出使用读取电压R3读出的数据作为伪编程的数据。
参考示出在对3位多级单元的伪编程操作的存储控制器110的映射表115的示例的图13B,存储控制器110可以对与字线WL2相连接的存储单元执行伪编程操作,并且然后更新映射表115。这时,存储控制器110可以映射出与字线WL2相连接的存储单元的第1页区(第1页)和第2页区(第2页)。在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射实际存储数据的第3页区(第3页)。也就是说,可以将与字线WL2相连接的存储单元的第3页区(第3页)映射在与从主机输入的逻辑地址相对应的非易失性存储设备120的第7页上。因而,可以通过对与字线WL2相连接的存储单元的第3页读取操作来读取伪编程的数据。
图14A和14B是在描述对3位多级单元的伪编程方法的又一个示例中用于参考的图。图14A示出了当在伪编程操作在所选择的存储单元的每个处编程2位数据的阈值电压分布。具体地,可以将三个逻辑页区的第1页区(第1页)和第3页区(第3页)指定给存储单元用于伪编程,并且可以在映射表115(参考图1)映射出第2逻辑页区(第2页)。
参考图14A,可以在伪编程操作在每个所选择的存储单元处编程2位数据。可以使用一次编程模式通过正常编程操作将3位数据存储在所选择的存储单元处。然而,在伪编程操作的情况下,可以将存储单元编程为具有擦除状态E0或多个伪编程状态PS1至PS3中的一个。也就是说,可以为伪编程操作选择所选择的存储单元的第1页区和第3页区(第1页和第3页)。
在读取操作,可以通过第1页读取操作或第3页读取操作来读取根据伪编程操作编程的存储单元。例如,存储控制器110可以提供图11中图示的读取命令以读取第1页区的伪编程的数据。这时,存储控制器110可以提供与第1和第3页区(第1和第3页)相对应的行地址。非易失性存储设备120可以使用读取电压R1、R3、R5和R7来读取所选择的存储单元。非易失性存储设备120可以输出通过读取操作读出的两个页的数据。
替选地,存储控制器110可以输出与所选择的存储单元的第1页区(第1页)相对应的行地址。在该情况下,非易失性存储设备120可以使用读取电压R1、R3、R5和R7来读取所选择的存储单元,并且可以从使用读取电压R1、R3、R5和R7读取的数据中输出与第1页区(第1页)相对应的数据。在第3页读取操作,可以以与在第1页读取操作相同的模式来读出所选择的存储单元。在该情况下,可以从锁存的两页数据中输出与请求读取的第3页区(第3页)相对应的数据。
参考示出在对3位多级单元的伪编程操作存储控制器110的映射表115的示例的图14B,存储控制器110可以对与字线WL2相连接的存储单元执行伪编程操作,并且然后更新映射表115。这时,存储控制器110可以映射出与字线WL2相连接的存储单元的第2页区(第1页)。在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射实际存储数据的第1和第3页区(第1和第3页)。也就是说,可以将与字线WL2相连接的存储单元的第1和第3页区(第1和第3页)映射在与从主机输入的逻辑地址相对应的非易失性存储设备120的物理地址上。因而,可以通过对与字线WL2相连接的存储单元的两个页区(例如第1和第3页)的读取来读取伪编程的数据。
图15A和15B是在描述对4位多级单元的伪编程方法的示例中用于参考的图。图15A示出了当在伪编程操作处在所选择的存储单元的每个处编程1位数据的阈值电压分布。具体地,可以将四个逻辑页区的第1页区(第1页)指定给存储单元用于伪编程,并且可以在映射表115(参考图1)映射出其余逻辑页区(第2至第4页)。
参考图15A,可以在伪编程操作处在每个所选择的存储单元处编程1位数据。可以使用一次编程模式通过正常编程操作将4位数据存储在所选择的存储单元处。在正常编程操作的情况下,编程的存储单元编程可以具有擦除状态E0和编程状态P1至P15中的一个。
在读取操作,可以使用四个读取电压R4、R10、R12和R14来读取第1页区(第1页),以及可以使用四个读取电压R3、R5、R9和R15来读取第2页区(第2页)。可以使用四个读取电压R1、R6、R8和R11来读取第3页区(第3页),以及可以使用三个读取电压R2、R7和R13来读取第4页区(第4页)。在读取操作,可以依序将这样的读取电压应用于所选择的存储器单元,并且可以将与每个页相对应的读取数据存储在指定的锁存。
然而,在逻辑第2、第3和第4页被伪编程操作排除在外的情况下,可以使用四个读取电压R4、R10、R12和R14来读取第一页区(第1页)。可以通过其中使用读取电压R4、R10、R12和R14读取所选择的存储器单元的第1页读取操作来读取伪编程的数据。更详细地,可以使用读取电压R4来确定所选择的存储器单元是具有擦除状态E0还是伪编程状态PS1。
在读取操作,存储控制器110可以提供所选择的存储单元的四个逻辑页区中与第1页区(第1页)相对应的地址。非易失性存储设备120可以依序生成用于读出所选择的存储单元的第1页区(第1页)的读取电压R4、R10、R12和R14,并且将它们提供给与所选择的存储单元相连接的字线。可以使用读取电压R4、R10、R12和R14来确定所选择的存储单元是接通单元还是断开单元,并且可以将确定结果存储在特定锁存处。然后,非易失性存储设备120可以输出使用读取电压R4读出的数据作为伪编程的数据。
参考示出在对4位多级单元的伪编程操作的存储控制器110的映射表115的示例的图15B,存储控制器110可以对与字线WL2相连接的存储单元执行伪编程操作,并且然后更新映射表115。这时,存储控制器110可以映射出与字线WL2相连接的存储单元的第2、第3和第4页区(第2、第3和第4页)。在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射实际存储数据的第1页区(第1页)。也就是说,可以将与字线WL2相连接的存储单元的第1页区(第1页)映射在与从主机输入的逻辑地址相对应的非易失性存储设备120的第9页上。因而,可以通过对与字线WL2相连接的存储单元的第1页读取操作来读取伪编程的数据。
图16A和16B是在描述对4位多级单元的伪编程方法的另一示例中用于参考的图。图16A示出了当在伪编程操作处在所选择的存储单元的每个处编程2位数据的阈值电压分布。具体地,可以将四个逻辑页区的第3和第4页区(第3和第4页)指定给存储单元用于伪编程,并且可以在映射表115(参考图1)映射出其余逻辑页区(第1和第2页)。
参考图16A,可以在伪编程操作处在每个所选择的存储单元处编程1位数据。可以使用一次编程模式通过正常编程操作将4位数据存储在所选择的存储单元处。然而,可以通过伪编程操作将存储单元编程为具有擦除状态E0或多个伪编程状态PS1至PS3中的一个。也就是说,可以为伪编程操作选择所选择的存储单元的第3和第4页区(第3和第4页)。
在读取操作,可以通过第3页读取操作或第4页读取操作来读取根据伪编程操作编程的存储单元。例如,存储控制器110可以提供图11中图示的读取命令,以读取第3页区的伪编程的数据。这时,存储控制器110可以提供与第3页区(第3页)相对应的行地址。非易失性存储设备120可以使用读取电压集(R1、R6、R8、R11)和(R2、R7、R13)来读取所选择的存储单元。非易失性存储设备120可以从通过读取操作读出的两页数据中输出与第3页区相对应的数据。
在第4页读取操作,可以以与第3页读取操作相同的模式来读出所选择的存储单元。在该情况下,可用从锁存的两页数据中输出与请求读取的第4页区(第4页)相对应的数据。
参考示出在对4位多级单元的伪编程操作的存储控制器110的映射表115的示例的图16B,存储控制器110可以对与字线WL2相连接的存储单元执行伪编程操作,并且然后更新映射表115。这时,存储控制器110可以映射出与字线WL2相连接的存储单元的第1和第2页区(第1和第2页)。在为伪编程操作选择与字线WL2相连接的存储单元的情况下,存储控制器110可以映射实际存储数据的第3和第4页区(第3和第4页)。也就是说,可以将与字线WL2相连接的存储单元的第3和第4页区(第3和第4页)映射在与从主机输入的逻辑地址相对应的非易失性存储设备120的物理地址上。因而,可以通过对与字线WL2相连接的存储单元的两个页区(例如第3和第4页)的读取来读取伪编程的数据。
参考附图描述了各种伪编程方法。在3位MLC和4位MLC中,可以为伪编程操作分配至少一个或多个页区。然而,本发明概念不限于此。尽管上面未描述,但是分配逻辑页区的模式可应用于伪编程操作。在该情况下,在伪编程操作要分配给所选择的存储器单元的页的数目可以比与最大存储容量相对应的数目小1.
图17是在描述根据本发明概念的实施例的存储器的操作中用于参考的图。
主机可以向存储控制器110传递写入请求。响应于写入请求,存储控制器110可以将写入数据的大小与参考大小进行比较。如果写入数据的大小打于或等于参考大小,则存储控制器110可以向非易失性存储设备120发布正常编程命令NP_CMD。如果写入数据的大小小于参考大小,则存储控制器110可以向非易失性存储设备120发布伪编程命令PP_CMD,使得根据伪编程操作对数据进行编程。
在提供编程命令之后,存储控制器110可以更新映射表115。在正常编程操作的情况下,所选择的存储单元的所有页可以是有效的。另一方面,在伪编程操作的情况下,所选择的存储单元的页的一部分可以在映射表115被映射出。
响应于正常和伪编程命令NP_CMD和PP_CMD中的一个,非易失性存储设备120可以对所选择的存储单元进行编程。例如,响应于正常编程命令,非易失性存储设备120可以根据一次编程模式对分配给所选择的存储单元的所有页进行编程。另一方面,响应于伪编程命令,非易失性存储设备120可以对分配给所选择的存储单元的页的一部分(例如MSB页)进行编程。如果完成了写入数据的编程,则非易失性存储设备120可以向存储控制器110提供指示非易失性存储设备120可访问的就绪信号。
响应于来自非易失性存储设备120的就绪信号,存储控制器110可以向主机发送指示完成写入请求的完成信号。
图18是图1的非易失性存储设备的存储块BLKi的示例的立体图。参考图18,存储块BLKi可以包括沿着多个轴向x、y和z延伸的结构。
可以提供基底151以形成存储块BLK。可以沿x方向在基底11处形成多个掺杂区域152a、152b、152c和152d。可以沿z方向依序提供沿y方向延伸的多个绝缘材料158,并且将其形成在第一和第二掺杂区域152a和152b之间的基底上。可以将绝缘材料158形成为沿z方向彼此间隔开。
在第一和第二掺杂区域152a和152b之间的基底151上,可以沿y方向依序布置柱153,并且将其形成为沿z方向穿透绝缘材料158。在示例实施例中,柱153可以通过绝缘材料158与基底151相连接。这里,可以将柱153形成在第二和第三掺杂区域152b和152c之间的基底151上以及在第三和第四掺杂区域152c和152d之间的基底151上。
柱153的内层153b可以由绝缘材料形成。例如,柱153的内层153b可以包括诸如硅氧化物的绝缘材料。可以沿绝缘材料158、柱153和基底151的暴露表面在第一和第二掺杂区域152a和152b之间提供绝缘膜155。一些示例实施例包括去除在沿z方向提供的最后绝缘材料18的暴露表面(例如在z方向上暴露的)提供的绝缘膜155。
可以分别在第一和第二掺杂区域152a和152b之间的绝缘膜15的暴露表面上提供第一导电材料154a至154i。例如,可以在基底151和邻近基底151的绝缘膜158之间提供沿y方向延伸的第一绝缘材料154a。更详细地,可以在基底151和邻近基底151的绝缘材料158的下表面上的绝缘膜155之间提供沿x方向延伸的第一导电材料154a。可以在第二和第三掺杂区域152b和152c之间提供与在第一和第二掺杂区域152a和152b之间相同的结构。类似地,可以在第三和第四掺杂区域152c和152d之间提供与在第一和第二掺杂区域152a和152b之间相同的结构。
可以在柱153上提供漏极156。漏极156可以由n型硅材料形成。可以在漏极156上提供沿x方向延伸的第二导电材料157a至157c。可以沿y方向依序布置第二导电材料157a至157c。第二导电材料157a至157c可以在相应区域与漏极156相连接。例如,漏极156和沿x方向延伸的第二导电材料157c可以通过接触插头互连。
这里,第一导电材料154a至154i可以形成字线和选择线。可以将用作为字线的第一导电材料154b至154h形成为使得属于同一层的导电材料互连。可以通过选择所有第一导电材料154a至154i来选择存储块BLKi。应理解图18中图示的第一导电材料154a至154i的数目是示范性的,并且本发明概念不限于此。类似地,可以根据工艺技术或控制技术或其他设计考虑来改变第一导电材料154a至154i的数目。
上述的存储块BLKi可以具有三维结构。三维非易失性存储设备可以包括电荷捕获闪速(CTF)存储单元。在CTF闪速存储器结构中,电荷存储层可以由非导电材料形成,使得减少字线之间的耦合。可以向CTF闪速存储设备应用一次编程方案,并且可以通过本发明概念的伪编程模式来提高数据的可靠性。
图19是示意性图示根据本发明概念的另一个实施例的存储系统的框图。参考图19,本实施例的存储系统200可以包括存储控制器210和非易失性存储设备220。
存储控制器210可以被配置为响应于主机的请求而控制非易失性存储设备220。响应于主机的写入请求,存储控制器210可以向非易失性存储设备220提供写入命令和地址。存储控制器210可以以片上缓冲编程(OBP)模式来控制非易失性存储设备220的编程操作。例如,如果接收了与非易失性存储设备220的缓冲区域221a的最小编程单元(例如数据页)相对应的数据,则存储控制器210可以控制非易失性存储设备220,使得将与最小编程单元相对应的数据存储在缓冲区域221a处。可以将该操作称为缓冲编程操作。
可以根据地址信息来执行缓冲编程操作。如果将与非易失性存储设备220的主区域221b的最小编程单元相对应的数据存储在缓冲区域221a,则存储控制器210可以控制非易失性存储设备220,使得将与主区域221b的最小编程单元相对应的数据存储在主区域221b。可以将该操作称为主编程操作。
存储控制器210可以根据缓冲或主区域221a或221b的编程或擦除状态来控制请求写入到主区域221b的数据的编程。例如,如果接收了写入请求,则存储控制器210可以基于映射表215来检查缓冲区域221a的状态。例如,在缓冲区域221a处于擦除状态或具有足够的空间来存储请求写入的数据的情况下,存储控制器210可以执行缓冲编程操作。在编程缓冲区域221a的整个空间的情况下,存储控制器210可以跳过缓冲编程操作。在该情况下,存储控制器可以控制非易失性存储设备220,使得通过伪编程操作在主区域221b的特定空间处写入请求写入的数据。
在图19中,图示了其中为伪编程操作选择与主区域221b的字线WL2相连接的存储单元的示例。伪编程操作可以使得请求写入的数据能够在所选择的存储单元处被高速编程。在向非易失性存储设备220提供请求写入的数据和伪编程命令PP_CMD之后,存储控制器210可以更新映射表215。例如,存储控制器210可以更新映射表215,使得从与字线WL2相连接的存储单元的页地址中映射出与LSB页相对应的地址。
在采用OBP模式的存储系统中,如果使用其中在伪编程之前不擦除缓冲区域221a的本发明概念的伪编程方法,则与擦除缓冲区域221a然后编程数据的情况相比,可以明显改进性能。
非易失性存储设备220可以由一个或多个存储器件形成。存储控制器210和非易失性存储设备220可以形成存储卡、固态驱动器(SSD)、存储棒等。非易失性存储设备220可以包括多个存储块,其每一个具有以行和列布置的存储单元。每个存储单元可以存储多位或多级数据。可以将存储单元安排为具有二维阵列结构或三维阵列结构。
图20是示意性图示图19的非易失性存储设备的示例的框图。参考图20,该示例的非易失性存储设备220的单元阵列221可以包括缓冲区域221a和主区域221b。
单元阵列221可以通过字线和选择线连接到行译码器222。单元阵列221可以通过位线连接到页缓冲器223。单元阵列221可以包括多个NAND单元串。具体地,可以将单元阵列221划分为缓冲区域221a和主区域221b。可以首先将数据编程在缓冲区域221a,并且然后可以将存储在缓冲区域221a的数据编程在主区域221b。
可以根据与存储在缓冲区域221a的数据相关联的地址信息来执行主编程操作。例如,可以根据编程模式、存储在存储单元的数据位的数目等来不同地确定缓冲区域221a的最小编程单元和主区域221b的最小编程单元。缓冲区域221a的最小编程单元可以不同于主区域221b的最小编程单元。
在示例实施例中,可以逻辑地而不是物理地划分存储器区域221a和221b。也就是说,可以逻辑地改变存储器区域221a和221b。编程缓冲区域221a的存储块的模式可以不同于编程主区域221b的存储块的模式。例如,可以根据单级单元(SLC)编程模式(下面称为SLC编程模式)来对缓冲区域221a的存储块进行编程。另一方面,可以根据多级单元(MLC)编程模式(下面称为MLC编程模式)来对缓冲区域221a的存储块进行编程。
在其他示例实施例中,可以根据MLC编程模式对缓冲区域221a的存储块和主区域221b的存储块进行编程。例如,缓冲区域221a的每个存储单元可以存储2位数据,并且主区域221b的每个存储单元可以存储N位数据(N是大于或等于3的整数)。替选地,存储在缓冲区域221a的每个存储单元处的位的数目可以小于主区域221b的数目(例如N位数据(N是大于或等于3的整数))。
行译码器222、页缓冲器223、输入/输出缓冲器224、控制逻辑225和电压生成器226可以以与先前参考图3描述的基本相同的方式操作,因此省略对其的描述以避免冗余。也就是说,如果从外部设备提供伪编程命令PP_CMD,则控制逻辑225可以向电压生成器226提供用于控制编程电压的生成的编程模式P_Mode。电压生成器226可以响应于编程模式P_Mode而生成用于伪编程操作的总体偏置电压。
图21是在描述图19的存储系统的操作中用于参考的流程图。在该实施例的示例中,存储系统200可以根据缓冲区域221a的状态对主区域221b选择性地执行伪编程操作。根据本发明概念的该实施例的编程操作可以响应于来自主机的写入请求而开始。
如果接收了写入请求,则在操作S210中,存储控制器可以接收请求写入的数据。写入数据的大小可以变化。例如,从主机提供的写入数据可以是具有通过随机样式提供的相对小的大小的数据。然而,在该实施例中,可以不关心写入数据的大小来执行伪编程操作。
在操作S220中,存储控制器210可以检查缓冲区域221a的当前状态。例如,存储控制器210可以确定缓冲区域221a是处于擦除状态还是编程状态。这可以通过搜索映射表215来执行。替选地,可以使用状态读取命令来检查缓冲区域221a是否处于擦除状态。
在操作S230中,存储控制器210的操作可以根据缓冲区域221a的状态而具有差异。如果缓冲区域221a处于编程状态,则该方法可以进行到步骤S240。如果缓冲区域221a处于擦除/空状态,则该方法可以进行到操作S250。
在操作S240中,存储控制器210可以根据伪编程操作对请求写入在非易失性存储设备220的主区域221b的数据进行编程。也就是说,存储控制器210可以发布伪编程命令PP_CMD,以对请求写入在非易失性存储设备220的主区域221b的数据进行编程。响应于伪编程命令PP_CMD,非易失性存储设备220可以在不同于正常编程操作的偏置条件下对所选择的存储单元执行高速编程操作。然后,存储控制器210可以记录在映射表215的所选择的存储单元的页地址中由于伪编程操作而映射出的一个或多个页地址。
在操作S250中,存储控制器210可以在缓冲区域221a编程写入数据。缓冲区域221a可以由单级单元形成,用于高速存取和高可靠性。存储在缓冲区域221a的数据稍后可以被移动到主区域221b。
如上所述,存储系统200可以根据缓冲区域221a的状态,而不关心输入数据的数据属性、数据大小、数据输入样式等,来确定是否执行伪编程操作。在该情况下,与总是在缓冲区域221a编程请求写入的数据的情况相比,可以减少擦除缓冲区域221a所花费的时间。
图22是在描述根据本发明概念的另一个实施例的存储系统的操作中用于参考的流程图。在该实施例的示例中,存储系统200可以基于缓冲区域221a的状态和写入数据的大小来选择性地对主区域221b执行伪编程操作。根据本发明概念的该实施例的编程操作可以响应于来自主机的写入请求而开始。
如果接收了写入请求,在操作S310中,存储控制器210可以接收请求写入的数据。写入数据的大小可以取决于多个不同的因素而变化。例如,在诸如媒体文件数据的序列数据的请开启,写入数据的大小可以相对大。替选地,在数据是频繁更新的随机数据的情况下,可以从主机输入较少的数据。
在操作S320中,存储控制器210可以将写入数据的大小与参考大小进行比较。如果写入数据的大小大于或等于参考大小,则该方法可以进行到操作S330。另一方面,如果写入数据的大小小于参考大小,则该方法可以进行到操作S340。
在操作S330,存储控制器210可以将写入数据写入在缓冲区域221a处。这时,如果缓冲区域被确定为处于编程状态,则存储控制器210可以首先执行擦除操作。在擦除操作之后,可以执行将写入数据编程到入缓冲区域221a中。
在操作S340中,存储控制器210可以检查缓冲区域221a是处于擦除状态还是编程状态。可以通过搜索映射表215来完成该操作。如果缓冲区域221a处于编程状态,则该方法可以进行到步骤S350。如果缓冲区域221a处于擦除/空状态,则该方法可以进行到操作S330。
在操作S350中,存储控制器210可以根据伪编程操作在非易失性存储设备220的主区域221b对请求写入的数据进行编程,而不擦除缓冲区域221a。也就是说,存储控制器210可以发布伪编程命令PP_CMD,以在非易失性存储设备220的主区域221b对请求写入的数据进行编程。响应于伪编程命令PP_CMD,非易失性存储设备220可以在不同于正常编程操作的偏置条件下对所选择的存储单元执行高速编程操作。然后,存储控制器210可以记录在映射表215的所选择的存储单元的页地址中由于伪编程操作而映射出的一个或多个页地址。
如上所述,存储系统200可以根据缓冲区域221a的状态和写入数据的大小来执行伪编程操作。替选地,代替依赖于写入数据的大小,可以基于数据属性、数据输入样式等来进行伪编程确定。也就是说,各种特征可以用来确定是否执行本发明概念的伪编程操作。
图23是图示根据本发明概念的包括固态驱动器的用户设备的框图。参考图23,用户设备1000可以包括主机1100和固态驱动器(下面称为SSD)1200。SSD1200可以包括SSD控制器1210、缓冲存储器1220和非易失性存储设备1230。
SSD控制器1210可以提供主机1100和SSD1200之间的物理互连。SSD控制器1210可以提供与主机1100的总线格式相对应的与SSD1200的接口。具体地,SSD控制器1210可以对从主机1100提供的命令进行译码,以基于译码结果来访问非易失性存储设备1230。主机1100的总线格式不受限制,并且其示例包括USB(通用串行总线)、SCSI(小计算机系统接口)、PCIexpress、ATA、PATA(并行ATA)、SATA(串行ATA)、SAS(串行附接SCSI)等。
缓冲存储器1220可以暂时存储从主机1100提供的写入数据或从非易失性存储设备1130读出的数据。在存在于非易失性存储设备1230中的数据被高速缓存的情况下,应主机1100的读取请求,缓冲存储器1220可以支持高速缓存功能以直接向主机1100提供高速缓存的数据。典型地,主机1100的总线格式(例如SATA或SAS)的数据传递速度可以高于SSD1200的存储信道的数据传递速度。也就是说,在主机1100的接口速度明显快的情况下,通过提供具有大存储容量的缓冲存储器1220,可以最小化由于速度差异而造成的操作性能的降低。
缓冲存储器1220可以由异步DRAM形成,以向用作海量存储设备的SSD1200提供足够的缓冲。然而,本发明概念不限于此。
描述了其中作为存储介质,非易失性存储设备1230由NAND闪速存储器形成的示例。例如,非易失性存储设备1230可以是具有海量存储容量的垂直NAND闪速存储设备。然而,非易失性存储设备1230不限于NAND闪速存储设备。例如,SSD1200的存储介质可以由PRAM、MRAM、ReRAM、NOR闪速存储器等形成。另外,本发明概念可以被应用于一起使用不同类型的存储设备的存储系统。可以以与先前参考图3描述的基本相同的方式来配置非易失性存储设备1230。
在SSD1200中,SSD控制器1210可以根据请求写入的数据的大小或/和非易失性存储设备1230的缓冲区域的状态来执行伪编程操作,如这里先前所述的。
图24是图示根据本发明概念的实施例的数据存储设备2000的框图。参考图24,数据存储设备2000可以包括闪速存储器芯片2100和闪速控制器2200。闪速控制器2200可以响应于从数据存储设备2000的外部输入的信号而控制闪速存储器芯片2100。
可以以与图3或20中图示的非易失性存储设备120或220基本相同地来配置闪速存储器芯片2100。闪速存储器芯片2100可以是多芯片设备。闪速存储器芯片2100可以具有各种不同结构中的任何一种。示例包括其中将阵列堆叠为多层的堆叠闪速结构、源极-漏极自由闪速结构、管脚类型闪速结构和三维闪速结构。
数据存储设备2000可以形成存储卡设备、SSD设备、多媒体卡设备、SD卡、存储棒设备、HDD设备、混合驱动设备或USB闪速设备。例如,数据存储设备2000可以形成满足用于使用诸如数字相机、个人计算机等的用户设备的工业标准的卡。
这里,闪速控制器2200可以根据请求写入的数据的大小或/和闪速存储器芯片2100的缓冲区域的状态来执行伪编程操作,如这里先前所述的。
图25是示意性图示根据本发明概念的实施例的计算系统的框图。参考图25,计算系统3000可以包括与总线3700相连接的网络适配器3100、CPU3200、海量存储设备3300、RAM3400、ROM3500和用户接口3600。
网络适配器3100可以提供计算系统3000和外部网络4000之间的接口。CPU3200可以控制用于驱动驻留在RAM3400中的操作系统和应用程序的整体操作。数据存储设备3300可以存储计算系统3000所需要的数据。例如,数据存储设备3300可以存储用于驱动计算系统3000的操作系统、应用程序、各种程序模块、程序数据、用户数据等。
RAM3400可以用作计算系统3000的工作存储器。在启动后,可以将从数据存储设备3300读出的执行程序和程序模块所必要的操作系统、应用程序、各种程序模块和程序数据加载在RAM3400上。ROM3500可以存储在启动后驱动操作系统之前激活的基本输入/输出系统(BIOS)。可以经由用户接口3600进行计算系统3000和用户之间的信息交换。
此外,计算系统3000可以进一步包括电池、调制解调器等。尽管图25中未示出,但是计算机系统3000可以进一步包括各种其他设备,诸如应用芯片集、相机图像处理器(CIS)、移动DRAM等。
海量存储设备3300可以通过固态驱动器、多媒体卡(MMC)、安全数字(SD)卡、微SD卡、存储棒、ID卡、PCMCIA卡、芯片卡、USB卡、智能卡、紧凑闪速(CF)卡等来实现。海量存储设备3300可以根据请求写入的数据的大小或/和缓冲区域的状态来执行伪编程操作,如这里先前所述。
尽管图25中未示出,但是根据本发明概念的计算系统3000可以进一步包括其他设备,诸如应用芯片集、相机图像处理器(CIS)、移动DRAM等。
可以根据各种不同的封装技术中的任何一种来封装非易失性存储设备和/或存储控制器。示例包括PoP(Package on Package,层叠封装)、球栅阵列(Ball grid array,BGA)、芯片尺寸封装(Chip scale package,CSP)、塑料带引线芯片载体(Plastic LeadedChip Carrier,PLCC)、塑料双列直插封装(Plastic Dual In Line Package,PDIP)、叠片内裸片封装(Die in Waffle Pack)、晶片内裸片形式(Die in Wafer Form)、板上芯片(ChipOn Board,COB)、陶瓷双列直插封装(Ceramic Dual In-Line Package,CERDIP)、塑料标准四边扁平封装(Metric Quad Flat Pack,MQFP)、薄型四边扁平封装(Thin Quad Flatpack,TQFP)、小外型IC(Small Outline IC,SOIC)、缩小型小外型封装(Shrink Small OutlinePackage,SSOP)、薄型小外型封装(Thin Small Outline,TSOP)、系统级封装(System InPackage,SIP)、多芯片封装(Multi Chip Package,MCP)、晶片级结构封装(Wafer-levelFabricated Package,WFP)、晶片级处理堆叠封装(Wafer-Level Processed StackPackage,WSP),等等。
虽然已经参照示范性实施例描述了本发明概念,但是对于本领域技术人员来说显然的是,可以在不脱离本发明的精神和范围的情况下作出各种改变和修改。因此,应当明白,上述修改不是限制性的,而是示范性的。

Claims (28)

1.一种存储系统,包括:
非易失性存储设备,被配置为在编程周期期间利用多位数据对存储单元进行编程;
存储控制器,被配置为控制所述非易失性存储设备,使得依据写入命令通过第一编程模式和第二编程模式中的一个对与所述非易失性存储设备的所选择的行相连接的存储单元进行编程;
其中,在所述第一编程模式,将数目与最大页数目相对应的多个逻辑页存储在所述存储单元;以及
其中,在所述第二编程模式,使用与在所述第一编程模式中使用的不同的偏置条件将数目小于所述最大页数目的一个或多个逻辑页存储在所述存储单元,
其中,在所述第二编程模式,将所述存储单元编程为具有擦除状态或伪编程状态,并且将伪编程状态分配为被布置在用于读取映射在所述存储单元上的逻辑页的读取电压中具有最宽电压窗口的读取电压之间。
2.根据权利要求1所述的存储系统,其中,当在所述第一编程模式中映射所述存储单元的地址时,分别映射数目与所述最大页数目相对应的逻辑页;以及
其中在所述第二编程模式中映射出数目与所述最大页数目相对应的逻辑页中的至少一个。
3.根据权利要求2所述的存储系统,其中,在所述第一编程模式,将两个逻辑页分配给所述存储单元;以及
其中,在所述第二编程模式,分配所述两个逻辑页中的MSB页以用于地址映射,以及映射出所述两个逻辑页中的LSB页。
4.根据权利要求1所述的存储系统,其中,在所述第一编程模式,将三个逻辑页分配给所述存储单元;以及
其中,在所述第二编程模式,分配所述三个逻辑页中的LSB和MSB页中的一个以用于地址映射。
5.根据权利要求4所述的存储系统,其中,所述伪编程状态包括第一伪编程状态,并且在所述第二编程模式,将所述存储单元编程为具有擦除状态和第一伪编程状态。
6.根据权利要求5所述的存储系统,其中,将第一伪编程状态中的每个分配为被布置在用于分别读取映射在所述存储单元上的逻辑页的读取电压中具有最宽电压窗口的读取电压之间。
7.根据权利要求2所述的存储系统,其中,在所述第一编程模式,将三个逻辑页分配给所述存储单元;以及
其中,在所述第二编程模式,分配所述三个逻辑页中的LSB和MSB页以用于地址映射。
8.根据权利要求7所述的存储系统,其中,所述伪编程状态包括第一伪编程状态、第二伪编程状态和第三伪编程状态,并且在所述第二编程模式,将所述存储单元编程为具有擦除状态、第一伪编程状态、第二伪编程状态和第三伪编程状态中的一个。
9.根据权利要求1所述的存储系统,其中,在所述第一编程模式,将四个逻辑页分配给所述存储单元;以及
其中,在所述第二编程模式,分配所述四个逻辑页中的LSB页以用于地址映射。
10.根据权利要求9所述的存储系统,其中,所述伪编程状态包括第一伪编程状态,并且在所述第二编程模式,将所述存储单元编程为具有擦除状态和第一伪编程状态。
11.根据权利要求10所述的存储系统,其中,将第一伪编程状态分配为被布置在用于读取映射在所述存储单元上的逻辑页的读取电压中具有最宽电压窗口的读取电压之间。
12.根据权利要求1所述的存储系统,其中,在所述第一编程模式,在映射表将四个逻辑页分配给所述存储单元;以及
其中,在所述第二编程模式,分配所述四个逻辑页中包括MSB页的至少两个逻辑页以用于地址映射。
13.根据权利要求12所述的存储系统,其中,所述伪编程状态包括第一伪编程状态、第二伪编程状态和第三伪编程状态,并且在所述第二编程模式,将所述存储单元编程为具有擦除状态、第一伪编程状态、第二伪编程状态和第三伪编程状态中的一个。
14.根据权利要求1所述的存储系统,其中,所述偏置条件包括下述中的至少一个:编程电压的递增、起始编程电压、验证电压脉冲的数目以及第一和第二编程模式中的每一个的编程循环的数目。
15.一种存储系统,包括:
非易失性存储设备,包括存储单元阵列并且被配置为对与所述存储单元阵列的相同字线相连接的存储单元中的N个逻辑数据页进行编程,其中N是2或大于2的整数;
存储控制器,被配置为接收外部提供的写入命令和请求写入的数据,并且以正常编程模式和伪编程模式中的所选择的一个来控制所述非易失性存储设备,
其中,在所述正常编程模式中,所述存储控制器控制所述非易失性存储器将请求写入的数据作为N位数据存储在与所述存储单元阵列的相同字线相连接的存储单元中,以及
其中,在所述伪编程模式中,所述存储控制器控制所述非易失性存储器将请求写入的数据作为小于N位的数据存储在与所述存储单元阵列的相同字线相连接的存储单元中,以及
其中,所述伪编程模式的至少一个偏置条件不同于所述正常编程模式的至少一个偏置条件,使得所述伪编程模式的编程速度大于所述正常编程模式的编程速度。
16.根据权利要求15所述的存储系统,其中,所述存储控制器包括映射N个逻辑页的映射表,并且其中,所述存储控制器被配置为在映射表中映射出所述N个逻辑页中在伪编程模式中没有分配的逻辑页。
17.根据权利要求15所述的存储系统,其中,基于请求写入的数据的大小、属性和相对重要性中的至少一个来选择所述正常编程模式或所述伪编程模式。
18.一种存储系统,包括:
非易失性存储设备,包括由单级单元形成的第一存储器区域和由多级单元形成的第二存储器区域;以及
存储控制器,被配置为控制所述非易失性存储设备,使得根据第一编程模式,将从外部设备提供的数据存储在所述第一存储器区域以及将存储在所述第一存储器区域处的数据编程在所述第二存储器区域,
其中,所述存储控制器被配置为控制所述非易失性存储设备,使得基于所述第一存储器区域是否处于擦除状态,在第二编程模式下将请求写入的数据存储在所述第二存储器区域;以及
其中,在所述第一编程模式,在编程周期期间将多个页数据存储在所选择的存储单元;以及在所述第二编程模式,将大小小于所述多个页数据的数据编程在所选择的存储单元,所述第二编程模式的编程速度高于所述第一编程模式的编程速度。
19.根据权利要求18所述的存储系统,其中,在所述第二编程模式,在映射表映射出除了分配给请求写入的数据的逻辑页之外的逻辑页的地址。
20.根据权利要求19所述的存储系统,其中,在所述第二编程模式,将所选择的存储单元编程为具有擦除状态或第一伪编程状态。
21.根据权利要求20所述的存储系统,其中,将第一伪编程状态分配为被布置在所分配的逻辑页的读取电压中具有最宽电压窗口的读取电压之间。
22.根据权利要求19所述的存储系统,其中,在所述第二编程模式,将所选择的存储单元编程为具有擦除状态、第一伪编程状态、第二伪编程状态和第三伪编程状态中的一个。
23.根据权利要求22所述的存储系统,其中,在所述第二编程模式,将两个逻辑页区分配给所选择的存储单元,并且在映射表映射出至少一个逻辑页区。
24.一种非易失性存储设备的编程方法,该非易失性存储设备以一次编程模式对多个数据页进行编程,包括:
将请求写入的数据的大小与参考大小进行比较;
当所述请求写入的数据的大小小于所述参考大小时,向所述非易失性存储设备发布对所述请求写入的数据的伪编程命令;
依据所述伪编程命令,在伪编程模式下利用所述请求写入的数据对所选择的存储单元进行编程;以及
在映射表从包括在所选择的存储单元中的多个逻辑页区当中映射出被所述伪编程模式排除的逻辑页区的页地址,
其中,根据所述伪编程模式形成的存储单元的编程状态具有与根据所述一次编程模式形成的特征阈值电压分布不同的特征阈值电压分布。
25.根据权利要求24所述的编程方法,其中,根据所述伪编程模式形成的存储单元的编程状态包括擦除状态和至少一个伪编程状态,所述至少一个伪编程状态被布置在所分配的逻辑页的读取电压中形成最宽电压窗口的读取电压之间。
26.一种非易失性存储设备的编程方法,所述非易失性存储设备包括第一存储器区域和第二存储器区域,根据一次编程模式将数据编程在所述第二存储器区域,所述编程方法包括:
接收写入数据;
确定所述第一存储器区域是否处于擦除状态;
当确定所述第一存储器区域不处于擦除状态时,根据伪编程模式将所述写入数据编程在所述第二存储器区域的所选择的存储单元,而不在所述第一存储器区域缓冲所述写入数据;以及
在映射表处从包括在所选择的存储单元中的多个逻辑页区当中映射出被所述伪编程模式排除的逻辑页区的页地址,
其中,根据所述伪编程模式形成的所选择的存储单元的特征阈值电压分布包括擦除状态和至少一个伪编程状态,所述至少一个伪编程状态对应于所分配的逻辑页的读取电压的最宽电压窗口。
27.根据权利要求26所述的编程方法,进一步包括:
将所述写入数据的大小与参考大小进行比较。
28.根据权利要求27所述的编程方法,进一步包括:
当所述写入数据的大小大于所述参考大小时,将所述写入数据编程在所述第一存储器区域。
CN201410045093.XA 2013-02-04 2014-02-07 包括非易失性存储设备的存储系统及其编程方法 Active CN103971739B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0012514 2013-02-04
KR1020130012514A KR102053953B1 (ko) 2013-02-04 2013-02-04 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 프로그램 방법

Publications (2)

Publication Number Publication Date
CN103971739A CN103971739A (zh) 2014-08-06
CN103971739B true CN103971739B (zh) 2019-07-16

Family

ID=51206214

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410045093.XA Active CN103971739B (zh) 2013-02-04 2014-02-07 包括非易失性存储设备的存储系统及其编程方法

Country Status (6)

Country Link
US (1) US9245630B2 (zh)
JP (1) JP6306359B2 (zh)
KR (1) KR102053953B1 (zh)
CN (1) CN103971739B (zh)
DE (1) DE102014101267B4 (zh)
TW (1) TWI587131B (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014175031A (ja) * 2013-03-08 2014-09-22 Toshiba Corp 半導体記憶装置
US20150074489A1 (en) * 2013-09-06 2015-03-12 Kabushiki Kaisha Toshiba Semiconductor storage device and memory system
TWI604307B (zh) 2014-10-31 2017-11-01 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
TWI602185B (zh) * 2015-03-04 2017-10-11 旺宏電子股份有限公司 記憶體裝置及其操作方法
CN106158024B (zh) * 2015-03-30 2019-08-06 群联电子股份有限公司 数据编程方法、存储器存储装置及存储器控制电路单元
JP6453718B2 (ja) * 2015-06-12 2019-01-16 東芝メモリ株式会社 半導体記憶装置及びメモリシステム
US9837145B2 (en) * 2015-08-28 2017-12-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Multi-level flash storage device with minimal read latency
KR102387956B1 (ko) * 2015-09-09 2022-04-19 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템
US9953703B2 (en) 2015-10-16 2018-04-24 Samsung Electronics Co., Ltd. Programming method of non volatile memory device
US9734912B2 (en) * 2015-11-25 2017-08-15 Macronix International Co., Ltd. Reprogramming single bit memory cells without intervening erasure
KR102470606B1 (ko) * 2015-11-26 2022-11-28 삼성전자주식회사 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 스토리지 장치
US9811284B2 (en) 2015-12-20 2017-11-07 Apple Inc. One-pass programming in a multi-level nonvolatile memory device with improved write amplification
KR102441284B1 (ko) * 2016-01-12 2022-09-08 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR102423291B1 (ko) * 2016-01-15 2022-07-20 삼성전자주식회사 프로그램 전압을 보정하는 플래시 메모리 장치, 3차원 메모리 장치, 메모리 시스템 및 그의 프로그램 방법
US10649681B2 (en) * 2016-01-25 2020-05-12 Samsung Electronics Co., Ltd. Dynamic garbage collection P/E policies for redundant storage blocks and distributed software stacks
SG11201806099WA (en) * 2016-02-19 2018-08-30 Huawei Tech Co Ltd Method and apparatus for accessing flash memory device
US9865353B1 (en) * 2016-08-02 2018-01-09 Kabushiki Kaisha Toshiba Cell location programming for storage systems
US9940052B2 (en) 2016-09-14 2018-04-10 Micron Technology, Inc. Memory device configuration commands
KR102681659B1 (ko) * 2017-01-12 2024-07-05 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20180087496A (ko) * 2017-01-23 2018-08-02 에스케이하이닉스 주식회사 메모리 시스템
US10095626B2 (en) * 2017-03-10 2018-10-09 Toshiba Memory Corporation Multibit NAND media using pseudo-SLC caching technique
JP7030463B2 (ja) 2017-09-22 2022-03-07 キオクシア株式会社 メモリシステム
US10268407B1 (en) * 2017-09-29 2019-04-23 Intel Corporation Method and apparatus for specifying read voltage offsets for a read command
KR102271502B1 (ko) * 2017-10-25 2021-07-01 삼성전자주식회사 메모리 장치 및 그 제어 방법
KR102261816B1 (ko) * 2017-12-05 2021-06-07 삼성전자주식회사 데이터 신뢰성을 향상한 불휘발성 메모리 장치 및 그 동작방법
TWI646535B (zh) * 2017-12-27 2019-01-01 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體操作方法
KR102611566B1 (ko) * 2018-07-06 2023-12-07 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메모리 할당 방법
KR102586786B1 (ko) * 2018-09-28 2023-10-11 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
KR102583787B1 (ko) * 2018-11-13 2023-10-05 에스케이하이닉스 주식회사 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템
KR20200089547A (ko) * 2019-01-17 2020-07-27 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
EP3710258B1 (en) * 2019-02-06 2021-08-18 Hewlett-Packard Development Company, L.P. Writing a nonvolatile memory to programmed levels
CN113348085B (zh) 2019-02-06 2022-12-13 惠普发展公司,有限责任合伙企业 流体分配设备部件、流体分配系统以及流体分配的方法
CN111951870B (zh) * 2019-05-15 2023-06-20 兆易创新科技集团股份有限公司 一种非易失性存储器的编程方法及控制装置
CN112712841B (zh) * 2019-10-25 2024-07-26 长鑫存储技术(上海)有限公司 写操作电路、半导体存储器和写操作方法
US11237768B2 (en) 2019-12-17 2022-02-01 SK Hynix Inc. Memory device changing memory area in which data is stored and operating method thereof
KR20210111120A (ko) 2020-03-02 2021-09-10 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR20220041574A (ko) * 2020-09-25 2022-04-01 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
KR20220052161A (ko) 2020-10-20 2022-04-27 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
TWI814666B (zh) 2022-12-14 2023-09-01 慧榮科技股份有限公司 資料儲存裝置與動態決定緩存器大小的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101009137A (zh) * 2006-01-24 2007-08-01 三星电子株式会社 补偿存储单元编程状态之间的读余量减少的闪存系统
CN101095199A (zh) * 2004-11-16 2007-12-26 桑迪士克股份有限公司 具有减少的过编程的高速编程系统
CN102403036A (zh) * 2010-09-16 2012-04-04 英飞凌科技股份有限公司 用于对非易失性存储器中的数据进行编程的方法和装置
CN103946923A (zh) * 2011-09-23 2014-07-23 莫塞德技术公司 闪存系统

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671388A (en) 1995-05-03 1997-09-23 Intel Corporation Method and apparatus for performing write operations in multi-level cell storage device
JP3930074B2 (ja) * 1996-09-30 2007-06-13 株式会社ルネサステクノロジ 半導体集積回路及びデータ処理システム
JP2001006374A (ja) * 1999-06-17 2001-01-12 Hitachi Ltd 半導体記憶装置及びシステム
JP4270994B2 (ja) * 2003-09-29 2009-06-03 株式会社東芝 不揮発性半導体記憶装置
KR100732628B1 (ko) * 2005-07-28 2007-06-27 삼성전자주식회사 멀티-비트 데이터 및 싱글-비트 데이터를 저장하는 플래시메모리 장치
US7366013B2 (en) 2005-12-09 2008-04-29 Micron Technology, Inc. Single level cell programming in a multiple level cell non-volatile memory device
JP4805696B2 (ja) 2006-03-09 2011-11-02 株式会社東芝 半導体集積回路装置およびそのデータ記録方式
JP2007305210A (ja) * 2006-05-10 2007-11-22 Toshiba Corp 半導体記憶装置
US7518914B2 (en) 2006-08-07 2009-04-14 Micron Technology, Inc. Non-volatile memory device with both single and multiple level cells
US7474560B2 (en) 2006-08-21 2009-01-06 Micron Technology, Inc. Non-volatile memory with both single and multiple level cells
KR100753156B1 (ko) 2006-09-13 2007-08-30 삼성전자주식회사 플래시 메모리 장치 및 그것의 메모리 셀 어레이
KR100878479B1 (ko) * 2007-01-16 2009-01-14 삼성전자주식회사 데이터 정보에 따라 프로그램 방식을 결정하는 메모리시스템
KR100875539B1 (ko) * 2007-01-17 2008-12-26 삼성전자주식회사 프로그램 방식을 선택할 수 있는 메모리 시스템
US7646636B2 (en) * 2007-02-16 2010-01-12 Mosaid Technologies Incorporated Non-volatile memory with dynamic multi-mode operation
KR101397549B1 (ko) * 2007-08-16 2014-05-26 삼성전자주식회사 고속 프로그램이 가능한 불휘발성 반도체 메모리 시스템 및그것의 독출 방법
US7843728B2 (en) 2007-11-20 2010-11-30 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device
US7800956B2 (en) 2008-06-27 2010-09-21 Sandisk Corporation Programming algorithm to reduce disturb with minimal extra time penalty
JP2010134992A (ja) 2008-12-04 2010-06-17 Powerchip Semiconductor Corp 不揮発性半導体記憶装置とその書き込み方法
KR101532584B1 (ko) * 2009-01-30 2015-06-30 삼성전자주식회사 비휘발성 메모리 장치, 및 그의 프로그램 방법
US8266503B2 (en) 2009-03-13 2012-09-11 Fusion-Io Apparatus, system, and method for using multi-level cell storage in a single-level cell mode
KR20110001098A (ko) 2009-06-29 2011-01-06 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 방법
JP5330136B2 (ja) 2009-07-22 2013-10-30 株式会社東芝 半導体記憶装置
US9262330B2 (en) * 2009-11-04 2016-02-16 Microsoft Technology Licensing, Llc Column oriented in-memory page caching
JP2011198408A (ja) 2010-03-18 2011-10-06 Toshiba Corp 不揮発性半導体記憶装置
JP2012027806A (ja) 2010-07-27 2012-02-09 Alpine Electronics Inc メモリ管理装置およびメモリ管理方法
US8612676B2 (en) * 2010-12-22 2013-12-17 Intel Corporation Two-level system main memory
US8521948B2 (en) * 2011-01-03 2013-08-27 Apple Inc. Handling dynamic and static data for a system having non-volatile memory
KR20130012514A (ko) 2011-07-25 2013-02-04 이승재 교육용 신재생 에너지 발전기 및 이를 이용한 신재생 에너지 교육 시스템 및 방법
TWM438015U (en) * 2012-02-10 2012-09-21 Univ Hsiuping Sci & Tech High performance dual port SRAM

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101095199A (zh) * 2004-11-16 2007-12-26 桑迪士克股份有限公司 具有减少的过编程的高速编程系统
CN101009137A (zh) * 2006-01-24 2007-08-01 三星电子株式会社 补偿存储单元编程状态之间的读余量减少的闪存系统
CN102403036A (zh) * 2010-09-16 2012-04-04 英飞凌科技股份有限公司 用于对非易失性存储器中的数据进行编程的方法和装置
CN103946923A (zh) * 2011-09-23 2014-07-23 莫塞德技术公司 闪存系统

Also Published As

Publication number Publication date
DE102014101267B4 (de) 2024-05-02
TW201433916A (zh) 2014-09-01
DE102014101267A1 (de) 2014-08-07
CN103971739A (zh) 2014-08-06
JP6306359B2 (ja) 2018-04-04
TWI587131B (zh) 2017-06-11
KR102053953B1 (ko) 2019-12-11
JP2014154202A (ja) 2014-08-25
US9245630B2 (en) 2016-01-26
US20140219020A1 (en) 2014-08-07
KR20140099999A (ko) 2014-08-14

Similar Documents

Publication Publication Date Title
CN103971739B (zh) 包括非易失性存储设备的存储系统及其编程方法
US9875793B2 (en) Storage and programming method thereof
US9349482B2 (en) Nonvolatile memory device and operating method thereof
CN105097034B (zh) 非易失性存储系统以及存储控制器的操作方法
US9690654B2 (en) Operation method of nonvolatile memory system
KR101975406B1 (ko) 비휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 및 그것의 메모리 블록 관리, 소거, 및 프로그램 방법들
CN106683702A (zh) 非易失性存储器装置及其读方法
CN109213705A (zh) 存储装置及其操作方法
US20160011779A1 (en) Nonvolatile memory device, memory controller, and operating method of the same
US9520201B2 (en) Nonvolatile memory device comprising page buffer and program verification operation method thereof
CN110069212A (zh) 存储装置及存储装置的操作方法
KR102415385B1 (ko) 불휘발성 메모리 장치 및 그것을 포함하는 저장 장치
CN110083304A (zh) 存储器控制器及其操作方法
CN107578793A (zh) 非易失性存储器系统和非易失性存储器装置的操作方法
CN110400588A (zh) 存储器装置以及该存储器装置的操作方法
KR20170015708A (ko) 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 프로그램 방법
KR20170036964A (ko) 불휘발성 메모리 시스템의 동작 방법
CN112346656A (zh) 控制器及其操作方法
CN108305658A (zh) 半导体存储装置及其操作方法
CN109427400A (zh) 存储器装置及其操作方法
CN110321068A (zh) 存储器控制器及操作存储器控制器的方法
CN110287130A (zh) 存储装置及其操作方法
CN112908374A (zh) 存储器控制器及其操作方法
US9424933B2 (en) Nonvolatile memory system, method of operating the same and method of manufacturing the same
CN104700896B (zh) 存储器系统和包括所述存储器系统的用户装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant