CN108073359B - 数据储存装置的操作方法 - Google Patents

数据储存装置的操作方法 Download PDF

Info

Publication number
CN108073359B
CN108073359B CN201711120600.1A CN201711120600A CN108073359B CN 108073359 B CN108073359 B CN 108073359B CN 201711120600 A CN201711120600 A CN 201711120600A CN 108073359 B CN108073359 B CN 108073359B
Authority
CN
China
Prior art keywords
storage medium
sub
volatile storage
data
cached
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
CN201711120600.1A
Other languages
English (en)
Other versions
CN108073359A (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 CN108073359A publication Critical patent/CN108073359A/zh
Application granted granted Critical
Publication of CN108073359B publication Critical patent/CN108073359B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1063Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently virtually addressed
    • 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
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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
    • 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
    • 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
    • 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
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • 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/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • 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/313In storage device
    • 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/65Details of virtual memory and virtual address translation
    • 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

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提出一种数据储存装置的操作方法。所述方法包括下列步骤:将对照表切割成复数个子对照表;接收包含数据地址以及命令类别的存取命令;判断数据地址所对应的目标子对照表是否已被快取;以及当判断为否时,读取并快取目标子对照表。

Description

数据储存装置的操作方法
技术领域
本发明涉及一种数据储存的相关技术,尤其是一种数据储存装置的操作方法。
背景技术
数据储存装置,尤其是采用非易失性储存媒体的数据储存装置,包括复数个数据区块,每一数据区块包含复数个数据页,每一数据页用以储存至少一储存单位的数据,储存单位可为512B或较佳为4KB。数据区块又依据其储存数据与否而区分为空白数据区块(或称为备用资料区块)与非空白数据区块(或称使用中数据区块)。为了进行数据的管理及存取,数据储存装置需要建立及储存一个数据的逻辑至实体地址对照表(host logical-to-Flash physical address mapping table,H2F table),在本发明中简称为对照表,并于数据储存装置运作时将对照表复制至动态随机存取存储器(dynamic random accessmemory,DRAM),以增加数据的管理及存取上的效率。另外,对照表的大小依其记录内容而不同,较常见的大小为数据储存装置的数据储存容量的1/1000,以数据储存容量为256GB(gigabyte)的数据储存装置为例,对照表的大小为256MB(megabyte),因此,数据储存装置所配置的DRAM的大小较佳为大于或等于256MB,以储存一整个对照表以及数据储存装置运作时所需要的系统数据、参数、或程序。
对于仅配置小型DRAM或SRAM,即DRAM或SRAM的容量不足以储存一整个对照表,的数据储存装置而言,如何有效率地运用所配置的小型DRAM或SRAM以进行数据的管理及存取,存在着技术上的需求。
发明内容
本发明的一目的在提供一种数据储存装置的操作方法,其可使数据储存装置有效率地运用其所配置的小型DRAM或SRAM以进行数据的管理及存取。
本发明提出一种数据储存装置的操作方法,此操作方法包括下列步骤:将对照表切割成复数个子对照表;接收包含数据地址以及命令类别的存取命令;判断数据地址所对应的目标子对照表是否已被快取;以及当判断为否时,读取并快取目标子对照表。
本发明另提出一种数据储存装置的操作方法,此操作方法包括下列步骤:将对照表切割成复数个子对照表;接收包含数据地址以及命令类别的存取命令;依据快取表来判断数据地址所对应的目标子对照表是否已被快取;以及当判断为否时,读取并以目标子H2F对照表替代已快取的其中之一复数子对照表,并更新快取表。
由于对照表被分割成复数个子对照表,因此,子对照表可储存至小型DRAM中,如此一来,数据储存装置可依据子对照表进行数据的管理,另外,针对子对照表的管理也提出一个改善的方法,故能达到本发明提高数据储存装置的效能的目的。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举优选实施例,并配合附图,详细说明如下。
附图说明
图1绘有依照本发明一实施例的数据储存装置及其与主机的电性耦接关系。
图2为依照本发明一实施例的数据储存装置的操作方法的流程图。
图3系绘示将子对照表#0储存至易失性储存媒体230以及易失性储存媒体218中。
图4系绘示易失性储存媒体230快取了16个子对照表。
图5系绘示依照本发明一实施例的快取表。
图6系绘示以子对照表#16取代子对照表#0并将子对照表#16储存至易失性储存媒体230。
具体实施方式
图1绘有依照本发明一实施例的数据储存装置及其与主机的电性耦接关系。请参照图1,主机100包括有中央处理单元110与连接接口120。连接接口120适于电性耦接数据储存装置200。中央处理单元110用以透过连接接口120传送命令、数据给数据储存装置200,例如是传送读取命令给数据储存装置200,或是传送写入命令及欲写入数据储存装置200的数据给数据储存装置200。而在此例中,主机100包括以计算机、手机、平板、相机或是其他具运算功能的手持式电子装置来实现。
数据储存装置200主要包括有控制单元210、非易失性储存媒体220与易失性储存媒体230。控制单元210系电性耦接非易失性储存媒体220与易失性储存媒体230,并用以控制非易失性储存媒体220与易失性储存媒体230的操作(例如进行数据的存取与抹除)。在此例中,易失性储存媒体230例如是以DRAM或SRAM来实现,而非易失性储存媒体220例如是以闪存(flash memory)、磁阻式随机存取存储器(magnetoresistive RAM)、铁电随机存取存储器(ferroelectric RAM)、电阻式存储器(resistive RAM,RRAM)等具有长时间数据保存的存储器装置来实现。
控制单元210主要包括有接口逻辑212、微处理器214、控制逻辑216与易失性储存媒体218,其中易失性储存媒体218例如是以缓存器、SRAM、DRAM来实现,且此易失性储存媒体218的容量较佳小于易失性储存媒体230的容量。控制单元210的微处理器214系电性耦接接口逻辑212与控制逻辑214,而其中控制逻辑214又电性耦接易失性储存媒体218、易失性储存媒体230与非易失性储存媒体220。微处理器214用以透过控制逻辑216存取易失性储存媒体218、易失性储存媒体230与非易失性储存媒体220中的数据,且微处理器214还用以透过接口逻辑212接收来自主机100的命令或数据,例如:写入命令、欲写入数据储存装置200的数据、倾倒(flush)命令、或抺除命令等。
在下述的说明中,将以下列参数为例进行本发明的说明,但不以此为限。非易失性储存媒体220的容量为256GB,不但用以储存来自于主机100的数据外,也储存对照表、机密数据、保护数据等;对照表的大小等于非易失性储存媒体220的容量的1/1,000,因此,大小为256MB,对照表的一笔记录为4B,因此对照表包含64,000,000笔记录;易失性储存媒体230较佳为DRAM,其容量为1MB,不足以储存一整个对照表;易失性储存媒体218较佳为SRAM,其容量为128KB,小于易失性储存媒体230的容量。
图2即为依照本发明一实施例的数据储存装置的操作方法的流程图,请同时参照图1与图2。步骤S202:将对照表切割成复数个子对照表,其中,对照表较佳以逻辑区块地址(logical Block Address,LBA)为索引依序建立;或者,以一个间隔值为单位,例如;间隔值为65536个LBA,依序建立,但是在此单位内的LBA可依LBA值或数据收到的顺序依序建立。易失性储存媒体218的容量为128KB,并规划用以储存2个子对照表,则每一子对照表的大小于64KB。因此,对照表以64KB为单位进行分割,可以分割成4,000个子对照表,分别为子对照表#0~3,999,每一个子对照表可以储存16384笔记录。
步骤S204:接收包含一数据地址以及一命令类别的一个存取命令。控制单元210可接收到来自主机100的存取命令,其中,存取命令包含数据地址,其中,数据地址较佳为一个数值,例如:LBA,或者二个数值,分别是第一LBA以及第二LBA,分别代表数据起点以及数据终点;或者,LBA以及一个数量值,分别代表数据起点以及数据的笔数。命令类别用以表示此存取命令的种类,例如,读取、写入、倾倒命令或抺除命令,例如,存取命令为读取数据地址的数据。
步骤S206:判断数据地址所对应的目标子对照表是否已被快取,如果是则执行步骤S210;如果否则执行步骤S208,其中目标子对照表为复数个子对照表其中之一。假设数据地址为LBA10,000,而一个子对照表可以储存16384笔记录,10000除以16384的商(quotient)为0,因此,LBA10,000所对应的目标子对照表为子对照表#0。如果子对照表#0已储存在易失性储存媒体230或易失性储存媒体218,则目标子对照表被快取;相反的,子对照表#0未储存在易失性储存媒体230或易失性储存媒体218的话,则目标子对照表未被快取。
步骤S208:读取并快取目标子对照表。由于子对照表#0并未储存至易失性储存媒体230或易失性储存媒体218,因此,控制单元210从非易失性储存媒体220读取出子对照表#0并将它储存至易失性储存媒体218并复制至(或快取)易失性储存媒体230,如图3所示,子对照表#0乃储存(复制)至易失性储存媒体230以及易失性储存媒体218,接着,执行步骤S210。
步骤S210:依据目标子对照表以及数据地址来执行存取命令。由于子对照表#0已储存在易失性储存媒体230或易失性储存媒体218,因此,控制单元210依据LBA10,000在子对照表#0所对应数据区块编号以及数据页编号而找到LBA10,000所对应的数据,并执行存取命令的读取LBA10,000的所对应的数据,并结束本发明数据储存装置的操作方法的执行。
当本发明数据储存装置的操作方法执行一段时间后,易失性储存媒体230快取了16个子对照表,例如:子对照表#0-15,如图4所示,此时,如何有效率等管理易失性储存媒体230存在着另一个技术需求。在本发明另一实施例中,步骤S202变更为:将对照表切割成复数个子对照表,其中,部份复数子对照表已快取至易失性储存媒体230,故称之为复数已快取子对照表,并将复数已快取子对照表记录至一快取表;步骤S206变更为:依据一快取表来判断数据地址所对应的目标子对照表是否为复数已快取子对照表其中之一;步骤S208变更为:读取并以目标子对照表替代复数已快取子对照表其中之一,并更新快取表,其中,被替代的复数已快取子对照表其中之一的读取次数(read count)乃复数已快取子对照表的所有读取次数中最低者,或者,所有快取时间中最早者。如图5所示,为了有效率地使用易失性储存媒体230的空间,控制单元210较佳建立一张快取表,用以记录易失性储存媒体230的字段(slot)编号与已快取子对照表的编号的数据,或者,更记录每一已快取子对照表的读取次数或快取时间等信息,其中,记录于字段#0的子对照表#0具有所有复数已快取子对照表中最低的读取次数(值为1)或最早的快取时间(100)。如图6所示,假设,此时的目标子对照表为子对照表#16,由于易失性储存媒体230已无空间可以储存子对照表#16,因此,控制单元210可以直接以子对照表#16替代任何一个已快取子对照表,例如,子对照表#33,并将子对照表#16储存至子对照表#33所储存的字段,即字段#3,并更新快取表。或者,因为子对照表#0具有所有已快取子对照表中最低的读取次数(值为1)或最早的快取时间(100),所以控制单元210决定以子对照表#16取代子对照表#0并将子对照表#16储存至子对照表#0所储存的字段,即字段#0。最后,将子对照表#16的子对照表的编号(值为16)、读取次数(值为0)及快取时间(400)更新至快取表的字段#0。
当目标子对照表快取至易失性储存媒体230后,如果控制单元210要存取目标子对照表时,控制单元210仍需将目标子对照表从易失性储存媒体230复制至易失性储存媒体218才能进行存取。由于目标子对照表从易失性储存媒体230复制至易失性储存媒体218所需的时间远少于自非易失性储存媒体220读取目标子对照表所需的时间,因此,将目标子对照表快取至易失性储存媒体230可显著地提高数据储存装置200的执行效能。
综上所述,由于对照表被分割成复数个子对照表,因此,复数个子对照表可分别储存至DRAM中,如此一来,数据储存装置200的控制单元210可将子对照表读取并快取至DRAM中,再依据子对照表进行数据的管理,另外,针对子对照表的管理也提出一个改善的方法,故能达到本发明提高数据储存装置的效能的目的。
虽然本发明以前述的实施例揭露如上,然其并非用于限定本发明,任何熟习此技艺者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的专利保护范围须视本说明书所附的申请专利范围所界定者为准。

Claims (11)

1.一种数据储存装置的操作方法,其特征在于,所述数据储存装置包括控制单元、非易失性储存媒体以及第一易失性储存媒体,所述控制单元包括第二易失性储存媒体,所述操作方法包括:将所述非易失性储存媒体储存的对照表切割成复数个子对照表;
接收包含数据地址以及命令类别的存取命令;
判断所述数据地址所对应的目标子对照表是否已被快取至所述第一易失性储存媒体,其中所述目标子对照表为所述复数个子对照表其中之一;
当判断为否时,从所述非易失性储存媒体中读取所述目标子对照表并储存至所述第二易失性储存媒体,并自所述第二易失性储存媒体快取所述目标子对照表至所述第一易失性储存媒体;以及
当判断为是时,将所述目标子对照表从所述第一易失性储存媒体复制至所述第二易失性储存媒体,并通过所述第二易失性储存媒体存取所述目标子对照表。
2.如权利要求1所述的操作方法,其特征在于,还包括:
依据所述目标子对照表以及所述数据地址来执行所述存取命令。
3.如权利要求1所述的操作方法,其特征在于,所述对照表系以逻辑区块地址为索引依序建立。
4.如权利要求1所述的操作方法,其特征在于,所述数据地址包括逻辑区块地址。
5.如权利要求1所述的操作方法,其特征在于,所述数据地址包括逻辑区块地址与数量值,所述数量值表示数据的笔数。
6.一种数据储存装置的操作方法,其特征在于,所述数据储存装置包括控制单元、非易失性储存媒体以及第一易失性储存媒体,所述控制单元包括第二易失性储存媒体,所述操作方法包括:
将所述非易失性储存媒体储存的对照表切割成复数个子对照表,其中,部份所述复数个子对照表为已被快取至所述第一易失性储存媒体的复数个已快取子对照表,并将所述复数个已快取子对照表记录至快取表;
接收包含数据地址以及命令类别的存取命令;
依据所述快取表来判断所述数据地址所对应的目标子对照表是否为所述复数个已快取子对照表其中之一;
当判断为否时,从所述非易失性储存媒体读取所述目标子对照表并储存至所述第二易失性储存媒体,并以储存于所述第二易失性储存媒体的所述目标子对照表替代所述第一易失性储存媒体中的其中之一所述复数个已快取子对照表,并更新所述快取表;以及
当判断为是时,将所述目标子对照表从所述第一易失性储存媒体复制至所述第二易失性储存媒体,并自所述第二易失性储存媒体存取所述目标子对照表。
7.如权利要求6所述的操作方法,其特征在于,更包括:
依据所述目标子对照表以及所述数据地址来执行所述存取命令。
8.如权利要求6所述的操作方法,其特征在于,被替代的其中之一所述复数个已快取子对照表的读取次数值为所述复数个已快取子对照表的复数个读取次数的端点值。
9.如权利要求6所述的操作方法,其特征在于,被替代的其中之一所述复数个已快取子对照表的快取时间为所述复数个已快取子对照表的复数个快取时间的端点值。
10.如权利要求6所述的操作方法,其特征在于,所述快取表包括记录所述第一易失性储存媒体的字段编号与所述复数个已快取子对照表的编号的数据。
11.如权利要求10所述的操作方法,其特征在于,所述快取表更包括记录所述复数个已快取子对照表的复数个读取次数或复数个快取时间这二者的至少其中之一。
CN201711120600.1A 2016-11-15 2017-11-14 数据储存装置的操作方法 Active CN108073359B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW105137240A TWI664568B (zh) 2016-11-15 2016-11-15 資料儲存裝置之操作方法
TW105137240 2016-11-15

Publications (2)

Publication Number Publication Date
CN108073359A CN108073359A (zh) 2018-05-25
CN108073359B true CN108073359B (zh) 2021-01-08

Family

ID=62106411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711120600.1A Active CN108073359B (zh) 2016-11-15 2017-11-14 数据储存装置的操作方法

Country Status (3)

Country Link
US (2) US10649913B2 (zh)
CN (1) CN108073359B (zh)
TW (1) TWI664568B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI709854B (zh) * 2019-01-21 2020-11-11 慧榮科技股份有限公司 資料儲存裝置及用於存取邏輯至物理位址映射表之方法
US11042374B2 (en) * 2019-05-02 2021-06-22 International Business Machines Corporation Non-volatile dual in-line memory module storage
US10997080B1 (en) 2020-02-11 2021-05-04 Western Digital Technologies, Inc. Method and system for address table cache management based on correlation metric of first logical address and second logical address, wherein the correlation metric is incremented and decremented based on receive order of the first logical address and the second logical address
US20220374360A1 (en) * 2021-05-18 2022-11-24 Macronix International Co., Ltd. Memory device and method for accessing memory device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458659A (zh) * 2007-12-14 2009-06-17 环达电脑(上海)有限公司 闪存储存系统及其方法
TW201211763A (en) * 2010-09-14 2012-03-16 Via Tech Inc Flash memory device and operation method thereof
CN103455437A (zh) * 2012-05-30 2013-12-18 慧荣科技股份有限公司 数据储存装置与数据储存装置操作方法
TW201405311A (zh) * 2012-07-19 2014-02-01 Jmicron Technology Corp 記憶體控制方法及記憶體控制電路

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901499B2 (en) * 2002-02-27 2005-05-31 Microsoft Corp. System and method for tracking data stored in a flash memory device
KR101434567B1 (ko) * 2007-05-18 2014-08-27 삼성전자 주식회사 비휘발성 메모리의 맵핑 테이블 관리 장치 및 방법
TWI379197B (en) * 2008-05-28 2012-12-11 Genesys Logic Inc Flash memory storage management system and related method
US8959280B2 (en) * 2008-06-18 2015-02-17 Super Talent Technology, Corp. Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
US8806144B2 (en) * 2009-05-12 2014-08-12 Stec, Inc. Flash storage device with read cache
KR101736384B1 (ko) * 2010-09-29 2017-05-16 삼성전자주식회사 비휘발성 메모리 시스템
TWI514140B (zh) * 2013-02-05 2015-12-21 Via Tech Inc 非揮發性記憶裝置及其操作方法
US9383924B1 (en) * 2013-02-27 2016-07-05 Netapp, Inc. Storage space reclamation on volumes with thin provisioning capability
KR102254392B1 (ko) * 2014-05-12 2021-05-25 삼성전자주식회사 메모리 컨트롤러의 동작 방법 및 불휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 불휘발성 메모리 시스템
US9507711B1 (en) * 2015-05-22 2016-11-29 Sandisk Technologies Llc Hierarchical FTL mapping optimized for workload
TWI537728B (zh) * 2015-09-23 2016-06-11 群聯電子股份有限公司 緩衝記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
US10289544B2 (en) * 2016-07-19 2019-05-14 Western Digital Technologies, Inc. Mapping tables for storage devices
US10380028B2 (en) * 2016-12-30 2019-08-13 Western Digital Technologies, Inc. Recovery of validity data for a data storage system
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458659A (zh) * 2007-12-14 2009-06-17 环达电脑(上海)有限公司 闪存储存系统及其方法
TW201211763A (en) * 2010-09-14 2012-03-16 Via Tech Inc Flash memory device and operation method thereof
CN103455437A (zh) * 2012-05-30 2013-12-18 慧荣科技股份有限公司 数据储存装置与数据储存装置操作方法
TW201405311A (zh) * 2012-07-19 2014-02-01 Jmicron Technology Corp 記憶體控制方法及記憶體控制電路

Also Published As

Publication number Publication date
US11269783B2 (en) 2022-03-08
TW201818228A (zh) 2018-05-16
US10649913B2 (en) 2020-05-12
US20180137057A1 (en) 2018-05-17
TWI664568B (zh) 2019-07-01
US20200218667A1 (en) 2020-07-09
CN108073359A (zh) 2018-05-25

Similar Documents

Publication Publication Date Title
CN108073522B (zh) 可用于数据储存装置的垃圾搜集方法
KR100526190B1 (ko) 플래시 메모리의 재사상 방법
US9990277B2 (en) System and method for efficient address translation of flash memory device
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US20190220396A1 (en) Data Storage Device
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
CN108073359B (zh) 数据储存装置的操作方法
US20190391756A1 (en) Data storage device and cache-diversion method thereof
JP2019179455A (ja) 記憶装置及びコンピュータシステム
US20100318726A1 (en) Memory system and memory system managing method
CN112684976A (zh) 用于执行迁移操作的存储器系统及其操作方法
CN108073524B (zh) 可应用于数据储存装置的存储器管理方法
TW201826125A (zh) 快閃記憶體裝置之記憶體控制方法
KR101026634B1 (ko) 하이브리드 플래시 메모리의 데이터 저장 방법
CN110968527B (zh) Ftl提供的缓存
KR100533683B1 (ko) 플래시 메모리의 데이터 관리 장치 및 방법
US11269534B2 (en) Data storage device and non-volatile memory control method
KR20090116505A (ko) 불휘발성 메모리 장치를 위한 파일 시스템 및 그것을포함하는 컴퓨팅 시스템
CN109840219B (zh) 大容量固态存储设备的地址转换系统与方法
KR100982440B1 (ko) 단일 플래시 메모리의 데이터 관리시스템
US11455246B2 (en) Garbage collection method for data storage device
CN111177033A (zh) 一种固态硬盘的使用方法
CN110968525A (zh) Ftl提供的缓存、其优化方法与存储设备

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