存储器系统、其操作方法以及包括其的数据处理系统与流程

文档序号:18003828发布日期:2019-06-25 23:08阅读:168来源:国知局
存储器系统、其操作方法以及包括其的数据处理系统与流程

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

各个实施例涉及一种包括主机和存储器系统的数据处理系统。特别地,实施例涉及一种支持相关联的非易失性存储器装置的恢复操作的存储器系统以及包括该存储器系统的数据处理系统。



背景技术:

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

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



技术实现要素:

各个实施例涉及一种能够优化对包括在其中的非易失性存储器装置执行恢复操作的时间点的存储器系统、存储器系统的操作方法以及包括存储器系统的数据处理系统。

在实施例中,一种数据处理系统可以包括主机和存储器系统,存储器系统可以包括易失性恢复选择寄存器和非易失性存储器装置,其中存储器系统在被重置之后检查恢复选择寄存器的值并确定是否对非易失性存储器装置执行恢复操作,并且当从主机请求重置时,存储器系统设置恢复选择寄存器的值并重置非易失性存储器装置,并且主机可以通过在通电操作期间开始的第一启动操作从存储器系统读取设置的第一数据,可以向存储器系统请求重置,并且可以通过在存储器系统的重置之后开始的第二启动操作从存储器系统读取设置的第二数据。

存储器系统可以进一步包括在主机的控制下控制非易失性存储器装置的操作的控制器,控制器可以包括处理控制器和主机之间的操作的主机控制器以及与主机控制器联接并处理控制器和非易失性存储器装置之间的操作的存储器控制器,并且恢复选择寄存器可以被包括在主机控制器中。

当从主机请求重置时,主机控制器可以检查是否通过存储器控制器对非易失性存储器装置执行恢复操作。作为检查的结果,当待对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为特定值,并且当不对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为初始值,并且在恢复选择寄存器的值可以被设置之后,主机控制器可以重置存储器控制器和非易失性存储器装置两者。

在存储器控制器和非易失性存储器装置被重置之后,即使没有来自主机的独立触发,主机控制器也可以检查恢复选择寄存器的值,并且,作为检查的结果,当恢复选择寄存器的值是特定值时,主机控制器可以通过存储器控制器对非易失性存储器装置执行恢复操作。

当从主机请求重置时,主机控制器可以检查是否通过存储器控制器对非易失性存储器装置执行恢复操作。作为检查的结果,当待对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为特定值,并且当不对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为初始值,并且在恢复选择寄存器的值被设置之后,主机控制器可以通过存储器控制器重置非易失性存储器装置。

即使没有来自主机的独立触发,主机控制器也可以响应于将恢复选择寄存器设置为特定值,通过存储器控制器对非易失性存储器装置执行恢复操作,并且存储器控制器可以响应于主机控制器的请求执行重置非易失性存储器装置的操作,并且然后即使没有来自主机控制器的独立请求,主机控制器也可以继续对非易失性存储器装置执行恢复操作。

非易失性存储器装置可以包括启动加载器区域和正常区域,并且主机可以通过第一启动操作从启动加载器区域读取设置的第一数据,并且可以通过第二启动操作从正常区域读取设置的第二数据。

在实施例中,一种存储器系统可以包括:控制器,其可以包括易失恢复选择寄存器;以及非易失性存储器装置,控制器可以在被重置之后检查恢复选择寄存器的值并可以确定是否对非易失性存储器装置执行恢复操作,并且当从主机请求重置时,控制器可以设置恢复选择寄存器的值并重置非易失性存储器装置。

控制器可以进一步包括:主机控制器,其处理控制器和主机之间的操作;以及存储器控制器,其与主机控制器联接并处理控制器和非易失性存储器装置之间的操作,并且恢复选择寄存器可以被包括在主机控制器中。

当从主机请求重置时,主机控制器检查是否可以通过存储器控制器对非易失性存储器装置执行恢复操作。作为检查的结果,当待对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为特定值,并且当不对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为初始值,并且在恢复选择寄存器的值被设置之后,主机控制器可以重置存储器控制器和非易失性存储器装置两者。

在存储器控制器和非易失性存储器装置被重置之后,即使没有来自主机的独立触发,主机控制器也可以检查恢复选择寄存器的值,并且,作为检查的结果,当恢复选择寄存器的值是特定值时,主机控制器可以通过存储器控制器对非易失性存储器装置执行恢复操作。

当从主机请求重置时,主机控制器可以是否通过存储器控制器检查对非易失性存储器装置执行恢复操作。作为检查的结果,当待对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为特定值,并且当不对非易失性存储器装置执行恢复操作时,主机控制器可以将恢复选择寄存器的值设置为初始值,并且在恢复选择寄存器的值被设置之后,主机控制器可以通过存储器控制器重置非易失性存储器装置。

即使没有来自主机的独立触发,主机控制器也可以响应于将恢复选择寄存器设置为特定值,通过存储器控制器开始对非易失性存储器装置执行恢复操作,并且存储器控制器可以响应于主机控制器的请求执行重置非易失性存储器装置的操作,并且然后即使没有来自主机控制器的独立请求,主机控制器也可以继续对非易失性存储器装置执行恢复操作。

在实施例中,一种存储器系统的操作方法,该存储器系统包括易失性恢复选择寄存器和非易失性存储器装置,方法可以包括:执行恢复操作:在存储器系统被重置之后,检查恢复选择寄存器的值并确定是否对非易失性存储器装置执行恢复操作;以及执行重置操作:当从主机请求重置时,设置恢复选择寄存器的值并重置非易失性存储器装置。

存储器系统可以进一步包括:主机控制器,其处理存储器系统和主机之间的操作;以及存储器控制器,其与主机控制器联接并处理存储器系统和非易失性存储器装置之间的操作,并且恢复选择寄存器可以被包括在主机控制器中。

执行重置操作可以包括:当从主机请求重置时,在第一检查操作中,检查是否通过存储器控制器对非易失性存储器装置执行恢复操作;在第一设置操作中,当作为第一检查操作的结果待对非易失性存储器装置执行恢复操作时,通过主机控制器将恢复选择寄存器的值设置为特定值;在第二设置操作中,当作为第一检查操作的结果不对非易失性存储器装置执行恢复操作时,通过主机控制器将恢复选择寄存器的值设置为初始值;以及在第一设置操作或第二设置操作之后重置存储器控制器和非易失性存储器装置。

执行恢复操作可以包括:在重置之后,在第二检查操作中,即使没有来自主机的独立触发,由主机控制器检查恢复选择寄存器的值;以及作为第二检查操作的结果,当恢复选择寄存器的值是特定值时,通过存储器控制器对非易失性存储器装置执行恢复操作。

执行重置操作可以包括:当从主机请求重置时,在第三检查操作中,检查是否通过存储器控制器对非易失性存储器装置执行恢复操作;在第三设置操作中,当作为第三检查操作的结果待对非易失性存储器装置执行恢复操作时,通过主机控制器将恢复选择寄存器的值设置为特定值;在第四设置操作中,当作为第三检查操作的结果不对非易失性存储器装置执行恢复操作时,通过主机控制器将恢复选择寄存器的值设置为初始值;以及在第三设置操作或第四设置操作之后通过存储器控制器重置非易失性存储器装置。

恢复操作可以包括:即使没有来自主机的独立触发,响应于通过第三设置操作将恢复选择寄存器的值设置为特定值,通过存储器控制器开始对非易失性存储器装置执行恢复操作;以及在执行重置之后,继续对非易失性存储器装置执行上述已经开始的的恢复操作。

在实施例中,一种与主机可操作地接合的存储器系统可以包括:非易失性存储器装置;以及控制器,其电联接到非易失性存储器装置,控制器可以在主机在突然断电(spo)之后连续执行用于启动操作的至少两次子启动操作之后时,在没有来自主机的独立命令或信号的情况下,确定是否对非易失性存储器装置执行恢复操作。

附图说明

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

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

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

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

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

图5是示出包括根据实施例的存储器系统的数据处理系统的示图;

图6是示出根据图5所示实施例的包括存储器系统的数据处理系统的操作的示图;

图7是示出图6所示的数据处理系统的操作的流程图的示图;

图8是示出根据图5所示的实施例的包括存储器系统的数据处理系统的效果的示图;以及

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

具体实施方式

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

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

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

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

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

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

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

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

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

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

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

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

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

存储器系统110可以响应于主机102的请求来操作以存储用于主机102的数据。在根据本发明的一个实施例中,存储器系统110可以包括固态驱动器(ssd)、多媒体卡(mmc)、安全数字(sd)卡、通用存储总线(usb)装置、通用闪速存储(ufs)装置、标准闪存(cf)卡、智能媒体(sm)卡、个人计算机存储卡国际协会(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)和闪速存储器的非易失性存储器装置。闪速存储器可以具有3维(3d)堆叠结构。

存储器系统110可以包括存储器装置150和控制器130。存储器装置150可以存储用于主机120的数据。控制器130可以控制将数据存储器装置150中。

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

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

存储器装置150可以是非易失性存储器装置,即使未被供应电力其也能保留其中存储的数据。存储器装置150可以通过写入操作来存储从主机102提供的数据。存储器装置150可以通过读取操作将存储在其中的数据输出到主机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)的存储器接口(i/f)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中使用并且设置在控制器130中的电源。

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

存储器144可以用作存储器系统110和控制器130的工作存储器。存储器144可以存储用于存储器系统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)。因此,根据在存储块中的存储器单元中的每一个中可以表示或存储的位的数量,存储器装置150可以包括slc存储块或mlc存储块。slc存储块可以包括由存储器单元实现的多个页面,其中每个存储器单元存储一位数据,并且slc存储块通常可以具有高数据计算性能和高耐久性。mlc存储块可以包括由存储器单元体现的多个页面,其中每个存储器单元存储多位数据(例如,2位或更多位)。mlc存储块通常可以具有比slc存储块更大的数据存储空间,即更高的集成密度。在实施例中,存储器装置150可以包括多个三层单元(tlc)存储块。在又一实施例中,存储器装置150可以包括多个四层单元(qlc)存储块。tlc存储块可以包括由存储器单元实现的多个页面,其中每个存储器单元能够存储3位数据。qlc存储块可以包括由存储器单元实现的多个页面,其中每个存储器单元能够存储4位数据。

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

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

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

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

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

存储器装置150可以通过2d或3d存储器装置来实施。

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

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

图5是示出包括根据实施例的存储器系统的数据处理系统的示图。

参照图5,示出的包括主机102和存储器系统110的数据处理系统100的配置可以与图1所示的数据处理系统100的配置相同或类似。

如参照图1所述的,存储器系统110包括控制器130和存储器装置150。此外,控制器130包括主机控制器510和存储器控制器520。主机控制器510包括恢复选择寄存器rs_reg。

图5示出其中仅单个非易失性存储器装置150被包括在存储器系统110中的配置。然而,这是为了清楚说明;更大数量的非易失性存储器装置可以被包括。

此外,图6中未示出如包括在控制器130中的图1所示的主机接口132、处理器134、ecc部件138、电源管理单元140、存储器接口142和存储器144。然而,这样的省略是为了更清楚地说明本发明的其它特征。省略的元件可以被包括在控制器130中。

详细地,主机102通过在通电操作期间开始的第一启动操作1st_booting从存储器系统110读取设置的第一数据(未示出)(步骤1021)。这样,在通过第一启动操作1st_booting从存储器系统110读取设置的第一数据之后,向存储器系统110请求重置(步骤1022)。此后,通过在存储器系统110重置之后开始的第二启动操作2nd_booting从存储器系统110读取设置的第二数据(未示出)(步骤1023)。

被包括在存储器系统110中的非易失性存储器装置150包括启动加载器区域和正常区域。此处,术语“启动加载器”可以被认为是操作待在主机102中使用的操作系统所需的程序。换言之,启动加载器可以包括适当加载待在主机102中使用的操作系统所需的程序。

此处,启动加载器编程数据(bootloaderprogramdata)可以被存储在非易失性存储器装置150的启动加载器区域中。此处,由主机102使用的操作系统的基本数据可以被存储在非易失性存储器装置150的、对应于启动加载器区域的正常区域中。

因此,主机102通过在通电操作期间开始的第一启动操作1st_booting从非易失性存储器装置150的启动加载器区域读取设置的第一数据,即,启动加载器编程数据(步骤1021)。此外,在执行第一启动操作1st_booting之后,主机102重置存储器系统110。主机102经由在存储器系统110被重置之后开始的第二启动操作2nd_booting从非易失性存储器装置150的正常区域读取第二数据,即操作系统的基本数据。

虽然在图5中未直接示出,但是在第二启动操作2nd_booting之后,主机102重置存储器系统110。主机102通过在存储器系统110被重置之后开始的内核启动操作,从非易失性存储器装置150的正常区域读取内核数据,即,用于对由主机102使用的操作系统的内核操作的数据。

主机102的上述启动操作,即,包括第一启动操作1st_booting(步骤1021)、第一重置操作(步骤1022)、第二启动操作2nd_booting(步骤1023)、第二重置操作(未示出)和内核启动操作(未示出)的上述启动操作是由大多数通用主机102执行的一种操作。

注意的是,非易失性存储器装置150的正常区域中不仅可以存储主机102中使用的操作系统的基本数据和内核数据,而且还可以存储一般用户数据。

存储器系统110包括易失性恢复选择寄存器rs_reg和非易失性存储器装置150。存储器系统110在被重置之后检查恢复选择寄存器rs_reg的值(步骤515或步骤516)。根据(在步骤515或步骤516中)检查的恢复选择寄存器rs_reg的值,确定是否待对非易失性存储器装置150执行恢复操作(步骤517)。在从主机102请求重置的情况下,设置恢复选择寄存器rs_reg的值(步骤511、步骤512或步骤513)。在设置恢复选择寄存器rs_reg的值之后(步骤511、步骤512或步骤513),重置非易失性存储器装置150(步骤514)。

更详细地,存储器系统110进一步包括控制器130,以在主机102的控制下控制非易失性存储器装置150的操作。控制器130包括诸如处理与主机102的操作的主机接口的主机控制器510以及与主机控制器510联接的存储器控制器520。存储器控制器520可以用作处理与非易失性存储器装置150的操作的存储器接口。此处,恢复选择寄存器rs_reg被包括在主机控制器510中。

在从主机102请求重置的情况下,主机控制器510和存储器控制器520确定或检查是否需要对非易失性存储器装置150的恢复操作(步骤511)。

当需要对非易失性存储器装置150的恢复操作时,作为检查操作(步骤511)的结果,主机控制器510将恢复选择寄存器rs_reg的值设置为特定值(步骤512)。

另一方面,当不需要对非易失性存储器装置150的恢复操作时,作为检查操作(步骤511)的结果,主机控制器510将恢复选择寄存器rs_reg的值设置为初始值(步骤513)。

在将恢复选择寄存器rs_reg设置为特定值或初始值(步骤512或513)之后,主机控制器510重置存储器系统110。

下面描述响应于主机102的请求由主机控制器510重置存储器系统110的两种方法。

在第一种方法中,主机控制器510直接重置存储器控制器520和非易失性存储器装置150两者(步骤514a)。

在第二种方法中,主机控制器510通过存储器控制器520仅重置非易失性存储器装置150(步骤514b)。

第一种方法和第二种方法之间的区别在于当响应于主机102的请求而重置存储器系统110时,存储器控制器520是否与非易失性存储器装置150的一起被重置。换言之,在第一种方法中重置存储器控制器520和非易失性存储器装置150两者,而在第二种方法中,仅重置非易失性存储器装置150,而不重置存储器控制器520。

第一种方法和第二种方法之间的区别可归因于主机102可以实现的配置的多样性。即,如参照图1所述的,存储器系统110可以被用于不同种类的主机102中。因此,根据主机102的种类,可以根据第一种方法重置存储器系统110,或者可以根据第二种方法重置存储器系统110。通常,根据第一种方法重置存储器系统110的操作被称为通过硬件重置方法重置存储器系统110的操作。根据第二种方法重置存储器系统110的操作被称为通过端点重置方法重置存储器系统110的操作。

下面描述对应于以下情况(步骤514a)的存储器控制器520的操作:主机控制器510根据第一种方法重置存储器控制器520和非易失性存储器装置150两者。

首先,在根据第一种方法重置了存储器控制器520和非易失性存储器装置150两者(步骤514a)之后,即使没有来自主机102的独立触发,主机控制器510也自行检查恢复选择寄存器rs_reg的值(步骤515)。

随后,作为检查操作(步骤515)的结果,在恢复选择寄存器rs_reg的值是特定值的情况下,主机控制器510通过存储器控制器520对非易失性存储器装置150执行恢复操作(步骤517)。

相反,作为检查操作(步骤515)的结果,在恢复选择寄存器rs_reg的值是初始值的情况下,主机控制器510不对非易失性存储器装置150执行恢复操作。

下面描述对应于以下情况(步骤514b)的存储器控制器520的操作:主机控制器510根据第二种方法仅重置非易失性存储器装置150。

首先,在执行操作(步骤514b)之前已经执行操作(步骤512或步骤513)之后,即使没有来自主机102的独立触发,主机控制器510也自行检查恢复选择寄存器rs_reg的值(步骤516)。

随后,作为检查操作(步骤516)的结果,在恢复选择寄存器rs_reg的值是特定值的情况下,主机控制器510通过存储器控制器520对非易失性存储器装置150执行恢复操作(步骤517)。

相反,作为检查操作(步骤516)的结果,在恢复选择寄存器rs_reg的值是初始值的情况下,主机控制器510不对非易失性存储器装置150执行恢复操作。

此处,在操作期间(步骤514b),主机控制器510不重置存储器控制器520。因此,响应于先于操作(步骤514b)执行的操作512和操作(步骤516和步骤517)两者而开始的对非易失性存储器装置150的恢复操作不被重置。

因此,在操作512、516、517之后已经执行操作(步骤514b)之后,即使在没有来自主机控制器510的请求时,存储器控制器520继续对非易失性存储装置150执行恢复操作,其中恢复操作在操作(步骤516)中已经开始。

上述恢复选择寄存器rs_reg包括具有至少一位的信息。例如,恢复选择寄存器rs_reg的初始值可以是‘0’,而其特定值可以是‘1’。当然,这仅是一个示例,并且具有更大数量的位的信息可以被包括在恢复选择寄存器rs_reg中。

图6是示出根据图5所示实施例的包括存储器系统的数据处理系统的操作的示图。

图7是示出图6所示的数据处理系统的操作的流程图的示图。

参照图6和图7描述根据实施例的存储器系统110在参照图5描述的主机102的启动操作期间的操作方法。

参照图7,如参照图5所述的,在主机102的启动操作中,在通电操作(步骤s10)之后执行第一启动操作1st_booting(步骤s20),并且此后(在步骤s30处)重置存储器系统110。在已经(在步骤s30处)重置存储器系统110之后,执行第二启动操作2nd_booting(步骤s40),并且此后(在步骤s50处)重置存储器系统110。在已经(在步骤s50处)重置存储器系统110之后,(在步骤s60处)执行内核启动操作。

详细地,下面参照图6和图7描述在主机102的启动操作期间的第一启动操作1st_booting(步骤s20)。

在通电操作(步骤s10)之后,可以执行检查在主机102和存储器系统110之间是否可以传输信号的操作(诸如linkstartup,nopout,nopin)。

随后,可以执行检查是否可以从包括在存储器系统110中的非易失性存储器装置150读取数据的操作(诸如read描述符、装置描述符)。

此后,可以执行从非易失性存储器装置150的启动加载器区域读取测试数据并检查是否正常访问和读取测试数据的操作(诸如testunitready)。

此后,可以执行从非易失性存储器装置150的启动加载器区域读取启动加载器编程数据,即,设置的第一数据的操作(诸如scsiread)。

如果通过上述过程完成了第一启动操作1st_booting,则可以(如由“hwreset或endpointreset”所示,在步骤s30处)重置存储器系统110。如果完成存储器系统110的重置hwreset或endpointreset(步骤s30),则可以执行第二启动操作2nd_booting(步骤s40)。

详细描述第二启动操作2nd_booting(步骤s40)。在存储器系统110的重置(诸如hwreset或endpointreset,步骤s30)之后,可以执行检查在主机102和存储器系统110之间是否可以传输信号的操作(诸如linkstartup,nopout,nopin)。

随后,可以执行检查是否可以从包括在存储器系统110中的非易失性存储器装置150读取数据的操作(诸如read描述符、装置描述符)。

此后,可以执行从非易失性存储器装置150的正常区域读取测试数据并检查是否访问和读取测试数据的操作(诸如testunitready)。

随后,可以执行从非易失性存储器装置150的正常区域读取待在主机102中使用的操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})。

如果通过上述过程正常完成了第二启动操作2nd_booting(步骤s40),则可以(如由“hwreset或endpointreset”所示,在步骤s50处)重置存储器系统110。如果完成存储器系统110的重置hwreset或endpointreset(步骤s50),则可以执行内核启动操作kernelbooting(步骤s60)。

总之,当执行断电操作之后的通电操作(步骤s10)时,主机102执行第一启动操作1st_booting(步骤s20)。在完成了第一启动操作1st_booting(步骤s20)之后,主机102(在步骤s30处)重置存储器系统110。随后,主机102执行第二启动操作2nd_booting(步骤s40)。在完成了第二启动操作2nd_booting已经完成(步骤s40)之后,主机102(在步骤s50处)再次重置存储器系统110。此后,主机102(在步骤s60处)执行内核启动操作。此处,如附图所示,将理解的是,以类似的方式执行主机102的第一启动操作1st_booting(步骤s20)和第二启动操作2nd_booting(步骤s40),其中不同之处在于待被读取的数据的类型和待从其中读取数据的区域。

此处,在发生突然断电(spo)之后执行而不是在正常断电操作之后执行通电操作的情况下,存储器系统110应当对存储器系统110中的非易失性存储器装置150执行恢复操作。换言之,存储器系统110应当检查是否已经发生spo,并且如果确定已经发生spo,则对非易失性存储器装置150执行恢复操作。

如上所述,将理解的是,主机102独立地并顺序地执行第一启动操作1st_booting(步骤s20)和第二启动操作2nd_booting(步骤s40),并且在第一启动操作1st_booting(步骤s20)和第二启动操作2nd_booting(步骤s40)之间(在步骤s30处)重置存储器系统110。

此处,在执行主机102的第一启动操作1st_booting(步骤s20)的时间期间,存储器系统110不应当执行恢复操作。这是因为从非易失性存储器装置150的启动加载器区域读取数据的操作(scsiread)被包括在第一启动操作1st_booting中(步骤s20)中。即,对非易失性存储器装置150的恢复操作可能影响从启动加载器区域读取数据的操作(scsiread)。因此,应当在主机102执行第二启动操作2nd_booting(步骤s40)的同时执行存储器系统110的恢复操作。换言之,在由主机102执行的第二启动操作2nd_booting(步骤s40)期间,存储器系统110检查是否已经发生spo,并且根据检查的结果对非易失性存储器装置150执行恢复操作。

然而,在传统的存储器系统中,存储器系统不自行检查主机是执行诸如1st_booting的第一启动操作还是执行诸如2nd_booting的第二启动操作。换言之,如附图所示,在重置存储器系统的开始点sline处,无论重置是由通电操作引起还是在第一启动操作和第二启动操作之间执行的诸如hwreset或endpointreset的重置,存储器系统将两种重置识别为相同的重置操作,使得在主机和存储器系统之间执行的第一启动操作和第二启动操作的详细操作从开始时间sline至公共时间cline彼此基本类似。因此,在传统的存储器系统中,不可能确定或识别主机正在执行第一启动操作还是正在执行第二启动操作。

因此,在传统技术中,响应于从主机输入的针对在第二启动操作期间用于从非易失性存储器装置的正常区域读取操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})的请求,存储器系统检查是否已经发生spo,并根据检查结果对非易失性存储器装置执行恢复操作(600)。然而,在存储器系统以上述传统方式执行恢复操作的情况下(600),由于没有执行恢复操作所需的足够的时间,因此恢复操作可能无法完成。

另一方面,根据参照图5描述的实施例,存储器系统110和包括存储器系统110的数据处理系统100克服了传统存储器系统的上述问题。

详细地,如参照图5所述,根据实施例的存储器系统110包括易失性恢复选择寄存器rs_reg。

此外,存储器系统110在重置操作之后无条件地检查恢复选择寄存器rs_reg的值,并选择是否对非易失性存储器装置150执行恢复操作(步骤610、步骤630、步骤641、步骤642)。换言之,存储器系统110无条件地检查恢复选择寄存器rs_reg的值,而不管响应于来自主机102的请求执行通电重置操作和重置操作中的哪一个。作为检查的结果,如果恢复选择寄存器rs_reg具有初始值,则不对非易失性存储器装置150执行恢复操作。作为检查的结果,如果恢复选择寄存器rs_reg具有特定值,则对非易失性存储器装置150执行恢复操作。

存储器系统110可以使用存储器系统110中的恢复选择寄存器rs_reg的值来选择或确定是否对非易失性存储器装置150执行恢复操作。这是能够实现的,因为恢复选择寄存器rs_reg如下建立。

首先,仅当执行断电操作之后的通电操作时,主机102执行第一启动操作1st_booting(步骤s20)。

因此,在主机102执行第一启动操作1st_booting(步骤s20)的时间段期间,具有易失性特性的恢复选择寄存器rs_reg被无条件地设置为初始值。

因此,当主机102执行第一启动操作1st_booting时(步骤s20),存储器系统110不对非易失性存储器装置150执行恢复操作。

此后,当主机102在已经完成第一启动操作1st_booting(步骤s20)之后将重置请求传输到存储器系统110时,存储器系统110检查是否需要对非易失性存储器装置150执行恢复操作,并根据检查的结果将恢复选择寄存器rs_reg的值设置为特定值(步骤620)。当主机102在已经(在步骤s30)重置了存储器系统110之后执行第二启动操作2nd_booting(步骤s40)的同时,需要对非易失性存储器装置150执行恢复操作时,恢复选择寄存器rs_reg可以具有特定值(步骤630、步骤641或步骤642)。

因此,当主机102执行第二启动操作2nd_booting(步骤s40)时,包括在存储器系统110中的恢复选择寄存器rs_reg可以选择性地具有初始值或特定值。

因此,当主机102执行第二启动操作2nd_booting(步骤s40)时,存储器系统110根据对恢复选择寄存器rs_reg的值的检查结果,选择或确定是否对非易失性存储器装置150执行恢复操作(步骤630、步骤641或步骤642)。

通过恢复选择寄存器rs_reg,根据实施例的存储器系统110可以检查主机102执行第二启动操作2nd_booting(步骤s40)的时间段。即使当在第二启动操作2nd_booting(步骤s40)的时间段期间没有来自主机102的独立触发或单独触发时,换言之,即使在执行对从非易失性存储器装置150的正常区域读取操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})的请求操作之前,存储器系统110可以自行对非易失性存储器装置150执行恢复操作(步骤640、步骤641、步骤642)。

更详细地,当从主机102接收到针对重置操作的请求时,存储器系统110的控制器130中的主机控制器510确定或选择是否通过存储器控制器520对非易失性存储器装置150执行恢复操作(步骤610、步骤630、步骤641、步骤642)。换言之,主机控制器510总是无条件地检查恢复选择寄存器rs_reg的值,而不管响应于来自主机102的请求执行通电重置操作和重置操作中的哪一个。作为检查的结果,当恢复选择寄存器rs_reg具有初始值时,不对非易失性存储器装置150执行恢复操作。作为检查的结果,当恢复选择寄存器rs_reg具有特定值时,通过存储器控制器520对非易失性存储器装置150执行恢复操作。

主机控制器510可以使用恢复选择寄存器rs_reg的值来选择是否对非易失性存储器装置150执行恢复操作的原因是因为恢复选择寄存器rs_reg被如下设置。

首先,仅当执行断电操作之后的通电操作(步骤10)时,主机102执行第一启动操作1st_booting(步骤s20)。

因此,在主机102执行第一启动操作1st_booting(步骤s20)的时间期间,具有易失性特性的恢复选择寄存器rs_reg被初始化,即,被设置为初始值。

因此,在主机102执行第一启动操作1st_booting(步骤s20)的时间期间,主机控制器510不请求针对非易失性存储器装置150的恢复操作(步骤610)。

此后,当主机102在已经完成第一启动操作1st_booting(步骤s20)之后将重置请求传输到主机控制器510时,主机控制器510检查是否需要通过存储器控制器520对非易失性存储器装置150执行恢复操作,并且然后根据检查的结果将恢复选择寄存器rs_reg的值设置为特定值(步骤620)。当在主机102在已经重置存储器系统110之后执行第二第二启动操作2nd_booting(步骤s40)时需要对非易失性存储器装置150执行恢复操作时,恢复选择寄存器rs_reg可以具有特定值(步骤630、步骤641、步骤642)。

因此,在主机102执行第二启动操作2nd_booting(步骤s40)的时间期间,主机控制器510中的恢复选择寄存器rs_reg可以选择性地具有初始值或特定值。

因此,在第二启动操作2nd_booting(步骤s40)期间,主机控制器510根据对恢复选择寄存器rs_reg的值的检查结果,选择或确定是否对非易失性存储器装置150执行恢复操作(步骤630、步骤641、步骤642)。

如参照图5所述的,可以存在两种方法来重置存储器系统110。两种重置的方法包括:第一种方法514a:主机控制器510直接重置存储器控制器520和非易失性存储器装置150;以及第二中方法514b:主机控制器510通过存储器控制器520仅重置非易失性存储器装置150。另外,根据重置存储器系统110的方法,由主机控制器510对非易失性存储器装置150的恢复操作可以改变。

首先,在第一种重置方法514a的情况下,在主机102的第一启动操作1st_booting(步骤s20)之后执行的重置操作(步骤s30)期间,重置存储器控制器520和非易失性存储器装置150两者。

因此,当主机102在已经重置存储器控制器520和非易失性存储器装置150两者之后开始执行第二启动操作2nd_booting(步骤s30)时,即使没有来自主机102的独立触发,主机控制器510也自行检查恢复选择寄存器rs_reg的值。作为检查的结果,当恢复选择寄存器rs_reg具有特定值时,主机控制器510通过存储器控制器520对非易失性存储器装置执行恢复操作(步骤630)。作为检查的结果,当恢复选择寄存器rs_reg具有初始值时,主机控制器510不对非易失性存储器装置150执行恢复操作。

在第二种重置方法514b的情况下,在主机102的第一启动操作1st_booting(步骤s20)之后执行的重置操作(步骤s30)期间,仅重置非易失性存储器装置150,而不重置存储器控制器520。

因此,在执行对应于第二种方法514b的重置操作(步骤s30)之前的时间处,即,在响应于来自主机102的重置请求而执行检查非易失性存储器装置150中是否需要恢复操作的操作620的时间处,当作为操作620的结果恢复选择寄存器rs_reg被设置为特定值时,即使没有来自主机102的独立触发,主机控制器510也开始通过存储器控制器520对非易失性存储器装置150执行恢复操作(步骤641)。在执行对应于第二种方法514b的重置操作(步骤s30)之前的时间处,当作为操作620的结果恢复选择寄存器rs_reg被设置为初始值时,主机控制器510不开始对非易失性存储器装置150的恢复操作。

在执行对应于第二种方法514b的重置操作(步骤s30)之前,在存储器控制器520通过操作641已经开始对非易失性存储器装置150的恢复操作之后,,即使当执行这种重置操作(步骤s30)时,也不重置存储器控制器520。因此,在已经执行对应于第二种方法514b的重置操作(步骤s30)之后,存储器控制器520继续对非易失性存储器装置150执行恢复操作,其中对非易失性存储器装置150的恢复操作通过操作641已经开始(步骤642)。

总之,根据实施例的主机控制器510可以通过恢复选择寄存器rs_reg检查主机102执行第二启动操作2nd_booting(步骤s40)的时间。由此,即使当在第二启动操作2nd_booting(步骤s40)期间没有来自主机102的单独触发或独立触发时,换言之,即使在请求从非易失性存储器装置150的正常区域读取操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})之前,主机控制器510可以自行通过存储器系统110对非易失性存储器装置150执行恢复操作(步骤640、步骤641、步骤642)。

图8是示出根据图5所示的实施例的包括存储器系统的数据处理系统的效果的示图。

参照图8,详细示出参照图6和图7所述的主机102的第二启动操作2nd_booting(步骤s40)。

详细地,执行检查在主机102和存储器系统110之间是否可以传输信号的操作(诸如linkstartup,nopout,nopin)。作为示例而非限制,可以将基于最小时间(min-time)的大约30ms分配为操作(诸如linkstartup、nopout、nopin)所需的主机102的所需时间。换言之,在从操作(诸如linkstartup、nopout、nopin)开始经过30ms之后没有来自存储器系统110的响应的情况下,主机102可以确定操作(诸如linkstartup、nopout、nopin)已经失败。

随后,执行检查是否可以从存储器系统110中的非易失性存储器装置150读取数据的操作(诸如read描述符、装置描述符)。作为示例而非限制,操作(诸如read描述符、装置描述符)所需的主机102的所需时间可以基于最小时间(min-time)约为100ms。换言之,在从操作(诸如read描述符、装置描述符)开始经过100ms之后没有来自存储器系统110的响应的情况下,主机102可以确定操作(诸如read描述符、装置描述符)已经失败。

此后,执行从非易失性存储器装置150的正常区域读取测试数据并检查测试数据是否被读取的操作(诸如testunitready)。作为示例而非限制,操作(诸如testunitready)所需的主机102的所需时间可以基于最小时间(min-time)为100ms。换言之,在从操作(诸如testunitready)开始经过100ms之后没有来自存储器系统110的响应的情况下,主机102可以确定操作(诸如testunitready)已经失败。

随后,执行从非易失性存储器装置150的正常区域读取待在主机102中使用的操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})。作为示例而非限制,操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})所需的主机102的所需时间可以基于最小时间(min-time)为1600ms(=600ms+1000ms)。换言之,在从操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})开始经过1600ms之后没有来自存储器系统110的响应的情况下,主机102可以确定操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})已经失败。

如参照图5至图7所述的,根据实施例的存储器系统110可以从主机102执行第二启动操作2nd_booting的时间段的开始时间对非易失性存储器装置150执行恢复操作(步骤s40)。例如,基于主机102的最小所需时间(min-time),主机102可以在非易失性存储器装置150的恢复操作已经在存储器系统110中开始之后等待1830ms。

另一方面,根据传统技术的存储器系统仅在响应于主机的请求执行从非易失性存储器装置的正常区域读取待在主机中使用的操作系统的基本数据的操作(诸如queryrequest{setflagfdeviceinit,readflagfdeviceinit})时可以执行非易失性存储器装置的恢复操作。例如,基于主机的最小所需时间(min-time),主机可以在非易失性存储器装置的恢复操作已经在存储器系统中开始之后仅等待1600ms。

即,如图8所示,与传统技术相比,在根据实施例的存储器系统110中,为执行非易失性存储器装置150的恢复操作而分配的时间可以增加在主机102已经开始第二启动操作2nd_booting(步骤s40)之后执行操作(诸如linkstartup、nopout、nopin、read描述符、装置描述符、testunitready)所需的时间,例如,增加230ms。

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

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

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

存储器控制器6120可以连接到由非易失性存储器实施的存储器装置6130。存储器控制器6120可以访问存储器装置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-mram)。存储器装置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。图10所示的数据处理系统6200可以用作诸如存储卡(cf、sd、微型sd等)或usb装置的存储介质,如参照图1描述的。存储器装置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可以用作工作存储器、缓冲存储器或高速缓冲存储器。当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交换数据。存储器控制器6220可以通过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电路6322可以在读取操作期间基于ecc值对从存储器装置6340读取的数据执行错误校正操作。ecc电路6322可以在失败的数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。

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

此外,应用了图1和图5的存储器系统110的多个ssd6300可以被提供以实施例如raid(独立磁盘的冗余阵列)系统的数据处理系统。raid系统可以包括多个ssd6300和用于控制多个ssd6300的raid控制器。当raid控制器响应于从主机6310提供的写入命令执行编程操作时,raid控制器可以根据多个raid级别,即,从ssd6300中的主机6310提供的写入命令的raid级别信息来选择一个或多个存储器系统或ssd6300。raid控制器可以将对应于写入命令的数据输出到选择的ssd6300。此外,当raid控制器响应于从主机6310提供的读取命令执行读取命令时,raid控制器可以根据多个raid级别,即,从ssd6300中的主机6310提供的读取命令的raid级别信息来选择一个或多个存储器系统或ssd6300。raid控制器可以将从选择的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接收的数据的数据。存储模块6950可以将存储的数据传输到应用处理器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处理的数据。用户接口6910可以支持从触摸面板接收数据的功能。

在各个实施例中,能够管理恢复操作的时间的寄存器被包括和管理在存储器系统中,使得,即使在主机的启动操作期间,存储器系统可以自己确定执行相关联的非易失性存储器装置的恢复操作的时间。

因此,优点在于可以充分确保存储系统执行非易失性存储器装置的恢复操作所需的时间。

虽然为了清楚和理解的目的已经详细地描述前述实施例,但本发明不限于提供的细节。如本领域技术人员根据前述公开内容将理解的,存在实施本发明的许多可选方式。因此,公开的实施例是说明性的而不是限制性的。

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