CN111831581B - 数据读取方法、装置及数据存储设备 - Google Patents
数据读取方法、装置及数据存储设备 Download PDFInfo
- Publication number
- CN111831581B CN111831581B CN202010686666.2A CN202010686666A CN111831581B CN 111831581 B CN111831581 B CN 111831581B CN 202010686666 A CN202010686666 A CN 202010686666A CN 111831581 B CN111831581 B CN 111831581B
- Authority
- CN
- China
- Prior art keywords
- page table
- data
- address
- data read
- nand
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000013500 data storage Methods 0.000 title claims abstract description 64
- 230000015654 memory Effects 0.000 claims abstract description 200
- 238000013507 mapping Methods 0.000 claims abstract description 77
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000012937 correction Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
Abstract
本说明书的实施例提供数据读取方法。数据存储设备的逻辑至物理映射表按照多级页表方式管理。NAND存储器存储多级页表的所有页表,SRAM在上电时加载多级页表的部分页表。在数据读取时,存储器控制器接收包括主机逻辑地址的第一数据读命令,使用主机逻辑地址来在SRAM的页表中执行地址映射处理。在地址映射处理中仅仅确定出与主机逻辑地址对应的最后一级页表的基准地址时,存储器控制器向NAND存储器发送包括最后一级页表的基准地址的第二数据读命令和包括主机逻辑地址的第三数据读命令。NAND存储器根据第二和第三数据读命令执行数据读取并返回给存储器控制器,以提供给主机。利用该方法,可以在无需DRAM的情况下实现针对NAND存储器的数据读取。
Description
技术领域
本说明书实施例通常涉及数据存储领域,尤其涉及数据读取方法、装置以及数据存储设备。
背景技术
在具有NAND存储器的数据存储设备中,使用动态存取存储器(Dynamic RandomAccess Memory,DRAM)来存储逻辑至物理地址映射表(logical-to-physical mappingtable,L2P映射表)。在对数据存储设备进行数据读取时,存储器控制器使用主机逻辑地址来在DRAM中搜索NAND存储器的物理地址,并且使用所搜索到的物理地址来在NAND存储器中读取对应的数据。按照这种数据读取方式,虽然数据读取速度较快,但是需要在数据存储设备中部署DRAM来存储L2P映射表,所部署的DRAM占用了数据存储设备的有限空间,并且增加了数据存储设备的成本。
如何在无需DRAM存储L2P映射表的情况下实现数据存储设备的数据读取,成为亟待解决的问题。
发明内容
鉴于上述,本说明书实施例提供一种数据读取方法、装置及数据存储设备。在该数据读取方法、装置及数据存储设备中,L2P映射表按照多级页表方式进行管理,在NAND存储器中存储L2P映射表的所有页表,SRAM在上电时从NAND存储器中加载多级页表的部分页表。在从主机接收到数据读命令后,存储器控制器根据数据读命令中的主机逻辑地址,首先在SRAM中执行地址映射处理,并且在SRAM中没有确定出物理地址后,根据SRAM中的地址映射结果来在NAND存储器中再次执行地址映射处理得到物理地址,随后使用所确定出的物理地址来执行数据读取,由此在无需DRAM存储L2P映射表的情况下实现数据读取操作。
根据本说明书实施例的一个方面,提供一种用于读取数据存储设备中的数据的方法,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器存储数据以及所述多级页表的所有页表,所述SRAM在上电时从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述方法包括:经由所述存储器控制器接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;在所述存储器控制器处,使用所述主机逻辑地址来在所述SRAM的页表中执行地址映射处理;在所述地址映射处理中仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,经由所述存储器控制器向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,所述第三数据读命令包括所述主机逻辑地址;在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,基于所确定的物理地址执行数据读取并返回给所述存储器控制器;以及经由所述存储器控制器,将所接收的数据提供给所述主机。
可选地,在上述方面的一个示例中,所述SRAM还存储所述多级页表的最后一级页表,所述方法还包括:在所述地址映射处理中确定出与所述主机逻辑地址对应的物理地址时,经由所述存储器控制器向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所确定出的物理地址;以及在所述NAND存储器处,基于所述第四数据读命令中的物理地址执行数据读取。
可选地,在上述方面的一个示例中,所述NAND存储器包括NAND控制器、NAND高速缓存和NAND寄存器,所述NAND高速缓存用于缓存所述多级页表,所述NAND寄存器用于存储数据,在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,并且基于所确定的物理地址执行数据读取包括:经由所述NAND控制器根据所述第二数据读命令中的最后一级页表的基准地址,从所述NAND高速缓存中读取所述最后一级页表;经由所述NAND控制器根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址;以及经由所述NAND控制器根据所确定的物理地址对所述NAND寄存器执行数据读取。
可选地,在上述方面的一个示例中,所述NAND存储器具有错误检查纠正模块,所述方法还包括:在经由所述NAND存储器根据所述第二数据读命令中的最后一级页表的基准地址读取所述最后一级页表后,经由所述错误检查纠正模块对所读取的最后一级页表进行解码。
可选地,在上述方面的一个示例中,在所述NAND存储器处,根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址包括:在所述错误检查纠正模块对所读取的最后一级页表解码成功后,经由所述NAND控制器根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址。
可选地,在上述方面的一个示例中,所述方法还可以包括:在所述错误检查纠正模块对所读取的最后一级页表解码未成功时,经由所述NAND控制器将所述NAND寄存器置为全零模式,并将所述全零模式返回给所述存储器控制器。
可选地,在上述方面的一个示例中,所述数据存储设备中保持所述最后一级页表的多个副本。
可选地,在上述方面的一个示例中,所述NAND高速缓存和所述NAND寄存器位于同一SoC芯片上。
可选地,在上述方面的一个示例中,所述多级页表包括三级页表,以及二级页表和对应的三级页表被写入所述NAND存储器的同一晶片中。
根据本说明书的实施例的另一方面,提供一种用于读取数据存储设备中的数据的方法,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器存储数据以及所述多级页表的所有页表,所述SRAM在上电时从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述方法由所述存储器控制器执行,所述方法包括:接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;使用所述主机逻辑地址,在所述SRAM的页表中执行地址映射处理;在所述地址映射处理中仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,所述第三数据读命令包括所述主机逻辑地址;接收所述NAND存储器响应于所述第二数据读命令和所述第三数据读命令而返回的数据;以及将所接收的数据提供给所述主机,其中,在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,基于所确定的物理地址执行数据读取并返回给所述存储器控制器。
可选地,在上述方面的一个示例中,所述SRAM还存储所述多级页表的最后一级页表,所述方法还包括:在所述地址映射处理中确定出与所述主机逻辑地址对应的物理地址时,向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所找出的物理地址;以及在所述NAND存储器处,基于所述第四数据读命令中的物理地址执行数据读取。
可选地,在上述方面的一个示例中,所述数据存储设备中保持所述最后一级页表的多个副本。
根据本说明书的实施例的另一方面,提供一种用于从数据存储设备读取数据的装置,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器中存储所述多级页表的所有页表,所述SRAM在上电时被从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述装置应用于所述存储器控制器,所述装置包括:命令接收单元,被配置为接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;地址映射单元,被配置为使用所述主机逻辑地址,在所述SRAM的页表中执行地址映射处理;命令发送单元,被配置为在所述地址映射单元仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,以及所述第三数据读命令包括所述主机逻辑地址;数据接收单元,被配置为接收所述NAND存储器响应于所述第二数据读命令和所述第三数据读命令而返回的数据;以及数据提供单元,被配置为将所接收的数据提供给所述主机,其中,所述NAND存储器根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,并且基于所确定的物理地址执行数据读取。
可选地,在上述方面的一个示例中,所述SRAM还存储所述多级页表的最后一级页表,所述命令发送单元还被配置为在所述地址映射单元确定出与所述主机逻辑地址对应的物理地址时,向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所找出的物理地址,所述NAND存储器基于所述第四数据读命令中的物理地址执行数据读取。
根据本说明书的实施例的另一方面,提供一种数据存储设备,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述数据存储设备包括:存储器控制器,包括如上所述的装置;SRAM,所述SRAM在上电时从NAND存储器加载多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表;以及NAND存储器,所述NAND存储器中存储数据以及所述多级页表的所有页表。
可选地,在上述方面的一个示例中,所述NAND存储器包括NAND控制器、NAND高速缓存和NAND寄存器,所述NAND高速缓存用于缓存所述多级页表,所述NAND寄存器用于存储数据,所述NAND控制器被配置为:根据所述第二数据读命令中的最后一级页表的基准地址,从所述NAND高速缓存中读取所述最后一级页表;根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址;以及根据所确定的物理地址对所述NAND寄存器执行数据读取。
可选地,在上述方面的一个示例中,所述NAND存储器还包括:错误检查纠正模块,被配置为在所述NAND存储器根据所述第二数据读命令中的最后一级页表的基准地址读取所述最后一级页表后,对所读取的最后一级页表进行解码。
可选地,在上述方面的一个示例中,所述NAND控制器被配置为:在所述错误检查纠正模块对所读取的最后一级页表解码成功后,根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址。
可选地,在上述方面的一个示例中,所述NAND控制器还被配置为:在所述错误检查纠正模块对所读取的最后一级页表解码未成功时,将所述NAND寄存器置为全零模式,并将所述全零模式返回给所述存储器控制器。
根据本说明书的实施例的另一方面,提供一种计算设备,包括:至少一个处理器,以及与所述至少一个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的数据读取方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的数据读取方法。
附图说明
通过参照下面的附图,可以实现对于本说明书内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了具有DRAM的数据存储设备的数据读取过程的示例示意图。
图2示出了根据本说明书的实施例的数据存储设备的示例结构示意图。
图3示出了根据本说明书的实施例的L2P映射表的多级页表管理的示例示意图。
图4示出了根据本说明书的实施例的数据存储设备的数据写入过程的示例流程图。
图5示出了根据本说明书的实施例的数据写命令的示例示意图。
图6示出了根据本说明书的实施例的Level 2L2P映射表的写入过程的示例示意图。
图7示出了根据本说明书的实施例的数据存储设备的数据读取过程的示例流程图。
图8示出了根据本说明书的实施例的数据读命令的示例示意图。
图9示出了根据本说明书的实施例的NAND器处的处理过程的示例流程图。
图10示出了根据本说明书的实施例的用于实现存储器控制器处的操作的计算设备的示意图。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
图1示出了具有DRAM的数据存储设备的数据读取过程的示例示意图。
如图1所示,示例架构1包括主机10和数据存储设备20。数据存储设备20包括存储器控制器201、SRAM 202、DRAM 203和至少一个NAND存储器204-1到204-3。
存储器控制器201与主机10可通信地连接,用于接收主机10的数据读命令或数据写入命令,并且根据所接收的数据读命令或数据写入命令来对NAND存储器执行数据读取操作或数据写入操作。
SRAM 202、DRAM 203和至少一个NAND存储器204-1到204-3与存储器控制201可通信地连接。DRAM 203中存储逻辑至物理地址映射表(L2P映射表)。NAND 204-1到204-3用于存储数据(例如,用户数据)。
在进行数据读取时,在通过接口模块从主机10接收到第一数据读命令后,存储器控制器201向DRAM 203发送物理地址搜索请求,所述物理地址搜索请求包括第一数据读命令中的主机逻辑地址。DRAM 203使用主机逻辑地址,在所存储的L2P映射表中搜索NAND存储器204的物理地址,并且将搜索到的物理地址发送给存储器控制器201。存储器控制器201向NAND存储器204发送包含物理地址的第二数据读命令。NAND存储器204使用第二数据读命令中的物理地址来感测数据,并且在NAND存储器204准备好数据时,存储器控制器202读出数据并通过接口模块提供给主机10。
按照上述数据读取方式,虽然数据读取速度较快,但是需要在数据存储设备中部署DRAM来存储L2P映射表,所部署的DRAM占用了数据存储设备的有限空间,并且增加了数据存储设备的成本。
随着NAND存储器技术的发展,NAND存储器中的数据感测越来越快,从而使得数据感测时间在数据存储设备的主机读请求总延迟中的占比越来越小。这使得数据存储设备使用NAND存储器来高速缓存L2P映射表成为可能。
考虑到NAND存储器的上述特性,本说明书的实施例提供一种数据读取方法。在该数据读取方法中,L2P映射表按照多级页表方式进行管理,在NAND存储器中存储L2P映射表的所有页表,并且SRAM在上电时从NAND存储器中加载多级页表中除了最后一级页面之外的剩余页表。在从主机接收到数据读命令后,存储器控制器根据数据读命令中的主机逻辑地址,首先在SRAM中执行地址映射处理,并且在SRAM中没有确定出物理地址后,根据SRAM中的地址映射结果来在NAND存储器中再次执行地址映射处理得到物理地址,随后使用所确定出的物理地址来执行数据读取,由此在无需DRAM存储L2P映射表的情况下实现数据读取操作。
下面结合附图描述根据本说明书的实施例的数据读取方法、数据读取装置和数据存储设备。
图2示出了根据本说明书的实施例的数据存储设备200的示例结构示意图。在图2中示出的示例中,数据存储设备200中的L2P映射表按照多级页表方式管理。
如图2所示,数据存储设备200包括存储器控制器210、SRAM 220和至少一个NAND存储器230-1到230-3。
存储器控制器210与主机100可通信地连接,用于接收主机100的数据读命令或数据写入命令,并且根据所接收的数据读命令或数据写入命令来对NAND存储器执行数据读取操作或数据写入操作。存储器控制器210的操作将会在下文参照附图详细描述。
存储器控制器210还与SRAM 220和至少一个NAND存储器230-1到230-3可通信地连接。至少一个NAND存储器230-1到230-3存储数据以及L2P的所有页表。SRAM 220在上电时,从NAND存储器加载多级页表的部分页表,所述部分页表包括多级页表中除了最后一级页表的剩余页表。例如,在多级页表采用三级页表Level0 L2P、Level1 L2P以及Level2 L2P的情况下,NAND存储器230中存储Level0 L2P、Level1 L2P以及Level2 L2P,以及SRAM 220在上电后从NAND存储器加载Level0 L2P和Level1 L2P。
图3示出了根据本说明书的实施例的L2P映射表的多级页表管理的示例示意图。在图3示出的示例中,多级页表包括Level0 L2P、Level1 L2P以及Level2 L2P。
如图3所示,L2P映射表被分级为Level0 L2P、Level1 L2P和Level2 L2P。Level0L2P是顶级页表(也称为一级页表),Level1 L2P是二级页表,以及Level2 L2P是三级页表。Level0 L2P页表的每一项映射(指向)一个Level1 L2P页表,以及Level1 L2P页表中的每一项映射一个Level2 L2P页表。Level2 L2P页表中的每一项代表NAND存储器的一个物理地址。
在图3中示出的示例中,Level1 L2P页表和对应的Level2 L2P页表被写入到NAND存储器的同一晶片(Die)中。
图4示出了根据本说明书的实施例的数据存储设备的数据写入过程的示例流程图。
如图4所示,在从主机100接收到数据写命令后,在步骤410,存储器控制器210将待写入的数据和所有页表缓存到SRAM 220中。在步骤420,更新SRAM 220中加载的多级页表中的部分页表。例如,在三级页表的情况下,更新SRAM 220中的Level0 L2P映射表和Level1L2P映射表。
在SRAM 220中缓存的数据达到一个存储页的数据容量后,在步骤430,将SRAM 220中的数据以及最后一级页表写入到NAND存储器230的同一晶片中。数据以及最后一级页表的写入过程采用不同的数据写命令来完成。
图5示出了根据本说明书的实施例的数据写命令的示例示意图。图5中的上半部分示出了用于将Level2 L2P写入到NAND存储器的数据写命令的示例,以及图5的下半部分示出了用于将用户数据写入到NAND存储器的数据写命令的示例。
此外,要说明的是,在数据存储设备掉电后,将SRAM 220中存储的部分页表写入到NAND存储器230中。这里,最后一级页表的上级页表与最后一级页表被写入到NAND存储器230的同一晶片中。例如,在三级页表的情况下,Level1 L2P映射表和Level2 L2P映射表被写入到NAND存储器230的同一晶片中。
图6示出了根据本说明书的实施例的Level 2L2P映射表的写入过程的示例示意图。在图6中示出的示例中,NAND存储器包括NAND控制器、错误检查纠正(ECC)模块和NAND寄存器。
如图6所示,在NAND存储器接收到用于将Level2 L2P写入到NAND存储器的数据写命令(步骤1)后,经由ECC模块对Level2 L2P进行处理得到ECC校验位(步骤2),并且将Level2 L2P和ECC校验位写入到NAND寄存器。
图7示出了根据本说明书的实施例的数据存储设备的数据读取过程的示例流程图。为了描述简单,在图7的示例中,采用三级页表Level0 L2P、Level1 L2P和Level2 L2P作为示例。
如图7所示,在步骤710,存储器控制210从主机100接收第一数据读命令,第一数据读命令包括主机逻辑地址,例如,0x123456。
在步骤720,存储器控制器210使用主机逻辑地址来在SRAM 220的页表中执行地址映射处理。例如,存储器控制器210使用主机逻辑地址0x123456来在SRAM 220的页表中执行地址映射处理。
在一个示例中,SRAM 220中仅仅具有在上电时加载的Level0 L2P和Level1 L2P,从而经过块720的地址映射处理,仅仅确定出与主机逻辑地址(例如,0x123456)对应的level2 L2P(最后一级页表)的基准地址(例如,0x6789),即,最后一级页表在NAND存储器中的物理地址。
在另一示例中,SRAM 220中还可以具有level2 L2P,例如,在数据存储设备完成数据写操作后不久,SRAM 220中还缓存有level2 L2P。在这种情况下,经过块720的地址映射处理,可以确定出与主机逻辑地址对应的物理地址(例如,0x45678)。
在步骤730,存储器控制器判断经过地址映射处理后在SRAM中是否找到对应的物理地址。
在地址映射处理中仅仅确定出与主机逻辑地址对应的level2 L2P的基准地址时,在步骤740,存储器控制器向NAND存储器发送第二数据读命令和第三数据读命令,以执行特定数据读取操作。这里,第二数据读命令包括最后一级页表的基准地址(例如,0x6789),以及第三数据读命令包括主机逻辑地址(例如,0x123456)。图8中的下半部分示出了根据本说明书的实施例的用于特定数据读取操作的数据读命令序列的示例示意图。
相应地,在接收到第二数据读命令和第三数据读命令后,在NAND存储器处,根据最后一级页表的基准地址和主机逻辑地址确定出物理地址,基于所确定的物理地址执行数据读取并返回给存储器控制器。NAND存储器处的特定数据读取操作将在下文参照附图详细说明。
在地址映射处理中确定出与主机逻辑地址对应的物理地址时,在步骤750,存储器控制器向NAND存储器发送第四数据读命令,第四数据读命令包括所确定出的物理地址(例如,0x45678)。相应地,在NAND存储器处,基于第四数据读命令中的物理地址执行数据读取并返回给存储器控制器。
在步骤760,存储器控制器接收NAND存储器返回的数据,并且在块770,将所接收的数据提供给主机100。
图9示出了根据本说明书的实施例的NAND器处的处理过程的示例流程图。在图9中示出的示例中,NAND存储器包括NAND控制器、ECC模块、NAND高速缓存和NAND寄存器,NAND高速缓存用于缓存所述多级页表,以及NAND寄存器用于存储数据。
如图9所示,在接收到第二数据读命令和第三数据读命令后,在步骤910,NAND控制器根据第二数据读命令中的Level2 L2P(最后一级页表)的基准地址,从NAND高速缓存中读取level2 L2P。
在步骤920,ECC模块对所读取的最后一级页表进行解码。如果ECC模块解码不成功,则在步骤930,NAND控制器将NAND寄存器置为全零模式,并在步骤970,将全零模式返回给存储器控制器作为数据读取完成响应。存储器控制器基于所接收的全零模式,将所读取的level2 L2P确定为level2 L2P的UECC实例。
如果ECC模块解码成功,则在步骤940,NAND控制器根据第三数据读命令中的主机逻辑地址,在Level2 L2P中确定出物理地址,并且在步骤950,将所确定出的物理地址设置为读操作中的地址。
在步骤960,NAND控制器根据所确定的物理地址对NAND寄存器执行数据读取,并且在步骤970,向存储器控制器返回数据读取完成响应。
如上参照图9描述了根据本说明书的实施例的特定数据读取处理过程。要说明的是,在本说明书的其它实施例中,NAND存储器也可以不包括ECC模块。相应地,可以不包括图9中的步骤920和930的操作。
利用该数据读取方法,按照多级页表方式对L2P映射表进行管理,在NAND存储器中存储L2P映射表的所有页表,并且SRAM在上电时从NAND存储器中加载多级页表的部分页表。在从主机接收到数据读命令后,存储器控制器根据数据读命令中的主机逻辑地址,首先在SRAM中执行地址映射处理,并且在SRAM中没有确定出物理地址后,根据SRAM中的地址映射结果来在NAND存储器中再次执行地址映射处理得到物理地址,随后使用所确定出的物理地址来执行数据读取,由此可以在无需DRAM存储L2P映射表的情况下实现数据读取操作。
如上参照图1到图9,对根据本说明书实施例的数据读取方法及数据读取装置进行了描述。上面的数据读取装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图10示出了根据本说明书的实施例的用于实现在第一成员节点处的联盟学习过程的计算设备的示意图。如图10所示,计算设备1000可以包括至少一个处理器1010、存储器(例如,非易失性存储器)1020、内存1030和通信接口1040,并且至少一个处理器1010、存储器1020、内存1030和通信接口1040经由总线1060连接在一起。至少一个处理器1010执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器1010:接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;使用所述主机逻辑地址,在所述SRAM的页表中执行地址映射处理;在所述地址映射处理中仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,所述第三数据读命令包括所述主机逻辑地址;接收所述NAND存储器响应于所述第二数据读命令和所述第三数据读命令而返回的数据;以及将所接收的数据提供给所述主机,其中,在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,基于所确定的物理地址执行数据读取并返回给所述存储器控制器。。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器1010进行本说明书的各个实施例中以上结合图1-9描述的各种操作和功能。
根据一个实施例,提供了一种比如机器可读介质(例如,非暂时性机器可读介质)的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-9描述的各种操作和功能。具体地,可以提供配有可读存储介质的***或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该***或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
根据一个实施例,提供了一种比如机器可读介质(例如,非暂时性机器可读介质)的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-9描述的各种操作和功能。具体地,可以提供配有可读存储介质的***或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该***或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各***结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (21)
1.一种由数据存储设备执行的用于读取数据存储设备中的数据的方法,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器存储数据以及所述多级页表的所有页表,所述SRAM在上电时从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述方法包括:
经由所述存储器控制器接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;
在所述存储器控制器处,使用所述主机逻辑地址来在所述SRAM的页表中执行地址映射处理;
在所述地址映射处理中仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,经由所述存储器控制器向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,所述第三数据读命令包括所述主机逻辑地址;
在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,基于所确定的物理地址执行数据读取并返回给所述存储器控制器;以及
经由所述存储器控制器,将所接收的数据提供给所述主机。
2.如权利要求1所述的方法,其中,所述SRAM还存储所述多级页表的最后一级页表,所述方法还包括:
在所述地址映射处理中确定出与所述主机逻辑地址对应的物理地址时,经由所述存储器控制器向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所确定出的物理地址;以及
在所述NAND存储器处,基于所述第四数据读命令中的物理地址执行数据读取。
3.如权利要求1所述的方法,其中,所述NAND存储器包括NAND控制器、NAND高速缓存和NAND寄存器,所述NAND高速缓存用于缓存所述多级页表,所述NAND寄存器用于存储数据,
在所述NAND存储器处,根据所述最后一级页表的基准地址和所述主机逻辑地址确定出物理地址,并且基于所确定的物理地址执行数据读取包括:
经由所述NAND控制器根据所述第二数据读命令中的最后一级页表的基准地址,从所述NAND高速缓存中读取所述最后一级页表;
经由所述NAND控制器根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址;以及
经由所述NAND控制器根据所确定的物理地址对所述NAND寄存器执行数据读取。
4.如权利要求3所述的方法,其中,所述NAND存储器具有错误检查纠正模块,所述方法还包括:
在经由所述NAND存储器根据所述第二数据读命令中的最后一级页表的基准地址读取所述最后一级页表后,经由所述错误检查纠正模块对所读取的最后一级页表进行解码。
5.如权利要求4所述的方法,其中,在所述NAND存储器处,根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址包括:
在所述错误检查纠正模块对所读取的最后一级页表解码成功后,经由所述NAND控制器根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址。
6.如权利要求4所述的方法,还包括:
在所述错误检查纠正模块对所读取的最后一级页表解码未成功时,经由所述NAND控制器将所述NAND寄存器置为全零模式,并将所述全零模式返回给所述存储器控制器。
7.如权利要求1所述的方法,其中,所述数据存储设备中保持所述最后一级页表的多个副本。
8.如权利要求3所述的方法,其中,所述NAND高速缓存和所述NAND寄存器位于同一SoC芯片上。
9.如权利要求1所述的方法,其中,所述多级页表包括三级页表,以及二级页表和对应的三级页表被写入所述NAND存储器的同一晶片中。
10.一种由存储器控制器执行的用于读取数据存储设备中的数据的方法,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器存储数据以及所述多级页表的所有页表,所述SRAM在上电时从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述方法包括:
接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;
使用所述主机逻辑地址,在所述SRAM的页表中执行地址映射处理;
在所述地址映射处理中仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,所述第三数据读命令包括所述主机逻辑地址;
接收所述NAND存储器响应于所述第二数据读命令和所述第三数据读命令而返回的数据,所返回的数据由所述NAND存储器基于根据所述最后一级页表的基准地址和所述主机逻辑地址确定出的物理地址执行数据读取得到;以及
将所接收的数据提供给所述主机。
11.如权利要求10所述的方法,其中,所述SRAM还存储所述多级页表的最后一级页表,所述方法还包括:
在所述地址映射处理中确定出与所述主机逻辑地址对应的物理地址时,向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所确定出的物理地址;以及
接收所述NAND存储器响应于所述第四数据读命令而返回的数据,所返回的数据由所述NAND存储器基于所述第四数据读命令中的物理地址执行数据读取得到。
12.如权利要求10所述的方法,其中,所述数据存储设备中保持所述最后一级页表的多个副本。
13.一种用于从数据存储设备读取数据的装置,所述数据存储设备包括存储器控制器、SRAM和NAND存储器,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述NAND存储器存储所述多级页表的所有页表,所述SRAM在上电时被从所述NAND存储器加载所述多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表,所述装置应用于所述存储器控制器,所述装置包括:
命令接收单元,被配置为接收主机发送的第一数据读命令,所述第一数据读命令包括主机逻辑地址;
地址映射单元,被配置为使用所述主机逻辑地址,在所述SRAM的页表中执行地址映射处理;
命令发送单元,被配置为在所述地址映射单元仅仅确定出与所述主机逻辑地址对应的最后一级页表的基准地址时,向所述NAND存储器发送第二数据读命令和第三数据读命令,所述第二数据读命令包括所述最后一级页表的基准地址,以及所述第三数据读命令包括所述主机逻辑地址;
数据接收单元,被配置为接收所述NAND存储器响应于所述第二数据读命令和所述第三数据读命令而返回的数据,所返回的数据由所述NAND存储器基于根据所述最后一级页表的基准地址和所述主机逻辑地址确定出的物理地址执行数据读取得到;以及
数据提供单元,被配置为将所接收的数据提供给所述主机。
14.如权利要求13所述的装置,其中,所述SRAM还存储所述多级页表的最后一级页表,所述命令发送单元还被配置为在所述地址映射单元确定出与所述主机逻辑地址对应的物理地址时,向所述NAND存储器发送第四数据读命令,所述第四数据读命令包括所确定出的物理地址,
所述数据接收单元被配置为接收所述NAND存储器响应于所述第四数据读命令而返回的数据,所返回的数据由所述NAND存储器基于所述第四数据读命令中的物理地址执行数据读取得到。
15.一种数据存储设备,所述数据存储设备的逻辑至物理映射表按照多级页表方式管理,所述数据存储设备包括:
存储器控制器,包括如权利要求13或14所述的装置;
SRAM,所述SRAM在上电时从NAND存储器加载多级页表的部分页表,所述部分页表包括所述多级页表中除了最后一级页表之外的剩余页表;以及
NAND存储器,所述NAND存储器存储数据以及所述多级页表的所有页表。
16.如权利要求15所述的数据存储设备,其中,所述NAND存储器包括NAND控制器、NAND高速缓存和NAND寄存器,所述NAND高速缓存用于缓存所述多级页表,所述NAND寄存器用于存储数据,
所述NAND控制器被配置为:
根据所述第二数据读命令中的最后一级页表的基准地址,从所述NAND高速缓存中读取所述最后一级页表;
根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址;以及
根据所确定的物理地址对所述NAND寄存器执行数据读取。
17.如权利要求16所述的数据存储设备,其中,所述NAND存储器还包括:
错误检查纠正模块,被配置为在所述NAND存储器根据所述第二数据读命令中的最后一级页表的基准地址读取所述最后一级页表后,对所读取的最后一级页表进行解码。
18.如权利要求17所述的数据存储设备,其中,所述NAND控制器被配置为:
在所述错误检查纠正模块对所读取的最后一级页表解码成功后,根据所述第三数据读命令中的主机逻辑地址,在所述最后一级页表中确定所述物理地址。
19.如权利要求17所述的数据存储设备,其中,所述NAND控制器还被配置为:
在所述错误检查纠正模块对所读取的最后一级页表解码未成功时,将所述NAND寄存器置为全零模式,并将所述全零模式返回给所述存储器控制器。
20.一种计算设备,包括:
至少一个处理器,以及
与所述至少一个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如权利要求10到12中任一所述的方法。
21.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求10到12中任一所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010686666.2A CN111831581B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
CN202110509254.6A CN113127378B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010686666.2A CN111831581B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110509254.6A Division CN113127378B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111831581A CN111831581A (zh) | 2020-10-27 |
CN111831581B true CN111831581B (zh) | 2021-05-14 |
Family
ID=72923339
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010686666.2A Active CN111831581B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
CN202110509254.6A Active CN113127378B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110509254.6A Active CN113127378B (zh) | 2020-07-16 | 2020-07-16 | 数据读取方法、装置及数据存储设备 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111831581B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831581B (zh) * | 2020-07-16 | 2021-05-14 | 长江存储科技有限责任公司 | 数据读取方法、装置及数据存储设备 |
TWI800764B (zh) * | 2020-10-30 | 2023-05-01 | 群聯電子股份有限公司 | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 |
CN112347010B (zh) * | 2020-11-09 | 2023-07-04 | 群联电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
CN112835520A (zh) * | 2021-01-29 | 2021-05-25 | 深圳忆联信息***有限公司 | 基于映射表动态加载的读请求处理方法及装置 |
WO2022205161A1 (en) | 2021-03-31 | 2022-10-06 | Yangtze Memory Technologies Co., Ltd. | File system and host performance booster for flash memory |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171200B1 (en) * | 2004-08-27 | 2012-05-01 | Marvell International Ltd. | Serially indexing a cache memory |
CN102541623A (zh) * | 2011-12-20 | 2012-07-04 | 北京控制工程研究所 | 一种嵌入式处理器的存储空间模拟方法 |
CN110908926A (zh) * | 2018-09-14 | 2020-03-24 | 慧荣科技股份有限公司 | 数据储存装置及逻辑至物理地址映射表的写入方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591782A (zh) * | 2011-01-17 | 2012-07-18 | 上海华虹集成电路有限责任公司 | 一种采用三级地址查找表的Nandflash存储*** |
KR20160078611A (ko) * | 2014-12-24 | 2016-07-05 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 동작 방법 |
US20170177497A1 (en) * | 2015-12-21 | 2017-06-22 | Qualcomm Incorporated | Compressed caching of a logical-to-physical address table for nand-type flash memory |
KR20180051706A (ko) * | 2016-11-07 | 2018-05-17 | 삼성전자주식회사 | 어드레스 맵핑 테이블의 에러 정정을 수행하는 메모리 시스템 |
US20180173619A1 (en) * | 2016-12-21 | 2018-06-21 | Sandisk Technologies Llc | System and Method for Distributed Logical to Physical Address Mapping |
CN106875963B (zh) * | 2017-02-21 | 2019-05-14 | 中国科学院上海微***与信息技术研究所 | 一种三维存储器读出电路及读出方法 |
TWI698874B (zh) * | 2018-08-31 | 2020-07-11 | 大陸商合肥沛睿微電子股份有限公司 | 快閃記憶體控制器及相關的存取方法及電子裝置 |
CN109324980A (zh) * | 2018-09-25 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种l2p表管理方法、数据读取方法、装置及设备 |
CN109359487B (zh) * | 2018-10-09 | 2022-02-18 | 湖北文理学院 | 一种基于硬件隔离的可扩展安全影子存储及标签管理方法 |
CN111831581B (zh) * | 2020-07-16 | 2021-05-14 | 长江存储科技有限责任公司 | 数据读取方法、装置及数据存储设备 |
-
2020
- 2020-07-16 CN CN202010686666.2A patent/CN111831581B/zh active Active
- 2020-07-16 CN CN202110509254.6A patent/CN113127378B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171200B1 (en) * | 2004-08-27 | 2012-05-01 | Marvell International Ltd. | Serially indexing a cache memory |
CN102541623A (zh) * | 2011-12-20 | 2012-07-04 | 北京控制工程研究所 | 一种嵌入式处理器的存储空间模拟方法 |
CN110908926A (zh) * | 2018-09-14 | 2020-03-24 | 慧荣科技股份有限公司 | 数据储存装置及逻辑至物理地址映射表的写入方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113127378B (zh) | 2024-04-26 |
CN111831581A (zh) | 2020-10-27 |
CN113127378A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111831581B (zh) | 数据读取方法、装置及数据存储设备 | |
CN109426619B (zh) | 访问快闪存储器模块的方法及相关闪存控制器与电子装置 | |
CN106354615B (zh) | 固态硬盘日志生成方法及其装置 | |
US20070016719A1 (en) | Memory device including nonvolatile memory and memory controller | |
US9483396B2 (en) | Control apparatus, storage device, and storage control method | |
CN110187826B (zh) | 键-值存储设备及其操作方法 | |
US20200350929A1 (en) | Memory system | |
US9563551B2 (en) | Data storage device and data fetching method for flash memory | |
TWI661303B (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
US20120005451A1 (en) | Data storage device and bad block managing method thereof | |
US8825946B2 (en) | Memory system and data writing method | |
EP1909184A2 (en) | Mapping information managing apparatus and method for non-volatile memory supporting different cell types | |
CN111752487A (zh) | 一种数据恢复方法、装置及固态硬盘 | |
US11614885B2 (en) | Data processing method for improving access performance of memory device and data storage device utilizing the same | |
US11709612B2 (en) | Storage and method to rearrange data of logical addresses belonging to a sub-region selected based on read counts | |
US10748638B2 (en) | Memory controller and memory system having the same | |
US20210279068A1 (en) | Memory system executing loading of software at startup and control method | |
US20180267715A1 (en) | Memory system, memory control device, and method of controlling memory system | |
TW201732533A (zh) | 資料儲存裝置及其操作方法 | |
US9329994B2 (en) | Memory system | |
US10733107B2 (en) | Non-volatile memory apparatus and address classification method thereof | |
CN110333966B (zh) | 一种固态硬盘设备 | |
US10698834B2 (en) | Memory system | |
US20170115925A1 (en) | Valid data merging method, memory controller and memory storage apparatus | |
US11636042B2 (en) | Data processing method for improving access performance of memory device and data storage device utilizing the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |