CN109857336B - 进行存取管理的方法、记忆装置及其控制器、电子装置 - Google Patents

进行存取管理的方法、记忆装置及其控制器、电子装置 Download PDF

Info

Publication number
CN109857336B
CN109857336B CN201811033195.4A CN201811033195A CN109857336B CN 109857336 B CN109857336 B CN 109857336B CN 201811033195 A CN201811033195 A CN 201811033195A CN 109857336 B CN109857336 B CN 109857336B
Authority
CN
China
Prior art keywords
logical
memory
entity table
entity
mapping information
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
Application number
CN201811033195.4A
Other languages
English (en)
Other versions
CN109857336A (zh
Inventor
李介豪
游正育
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silicon Motion Inc
Original Assignee
Silicon Motion Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Silicon Motion Inc filed Critical Silicon Motion Inc
Publication of CN109857336A publication Critical patent/CN109857336A/zh
Application granted granted Critical
Publication of CN109857336B publication Critical patent/CN109857336B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1008Correctness of operation, e.g. memory ordering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/657Virtual address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7206Reconfiguration of flash memory system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种用于在记忆装置中进行存取管理的方法、相关的记忆装置及其控制器以及相关的电子装置。所述方法包括:从主装置接收主装置指令和逻辑地址;进行检查操作以取得检查结果,以判断是否将逻辑‑实体表从非挥发性存储器加载到所述记忆装置的随机存取存储器;其中所述逻辑‑实体表包括用于存取所述目标数据的地址映射信息,且进行检查操作以取得检查结果包括检查指向所述逻辑‑实体表的第一逻辑‑实体表索引和自所述主装置发送的第二逻辑‑实体表索引是否彼此相等;以及从所述非挥发性存储器读取所述目标数据,并将所述目标数据发送至所述主装置。本发明能够确保记忆装置可分别在各种情况下正常运作并且提升整体安全性。

Description

进行存取管理的方法、记忆装置及其控制器、电子装置
技术领域
本发明是有关于存储器控制,尤指一种用以在记忆装置中进行存取管理的方法、相关记忆装置及其控制器以及相关电子装置。
背景技术
近年来由于存储器的技术不断地发展,各种可携式或非可携式记忆装置(例如分别符合安全数字(Secure Digital,SD)/多媒体记忆卡(Multimedia Card,MMC)、小型快速(compact flash,CF)、记忆棒(memory stick,MS)以及极度数字图像(Extreme Digital-Picture Card,XD-card)规范的记忆卡或符合通用闪存存储(Universal Flash Storage,UFS)与嵌入式多媒体记忆卡(embedded multimedia card,EMMC)的规格的嵌入式记忆装置)被广泛地实施于诸多应用中。因此,这些记忆装置中的存储器的存取控制遂成为相当热门的议题。
以常用的与非门(NAND)型闪存而言,其可包括单阶细胞(single level cell,SLC)和多阶细胞(multiple level cell,MLC)闪存。在单阶细胞闪存中,用作存储单元的每个晶体管可以具有分别用以表示逻辑值0和1的两个电荷值中的任何一个。而多阶细胞闪存中用作存储单元的每个晶体管的存储能力则可被充分利用,其中晶体管可由比单阶细胞闪存中的电压高的电压驱动,并且可以利用不同的电压位准来记录至少两位(例如00,01,11或10)的信息。理论上,多阶细胞闪存的记录密度可达到单阶细胞闪存的记录密度的至少两倍,因此是NAND型闪存的制造商所偏好的。
相较于单阶细胞闪存,多阶细胞闪存的较低成本和较大容量意味着它更可能被采用于记忆装置中。然而,多阶细胞闪存确实存在不稳定性的问题。为了确保记忆装置中闪存的存取控制符合相关规范,闪存的控制器通常备有某些管理机制以妥善地管理数据的存取。
具备上述管理机制的记忆装置仍然有不足之处。例如,所述多个记忆装置的其中之一可包括用于缓冲、管理等的随机存取存储器(random access memory),并且由于预算控制,所述随机存取存储器的存储容量通常不足。现有技术中尝试修正所述问题,但可能引入进一步的问题(例如副作用)。因此,需要具有强健的数据存取机制的新颖存储器存取设计,以保证记忆装置能分别在各种情况下正确操作。
发明内容
本发明的一目的是公开一种用于在一记忆装置中进行存取管理的一方法、相关的记忆装置及其控制器和相关的电子装置,以解决上述问题。
本发明的另一个目的是公开一种用于在一记忆装置中进行存取管理的一方法、相关的记忆装置及其控制器和相关的电子装置,以确保记忆装置能分别在各种情况下正确操作。
本发明的又一个目的是公开一种用于在一记忆装置中进行存取管理的一方法、相关的记忆装置及其控制器和相关的电子装置,以在不引入现有技术问题的情况下以没有任何副作用或不太可能引入副作用的方式解决现有技术问题。
本发明的至少一实施例公开一种用于在记忆装置中进行存取管理的方法。记忆装置可包括非挥发性存储器,并且非挥发性存储器可包括至少一非挥发性存储器组件(例如,一个或多个非挥发性存储器组件)。所述方法可包括:从一主装置(host device)接收一主装置指令和一逻辑地址,其中所述主装置指令是一读取指令,并且所述主装置指令和所述逻辑地址的组合指出用以存取目标数据的一请求,且所述目标数据对应于来自所述非挥发性存储器的所述逻辑地址;依据用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的所述请求,进行至少一检查操作以取得至少一检查结果,以供判断是否将一逻辑-实体(logical-to-physical,L2P)表从所述非挥发性存储器加载(load)到所述记忆装置的一随机存取存储器(random access memory,RAM),其中所述逻辑-实体表包括用于存取所述目标数据的地址映射信息,且进行所述至少一检查操作以取得所述至少一检查结果包括检查指向所述逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的一第二逻辑-实体表索引是否彼此相等;以及从所述非挥发性存储器读取所述目标数据,并将所述目标数据发送至所述主装置。
除了上述方法之外,本发明还公开了一种记忆装置,并且所述记忆装置包括一非挥发性存储器和一控制器。所述非挥发性存储器是用以存储信息,其中所述非挥发性存储器可以包括至少一非挥发性存储器组件(例如,一个或多个非挥发性存储器组件)。所述控制器耦接至所述非挥发性存储器,并且所述控制器是用以控制所述记忆装置的操作。另外,所述控制器包括一处理电路,其是用以根据来自一主装置的多个主装置指令来控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器。例如,控制器从所述主装置接收一主装置指令和一逻辑地址,其中所述主装置指令是一读取指令,并且所述主装置指令和所述逻辑地址的组合指出用以存取目标数据的一请求,且所述目标数据对应于来自所述非挥发性存储器的所述逻辑地址;依据用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的所述请求,所述控制器进行至少一检查操作以取得至少一检查结果,以供判断是否将一逻辑-实体表从所述非挥发性存储器加载至所述记忆装置的一随机存取存储器,其中所述逻辑-实体表包括用于存取所述目标数据的地址映射信息,且在进行所述至少一检查操作以取得所述至少一检查结果的期间,所述控制器检查指向所述逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的一第二逻辑-实体表索引是否彼此相等;以及所述控制器从所述非挥发性存储器读取所述目标数据,并将所述目标数据发送至所述主装置。
根据某些实施例,本发明另外公开了一相关电子装置。所述电子装置可以包括上述记忆装置,并且可还包括:耦接至所述记忆装置的所述主装置。所述主装置可包括:至少一处理器,其中所述至少一处理器是用以控制所述主装置的操作;以及耦接到所述至少一处理器的一电源供应电路,其中所述电源供应电路是用以提供电源予所述至少一处理器和所述记忆装置。另外,所述记忆装置可提供存储空间给所述主装置。
除了上述方法之外,本发明还公开了一种记忆装置的一控制器,其中所述记忆装置包括所述控制器和一非挥发性存储器。所述非挥发性存储器可包括至少一非挥发性存储器组件(例如,一个或多个非挥发性存储器组件)。另外,所述控制器包括一处理电路,其是用以根据来自一主装置的多个主装置指令来控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器。例如,所述控制器从所述主装置接收一主装置指令和一逻辑地址,其中所述主装置指令是一读取指令,并且所述主装置指令和所述逻辑地址的组合指出用以存取目标数据的一请求,且所述目标数据对应于来自所述非挥发性存储器的所述逻辑地址;依据用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的所述请求,所述控制器进行至少一检查操作以取得至少一检查结果,以供判断是否将一逻辑-实体表从所述非挥发性存储器加载至所述记忆装置的一随机存取存储器,其中所述逻辑-实体表包括用于存取所述目标数据的地址映射信息,且在进行所述至少一检查操作以取得所述至少一检查结果的期间,所述控制器检查指向所述逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的一第二逻辑-实体表索引是否彼此相等;以及所述控制器从所述非挥发性存储器读取所述目标数据,并将所述目标数据发送至所述主装置。
本发明的方法和装置能保证记忆装置可分别在各种情况下正常运作。另外,本发明的方法和装置公开了一种强大的数据存取机制。因此,可以实现各种目标,如效能优化、高安全性、预算控制等。此外,本发明的方法和装置可以在不引入任何副作用或以不太可能引入副作用的方式解决现有技术问题。
附图说明
图1是根据本发明一实施例的一记忆装置和一主装置的示意图。
图2是根据本发明一实施例的用以在图1所示的所述记忆装置中进行存取管理的方法的一地址映射控制方案。
图3是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一双读取控制方案。
图4是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一主机拥有信息检查控制方案。
图5是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一随机存取存储器共享控制方案。
图6是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的工作流程。
其中,附图标记说明如下:
10 电子装置
100 记忆装置
50 主装置
52 处理器
54 电源供应电路
110 存储器控制器
112 微处理器
112M 只读存储器
112C 程序代码
114 控制逻辑电路
116 随机存取存储器
118 传输接口电路
120 非挥发性存储器
122-1、122-2、…、122-N 非挥发性存储器组件
201 全局逻辑-实体地址映射表
212 索引表
211 暂时局部逻辑-实体地址映射表
213 数据缓冲器
214 主机拥有信息缓冲器
MI 映射信息
56 随机存取存储器
58 共享存储器区域
510、512、513、514、 步骤
516、517、520
具体实施方式
I.存储器系统
图1是根据本发明一实施例的一电子装置10的示意图,其中电子装置10可以包括一主装置50和一记忆装置100。主装置50可包括至少一处理器(例如一个或多个处理器),其可统称为处理器52,并且可还包括耦接至处理器52的一电源供应电路54,处理器52是用以控制主装置50的运作,而电源供应电路54是用以提供电源予处理器52和记忆装置100,并且输出一个或多个驱动电压至记忆装置100。记忆装置100可用以提供存储空间给主装置50,并且自主装置50取得所述一个或多个驱动电压,用以作为记忆装置100的电源。主装置50的例子可包括(但不限于):一多功能移动电话、一平板计算机、一穿戴式装置以及个人计算机(诸如桌面计算机和笔记本电脑)。记忆装置100的例子可包括(但不限于):一可携式记忆装置(例如符合SD/MMC,CF,MS或XD规范的记忆卡)、一固态硬盘(solid state drive,SSD)以及分别符合UFS和EMMC规范的各类型的记忆装置的嵌入式记忆装置。根据本实施例,记忆装置100可包括一控制器诸如存储器控制器110,并且可还包括非挥发性(non-volatile,NV)存储器120,其中所述控制器是用以控制记忆装置100的运作并存取非挥发性存储器120,而非挥发性存储器120是用以存储信息。非挥发性存储器120可以包括至少一非挥发性存储器组件(例如:一个或多个非挥发性存储器组件),诸如多个非挥发性存储器组件122-1、122-2、...以及122-N,其中“N”可为大于1的正整数。例如,非挥发性存储器120可为一闪存,并且多个非挥发性存储器组件122-1、122-2、...和122-N可为多个闪存芯片或多个闪存晶粒,但本发明不限于此。
如图1所示,存储器控制器110可包括一处理电路诸如微处理器112、一存储器诸如只读存储器(read-only memory,ROM)112M、一控制逻辑电路114、一随机存取存储器(random access memory,RAM)116以及一传输接口电路118,其中上列组件可通过总线彼此耦接。随机存取存储器116由静态随机存取存储器(Static RAM,SRAM)实现,但本发明不限于此。随机存取存储器116可用以提供内部存储空间给存储器控制器110。举例来说,随机存取存储器116可作为用于缓冲数据的一缓冲存储器。另外,本实施例的只读存储器112M是用以存储一程序代码112C,并且微处理器112是用以执行程序代码112C以控制闪存120的存取。需注意的是,在某些例子中,程序代码112C可存储在随机存取存储器116或任何类型的存储器中。另外,控制逻辑电路114中的数据保护电路(未示出)可保护数据及/或进行错误校正,并且传输接口电路118可符合一特定的通信规范(例如序列高级技术配置(SerialAdvanced Technology Attachment,SATA)规范、通用总线(Universal Serial Bus,USB)规范、快捷周边互连(Peripheral Component Interconnect Express,PCIE)规范、嵌入式多媒体卡(embedded Multi Media Card,eMMC)规范或通用闪存存储(Universal FlashStorage,UFS)规范),并且可以根据所述特定通信规范进行通信。
在本实施例中,主装置50可以将主装置指令和对应的逻辑地址发送到存储器控制器110以存取记忆装置100。存储器控制器110接收主装置指令和逻辑地址,并将主装置指令转换成存储器操作指令(其可简称为操作指令),并且进一步用操作指令控制非挥发性存储器120以对在闪存120内具有实体地址的存储器单元(例如,数据页)进行读取、写入/编程等,其中实体地址对应于逻辑地址。当存储器控制器110对多个非挥发性存储器组件122-1、122-2、...、和122-N中的任何一非挥发性存储器组件122-n(其中“n”可为区间[1,N]中的正整数)进行一抹除操作时,挥发性存储器组件122-n中多个区块的至少一区块可被抹除,其中所述多个区块的每一区块可包括多个页(例如数据页),且一存取操作(例如读取或写入)可在一个或多个页上进行。
II.数据存取机制
根据某些实施例,所述处理电路诸如微处理器112可用以根据来自主装置50的多个主装置指令来控制存储器控制器110,以容许主装置50通过存储器控制器110来存取非挥发性存储器120。存储器控制器110可为主装置50将数据存储到非挥发性存储器120中,因应来自主装置50的一主装置指令(例如,多个主装置指令中的一个)读取所存储的数据,并且将从非挥发性存储器120读取的数据提供给主装置50。为了提升记忆装置100的效能,主装置50可被设计去取得记忆装置100的某些内部信息。主装置50可将先前从记忆装置100取得的内部信息发送回记忆装置100,以容许记忆装置100使用刚刚从主装置50发送的内部信息来存取非挥发性存储器120中所存储的数据。于是,记忆装置100可利用并共享主装置50的一随机存取存储器,这是因为从主装置50发送的内部信息可以已被暂时存储在主装置50的随机存取存储器中。存储器控制器110(例如,执行程序代码112C的微处理器112)可根据本发明的方法控制记忆装置100的操作,以确保记忆装置100能分别在各种情况下正确地操作。例如,从主装置50发送的内部信息可能不正确,而存储器控制器110可侦测到这种情况并且防止记忆装置100的故障等。又例如,信息可能被窜改,而存储器控制器110可侦测到这种情况并防止某些安全问题。
图2是根据本发明一实施例的用以在图1所示的所述记忆装置中进行存取管理的方法的一地址映射控制方案。非挥发性存储器120中的非挥发性存储器组件122-1、122-2、...和122-N中的每一个可包括多个实体区块,并且每个实体区块可以包括多个实体页。在所述处理电路诸如微处理器112的控制下,存储器控制器110可将全局(global)逻辑-实体(logic-to-physical,L2P)地址映射表201存储在非挥发性存储器120中,并根据非挥发性存储器120的使用来维护(例如,改变及/或更新)全局逻辑-实体地址映射表201。全局逻辑-实体地址映射表201可包括多个局部逻辑-实体地址映射表(为了简洁,在图2中标记为“逻辑-实体表”),其中所述多个局部逻辑-实体地址映射表中的任何一个局部逻辑-实体地址映射表可包括用于将逻辑地址(例如,与主装置指令相关联的地址,其用以存取存储在非挥发性存储器120中的数据)映射到实体地址(例如指向非挥发性存储器120内存储的数据的位置的地址)的多组逻辑-实体地址映射信息,并且所述多组逻辑-实体地址映射信息内的任何一组可以是用于将一主装置指令的逻辑地址映射到非挥发性存储器120的一实体地址的映射信息(Mapping Information;可简称MI)。
另外,存储器控制器110可将多个局部逻辑-实体地址映射表中的至少一局部逻辑-实体地址映射表(例如,一个或多个局部逻辑-实体地址映射表)存储(例如,加载)到随机存取存储器116中以作为暂时局部逻辑-实体地址映射表211,并且根据非挥发性存储器120的使用来维护(例如,改变及/或更新)暂时局部逻辑-实体地址映射表211。当需要时,存储器控制器110可更新全局逻辑-实体地址映射表201。为了更好的理解,在暂时局部逻辑-实体地址映射表211中可绘示多个标记为“MI”的框以表示其内的多组逻辑-实体地址映射信息,但本发明不限于此。例如,这些组逻辑-实体地址映射信息中的一组可以是用于将第一逻辑地址映射到第一实体地址的映射信息。又例如,这些组逻辑-实体地址映射信息中的另一组可以是用于将第二逻辑地址映射到第二实体地址的映射信息。根据某些实施例,所述局部逻辑-实体地址映射表中的所述多组逻辑-实体地址映射信息的实施可予以变化。例如,所述局部逻辑-实体地址映射表中的任何一组逻辑-实体地址映射信息可包括一实体地址,并且所述实体地址在所述局部逻辑-实体地址映射表中的相对于其他实体地址的排行(ranking)可代表一逻辑地址,但本发明不限于此。又例如,所述局部逻辑-实体地址映射表中的所述多组逻辑-实体地址映射信息中的任何一组逻辑-实体地址映射信息可包括一逻辑地址和一实体地址。
此外,存储器控制器110可将索引表212存储在随机存取存储器116中,并且根据非挥发性存储器120的使用来维护(例如,改变及/或更新)索引表212。索引表212可包括多个逻辑-实体表索引,且所述多个逻辑-实体表索引中的一个逻辑-实体表索引可以是用于索引一个逻辑-实体表(诸如所述多个局部逻辑-实体地址映射表的其中之一)的索引。例如,所述逻辑-实体表索引可以是指向存储所述逻辑-实体表的位置(例如,某一个实体区块中的某一个实体页)的一实体地址,并且存储器控制器110可根据所述逻辑-实体表索引查找所述逻辑-实体表。
根据某些实施例,存储器控制器110可向主装置50发送记忆装置100的一组内部映射信息,以容许主装置50拥有所述组内部映射信息,以供增强记忆装置100的效能。例如,所述组内部映射信息可包括所述多个局部逻辑-实体地址映射表内的一组局部逻辑-实体地址映射表的副本,且可还包括所述组局部逻辑-实体表的逻辑-实体表索引,其中所述组局部逻辑-实体表的所述多个逻辑-实体映射表索引可分别指向所述组局部逻辑-实体地址映射表各自被存储的位置。
当主装置50发送一主装置指令以存取于一逻辑区块地址处的目标数据时,主装置50可发送在所述组内部映射信息内的相应的内部映射信息。所述相应的内部映射信息可包括一局部逻辑-实体地址映射表,诸如具有所述逻辑区块地址的所述组逻辑-实体地址映射信息(例如,MI)的局部逻辑-实体地址映射表,以供查找存储着所述目标数据的实体区块和实体页。所述相应的内部映射信息可还包括这个局部逻辑-实体地址映射表的逻辑-实体表索引,诸如指向存储这个局部逻辑-实体地址映射表的位置的逻辑-实体表索引,以供检查所述相应的内部映射信息的正确性,例如,检查它是否满足某些条件,诸如:所述相应的内部映射信息并未过时;以及所述相应的内部映射信息并未遭受(为了不良意图的)窜改。
存储器控制器110可以检查所述相应的内部映射信息内的所述逻辑-实体表索引是否与存储在索引表212中的相同,以确定所述对应的内部映射信息是否正确。当所述对应的内部映射信息中的所述逻辑-实体表索引与存储在索引表212中的逻辑-实体表索引相同时,存储器控制器110判断所述对应的内部映射信息是正确的(这可以指出:所述对应的内部映射信息没有过时;并且相应的内部映射信息未被窜改),且因此存储器控制器110可利用这个局部逻辑-实体地址映射表作为用于查找所述目标数据的参考;否则,存储器控制器110判断所述相应的内部映射信息是不正确的(其可以指出:所述相应的内部映射信息已过时;或所述相应的内部映射信息被窜改),且因此存储器控制器110可不利用这个局部逻辑-实体地址映射表作为查找所述目标数据的参考。对于所述相应的内部映射信息不正确的情况,存储器控制器110可利用其自己版本的内部映射信息,诸如索引表212中的正确的逻辑-实体表索引和通过索引表212中这个正确的逻辑-实体表索引所找到的局部逻辑-实体地址映射表。
图3是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一双读取控制方案。存储器控制器110可在所述相应的内部映射信息不正确的情况下根据所述双读取控制方案来控制记忆装置100,但本发明不限于此。例如,在存储器控制器110尚未向主装置50发送记忆装置100的所述组内部映射信息的情况下,存储器控制器110可根据所述双读取控制方案来控制存储器件100。又例如,无论存储器控制器110是否已经向主装置50发送了记忆装置100的所述组内部映射信息,存储器控制器110可在需要时根据所述双读取控制方案来控制记忆装置100。
为了更好的理解,假设相应的内部映射信息是不正确的,而因此存储器控制器110可以利用其自己版本的内部映射信息,诸如索引表212中的正确的逻辑-实体表索引和通过索引表212中这个正确的逻辑-实体表索引所找到的局部逻辑-实体地址映射表(于图3标示为“逻辑-实体表”)。例如,存储器控制器110可读取通过这个正确的逻辑-实体表索引所找到的局部逻辑-实体地址映射表,并且这个读取操作可被视为用于存取所述目标数据的第一读取操作(在图3中标记为“第一读取操作”)。第一读取操作的结果例如:暂时局部逻辑-实体地址映射表211可包括用于查找所述目标数据的所述组逻辑-实体地址映射信息(例如,MI),诸如将所述目标数据的所述逻辑地址(例如,所述目标数据的所述逻辑区块地址,如用以请求所述目标数据的所述主装置指令所指示)映射到所述实体地址(例如,至少一实体地址,诸如实体区块地址连同用以指出所述目标数据存储在哪个实体页的实体页地址)的所述组逻辑-实体地址映射信息。如图3所示,所述组逻辑-实体地址映射信息诸如指向某一实体区块(标记为“区块”)当中的多个实体页(标记为“页”)中的一页的映射信息指出:存储器控制器110能根据所述组逻辑-实体地址映射信息(例如MI)找到所述目标数据(标记为“数据”)。存储器控制器110可从这个实体页读取所述目标数据,并且这个读取操作可被视为用于存取所述目标数据的第二读取操作(在图3中标记为“第二读取操作”)。第二读取操作的结果例如:数据缓冲器213可包括所述目标数据(标记为“数据”),以供被主装置50存取。例如,主装置50可通过直接存储器存取(direct memory access,DMA)来读取数据缓冲器213中的所述目标数据。
根据某些实施例,将所述多个局部逻辑-实体地址映射表中的上述至少一局部逻辑-实体地址映射表(例如,所述一个或多个局部逻辑-实体地址映射表)加载到随机存取存储器116中以作为暂时局部逻辑-实体地址映射表211的操作可包括读取通过索引表212中的所述正确的逻辑-实体表索引所找到的局部逻辑-实体地址映射表。
图4是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一主机拥有信息(host-owned information,HOI)检查控制方案。由于存储器控制器110已经将记忆装置100的所述组内部映射信息发送到主装置50,故主装置50中的所述组内部映射信息可被视为主机拥有信息。当发送诸如上面提到的主装置指令以存取所述目标数据时,主装置50可发送所述组逻辑-实体地址映射信息(例如,MI)连同所述逻辑-实体表索引(两者都发送),诸如所述组逻辑-实体地址映射信息(例如MI)和所述主机拥有信息内的所述逻辑-实体表索引的组合。于是,记忆装置100可接收所述组逻辑-实体地址映射信息(例如,MI)连同所述逻辑-实体表索引,诸如所述组逻辑-实体地址映射信息(例如MI)和所述主机拥有信息内的所述逻辑-实体表索引的组合,并且可将它们存储在主机拥有信息缓冲器214中。
存储器控制器110可检查主机拥有信息缓冲器214中的所述逻辑-实体表索引与上述正确的逻辑-实体表索引(例如图4中所示索引表212中的逻辑-实体表索引)是否相同,以判断是否利用主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)来作为用以存取所述目标数据的参考。当主机拥有信息缓冲器214中的所述逻辑-实体表索引与所述正确的逻辑-实体表索引相同时,存储器控制器110可利用主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)作为用以存取所述目标数据的参考;否则(这意味着主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)可能过时或可能不可靠),则存储器控制器110可避免使用主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)作为用于存取所述目标数据的参考,并且可根据图3所示的双读取控制方案来控制记忆装置100。
如图4所示,索引表212中的所述正确的逻辑-实体表索引和主机拥有信息缓冲器214中的所述逻辑-实体表索引均指向相同的逻辑-实体地址映射表,这是由于主机拥有信息缓冲器214的所述逻辑-实体表索引与所述正确的逻辑-实体表索引相同。在此情况下,主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如MI)可为可靠的且并非过时的。存储器控制器110可根据主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)找到所述目标数据(标记为“数据”)。存储器控制器110可从主机拥有信息缓冲器214中的所述组逻辑-实体地址映射信息(例如,MI)所指出的某一个实体页读取所述目标数据,并且此读取操作可被视为用于存取所述目标数据的单一读取操作(在图4中标记为“读取操作”)。单一读取操作的结果例如:数据缓冲器213可包括所述目标数据(标记为“数据”),以供被主装置50存取。例如,主机数据50可通过直接存储器存取来读取数据缓冲器213中的所述目标数据。
基于图4所示的主机拥有信息检查控制方案,当主机拥有信息缓冲器214中的所述逻辑-实体表索引与所述正确的逻辑-实体表索引相同时,存储器控制器110可通过所述单一读取操作快速取得所述目标数据,其比多次读取操作(例如第一和第二读取操作)速度快很多。于是,记忆装置100的效能得到提升,并且电子装置的整体效能也得到提升。
另外,检查主机拥有信息缓冲器214中的所述逻辑-实体表索引是否与所述正确的逻辑-实体表索引相同的操作可以防止记忆装置100为主装置50自非挥发性存储器120中取得不对的数据(例如,旧数据或无效数据)。因此,图4所示的主机拥有信息检查控制方案可保证记忆装置100所采用的相应的内部映射信息不会是过时的,也不会是因不良意图而窜改过的。另外,由于不对的数据而导致存储器系统错误发生的可能性可大大降低。
图5是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的一随机存取存储器共享控制方案。根据此实施例,主装置50可包括至少一处理器(例如,一个或多个处理器),诸如处理器52,并且可包括随机存取存储器56,其中随机存取存储器56可包括一共享存储器区域58。存储器控制器110可提供信息诸如所述组内部映射信息给主装置50,并且主装置50可在请求所述目标数据时向记忆装置100发送主机拥有信息的至少一部分(例如,一部分或全部),例如可通过发送主装置指令诸如一读取指令。举例来说,所述主机拥有信息的上述至少一部分可包括所述组逻辑-实体地址映射信息(例如,MI)连同所述逻辑-实体表索引,诸如所述组逻辑-实体地址映射信息(例如,MI)和所述主机拥有信息内的所述逻辑-实体表索引的组合。当所述组逻辑-实体地址映射信息(例如,MI)和所述主机拥有信息内的所述逻辑-实体表索引的组合是正确的并且没有过时,存储器控制器110可根据图4所示的主机拥有信息检查控制方案来控制记忆装置100(而非图3所示的双读取控制方案),以通过所述单一读取操作(在图4中标记为“读取操作”)来取得所述目标数据。
基于本发明所提出的方法的各种控制方案,如图3所示的双读取控制方案、图4所示的主机拥有信息检查控制方案以及图5所示的随机存取存储器共享控制方案,当随机存取存储器116的存储容量不足(例如由于有限预算的设计、成本降低的设计等),本发明方法和相关架构能以不引入任何副作用或者以不太可能引入副作用的方式解决现有技术问题。
表1
L2P_Table(1) B:5,P:3
L2P_Table(2) B:5,P:4
L2P_Table(3) B:5,P:5
L2P_Table(4) B:5,P:6
L2P_Table(5) B:5,P:7
表2
LBA(NL) B:6,P:0
LBA(NL+1) B:6,P:1
LBA(NL+2) B:6,P:2
LBA(NL+3) B:6,P:3
LBA(NL+4) B:6,P:4
表1为索引表212的一个例子,为简明起见,符号“…”表示某些表格内容在此省略。表1的第二列(column)中的逻辑-实体表索引{{B:5,P:3},{B:5,P:4},{B:5,P:5},{B:5,P:6},{B:5,P:7},…}能当作所述多个逻辑-实体表索引的例子,其中符号“B:”可表示其旁边的数字为一实体区块的一区块索引(block index),以及符号“P:”可表示其旁边的数字为一实体页的一页索引(page index)。通过表1的第二列中的逻辑-实体表索引{B:5,P:3}、{B:5,P:4}、{B:5,P:5}、{B:5,P:6}、{B:5,P:7}等,存储器控制器110能分别找出逻辑-实体表L2P_Table(1)、L2P_Table(2)、L2P_Table(3)、L2P_Table(4)、L2P_Table(5)等(诸如列于表1的第一列中的逻辑-实体表)。
表2为逻辑-实体表L2P_Table(1)的一个例子,为简明起见,符号“…”表示某些表格内容在此省略。表2的第二列中的映射信息{{B:6,P:0},{B:6,P:1},{B:6,P:2},{B:6,P:3},{B:6,P:4},…}能当作逻辑-实体表L2P_Table(1)中的所述映射信息(例如,MI)的一个例子,其中符号“B:”可表示其旁边的数字为一实体区块的一区块索引,以及符号“P:”可表示其旁边的数字为一实体页的一页索引。通过表2的第二列中的映射信息{B:6,P:0}、{B:6,P:1}、{B:6,P:2}、{B:6,P:3}、{B:6,P:4}等,存储器控制器110能分别找出逻辑地址LBA(NL)、LBA(NL+1)、LBA(NL+2)、LBA(NL+3)、LBA(NL+4)等(诸如列于表2的第一列中的逻辑地址)的数据。
在一第一时间点,如逻辑-实体表索引{B:5,P:3}所示,存储器控制器110可能已将逻辑-实体表L2P_Table(1)存储于实体区块BLOCK(5)的实体页PAGE(3)中,并且将所述组内部映射信息(包括有映射信息{B:6,P:0}以及逻辑-实体表索引{B:5,P:3}的组合)发送至主装置50。
表3
LBA(NL) B:5,P:3 B:6,P:0
表4
L2P_Table(1) B:5,P:8
L2P_Table(2) B:5,P:4
L2P_Table(3) B:5,P:5
L2P_Table(4) B:5,P:6
L2P_Table(5) B:5,P:7
表5
Figure BDA0001790247840000151
Figure BDA0001790247840000161
表3为在所述第一时间点被发送至主装置50的所述组映射信息中的映射信息{B:6,P:0}以及逻辑-实体表索引{B:5,P:3}的上述组合的一个例子,表4为索引表212的另一个例子,以及表5为逻辑-实体表L2P_Table(1)的另一个例子,其中表4为表1的一更新版本,且表5为表2的一更新版本。关于逻辑地址LBA(NL),存储器控制器110可在所述第一时间点之后的一第二时间点进行一重写(re-write)操作,并且可分别更新索引表212以及逻辑-实体表L2P_Table(1)如表4以及表5所示,以对应非挥发性存储器120的最新使用状态,其中逻辑-实体表索引{B:5,P:3}已被改为逻辑-实体表索引{B:5,P:8}(如表4的右上角所示)且映射信息{B:6,P:0}已被改为映射信息{B:6,P:5}(如表5右上角所示)。举例来说,如逻辑-实体表索引{B:5,P:8}所示,存储器控制器110可将逻辑-实体表L2P_Table(1)存储于实体区块BLOCK(5)的实体页PAGE(8)中。
之后,主装置50可将一读取指令发送至记忆装置100以要求或请求所述目标数据诸如逻辑地址LBA(NL)的数据。主装置50也可将映射信息{B:6,P:0}以及逻辑-实体表索引{B:5,P:3}的组合发送至记忆装置100。在对应的内部映射信息(诸如所述组合的内部映射信息)为不正确的情况下,存储器控制器110可使用其自己版本的内部映射信息,诸如在索引表212中的这个正确的逻辑-实体表索引(例如,逻辑-实体表索引{B:5,P:8})以及通过索引表212中的正确的逻辑-实体表索引找到的局部逻辑-实体地址映射表(例如,通过逻辑-实体表索引{B:5,P:8}找到的逻辑-实体表L2P_Table(1))。因此,存储器控制器110可取得如映射信息{B:6,P:5}所示的在实体区块BLOCK(6)的实体页PAGE(5)中的所述目标数据的正确版本,而不是如映射信息{B:6,P:0}所示的在实体区块BLOCK(6)的实体页PAGE(0)中的所述目标数据的旧版本。
依据某些实施例,表1的逻辑-实体表索引{B:5,P:3}、{B:5,P:4}、{B:5,P:5}、{B:5,P:6}、{B:5,P:7}等的任一者中的区块索引及页索引可代表所述对应的实体区块的所述对应的实体页的一实体地址,但本发明不限于此。依据某些实施例,表2的映射信息{B:6,P:0}、{B:6,P:1}、{B:6,P:2}、{B:6,P:3}、{B:6,P:4}等的任一者中的区块索引及页索引可代表所述对应的实体区块的所述对应的实体页的一实体地址,但本发明不限于此。
图6是根据本发明一实施例的用以在所述记忆装置中进行存取管理的方法的工作流程。
在步骤510中,记忆装置100可从主装置50接收主装置指令READ_CMD、相关逻辑地址REQUEST_LBA、逻辑-实体表索引INDEX_HOI、和映射信息L2P_Info。根据此实施例,读取指令可作为主装置指令READ_CMD的例子,所述目标数据的所述逻辑地址可作为逻辑地址REQUEST_LBA的例子,主装置50所发送并且被存储在主机拥有信息缓冲器214的所述逻辑-实体表索引可作为逻辑-实体表索引INDEX_HOI的一个例子,并且所述目标数据的所述组逻辑-实体地址映射信息(例如,MI),诸如主装置50所发送并且被存储在主机拥有信息缓冲器214的所述组逻辑-实体地址映射信息(例如,MI),可作为映射信息L2P_Info的例子,但本发明不限于此。举例来说,当主装置50异常地操作时,映射信息L2P_Info可能已被窜改或者可能已变得与所述目标数据无关。又例如,主装置50是正常地操作,但映射信息L2P_Info可能已变得过时(out of date)。
在步骤512中,存储器控制器110可检查映射信息L2P_Info的理想版本(例如,图3中所示的MI)是否存在于记忆装置100的随机存取存储器116中。这可以根据上列控制方案中的一个或多个控制方案(例如,图3所示的双读取控制方案、图4所示的主机拥有信息检查控制方案、及/或图5所示的随机存取存储器共享控制方案)来实现,但本发明不限于此。根据此实施例,存储器控制器110可利用其自己版本的内部映射信息,诸如指向所述目标数据并在暂时局部逻辑-实体地址映射表211中为可得的(available)的所述组逻辑-实体地址映射信息(例如,MI),来作为映射信息L2P_Info的理想版本,其中存储器控制器110可从通过索引表212中的正确的逻辑-实体表索引所找到的局部逻辑-实体地址映射表中取得所述组逻辑-实体地址映射信息(例如,MI)。当映射信息L2P_Info的理想版本存在于记忆装置100的随机存取存储器116中,进入步骤516;否则,进入步骤513。
在步骤513中,存储器控制器110可检查逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI是否彼此相等。依据本实施例,在索引表212中的上述正确的逻辑-实体表索引可作为逻辑-实体表索引INDEX_INSIDE的一个例子。当逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI彼此相等(其可指出映射信息L2P_Info是正确的),进入步骤517;否则(其可指出映射信息L2P_Info是不正确的),进入步骤514。
在步骤514中,存储器控制器110可加载逻辑-实体表,诸如在上述第一读取操作中读取的逻辑-实体表。例如,在映射信息L2P_Info已变得过时的状况下,存储器控制器110可避免使用映射信息L2P_Info作为读取所述目标数据的参考。
在步骤516中,存储器控制器110可从所述实体页读取所述目标数据(例如,在第二读取操作中读取的数据。
在步骤517中,存储器控制器110可依据映射信息L2P_Info从所述实体页读取所述目标数据(例如,在单一读取操作中读取的数据)。
在步骤520中,存储器控制器110可将所述目标数据发送到主装置50。举例来说,不论映射信息L2P_Info是否已变得过时,存储器控制器110能正确地读取所述目标数据并且如往常地向主装置50发送出其所请求的数据(例如,所述目标数据)。
根据本实施例,在步骤510中提到的主装置指令READ_CMD和逻辑地址REQUEST_LBA的组合可以指出或代表用以从非挥发性存储器120存取对应逻辑地址REQUEST_LBA的所述目标数据的一请求。依据用以从非挥发性存储器120存取对应逻辑地址REQUEST_LBA的所述目标数据的所述请求,存储器控制器110可进行至少一检查操作(例如,一或多个检查操作)诸如步骤512和步骤513中的检查操作,以取得至少一检查结果(例如,一或多个检查结果)诸如步骤512和步骤513中的检查结果,来确定是否将步骤514中提到的逻辑-实体表从非挥发性存储器120加载到随机存取存储器116,其中所述逻辑-实体表可包括用于存取所述目标数据的地址映射信息,诸如所述组逻辑-实体地址映射信息(例如MI)。另外,在步骤512中的检查结果可指出映射信息L2P_Info的理想版本是否存在于随机存取存储器116。当基于此检查结果而进入步骤516时,存储器控制器110可在步骤516中依据映射信息L2P_Info的理想版本从非挥发性存储器120读取所述目标数据,其中,当进行从非挥发性存储器120读取所述目标数据的操作时,所述逻辑-实体表的最新版本(例如加载版本或更新版本)在随机存取存储器116中为可得的(available),也就是说,随机存取存储器116中存在所述逻辑-实体表的最新版本(例如,加载版本或更新版本),并且映射信息L2P_Info的理想版本(例如图3所示的MI)在随机存取存储器116中也为可得的。例如,在进行步骤512的检查操作之前,所述逻辑-实体表可已被加载到随机存取存储器116中以作为所述逻辑-实体表的加载版本,所以流程可进入步骤516,但本发明不限于此。此外,在步骤513中的检查结果可指出逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI是否彼此相等。当基于此检查结果而进入步骤514,存储器控制器110可在步骤514中将所述逻辑-实体表加载到随机存取存储器116中作为所述逻辑-实体表的加载版本,并且存储器控制器110可在步骤516中依据所述逻辑-实体表的加载版本从非挥发性存储器120读取所述目标数据,其中,当进行从非挥发性存储器120读取所述目标数据的操作时,所述逻辑-实体表的最新版本(例如加载版本)在随机存取存储器116中为可得的,且映射信息L2P_Info的理想版本(例如图3所示的MI)在随机存取存储器116中也为可得的。当基于此检查结果而进入步骤517,存储器控制器110可在步骤517中依据映射数据L2P_Info(例如图4所示的MI)从非挥发性存储器120读取所述目标数据,其中映射数据L2P_Info在随机存取存储器116中为可得的。于某些例子中,存储器控制器110可更新所述逻辑-实体表(例如,所述逻辑-实体表的加载版本)以产生所述逻辑-实体表的更新版本。
关于上述的主机拥有信息,存储器控制器110可将记忆装置100的所述组内部映射信息发送到主装置50以作为主机拥有信息,以供增强记忆装置100的效能,其中所述组内部映射信息涉及将多个逻辑地址映射到非挥发性存储器120的多个实体地址。这通常是预先进行的。在将记忆装置100的所述组内部映射信息发送到主装置50作为主机拥有信息之后,存储器控制器110可从主装置50接收主装置指令READ_CMD、逻辑地址REQUEST_LBA、逻辑-实体表索引INDEX_HOI和映射信息L2P_Info,其中映射信息L2P_Info涉及将逻辑地址REQUEST_LBA映射到非挥发性存储器120的某一实体地址。例如,主装置50可将逻辑-实体表索引INDEX_HOI和映射信息L2P_Info发送至记忆装置100作为额外信息,诸如有关于用以从非挥发性存储器120存取对应逻辑地址REQUEST_LBA的所述目标数据的所述请求的额外信息。另外,映射信息L2P_Info可被接收作为主机拥有信息的至少一部分(例如一部分或全部),尤其,不论映射信息L2P_Info的正确性如何,映射信息L2P_Info可被接收作为主机拥有信息的一部分,这是因为存储器控制器110能通过步骤513的操作检查映射信息L2P_Info的正确性。主装置50可发送映射信息L2P_Info至记忆装置100,以供引导记忆装置100依据映射信息L2P_Info来存取目标数据,但记忆装置100(例如,存储器控制器110)可在需要时(例如,在进入步骤514的情况下)拒绝所述引导。举例来说,当所述实体地址指向所述目标数据(这表示映射信息L2P_Info是正确的),逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI彼此相等,所以就进入步骤517。于是,当逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI彼此相等,存储器控制器110跳过(skip)将所述逻辑-实体表从非挥发性存储器120加载到记忆装置100的随机存取存储器116的操作并且进行步骤517的操作。又例如,当所述实体地址不是指向所述目标数据(这表示映射信息L2P_Info不正确),逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI彼此不相等,所以就进入步骤514。于是,当逻辑-实体表索引INDEX_INSIDE和逻辑-实体表索引INDEX_HOI彼此不相等,存储器控制器110在步骤514中将所述逻辑-实体表从非挥发性存储器120加载到记忆装置100的随机存取存储器116。通过步骤513中的检查结果,根据本发明所提出的方法来控制记忆装置100的操作的存储器控制器110能确保记忆装置100能分别在各种情况下正确地操作,其中各种目标诸如优化效能、高安全性、预算控制等均得以实现。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种用于在记忆装置中进行存取管理的方法,所述记忆装置包括非挥发性存储器,所述非挥发性存储器包括至少一非挥发性存储器组件,所述方法的特征在于,包括:
传送所述记忆装置的映射信息至一主装置,其中所述映射信息是有关于将一逻辑地址映射至所述非挥发性存储器的一实体地址;
从所述主装置接收一主装置指令、所述记忆装置的所述映射信息、至少一逻辑-实体表索引和一逻辑地址,其中所述主装置指令是一读取指令,所述至少一逻辑-实体表索引是指向所述非挥发性存储器中的至少一逻辑-实体表的至少一实体地址,且所述主装置指令和所述逻辑地址的一组合指出用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的一请求;
依据用以从所述非挥发性存储器存取对应所述逻辑地址的所述目标数据的所述请求,进行至少一检查操作以取得至少一检查结果,以供判断是否将所述至少一逻辑-实体表中的一第一逻辑-实体表从所述非挥发性存储器加载到所述记忆装置的一随机存取存储器,其中所述第一逻辑-实体表包括用于存取所述目标数据的地址映射信息,且进行所述至少一检查操作以取得所述至少一检查结果包括:
检查存储于所述随机存取存储器中且指向所述第一逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的所述至少一逻辑-实体表索引中的一第二逻辑-实体表索引是否彼此相等;
当所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此相等时,使用自所述主装置发送的所述映射信息以从所述非挥发性存储器读取所述目标数据,否则,在所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此不相等的情况下,将所述第一逻辑-实体表从所述非挥发性存储器加载到所述随机存取存储器,且使用所述第一逻辑-实体表以从所述非挥发性存储器读取所述目标数据;以及
将所述目标数据发送至所述主装置。
2.如权利要求1所述的方法,其特征在于,传送所述记忆装置的所述映射信息至所述主装置的步骤还包括:
向所述主装置发送所述记忆装置的一组内部映射信息以作为主机拥有信息,其中所述组内部映射信息包括所述记忆装置的所述映射信息;
其中从所述主装置接收所述主装置指令、所述记忆装置的所述映射信息、所述至少一逻辑-实体表索引和所述逻辑地址的步骤包括:
在将所述记忆装置的所述组内部映射信息发送到所述主装置以作为所述主机拥有信息之后,自所述主装置接收所述主装置指令、所述记忆装置的所述映射信息、所述至少一逻辑-实体表索引和所述逻辑地址。
3.如权利要求2所述的方法,其特征在于,所述映射信息被接收作为所述主机拥有信息的至少一部分。
4.如权利要求2所述的方法,其特征在于,当所述实体地址指向所述目标数据时,所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此相等。
5.如权利要求4所述的方法,其特征在于,当所述实体地址不指向所述目标数据时,所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此不相等。
6.如权利要求2所述的方法,其特征在于,当所述实体地址不指向所述目标数据时,所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此不相等。
7.一种记忆装置,其特征在于,包括:
一非挥发性存储器,用以存储信息,其中所述非挥发性存储器包括至少一非挥发性存储器组件;以及
一控制器,耦接至所述非挥发性存储器并用以控制所述记忆装置的操作,其中所述控制器包括:
一处理电路,用以根据来自一主装置的多个主装置指令来控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器,其中:
所述控制器传送所述记忆装置的映射信息至所述主装置,其中所述映射信息是有关于将一逻辑地址映射至所述非挥发性存储器的一实体地址;
所述控制器自所述主装置接收一主装置指令、所述记忆装置的所述映射信息、至少一逻辑-实体表索引和一逻辑地址,其中所述主装置指令是一读取指令,所述至少一逻辑-实体表索引是指向所述非挥发性存储器中的至少一逻辑-实体表的至少一实体地址,并且所述主装置指令和所述逻辑地址的一组合指出用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的一请求;
依据用以从所述非挥发性存储器存取对应所述逻辑地址的所述目标数据的所述请求,所述控制器进行至少一检查操作以取得至少一检查结果,以供判断是否将所述至少一逻辑-实体表中的一第一逻辑-实体表从所述非挥发性存储器加载到所述记忆装置的一随机存取存储器,其中所述第一逻辑-实体表包括用于存取所述目标数据的地址映射信息,且在进行所述至少一检查操作以取得所述至少一检查结果的期间,所述控制器检查存储于所述随机存取存储器中且指向所述第一逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的所述至少一逻辑-实体表索引中的一第二逻辑-实体表索引是否彼此相等;
当所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此相等时,所述控制器使用自所述主装置发送的所述映射信息以从所述非挥发性存储器读取所述目标数据,否则,在所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此不相等的情况下,所述控制器将所述第一逻辑-实体表从所述非挥发性存储器加载到所述随机存取存储器,且使用所述第一逻辑-实体表以从所述非挥发性存储器读取所述目标数据;以及
所述控制器将所述目标数据发送至所述主装置。
8.一种电子装置,其包括权利要求7所述的记忆装置,其特征在于,还包括:
所述主装置,耦接至所述记忆装置,其中所述主装置包括:
至少一处理器,用以控制所述主装置的操作;以及
一电源供应电路,耦接至所述至少一处理器,其中所述电源供应电路是用以提供电源予所述至少一处理器和所述记忆装置;
其中所述记忆装置提供存储空间给所述主装置。
9.一种记忆装置的控制器,所述记忆装置包括所述控制器和一非挥发性存储器,所述非挥发性存储器包括至少一非挥发性存储器组件,所述控制器的特征在于,包括:
一处理电路,用于根据来自一主装置的多个主装置指令来控制所述控制器,以容许所述主装置通过所述控制器存取所述非挥发性存储器,其中:
所述控制器传送所述记忆装置的映射信息至所述主装置,其中所述映射信息是有关于将一逻辑地址映射至所述非挥发性存储器的一实体地址;
所述控制器自所述主装置接收一主装置指令、所述记忆装置的所述映射信息、至少一逻辑-实体表索引和一逻辑地址,其中所述主装置指令是一读取指令,所述至少一逻辑-实体表索引是指向所述非挥发性存储器中的至少一逻辑-实体表的至少一实体地址,并且所述主装置指令和所述逻辑地址的一组合指出用以从所述非挥发性存储器存取对应所述逻辑地址的目标数据的一请求;
依据用以从所述非挥发性存储器存取对应所述逻辑地址的所述目标数据的所述请求,所述控制器进行至少一检查操作以取得至少一检查结果,以供判断是否将所述至少一逻辑-实体表中的一第一逻辑-实体表从所述非挥发性存储器加载到所述记忆装置的一随机存取存储器,其中所述第一逻辑-实体表包括用于存取所述目标数据的地址映射信息,且在进行所述至少一检查操作以取得所述至少一检查结果的期间,所述控制器检查存储于所述随机存取存储器中且指向所述第一逻辑-实体表的一第一逻辑-实体表索引和自所述主装置发送的所述至少一逻辑-实体表索引中的一第二逻辑-实体表索引是否彼此相等;
当所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此相等时,所述控制器使用自所述主装置发送的所述映射信息以从所述非挥发性存储器读取所述目标数据,否则,在所述至少一检查结果指出所述第一逻辑-实体表索引与所述第二逻辑-实体表索引彼此不相等的情况下,所述控制器将所述第一逻辑-实体表从所述非挥发性存储器加载到所述随机存取存储器,且使用所述第一逻辑-实体表以从所述非挥发性存储器读取所述目标数据;以及
所述控制器将所述目标数据发送至所述主装置。
CN201811033195.4A 2017-10-06 2018-09-05 进行存取管理的方法、记忆装置及其控制器、电子装置 Active CN109857336B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762568797P 2017-10-06 2017-10-06
US62/568,797 2017-10-06
US15/859,747 2018-01-02
US15/859,747 US10977187B2 (en) 2017-10-06 2018-01-02 Method for performing access management in a memory device, associated memory device and controller thereof, and associated electronic device

Publications (2)

Publication Number Publication Date
CN109857336A CN109857336A (zh) 2019-06-07
CN109857336B true CN109857336B (zh) 2022-04-26

Family

ID=65993925

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201811033195.4A Active CN109857336B (zh) 2017-10-06 2018-09-05 进行存取管理的方法、记忆装置及其控制器、电子装置
CN201811041557.4A Active CN109634517B (zh) 2017-10-06 2018-09-07 进行存取管理的方法、记忆装置、电子装置和其控制器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201811041557.4A Active CN109634517B (zh) 2017-10-06 2018-09-07 进行存取管理的方法、记忆装置、电子装置和其控制器

Country Status (3)

Country Link
US (6) US10970226B2 (zh)
CN (2) CN109857336B (zh)
TW (5) TWI766339B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10558393B2 (en) * 2017-10-20 2020-02-11 Qualcomm Incorporated Controller hardware automation for host-aware performance booster
US10572391B2 (en) * 2018-02-09 2020-02-25 Western Digital Technologies, Inc. Methods and apparatus for implementing a logical to physical address mapping in a solid state drive
JP2021522579A (ja) * 2018-04-23 2021-08-30 マイクロン テクノロジー,インク. ホストの論理対物理情報の更新
US10592166B2 (en) * 2018-08-01 2020-03-17 EMC IP Holding Company LLC Fast input/output in a content-addressable storage architecture with paged metadata
KR20200022179A (ko) * 2018-08-22 2020-03-03 에스케이하이닉스 주식회사 데이터 처리 시스템 및 데이터 처리 시스템의 동작 방법
KR20200086143A (ko) * 2019-01-08 2020-07-16 삼성전자주식회사 저장 장치 및 그것의 데이터 처리 방법
KR20200088709A (ko) * 2019-01-15 2020-07-23 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20210011176A (ko) * 2019-07-22 2021-02-01 에스케이하이닉스 주식회사 메모리 시스템의 액세스 동작 방법 및 장치
KR20210011216A (ko) 2019-07-22 2021-02-01 에스케이하이닉스 주식회사 메모리 시스템의 메타 데이터 관리 방법 및 장치
KR20200122086A (ko) 2019-04-17 2020-10-27 에스케이하이닉스 주식회사 메모리 시스템에서 맵 세그먼트를 전송하는 방법 및 장치
KR20210001546A (ko) 2019-06-28 2021-01-06 에스케이하이닉스 주식회사 슬립모드에서 메모리 시스템의 내부데이터를 전송하는 장치 및 방법
US11294825B2 (en) * 2019-04-17 2022-04-05 SK Hynix Inc. Memory system for utilizing a memory included in an external device
KR20200139913A (ko) 2019-06-05 2020-12-15 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 메타 정보 저장 장치
KR20200122685A (ko) * 2019-04-18 2020-10-28 에스케이하이닉스 주식회사 메모리 시스템 내에서 서로 다른 종류의 데이터를 처리하기 위한 장치 및 방법
CN110059021A (zh) * 2019-04-18 2019-07-26 深圳市时创意电子有限公司 一种降低写入放大率并提升随机写入性能的算法
US11237953B2 (en) 2019-05-21 2022-02-01 Micron Technology, Inc. Host device physical address encoding
US11003373B2 (en) * 2019-06-28 2021-05-11 Western Digital Technologies, Inc. Systems and methods for managing physical-to- logical address information
CN112464613B (zh) * 2019-09-09 2023-09-15 瑞昱半导体股份有限公司 数字电路鲁棒性验证方法及系统
KR20210038753A (ko) * 2019-09-30 2021-04-08 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
CN111049566B (zh) * 2019-11-20 2022-03-08 中国航空工业集团公司西安航空计算技术研究所 信息传递方法和机载lrm模块
US11169744B2 (en) * 2020-03-31 2021-11-09 Western Digital Technologies, Inc. Boosting reads of chunks of data
US11262938B2 (en) * 2020-05-05 2022-03-01 Silicon Motion, Inc. Method and apparatus for performing access management of a memory device with aid of dedicated bit information
CN114461536A (zh) * 2020-11-10 2022-05-10 瑞昱半导体股份有限公司 查找表建立及内存地址查询方法
US11360888B1 (en) * 2021-02-16 2022-06-14 Micron Technology, Inc. Host system notification based on entry miss
WO2024045104A1 (en) * 2022-09-01 2024-03-07 Micron Technology, Inc. Virtual indexing in memory device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103455432A (zh) * 2008-11-06 2013-12-18 慧帝科技(深圳)有限公司 用来管理一记忆装置的方法以及其相关的记忆装置
CN106681653A (zh) * 2016-09-14 2017-05-17 合肥兆芯电子有限公司 存储器抹除方法、存储器控制电路单元及存储器存储装置

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105103A (en) * 1997-12-19 2000-08-15 Lsi Logic Corporation Method for mapping in dynamically addressed storage subsystems
US8112574B2 (en) * 2004-02-26 2012-02-07 Super Talent Electronics, Inc. Swappable sets of partial-mapping tables in a flash-memory system with a command queue for combining flash writes
JP5076411B2 (ja) 2005-11-30 2012-11-21 ソニー株式会社 記憶装置、コンピュータシステム
US7610464B2 (en) * 2006-02-22 2009-10-27 Sony Computer Entertainment Inc. Methods and apparatus for providing independent logical address space and access management
US8880812B1 (en) * 2010-03-31 2014-11-04 Marvell International Ltd. WWN table management systems and methods
US7596663B2 (en) * 2006-11-15 2009-09-29 Arm Limited Identifying a cache way of a cache access request using information from the microtag and from the micro TLB
US8335776B2 (en) 2008-07-02 2012-12-18 Commvault Systems, Inc. Distributed indexing system for data storage
US8533389B1 (en) * 2008-09-15 2013-09-10 Pmc-Sierra, Inc. Multi-client content addressable memory access control method
JP4693893B2 (ja) * 2008-11-25 2011-06-01 株式会社日立製作所 記憶制御装置及び記憶制御装置の制御方法
JP5381519B2 (ja) * 2009-09-01 2014-01-08 富士通株式会社 ディスクへの書き込み位置の誤算出を検出するストレージ制御装置、ストレージシステム、及びアクセス方法。
TWI492050B (zh) * 2010-04-12 2015-07-11 Phison Electronics Corp 儲存裝置、記憶體控制器及資料保護方法
CN102043728B (zh) * 2009-10-23 2012-07-04 慧荣科技股份有限公司 用来提高闪存存取效能的方法以及相关的记忆装置
US8380894B2 (en) * 2009-12-11 2013-02-19 International Business Machines Corporation I/O mapping-path tracking in a storage configuration
US9582431B2 (en) * 2010-03-22 2017-02-28 Seagate Technology Llc Storage address space to NVM address, span, and length mapping/converting
TWI633557B (zh) 2010-04-19 2018-08-21 慧榮科技股份有限公司 用來進行記憶體存取管理之方法以及記憶裝置及其控制器
TWI447583B (zh) * 2012-02-10 2014-08-01 Phison Electronics Corp 資料保護方法、記憶體控制器與記憶體儲存裝置
US9213632B1 (en) * 2012-02-29 2015-12-15 Marvell International Ltd. Systems and methods for data storage devices to use external resources
US9417811B2 (en) * 2012-03-07 2016-08-16 International Business Machines Corporation Efficient inline data de-duplication on a storage system
TWI489272B (zh) * 2012-04-03 2015-06-21 Phison Electronics Corp 保護資料的方法、記憶體控制器與記憶體儲存裝置
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change
US8874850B1 (en) * 2012-05-10 2014-10-28 Netapp, Inc. Hierarchically tagged cache
US8838937B1 (en) * 2012-05-23 2014-09-16 Densbits Technologies Ltd. Methods, systems and computer readable medium for writing and reading data
TWI486767B (zh) * 2012-06-22 2015-06-01 Phison Electronics Corp 資料儲存方法、記憶體控制器與記憶體儲存裝置
KR20140057454A (ko) * 2012-11-02 2014-05-13 삼성전자주식회사 비휘발성 메모리 장치 및 이와 통신하는 호스트 장치
US9032137B2 (en) 2012-11-21 2015-05-12 Intel Corporation Flexible wear management for non-volatile memory
CN103914391B (zh) * 2013-01-07 2016-12-28 群联电子股份有限公司 数据读取方法、存储器控制器与存储器存储装置
US9652376B2 (en) * 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
CN104102585B (zh) * 2013-04-03 2017-09-12 群联电子股份有限公司 映射信息记录方法、存储器控制器与存储器储存装置
KR20150015764A (ko) * 2013-08-01 2015-02-11 삼성전자주식회사 스토리지 디바이스 및 이를 포함하는 스토리지 시스템
TWI498902B (zh) 2013-11-28 2015-09-01 Phison Electronics Corp 資料管理方法、記憶體儲存裝置及記憶體控制電路單元
KR20150068747A (ko) 2013-12-12 2015-06-22 삼성전자주식회사 비휘발성 메모리 시스템, 이를 포함하는 모바일 장치 및 비휘발성 메모리 시스템의 동작방법
TWI546666B (zh) * 2014-11-03 2016-08-21 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
US10223371B2 (en) * 2014-11-21 2019-03-05 Vmware, Inc. Host-based deduplication using array generated data tags
US20160162416A1 (en) * 2014-12-08 2016-06-09 Intel Corporation Apparatus and Method for Reducing Latency Between Host and a Storage Device
CN105989871B (zh) 2015-02-13 2019-06-21 円星科技股份有限公司 随机存取记忆体与记忆体存取方法
CN108139902A (zh) * 2015-10-16 2018-06-08 科内克斯实验室公司 用于提供混合模式来访问ssd驱动器的方法和装置
US9946642B2 (en) 2015-11-13 2018-04-17 Samsung Electronics Co., Ltd Distributed multimode storage management
US9846610B2 (en) * 2016-02-08 2017-12-19 Red Hat Israel, Ltd. Page fault-based fast memory-mapped I/O for virtual machines
US10459635B2 (en) * 2016-02-11 2019-10-29 SK Hynix Inc. Window based mapping
KR102580820B1 (ko) * 2016-03-10 2023-09-20 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US20170300422A1 (en) * 2016-04-14 2017-10-19 Micron Technology, Inc. Memory device with direct read access
US10157004B2 (en) * 2016-04-14 2018-12-18 Sandisk Technologies Llc Storage system and method for recovering data corrupted in a host memory buffer
US10459636B2 (en) * 2017-03-24 2019-10-29 Sandisk Technologies Llc System and method for managing data in non-volatile memory systems having multiple mapping layers
US10476662B2 (en) * 2017-04-10 2019-11-12 City University Of Hong Kong Method for operating a distributed key-value store
US10452537B2 (en) * 2017-06-12 2019-10-22 Western Digital Technologies, Inc. System and method of direct write and mapping of data in a non-volatile memory having multiple sub-drives
US10628326B2 (en) * 2017-08-21 2020-04-21 Micron Technology, Inc. Logical to physical mapping

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103455432A (zh) * 2008-11-06 2013-12-18 慧帝科技(深圳)有限公司 用来管理一记忆装置的方法以及其相关的记忆装置
CN106681653A (zh) * 2016-09-14 2017-05-17 合肥兆芯电子有限公司 存储器抹除方法、存储器控制电路单元及存储器存储装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于相变存储器的存储技术研究综述;冒伟;《计算机学报》;20141127;全文 *

Also Published As

Publication number Publication date
TWI684863B (zh) 2020-02-11
TW202101225A (zh) 2021-01-01
TWI764232B (zh) 2022-05-11
US11550730B2 (en) 2023-01-10
CN109634517A (zh) 2019-04-16
TWI766339B (zh) 2022-06-01
CN109634517B (zh) 2022-08-23
TW201915733A (zh) 2019-04-16
TW202101226A (zh) 2021-01-01
US20190107964A1 (en) 2019-04-11
US11449435B2 (en) 2022-09-20
TW201945934A (zh) 2019-12-01
US10970226B2 (en) 2021-04-06
US20230104892A1 (en) 2023-04-06
US20230342302A1 (en) 2023-10-26
US20210191876A1 (en) 2021-06-24
CN109857336A (zh) 2019-06-07
US11741016B2 (en) 2023-08-29
TWI720588B (zh) 2021-03-01
US20190108131A1 (en) 2019-04-11
US20210182209A1 (en) 2021-06-17
TW201915734A (zh) 2019-04-16
US10977187B2 (en) 2021-04-13
TWI673606B (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
CN109857336B (zh) 进行存取管理的方法、记忆装置及其控制器、电子装置
US11645199B2 (en) Storage device and garbage collection method thereof
US11334448B2 (en) Memory system and operating method thereof
CN110083546B (zh) 记忆装置中进行写入管理的方法、记忆装置和其控制器
CN110196816B (zh) 控制器、其操作方法以及包括控制器的存储器系统
US11403018B2 (en) Method and apparatus for performing block management regarding non-volatile memory
US20190155507A1 (en) Method for performing system backup in a memory device, associated memory device and controller thereof, and associated electronic device
CN113687771A (zh) 存储器装置的存取管理方法、控制器以及主机装置
CN113360303A (zh) 进行数据存储管理以提升数据可靠度的方法以及相关设备
US11687447B1 (en) Method and apparatus for performing access control of memory device with aid of additional physical address information
CN110308936B (zh) 进行初始化的方法、记忆装置及其控制器以及电子装置
US11347433B2 (en) Method for performing sudden power off recovery management, associated memory device and controller thereof, and associated electronic device
US20190227746A1 (en) Memory system and operating method thereof
CN117435126A (zh) 存储器装置的数据管理的方法、存储器装置、电子装置以及存储器装置的存储器控制器
KR20210101969A (ko) 메모리 컨트롤러 및 이의 동작 방법

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