操作数据存储装置和主机及移动计算装置的方法
【专利说明】操作数据存储装置和主机及移动计算装置的方法
[0001]相关申请的交叉引用
[0002]本申请要求于2014年10月27日提交的韩国专利申请N0.10-2014-0145651的优先权,该申请的公开内容以引用方式全文并入本文中。
技术领域
[0003]本发明构思的至少一些示例实施例涉及数据存储装置,并且具体涉及能够将关于写入命令的处理时间的信息发送至主机的数据存储装置、用于操作该数据存储装置的方法以及能够基于该信息调整读取等待时间的移动计算装置。
【背景技术】
[0004]与动态随机存取存储器(DRAM)或硬盘驱动器(HDD)不同的是,闪速存储器不能对数据执行原位更新操作。在将程序代码写入NOR闪速存储器之后,在该NOR闪速存储器中几乎不产生更新。然而,由于在NAND闪速存储器中经常产生对数据的更新,因此需要用于更新的擦除操作。
[0005]在NAND闪速存储器中,为了对已写入存储器区域的数据进行更新,需要执行擦除操作以擦除已写入该存储器区域中的数据。擦除操作会占用比写入操作(或编程操作)或读取操作更长的时间,并且经受擦除操作的存储器区域或数据的大小会大于经受写入操作或读取操作的存储器区域或数据的大小。通常,以页面为单位执行写入操作或读取操作,并且以块为单位执行擦除操作,此时,一个块包括了多个页面。
[0006]当针对闪速存储器的第一存储器区域中写入的页面或页面数据发生更新请求时,该闪速存储器不会立即删除该页面,而是在该闪速存储器的第二存储器区域中写入待更新的页面,然后使得第一存储器区域中写入的页面无效并利用映射表来重新映射待更新的页面。
[0007]当闪速存储器中无效的页面数量增加时,能够写入新页面的存储器区域或空闲块变得不足。因此,闪速存储器周期性地对块执行擦除操作。此时,在对相应的块执行擦除操作之前,闪速存储器执行将该相应块中存储的无效页面复制到其他存储器区域的操作。这被称作无用单元收集(garbage collect1n)。
【发明内容】
[0008]本发明构思的至少一个示例实施例的技术目的在于提供一种主机和一种用于操作主机的方法,所述主机能够向数据存储装置发送请求是否执行后台操作的命令以适应性地调整读取等待时间。
[0009]本发明构思的至少一个示例实施例的技术目的在于提供一种数据存储装置和一种用于操作数据存储装置的方法,所述数据存储装置能够向主机发送表示是否执行后台操作的响应,以对请求是否执行后台操作的命令做出应答。数据存储装置包括三维存储器阵列,其中所述三维存储器阵列包括以单片方式形成在一个或多个物理层的存储器单元中的非易失存储器,所述存储器单元具有布置在硅衬底上方的有源区。
[0010]本发明构思的至少一个示例实施例的技术目的在于提供一种移动计算装置和一种用于操作移动计算装置的方法,所述移动计算装置包括主机,所述主机能够向数据存储装置发送请求是否执行后台操作的命令以适应性地调整读取等待时间,并且所述数据存储装置能够向所述主机发送表示是否执行后台操作的响应。
[0011]根据本发明构思的至少一个示例实施例,一种用于操作数据存储装置的方法包括步骤:接收第一命令,所述第一命令包括从主机发送的设置位;响应于所述第一命令,在寄存器中存储所述设置位;从主机接收第一状态查询命令;以及基于所述第一状态查询命令和存储在寄存器中的所述设置位向主机发送响应,所述响应包括所述数据存储装置的状态信息以及与针对所述数据存储装置的写入命令相对应的处理信息。
[0012]所述方法还可以包括步骤:通过所述数据存储装置产生响应,使得所述处理信息包括关于所述数据存储装置中要处理的写入命令的等待时间的信息。
[0013]所述方法还可以包括步骤:通过所述数据存储装置产生响应,使得所述处理信息包括关于所述数据存储装置中要执行的无用单元收集的信息。
[0014]所述方法还可以包括步骤:在执行无用单元收集的同时从主机接收读取命令;响应于所述读取命令,停止无用单元收集;响应于所述读取命令,向主机发送读取到的数据;以及恢复被停止的无用单元收集。
[0015]所述方法还可以包括步骤:响应于在完成无用单元收集之后从主机发送的第二状态查询命令,向主机发送表示完成无用单元收集的响应;以及从主机接收写入命令和写入数据,并且基于所述写入命令在存储器中存储所述写入数据。
[0016]所述方法还可以包括步骤:当在多个步骤中执行无用单元收集并且所述多个步骤具有不同的执行时间时,所述数据存储装置产生响应,使得所述响应包括具有与所述多个步骤中的每一个步骤相对应的各个位的处理信息。
[0017]所述数据存储装置可以是嵌入式多媒体卡(eMMC),所述第一命令可以是包括所述设置位的SWITCH命令(CMD6),所述寄存器可以是EXT_CSD寄存器,存储所述设置位的步骤可以包括在EXT_CSD寄存器的供应商特定的字段中存储所述设置位,并且所述第一状态查询命令为CMD13。
[0018]根据本发明构思的至少一个示例实施例,一种用于操作包括主机和数据存储装置的移动计算装置的方法包括步骤:通过所述主机确定要在所述数据存储装置中执行的读取命令的读取等待时间;根据确定结果,通过所述主机将第一命令发送至所述数据存储装置,所述第一命令包括设置位;响应于所述第一命令,通过所述数据存储装置将所述设置位存储在寄存器中;通过所述主机将第一状态查询命令发送至所述数据存储装置;以及基于所述第一状态查询命令和存储在寄存器中的所述设置位,通过所述数据存储装置将第一响应和第二响应中的一个发送至所述主机。
[0019]所述方法还可以包括步骤:产生所述第一响应,使得所述第一响应包括所述数据存储装置的状态信息;以及产生所述第二响应,使得所述第二响应包括所述数据存储装置的状态信息以及与针对所述数据存储装置的写入命令相对应的处理信息。
[0020]所述方法还可以包括步骤:基于所述第二响应,通过所述主机对要发送至所述数据存储装置的读取命令和写入命令中的至少一个重新进行调度。
[0021]所述方法还可以包括步骤:基于所述第二响应,通过所述主机调整要发送至所述数据存储装置的队列就绪查询命令的发送间隔。
[0022]所述方法还可以包括步骤:产生所述处理信息,使得所述处理信息包括下列信息中的至少一个:关于所述数据存储装置中要处理的下一个写入命令的等待时间的信息,以及用于表示所述数据存储装置中正在执行的后台操作的信息。
[0023]所述后台操作可以包括无用单元收集、损耗均衡和读取回收(read reclaim)操作中的至少一个。
[0024]所述方法还可以包括步骤:在执行无用单元收集的同时通过所述数据存储装置从所述主机接收第一读取命令;响应于所述第一读取命令,通过所述数据存储装置停止无用单元收集;响应于所述第一读取命令,通过所述数据存储装置向所述主机发送读取到的数据;以及通过所述数据存储装置恢复被停止的无用单元收集。
[0025]所述方法还可以包括步骤:响应于第二状态查询命令,通过所述数据存储装置向所述主机发送表示完成无用单元收集的第三响应,所述第二状态查询命令是在完成无用单元收集之后从所述主机发送的命令;以及通过所述数据存储装置从所述主机接收第一写入命令和写入数据,并且基于所述第一写入命令在存储器中存储所述写入数据。
[0026]所述数据存储装置可以是嵌入式多媒体卡(eMMC),所述第一命令是包括所述设置位的SWITCH命令(CMD6),所述寄存器是EXT_CSD寄存器,存储所述设置位的步骤包括在EXT_CSD寄存器的供应商特定的字段中存储所述设置位,并且所述第一状态查询命令是CMD13o
[0027]根据本发明构思的至少一个示例实施例,一种用于操作主机的方法包括步骤:在所述主机处确定数据存储装置的读取等待时间;在所述主机处产生设置标示符,使得所述主机基于确定的读取等待时间来选择所述设置标示符的值;将状态查询命令从所述主机发送至所述数据存储装置;在所述主机处从所述数据存储装置接收第一响应,所述第一响应的响应类型是第一类型或第二类型;当所述第一响应表示所述数据存储装置正在执行后台操作时,基于所述第一响应的响应类型来确定是否对所述主机的命令调度中的数据存取命令的顺序重新进行安排;以及基于命令调度将第一数据存取命令从所述主机发送至所述数据存储装置。
[0028]确定是否对数据存取命令的顺序重新进行安排的步骤可以包括:当所述第一响应的响应类型是所述第二类型时,对所述主机的命令调度中的数据存取命令的顺序重新进行安排,使得命令调度中的读取命令移动到命令调度中的写入命令之前,并且当所述第一响应的响应类型是所述第一类型时,保持命令调度的当前顺序而没有对命令调度重新进行安排。
[0029]产生所述设置标示符的步骤可以包括:当确定的等待时间超出参考值时,产生所述设置标示符以使其具有第一值,并且当确定的等待时间没有超出所述参考值时,产生所述设置标示符以使其具有第二值。
[0030]从所述数据存储装置接收第一响应的步骤可以包括:当所述设置标示符具有所述第一值时接收具有第二响应类型的第一响应,并且当所述设置标示符具有所述第二值时接收具有第一响应类型的第一响应。
【附图说明】
[0031]通过参照附图对本发明构思的示例实施例进行详细描述,本发明构思的示例实施例的上述和其他特征和优点将变得更加清楚。附图旨在描述本发明构思的示例实施例,而不应当解释为限制权利要求的预期范围。除非明确地表示,否则不应当认为按比例绘制附图。
[0032]图1是根据本发明构思的至少一个示例实施例的数据处理系统的示意性框图;
[0033]图2是描述了根据本发明构思的至少一个示例实施例的图1所示的数据处理系统中执行的输入/输出调度器的调度操作的数据流程图;
[0034]图3是描述了根据本发明构思的至少一个示例实施例的图1所示的数据处理系统的操作的示图;
[0035]图4是根据本发明构思的至少一个示例实施例的图1所示的数据处理系统的操作的示图;
[0036]图5是描述了根据本发明构思的至少一个示例实施例的图1所示的数据处理系统的操作的数据流程图;
[0037]图6是描述了根据本发明构思的至少一个示例实施例的对队列就绪查询命令的发送间隔进行调整的方法的概念图;以及
[0038]图7是包括图1所示的数据处理系统的系统的框图。
【具体实施方式】
[0039]本文公开本发明构思的具体示例实施例。然而,在本文中公开的特定的结构性细节和功能性细节仅出于描述本发明构思的示例实施例的目的。然而,可以按照多种不同的形式来具体实现本发明构思的示例实施例,而不应理解为仅限于在本文中所阐述的各实施例。
[0040]因此,本发明构思的示例实施例能够进行不同的修改和替代形式,同时在附图中以示例的方式示出了本发明构思的各实施例并将在本文中进行详细描述。然而,应当理解的是,并没有旨在将本发明构思的示例实施例限制为所公开的具体形式,而是与此相反,本发明构思的示例实施例是为了涵盖落入本发明构思的示例实施例的范围内的所有修改、等价物和替代物。相同的附图标记在附图描述中始终表示相同的元件。
[0041]应当理解的是,虽然在本文中使用了术语第一、第二等来描述各个元件,然而这些元件不应当被这些术语所限定。这些术语仅用于将一个元件与另一个元件区分开。例如,第一元件可被称作第二元件,并且类似地,第二元件可被称作第一元件,而没有背离本发明构思的示例实施例的范围。如在本文