CN113227995A - 用于闪存存储器的文件系统和主机性能增强器 - Google Patents

用于闪存存储器的文件系统和主机性能增强器 Download PDF

Info

Publication number
CN113227995A
CN113227995A CN202180001090.4A CN202180001090A CN113227995A CN 113227995 A CN113227995 A CN 113227995A CN 202180001090 A CN202180001090 A CN 202180001090A CN 113227995 A CN113227995 A CN 113227995A
Authority
CN
China
Prior art keywords
file
host device
memory
transmitting
memory device
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.)
Pending
Application number
CN202180001090.4A
Other languages
English (en)
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.)
Yangtze Memory Technologies Co Ltd
Original Assignee
Yangtze Memory Technologies Co Ltd
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 Yangtze Memory Technologies Co Ltd filed Critical Yangtze Memory Technologies Co Ltd
Publication of CN113227995A publication Critical patent/CN113227995A/zh
Pending legal-status Critical Current

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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • 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/0638Organizing or formatting or addressing of data
    • 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
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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
    • 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
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing 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
    • 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/31Providing disk cache in a specific location of a storage system
    • G06F2212/311In host system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/466Metadata, control data
    • 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

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)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本文公开了用于管理存储系统的系统、方法和计算机程序产品方面。在一个方面中,一种主机设备可以生成对应于文件的配置并且将该配置传输到存储器设备,例如,3D NAND存储器。该配置命令存储器设备制止将逻辑到物理(L2P)脏条目通知传输到主机设备。L2P脏条目通知对应于文件。主机设备还可以生成对应于文件的第二配置并且将第二配置传输到存储器设备,第二配置命令存储器设备恢复将应于文件的L2P脏条目通知传输到主机设备。

Description

用于闪存存储器的文件系统和主机性能增强器
技术领域
本说明书涉及用于对数据存储系统增强的装置、方法和系统。具体地,所述装置、方法和系统提高了数据存储系统的读取和写入效率。
背景技术
为了在操作系统中读取或写入文件,数据存储系统确定文件的逻辑地址和物理地址。逻辑地址和物理地址的管理和检索对于数据存储系统可能是麻烦的,并且可能限制文件读取和写入过程的速度。
发明内容
本公开的一些方面涉及用于对数据存储系统增强的装置和方法,例如,提供了用于提高数据存储系统的读取和写入效率的系统和方法。
本公开的一些方面提供了包括存储器和耦合到存储器的处理器的主机设备。存储器用于存储逻辑到物理(L2P)映射表,L2P映射表包括将文件的逻辑地址映射到文件的物理地址的条目。处理器被配置为生成对应于文件的第一配置并且将第一配置传输到存储器设备。第一配置命令存储器设备制止将L2P脏条目通知传输到主机设备。L2P脏条目通知对应于文件。
本公开的一些方面提供了包括存储器和耦合到存储器的处理器的存储器设备。存储器控制器被配置为:从主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;并且将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
本公开的一些方面提供了包括主机设备和存储器设备的系统。主机设备被配置为生成对应于文件的第一配置并且将第一配置传输到存储器设备。存储器设备被配置为从主机设备接收第一配置;并且制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备。
本公开的一些方面涉及系统,其中,主机设备还被配置为:生成对应于文件的第二配置;并且将第二配置传输到存储器设备,其中,第二配置命令存储器设备恢复将对应于文件的L2P脏条目通知传输到主机设备。
本公开的一些方面提供了包括主机设备和存储器设备的系统。主机设备包括用于存储逻辑到物理(L2P)映射表的第一存储器,L2P映射表包括将文件的逻辑地址映射到文件的物理地址的条目;主机设备还包括耦合到第一存储器的处理器,并且处理器被配置为:生成对应于文件的第一配置;并且将第一配置传输到存储器设备,其中,第一配置命令存储器设备制止将L2P脏条目通知传输到主机设备,并且其中,L2P脏条目通知对应于文件。存储器设备包括第二存储器和耦合到第二存储器的存储器控制器;存储器控制器被配置为:从主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;并且将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
本公开的一些方面提供了用于管理存储器设备的L2P映射表的方法。方法包括:从与存储器设备耦合的主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;以及将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
提供本发明内容仅是出于示出某些方面的目的,以提供对本文所述主题的理解。因此,上述特征仅是示例,并且不应被解释为缩小本公开中的主题的范围或精神。从以下具体实施方式、附图和权利要求中,本公开的其他特征、方面和优点将变得显而易见。
附图说明
附图被并入本文并且形成说明书的一部分。
图1示出了根据本公开的一些方面的实施对数据存储系统的增强的示例性系统。
图2示出了根据本公开的方面的用于从存储器设备读取的示例性方法。
图3示出了根据本公开的方面的用于写入存储器设备中的示例性方法。
图4示出了用于用设置热配置来管理逻辑到物理(L2P)映射表的示例性方法。
图5示出了用于用清除热配置来管理L2P映射表的示例性方法。
图6示出了用于生成设置热配置和清除热配置的示例性方法。
图7是用于实施本公开或其(一个或多个)部分的一些方面的示例性计算机系统。
在附图中,类似的附图标记一般地指示相同或类似的元件。另外,一般地,附图标记中的(一个或多个)最左侧数字指示其中附图标记首次出现的附图。
具体实施方式
本文提供了用于管理数据存储系统的系统、装置、设备、方法和/或计算机程序产品实施例和/或其组合及子组合。本文公开的实施例可以提高存储系统的写入和读取效率。
根据一些方面,操作系统中的文件可以对应于逻辑地址或物理地址。操作系统可以通过逻辑地址来识别文件,逻辑地址也可以被称为虚拟地址。在一些方面中,设备的一个或多个处理器生成文件的逻辑地址,并且通过逻辑地址识别文件。例如,在执行应用或程序以读取文件时,一个或多个处理器确定文件的逻辑地址。随后,逻辑地址被映射到物理地址,其中文件的数据实际上存储在设备的存储器中。然后,一个或多个处理器基于物理地址从存储器检索数据。
根据一些方面,设备的部件(例如,闪存转换层(FTL))将逻辑地址映射到物理地址。例如,FTL可以保持逻辑到物理(L2P)映射表。L2P映射表的每个条目可以表示逻辑地址与物理地址之间的映射关系。在映射关系改变时,FTL更新L2P映射表。例如,在文件的物理地址改变时,FTL相应地更新L2P映射表的条目,以将逻辑地址映射到更新的物理地址。FTL可以驻留在设备中,所述设备包括但不限于无线通信设备、家庭娱乐设备、智能电话、膝上型计算机、台式计算机、平板计算机、个人助理、监视器、电视机、可穿戴设备、物联网(IoT)设备、车载设备、存储器设备(即,eMMC NAND闪存存储器设备、UFS NAND闪存存储器设备)等。
根据一些方面,诸如NAND闪存存储器设备(即,eMMC或UFS)的存储器设备可以利用L2P映射表以用于读取和写入文件的数据。例如,L2P映射表可以存储在存储器设备的闪存存储器中。在NAND闪存存储器设备接收到文件的读取请求时,FTL可以检索L2P映射表的一个或多个L2P条目,并且将文件的逻辑地址转换为物理地址。随后,NAND闪存存储器设备的处理器可以基于物理地址检索文件的数据。在NAND闪存存储器设备接收到文件的写入请求时,处理器可以执行擦除和写入操作,以将文件的数据写入在物理地址中。例如,处理器可以擦除存储在文件的物理地址中的数据,并且将文件的数据写入在物理地址中。在一些方面中,处理器可以将文件的数据写入在不同的物理地址中。例如,处理器可以确定文件的物理地址不适于存储数据,并且定位更新的物理地址。耦合到FTL的处理器更新L2P映射表,以反映这样的改变,使得逻辑地址映射到更新的物理地址。
在一些方面中,上文描述的读取和写入操作可能限制NAND闪存存储器设备的效率。例如,在读取操作中,检索L2P映射表的一个或多个L2P条目可能是耗时的。尤其是在要读取的数据小并且读取频率高时,由于闪存存储器读取速度的限制,L2P映射表检索变得麻烦。在一些方面中,NAND闪存存储器设备还可以包括随机存取存储(RAM)存储器。然而,由于RAM存储器的有限大小,L2P映射表可能不适合在RAM存储器中。此外,在写入操作中,每当物理地址改变时,处理器和FTL可以更新L2P映射表。与读取操作类似,这同样可能限制NAND闪存存储器设备的效率。
根据一些方面,存储器设备可以与主机设备连接。主机设备可以包括闪存友好文件系统(F2FS),但不限于无线通信设备、家庭娱乐设备、智能电话、膝上型计算机、台式计算机、平板计算机、个人助理、监视器、电视机、可穿戴设备、物联网(IoT)设备、车载设备和存储器设备等。主机设备可以包括具有比存储器设备的RAM更大容量的RAM。在一些方面中,存储器设备可以将L2P映射表存储在主机设备的RAM中。在一些方面中,存储器设备从主机设备的RAM读取的速度可以高于存储器设备从其自己的闪存存储器读取的速度。换句话说,从主机设备的RAM检索L2P映射表的速度可以高于从存储器设备的闪存存储器检索L2P映射表的速度。存储器设备与主机设备之间的这种协作也可以被称为主机性能增强器(HPB)系统。
在一些方面中,将L2P映射表存储在主机设备中提高了读取和写入操作的效率。例如,如上文所讨论的,存储器设备可以以更高的速度从主机设备检索L2P映射表的一个或多个L2P条目。在一些方面中,主机设备将读取和/或写入请求发送到存储器设备。主机设备可以组合读取和/或写入请求与L2P映射表的对应条目,以形成组合消息,并将组合消息发送到存储器设备。在这样的情况下,不存在由检索L2P映射表的一个或多个L2P条目导致的延迟。
根据一些方面,在存储器设备的处理器将文件的数据写入在新的物理地址中时,需要更新L2P映射表的一个或多个L2P条目,因为在写入操作之后逻辑地址映射到新的物理地址。在主机设备存储L2P映射表时,主机设备需要更新存储在其RAM中的L2P映射表。
在一些方面中,在一个或多个L2P条目的对应物理地址改变时,存储器设备可以将一个或多个L2P条目标记为脏条目。存储器设备通知主机设备一个或多个L2P条目为脏条目。主机设备可以从存储器设备请求脏条目的更新,以更新存储在主机设备的RAM中的L2P映射表。在更新之后,脏条目变得干净。
根据一些方面,L2P映射表的一些条目可能比其他条目更频繁地变为脏条目。例如,包含目录条目(“目录项”(“dentry”))块或目录的直接节点块的文件可能频繁地遭受改变。换句话说,存储器设备的处理器可能频繁地执行写入操作以改变文件的数据。因此,需要频繁地更新L2P映射表的对应于文件的条目。因此,为了更新条目,主机设备可以频繁地对文件执行到主机设备的RAM的写入操作。因此,频繁地改变的文件可能对HPB系统的性能具有负面影响。
在一些方面中,因为写入操作影响主机设备的性能,频繁地改变的文件影响主机设备。如下表1中所示,例如,在70%的操作是写入操作时,每秒输入/输出操作(IOPS)为13.4k。在仅有读取操作时,IOPS为56.1k。因此,减少写入操作的数量可以提高主机设备的性能。
Figure BDA0003057958250000061
表1写入操作影响
在一些方面中,频繁地改变的文件还影响存储器设备。例如,存储器设备可以将脏条目通知和条目更新发送到主机设备,以报告文件的这种改变,这给存储器设备带来负担,并且降低存储器设备的读取和/或写入效率。
根据一些方面,主机设备可以将频繁地改变的文件识别为热文件。主机设备可以通知存储器设备以禁用对热文件的HPB功能。例如,存储器设备可以制止将脏条目通知传输到主机设备,并且依赖存储在存储器设备的闪存存储器中的L2P映射表以用于写入和读取操作。在一些方面中,在存储器设备确定L2P映射表的对应于热文件的条目变脏时,存储器设备可以制止发送通知到主机设备。在这样的情况下,避免了主机设备中的频繁的条目更新。存储器设备可以在对应的物理地址改变时更新存储器设备中的L2P映射表的条目。在一些方面中,存储器设备可以忽略在读取和/或写入请求中从主机设备接收的热文件的条目。相反,FTL基于存储在存储器设备中的L2P映射表将逻辑地址映射到物理地址。在一些方面中,主机设备可以制止将热文件的条目发送到存储器设备。
根据一些方面,主机设备基于文件的属性识别热文件。例如,主机设备可以确定包含目录项块或目录的直接节点块的文件是热文件。主机还可以基于用户请求识别热文件。例如,用户可以将识别热文件的请求发送到主机设备。
根据一些方面,主机设备可以改变热文件的状态。例如,主机设备可以发送清除热通知到存储器设备,从而指示一些热文件不再是热文件。在这样的情况下,存储器设备恢复HPB操作。例如,在对应于文件的条目变脏时,存储器设备恢复将脏条目通知发送到主机设备。
现在将关于对应的附图讨论这些特征的各种实施例。
图1示出了根据本公开的一些方面的实施对数据存储系统增强的示例性系统100。系统100可以包括主机设备102和存储器设备110。存储器设备110可以是提供在无线通信设备、家庭娱乐设备、智能电话、膝上型计算机、台式计算机、平板计算机、个人助理、监视器、电视机、可穿戴设备、物联网(IoT)设备、车载设备等中NAND闪存存储器设备。存储器设备110可以包括存储器控制器112和存储器114。存储器114可以包括RAM存储器和/或闪存存储器。主机设备102可以包括处理器104、存储器106和控制器108。在一些方面中,主机设备102经由控制器108与存储器设备110通信。
根据一些方面,主机设备102将L2P映射表存储在存储器106中,其中,存储器106可以是RAM存储器。L2P映射表可以包括将逻辑地址映射到物理地址的条目。例如,处理器104可以接收文件的读取请求。读取请求可以包括文件的一个或多个逻辑地址。在一些方面中,处理器104可以从应用接收读取请求。处理器104可以从存储器106检索L2P映射表的一个或多个L2P条目。处理器104可以组合读取请求与一个或多个L2P条目,并将组合的读取请求发送到控制器108。控制器108可以将组合的读取请求和一个或多个L2P条目传输到存储器设备110。存储器设备110的存储器控制器112可以从读取请求检索一个或多个逻辑地址,并且基于一个或多个L2P条目将一个或多个逻辑地址映射到一个或多个物理地址。存储器控制器112可以基于一个或多个物理地址从存储器114检索数据。在检索到数据时,存储器设备110可以将数据发送到主机设备102。
在一些方面中,控制器108可以直接从存储器106检索L2P映射表的一个或多个L2P条目。例如,控制器108从接收自处理器104的读取请求检索一个或多个逻辑地址。基于一个或多个逻辑地址,控制器108从存储器106检索L2P映射表的一个或多个L2P条目。
根据一些方面,处理器104接收文件的写入请求。写入请求可以包括文件的一个或多个逻辑地址以及要写入到文件的数据。在一些方面中,处理器104可以从应用接收写入请求。与上文类似,控制器108可以将写入请求与L2P映射表的一个或多个L2P条目的组合发送到存储器设备110。与上文讨论的类似,存储器控制器112可以基于写入请求和一个或多个L2P条目确定一个或多个物理地址。存储器控制器112可以确定一个或多个物理地址不可用于写入数据。例如,一个或多个物理地址可能没有足够的空间以写入数据。存储器控制器112可以确定一个或多个更新的物理地址,并且将数据存储在一个或多个更新的物理地址中。因此,一个或多个L2P条目变脏,因为一个或多个逻辑地址不再映射到一个或多个物理地址。存储器控制器112生成指示一个或多个L2P条目变脏的脏条目通知。存储器设备110将脏条目通知传输到主机设备102。主机设备102可以从存储器设备110请求一个或多个L2P条目的更新,并且更新存储器106中的一个或多个L2P条目。在一些方面中,主机设备102可以请求一个或多个更新的物理地址,并且基于一个或多个更新的物理地址更新存储器106中的一个或多个L2P条目。
根据一些方面,处理器104可以通过例如设置在主机设备102中的F2FS(闪存友好文件系统)确定文件为热文件。处理器104可以基于文件类型来确定。例如,处理器104可以确定包含目录项块或目录的直接节点块的文件是热文件。这是因为这些文件频繁地遭受改变。处理器104可以基于用户请求确定文件是热文件。在确定文件是热文件时,处理器104可以经由控制器108通知存储器设备110。例如,处理器104可以生成设置热配置,并且发送到控制器108,控制器108将设置热配置转发到存储器设备110。存储器设备110可以标记文件为热。在文件的一个或多个物理地址改变时,存储器设备110可以制止通知主机设备102。相反,存储器设备110基于文件的一个或多个物理地址的改变更新存储在存储器114中的L2P映射表的一个或多个L2P条目。
根据一些方面,处理器104可以确定文件不再是热文件。处理器104可以基于文件类型的改变来确定。例如,处理器104可以确定文件不再包含目录项块或目录的直接节点块。处理器104还可以基于用户请求来确定。例如,处理器104可以接收指示文件不再是热文件的用户请求。在确定文件不再是热文件时,处理器104可以经由控制器108通知存储器设备110。例如,处理器104可以生成清除热配置,并且将清除热配置发送到控制器108,控制器108将清除热配置转发到存储器设备110。存储器设备110可以标记文件不再是热文件。在文件的物理地址改变时,存储器设备110恢复通知主机设备102。
图2示出了根据本公开的方面的用于从存储器设备读取的示例性方法。为了方便而非限制,可以关于图1和图7的元件描述图2。方法200可以表示电子设备(例如,图1的主机设备102)实施读取操作的操作。方法200也可以由图7的计算机系统700执行。但是方法200不限于这些附图中描绘的具体方面,并且其他系统可以用于执行该方法,如本领域技术人员将理解的。应当理解,可能不需要所有操作,并且操作可以不以与图2中所示的相同的顺序来执行。
在202处,电子设备可以生成读取请求。例如,电子设备生成用于读取文件的数据组的读取请求。读取请求可以包括文件的一个或多个逻辑地址。
在204处,电子设备可以检索对应于文件或者一个或多个逻辑地址的L2P条目。例如,电子设备可以从存储在电子设备中的L2P映射表检索L2P条目。
在206处,电子设备可以组合读取请求与L2P条目。例如,电子设备可以生成包括读取请求和L2P条目的组合请求。电子设备还可以加密组合请求。
在208处,电子设备可以将组合请求传输到存储器设备,例如,图1的存储器设备110。
在210处,电子设备可以从存储器设备接收数据组,其中,数据组对应于文件。
图3示出了根据本公开的方面的用于写入到存储器设备的示例性方法。为了方便而非限制,可以关于图1和图7的元件描述图3。方法300可以表示电子设备(例如,图1的主机设备102)实施写入操作的操作。方法300也可以由图7的计算机系统700执行。但是方法300不限于这些附图中描绘的具体方面,并且其他系统可以用于执行该方法,如本领域技术人员将理解的。应当理解,可能不需要所有操作,并且操作可以不以与图3中所示的相同的顺序来执行。
在302处,电子设备可以生成写入请求。例如,电子设备生成用于写入文件的数据组的写入请求。写入请求可以包括文件的一个或多个逻辑地址以及数据组。
在304处,电子设备可以检索对应于文件或者一个或多个逻辑地址的L2P条目。例如,电子设备可以从存储在电子设备中的L2P映射表检索L2P条目。
在306处,电子设备可以组合写入请求与L2P条目。例如,电子设备可以生成包括写入请求和L2P条目的组合请求。电子设备还可以加密组合请求。
在308处,电子设备可以将组合请求传输到存储器设备,例如,图1的存储器设备110。
在310处,电子设备可以从存储器设备接收L2P脏条目通知,其中,L2P脏条目通知对应于L2P映射表的L2P条目。
图4示出了用于用设置热配置来管理L2P映射表的示例性方法。为了方便而非限制,可以关于图1和图7的元件描述图4。方法400可以表示电子设备(例如,图1的主机设备102和存储器设备110)用设置热配置来管理L2P映射表的操作。方法400也可以由图7的计算机系统700执行。但是方法400不限于这些附图中描绘的具体方面,并且其他系统可以用于执行该方法,如本领域技术人员将理解的。应当理解,可能不需要所有操作,并且操作可以不以与图4中所示的相同的顺序来执行。
在402处,主机设备102的处理器104生成对应于文件的设置热配置。处理器104可以确定文件为热文件。处理器104可以基于文件类型来确定。例如,处理器104可以确定包含目录项块或目录的直接节点块的文件是热文件。这是因为这些文件频繁地遭受改变。处理器104还可以基于用户请求确定文件是热文件。
在404处,处理器104将设置热配置传输到控制器108。
在406处,控制器108将设置热配置传输到存储器设备110。在一些方面中,控制器108可以转发由处理器104生成的设置热配置。控制器108还可以基于接收的设置热配置生成并且传输与存储器设备110兼容的新设置热配置。在一些方面中,控制器108可以在传输之前加密设置热配置。
在408处,存储器设备110禁用脏条目通知。例如,在L2P映射表的对应于文件的L2P条目变脏时,存储器设备110可以制止通知主机设备102。在一些方面中,存储器设备可以忽略从主机设备102接收的文件的L2P条目。在一些方面中,在从控制器108接收到设置热配置,存储器设备110可以加密设置热配置。
在410处,存储器设备110将对设置热配置的确认传输到主机设备102的控制器108。确认指示存储器设备110不再将对应于文件的脏条目通知传输到主机设备102。
在412处,控制器108将对设置热配置的确认传输到处理器104。
在414处,与图3的306中描述的类似,处理器104生成组合写入请求。组合请求可以包括文件的一个或多个逻辑地址、L2P映射表的一个或多个L2P条目以及要写入在文件中的数据组。
在416处,处理器104将组合写入请求传输到控制器108。
在418处,控制器108将组合写入请求传输到存储器设备110。在一些方面中,控制器108还可以加密组合写入请求。
在420处,存储器设备110将数据组写入在存储器中,例如,图1中的存储器设备110的存储器114。在一些方面中,存储器设备110基于写入请求确定存储器114的一个或多个物理地址。例如,存储器设备110从写入请求检索一个或多个逻辑地址以及L2P映射表的一个或多个L2P条目。存储器设备110基于L2P映射表的一个或多个L2P条目将一个或多个逻辑地址映射到一个或多个物理地址。存储器设备110可以基于一个或多个物理地址中的可用空间确定一个或多个物理地址不适于存储包含在写入请求中的数据组。存储器设备110可以确定一个或多个更新的物理地址,并且将数据组存储在一个或多个更新的物理地址中。在这样的情况下,由于一个或多个逻辑地址映射到一个或多个更新的物理地址,因此主机设备102中的L2P映射表的一个或多个L2P条目变为脏条目。
在一些方面中,在接收到组合写入请求时,存储器设备110加密组合写入请求。
在422处,存储器设备110基于一个或多个更新的物理地址更新存储在存储器设备110的存储器114中的L2P映射表的一个或多个L2P条目。
在一些方面中,由于存储器设备110如上文所述在步骤408中禁用脏条目通知,因此存储器设备110制止传输关于主机设备102中的L2P映射表的脏条目的通知。
在424处,与图2的206中描述的类似,处理器104生成组合读取请求。组合读取请求包括文件的一个或多个逻辑地址以及存储在主机设备102中的L2P映射表的一个或多个L2P条目。
在426处,处理器104将组合读取请求传输到控制器108。
在428处,控制器108将组合读取请求传输到存储器设备110。在一些方面中,控制器108还可以加密组合读取请求。
在430处,存储器设备110检索存储在存储器设备110中的一个或多个更新的L2P条目。例如,存储器设备110从接收的组合读取请求检索文件的一个或多个逻辑地址。存储器设备110基于一个或多个逻辑地址从存储器设备110的存储器114检索一个或多个更新的L2P条目。在一些方面中,存储器设备可以忽略在组合读取请求中接收的一个或多个L2P条目。
在432处,存储器设备110基于一个或多个更新的物理地址检索数据组。例如,存储器设备110基于一个或多个逻辑地址以及一个或多个更新的L2P条目确定一个或多个更新的物理地址。存储器设备基于一个或多个更新的物理地址检索存储在存储器设备110的存储器114中的数据组。
在434处,存储器设备110将数据组传输到控制器108。
在436处,控制器108将数据组传输到处理器104。
图5示出了用于用清除热配置来管理L2P映射表的示例性方法。为了方便而非限制,可以关于图1和图7的元件描述图5。方法500可以表示电子设备(例如,图1的主机设备102和存储器设备110)用清除热配置来管理L2P映射表的操作。方法500也可以由图7的计算机系统700执行。但是方法500不限于这些附图中描绘的具体方面,并且其他系统可以用于执行该方法,如本领域技术人员将理解的。应当理解,可能不需要所有操作,并且操作可以不以与图5中所示的相同的顺序来执行。
在502处,主机设备102的处理器104生成对应于文件的清除热配置。处理器104可以确定文件不再是热文件。处理器104可以基于文件类型的改变来确定。例如,处理器104可以确定不再包含目录项块或目录的直接节点块的文件不再是热文件。处理器104可以基于用户请求确定文件不再是热文件。
在504处,处理器104将清除热配置传输到控制器108。
在506处,控制器108将清除热配置传输到存储器设备110。在一些方面中,控制器108可以转发由处理器104生成的清除热配置。控制器108还可以基于接收的清除热配置生成并且传输与存储器设备110兼容的新清除热配置。在一些方面中,控制器108可以在传输之前加密清除热配置。
在508处,存储器设备110基于接收的清除热配置启用脏条目通知。例如,在L2P映射表的对应于文件的L2P条目变脏时,存储器设备110可以恢复通知主机设备102。在一些方面中,存储器设备可以恢复使用从主机设备102接收的文件的L2P条目。在一些方面中,在从控制器108接收到清除热配置时,存储器设备110可以解密清除热配置。
在一些实施方式中,在508处,可以将在422处获得的更新的L2P条目上传到主机设备102中的存储器106。因此,更新的L2P条目可以恢复使用。
在510处,存储器设备110将对清除热配置的确认传输到主机设备102的控制器108。确认指示存储器设备110恢复将对应于文件的脏条目通知传输到主机设备102。
在512处,控制器108将对清除热配置的确认传输到处理器104。
在514处,与图3的306中描述的类似,处理器104生成组合写入请求。组合请求包括文件的一个或多个逻辑地址、L2P映射表的一个或多个L2P条目以及要写入在文件中的数据组。
在516处,处理器104将组合写入请求传输到控制器108。
在518处,控制器108将组合写入请求传输到存储器设备110。在一些方面中,控制器108还可以加密组合写入请求。
在520处,存储器设备110将数据组写入在存储器中,例如,图1中的存储器设备110的存储器114。在一些方面中,存储器设备110基于写入请求确定存储器114的一个或多个物理地址。例如,存储器设备110从写入请求检索一个或多个逻辑地址以及L2P映射表的一个或多个L2P条目。存储器设备110基于L2P映射表的一个或多个L2P条目将一个或多个逻辑地址映射到一个或多个物理地址。存储器设备110可以基于一个或多个物理地址中的可用空间确定一个或多个物理地址不适于存储包含在写入请求中的数据组。存储器设备110可以确定一个或多个更新的物理地址,并且将数据组存储在一个或多个更新的物理地址中。在这样的情况下,由于一个或多个逻辑地址映射到一个或多个更新的物理地址,因此主机设备102中的L2P映射表的一个或多个L2P条目变为脏条目。
在一些方面中,在接收到组合写入请求时,存储器设备110解密组合写入请求。
在522处,存储器设备110基于一个或多个更新的物理地址更新存储在存储器设备110的存储器114中的L2P映射表的一个或多个L2P条目。
在524处,存储器设备生成脏条目通知。在一些方面中,脏条目通知指示存储在主机设备102的存储器106中的L2P映射表的一个或多个L2P条目变脏。根据一些方面,存储器设备可以在脏条目通知中包括一个或多个更新的L2P条目。
在526处,存储器设备将脏条目通知传输到主机设备102的控制器108。
在528处,控制器108将脏条目通知传输到处理器104。
在530处,处理器104将L2P更新请求传输到控制器108。L2P更新请求可以包括在脏条目通知中指示的一个或多个L2P条目的标识。在一些方面中,L2P更新请求可以包括从存储器设备110接收的脏条目通知的标识。
在532处,控制器108将L2P更新请求传输到存储器设备110。
在534处,存储器设备110将一个或多个更新的L2P条目传输到控制器108。在一些方面中,存储器设备110可以基于从主机设备102接收的一个或多个更新的L2P条目的标识检索一个或多个更新的L2P条目。存储器设备110还可以基于脏条目通知的标识检索一个或多个更新的L2P条目。
在536处,控制器108将一个或多个更新的L2P条目传输到处理器104。
在538处,处理器104基于从存储器设备110接收的一个或多个更新的L2P条目更新存储在存储器106中的L2P映射表。
图6示出了用于生成设置热配置和清除热配置的示例性方法。为了方便而非限制,可以关于图1和图7的元件描述图6。方法600可以表示电子设备(例如,图1的主机设备102)生成设置热配置和清除热配置的操作。方法600也可以由图7的计算机系统700执行。但是方法600不限于这些附图中描绘的具体方面,并且其他系统可以用于执行该方法,如本领域技术人员将理解的。应当理解,可能不需要所有操作,并且操作可以不以与图6中所示的相同的顺序来执行。
在602处,电子设备确定是否接收到对应于文件的用户请求。用户请求指示文件是否为热文件。如果电子设备确定接收到用户请求,则控制进行至604。
在604处,电子设备确定用户请求是否命令将文件设置为热文件。如果是,则控制进行至操作606。
在606处,如上文在图4的402中讨论的,电子设备生成对应于文件的设置热配置。
返回参考604,如果用户请求命令不将文件设置为热文件,则控制进行至608。
在608处,如上文在图5的502中讨论的,电子设备生成对应于文件的清除热配置。
返回参考602,如果电子设备确定未接收到用户请求,则控制进行至610。
在610处,电子设备通过例如F2FS(闪存友好文件系统)确定文件的文件类型。
在612处,电子设备确定文件类型是否为热文件类型中的一种。例如,热文件类型可以指示文件包括目录项块或目录的直接节点块。如果电子设备确定文件类型为热文件类型中的一种,则控制进行至606,以将文件设置为热文件。
如果电子设备确定文件类型不是热文件类型中的一种,则控制进行至608,以通过如上文描述的生成清除热配置来将文件设置为代码文件。
例如,可以使用一个或多个计算机系统(例如,图7中所示的计算机系统700)来实施各个方面。计算机系统700可以是能够执行本文描述的功能(例如,图1的主机设备102和存储器设备110)的任何公知计算机。计算机系统700包括一个或多个处理器(也称为中央处理单元或CPU),例如,处理器704。处理器704连接到通信基础设施706(例如,总线)。计算机系统700还包括(一个或多个)用户输入/输出设备703,例如监视器、键盘、指向设备等,其通过(一个或多个)用户输入/输出接口702与通信基础设施706通信。计算机系统700还包括主存储器或主要存储器708,例如,随机存取存储器(RAM)。主存储器708可以包括一级或多级缓存。主存储器708具有存储在其中的控制逻辑(例如,计算机软件)和/或数据。
计算机系统700还可以包括一个或多个辅助存储设备或存储器710。辅助存储器710可以包括例如硬盘驱动器712和/或可移动存储设备或驱动器714。可移动存储驱动器714可以是软盘驱动器、磁带驱动器、光盘驱动器、光存储设备、磁带备份设备和/或任何其他存储设备/驱动器。
可移动存储驱动器714可以与可移动存储单元718交互。可移动存储单元718包括计算机可用或可读存储设备,其具有存储在其上的计算机软件(控制逻辑)和/或数据。可移动存储单元718可以是软盘、磁带、光盘、DVD、光存储盘和/或任何其他计算机数据存储设备。可移动存储驱动器714以公知方式从可移动存储单元718读取和/或写入到可移动存储单元718。
根据一些方面,辅助存储器710可以包括用于允许由计算机系统700访问的计算机程序和/或其他指令和/或数据的其他模块、手段或其他方法。这种模块、手段或其他方法可以包括例如可移动存储单元722和接口720。可移动存储单元722和接口720的示例可以包括程序盒和盒接口(例如,在视频游戏设备中找到的)、可移动存储器芯片(例如,EPROM或PROM)和相关联的插座、存储器棒和USB端口、存储器卡和相关联的存储器卡插槽和/或任何其他可移动存储单元和相关联的接口。
计算机系统700还可以包括通信或网络接口724。通信接口724使得计算机系统700能够与远程设备、远程网络、远程实体等(由附图标记728单独地和共同地引用)的任何组合进行通信和交互。例如,通信接口724可以允许计算机系统700通过通信路径726与远程设备728通信,通信路径726可是有线的和/或无线的,并且可以包括LAN、WAN、因特网等的任何组合。控制逻辑和/或数据可以经由通信路径726传输到计算机系统700或从计算机系统700传输。
可以在各种各样的构造和架构中实施前述方面中的操作。因此,可以以硬件、软件或两者来执行前述方面中的一些或所有操作。在一些方面中,有形的、非暂时性装置或制品包括具有存储在其上的控制逻辑(软件)的有形、非暂时性计算机可用或可读介质,其在本文中也称为计算机程序产品或程序存储设备。其包括但不限于计算机系统700、主存储器708、辅助存储器710和可移动存储单元718、722以及体现前述内容的任何组合的有形制品。在由一个或多个数据处理设备(例如,计算机系统700)执行时,这种控制逻辑使得这种数据处理装置如本文所述的那样操作。
基于本公开中包含的教导,如何使用除了图7中所示的数据处理设备、计算机系统和/或计算机架构之外的数据处理设备、计算机系统和/或计算机架构来制造和使用本公开的方面对于(一个或多个)相关领域的技术人员将是显而易见的。特别地,各个方面可以用本文描述的软件、硬件和/或操作系统实施方式之外的软件、硬件和/或操作系统实施方式来操作。
总之,本公开描述了存储器存储系统及其制造方法的各种实施例。
本公开的一些方面提供了包括存储器和耦合到存储器的处理器的主机设备。存储器用于存储逻辑到物理(L2P)映射表,L2P映射表包括将文件的逻辑地址映射到文件的物理地址的条目。处理器被配置为生成对应于文件的第一配置并且将第一配置传输到存储器设备。第一配置命令存储器设备制止将L2P脏条目通知传输到主机设备。L2P脏条目通知对应于文件。
本公开的一些方面涉及主机设备,其中,主机设备还包括控制器。控制器耦合到存储器和处理器,并且被配置为驱动存储器设备。
本公开的一些方面涉及主机设备,其中,处理器还被配置为:生成读取请求,以从存储器设备检索数据组,其中,数据组对应于文件;通过组合读取请求与L2P条目来生成组合请求;并且将组合请求传输到存储器设备。
本公开的一些方面涉及主机设备,其中,处理器还被配置为:生成写入请求,以将数据组写入到存储器设备中,其中,数据组对应于文件;通过组合写入请求与L2P条目来生成组合请求;并且将组合请求传输到存储器设备。
本公开的一些方面涉及主机设备,其中,处理器还被配置为通过确定文件包括目录条目块或目录的直接节点块或者接收到对应于文件的用户请求,来生成对应于文件的第一配置。
本公开的一些方面涉及主机设备,其中,至少一个处理器还被配置为通过经由设置在主机设备中的闪存友好文件系统(F2FS)确定文件是热文件,来生成对应于文件的第一配置。
本公开的一些方面涉及主机设备,其中,处理器还被配置为生成对应于文件的第二配置并且将第二配置传输到存储器设备。第二配置命令存储器设备恢复将对应于文件的L2P脏条目通知传输到主机设备。
本公开的一些方面涉及主机设备,其中,处理器还被配置为:从存储器设备接收L2P脏条目通知;将L2P映射更新请求传输到存储器设备;从存储器设备接收L2P映射更新;并且基于L2P映射更新,更新L2P映射表中的文件的L2P条目。
本公开的一些方面涉及主机设备,其中,第一配置包括对应于文件的设置热配置,并且第二配置包括对应于文件的清除热配置。
本公开的一些方面涉及主机设备,其中,存储器包括RAM存储器。
本公开的一些方面涉及主机设备,其中,主机设备被提供有主机性能增强器(HPB)系统,并且处理器还被配置为响应于制止将L2P脏条目通知传输到主机设备,禁用HPB系统对文件的HPB功能。
本公开的一些方面涉及主机设备,其中,处理器还被配置为响应于恢复传输L2P脏条目通知,启用HPB系统对文件的HPB功能。
本公开的一些方面提供了包括存储器和耦合到存储器的处理器的存储器设备。存储器控制器被配置为:从主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;并且将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:从主机设备接收组合请求,其中,组合请求包括读取请求和文件的L2P条目;基于读取请求确定文件的逻辑地址;基于逻辑地址和L2P条目确定文件的物理地址;基于物理地址从存储器检索数据组;并且将数据组传输到主机设备。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为解密组合请求。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:从主机设备接收组合请求,其中,组合请求包括写入请求和文件的L2P条目;基于写入请求确定文件的逻辑地址;基于逻辑地址和L2P条目确定文件的物理地址;确定第二物理地址;并且将数据组写入在第二物理地址中。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:基于第二物理地址更新L2P条目;并且将更新的L2P条目存储在存储器中。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:从主机设备接收对应于文件的第二配置;基于第二配置恢复将对应于文件的L2P脏条目通知传输到主机设备;将第二确认传输到主机设备,其中,第二确认指示恢复将L2P脏条目通知传输到主机设备。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:从主机设备接收组合请求,其中,组合请求包括写入请求和文件的L2P条目;基于写入请求确定文件的逻辑地址;基于逻辑地址和L2P条目确定文件的物理地址;确定第二物理地址;基于第二物理地址更新所述L2P条目;基于第二配置将对应于更新的L2P条目的L2P脏条目通知传输到主机设备。
本公开的一些方面涉及存储器设备,其中,存储器控制器还被配置为:从主机设备接收L2P映射更新请求;并且将更新的L2P条目传输到主机设备。
本公开的一些方面涉及存储器设备,其中,存储器包括RAM存储器以及NAND闪存存储器,RAM存储器用于存储逻辑到物理(L2P)映射表,逻辑到物理映射表包括将文件的逻辑地址映射到文件的物理地址的条目。
本公开的一些方面涉及存储器设备,其中,第一配置包括对应于文件的设置热配置,并且第二配置包括对应于文件的清除热配置。
本公开的一些方面提供了包括主机设备和存储器设备的系统。主机设备被配置为生成对应于文件的第一配置并且将第一配置传输到存储器设备。存储器设备被配置为从主机设备接收第一配置;并且制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备。
本公开的一些方面涉及系统,其中,主机设备还被配置为:生成对应于文件的第二配置;并且将第二配置传输到存储器设备,其中,第二配置命令存储器设备恢复将对应于文件的L2P脏条目通知传输到主机设备。
本公开的一些方面涉及系统,其中,存储器设备还被配置为:从主机设备接收第二配置;基于第二配置恢复将对应于文件的L2P脏条目通知传输到主机设备;并且将确认传输到主机设备,其中,确认指示恢复将L2P脏条目通知传输到主机设备。
本公开的一些方面涉及系统,其中,存储器设备还被配置为:从主机设备接收L2P条目;更新L2P条目;并且基于第二配置将更新的L2P条目传输到主机设备。
本公开的一些方面涉及系统,其中,主机设备被提供有主机性能增强器(HPB)系统,并且主机设备的处理器被配置为响应于制止将L2P脏条目通知传输到主机设备,禁用HPB系统对文件的HPB功能。
本公开的一些方面涉及系统,其中,处理器还被配置为响应于恢复传输L2P脏条目通知,启用HPB系统对文件的HPB功能。
本公开的一些方面提供了包括主机设备和存储器设备的系统。主机设备包括用于存储逻辑到物理(L2P)映射表的第一存储器,L2P映射表包括将文件的逻辑地址映射到文件的物理地址的条目;主机设备还包括耦合到第一存储器的处理器,并且处理器被配置为:生成对应于文件的第一配置;并且将第一配置传输到存储器设备,其中,第一配置命令存储器设备制止将L2P脏条目通知传输到主机设备,并且其中,L2P脏条目通知对应于文件。存储器设备包括第二存储器和耦合到第二存储器的存储器控制器;存储器控制器被配置为:从主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;并且将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
本公开的一些方面提供了用于管理存储器设备的L2P映射表的方法。方法包括:从与存储器设备耦合的主机设备接收对应于文件的第一配置;制止将对应于文件的逻辑到物理(L2P)脏条目通知传输到主机设备;以及将第一确认传输到主机设备,其中,第一确认指示制止将L2P脏条目通知传输到主机设备。
本公开的一些方面涉及方法,其中,方法还包括:解密组合请求。
本公开的一些方面涉及方法,其中,方法还包括:从主机设备接收组合请求,其中,组合请求包括写入请求和文件的L2P条目;基于写入请求确定文件的逻辑地址;基于逻辑地址和L2P条目确定文件的物理地址;确定第二物理地址;以及将数据组写入在第二物理地址中。
本公开的一些方面涉及方法,其中,方法还包括:基于第二物理地址更新L2P条目;以及将更新的L2P条目存储在存储器中。
本公开的一些方面涉及方法,其中,第一配置包括对应于文件的设置热配置,并且第二配置包括对应于文件的清除热配置。
发明内容和摘要部分可以阐述由(一个或多个)发明人所设想的本公开的一个或多个但不是所有示例性实施例,并且因此,不旨在以任何方式限制本公开和所附权利要求。
尽管本文已经参考用于示例性领域和应用的示例性方面描述了本公开,但是应当理解,本公开不限于此。其他方面和对其的修改是可能的,并且在本公开的范围和精神内。例如,并且不限制本段落的一般性的情况下,各方面不限于附图中所示和/或本文描述的软件、硬件、固件和/或实体。此外,各方面(无论本文是否明确描述)对于本文描述的示例之外的领域和应用具有显著的效用。
本文已经借助于示出了指定功能及其关系的实施方式的功能构建块描述了各方面。为了便于描述,本文任意限定了这些功能性构建块的边界。只要适当地执行指定功能和关系(或其等价物),就可以限定替代的边界。另外,替代方面可以使用不同于本文描述的排序来执行功能块、步骤、操作、方法等。
本文对“一个方面”、“方面”、“示例性方面”或类似短语的引用指示所描述的方面可以包括特定特征、结构或特性,但是每个方面可以不一定包括该特定特征、结构或特性。此外,这些短语不一定指相同的方面。此外,当结合方面描述特定特征、结构或特性时,将这样的特征、结构或特性并入到其他方面中(无论本文是否明确提及或描述)将在(一个或多个)相关领域的技术人员的知识范围内。
本公开的广度和范围不应当由上述示例性方面中的任何一个来限制,而应当仅根据所附权利要求及其等价物来限定。
应当理解,个人可识别信息的使用应当遵循隐私政策和实践,其一般地被认为满足或超过了用于维护用户隐私的行业或政府要求。特别地,个人可识别信息数据应当被管理和处理,以便最小化无意的或未授权的访问或使用的风险,并且授权使用的性质应当被清楚地指示给用户。

Claims (35)

1.一种主机设备,包括:
存储器,所述存储器用于存储逻辑到物理(L2P)映射表,所述逻辑到物理映射表包括将文件的逻辑地址映射到文件的物理地址的条目;以及
处理器,所述处理器耦合到所述存储器并且被配置为:
生成对应于所述文件的第一配置;并且
将所述第一配置传输到存储器设备,
其中,所述第一配置命令所述存储器设备制止将L2P脏条目通知传输到所述主机设备,并且
其中,所述L2P脏条目通知对应于所述文件。
2.根据权利要求1所述的主机设备,还包括控制器,所述控制器耦合到所述存储器和所述处理器,以用于驱动所述存储器设备。
3.根据权利要求1所述的主机设备,其中,所述处理器还被配置为:
生成读取请求,以从所述存储器设备检索数据组,其中,所述数据组对应于所述文件;
通过组合所述读取请求与L2P条目来生成组合请求;并且
将所述组合请求传输到所述存储器设备。
4.根据权利要求1所述的主机设备,其中,所述处理器还被配置为:
生成写入请求,以将数据组写入到所述存储器设备中,其中,所述数据组对应于所述文件;
通过组合所述写入请求与L2P条目来生成组合请求;并且
将所述组合请求传输到所述存储器设备。
5.根据权利要求1所述的主机设备,其中,所述处理器还被配置为通过确定所述文件包括目录条目块或目录的直接节点块或者接收到对应于所述文件的用户请求,来生成对应于所述文件的所述第一配置。
6.根据权利要求1所述的主机设备,其中,所述处理器还被配置为通过经由设置在所述主机设备中的闪存友好文件系统(F2FS)确定所述文件是热文件,来生成对应于所述文件的所述第一配置。
7.根据权利要求1所述的主机设备,其中,所述处理器还被配置为:
生成对应于所述文件的第二配置;并且
将所述第二配置传输到所述存储器设备,
其中,所述第二配置命令所述存储器设备恢复将对应于所述文件的所述L2P脏条目通知传输到所述主机设备。
8.根据权利要求7所述的主机设备,其中,所述处理器还被配置为:
从所述存储器设备接收所述L2P脏条目通知;
将L2P映射更新请求传输到所述存储器设备;
从所述存储器设备接收L2P映射更新;并且
基于所述L2P映射更新,更新所述L2P映射表中的所述文件的L2P条目。
9.根据权利要求7所述的主机设备,其中,所述第一配置包括对应于所述文件的设置热配置,并且所述第二配置包括对应于所述文件的清除热配置。
10.根据权利要求7所述的主机设备,其中,所述存储器包括RAM存储器。
11.根据权利要求1所述的主机设备,其中,所述主机设备被提供有主机性能增强器(HPB)系统,并且所述处理器还被配置为响应于制止将L2P脏条目通知传输到所述主机设备,禁用所述HPB系统对所述文件的HPB功能。
12.根据权利要求11所述的主机设备,其中,所述处理器还被配置为响应于恢复传输所述L2P脏条目通知,启用所述HPB系统对所述文件的HPB功能。
13.一种存储器设备,包括:
存储器;以及
存储器控制器,所述存储器控制器耦合到所述存储器并且被配置为:
从主机设备接收对应于文件的第一配置;
制止将对应于所述文件的逻辑到物理(L2P)脏条目通知传输到所述主机设备;并且
将第一确认传输到所述主机设备,其中,所述第一确认指示制止将所述L2P脏条目通知传输到所述主机设备。
14.根据权利要求13所述的存储器设备,其中,所述存储器控制器还被配置为:
从所述主机设备接收组合请求,其中,所述组合请求包括读取请求和所述文件的L2P条目;
基于所述读取请求确定所述文件的逻辑地址;
基于所述逻辑地址和所述L2P条目确定所述文件的物理地址;
基于所述物理地址从所述存储器检索数据组;并且
将所述数据组传输到所述主机设备。
15.根据权利要求14所述的存储器设备,其中,所述存储器控制器还被配置为解密所述组合请求。
16.根据权利要求13所述的存储器设备,其中,所述存储器控制器还被配置为:
从所述主机设备接收组合请求,其中,所述组合请求包括写入请求和所述文件的L2P条目;
基于所述写入请求确定所述文件的逻辑地址;
基于所述逻辑地址和所述L2P条目确定所述文件的物理地址;
确定第二物理地址;并且
将数据组写入在所述第二物理地址中。
17.根据权利要求16所述的存储器设备,其中,所述存储器控制器还被配置为:
基于所述第二物理地址更新所述L2P条目;并且
将更新的L2P条目存储在所述存储器中。
18.根据权利要求13所述的存储器设备,其中,所述存储器控制器还被配置为:
从所述主机设备接收对应于所述文件的第二配置;
基于所述第二配置恢复将对应于所述文件的所述L2P脏条目通知传输到所述主机设备;并且
将第二确认传输到所述主机设备,其中,所述第二确认指示恢复将所述L2P脏条目通知传输到所述主机设备。
19.根据权利要求18所述的存储器设备,其中,所述存储器控制器还被配置为:
从所述主机设备接收组合请求,其中,所述组合请求包括写入请求和所述文件的L2P条目;
基于所述写入请求确定所述文件的逻辑地址;
基于所述逻辑地址和所述L2P条目确定所述文件的物理地址;
确定第二物理地址;
基于所述第二物理地址更新所述L2P条目;并且
基于所述第二配置将对应于更新的L2P条目的所述L2P脏条目通知传输到所述主机设备。
20.根据权利要求19所述的存储器设备,其中,所述存储器控制器还被配置为:
从所述主机设备接收L2P映射更新请求;并且
将所述更新的L2P条目传输到所述主机设备。
21.根据权利要求13所述的存储器设备,其中,所述存储器包括RAM存储器以及NAND闪存存储器,所述RAM存储器用于存储逻辑到物理(L2P)映射表,所述逻辑到物理映射表包括将所述文件的逻辑地址映射到所述文件的物理地址的条目。
22.根据权利要求18所述的存储器设备,其中,所述第一配置包括对应于所述文件的设置热配置,并且所述第二配置包括对应于所述文件的清除热配置。
23.一种系统,包括:
主机设备,所述主机设备被配置为:
生成对应于文件的第一配置;并且
将所述第一配置传输到存储器设备;以及
存储器设备,所述存储器设备被配置为:
从所述主机设备接收所述第一配置;并且
制止将对应于所述文件的逻辑到物理(L2P)脏条目通知传输到所述主机设备。
24.根据权利要求23所述的系统,其中,所述主机设备还被配置为:
生成对应于所述文件的第二配置;并且
将所述第二配置传输到所述存储器设备,
其中,所述第二配置命令所述存储器设备恢复将对应于所述文件的所述L2P脏条目通知传输到所述主机设备。
25.根据权利要求23所述的系统,其中,所述存储器设备还被配置为:
从所述主机设备接收第二配置;
基于所述第二配置恢复将对应于所述文件的所述L2P脏条目通知传输到所述主机设备;并且
将确认传输到所述主机设备,其中,所述确认指示恢复将所述L2P脏条目通知传输到所述主机设备。
26.根据权利要求25所述的系统,其中,所述存储器设备还被配置为:
从所述主机设备接收L2P条目;
更新所述L2P条目;并且
基于所述第二配置将更新的L2P条目传输到所述主机设备。
27.根据权利要求23所述的系统,其中,所述主机设备被提供有主机性能增强器(HPB)系统,并且所述主机设备的处理器被配置为响应于制止将L2P脏条目通知传输到所述主机设备,禁用所述HPB系统对所述文件的HPB功能。
28.根据权利要求27所述的系统,其中,所述处理器还被配置为响应于恢复传输所述L2P脏条目通知,启用所述HPB系统对所述文件的HPB功能。
29.一种包括主机设备和存储器设备的系统,其中:
所述主机设备包括:
第一存储器,所述第一存储器用于存储逻辑到物理(L2P)映射表,所述逻辑到物理映射表包括将文件的逻辑地址映射到文件的物理地址的条目;以及
处理器,所述处理器耦合到所述第一存储器并且被配置为:
生成对应于所述文件的第一配置;并且
将所述第一配置传输到存储器设备,
其中,所述第一配置命令所述存储器设备制止将L2P脏条目通知传输到所述主机设备,并且其中,所述L2P脏条目通知对应于所述文件;
所述存储器设备包括:
第二存储器;以及
存储器控制器,所述存储器控制器耦合到所述第二存储器并且被配置为:
从主机设备接收对应于文件的第一配置;
制止将对应于所述文件的逻辑到物理(L2P)脏条目通知传输到所述主机设备;并且
将第一确认传输到所述主机设备,其中,所述第一确认指示制止将所述L2P脏条目通知传输到所述主机设备。
30.一种用于管理存储器设备的L2P映射表的方法,包括:
从与所述存储器设备耦合的主机设备接收对应于文件的第一配置;
制止将对应于所述文件的逻辑到物理(L2P)脏条目通知传输到所述主机设备;以及
将第一确认传输到所述主机设备,其中,所述第一确认指示制止将所述L2P脏条目通知传输到所述主机设备。
31.根据权利要求30所述的方法,还包括:
从所述主机设备接收组合请求,其中,所述组合请求包括读取请求和所述文件的L2P条目;
基于所述读取请求确定所述文件的逻辑地址;
基于所述逻辑地址和所述L2P条目确定所述文件的物理地址;
基于所述物理地址从所述存储器设备的存储器检索数据组;以及
将所述数据组传输到所述主机设备。
32.根据权利要求31所述的方法,还包括:解密所述组合请求。
33.根据权利要求30所述的方法,还包括:
从所述主机设备接收组合请求,其中,所述组合请求包括写入请求和所述文件的L2P条目;
基于所述写入请求确定所述文件的逻辑地址;
基于所述逻辑地址和所述L2P条目确定所述文件的物理地址;
确定第二物理地址;以及
将数据组写入在所述第二物理地址中。
34.根据权利要求33所述的方法,还包括:
基于所述第二物理地址更新所述L2P条目;以及
将更新的L2P条目存储在所述存储器中。
35.根据权利要求30所述的方法,其中,所述第一配置包括对应于所述文件的设置热配置,并且所述第二配置包括对应于所述文件的清除热配置。
CN202180001090.4A 2021-03-31 2021-03-31 用于闪存存储器的文件系统和主机性能增强器 Pending CN113227995A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/084657 WO2022205161A1 (en) 2021-03-31 2021-03-31 File system and host performance booster for flash memory

Publications (1)

Publication Number Publication Date
CN113227995A true CN113227995A (zh) 2021-08-06

Family

ID=77081257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180001090.4A Pending CN113227995A (zh) 2021-03-31 2021-03-31 用于闪存存储器的文件系统和主机性能增强器

Country Status (3)

Country Link
US (2) US11829621B2 (zh)
CN (1) CN113227995A (zh)
WO (1) WO2022205161A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4283472A1 (en) * 2022-05-23 2023-11-29 Samsung Electronics Co., Ltd. Method for caching data, a host device for caching data, and a storage system for caching data

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11995349B2 (en) * 2022-10-04 2024-05-28 Silicon Motion, Inc. Method and apparatus for performing access management of memory device in host performance booster architecture with aid of device side table information encoding and decoding
US11994985B2 (en) * 2022-10-04 2024-05-28 Silicon Motion, Inc. Method and apparatus for performing access management of memory device in host performance booster architecture with aid of device side table information encoding and decoding

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538682A (zh) * 2018-12-31 2020-08-14 美光科技公司 混合逻辑到物理高速缓存方案
CN111581121A (zh) * 2019-02-19 2020-08-25 爱思开海力士有限公司 用于管理存储器系统中的映射数据的方法和设备
US20200327063A1 (en) * 2019-04-09 2020-10-15 SK Hynix Inc. Memory system for utilizing a memory included in an external device
CN111831581A (zh) * 2020-07-16 2020-10-27 长江存储科技有限责任公司 数据读取方法、装置及数据存储设备
US20200364148A1 (en) * 2019-05-15 2020-11-19 EMC IP Holding Company LLC Method, device and computer program product for implementing file system
CN112286445A (zh) * 2019-07-22 2021-01-29 爱思开海力士有限公司 存储器系统及控制其温度的方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10430117B2 (en) * 2017-10-23 2019-10-01 Micron Technology, Inc. Host accelerated operations in managed NAND devices
US11409651B2 (en) * 2018-05-18 2022-08-09 Micron Technology, Inc. Host accelerated operations in managed NAND devices
KR20200143871A (ko) * 2019-06-17 2020-12-28 삼성전자주식회사 스토리지를 포함하는 전자 장치 및 그의 스토리지 이용 방법
CN112540939A (zh) * 2019-09-23 2021-03-23 阿里巴巴集团控股有限公司 存储管理装置、存储管理方法、处理器和计算机系统
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
US11861022B2 (en) * 2020-05-20 2024-01-02 Silicon Motion, Inc. Method and computer program product and apparatus for encrypting and decrypting physical-address information
CN113900582A (zh) * 2020-06-22 2022-01-07 慧荣科技股份有限公司 数据处理方法及对应的数据储存装置
KR20220049215A (ko) * 2020-10-14 2022-04-21 삼성전자주식회사 메모리 장치, 호스트 장치 및 이들을 포함하는 메모리 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538682A (zh) * 2018-12-31 2020-08-14 美光科技公司 混合逻辑到物理高速缓存方案
CN111581121A (zh) * 2019-02-19 2020-08-25 爱思开海力士有限公司 用于管理存储器系统中的映射数据的方法和设备
US20200327063A1 (en) * 2019-04-09 2020-10-15 SK Hynix Inc. Memory system for utilizing a memory included in an external device
US20200364148A1 (en) * 2019-05-15 2020-11-19 EMC IP Holding Company LLC Method, device and computer program product for implementing file system
CN112286445A (zh) * 2019-07-22 2021-01-29 爱思开海力士有限公司 存储器系统及控制其温度的方法
CN111831581A (zh) * 2020-07-16 2020-10-27 长江存储科技有限责任公司 数据读取方法、装置及数据存储设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4283472A1 (en) * 2022-05-23 2023-11-29 Samsung Electronics Co., Ltd. Method for caching data, a host device for caching data, and a storage system for caching data
US11921639B2 (en) 2022-05-23 2024-03-05 Samsung Electronics Co., Ltd. Method for caching data, a host device for caching data, and a storage system for caching data

Also Published As

Publication number Publication date
US20240036750A1 (en) 2024-02-01
WO2022205161A1 (en) 2022-10-06
US20220317905A1 (en) 2022-10-06
US11829621B2 (en) 2023-11-28

Similar Documents

Publication Publication Date Title
CN113227995A (zh) 用于闪存存储器的文件系统和主机性能增强器
TWI682278B (zh) 記憶體系統及控制方法
US11294825B2 (en) Memory system for utilizing a memory included in an external device
KR20210027642A (ko) 메모리 시스템에서 맵 정보를 전송하는 방법 및 장치
US20200264973A1 (en) Method and apparatus for managing map data in memory system
US20210216446A1 (en) Controller and method for selecting victim block for wear leveling operation
US11354250B2 (en) Apparatus for transmitting map information in memory system
US11726906B2 (en) Memory device and non-transitory computer readable recording medium
KR20210157537A (ko) 메모리 시스템 및 그의 동작 방법
US20230342294A1 (en) Memory device and non-transitory computer readable recording medium
US20200042460A1 (en) Apparatus and method for managing meta data for engagement of plural memory system to store data
JP2017527877A (ja) フラッシュメモリから/フラッシュメモリへデータを読み取る/書き込むための方法および装置、ならびにユーザ機器
KR20200100956A (ko) 메모리 시스템의 맵 데이터 관리 방법 및 장치
WO2021018052A1 (zh) 一种垃圾回收方法及装置
CN102521156A (zh) 一种映射关系访问方法和装置
US20220253381A1 (en) Memory system and non-transitory computer readable recording medium
US20180349268A1 (en) Block mapping systems and methods for storage device
US11734197B2 (en) Methods and systems for resilient encryption of data in memory
US11409444B2 (en) Memory system and operation method thereof
US11397834B2 (en) Methods and systems for data backup and recovery on power failure
KR20210039185A (ko) 메모리 시스템에서 멀티 스트림 동작을 제공하는 방법 및 장치
CN110929303A (zh) 数据处理方法、装置、系统和固态硬盘
KR20210083888A (ko) 입출력 성능이 향상된 메모리 시스템 및 그의 동작 방법
KR20140042428A (ko) 컴퓨팅 시스템 및 그 데이터 관리 방법
US11960411B2 (en) Apparatus for transmitting map information in memory system

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