存储器系统及其操作方法与流程

文档序号:13983691阅读:234来源:国知局
存储器系统及其操作方法与流程

相关申请的交叉引用

本申请要求于2016年9月13日提交的申请号为10-2016-0117928的韩国专利申请的优先权,其整体通过引用并入本文。

本发明的示例性实施例涉及一种存储器系统,并且更特别地,涉及一种包括非易失性存储器装置的存储器系统,以及操作存储器系统的方法。



背景技术:

计算机环境范例已经转变至可随时随地使用的普适计算系统。由于该事实,诸如移动电话、数码相机和笔记本电脑的便携式电子装置的使用已经快速增长。这些便携式电子装置通常使用具有用于存储数据的一个或多个存储器装置的存储器系统。存储器系统可以用作便携式电子装置的主存储器装置或辅助存储器装置。

因为存储器系统不具有移动部件,所以它们提供优良的稳定性、耐久性、高信息访问速度和低功耗。具有这种优点的存储器系统的示例包括通用串行总线(usb)存储器装置、具有各种接口的存储卡和固态硬盘(ssd)。



技术实现要素:

本发明的实施例涉及一种能够最小化在检查点时刻存储在非易失性存储器装置中的信息的大小的存储器系统以及用于该存储器系统的操作方法。

根据本发明的实施例,一种存储器系统可以包括:非易失性存储器装置,其包括多个存储块;易失性存储器装置;以及控制器,其适于将多个存储块按存储块的预定数量分组成k个块组,将k个操作信息组和k个版本信息组存储在易失性存储器中,并且基于k个版本信息组在预定时刻将k个操作信息组中的更新的操作信息从易失性存储器选择性地复制到非易失性存储器装置中,k个操作信息组中的每一个包括多个操作信息,k个操作信息组、k个版本信息组和k个块组分别彼此对应,k个操作信息组中的每一个中的多个操作信息在对非易失性存储器装置的多个预定操作期间将被分别使用,并且k个版本信息组分别表示k个操作信息组中的一个或多个操作信息是否被更新。

控制器可以进一步存储s个必要信息,并且可以在预定时刻将s个必要信息从易失性存储器进一步复制到非易失性存储器装置中,并且对于多个预定操作可以分别需要s个必要信息。

当电源开启时,控制器可以进一步将s个必要信息和k个操作信息组从非易失性存储器装置加载到易失性存储器。

控制器可以将分别与具有更新值的一个或多个版本信息组对应的k个操作信息组中的更新的操作信息,以及s个必要信息从易失性存储器装置复制到非易失性存储器装置,并且在复制之后,控制器可以进一步初始化k个版本信息组以具有初始值。

当k个操作信息组中相应的一个操作信息组中的一个或多个操作信息被更新时,控制器可以进一步改变k个版本信息组中的每一个以具有更新值,并且当多个预定操作中相应的操作被完成时,k个操作信息组中的每个操作信息可以被更新。

k个版本信息组中的每一个可以包括分别与k个操作信息组中相应的一个操作信息组中的多个操作信息相对应的多个版本信息,并且k个版本信息组中的每一个中的多个版本信息分别可以表示k个操作信息组中相应的一个操作信息组中的多个操作信息是否被更新。

控制器可以将k个操作信息组中的更新的操作信息和s个必要信息从易失性存储器装置复制到非易失性存储器装置,并且在复制之后,控制器可以进一步初始化k个版本信息组以具有初始值。

当k个操作信息组中相应的操作信息被更新时,控制器可以进一步改变k个版本信息组中的版本信息中的每一个以具有更新值,并且当在多个预定操作中完成相应的操作时,k个操作信息组中的每个操作信息可以被更新。

非易失性存储器装置还可以包括附加的第一存储块和第二存储块,控制器可以将s个必要信息复制到附加的第一存储块中,并且可以将更新的操作信息复制到附加的第二存储器块中,并且s个必要信息可以包括表示第二存储块在非易失性存储器装置中的物理位置的信息。

预定时刻可以被确定为当预定操作完成以满足预定操作中的预定条件时的时刻,或预定时刻可以根据来自主机的请求来确定,或预定时刻可以被周期性地重复。

根据本发明的另一实施例,一种设置有包括多个存储块的易失性存储器以及非易失性存储器装置的存储器系统的操作方法,该方法可以包括:将多个存储块按存储块的预定数量分组成k个块组;将k个操作信息组和k个版本信息组存储在易失性存储器中;并且基于k个版本信息组在预定时刻将k个操作信息组中的更新的操作信息从易失性存储器选择性地复制到非易失性存储器装置中,k个操作信息组中的每一个包括多个操作信息,k个操作信息组、k个版本信息组和k个块组分别彼此对应,k个操作信息组中的每一个中的多个操作信息在对非易失性存储器装置的多个预定操作期间将被分别使用,并且k个版本信息组分别表示k个操作信息组中的一个或多个操作信息是否被更新。

该方法可以进一步包括:存储s个必要信息;以及在预定时刻将s个必要信息从易失性存储器复制到非易失性存储器装置,对于多个预定操作可以分别需要s个必要信息。

该方法可以进一步包括:当电源开启时,将s个必要信息和k个操作信息组从非易失性存储器装置加载到易失性存储器。

更新的操作信息的选择性复制可以包括将分别对应于具有更新值的一个或多个版本信息组的一个或多个操作信息组中的更新的操作信息和s个必要信息从易失性存储器复制到非易失性存储器装置,并且可以进一步包括在更新的操作信息的选择性复制之后,初始化k个版本信息组以具有初始值。

该方法可以进一步包括:当在多个预定操作中相应的操作被完成时,更新k个操作信息组的每一个操作信息;以及当更新k个操作信息组中相应的一个操作信息组中的一个或多个操作信息时,改变k个版本信息组中的每一个以具有更新值。

k个版本信息组中的每一个可以包括分别与k个操作信息组中相应的一个操作信息组中的多个操作信息相对应的多个版本信息,并且k个版本信息组中的每一个中的多个版本信息分别可以表示k个操作信息组中相应的一个操作信息组中的多个操作信息是否被更新。

更新的操作信息的选择性复制可以包括将对应于具有更新值的版本信息的更新的操作信息和s个必要信息从易失性存储器复制到非易失性存储器装置中,并且该方法可以进一步包括在更新的操作信息的选择性复制之后,初始化k个版本信息组中的多个版本信息以具有初始值。

该方法可以进一步包括:当在多个预定操作中完成相应的操作时,更新k个操作信息组中的每一个操作信息;以及当相应的操作信息被更新时,改变k个版本信息组中的多个版本信息中的每一个以具有更新值。

非易失性存储器装置还可以包括附加的第一存储块和第二存储块,控制器可以将s个必要信息复制到附加的第一存储块中,并且可以将更新的操作信息复制到附加的第二存储器块中,并且s个必要信息可以包括表示在非易失性存储器装置中的第二存储块的物理位置的信息。

预定时刻可以是当预定操作完成以满足预定操作中的预定条件时,或预定时刻可以根据来自主机的请求来确定,或预定时刻可以被周期性地重复。

附图说明

根据参照附图的以下具体实施方式,本发明的这些和其它特征及优点对于本发明所属领域的技术人员将变得显而易见,其中:

图1是示出根据本发明的实施例的包括存储器系统的数据处理系统的框图。

图2是示出在图1的存储器系统中采用的存储器装置的示例性配置的示意图。

图3是示出图2的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图。

图4是示出图2的存储器装置的示例性三维结构的示意图。

图5a、图5b和图6是示出根据本发明的第一实施例的图1的存储器系统的操作的示意图。

图7a、图7b和图8是示出根据本发明的第二实施例的图1的存储器系统的操作的示意图。

图9至图17是示意性地示出根据本发明的各个实施例的图1的数据处理系统的应用示例的图。

具体实施方式

以下参照附图更详细地描述本发明的各个实施例。然而,应注意的是,本发明可以在不同的其它实施例、形式和变化中实施,并且不应被解释为限于本文阐述的实施例。相反,提供这些实施例使得本公开将是彻底且完全的,并且将向本发明所属领域的技术人员完全传达本发明。在整个公开中,相同的附图标记在整个本发明的各个附图和实施例中表示相同的部件。

将理解的是,虽然术语“第一”、“第二”、“第三”等可在本文使用以描述各种元件,但是这些元件不受这些术语限制。这些术语被用于区分一个元件与另一元件。因此,在不脱离本发明的精神和范围的情况下,以下描述的第一元件也可被称为第二元件或第三元件。

附图不一定按比例绘制,在一些情况下,为了清楚地示出实施例的特征,可能已经放大了比例。

将进一步理解的是,当一个元件被称为“连接至”或“联接至”另一元件时,它可以直接在其它元件上、连接至或联接至其它元件,或可存在一个或多个中间元件。另外,也将理解的是,当元件被称为在两个元件“之间”时,两个元件之间可以仅有一个元件或也可存在一个或多个中间元件。

本文使用的术语的目的仅是描述特定实施例而不旨在限制本发明。如本文使用的,单数形式也旨在包括复数形式,除非上下文另有清楚地说明。将进一步理解的是,当在该说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,它们指定阐述的元件的存在而不排除一个或多个其它元件的存在或增加。如本文所使用的,术语“和/或”包括一个或多个相关的所列项目的任何和所有组合。

除非另有限定,否则本文所使用的包括技术术语和科学术语的所有术语具有与本发明所属领域中普通技术人员通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中限定的那些术语的术语应被理解为具有与它们在本公开的上下文和相关领域中的含义相一致的含义并且将不以理想化或过于正式的意义来解释,除非本文如此明确地限定。

在以下描述中,为了提供本发明的彻底理解,阐述了许多具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,为了避免不必要地模糊本发明,未详细地描述公知的进程结构和/或进程。

也注意的是,在一些情况下,对相关领域的技术人员显而易见的是,结合一个实施例描述的特征或元件可单独使用或与另一实施例的其它特征或元件结合使用,除非另有明确说明。

在下文中,将参照附图详细地描述本发明的各个实施例。

图1是示出根据本发明的实施例的包括存储器系统110的数据处理系统100的框图。

参照图1,数据处理系统100可以包括主机102和存储器系统110。

主机102可包括诸如移动电话、mp3播放器和膝上型计算机的便携式电子装置或诸如台式计算机、游戏机、tv和投影仪的非便携式电子装置。

主机102可以包括至少一个os(操作系统),并且os可以管理和控制主机102的总体功能和操作,并且在主机102和使用数据处理系统100或存储器系统110的用户之间提供操作。os可以支持对应于用户的使用目的和使用的功能和操作。例如,根据主机102的移动性,os可以被划分为普通os和移动os。根据用户的环境,普通os可以被划分为个人os和企业os。例如,被配置为支持向普通用户提供服务的功能的个人os可以包括windows和chrome,并且被配置为保护和支持高性能的企业os可以包括windows服务器、linux和unix。此外,被配置为支持向用户提供移动服务的功能和系统的省电功能的移动os可以包括android、ios和windowsmobile。主机102可以包括多个os,并且执行os以对存储器系统110执行对应于用户的请求的操作。

存储器系统110可以响应于主机102的请求来操作以为主机102存储数据。存储器系统110的非限制性示例可以包括固态硬盘(ssd)、多媒体卡(mmc)、安全数字(sd)卡、通用存储总线(usb)装置、通用闪存(ufs)装置、标准闪存(cf)卡、智能媒体卡(smc)、个人计算机存储卡国际协会(pcmcia)卡和记忆棒。mmc可以包括嵌入式mmc(emmc)、尺寸减小的mmc(rs-mmc)和微型-mmc,并且sd卡可以包括迷你-sd卡和微型-sd卡

存储器系统110可以由各种类型的存储装置来实施。包括在存储器系统110中的存储装置的非限制性示例可以包括诸如dram动态随机存取存储器(dram)和静态ram(sram)的易失性存储器装置和诸如只读存储器(rom)、掩膜rom(mrom)、可编程rom(prom)、可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、铁电ram(fram)、相变ram(pram)、磁阻ram(mram)、电阻式ram(rram)和闪速存储器的非易失性存储器装置。闪速存储器可以具有三维(3d)堆叠结构。

存储器系统110可以包括存储器装置150和控制器130。存储器装置150可以为主机120存储数据,并且控制器130可以控制到存储器装置150中的数据存储。

控制器130和存储器装置150可以被集成到单个半导体装置中,该单个半导体装置可以被包括在如上所例示的各种类型的存储器系统中。例如,控制器130和存储器装置150可以被集成为一个半导体器装置以构成ssd。当存储器系统110用作ssd时,连接到存储器系统110的主机102的操作速度可以被提高。此外,控制器130和存储器装置150可以被集成为一个半导体器装置以构成存储卡。例如,控制器130和存储器装置150可以构成诸如以下的存储卡:个人计算机存储卡国际协会(pcmcia)卡、cf卡、smc(智能媒体卡)、记忆棒、包括rs-mmc和微型mmc的mmc、包括迷你sd、微型sd和sdhc的sd卡、或ufs装置。

存储器系统110的非限制性应用示例可以包括计算机、超移动pc(umpc)、工作站、上网本、个人数字助理(pda)、便携式计算机、网络平板、平板计算机、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(pmp)、便携式游戏机、导航系统、黑盒、数码相机、数字多媒体广播(dmb)播放器、三维(3d)电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、构成数据中心的存储装置、能够在无线环境下传输/接收信息的装置、构成家庭网络的各种电子装置中的一个、构成计算机网络的各种电子装置中的一个、构成远程信息处理网络的各种电子装置中的一个、射频识别(rfid)装置或构成计算系统的各种部件中的一个。

存储器装置150可以是非易失性存储器装置,并且即使不供电,也可以保留存储在其中的数据。存储器装置150可以通过写入操作来存储从主机102提供的数据,并且通过读取操作将存储在其中的数据提供到主机102。存储器装置150可以包括多个存储器管芯(未示出),每个存储器管芯包括多个平面(未示出),每个平面包括多个存储块152至156,存储块152至156的每一个可以包括多个页面,并且页面的每一个可以包括联接到字线的多个存储器单元。在实施例中,存储器装置150可以利用闪速存储器来实施。闪速存储器可以具有三维(3d)堆叠结构。

控制器130可以响应于来自主机102的请求来控制存储器装置150。例如,控制器130可以将从存储器装置150读取的数据提供到主机102,并且将从主机102提供的数据存储到存储器装置150中。对于该操作,控制器130可以控制存储器装置150的读取操作、写入操作、编程操作和擦除操作。

控制器130可以包括全部经由内部总线可操作地联接的主机接口(i/f)单元132、处理器134、错误校正码(ecc)单元138、电源管理单元(pmu)140、nand闪存控制器(nfc)142和存储器144。

主机接口单元132可以被配置为处理主机102的命令和数据,并且可以通过诸如以下的各种接口协议中的一种或多种与主机102通信:通用串行总线(usb)、多媒体卡(mmc)、高速外围组件互连(pci-e)、小型计算机系统接口(scsi)、串列scsi(sas)、串行高级技术附件(sata)、并行高级技术附件(pata)、增强型小型磁盘接口(esdi)和集成驱动电路(ide)。

ecc单元138可以检测并校正包含在从存储器装置150读取的数据中的错误。换言之,ecc单元138可以通过在ecc编码进程期间使用的ecc代码对从存储器装置150读取的数据执行错误校正解码进程。根据错误校正解码进程的结果,ecc单元138可以输出例如错误校正成功/失败信号的信号。当错误位的数量大于可校正错误位的阈值时,ecc单元138可以不错误位,并且可以输出错误校正失败信号。

ecc单元138可以通过诸如低密度奇偶校验(ldpc)码、博斯-查德胡里-霍昆格姆(bose-chaudhuri-hocquenghem,bch)码、涡轮码、里德-所罗门(reed-solomon,rs)码、卷积码、递归系统码(rsc)、网格编码调制(tcm)和分组编码调制(bcm)等的编码调制执行错误校正。然而,ecc单元138不限于此。ecc单元138可以包括用于错误校正的所有电路、模块、系统或装置。

pmu140可提供并管理控制器130的电源。

nfc142可以用作用于将控制器130和存储器装置150接口连接的存储器/存储接口,使得控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150是闪速存储器或具体地是nand闪速存储器时,nfc142可以在处理器134的控制下生成用于存储器装置150的控制信号并且处理待提供给存储器装置150的数据。nfc142可以作为用于处理控制器130和存储器装置150之间的命令和数据的接口(例如,nand闪存接口)。具体地,nfc142可以支持控制器130和存储器装置150之间的数据传送。

存储器144可以用作存储器系统110和控制器130的工作存储器,并且存储用于驱动存储器系统110和控制器130的数据。控制器130可以响应于来自主机102的请求来控制存储器装置150执行读取操作、写入操作、编程操作和擦除操作。控制器130可以将从存储器装置150读取的数据提供给主机102,可以将从主机102提供的数据存储到存储器装置150中。存储器144可以存储控制器130和存储器装置150执行这些操作所需的数据。

存储器144可以通过易失性存储器来实施。例如,存储器144可以通过静态随机存取存储器(sram)或动态随机存取存储器(dram)来实施。存储器144可以被设置在控制器130的内部或外部。图1例示设置在控制器130内的存储器144。在实施例中,存储器144可以通过具有在存储器144和控制器130之间传送数据的存储器接口的外部易失性存储器来实施。

处理器134可以控制存储器系统110的总体操作。处理器134可以驱动固件以控制存储器系统110的总体操作。固件可以被称为闪存转换层(ftl)。

控制器130的处理器134可以包括用于执行存储器装置150的坏块管理操作的管理单元(未示出)。管理单元可以执行对包括在存储器装置150中的多个存储块152至156中的,在编程操作期间由于nand闪速存储器的特性而在坏块中发生编程失败的坏块进行检查的坏块管理操作。管理单元可以将坏块的编程失败数据写入到新的存储块。在具有3d堆叠结构的存储器装置150中,坏块管理操作可降低存储器装置150的使用效率和存储器系统110的可靠性。因此,需要更可靠地执行坏块管理操作。

图2是示出存储器装置150的示意图。

参照图2,存储器装置150可以包括多个存储块0至n-1,并且块0到n-1中的每一个可以包括多个页面,例如2m个页面,页面的数量可以根据电路设计而变化。包含在各个存储块0至n-1中的存储器单元可以是存储1位数据的单层单元(slc)、存储2位或更多位数据的多层单元(mlc)中的一个或多个。存储3位数据的mlc也被称为三层单元(tlc),并且存储4位数据的mlc也被称为四层单元(qlc)。

图3是示出存储器装置150中的存储块的存储器单元阵列的示例性配置的电路图。

参照图3,可以对应于包括在存储器系统110的存储器装置150中的多个存储块152至156中的任意一个的存储块330可以包括联接到多个相应位线bl0至blm-1的多个单元串340。每列的单元串340可以包括一个或多个漏极选择晶体管dst和一个或多个源极选择晶体管sst。多个存储器单元mc0至mcn-1可以串联地联接在选择晶体管dst和sst之间。在实施例中,存储器单元晶体管mc0至mcn-1中的每一个可以通过能够存储多个位的数据信息的mlc来实施。单元串340中的每一个可以电联接到多个位线bl0至blm-1中的相应位线。例如,如图3所示,第一单元串联接到第一位线bl0,并且最后的单元串联接到最后的位线blm-1。

虽然图3示出nand闪速存储器单元,但是本发明不限于此方式。注意的是,存储器单元可以是nor闪速存储器单元,或者包括两种或更多种组合在其中的存储器单元的混合闪速存储器单元。并且,注意的是,存储器装置150可以是包括导电浮栅作为电荷存储层的闪速存储器装置或包括绝缘层作为电荷存储层的电荷撷取闪存(ctf)存储器装置。

存储器装置150可以进一步包括电压供给单元310,其提供包括根据操作模式供给到字线的编程电压、读取电压和通过电压的字线电压。电压供给单元310的电压生成操作可以由控制电路(未示出)来控制。在控制电路的控制下,电压供给单元310可以选择存储器单元阵列的存储块(或扇区)中的一个,选择所选择的存储块的字线中的一个,并且将字线电压提供给所选择的字线和未选择的字线。

存储器装置150可以包括由控制电路控制的读取/写入电路320。在验证/正常读取操作期间,读取/写入电路320可以用作用于从存储器单元阵列读取数据的读出放大器。在编程操作期间,读取/写入电路320可以用作用于根据待存储在存储器单元阵列中的数据来驱动位线的写入驱动器。在编程操作期间,读取/写入电路320可以从缓冲器(未示出)接收待存储到存储器单元阵列中的数据并且根据接收的数据来驱动位线。读取/写入电路320可以包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器322至326,并且页面缓冲器322至326中的每一个可以包括多个锁存器(未示出)。

图4是示出存储器装置150的示例性3d结构的示意图。

存储器装置150可以由2d或3d存储器装置来实施。具体地,如图4所示,存储器装置150可以由具有3d堆叠结构的非易失性存储器装置来实施。当存储器装置150具有3d结构时,存储器装置150可以包括多个存储块blk0至blkn-1,所述存储块的每一个具有3d结构(或垂直结构)。

图5a、图5b和图6是示出根据本发明的第一实施例的存储器系统100的操作的示意图。

图5a和图5b示出当执行预定操作时,控制器130如何改变存储在易失性存储器144中的信息组opinfo1<1:5>、opinfo2<1:5>、gvinfo<1:2>和ndinfo<1:4>。

图6示出控制器130如何在预定时刻将信息组opinfo1<1:5>、opinfo2<1:5>、gvinfo<1:2>和ndinfo<1:4>复制到非易失性存储器装置150中。

参照图5a至图6,非易失性存储器装置150可以包括多个存储块。在示出的示例中,如图所示,非易失性存储器装置150可以包括六个存储块1501、1502、1503、1504、1505和1506(在下文中被称为存储块1501至1506)。

控制器130可以将存储块1501至1506分组成例如2个块组151和152的k个块组,每个块组包括预定数量的存储块。例如,控制器130可以将六个存储块1501至1506分组成第一块组151和第二块组1152,其分别包括存储块1501至1503和存储块1504至1506。

控制器130可以将在对非易失性存储器装置150的预定操作期间待使用的,作为分别对应于k个块组151和152的k个操作信息组opinfo1<1:5>和opinfo2<1:5>的操作信息的操作信息存储在易失性存储器144中。例如,控制器130可以将在对非易失性存储器装置150的预定操作(未示出)期间待使用的,作为对应于第一块组151和第二块组152的第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>的多个操作信息的多个操作信息,例如五种不同类型的操作信息,存储在易失性存储器144中,并且将第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>存储在易失性存储器144中。

并且,控制器130可以将分别表示k个操作信息组opinfo1<1:5>和opinfo2<1:5>是否被更新的k组版本信息gvinfo1和gvinfo2存储在易失性存储器144中。例如,控制器130可以将分别表示针对第一块组151和第二块组152的第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>是否被更新的第一组版本信息gvinfo1和第二组版本信息gvinfo2存储在易失性存储器144中。k组版本信息gvinfo1和gvinfo2可以分别对应于针对k个块组151和152的k个操作信息组opinfo1<1:5>和opinfo2<1:5>。

并且,控制器130可以将对非易失性存储器装置150的预定操作分别需要的“s”个必要信息ndinfo<1:4>存储在易失性存储器144中。例如,如图所示,控制器130可以将对非易失性存储器装置150的预定操作(未示出)分别需要的4个必要信息ndinfo<1:4>存储在易失性存储器144中。

对非易失性存储器装置150的预定操作可以包括诸如读取操作、写入操作和擦除操作的前台操作以及诸如垃圾收集操作和读取回收(readreclaim)操作的后台操作。

并且,可以不指定s个必要信息ndinfo<1:4>的更新频率和更新时刻。例如,s个必要信息ndinfo<1:4>的示例可以包括有效页面计数信息、擦除计数信息、读取历史信息和闪存转换层(ftl)核心信息。

并且,当在预定操作中的相应的一个预定操作完成时,可以更新操作信息。操作信息的示例可以包括映射地址信息和块相关信息。

参照图5b,k组版本信息gvinfo1和gvinfo2可以分别对应于针对k个块组151和152的n个操作信息opinfo1<1:5>和n个操作信息opinfo2<1:5>。当执行预定操作时,在k*n个操作信息opinfo1<1:5>和opinfo2<1:5>中,k组版本信息gvinfo1和gvinfo2被用于区分对应于已经发生更新的l个块组151的n个操作信息opinfo1<1:5>与对应于尚未发生更新的k-l个块组152的n个操作信息opinfo2<1:5>。例如,当针对第一块组151的第一操作信息组opinfo1<1:5>中的一个或多个操作信息被更新时,第一组版本信息gvinfo1可以表示针对第一块组151的第一操作信息组opinfo1<1:5>的更新。例如,当针对第二块组152的第二操作信息组opinfo2<1:5>中的一个或多个操作信息被更新时,第二组版本信息gvinfo2可以表示针对第二块组152的第二操作信息组opinfo2<1:5>的更新。

例如,如图5b和图6所示,由于对应于针对第一块组151的第二和第三操作信息opinfo1<2:3>的预定操作被完成并且其它操作未完成,因此只有针对第一块组151的第一操作信息组opinfo1<1:5>中的第二和第三操作信息opinfo1<2:3>被更新并且其它操作信息未更新。

第一组版本信息gvinfo1和第二组版本信息gvinfo2都被设置为初始值“0”。当对应于针对第一块组151的第二和第三操作信息opinfo1<2:3>的预定操作被完成,针对第一块组151的第二和第三操作信息opinfo1<2:3>可以被更新,并且与第一块组151和包括更新的第二和第三操作信息opinfo1<2:3>的第一操作信息组opinfo1<1:5>相对应的第一组版本信息gvinfo1的值被改变为‘1’。与第二块组152和未更新的第二操作信息组opinfo2<1:5>相对应的第二组版本信息gvinfo2的值维持初始值‘0’。

简而言之,由于第一操作信息组opinfo1<1:5>通常对应于第一块组151和第一组版本信息gvinfo1,因此如果第一操作信息组opinfo1<1:5>中的一个或多个操作信息在预定操作期间被更新,则针对第一块组151的第一组版本信息gvinfo1的值被改变。类似地,由于第二操作信息组opinfo2<1:5>通常对应于第二块组152和第二组版本信息gvinfo2,因此如果第二操作信息组opinfo2<1:5>中的任意一个操作信息在预定操作期间被更新,则针对第二块组152的第二组版本信息gvinfo2的值被改变。

因此,控制器130可以在预定操作完成之后的预定时刻检查k组版本信息gvinfo1和gvinfo2中的每一个,并且可以找出哪个操作信息组被更新。例如,具有值“1”的第一组版本信息gvinfo1可以表示针对第一块组151的第一操作信息组opinfo1<1:5>中的一个或多个操作信息的更新。例如,具有值“0”的第二组版本信息gvinfo2可以表示针对第二块组152的第二操作信息组opinfo2<1:5>中的任意一个操作信息的未更新。

如图6所示,控制器130可以将已经发生更新的针对第一块组151的(即,针对如例示的第一块组151的第二和第三操作信息opinfo1<2:3>的更新)整个第一操作信息组opinfo1<1:5>从易失性存储器144复制到非易失性存储器装置150中。

在复制操作之后,控制器130可以初始化与被复制到非易失性存储器装置150的操作信息组相对应的k组版本信息gvinfo1和gvinfo2中的至少一个。

例如,当已经发生更新的针对第一块组151的(即,针对如例示的第一块组151的第二和第三操作信息opinfo1<2:3>的更新)整个第一操作信息组opinfo1<1:5>被复制到非易失性存储器装置150中之后,控制器130可以初始化第一组版本信息gvinfo1和第二组版本信息gvinfo2中的一个或多个以使其具有值“0”。

由于在将更新的操作信息组opinfo<1:5>从易失性存储器144被复制到非易失性存储器装置150中之后初始化第一组版本信息gvinfo1,因此当其后执行另一预定操作并且更新第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>中的一些操作信息时,基于第一组版本信息gvinfo1和第二组版本信息gvinfo2准确地识别更新的操作信息组是可能的。

控制器130可以在预定时刻将所有必要信息ndinfo<1:4>从易失性存储器144复制到非易失性存储器装置150中。在本文中,如图5b所示,可以根据在预定操作中执行的操作不更新s个必要信息ndinfo<1:4>中的一些必要信息,例如第四必要信息ndinfo<4>。因为s个必要信息ndinfo<1:4>是未指定更新频率和更新时刻的信息,所以不管其是否执行更新,s个必要信息ndinfo<1:4>都可以在预定时刻从易失性存储器144复制到非易失性存储器装置150中。

简而言之,控制器130基于k组版本信息gvinfo1和gvinfo2仅检查k个操作信息组opinfo1<1:5>和opinfo2<1:5>是否被更新,并且控制器130不检查必要信息ndinfo<1:4>是否被更新。

同时,预定时刻可以被确定为当预定操作完成以满足预定操作中的预定条件时的时刻。在本文中,预定条件可以由系统设计者不同地设置。例如,预定条件可以是当数据架构被改变的时刻,并且改变数据值的预定操作可以是将新数据存储在非易失性存储器装置150中的写入操作或者迁移存储在非易失性存储器装置150中的数据的垃圾回收操作。

并且,预定时刻可以取决于来自主机的请求。换言之,预定时刻可以根据来自主机的请求而被确定。

并且,预定时刻可以被设置为周期性地重复。例如,预定时刻可以被设置为在预定时间段被重复,而不管是否执行预定操作。

在每个预定时刻将k个操作信息组opinfo1<1:5>和opinfo2<1:5>中更新的操作信息组opinfo1<1:5>和s个必要信息ndinfo<1:4>复制到非易失性存储器装置150中使得系统应对其中存储器系统110的电源突然被切断的存储器系统110的突然断电情况。

换言之,存储器系统110的电源可能由于存储器系统110的操作环境而突然停止,并且在该情况下,存储在易失性存储器144中的所有数据被删除。

因此,为了在电源恢复供电时最大限度地恢复电源被切断之前的状态,控制器130可以设置预定时刻,并且在该特定时刻将存储在易失性存储器144中的包括s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的重要信息复制到非易失性存储器装置150中。

在电源开启的时刻,存储在非易失性存储器装置150中的s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>被复制回易失性存储器144中。

同时,非易失性存储器装置150可以另外地包括不同于存储块1501至1506的多个存储块152至156。

如图6所示,控制器130可以指定和管理存储块152至156中的第一存储块152作为用于存储s个必要信息ndinfo<1:4>的存储器区域。并且,控制器130可以指定和管理存储块152至156中的第二存储块154作为用于存储k个操作信息组opinfo1<1:5>和opinfo2<1:5>的存储器区域。

并且,控制器130可以包括和管理在s个必要信息ndinfo<1:4>中表示第二存储块154的物理位置的信息。换言之,控制器130可以包括和管理在s个必要信息<1:4>中表示非易失性存储器装置150中的k个操作信息组opinfo1<1:5>和opinfo2<1:5>的物理位置的信息的物理地址信息。

控制器130可以管理作为单层单元(slc)类型的第一存储块152,并且管理作为多层单元(mlc)类型的第二存储块154。换言之,用于存储比k个操作信息组opinfo1<1:5>和opinfo2<1:5>更重要的s个必要信息ndinfo<1:4>的第一存储块152可以作为slc类型被管理,从而最小化丢失s个必要信息ndinfo<1:4>的可能性。

并且,控制器130可以管理作为单层单元(slc)类型的第一存储块152和第二存储块154,并且管理除第一存储块152和第二存储块154之外的作为多层单元(mlc)类型的存储块156。换言之,用于存储比普通数据更重要的s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的第一存储块152和第二存储块154可以作为slc类型被管理,从而最小化丢失s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的可能性。

同时,在非易失性存储器装置150中重写数据是不可能的。因此,在每个预定时刻待从易失性存储器144被复制到非易失性存储器装置150的信息的大小必须被最小化,以提升存储器系统110的整体操作性能。

然而,根据本发明的第一实施例,在k个操作信息组opinfo1<1:5>和opinfo2<1:5>中,不是所有k个操作信息组opinfo1<1:5>和opinfo2<1:5>在每个预定时刻都被复制到非易失性存储器装置150中,而是只有与其中已经发生更新的块组相对应的操作信息组opinfo1<1:5>被复制到非易失性存储器装置150中。

因此,根据本发明的实施例,最小化在每个预定时刻待从易失性存储器144复制到非易失性存储器装置150中的信息的大小是可能的。

图7a、图7b和图8是示出根据本发明的第二实施例的存储器系统100的操作的示意图。

图7a和图7b示出当执行预定操作时,控制器130如何改变存储在易失性存储器144中的信息组opinfo1<1:5>、opinfo2<1:5>、pvinfo1<1:5>、pvinfo2<1:5>和ndinfo<1:4>。

图8示出控制器130如何在预定时刻将信息组opinfo1<1:5>、opinfo2<1:5>、pvinfo1<1:5>、pvinfo2<1:5>和ndinfo<1:4>复制到非易失性存储器装置150中。

参照图7a至图8,非易失性存储器装置150可以包括多个存储块。例如,如图所示,非易失性存储器装置150可以包括六个存储块1501、1502、1503、1504、1505和1506(在下文中被称为1501至1506)。

控制器130可以将存储块1501至1506分组成例如2个块组151和152的k个块组,块组的每一个包括预定数量的存储块。例如,控制器130可以将六个存储块1501至1506分组成第一块组151和第二块组1152,其分别包括存储块1501至1503和存储块1504至1506。

控制器130可以将在预定操作期间待用于非易失性存储器装置150的、作为分别对应于k个块组151和152的k个操作信息组opinfo1<1:5>和opinfo2<1:5>的多个操作信息存储在易失性存储器144中。例如,控制器130可以将在预定操作(未示出)期间待用于非易失性存储器装置150的、作为分别对应于第一块组151和第二块组152的第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>的五种不同类型的操作信息存储在易失性存储器144中,并且将第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>存储在易失性存储器144中。

并且,控制器130可以将分别表示k个操作信息组opinfo1<1:5>和opinfo2<1:5>是否被更新的k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>存储在易失性存储器144中。例如,控制器130可以存储分别表示针对第一块组151和第二块组152的第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>是否被更新的第一单独版本信息组pvinfo1<1:5>和第二单独版本信息组pvinfo21:5>。k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>可以分别对应于针对k个块组151和152的k个操作信息组opinfo1<1:5>和opinfo2<1:5>。

并且,控制器130可以将对非易失性存储器装置150的预定操作分别需要的“s”个必要信息ndinfo<1:4>存储在易失性存储器144中。例如,如图所示,控制器130可以将对非易失性存储器装置150的预定操作(未示出)分别需要的4个必要信息ndinfo<1:4>存储在易失性存储器144中。

对非易失性存储器装置150的预定操作可以包括诸如读取操作、写入操作和擦除操作的前台操作以及诸如垃圾收集操作和读取回收操作的后台操作。

并且,s个必要信息ndinfo<1:4>的更新频率和更新时刻可以是不改变的。例如,s个必要信息ndinfo<1:4>的示例可以包括有效页面计数信息、擦除计数信息、读取历史信息和闪存转换层(ftl)核心信息。

并且,当预定操作中相应的一个预定操作完成时,可以更新操作信息。操作信息的示例可以包括映射地址信息和块相关信息。

例如,当分别针对第一块组151和第二块组152的第一操作信息组opinfo1<1:5>和第二操作信息组opinfo2<1:5>中的每一个中的一个或多个操作信息被更新时,单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>中的相应一个单独版本信息组中的相应的单独版本信息可以表示操作信息的更新。例如,当针对第二块组152的第二操作信息组opinfo2<1:5>中的一个或多个操作信息被更新时,第二单独版本信息组pvinfo2<1:5>中的相应的单独版本信息可以表示针对第二块组152的第二操作信息组opinfo2<1:5>中的操作信息的更新。

例如,如图7和图8所示,由于对应于针对第一块组151的第二和第三操作信息opinfo1<2:3>的预定操作被完成并且其它操作未完成,因此只有针对第一块组151的第一操作信息组opinfo1<1:5>中的第二和第三操作信息opinfo1<2:3>被更新并且其它操作信息未更新。

k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>都被设置为初始值“0”。当对应于针对第一块组151的第二和第三操作信息opinfo1<2:3>的预定操作被完成,针对第一块组151的第二和第三操作信息opinfo1<2:3>可以被更新,并且在第一单独版本信息组pvinfo1<1:5>中与更新的第二和第三第一操作信息opinfo1<2:3>相对应的第二和第三单独版本信息pvinfo1<2:3>的值被改变为‘1’。对应于未更新的第一、第四和第五第一操作信息opinfo1<1,4:5>的第一、第四和第五单独版本信息pvinfo1<1,4:5>以及对应于未更新的第二操作信息组opinfo2<1:5>的第二单独版本信息组pvinfo2<1:5>的值不改变而保持初始值“0”。

因此,控制器130可以在预定操作完成之后,在预定时刻检查k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>中的每一个,并且可以发现其中操作信息组被更新的操作信息。例如,在第一单独版本信息组pvinfo1<1:5>中具有值“1”的第二和第三单独版本信息pvinfo1<2:3>可以表示在针对第一块组151的第一操作信息组opinfo1<1:5>中的第二和第三操作信息opinfo1<2:3>的更新。例如,具有值“0”的第二单独版本信息组pvinfo2<1:5>可以表示针对第二块组152的第二操作信息组opinfo2<1:5>中的任意一个操作信息的未更新。

如图8所示,控制器130可以基于单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>将更新的操作信息opinfo1<2:3>从易失性存储器144复制到非易失性存储器装置150中。

在复制操作之后,控制器130可以初始化在k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>中可以对应于被复制到非易失性存储器装置150的操作信息的至少一个单独版本信息。

例如,在针对第一块组151的第一操作信息组opinfo1<1:5>中更新的第二和第三操作信息opinfo1<2:3>被复制到非易失性存储器装置150中之后,控制器130可以初始化在第一单独版本信息组pvinfo1<1:5>中的第二和第三单独版本信息pvinfo1<2:3>(对应于第二和第三操作信息opinfo1<2:3>)以具有值“0”。

由于在预定时刻相应的操作信息opinfo1<2:3>从易失性存储器144被复制到非易失性存储器装置150中之后单独版本信息pvinfo1<2:3>被初始化,因此当其后另一预定操作被执行并且操作信息组opinfo1<1:5>和opinfo2<1:5>中的一些操作信息被更新时,基于k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>准确地识别更新的操作信息是可能的。

控制器130可以在预定时刻将所有s个必要信息ndinfo<1:4>从易失性存储器144复制到非易失性存储器装置150中。在本文中,如图7b所示,可以根据在预定操作中执行的操作不更新在s个必要信息ndinfo<1:4>中的一些必要信息,例如第四必要信息ndinfo<4>。因为s个必要信息ndinfo<1:4>是未指定更新频率和更新时刻的信息,所以不管其是否执行更新,s个必要信息ndinfo<1:4>可以在预定时刻从易失性存储器144复制到非易失性存储器装置150中。

简而言之,控制器130基于在k个单独版本信息组pvinfo1<1:5>和pvinfo2<1:5>中的每个单独版本信息来仅检查k个操作信息组opinfo1<1:5>和opinfo2<1:5>中的每个操作信息是否被更新,并且控制器130不检查必要信息ndinfo<1:4>是否被更新。

同时,预定时刻可以是当多个预定操作中的预定操作被完成以满足预定条件的时刻。在本文中,预定条件可以由系统设计者不同地设置。例如,预定条件可以是当数据架构被改变的时刻,并且改变数据值的预定操作可以是将新数据存储在非易失性存储器装置150中的写入操作或者迁移存储在非易失性存储器装置150中的数据的垃圾回收操作。

并且,预定时刻可以取决于来自主机的请求。换言之,预定时刻可以根据来自主机的请求而被确定。

并且,预定时刻可以被设置为周期性地重复。例如,预定时刻可以在预定时间段被重复,而不管是否执行预定操作。

同时,在每个预定时刻将k个操作信息组opinfo1<2:3>和opinfo2<1:5>中更新的操作信息opinfo1<1:5>和s个必要信息ndinfo<1:4>复制到非易失性存储器装置150中使得系统应对其中存储器系统110的电源突然被切断的存储器系统110的突然断电情况。

换言之,存储器系统110的电源可能由于存储器系统110的操作环境而突然停止,并且在该情况下,存储在易失性存储器144中的所有数据被删除。

因此,为了在电源恢复供电时允许最大限度地恢复到电源被切断之前的状态,控制器130可以设置预定时刻,并且在特定时刻将存储在易失性存储器144中的包括s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的重要信息复制到非易失性存储器装置150中。

在电源被重新建立的时刻,存储在非易失性存储器装置150中的s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>被复制回易失性存储器144中。

同时,非易失性存储器装置150可以另外地包括不同于存储块1501至1506的多个存储块152至156。

如图8所示,控制器130可以指定和管理存储块152至156中的第一存储块152作为用于存储s个必要信息ndinfo<1:4>的存储器区域。并且,控制器130可以指定和管理存储块152至156中的第二存储块154作为用于存储k个操作信息组opinfo1<1:5>和opinfo2<1:5>的存储器区域。

并且,控制器130可以包括和管理在s个必要信息ndinfo<1:4>中表示第二存储块154的物理位置的信息。换言之,控制器130可以包括和管理作为在s个必要信息<1:4>中表示非易失性存储器装置150中的k个操作信息组opinfo1<1:5>和opinfo2<1:5>的物理位置的信息的物理地址信息。

控制器130可以管理作为单层单元(slc)类型的第一存储块152,并且管理作为多层单元(mlc)类型的第二存储块154。换言之,用于存储比k个操作信息组opinfo1<1:5>和opinfo2<1:5>重要的s个必要信息ndinfo<1:4>的第一存储块152可以作为slc类型被管理,从而最小化丢失s个必要信息ndinfo<1:4>的可能性。

并且,控制器130可以管理作为单层单元(slc)类型的第一存储块152和第二存储块154,并且管理除第一存储块152和第二存储块154之外的作为多层单元(mlc)类型的存储块156。换言之,用于存储比普通数据更重要的s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的第一存储块152和第二存储块154可以作为slc类型被管理,从而最小化丢失s个必要信息ndinfo<1:4>和k个操作信息组opinfo1<1:5>和opinfo2<1:5>的可能性。

同时,在非易失性存储器装置150中重写数据是不可能的。因此,在每个预定时刻待从易失性存储器144被复制到非易失性存储器装置150的信息的大小必须被最小化,以提升存储器系统110的整体操作性能。

然而,根据本发明的第二实施例,不是所有k个操作信息组opinfo1<1:5>和opinfo2<1:5>在每个预定时刻从易失性存储器144复制到非易失性存储器装置150中,而是只有k个操作信息组opinfo1<1:5>和opinfo2<1:5>中的被更新的操作信息opinfo1<2:3>可以从易失性存储器144被复制到非易失性存储器装置150中。

因此,根据本发明的第二实施例,在每个预定时刻最小化待从易失性存储器144复制到非易失性存储器装置150中的信息的大小是可能的。

图9至图17是示意性示出图1的数据处理系统的应用示例的图。

图9是示意性地示出包括根据本实施例的存储器系统的数据处理系统的另一示例的图。图9示意性地示出应了用根据本实施例的存储器系统的存储卡系统。

参照图9,存储卡系统6100可以包括存储器控制器6120、存储器装置6130和连接器6110。

更具体地,存储器控制器6120可以连接到由非易失性存储器实施的存储器装置6130,并且被配置为访问存储器装置6130。例如,控制器6120可以被配置为控制存储器装置6130的读取操作、写入操作、编程操作和擦除操作。存储器控制器6120可以被配置为提供存储器装置6130和主机之间的接口并且驱动用于控制存储器装置6130的固件。即,存储器控制器6120可以对应于参照图1和图5描述的存储器系统110的控制器130,并且存储器装置6130可以对应于参照图1和图5描述的存储器系统110的存储器装置150。

因此,存储器控制器6120可以包括ram、处理单元、主机接口、存储器接口和错误校正单元。存储器控制器130可以进一步包括图5所示的元件。

存储器控制器6120可以通过连接器6110与例如图1的主机102的外部装置通信。例如,如参照图1描述的,存储器控制器6120可以被配置为通过诸如以下的各种通信协议中的一种或多种与外部装置通信:通用串行总线(usb)、多媒体卡(mmc)、嵌入式mmc(emmc)、外围组件互连(pci)、高速pci(pcie)、高级技术附件(ata)、串行ata、并行ata、小型计算机系统接口(scsi)、增强型小型磁盘接口(edsi)、集成驱动电路(ide)、火线、通用闪速存储器(ufs)、wifi和蓝牙。因此,根据本实施例的存储器系统和数据处理系统可以应用于有线/无线电子装置或特别是移动电子装置。

存储器装置6130可以由易失性存储器来实施。例如,存储器装置6130可以有诸如以下的各种非易失性存储器装置来实施:可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、nand闪存、nor闪存、相变ram(pram)、电阻式ram(reram)、铁电ram(fram)和自旋转移力矩磁阻ram(stt-ram)。存储器装置6130可以包括如图5的存储器装置150中的多个存储器管芯。

存储器控制器6120和存储器装置6130可以被集成到单个半导体装置中。例如,存储器控制器6120和存储器装置6130可以通过集成到单个半导体装置中来构造固态硬盘(ssd)。并且,存储器控制器6120和存储器装置6130可以构造诸如以下的存储卡:pc卡(pcmcia:个人计算机存储卡国际协会)、标准闪存(cf)卡、智能媒体卡(例如,sm和smc)、记忆棒、多媒体卡(例如,mmc、rs-mmc、微型mmc和emmc)、sd卡(例如,sd、迷你sd、微型sd和sdhc)和通用闪速存储器(ufs)。

图10是示意性地示出根据本实施例的包括存储器系统的数据处理系统的另一示例的图。

参照图10,数据处理系统6200可以包括具有一个或多个非易失性存储器的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。如参照图1描述的,图10所示的数据处理系统6200可以用作诸如存储卡(cf、sd、微型sd等)或usb装置的存储介质。存储器控制器6230可以对应于图1和图5所示的存储器系统110的控制器150,并且存储器装置6220可以对应于图1和图5所示的存储器系统110的存储器装置130。

存储器控制器6220可以响应于主机6210的请求来控制对存储器装置6230的读取操作、写入操作或擦除操作,并且存储器控制器6220可以包括一个或多个cpu6221、诸如ram6222的缓冲存储器、ecc电路6223、主机接口6224和诸如nvm接口6225的存储器接口。

cpu6221可以控制对存储器装置6230的整体操作,例如读取操作、写入操作、文件系统管理操作和坏页面管理操作。ram6222可以根据cpu6221的控制来操作,并且用作工作存储器、缓冲存储器或高速缓冲存储器。当ram6222用作工作存储器时,由cpu6221处理的数据可以临时存储在ram6222中。当ram6222用作缓冲存储器时,ram6222可以用于缓冲从主机6210传输到存储器装置6230或从存储器装置6230传输到主机6210的数据。当ram6222用作高速缓冲存储器时,ram6222可以辅助低速存储器装置6230以高速操作。

ecc电路6223可以对应于图1所示的控制器130的ecc单元138。如参照图1描述的,ecc电路6223可以生成用于校正从存储器装置6230提供的数据的失败位或错误位的ecc(错误校正码)。ecc电路6223可以对被提供给存储器装置6230的数据执行错误校正编码,由此形成具有奇偶校验位的数据。奇偶校验位可以被存储在存储器装置6230中。ecc电路6223可以对从存储器装置6230输出的数据执行错误校正解码。此时,ecc电路6223可以使用奇偶校验位来校正错误。例如,如参照图1描述的,ecc电路6223可以使用ldpc码、bch码、涡轮码、里德-所罗门码、卷积码、rsc或诸如tcm或bcm的编码调制来校正错误。

存储器控制器6220可以通过主机接口6224将数据传输到主机6210/从主机6210接收数据,并且通过nvm接口6225将数据传输到存储器装置6230/从存储器装置6230接收数据。主机接口6224可以通过pata总线、sata总线、scsi、usb、pcie或nand接口连接到主机6210。存储器控制器6220可以具有利用诸如wifi或长期演进(lte)的移动通信协议的无线通信功能。存储器控制器6220可以连接到例如主机6210或另一外部装置的外部装置,并且然后将数据传输到外部装置/从外部装置接收数据。特别地,因为存储器控制器6220被配置为通过一种或多种各种通信协议与外部装置通信,所以根据本实施例的存储器系统和数据处理系统可以应用于有线/无线电子装置或特别是移动电子装置。

图11是示意性地示出包括根据本实施例的存储器系统的数据处理系统的另一示例的图。图11示意性地示出应用了根据本实施例的存储器系统的ssd。

参照图11,ssd6300可以包括控制器6320和包括多个非易失性存储器的存储器装置6340。存储器控制器6320可以对应于图1和图5的存储器系统110的控制器130,并且存储器装置6340可以对应于图1和图5的存储器系统110的存储器装置150。

更具体地,控制器6320可以通过多个通道ch1至chi被连接到存储器装置6340。控制器6320可以包括一个或多个处理器6321、缓冲存储器6325、ecc电路6322、主机接口6324和例如非易失性存储器接口6326的存储器接口。

缓冲存储器6325可临时存储从主机6310提供的数据或从包括在存储器装置6340中的多个闪速存储器nvm提供的数据,或临时存储多个闪速存储器nvm的元数据,例如包括映射表的映射数据。缓冲存储器6325可以由诸如dram、sdram、ddrsdram、lpddrsdram和gram的易失性存储器或诸如fram、reram、stt-mram和pram的非易失性存储器来实施。为了便于描述,图10示出缓冲存储器6325存在于控制器6320中。然而,缓冲存储器6325可以存在于控制器6320的外部。

ecc电路6322可以在编程操作期间计算待编程到存储器装置6340中的数据的ecc值,在读取操作期间基于ecc值对从存储器装置6340读取的数据执行错误校正操作,并且在失败的数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。

主机接口6324可以利用例如主机6310的外部装置提供接口功能,并且非易失性存储器接口6326可以利用通过多个通道连接的存储器装置6340提供接口功能。

此外,应用了图1和图5的存储器系统110的多个ssd6300可以被设置成实施数据处理系统,例如raid(独立磁盘的冗余阵列)系统。此时,raid系统可以包括多个ssd6300和用于控制多个ssd6300的raid控制器。当raid控制器响应于从主机6310提供的写入命令执行编程操作时,raid控制器可以根据多个raid级别,即,从ssd6300中的主机6310提供的写入命令的raid级别信息来选择一个或多个存储器系统或ssd6300,并将对应于写入命令的数据输出到选择的ssd6300。此外,当raid控制器响应于从主机6310提供的读取命令执行读取命令时,raid控制器可以根据多个raid级别,即,从ssd6300中的主机6310提供的读取命令的raid级别信息来选择一个或多个存储器系统或ssd6300,并且将从选择的ssd6300读取的数据提供给主机6310。

图12是示意性地示出包括根据本实施例的存储器系统的数据处理系统的另一示例的图。图12示意性地示出应用了根据本实施例的存储器系统的嵌入式多媒体卡(emmc)。

参照图12,emmc6400可以包括控制器6430和由一个或多个nand闪速存储器实施的存储器装置6440。存储器控制器6430可以对应于图1和图5的存储器系统110的控制器130,并且存储器装置6440可以对应于图1和图5的存储器系统110的存储器装置150。

更具体地,控制器6430可以通过多个通道连接到存储器装置6440。控制器6430可以包括一个或多个内核6432、主机接口6431和例如nand接口6433的存储器接口。

内核6432可以控制emmc6400的总体操作,主机接口6431可以在控制器6430和主机6410之间提供接口功能,并且nand接口6433可以在存储器装置6440和控制器6430之间提供接口功能。例如,主机接口6431可以用作例如参照图1描述的mmc接口的并行接口。此外,主机接口6431可以用作例如超高速(uhs-i/uhs-ii)接口的串行接口。

图13至图16是示意性地示出包括根据本实施例的存储器系统的数据处理系统的其它示例的图。图13至图16示意性地示出应用了根据本实施例的存储器系统的ufs(通用闪速存储)系统。

参照图13至图16,ufs系统6500、6600、6700和6800可以分别包括主机6510、6610、6710和6810、ufs装置6520、6620、6720和6820以及ufs卡6530、6630、6730和6830。主机6510、6610、6710和6810可以用作有线/无线电子装置或特别是移动电子装置的应用处理器,ufs装置6520、6620、6720和6820可以用作嵌入式ufs装置,并且ufs卡6530、6630、6730和6830可以用作外部嵌入式ufs设备或可移动ufs卡。

在各个ufs系统6500、6600、6700和6800中的主机6510、6610、6710和6810、ufs装置6520、6620、6720和6820以及ufs卡6530、6630、6730和6830可以通过ufs协议与外部装置,例如有线/无线电子装置或特别是移动电子装置通信,并且ufs装置6520、6620、6720和6820以及ufs卡6530、6630、6730和6830可以由图1和图5所示的存储器系统110实施。例如,在ufs系统6500、6600、6700和6800中,ufs装置6520、6620、6720和6820可以以参照图10至图12描述的数据处理系统6200、ssd6300或emmc6400的形式来实施,并且ufs卡6530、6630、6730和6830可以以参照图9描述的存储卡系统6100的形式来实施。

此外,在ufs系统6500、6600、6700和6800中,主机6510、6610、6710和6810、ufs装置6520、6620、6720和6820以及ufs卡6530、6630、6730和6830可以通过例如mipi(移动工业处理器接口)中的mipim-phy和mipiunipro(统一协议)的ufs接口来与彼此通信。此外,ufs装置6520、6620、6720和6820以及ufs卡6530、6630、6730和6830可以通过除ufs协议之外的例如ufd、mmc、sd、迷你sd和微型sd的各种协议与彼此通信。

在图13所示的ufs系统6500中,主机6510、ufs装置6520和ufs卡6530中的每一个可以包括unipro。主机6510可以执行交换操作,以便与ufs装置6520和ufs卡6530通信。特别地,主机6510可以通过例如在unipro处的l3交换的链路层交换与ufs装置6520或ufs卡6530通信。此时,ufs装置6520和ufs卡6530可以通过在主机6510的unipro处的链路层交换来与彼此通信。在本实施例中,为了便于描述,其中一个ufs装置6520和一个ufs卡6530被连接到主机6510的配置已经被例示。然而,多个ufs装置和ufs卡可以并行地或以星型连接到主机6410,并且多个ufs卡可以并行地或以星型连接到ufs装置6520或者串联地或以链型连接到ufs装置6520。

在图14所示的ufs系统6600中,主机6610、ufs装置6620和ufs卡6630中的每一个可以包括unipro,并且主机6610可以通过执行交换操作的交换模块6640,例如,通过在unipro处执行例如l3交换的链路层交换的交换模块6640与ufs装置6620或ufs卡6630通信。ufs装置6620和ufs卡6630可以通过在unipro处的交换模块6640的链路层交换来与彼此通信。在本实施例中,为了便于描述,其中一个ufs装置6620和一个ufs卡6630被连接到交换模块6640的配置已经被例示出。然而,多个ufs装置和ufs卡可以并行地或以星型连接到交换模块6640,并且多个ufs卡可以串联地或以链型连接到ufs装置6620。

在图15所示的ufs系统6700中,主机6710、ufs装置6720和ufs卡6730中的每一个可以包括unipro,并且主机6710可以通过执行交换操作的交换模块6740,例如,通过在unipro处执行例如l3切换的链路层交换的交换模块6740来与ufs装置6720或ufs卡6730通信。此时,ufs装置6720和ufs卡6730可以通过在unipro处的交换模块6740的链路层交换来与彼此通信,并且交换模块6740可以在ufs装置6720内部或外部与ufs装置6720集成为一个模块。在本实施例中,为了便于描述,其中一个ufs装置6720和一个ufs卡6730被连接到交换模块6740的配置已经被例示出。然而,各自包括交换模块6740和ufs装置6720的多个模块可以并行地或以星型连接到主机6710或者串联地或以链型连接到彼此。此外,多个ufs卡可以并行地或以星型连接到ufs装置6720。

在图16所示的ufs系统6800中,主机6810、ufs装置6820和ufs卡6830中的每一个可以包括m-phy和unipro。ufs装置6820可以执行交换操作,以便与主机6810和ufs卡6830通信。特别地,ufs装置6820可以通过用于与主机6810通信的m-phy和unipro模块之间的交换操作并且通过用于与ufs卡6830通信的m-phy和unipro模块之间的交换操作,例如通过目标id(识别器)交换操作来与主机6810或ufs卡6830通信。此时,主机6810和ufs卡6830可以通过ufs装置6820的m-phy和unipro模块之间的目标id交换来与彼此通信。在本实施例中,为了便于描述,其中一个ufs装置6820被连接到主机6810和一个ufs卡6830被连接到ufs装置6820的配置已经被例示出。然而,多个ufs装置可以并行地或以星型连接到主机6810,或串联地或以链型连接到主机6810,并且多个ufs卡可以并行地或以星型连接到ufs装置6820,或者串联地或以链型连接到ufs装置6820。

图17是示意性地示出包括根据本实施例的存储器系统的数据处理系统的另一示例的图。图17是示意性地示出应用根据本实施例的存储器系统的用户系统的图。

参照图17,用户系统6900可以包括应用处理器6930、存储器模块6920、网络模块6940、存储模块6950和用户接口6910。

更具体地,应用处理器6930可以驱动包括在例如os的用户系统6900中的部件,并且包括用于控制包括在用户系统6900中的部件的控制器、接口、图形引擎等。应用处理器6930可以被设置为片上系统(soc)。

存储器模块6920可以用作用户系统6900的主存储器、工作存储器、缓冲存储器或高速缓冲存储器。存储器模块6920可以包括诸如dram、sdram、ddrsdram、ddr2sdram、ddr3sdram、lpddrsdram、lpddr2sdram和lpddr3sdram的易失性ram或诸如pram、reram、mram和fram的非易失性ram。例如,应用处理器6930和存储器模块6920可以通过基于pop(堆叠封装)的来封装并安装。

网络模块6940可以与外部装置通信。例如,网络模块6940不仅可以支持有线通信,还可以支持诸如以下的各种无线通信:码分多址(cdma)、全球移动通信系统(gsm)、宽带cdma(wcdma)、cdma-2000、时分多址(tdma)、长期演进(lte)、全球微波接入互操作性(wimax)、无线局域网(wlan)、超宽带(uwb)、蓝牙、无线显示(wi-di),从而与有线/无线电子装置或特别是移动电子装置通信。因此,根据本发明的实施例的存储器系统和数据处理系统可以应用于有线和/或无线电子装置。网络模块6940可以被包括在应用处理器6930中。

存储模块6950可以存储数据,例如从应用处理器6930接收的数据,并且将存储的数据传输到应用处理器6930。存储模块6950可以由诸如以下的非易失性半导体存储器装置实现:相变ram(pram)、磁性ram(mram)、电阻式ram(reram)、nand闪存、nor闪存和3维nand闪存,并且被设置为诸如用户系统6900的存储卡和外部驱动器的可移动存储介质。存储模块6950可以对应于以上参照图1和图5描述的存储器系统110。此外,存储模块6950可以利用以上参照图11至图16描述的ssd、emmc和ufs来实施。

用户接口6910可以包括用于将数据或命令输入到应用处理器6930或用于将数据输出到外部装置的接口。例如,用户接口6910可以包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口以及诸如液晶显示器(lcd)、有机发光二极管(oled)显示装置、有源矩阵oled(amoled)显示装置、发光二极管(led)、扬声器和马达的用户输出接口。

此外,当其中图1和图5的存储器系统110被应用于用户系统6900的移动电子装置时,应用处理器6930可以控制移动电子装置的整体操作,并且网络模块6940可以用作用于控制与外部装置的有线/无线通信的通信模块。用户接口6910可以在移动电子装置的显示/触摸模块上显示由处理器6930处理的数据,或支持从触摸面板接收数据的功能。

根据本发明的实施例,包括在非易失性存储器装置中的多个存储块以预定数量的存储块被分组成多个块组,并且只有对应于已经更新的块组的信息在检查点时刻被选择并被存储在非易失性存储器装置中。以该方式,可以在检查点时刻最小化被存储在非易失性存储器装置中的信息的大小。

虽然已经针对特定实施例描述本发明,但是对于本领域技术人员显而易见的是,在不脱离如所附权利要求所限定的本发明的精神和范围的情况下,可以进行各种改变和变型。

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