首页> 中国专利> 能够增加其生命周期的存储设备及其操作方法

能够增加其生命周期的存储设备及其操作方法

摘要

提供了一种能够增加其生命周期的存储设备及其操作方法。存储设备包括:存储数据的非易失性存储器件和控制非易失性存储器件的控制器。控制器可以根据预定条件、诸如来自主机的请求或者超过预定义生命周期,来修改非易失性存储器件的写超时值。

著录项

  • 公开/公告号CN103513937A

    专利类型发明专利

  • 公开/公告日2014-01-15

    原文格式PDF

  • 申请/专利权人 三星电子株式会社;

    申请/专利号CN201310263259.0

  • 发明设计人 申升用;全永铉;赵熙昌;

    申请日2013-06-27

  • 分类号G06F3/06;

  • 代理机构北京市柳沈律师事务所;

  • 代理人张泓

  • 地址 韩国京畿道

  • 入库时间 2024-02-19 21:53:09

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-01

    授权

    授权

  • 2015-07-29

    实质审查的生效 IPC(主分类):G06F3/06 申请日:20130627

    实质审查的生效

  • 2014-01-15

    公开

    公开

说明书

技术领域

实施例涉及一种存储设备和及其操作方法,并且更具体地,涉及一种能 够增加其生命周期的存储设备及其操作方法。

背景技术

近年来,存储设备正以各种方式被使用。例如,存储设备可以被用作存 储卡,诸如SD(安全数字)卡、MMC(多媒体卡)、xD(极端数字)卡、 CF(小型快闪)卡、SM(智能媒体)卡、记忆棒等。此外,存储设备也可 以被用作SSD(固态驱动器)。

存储设备具有作为预定义值或能够被后面定义的值的超时值。为了写数 据,存储设备应该在超时值的范围之内执行写操作。换言之,如果写操作花 费比超时值更长的时间来执行,则正在执行的写操作可能被当作失败或错 误。

发明内容

根据一个或多个实施例,提供了一种存储设备,包括:非易失性存储器 件,存储数据;及控制器,控制非易失性存储器件,其中控制器从主机接收 对于写超时值修改的请求,并且修改非易失性存储器件的写超时值。

当使用存储设备超过预定义生命周期时,控制器可以修改写超时值。

在从主机接收对于写超时值修改的请求之前,控制器可以向主机通知对 于写超时值修改的需要。

通知对于写超时值修改的需要可以包括控制器根据先前命令向主机发 送响应信号,响应信号包括指示例外事件的发生的第一信息。

在从主机接收对于写超时值修改的请求之前,控制器可以向主机发送例 外事件状态数据,该例外事件状态数据指示存储设备已经发生了多个所有可 能的例外事件中的哪个。

例外事件状态数据可以包括指示是否修改写超时值的第二信息。

控制器可以存储指示是否支持写超时值修改的写超时值修改支持数据。

控制器可以存储指示是否使能写超时值修改的例外事件控制数据。

控制器可以使用R2W因子来修改写超时值。

控制器可以通过校正繁忙超时时段来修改写超时值。

根据一个或多个实施例,提供了一种存储设备,包括:非易失性存储器 件,存储数据;及控制器,控制非易失性存储器件,其中当使用非易失性存 储器件超过预定义生命周期时,控制器修改非易失性存储器件的写超时值。

控制器可以向主机通知对于写超时值修改的需要,从主机接收对于写超 时值修改的请求,并且修改非易失性存储器件的写超时值。

控制器可以根据先前命令向主机发送响应信号,响应信号包括指示例外 事件的发生的第一信息。

根据一个或多个实施例,提供了一种存储设备,包括:主机接口,从主 机接收对于写超时值修改的请求;及处理器,根据对于写超时值修改的请求 来修改非易失性存储器件的写超时值。

在从主机接收对于写超时值修改的请求之前,控制器可以向主机通知对 于写超时值修改的需要。

主机接口可以根据先前命令向主机发送响应信号,响应信号包括指示例 外事件的发生的第一信息。

存储设备可以包括存储单元,存储指示存储设备已经发生了多个所有可 能的例外事件中的哪个的例外事件状态数据,其中例外事件状态数据包括指 示是否修改写超时值的第二信息,其中在从主机接收对于写超时值修改的请 求之前,主机接口接收对于例外事件状态数据的请求。

存储设备可以包括存储单元,存储指示是否支持写超时值修改的写超时 值修改支持数据。

存储设备可以包括存储单元,存储指示是否使能写超时值修改的例外事 件控制数据。

根据一个或多个实施例,提供了一种控制包括非易失性存储器件的存储 设备的主机设备,该主机设备包括:主机处理器,确定是否修改非易失性存 储器件的写超时值;及接口模块,连接至主机处理器并根据确定结果做出对 写超时值修改的请求。

接口模块可以做出对于例外事件状态数据的请求,该例外事件状态数据 指示存储设备已经发生了多个所有可能的例外事件中的哪个。

接口模块可以向存储设备做出请求,以检查指示是否支持写超时值修改 功能的写超时值修改支持数据。

接口模块可以向存储设备做出请求,用于设置指示是否使能写超时值修 改的例外事件控制数据。

根据一个或多个实施例,提供了一种存储设备的操作方法,包括:从主 机接收对于写超时值修改的请求;根据对于写超时值修改的请求,修改非易 失性存储器件的写超时值;以及提供指示写超时值被修改的设置响应信号。

在从主机接收对于写超时值修改的请求之前,进一步包括:向主机通知 对于写超时值修改的需要。

根据一个或多个实施例,提供了一种存储设备,包括:非易失性存储器 件,存储数据;及控制器,控制非易失性存储器件,其中控制器修改非易失 性存储器件的写超时值,并向主机发送修改已经发生的通知。

控制器可以通过增加非易失性存储器件的初始定义的写超时值来修改 非易失性存储器件的写超时值。

控制器可以通过将读存取时间乘以因子来修改非易失性存储器件的写 超时值。

控制器可以通过校正繁忙超时时段来修改非易失性存储器件的写超时 值。

控制器可以向主机发送例外事件状态数据,该例外事件状态数据指示存 储设备已经发生了多个所有可能的例外事件中的哪个。

附图说明

通过参照附图详细描述示范性实施例,特征对于本领域普通技术人员将 变得清楚,在附图中:

图1示出根据实施例的系统框图;

图2示出在图1中所示的控制器的例子的框图;

图3示出在图1中所示的主机的例子的框图;

图4示出根据实施例的用于解释存储设备系统的操作方法的流程图;

图5示出写超时值修改支持数据的例子;

图6示出卡命令类的例子;

图7示出例外事件控制数据的例子;

图8示出存储设备的响应信号的例子;

图9示出例外事件状态数据的例子;

图10示出R2W_FACTOR;

图11示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图;

图12示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图;以及

图13示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图。

具体实施方式

现在将参照附图在下文中更全面地描述例子实施例;但是,它们可以用 不同的形式实现而不应该被解释为限于这里阐述的实施例。相反地,提供这 些实施例使得此公开将是彻底和完整的,并且将向本领域技术人员充分地表 达示范性实现。

在附图中,为了清楚地说明,可以放大层和区域的尺寸。还将理解,当 层或元件被称为在另一层或衬底“之上”时,它可以直接在另一层或衬底“之 上”,或者还可以存在插入层。此外,将理解,当一层被称为在另一层“之 下”时,它可以直接在其“之下”,并且也可以存在一个或多个插入层。此 外,还应该理解,当一层被称为“介于两层之间”时,它可以是该两层之间 的唯一层,或者还可以存在一个或多个中间层。遍及附图,相似的参考数字 指代相似的元件。

为了便于描述,这里可以使用诸如“在...之下”、“在...下方”、“下”、 “上面”、“上”等的空间相对术语来描述如所述图中所示的一个元件或特征 与另一(些)元件或特征的关系。应该理解,空间相对术语旨在涵盖除了图 中描绘的方向之外的、使用或操作中的设备的不同方向。例如,如果翻转图 中的设备,那么描述为“在其它元件或特征下方”或“在其它元件或特征之 下”的元件将朝向“在其它元件或特征上方”。因此,示范性术语“在...下 方”可以涵盖上面和下面两个方位。设备可以有其它朝向(旋转90度或在 其它方位),并且这里使用的空间相对描述符进行相应地解释。

在描述实施例的上下文(尤其是在下面权利要求的上下文)中使用术语 “一”和“一个”和“该”及类似指示物要被认为是涵盖了单数和复数两者, 除非在此指示除外或者同上下文明显矛盾。要将术语“包括”、“具有”、“包 含”和“含有”认为是开放式术语(即,意思是“包括,但不限于”)除非 另作说明。

除非另外定义,否则这里使用的所有技术和科学术语具有本领域的一位 普通技术人员所通常理解的一样的意思。注意到,任何和所有例子的使用或 者在此提供的示范性术语旨在仅仅更好地阐明实施例,而不是限制,除非另 作说明。此外,除非另作定义,否则所有在通用词典中定义的术语可以不被 过度解释。

将参照在其中示出优选实施例的透视图、剖视图和/或平面图来描述实施 例。从而,根据制造技术和/或容差可以修改示范性视图的概要(profile)。 即,实施例不是旨在限制范围,而是涵盖可能由于制造工艺中的变化而导致 的所有改变和修改。从而,以示意的形式示出附图中所示区域,并且仅仅通 过说明而不是作为限制呈现区域的形状。

图1示出根据实施例的系统框图。图2示出在图1中所示的控制器的例 子的框图。图3示出在图1中所示的主机的例子的框图。

参照图1,系统1包括存储设备10和主机20。存储设备10可以包括存 储数据的非易失性存储器件200和控制非易失性存储器件200的控制器100。

控制器100连接至主机20和非易失性存储器件200。响应于来自主机 20的请求,控制器100被配置为存取非易失性存储器件200。例如,控制器 100被配置为控制非易失性存储器件200的读、写、擦除或后台操作。控制 器100被配置为提供非易失性存储器件200与主机20之间的接口连接。控 制器100被配置为驱动用于控制非易失性存储器件200的固件。

参照图2,在示范性实施例中,控制器100可以包括处理器120、主机 接口(I/F)110、存储单元130和存储接口(I/F)140。

主机I/F110可以包括用于执行主机20与控制器100之间的数据交换的 协议。在示范性实施例中,控制器100可以被配置为使用一个或更多个数据 协议与外部主机通信,诸如通用串行总线(USB)、多媒体卡(MMC)、外 围组件互联(PCI)、外围组件互联Express(PCI-E)、高级技术附件(ATA)、 串行ATA、并行ATA、小计算机系统接口(SCSI)、高级小磁盘接口(ESDI)、 集成驱动器电子电路(IDE)等等。

存储器I/F140典型地可以实现用于与非易失性存储器件200交互的协 议。例如,存储器I/F140可以包括NAND接口或NOR接口。

存储单元130可以被用作以下中的至少一个:处理器120的工作存储器、 非易失性存储器件200与主机20之间的高速缓冲存储器以及非易失性存储 器件200与主机20之间的缓冲存储器。存储单元130可以存储诸如写超时 值修改支持数据WR_TIME_MO_SP、例外事件控制数据 EXCEPTION_EVENTS_CTRL、例外事件状态数据 EXCEPTION_EVENTS_STATUS等等的数据。

处理器120控制控制器100的整体操作。虽然未示出,但是控制器100 可以进一步包括ECC块。ECC块被配置为使用纠错码(ECC)来检测并纠 正从非易失性存储器件200中读取的数据的错误。

参照图3,在示范性实施例中,主机20可以包括接口模块210和主机处 理器220。此外,虽然未示出,但是主机20可以进一步包括RAM、ROM和 /或其它元件。

接口模块210用于与存储设备10的主机I/F110通信。接口模块210可 以包括上述协议。

主机处理器220控制主机20的整体操作。主机处理器220可以确定是 否修改非易失性存储器件200的写超时值WR_TIME,这将在稍后进行描述。 此外,主机处理器220可以通过接口模块210做出对于指示存储设备10已 经发生了多个所有可能的例外事件中的哪个例外事件状态数据 EXCEPTION_EVENTS_STATUS的请求。此外,主机处理器220可以通过接 口模块210向存储设备10做出请求,以检查指示是否支持写超时值修改的 写超时值修改支持数据WR_TIME_MO_SP。主机处理器220可以通过接口 模块210向存储设备10做出请求,以设置指示写超时值修改是否被使能的 例外事件控制数据EXCEPTION_EVENTS_CTRL。

参照图1至图3,在根据一些实施例的系统1中,控制器100可以修改 非易失性存储器件200的写超时值WR_TIME。具体地,控制器100可以从 主机20接收对于写超时值修改的请求,并且可以因此而修改写超时值 WR_TIME。

这里,写超时值WR_TIME可以是预定义值或者是可以后面定义的值。 写超时值WR_TIME可以被定义为例如250msec。可以通过时间或速度来定 义写超时值WR_TIME。为了写数据,存储设备10应当在超时值WR_TIME 的范围之内执行写操作。也就是说,如果执行写操作超过该超时值,则正在 执行的写操作可以被当作失败或错误。

控制器100可以用各种方式来修改写超时值WR_TIME。例如,控制器 100可以直接增加(例如,加倍)初始定义的写超时值WR_TIME,例如可 以将250msec增加至500msec。替换地,控制器100可以通过校正 R2W_FACTOR来修改写超时值WR_TIME。R2W_FACTOR是指示写超时值 WR_TIME是读存取时间的多少倍的值。也就是说,可以通过增加 R2W_FACTOR来增加写超时值WR_TIME。例如,可以在存储设备10是 eMMC卡或SD卡的情况下使用R2W_FACTOR校正。

替换地,控制器100可以通过校正繁忙超时时段来修改写超时值 WR_TIME。繁忙超时时段意指用于校正在存储设备10中写入的数据的最大 繁忙时间。例如,可以在存储设备10是UFS卡的情况下使用繁忙超时时段 校正。

使用存储设备10的时间越长,需要的用于写数据的时间越多。当长时 间使用存储设备10时,写时间可能越频繁地超过超时值WR_TIME。在不 改变超时值WR_TIME的情况下,存储设备10不再能够有效地执行写操作。

在根据一些实施例的系统1中,当使用存储设备10超过预定义生命周 期时,控制器100可以修改写超时值WR_TIME。因此,如果写超时值 WR_TIME被增加,则可以在写超时值WR_TIME的增加的范围之内执行写 操作。因此,可以显著地减少被当作失败或错误的写操作的比率。结果,可 以通过校正写超时值WR_TIME来延长存储设备10的生命周期。

如上所述,为了修改写超时值WR_TIME,控制器100可以预先向主机 20通知需要写超时值修改。

此外,控制器100可以向主机20通知例外事件的发生。被通知的主机 20可以做出对于例外事件的细节的请求。也就是说,主机20可以做出对于 例外事件状态数据(图9的EXCEPTION_EVENTS_STATUS)的请求。例外 事件状态数据EXCEPTION_EVENTS_STATUS可以指示已经发生了多个所 有可能的例外事件中的哪个。也就是说,例外事件状态数据 EXCEPTION_EVENTS_STATUS可以包括指示是否修改写超时值WR_TIME 的信息。

当存储设备10和主机20彼此连接时,主机20可以首先检查存储设备 10是否支持写超时值修改。控制器100可以存储指示是否支持写超时值修改 的写超时值修改支持数据(图5的WR_TIME_MO_SP)。

如果存储设备10支持写超时值修改,则主机20可以确定是否使能写超 时值修改。控制器100可以存储指示是否使能写超时值修改的例外事件控制 数据(图7的EXCEPTION_EVENTS_CTRL)。例外事件状态数据 EXCEPTION_EVENTS_STATUS可以指示多个所有可能的例外事件中的哪 个已经被使能。即,例外事件控制数据EXCEPTION_EVENTS_CTRL可以 包括指示是否使能写超时值修改的信息。

稍后将参照图4至图10来描述修改写超时值WR_TIME的方法。

参照图1,可以将控制器100和非易失性存储器件200共同集成在单个 集成电路设备中。在一个实施例中,将控制器100和非易失性存储器件200 集成在存储卡内。例如,可以将控制器100和非易失性存储器件200集成到 多媒体卡(MMC、RS-MMC、微MMC)、SD卡(SD、miniSD、微SD)、 通用闪存设备(UFS)、个人计算机存储卡国际协会(PCMCIA)、小型闪存 卡(CF)、智能媒体卡(SM/SMC)、记忆棒等等中。

替换地,可以集成控制器100和非易失性存储器件200以形成固态驱动 器/磁盘(SSD)。SSD包括被配置为在半导体存储器中存储数据的存储设备。

存储系统1可以包括但不限于,计算机、超移动PC(UMPC)、工作站、 网络书、个人数字助理(PDA)、便携式计算机、网络平板、无线电话机、 移动电话机、智能电话机、电子书、便携式多媒体播放器(PMP)、便携式 游戏设备、导航设备、黑盒子、数码相机、3D电视机、数字录音器/播放器、 数字图片/视频录像机/播放器、能够经由无线通信发送和接收信息的设备、 构成家庭网络的各种电子设备之一、构成计算机网络的各种电子设备之一、 构成电信息通信网络的各种电子设备之一、RFID、或者构成计算机系统的各 种电子设备之一。

可以将非易失性存储器件200、存储设备10或存储系统1安装成各种封 装,例如层叠封装(Package on Package,PoP)、球栅阵列(Ball grid array, BGA)、芯片尺寸封装(Chip scale package,CSP)、塑料带引线芯片载体(Plastic  Leaded Chip Carrier,PLCC)、塑料双列直插封装(Plastic Dual In-Line Package, PDIP)、叠片内裸片封装(Die in Waffle Pack)、晶片内裸片形式(Die in Wafer  Form)、板上芯片(Chip On Board,COB)、陶瓷双列直插封装(Ceramic Dual  In-Line Package,CERDIP)、塑料标准四边扁平封装(Plastic Metric Quad Flat  Pack,MQFP)、薄型四边扁平封装(Thin Quad Flat-Pack,TQFP)、小外型集 成电路(Small Outline Integrated Circuit,SOIC)、缩小型小外型封装(Shrink  Small Outline Package,SSOP)、薄型小外型封装(Thin Small Outline Package, TSOP)、薄型四边扁平封装(Thin Quad Flat-Pack,TQFP)、系统级封装(System  In Package,SIP)、多芯片封装(Multi Chip Package,MCP)、晶片级结构封 装(Wafer-level Fabricated Package,WFP)、晶片级处理堆叠封装(Wafer-Level  Processed Stack Package,WSP)等。

图4示出根据实施例的用于解释存储设备系统的操作方法的流程图。图 5示出写超时值修改支持数据的例子。图6示出卡命令类的例子。图7示出 例外事件控制数据的例子。图8示出存储设备的响应信号的例子。图9示出 例外事件状态数据的例子。图10示出R2W_FACTOR。

参照图4,主机20检查存储设备10是否支持写超时值修改(S310)。 也就是说,接口模块210向存储设备10发送命令,并且确定存储设备10是 否支持写超时值修改。

例如,控制器100(具体地,控制器100中的存储单元130)可以存储 指示是否支持写超时值修改的写超时值修改支持数据WR_TIME_MO_SP。 主机20可以检查写超时值修改支持数据WR_TIME_MO_SP。

写超时值修改支持数据WR_TIME_MO_SP可以具有如图5中所示的结 构。也就是说,写超时值修改支持数据WR_TIME_MO_SP可以具有一个字 节的大小。例如,位0可以指示是否支持写超时值修改,并且位1至位7可 以被保留。被设置为1的位0可以意味着支持写超时值修改。主机20(具体 地,接口模块210)做出对于检查写超时值修改支持数据WR_TIME_MO_SP 的请求。

当存储设备10是eMMC卡时,写超时值修改支持数据 WR_TIME_MO_SP可以被存储在例如EXT_CSD区域中。当存储设备10是 UFS卡时,写超时值修改支持数据WR_TIME_MO_SP可以被存储在例如 ATTRIBUTE DESCRIPTOR(属性描述符)区域中。

当存储设备10是SD卡时,可以通过检查写超时值修改支持数据 WR_TIME_MO_SP并搜索在图6中所示的卡命令类(CCC)来确定是否支 持写超时值修改。卡命令类CCC定义所支持的命令、类描述等等。此外, 卡命令类CCC指示每个命令属于哪个类。在示范性实施例中,图6示出 CMD6和CMD60属于CCC10,但是实施例不限于此。例如,假定写超时值 修改命令是CMD60。在SD卡技术规范中,CMD6是用于检查卡命令类CCC 的命令。因此,主机20使用CMD6来检查卡命令类CCC,从而识别写超时 值修改命令,即CMD60。因此,主机20可以识别是否支持写超时值修改。

接下来,主机20使能存储设备10的写超时值修改(S320)。例如,控 制器100(具体地,控制器100中的存储单元130)可以包括例外事件控制 数据EXCEPTION_EVENTS_CTRL。例外事件控制数据 EXCEPTION_EVENTS_CTRL可以指示是否使能写超时值修改。此外,例外 事件控制数据EXCEPTION_EVENTS_CTRL也可以指示使能多个所有可能 的意外事件中的哪些。

例外事件控制数据EXCEPTION_EVENTS_CTRL可以具有如图7中所 示的结构。如其中所示,例外事件控制数据EXCEPTION_EVENTS_CTRL 可以具有2个字节的大小。例外事件控制数据EXCEPTION_EVENTS_CTRL 可以包括多个使能位:位1、位2、位3和位4,并且其它位可以保留。例如, 位1可以是指示是否使能动态容量的DYNCAP_EVENTS_EN。位2可以是 指示是否使能通知系统资源池是否用尽的功能的SYSPOOL_EVENT_EN。 位3可以是指示是否使能通知封装命令是否已经失败的功能的 PACKED_EVENT_EN。位4可以是指示是否使能写超时值修改的 WR_TIME_MO_EN。被设置为1的位4可以意味着写超时值修改被使能。 主机20(具体地,接口模块210)做出对于设置WR_TIME_MO_EN的请求。 也就是说,主机20可以将位4设置为1。

在示范性实施例中,图7示出例外事件控制数据 EXCEPTION_EVENTS_CTRL包括四个使能位,包括 DYNCAP_EVENT_EN、SYSPOOL_EVENT_EN、PACKED_EVENT_EN和 WR_TIME_MO_EN,但是实施例不限于此。例如,例外事件控制数据 EXCEPTION_EVENTS_CTRL可以仅用于WR_TIME_MO_EN。替换地,例 外事件控制数据EXCEPTION_EVENTS_CTRL可以包括仅仅两个使能位(例 如,DYNCAP_EVENT_EN和WR_TIME_MO_EN)。

当存储设备10是eMMC卡时,例外事件控制数据 EEXCEPTION_EVENTS_CTRL可以被存储在例如EXT_CSD区域中。当存 储设备10是UFS卡时,可以使用如在UFS技术规范中定义的、与 EXCEPTION_EVENTS_CTRL基本上相同的bExceptionEventControl。这里, bExceptionEventControl可以被存储在例如ATTRIBUTE DESCRIPTOR区域 中。bExceptionEventControl可以包括指示是否使能写超时值修改的使能位。

接下来,存储设备10向主机20通知修改写超时值WR_TIME的需要。 可以用各种方式来通知修改写超时值WR_TIME的需要。例如,可以通知例 外事件的发生(S340)。

当使用存储设备10超过预定义生命周期时,控制器100可以向主机20 通知修改写超时值WR_TIME的需要。例如,当存储设备10是eMMC卡时, 主机20发送命令,并且控制器100(具体地,主机I/F110)向主机20发送 所接收的命令(即,根据先前命令的响应信号RESPONSE)。

如图8中所示,响应信号RESPONSE可以包括多个位(例如,48位)。 例如,位47是起始位,位46是传输位,位[45:40]指示命令索引,位[39:8] 指示设备状态,位7是循环冗余校验(例如,CRC7)位,并且位0是结束 位。这里,指示设备状态的位[39:8]可以包括指示例外事件的第一信息(例 如,EXCEPTION_EVENT位)。EXCEPTION_EVENT0指示所有可能的例 外事件都还未发生,并且EXCEPTION_EVENT1指示所有可能的例外事件 中的至少一个已经发生了。

当存储设备10是UFS卡时,可以使用如在UFS技术规范中定义的、与 响应信号RESPONSE基本上相同的Response UPIU。这里,Response UPIU 可以包括设备信息字段,并且设备信息字段可以包含指示例外事件已经发生 了的第一信息(例如,EVENT_ALERT位)。EVENT_ALERT0可以指示所 有可能的例外事件都还未发生,并且EVENT_ALERT1可以指示所有可能的 例外事件中的至少一个已经发生了。

接下来,主机20(具体地,接口模块210)向存储设备10做出对于例 外事件状态数据EXCEPTION_EVENTS_STATUS的请求(S350)。接下来, 存储设备10向主机20提供例外事件状态数据 EXCEPTION_EVENTS_STATUS(S360)。

具体地,因为主机20被通知例外事件已经发生了,所以有必要识别多 个所有可能的例外事件中的哪个已经发生了。因此,主机20向存储设备10 做出对于例外事件状态数据EXCEPTION_EVENTS_STATUS的请求。例外 事件状态数据EXCEPTION_EVENTS_STATUS是指示多个所有可能的例外 事件中的哪个已经发生了的数据。因此,主机20检查例外事件状态数据 EXCEPTION_EVENTS_STATUS,并且确定是否需要写超时值修改。例外事 件状态数据EXCEPTION_EVENTS_STATUS可以包括指示是否修改写超时 值WR_TIME的第二信息(例如,WR_TIME_MO_NEEDED位)。

例外事件状态数据EXCEPTION_EVENTS_STATUS可以被存储在例如 控制器100(具体地,控制器100中的存储单元130)中。

当存储设备10是eMMC卡时,例外事件状态数据 EXCEPTION_EVENTS_STATUS可以具有如在图9中所示的结构。即,例外 事件状态数据EXCEPTION_EVENTS_CTRL可以具有2个字节的大小。例 外事件状态数据EXCEPTION_EVENTS_CTRL可以包括多个状态位:位0、 位1、位2、位3和位4,并且其它位可以保留。位0可以是指示是否需要紧 急后台操作的URGENT_BKOPS。位1可以是指示是否需要动态容量的 DYNCAP_NEEDED。位2可以是指示是否使能通知系统资源池是否被用尽 的功能的SYSPOOL_EVENT_EN。位3可以是指示封装命令是否已经失败 的PACKED_FAILURE。位4可以是指示是否需要修改写超时值WR_TIME 的WR_TIME_MO_NEEDED。被设置为1的位4指示需要写超时值修改, 并且被设置为0的位4指示不需要写超时值修改。

在示范性实施例中,图9示出WR_TIME_MO_NEEDED被布置在位4 中,但是实施例不限于此。例如,WR_TIME_MO_NEEDED可以被布置在 位5或位6中。

图9示出例外事件状态数据EXCEPTION_EVENTS_STATUS包括5个 状态位,包含URGENT_BKOPS、DYNCAP_NEEDED、 SYSPOOL_EXHAUSTED、PACKED_FAILURE和 WR_TIME_MO_NEEDED,但是实施例不限于此。例如,例外事件状态数据 EXCEPTION_EVENTS_STATUS可以仅用于WR_TIME_MO_NEEDED。替 换地,例外事件状态数据EXCEPTION_EVENTS_STATUS可以包括仅仅两 个状态位(例如,DYNCAP_NEEDED和WR_TIME_MO_NEEDED)。

当存储设备10是eMMC卡时,例外事件状态数据 EEXCEPTION_EVENTS_STATUS可以被存储在例如EXT_CSD区域中。当 存储设备10是UFS卡时,可以使用如在UFS技术规范中定义的、与 EXCEPTION_EVENTS_STATUS基本上相同的bExceptionEventStatus。这里, bExceptionEventStatus可以被存储在例如ATTRIBUTE DESCRIPTOR区域 中。bExceptionEventStatus可以包括指示是否需要写超时值修改的状态位。

接下来,主机20向存储设备10做出对于修改写超时值WR_TIME的请 求(S370)。可以用各种方式来修改写超时值WR_TIME。

例如,控制器100可以直接增加(例如,加倍)初始定义的写超时值 WR_TIME。例如,控制器100可以直接将该值从250msec增加至500msec。

替换地,控制器100可以通过校正R2W_FACTOR来修改写超时值 WR_TIME。R2W_FACTOR是指示写超时值WR_TIME是读存取时间的多 少倍的值。如图10中所示,R2W_FACTOR可以是例如0、1、2、3、4、5、 6或7。如在图10中可以看出,写超时值WR_TIME的实际倍数是2R2W_factor。 当R2W_FACTOR是0时,写超时值WR_TIME等于读存取时间。当 R2W_FACTOR是1时,写超时值WR_TIME可以是读存取时间的两倍。控 制器100可以通过增加R2W_FACTOR来增加写超时值WR_TIME。例如, 当存储设备10是eMMC卡或SD卡时可以使用R2W_FACTOR校正,但是 实施例不限于此。

替换地,控制器100可以通过校正繁忙超时时段来修改写超时值 WR_TIME。繁忙超时时段指的是用于校正在存储设备10中写入的数据的最 大繁忙时间。例如,可以在存储设备10是UFS卡的情况下使用繁忙超时时 段校正。

接下来,存储设备10向主机20通知写超时值WR_TIME的修改结果 (即,成功/失败)(S380)。也就是说,存储设备10向主机20发送设置响 应信号。响应于来自主机20的请求,存储设备10修改写超时值WR_TIME。

图11示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图。在下面的描述中,将不再重复与在图4中所述的基本相同的内容。

参照图11,主机20检查存储设备10是否支持写超时值WR_TIME的修 改(S310)。接下来,存储设备10向主机通知修改写超时值WR_TIME的需 要。例如,存储设备10可以向主机20通知例外事件的发生(S340)。然后, 主机20向存储设备10做出对于修改写超时值WR_TIME的请求(S370)。 接下来,存储设备10向主机20通知写超时值WR_TIME的修改结果(即, 成功/失败)(S380)。也就是说,存储设备10向主机20发送设置响应信号。

这里,可以省略使能写超时值WR_TIME的修改(图4的S320)。也就 是说,当支持写超时值WR_TIME的修改时,可以通过默认值来使能写超时 值WR_TIME的修改。

此外,也可以省略做出对于例外事件状态数据 EXCEPTION_EVENTS_STATUS(图4的S350)的请求。换言之,当例外事 件发生被识别为对于修改写超时值WR_TIME的需要时,主机20没必要检 查例外事件状态数据EXCEPTION_EVENTS_STATUS。

图12示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图。在下面的描述中,将不再重复与在图4中所述的基本相同的内容。

参照图12,主机20检查存储设备10是否支持写超时值WR_TIME的 修改(S310)。主机20向存储设备10做出对于修改写超时值WR_TIME的 请求(S370)。接下来,存储设备10向主机20通知写超时值WR_TIME的 修改结果(即,成功/失败)(S380)。也就是说,存储设备10向主机20发 送设置响应信号。

这里,即使存储设备10不向主机20通知例外事件EXCEPTION_EVENT 的发生,主机20也可以向存储设备10做出对于修改写超时值WR_TIME的 请求。也就是说,可以省略S340和S350。例如,当写操作被连续地当作失 败或错误多于或等于预定次数时,主机20可以做出对于修改写超时值 WR_TIME的请求。

图13示出根据另一实施例的用于解释存储设备系统的操作方法的流程 图。在下面的描述中,将不再描述与在图4中所述的基本相同的内容。

参照图13,存储设备10向主机20通知需要修改写超时值WR_TIME。 例如,存储设备10可以向主机20通知写超时值WR_TIME需要被修改。例 如,存储设备10可以向主机20通知例外事件已经发生了(S340)。主机20 向存储设备10做出对于例外事件状态数据EXCEPTION_EVENTS_STATUS 的请求(S350)。接下来,存储设备10向主机20提供例外事件状态数据 EXCEPTION_EVENTS_STATUS(S360)。主机20向存储设备10做出对于 修改写超时值WR_TIME的请求(S370)。存储设备10向主机20通知写超 时值WR_TIME的修改结果(即,成功/失败)(S380)。也就是说,存储设 备10向主机20发送设置响应信号。

这里,可以省略主机20检查存储设备10是否支持写超时值WR_TIME 的修改(图4的S310)。也就是说,修改写超时值WR_TIME的能力可以被 设置为默认。

实施例提供了一种在生命周期上有所增加的存储设备、可以增加存储设 备的生命周期的主机设备、可以增加存储设备的生命周期的存储设备的操作 方法以及可以增加存储设备的生命周期的存储设备和主机设备操作方法。

在此已经公开了例子实施例,并且虽然应用了特定的术语,但是它们仅 以一般的和描述性的意义来使用和解释,而不是为了限制的目的。在有些情 况下,如将对于提交本申请的领域中一位普通技术人员显而易见的,结合特 定实施例描述的特征、特性和/或元素可以被单独使用或和结合其它实施例描 述的特征、特性和/或元素来共同使用,除非明确指出并非如此。因此,本领 域技术人员将理解,在不脱离如下面的权利要求中阐述的本发明的精神和范 围的情况下,可以进行各种形式和细节上的改变。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号