存储装置、计算机系统及其操作方法

文档序号:6623016阅读:281来源:国知局
存储装置、计算机系统及其操作方法
【专利摘要】提供一种存储装置、计算机系统及其操作方法。提供一种操作存储装置的方法,所述存储装置包括:非易失性存储器,包括被配置为存储标准数据的标准单元和被配置为存储交换数据的交换单元;控制器,被配置为控制所述非易失性存储器。所述方法包括:从主机接收交换数据和用于选择交换单元的单元选择信号;根据交换单元的数据处理策略处理交换数据,并将处理后的交换数据写入交换单元。交换单元的数据处理策略可与标准单元的数据处理策略不同。
【专利说明】存储装置、计算机系统及其操作方法
[0001] 本申请要求于2013年8月8日提交的第10-2013-0094390号韩国专利申请的优 先权,所述申请的公开内容通过引用被全部包含于此。

【技术领域】
[0002] 本发明构思的实施例涉及存储装置、包括存储装置的计算机系统以及相关的操作 方法。

【背景技术】
[0003] 某些计算机系统包括主机、主存储器和辅助存储单元。不同方式实现的辅助存储 单元(在下文中,通常被称为"存储装置")是外部存储器装置,该外部存储器装置向计算 机系统提供由主存储器提供的数据存储容量之外的另外的数据存储容量。在某些应用中, 当代的计算机系统可将与标准写(或编程)操作相关的"标准数据"和/或与一个或更多 个除标准写操作以外的操作相关的"交换数据"写入存储装置。如本领域技术人员将理解 的,交换数据通常仅在单个电力周期内有效,并且一旦该交换数据从存储装置被读取,它就 变成无效。


【发明内容】

[0004] 本发明构思的特定实施例提供能够使用不同的数据处理策略的存储装置,其中, 数据处理策略与在计算机系统的操作期间存储的数据的一个或更多个特性有关。本发明构 思的其他实施例提供操作存储装置的方法,其中,所述方法允许与在计算机系统的操作期 间被存储的数据的一个或更多个特性有关地使用不同的数据处理策略。
[0005] 本发明的一方面提供一种操作包括非易失性存储器和控制器的存储装置的方法, 其中,所述非易失性存储器具有被配置为存储标准数据的标准单元和被配置为存储交换数 据的交换单元,控制器被配置为控制所述非易失性存储器的操作,所述方法包括:从主机接 收交换数据和用于选择交换单元的单元选择信号;根据在操作上与交换单元相关的第一数 据处理策略来处理交换数据,并将交换数据写入交换单元,其中,第一数据处理策略与在操 作上与标准单元相关的第二数据处理策略不同。
[0006] 本发明的另一方面提供一种存储装置,包括:非易失性存储器,包括被配置为存储 与标准写操作相关的标准数据的标准单元,以及被配置为存储与除了标准写操作之外的操 作相关的交换数据的交换单元;控制器,被配置为根据不同的各个数据处理策略控制非易 失性存储器存储标准数据和交换数据的操作,其中,控制器在从主机接收到交换数据和用 于选择交换单元的单元选择信号时,根据在操作上与交换单元相关的第一数据处理策略来 处理交换数据,并将交换数据写入交换单元,其中,第一数据处理策略与在操作上与标准 单元相关的第二数据处理策略不同。
[0007] 本发明的另一方面提供一种计算机系统,包括:如上所述的存储装置;主机。
[0008] 所述主机可包括:中央处理器,被配置为处理虚拟地址;主存储器;存储器管理单 元,被配置为存储映射表,其中,所述映射表将虚拟地址映射到主存储器的物理地址,并将 交换数据的虚拟地址映射到所述非易失性存储器的物理地址。控制器可不存储用于交换数 据的逻辑地址至物理地址映射表。
[0009] 所述主机可包括:中央处理器,被配置为处理虚拟地址;主存储器;存储器管理单 元,被配置为存储映射表和有效性表,其中,所述映射表将与交换数据相关的虚拟地址映射 到逻辑块地址,所述有效性表存储与交换数据相关的虚拟地址的有效性。

【专利附图】

【附图说明】
[0010] 通过参照附图详细描述本发明构思的示例性实施例,本发明构思的以上和其他特 征及优点将变得更明显,其中:
[0011] 图1是根据本发明构思的一些实施例的计算机系统的框图;
[0012] 图2A和图2B是图1中示出的非易失性存储器(NVM)的示例的示图;
[0013] 图3A是存储在图1中示出的存储器管理单元中的页映射表;
[0014] 图3B是存储在图1中示出的控制器中的逻辑地址至物理地址(L2P)映射表;
[0015] 图4A是作为本发明构思的对比示例的分区结构的示图;
[0016] 图4B是根据本发明构思的一些实施例的每个单元中的地址空间和有效容量的示 图;
[0017] 图5是在一个示例中进一步示出图1的控制器的框图;
[0018] 图6是在一个示例中进一步示出图5的NVM控制器的示图;
[0019] 图7是示出数据处理器的寻址模式和数据输出的单位的表;
[0020] 图8是在另一示例中进一步示出图5的NVM控制器的示图;
[0021] 图9是在一个示例中进一步示出根据本发明构思的实施例的图8的压缩器的示 图;
[0022] 包括图10A、图IOB和图IOC的图10是示出根据本发明构思的特定实施例的存储 单元的产生和改变的示图;
[0023] 包括图IlA和图IlB的图11是示出图1的计算机系统中的信号流的示意图;
[0024] 图12A是示出与图12B的示图比较的在图1的计算机系统中执行的标准写操作 的示图,其中,图12B的示图示出了在图1的计算机系统中执行的自治高速缓存写操作 (autonomous cached write operation);
[0025] 图13是示出在NAND闪存中对2比特多层单元(MIX)编程的示图;
[0026] 图14是根据本发明构思的一些实施例的主机中的页映射表;
[0027] 图15是示出在图14中示出的基于页映射表的每个页的有效性的示图;
[0028] 图16是根据本发明构思的一些实施例的存储装置的块映射的示图;
[0029] 图17是在图16中示出的块映射期间存储在主机中的有效性表;
[0030] 图18是根据本发明构思的一些实施例的存储装置的单元信息应答的流程图;
[0031] 图19是根据本发明构思的一些实施例的存储装置的支持的寻址模式应答的流程 图;
[0032] 图20是根据本发明构思的一些实施例的存储装置的支持的数据策略应答的流程 图;
[0033] 图21是根据本发明构思的一些实施例的存储装置的有效容量控制的流程图;
[0034] 图22是根据本发明构思的一些实施例的单元添加的流程图;
[0035] 图23是根据本发明构思的一些实施例的寻址模式改变的流程图;
[0036] 图24是根据本发明构思的一些实施例的数据处理策略设置的流程图;
[0037] 图25是根据本发明构思的一些实施例的数据写方法的流程图。

【具体实施方式】
[0038] 现在在下文中将参照附图更加全面地描述本发明构思,其中,附图示出了本发明 构思的实施例。然而,本发明构思可以以多种不同的形式来实现,且不应被解释为仅限于示 出的实施例。当然,提供这些实施例,使得本公开将是彻底和全面的,并且这些实施例将使 本发明构思的范围充分地传达给本领域的技术人员。贯穿撰写的说明书和附图,相同的附 图标记和标注用于表示相同或相似的元件。
[0039] 将理解的是,当元件被称为"连接"或"耦接"到另一元件时,所述元件可直接连接 或耦接到所述另一元件,或存在中间元件。相比之下,当元件被称为"直接连接"或"直接耦 接"到另一元件时,不存在中间元件。如这里所使用的,术语"和/或"包括一个或更多个相 关所列项的任意一种和所有组合,并可缩写为"/"。
[0040] 将理解的是,虽然术语"第一"、"第二"等可在此用于描述各种元件,但是这些元件 不应受这些术语限制。这些术语仅用于将一个元件与另一个元件区分开。例如,在不脱离 本公开的教导的情况下,第一信号可被称为第二信号,并且类似地,第二信号可被称为第一 信号。
[0041] 在此使用的术语仅用于描述具体实施例的目的,而不意图限制本发明构思。如这 里所使用的,除非长下文另有明确的指示,否则单数形式也意图包括复数形式。还将理解的 是,当在本说明书中使用术语"包括"或"包含"时,表明实现的特征、区域、整数、步骤、操作、 元素和/或部件的存在,而不排除存在或添加一个或更多个其他特征、区域、整数、步骤、操 作、元素、组件和/或它们的组合。
[0042] 除非另外限定,否则在此使用的所有术语(包括科技术语)具有与由本发明构思 所属领域的普通技术人员通常理解的含义相同的含义。还将理解的是,诸如那些在通常使 用的词典中定义的术语应被解释为具有与在相关领域和/或本申请的上下文中的含义一 致的含义,并且将不以被理想化的或者过度形式化的含义对其进行解释,除非在此明确地 如此限定。
[0043] 图1是根据本发明构思的特定实施例的计算机系统1的框图。计算机系统1可被 实现为手持装置,诸如移动电话、智能手机、平板电脑、个人数字助理(PDA)、企业数字助理 (EDA)、数字静态相机、数字视频相机、便携式多媒体播放器(PMP)、个人导航装置或便携式 导航装置(PND)、掌上游戏机或电子书。在其他实施例中,计算机系统1可被实现为个人计 算机(PC)或数据服务器。计算机系统1可包括主机10和存储装置20。
[0044] 主机10包括中央处理器(CPU) 110、主存储器120、存储器管理单元(MMU) 130和总 线140。可被称为处理器的CPU 110可处理或执行存储在主存储器120中的程序和/或数 据。例如,CPU 110可响应于从时钟信号发生器(未不出)输出的时钟信号来处理或执行 程序和/或数据。
[0045] CPU 110可用多核处理器来实现。多核处理器是具有两个或更多个独立的真 实处理器(被称为核)的单个计算机组件。每个处理器可读取和执行程序指令。多核 处理器可同时驱动多个加速器,因此,包括多核处理器的数据处理系统可执行多级加速 (multi-acceleration)〇
[0046] CPU 110可通过包括地址总线、控制总线和/或数据总线的总线140与主存储器 120连接。主存储器120可包括动态随机存取存储器(DRAM)。在其他实施例中,主存储器 120可包括静态RAM(SRAM)、闪存、相变RAM(PRAM)、铁电RAM(FeRAM)、电阻式RAM(RRAM)或 磁性 RAM(MRAM)。
[0047] 当在主存储器120中不存在未使用的空间时,CPU 110可在将新页加载到主存储 器120时执行交换操作。交换操作是将被加载到主存储器120的页中的至少一个页作为交 换数据存储在存储装置20中以确保用于新页的存储空间的操作。
[0048] MMU 130可以是管理CPU 110对主存储器120和存储装置20的访问的计算机硬件 组件。MMU 130可执行存储器地址转换、存储器保护、高速缓存管理和总线仲裁。在其他实 施例中,MMU 130可执行存储体切换。
[0049] 存储装置20可被实现为固态驱动器(SSD)、嵌入式多媒体卡(eMMC)或通用闪存 系统(UFS,Universal Flash System)。存储装置20包括控制器210和非易失性存储器 (NVM)220。
[0050] 控制器210可从主机10接收主机信号(hsig),并可响应于主机信号(hsig)控制 NVM220的操作。
[0051] NVM 220可用于按非易失性方式存储从主机10提供的数据。也就是说,即使当施 加的电力中断时,存储的数据仍有效地保留在NVM 220中。因此,NVM 220可包括一种或更 多种类型的非易失性存储器,诸如NAND闪存、NOR闪存、PRAM、FRAM、RRAM或MRAM。NVM220 可包括多个存储单元,例如,第一单元221-1和第二单元221-2。控制器210可控制标准数 据存储在第一单元221-1中,并控制交换数据存储在第二单元221-2中。
[0052] 第一单元221-1具有第一地址空间和第一有效容量,第二单元221-2具有第二地 址空间和第二有效容量。即使当第一有效容量和第二有效容量应主机10的请求改变时,第 一地址空间和第二地址空间仍可被保持,而不被改变。此外,即使当现有单元的有效容量应 主机10的请求改变以产生新单元时,所述现有单元的地址空间仍可被保持,而不被改变。
[0053] 同时,应主机10的请求(例如,根据地址空间改变信号),控制器210可在保持第 一有效容量和第二有效容量的同时改变第一地址空间或第二地址空间。换句话说,可彼此 独立地改变地址空间和有效容量。例如,可彼此独立地改变第一有效容量和第一地址空间, 并可彼此独立地改变第二有效容量和第二地址空间。
[0054] 虽然难以动态地改变传统的分区,但是由于可相互独立地管理单元的地址空间和 有效容量,因此单元的管理(诸如单元的动态产生、改变和擦除)根据本发明构思的实施例 变得容易。在下文中,将在一些另外的细节中对此进行描述。
[0055] 图2A和图2B是图1中示出的NVM 220的示例220a和220b的示图。参照图2A, NVM220a可实现为NAND闪存。NVM 220a可包括多个存储单元,例如,第一单元221a-l和第 二单元 221a-2。
[0056] 参照图2B,NVM 220b可包括NAND闪存223和PRAM 225。NAND闪存223可包括至 少一个存储单元,例如,第一单元221b-l。PRAM 225可包括至少一个存储单元,例如,第二 单元 221b-2。
[0057] 主机10将与给定的扇区单元有关的写/读命令传递给存储装置20。然而,由于 PRAM 225以字节为单位处理数据,因此扇区至单元访问可导致计算机系统计算时间和相关 资源的不必要的支出。因此,根据本发明构思的实施例,可为每个单元提供不同的寻址模 式,使得可更加有效地操作存储装置20。
[0058] 图3A是存储在图1中示出的MMU 130中的页映射表。图3B是存储在图1中示出 的控制器210中的逻辑地址到物理地址(L2P)映射表。
[0059] 参照图1和图3A,页映射表可用于将由CPU 110处理的虚拟地址(VA)映射到主存 储器120 (例如,DRAM)的物理地址(PA)或存储装置20的逻辑块地址(LBA)。也就是说,页 映射表可将第一 VA组VAO映射到主存储器120的PA,将与第一单元221-1相应的第二VA 组VAl映射到第一 LBA LBAl,并将与第二单元221-2相应的第三VA组VA2映射到第二LBA LBA2。
[0060] 现在参照图1和图3B,控制器210可用于存储用于每个单元的L2P映射表。L2P 映射表将使从主机10接收到的LBA映射到NVM 220的PA。为了本描述的目的,将假设与第 二单元221-2相应的第二LBA LBA2具有范围从0至7的地址空间值。
[0061] 地址空间是由控制器210针对每个单元管理的用于LBA的存储器空间。例如,第 二单元221-2的地址空间可被指定为具有值8。"有效容量"是NVM 220的PA可被映射到 单元的地址空间内的LBA的最大空间。
[0062] "剩余容量"是每个单元的有效容量减去"已用容量",并表示额外的映射操作可被 指引的容量。例如,当在第二单元221-2中三个LBA1、3和5被映射并且有效容量是5时, 在还未被映射的LBA 0、2、4、6和7之中的另外两(2)个LBA可被映射。因此,在这个简单 的示例中,剩余容量为2。
[0063] 图4A是作为用于本发明构思的特定实施例的比较示例的分区结构的示图,然而 图4B是根据本发明构思的示出的实施例的每个单元中的地址空间和有效容量的示图。
[0064] 共同参照图1、图3A和图3B、图4A和图4B,假设NVM 220是容量为16GB的NAND 闪存。当NAND闪存220被分区时,硬动态改变的问题出现。例如,当NAND闪存220最初被 分区成15GB区段和IGB区段,并且此后IGB区段被扩展成2GB区段时,通常会需要创建新 文件系统,因此,根据初始分区被存储在存储装置中的数据将需要进行备份、擦除和重写。 [0065] 然而,根据本发明构思的特定实施例,可为每个存储单元提供与归因于初始16GB 分区的实际容量无关的"虚拟地址空间"。例如,可将NAND闪存220划分为第一单元至第η 单元(例如,Unit_0至Unit_(n-1),其中,"η"是大于1的整数)。可将第一单元Unit_0设 置具有8GB的地址空间2211和0. 5GB的有效容量2212。可将第二单元Unit_l设置为具 有20GB的地址空间2213和12GB的有效容量2214。可将第η单元Unit_(n-1)设置为具有 16GB的地址空间2215和IGB的有效容量2216。
[0066] L2P映射表被设置为包括与大于有效容量的地址空间相应的映射信息,使得每个 单元的地址空间可被设置为大于有效容量。结果,即使当每个存储单元的容量被改变(例 如,被重新分区)时,仍可一致地使用地址空间,从而在地址空间定义时能实现相对容易的 动态改变。
[0067] 同时,有效容量的总数被设置为小于NVM220的实际容量,并且剩余容量被用作预 留区域,使得对于执行垃圾回收操作的需求可被延迟。结果,存储装置20的性能得到提高。
[0068] 图5是进一步示出图1的控制器210的框图。参照图1和图5,控制器210可包括 接收信号分析器211、配置管理器213和NVM控制器215。
[0069] 接收信号分析器211分析从主机10接收到的主机信号(hsig)。主机信号(hsig) 可包括用于选择单元221-1和单元221-2中的至少一个单元的单元选择信号。在其他实施 例中,主机信号(hsig)可包括新单元产生信号。
[0070] 主机信号(hsig)可包括写/读信号和单元配置改变信号中的至少一个。写/读 信号可包括写/读命令、写数据、起始地址和其上将执行命令的存储器单元的数量。当主机 信号(hsig)包括单元配置改变信号时,接收信号分析器211可将主机信号(hsig)发送到 配置管理器213,当主机信号(hsig)包括写/读命令时,接收信号分析器211可将主机信号 (hsig)发送到NVM控制器215。
[0071] 配置管理器213可存储单元221-1和单元221-2中的每个单元的单元配置。单元 配置可包括单元221-1和单元221-2中的每个单元的地址空间、有效容量、寻址模式和数据 处理策略。配置管理器213可根据主机信号(hsig)改变单元221-1和单元221-2的单元 配置。例如,配置管理器213可根据主机信号(hsig)在NVM 220中产生新单元,改变单元 配置或擦除单元。也就是说,配置管理器213可根据主机信号(hsig)改变每个单元的地址 空间或有效容量。配置管理器213可根据主机信号(hsig)中的单元选择信号将与选择的 单元(例如,221-1)的单元配置相关的单元配置信息(cfg)输出到主机10或NVM控制器 215。
[0072] NVM控制器215可根据主机信号(hsig)和单元配置信息(cfg)控制单元221-1的 操作。当NVM控制器215确定对于单元221-1需要单元配置改变时,NVM控制器215可将配 置改变信号(ctl_cfg)传递给配置管理器213。例如,当写数据的大小大于单元221-1的剩 余容量时,NVM控制器215可将用于改变单元221-1的有效容量的配置改变信号(ctl-cfg) 发送到配置管理器213。
[0073] 图6是在一个实施例(215a)中进一步示出图5的NVM控制器215的示图,图7是 列出用于图6的数据处理器320的示例性的寻址模式和数据输出的单位的表。参照图5、图 6和图7,假设NVM 220是NAND闪存。NVM控制器215a可被配置为包括确定器310、数据处 理器320和闪存转换层(FTL) 330。下面将描述当数据被写入NVM 220时NVM控制器215的 操作。
[0074] 确定器310接收主机信号(hsig),并对将被写入的数据的大小与通过主机信号 (hsig)中的单元选择信号选择的单元(在下文中,被称为"所选单元")的剩余容量进行比 较。当剩余容量小于数据的大小时,确定器310可将"不写"应答发送到主机10。可选地, 当剩余容量小于数据的大小时,确定器310可控制配置管理器213调整所选单元的有效容 量。例如,当除了所选单元之外的单元具有充足的剩余容量时,可减少"未选单元"的有效 容量,并可使所选单元的有效容量相应地增加该减少量。因而,确定器310可将所选单元的 剩余容量调整为大于数据的大小。
[0075] 确定器310还可用于确定主机信号(hsig)中的地址是否有效。例如,主机信号 (hsig)可包括起始地址和关于将被写的扇区的数量的信息。确定器310可确定起始地址和 通过将扇区的数量添加到起始地址所获得的地址是否有效,即,它们是否落在给定的地址 空间内。
[0076] 当确定器310确定剩余容量大于数据的大小并且地址有效时,数据处理器320可 处理包括在主机信号(hsig)中的写数据。数据处理器320可以以根据针对每个单元设置 的寻址模式被预定的单位,将顺序接收到的写数据输出到FTL 330。单元配置信息(cfg)可 包括关于所选单元的寻址模式的信息。
[0077] 当寻址模式是"默认"时,数据处理器320可在将写数据输出到FTL 330时使用512 字节的扇区。当寻址模式是"大扇区"时,数据处理器320可在将写数据输出到FTL330时使 用大扇区,诸如4KB扇区或8KB扇区。当寻址模式是"块和页"时,数据处理单元320可使 用一个NAND页或多个NAND页。当寻址模式是"块"时,数据处理单元320可使用NAND块。 当寻址模式是"字节"时,数据处理器320可使用字节。
[0078] 上述寻址模式是示例,且本发明构思不限于此。配置管理器213可根据主机10的 主机信号(hsig)包括除了上述寻址模式之外的其他寻址模式。
[0079] FTL 330可将从数据处理器320接收到的写数据转换为可由NVM 220识别的信号, 并可将该信号输出到NVM 220。FTL 330可根据单元配置信息(cfg)执行所选单元的数据 处理策略。在其他实施例中,数据处理器320可根据单元配置信息(cfg)执行所选单元的 数据处理策略。
[0080] 数据处理策略可包括:存储数据映射信息的方法、支持或不支持高速缓存模式、执 行或不执行数据备份、数据写速度、执行或不执行垃圾回收操作、在断电以后恢复电力供应 时处理数据的方法等。配置管理器213可根据主机10的主机信号(hsig)包括除了上述数 据处理策略之外的其他数据处理策略。
[0081] 图8是进一步示出根据另一实施例(215b)的图5的NVM控制器215的示图。图 8中示出的NVM控制器215b类似于图6中示出的NVM控制器215a,以下将仅描述这两个实 施例之间的相关差异。
[0082] 图8中示出的实施例(NVM控制器215b)还包括压缩器340。当确定器310确定剩 余容量小于写数据的相应数据大小时,压缩器340可用于对接收到的写数据进行压缩。当 确定器310确定剩余容量大于所述数据大小时,写数据可旁路压缩器340。
[0083] 压缩器340可根据可选择的(或有效的)压缩来进行操作。在本发明构思的特定 实施例中,压缩器340可用于从写数据中去除不用的数据来压缩写数据的数据大小。在其 他实施例中,主机信号(hsig)可包括不压缩命令,并且,响应于该不压缩命令,压缩器340 将允许写数据完全地旁路压缩器340。
[0084] 图9是在一个示例中进一步示出根据本发明构思的实施例的图8的压缩器340的 示图。参照图9,压缩器340可用于使用通常理解的重复数据删除方法(de-duplication approach)对包括在主机信号(hsig)中的写数据(WR_DATA)进行压缩。在相关部分,压缩 器340可包括哈希单元341、哈希数据库(DB) 343和比较器345。
[0085] 哈希单元341接收写数据(WR_DATA),并通过使用适当的散列函数对写数据(WR_ DATA)进行散列来产生相应的哈希值(H_VAL)。随后,哈希数据库343可用于存储样式 (pattern)哈希值(P_VAL)。可通过对具有特定数据样式的数据进行散列来产生样式哈希 值(P_VAL)。例如,特定数据样式可以是数据值0或1被重复的样式,或数据值0和1被交 替重复的样式。
[0086] 随后,比较器345可用于将哈希值(H_VAL)和样式哈希值(P_VAL)进行比较。当 哈希值(H_VAL)存在于样式哈希值(P_VAL)之中时,比较器345可将指示相应样式的信号 输出到数据处理器320。数据处理器320可通过FTL330将与该信号相应的数据写入NVM 220。然而,当哈希值(H_VAL)不存在于样式哈希值(P_VAL)之中时,比较器345可将写数 据(WR_DATA)输出到数据处理器320。
[0087] 包括图10A、图IOB和图IOC的图10是示出根据本发明构思的特定实施例的存储 单元的产生和改变的示图。
[0088] 参照图1和图10A,假设NVM 220的总容量是16GB。在默认状态下,S卩,当NVM 220 从工厂运来时,NVM220可仅包括第一单元Unit_0。第一单元UnitJ)可具有16GB的地址空 间和16GB的有效容量。然而,在其他实施例中,在默认状态下,NVM 220可不包括任何单元, 或可包括多个单元。
[0089] 主机10可从存储装置20请求装置信息。例如,当存储装置20被上电时或当存储 装置20的单元配置被改变时,主机10可请求装置信息。存储装置20的配置管理器213可 响应于所述请求,将以下项中的至少一个输出到主机10 :单元的数量和每个单元的地址空 间、有效空间、剩余容量、寻址模式和数据处理策略。
[0090] 参照图1和图10B,主机10可确定需要仅用于交换数据的单元。当添加 IGB交换 单元时,主机10可确定各个单元的有效容量的总和是否超过NVM 220的总容量。由于NVM 220的总容量已被分配用于第一单元UnitJ)的有效容量,因此主机10可确定改变第一单元 UnitJ)的有效容量,以产生新单元。主机10可将指示把第一单元UnitJ)的有效容量改变 成15GB的有效容量改变请求发送到存储装置20。
[0091] 响应于所述请求,配置管理器213可确定改变后的有效容量是否超过存储装置20 的总容量。当改变后的有效容量未超过存储装置20的总容量时,配置管理器213可将所述 有效容量改变成15GB,并将有效容量改变应答发送到主机10。
[0092] 参照图1和图10C,主机10可将指示产生具有16GB地址空间和IGB有效容量的第 二单元Unit_l的单元添加请求发送到存储装置20。响应于所述请求,配置管理器213可确 定各个单元Unit_0和Unit_l的有效容量的总和是否超过存储装置20的总容量,当所述总 和未超过所述总容量时产生第二单元Unit_l,并将单元添加应答发送到主机10。
[0093] 根据本发明构思的特定实施例,主机10可请求存储装置20改变用于第一单元 UnitJ)或第二单元Unit_l的寻址模式或数据处理策略。响应于所述请求,配置管理器213 可确定所述改变是否可能,并且当确定所述改变是可能的时,配置管理器213可改变寻址 模式或数据处理策略,并可将改变应答发送到主机10。
[0094] 在存储装置20的第一单元UnitJ)具有16GB有效容量的状态下,如图IOA中所示, 主机10可将指示产生具有16GB地址空间和IGB有效容量的第二单元Unit_l的单元添加 请求发送到存储装置20。响应于所述请求,配置管理器213可确定单元的有效容量的总和 超过存储装置20的总容量,然后确定在存储装置20中是否存在具有剩余容量的任何单元 (即,在此情况下的第一单元Unit_0)。当第一单元Unit_0具有IGB或更多的剩余容量时, 配置管理器213可将第一单元UnitJ)的有效容量减少1GB,并产生第二单元Unit_l。
[0095] 可选地,当存在多个具有剩余容量的单元时,配置管理器213可根据预定权重减 少每个单元的有效容量,或根据定义的优先级减少所述多个单元中的一个单元的有效容 量,然后产生新单元。
[0096] 表 1
[0097]

【权利要求】
1. 一种操作包括非易失性存储器和控制器的存储装置的方法,其中,所述非易失性存 储器具有被配置为存储标准数据的标准单元和被配置为存储交换数据的交换单元,控制器 被配置为控制所述非易失性存储器的操作,所述方法包括: 从主机接收交换数据和用于选择交换单元的单元选择信号; 根据在操作上与交换单元相关的第一数据处理策略来处理交换数据,并将交换数据写 入交换单元, 其中,第一数据处理策略与在操作上与标准单元相关的第二数据处理策略不同。
2. 如权利要求1所述的方法,其中,第一数据处理策略阻止非易失性存储器存储用于 存储在交换单元中的交换数据的映射表。
3. 如权利要求1所述的方法,其中,第一数据处理策略促使交换数据W高速缓存模式 写入交换单元。
4. 如权利要求1所述的方法,其中,非易失性存储器包括多层单元闪存单元,并且第一 数据处理策略阻止控制器在交换数据被写入交换单元时,在写最低有效位数据之后并在写 最高有效位数据之前,对所述最低有效位数据备份。
5. 如权利要求1所述的方法,其中,在根据第一数据处理策略处理交换数据并将交换 数据写入交换单元之后执行的上电过程期间,控制器省去与非易失性存储器的日志块有关 的扫描操作的执行,其中,所述日志块与交换单元相关。
6. 如权利要求1所述的方法,其中,在根据第一数据处理策略处理交换数据并将交换 数据写入交换单元之后执行的上电过程或断电过程期间,控制器舍弃存储在交换单元中的 交换数据。
7. 如权利要求1所述的方法,其中,存储装置还包括:易失性存储器,被配置为存储用 于存储在交换单元中的交换数据的映射数据,其中,用于交换数据的映射数据是粗粒度映 射数据。
8. 如权利要求1所述的方法,其中,在根据第一数据处理策略处理交换数据并将交换 数据写入交换单元之后,所述方法还包括: 从交换单元读取交换数据; 随后舍弃从交换单元读取的交换数据。
9. 如权利要求1所述的方法,其中,按照比将标准数据写入标准单元的速度更快的速 度来执行将交换数据写入交换单元的步骤。
10. 如权利要求1所述的方法,其中,在根据第一数据处理策略处理交换数据并将交换 数据写入交换单元之后,所述方法还包括:使用主机执行指向交换单元的垃圾回收操作。
11. 一种存储装置,包括: 非易失性存储器,包括被配置为存储与标准写操作相关的标准数据的标准单元,W及 被配置为存储与除了标准写操作之外的操作相关的交换数据的交换单元; 控制器,被配置为根据不同的各个数据处理策略控制非易失性存储器存储标准数据和 交换数据的操作, 其中,控制器在从主机接收到交换数据和用于选择交换单元的单元选择信号时,根据 在操作上与交换单元相关的第一数据处理策略来处理交换数据,并将交换数据写入交换 单元,其中,第一数据处理策略与在操作上与标准单元相关的第二数据处理策略不同。
12. 如权利要求11所述的存储装置,其中,在根据第一数据处理策略处理交换数据并 将交换数据写入交换单元之后,控制器促使非易失性存储器省去对用于存储在交换单元中 的交换数据的映射表的存储。
13. 如权利要求11所述的存储装置,其中,在根据第一数据处理策略处理交换数据并 将交换数据写入交换单元之后由控制器执行的上电过程期间,控制器省去与非易失性存储 器的日志块有关的扫描操作的执行,其中,所述日志块与交换单元相关。
14. 如权利要求11所述的存储装置,其中,在根据第一数据处理策略处理交换数据并 将交换数据写入交换单元之后由控制器执行的上电过程或断电过程期间,控制器舍弃存储 在交换单元中的交换数据。
15. 如权利要求11所述的存储装置,其中,存储装置还包括;易失性存储器,被配置为 存储用于存储在交换单元中的交换数据的映射数据,其中,用于交换数据的映射数据是粗 粒度映射数据。
16. 如权利要求11所述的存储装置,其中,控制器促使非易失性存储器W比将标准数 据写入标准单元更快的速度将交换数据写入交换单元。
17. -种计算机系统,包括: 如权利要求11所述的存储装置; 主机。
18. 如权利要求17所述的计算机系统,其中,主机包括: 中央处理器,被配置为处理虚拟地址; 主存储器; 存储器管理单元,被配置为存储映射表,其中,所述映射表将虚拟地址映射到主存储器 的物理地址,并将交换数据的虚拟地址映射到所述非易失性存储器的物理地址。
19. 如权利要求18所述的计算机系统,其中,控制器不存储用于交换数据的逻辑地址 至物理地址映射表。
20. 如权利要求17所述的计算机系统,其中,主机包括: 中央处理器,被配置为处理虚拟地址; 主存储器; 存储器管理单元,被配置为存储映射表和有效性表,其中,所述映射表将与交换数据 相关的虚拟地址映射到逻辑块地址,所述有效性表存储与交换数据相关的虚拟地址的有效 性。
【文档编号】G06F3/06GK104346290SQ201410390230
【公开日】2015年2月11日 申请日期:2014年8月8日 优先权日:2013年8月8日
【发明者】徐圣镕, 金敬镐, 辛承郁, 禹泳再, 金贤柱, 赵廷勋 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1