CN105824759B - 数据储存装置以及快闪存储器控制方法 - Google Patents

数据储存装置以及快闪存储器控制方法 Download PDF

Info

Publication number
CN105824759B
CN105824759B CN201510001574.5A CN201510001574A CN105824759B CN 105824759 B CN105824759 B CN 105824759B CN 201510001574 A CN201510001574 A CN 201510001574A CN 105824759 B CN105824759 B CN 105824759B
Authority
CN
China
Prior art keywords
block
physical
page
flash memory
arrangement
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
CN201510001574.5A
Other languages
English (en)
Other versions
CN105824759A (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 CN105824759A publication Critical patent/CN105824759A/zh
Application granted granted Critical
Publication of CN105824759B publication Critical patent/CN105824759B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/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
    • 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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

本发明提供一种高效能的快闪存储器控制技术,是在一随机存取存储器以一逻辑页表格记载已自一快闪存储器的一整理中区块收集至一有效数据收集区块的逻辑页。所揭示的技术还将该整理中区块内、对应的逻辑页已载于该逻辑页记录表格的物理页视为无效地址,以略去自该快闪存储器下载逻辑‑物理地位映射表格作物理页有/无效判断。

Description

数据储存装置以及快闪存储器控制方法
技术领域
本发明有关于数据储存装置,特别有关于快闪存储器(flash memory)控制技术。
背景技术
现今数据储存装置常以快闪存储器(flash memory)为储存媒体,常见型式包括与非门型快闪存储器(即NAND flash)…等。
快闪存储器常用作记忆卡(memory card)、通用器行总线闪存装置(USB flashdevice)、固态硬碟(SSD)…等产品。另外有一种应用是采多芯片封装、将快闪存储器与其控制器包装在一起─称为嵌入式快闪存储器模组(如eMMC)。
快闪存储器的实体空间通常包括多个物理区块(physical blocks)。各物理区块包括多物理页(physical pages)。一物理区块需要完整抹除(erase)后方能被重新配置使用。快闪存储器的数据更新并非对同样储存空间作复写,而是将更新数据储存在闲置空间,至于旧储存内容则转为无效。快闪存储器如此操作特性使得其储存空间的管理明显复杂、且不同于其他类型的储存记忆元件。针对快闪存储器而特别设计的快闪存储器控制器相应产生。
发明内容
本发明提供一种高效能的快闪存储器控制技术。
根据本发明的一种实施方式所实现的一数据储存装置包括一快闪存储器以及一控制单元。该快闪存储器提供划分为多个物理区块的储存空间,且上述物理区块各自还划分为多个物理页。该控制单元包括一微控制器以及一随机存取存储器,耦接于一主机与该快闪存储器之间。该微控制器运作来于该随机存取存储器以一逻辑页表格记载已自这些物理区块中一整理中区块收集至这些物理区块中一有效数据收集区块的逻辑页。该微控制器还运作来将该整理中区块内、对应的逻辑页已载于该逻辑页表格的物理页视为无效,以略去自该快闪存储器下载逻辑-物理地址映射表格作物理页有/无效判断。由于逻辑-物理地址映射表格下载非常消耗运算资源,以上技术将明显提升快闪存储器的运作效能。
根据本发明的一种实施方式所实现的一快闪存储器控制方法包括以下步骤:于一随机存取存储器以一逻辑页表格记载已自一快闪存储器的多个物理区块中一整理中区块收集到一有效数据收集区块的逻辑页,该有效数据收集区块配置自这些物理区块;以及,将该物理中区块内、对应的逻辑页已载于该逻辑页表格的物理页视为无效,以略去自该快闪存储器下载逻辑-物理地址映射表格作物理页有/无效判断。
下文特举实施例,并配合附图,详细说明本发明内容。
附图说明
图1图解了一快闪存储器100的储存空间规划;
图2图解了根据本发明的一种实施方式所实现的一数据储存装置200;以及
图3为流程图,示出了根据本发明的一种实施方式,图示了一整理中区块的有效数据如何搬移至一有效数据收集区块。
符号说明
100~快闪存储器;
200~数据储存装置; 202~快闪存储器;
204~控制单元; 206~主机;
210~系统内程序区块; 212~系统资讯区块;
214~闲置区块; 216~数据区块集合;
220~微控制器; 222~随机存取存储器;
224~只读存储器;
BLK1、BLK2…BLKi~物理区块;
CBA、CBB、CBC~数据接收区块;
GCB~有效数据收集区块;
H2F~逻辑-物理地址映射表格;
H2F_Info~逻辑-物理地址映射资讯;
Hpage1、HPage2~逻辑页;
HPage1_I、HPage1_V~逻辑页Hpage1的有效、无效数据;
HPage2_I、HPage2_V~逻辑页Hpage2的有效、无效数据;
Valid_HPages~逻辑页表格;以及
S302…S314~步骤。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应权利要求书界定。
图1图解了一快闪存储器100的储存空间规划,其中划分为多个物理区块(physical blocks)BLK1、BLK2…BLKi…等。各物理区块包括多物理页(physical pages)。主机端以下达逻辑地址方式动态使用快闪存储器的储存空间,因应形成动态变化的一逻辑-物理地址映射关系。
图2图解了根据本发明的一种实施方式所实现的一数据储存装置200,其中包括一快闪存储器202以及一控制单元204。控制单元204耦接于一主机206与该快闪存储器202之间,包括根据主机206所下达的指令操作该快闪存储器202。
快闪存储器202的空间是规划如下,包括:系统内程序区块210、系统资讯区块212、闲置区块214、数据接收区块CBA、CBB、CBC…等、以及数据区块集合216。系统内程序区块210用于储存系统内程序(in-system programs)。系统资讯区块212包括储存一逻辑-物理地址映射表格H2F的区块。数据接收区块CBA、CBB、CBC…等由闲置区块214供应,负责接收写入数据。一种实施方式是采有效数据收集(garbage collection)将散置于这些数据接收区块CBA、CBB、CBC…的有效数据收集起来推入数据区块集合216。图中所示实施例即是对数据接收区块CBA、CBB、CBC作有效数据收集。散置于数据接收区块CBA、CBB、CBC的有效数据是收集至新配置的一有效数据收集区块GCB。有效数据收集区块GCB可在满载后推入数据区块集合216。
控制单元204包括一微控制器220、一随机存取存储器222(如SRAM)以及一只读存储器224。只读存储器224存有只读程序码(如,ROM code)。微控制器220藉由执行该只读存储器224所载的只读程序码或/以及该快闪存储器202系统内程序区块210所载的系统内程序运作。
如图所示,微控制器220运作来于随机存取存储器222管理一逻辑页表格Valid_HPages。该逻辑页表格Valid_HPages针对一整理中区块设计。图中实施例以数据接收区块CBA作整理中区块。整理中区块CBA中对应逻辑页Hpage1的物理页包括:一物理页的有效数据Hpage1_V、以及两物理页的无效数据Hpage1_I。整理中区块CBA中对应逻辑页Hpage2的物理页包括:一物理页的有效数据Hpage2_V、以及另一物理页无效数据Hpage2_I。有效数据Hpage1_V以及Hpage2_V自该整理中区块CBA收集至该有效数据收集区块GCB后,其所对应的逻辑页Hpage1以及Hpage2即记载至该逻辑页表格Valid_HPages。基于该逻辑页表格Valid_HPages(载有逻辑页Hpage1以及Hpage2),微控制器220在读取到整理中区块CBA内、对应逻辑页Hpage1以及Hpage2的物理页Hpage1_I与Hpage2_I时可直接视的为无效数据,以略去自该快闪存储器202下载该逻辑-物理地址映射表格H2F作物理页有/无效判断(核对逻辑-物理页映射)。逻辑-物理地址映射表格H2F的下载以及核对非常耗费系统资源。本技术略过冗余的逻辑-物理地址映射表格H2F下载、核对操作,系统效能因而大幅提升。
图2实施例显示了微控制器220还在随机存取存储器222规划空间储存逻辑-物理地址映射资讯H2F_Info以及有效页数量VP_Count,辅助将有效数据自整理中区块CBA搬移至有效数据收集区块GCB。逻辑-物理地址映射资讯H2F_Info是下载自该快闪存储器202的逻辑-物理地址映射表格H2F。有效页数量VP_Count是用于记录该整理中区块CBA的有效物理页数,是由微控制器220管理维护。该微控制器220可运作来随着每物理页自该整理中区块CBA收集至该数据收集区块GCB,递减该有效物理页数VP_Count。该微控制器220可运作来随着该有效物理页数VP_Count归零而结束收集该整理中区块CBA的内容;例如,继而替换以数据接收区块CBB作整理中区块。该微控制器220更可设计成自该整理中区块CBA的末端物理页起始收集有效数据,以利有效数据收集。
图3为流程图示出了根据本发明的一种实施方式,图解了一整理中区块的有效数据如何搬移至一有效数据收集区块;以下以图2的整理中区块CBA的有效数据如何搬移至该有效数据收集区块GCB说明。步骤S302用于读取该物理区块CBA的物理页N内部信息,以判读出该物理页N所对应的逻辑页HPage_for_N。N为数字,反映该物理页在该整理中区块CBA的位置。步骤S304查询该逻辑页表格Valid_Hpages。倘若该逻辑页表格Valid_Hpages未载有该逻辑页HPage_for_N,则流程进行步骤S306,下载逻辑-物理地址映射表格H2F,使该随机存取存储器222储存逻辑-物理地址映射资讯H2F_Info。步骤S308查询该逻辑-物理地址映射资讯H2F_Info(复核逻辑页HPage_for_N与物理页N如此对应关系是否符合该逻辑-物理地址映射资讯H2F_Info内容),以确认物理页N储存有效数据或无效数据。若物理页N所对应的逻辑页HPage_for_N符合该逻辑-物理地址映射资讯H2F_Info内容,则认定物理页N是有效数据,流程进入步骤S310,把物理页N收集至该有效数据收集区块GCB,随之改动该逻辑-物理地址映射表格H2F、且递减该整理中区块CBA的有效物理页数VP_Count。步骤S312随后将该逻辑页HPage_for_N记录于该逻辑页表格Valid_Hpages。步骤S314用于确认有效物理页数VP_Count是否已归零,以于该有效物理页数VP_Count归零时结束收集该整理中区块CBA的内容。倘若步骤S308判定物理页N储存无效数据,流程同样进行步骤S314,确认该整理中区块CBA是否还余留有效数据。倘若步骤S314判定该有效物理页数VP_Count尚未归零,则流程进行步骤S316,递减N值,流程回到步骤S302。N值设计意图自该整理中区块CBA的末端物理页起始收集有效数据。
基于以上技术内容,本发明还涉及快闪存储器的控制方法,不限定以特定架构的控制单元实现。此外,其他采用同样概念控制一快闪存储器的技术都属于本发明所欲保护的范围。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何熟悉本技术领域者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当由权利要求书界定为准。

Claims (10)

1.一种数据储存装置,包括:
一快闪存储器,提供划分为多个物理区块的储存空间,且上述物理区块各自更划分为多个物理页;以及
一控制单元,包括一微控制器以及一随机存取存储器,耦接于一主机与该快闪存储器之间;
其中:
该微控制器运作来于该随机存取存储器以一逻辑页表格记载自这些物理区块中一整理中区块收集至这些物理区块中一有效数据收集区块的逻辑页;且
该微控制器运作来将该整理中区块内、对应的逻辑页已载于该逻辑页表格的物理页视为无效,以略去自该快闪存储器下载逻辑-物理地址映射表格作物理页有/无效判断。
2.如权利要求1所述的数据储存装置,其特征在于:
该微控制器运作来于该随机存取存储器还以一有效页数量记录该整理中区块的有效物理页数。
3.如权利要求2所述的数据储存装置,其特征在于,:
该微控制器运作来随着每物理页自该整理中区块收集至该有效数据收集区块,递减该有效物理页数。
4.如权利要求3所述的数据储存装置,其特征在于,:
该微控制器运作来随着该有效物理页数归零而结束收集该整理中区块的内容。
5.如权利要求4所述的数据储存装置,其特征在于,:
该微控制器运作来自该整理中区块的末端物理页起始收集有效数据。
6.一种快闪存储器控制方法,包括:
于一随机存取存储器以一逻辑页表格记载自一快闪存储器的多个物理区块中一整理中区块收集至一有效数据收集区块的逻辑页,该有效数据收集区块是配置自这些物理区块;以及
将该整理中区块内、对应的逻辑页已载于该逻辑页表格的物理页视为无效,
以略去自该快闪存储器下载逻辑-物理地址映射表格作物理页有/无效判断。
7.如权利要求6所述的快闪存储器控制方法,其特征在于,还包括:
于该随机存取存储器更以一有效页数量记录该整理中区块的有效物理页数。
8.如权利要求7所述的快闪存储器控制方法,其特征在于,还包括:
随着每物理页自该整理中区块收集至该有效数据收集区块,递减该有效物理页数。
9.如权利要求8所述的快闪存储器控制方法,其特征在于,还包括:
随着该有效物理页数归零结束收集该整理中区块的内容。
10.如权利要求9所述的快闪存储器控制方法,其特征在于,还包括:
自该整理中区块的末端物理页起始收集有效数据。
CN201510001574.5A 2014-10-31 2015-01-04 数据储存装置以及快闪存储器控制方法 Active CN105824759B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW103137753 2014-10-31
TW103137753A TWI604307B (zh) 2014-10-31 2014-10-31 資料儲存裝置以及快閃記憶體控制方法

Publications (2)

Publication Number Publication Date
CN105824759A CN105824759A (zh) 2016-08-03
CN105824759B true CN105824759B (zh) 2018-09-18

Family

ID=55852796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510001574.5A Active CN105824759B (zh) 2014-10-31 2015-01-04 数据储存装置以及快闪存储器控制方法

Country Status (3)

Country Link
US (1) US10089225B2 (zh)
CN (1) CN105824759B (zh)
TW (1) TWI604307B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI619018B (zh) * 2016-11-10 2018-03-21 慧榮科技股份有限公司 可用於資料儲存裝置之垃圾蒐集方法
CN106528446B (zh) * 2016-11-17 2019-08-23 深圳市先天海量信息技术有限公司 闪存数据的控制方法及控制系统
TWI633437B (zh) 2017-05-26 2018-08-21 慧榮科技股份有限公司 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法
CN109117383B (zh) * 2017-06-25 2022-09-20 慧荣科技股份有限公司 管理闪存模块的方法和闪存控制器
CN109840218B (zh) * 2017-11-24 2023-08-01 深圳大心电子科技有限公司 有效数据管理方法以及存储控制器
CN108334457B (zh) * 2018-02-12 2020-06-30 杭州宏杉科技股份有限公司 一种io处理方法及装置
US10936199B2 (en) 2018-07-17 2021-03-02 Silicon Motion, Inc. Flash controllers, methods, and corresponding storage devices capable of rapidly/fast generating or updating contents of valid page count table
TWI776028B (zh) * 2019-03-14 2022-09-01 點序科技股份有限公司 快閃記憶體管理方法及快閃記憶體

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201202926A (en) * 2010-01-27 2012-01-16 Toshiba Kk Memory management device and memory management method
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法
TW201324144A (zh) * 2011-12-01 2013-06-16 Silicon Motion Inc 快閃記憶體儲存陣列控制方法、與快閃記憶體
TW201348958A (zh) * 2012-05-30 2013-12-01 Silicon Motion Inc 資料儲存裝置與資料儲存裝置操作方法
CN103678145A (zh) * 2012-09-06 2014-03-26 慧荣科技股份有限公司 数据储存装置与快闪存储器控制方法
TW201413453A (zh) * 2012-09-20 2014-04-01 Silicon Motion Inc 資料儲存裝置以及快閃記憶體控制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005066793A2 (en) 2003-12-30 2005-07-21 Sandisk Corporation Non-volatile memory and method with non-sequential update block management
US7139864B2 (en) 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US8397014B2 (en) * 2008-02-04 2013-03-12 Apple Inc. Memory mapping restore and garbage collection operations
US8688894B2 (en) 2009-09-03 2014-04-01 Pioneer Chip Technology Ltd. Page based management of flash storage
KR102053953B1 (ko) 2013-02-04 2019-12-11 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 프로그램 방법
CN104424110B (zh) * 2013-09-10 2017-11-14 Lsi公司 固态驱动器的主动回收

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201202926A (en) * 2010-01-27 2012-01-16 Toshiba Kk Memory management device and memory management method
TW201324144A (zh) * 2011-12-01 2013-06-16 Silicon Motion Inc 快閃記憶體儲存陣列控制方法、與快閃記憶體
TW201348958A (zh) * 2012-05-30 2013-12-01 Silicon Motion Inc 資料儲存裝置與資料儲存裝置操作方法
CN103678145A (zh) * 2012-09-06 2014-03-26 慧荣科技股份有限公司 数据储存装置与快闪存储器控制方法
TW201413453A (zh) * 2012-09-20 2014-04-01 Silicon Motion Inc 資料儲存裝置以及快閃記憶體控制方法
CN103136121A (zh) * 2013-03-25 2013-06-05 中国人民解放军国防科学技术大学 一种固态盘的缓存管理方法

Also Published As

Publication number Publication date
CN105824759A (zh) 2016-08-03
TW201616363A (zh) 2016-05-01
TWI604307B (zh) 2017-11-01
US10089225B2 (en) 2018-10-02
US20160124845A1 (en) 2016-05-05

Similar Documents

Publication Publication Date Title
CN105824759B (zh) 数据储存装置以及快闪存储器控制方法
CN104750626B (zh) 数据储存装置以及快闪存储器控制方法
CN103080911B (zh) 存储器块的先占式垃圾回收
CN107644667B (zh) 对用于各种工作负载的固态驱动器的内部预处理
CN105740157B (zh) 数据储存装置以及快闪存储器控制方法
EP1693739B1 (en) Method of writing data to non-volatile memory
CN110058796A (zh) 数据储存装置
CN108664418A (zh) 数据储存装置以及其操作方法
CN106527963B (zh) 存储器系统及主机装置
CN108572922A (zh) 数据储存装置以及其操作方法
CN104484283B (zh) 一种降低固态硬盘写放大的方法
JP2009503746A5 (zh)
TW201413451A (zh) 非揮發性記憶體的資料收集方法
US20130166828A1 (en) Data update apparatus and method for flash memory file system
CN106383666B (zh) 一种数据存储方法及装置
CN109558075B (zh) 一种利用数据冷热属性存储数据的方法及装置
WO2016195242A1 (ko) 비휘발성 메모리 시스템
CN110389712B (zh) 数据写入方法及其装置、固态硬盘和计算机可读存储介质
CN105988939A (zh) 数据储存装置以及快闪存储器控制方法
CN105653466B (zh) 数据储存装置以及快闪存储器控制方法
CN105825082B (zh) 数据储存装置以及快闪存储器控制方法
CN105740171B (zh) 一种ftl数据回收时掉电保护的方法
Kwon et al. Hot-LSNs distributing wear-leveling algorithm for flash memory
CN107025062A (zh) 数据储存方法及其系统
CN116610595A (zh) 固态硬盘的管理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant