TWI776028B - 快閃記憶體管理方法及快閃記憶體 - Google Patents

快閃記憶體管理方法及快閃記憶體 Download PDF

Info

Publication number
TWI776028B
TWI776028B TW108108728A TW108108728A TWI776028B TW I776028 B TWI776028 B TW I776028B TW 108108728 A TW108108728 A TW 108108728A TW 108108728 A TW108108728 A TW 108108728A TW I776028 B TWI776028 B TW I776028B
Authority
TW
Taiwan
Prior art keywords
page address
address mapping
mapping table
flash memory
partial page
Prior art date
Application number
TW108108728A
Other languages
English (en)
Other versions
TW202034169A (zh
Inventor
邱日聖
許智宏
蕭智偉
陳昱維
葉庭瑋
Original Assignee
點序科技股份有限公司
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 點序科技股份有限公司 filed Critical 點序科技股份有限公司
Priority to TW108108728A priority Critical patent/TWI776028B/zh
Priority to CN201910377863.3A priority patent/CN111694759B/zh
Publication of TW202034169A publication Critical patent/TW202034169A/zh
Application granted granted Critical
Publication of TWI776028B publication Critical patent/TWI776028B/zh

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/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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本揭露提出一種快閃記憶體管理方法及快閃記憶體。快閃記憶體管理方法包括:在隨機存取記憶體中產生多個部分頁位址映射表;以及當部分頁位址映射表的第一部分頁位址映射表被釋放時,將部分頁位址映射表中最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。

Description

快閃記憶體管理方法及快閃記憶體
本揭露是有關於一種快閃記憶體管理方法及快閃記憶體,且特別是有關於一種提高隨機寫入效能的快閃記憶體管理方法及快閃記憶體。
在快閃記憶體的效能評估上,隨機寫入速度(或4K隨機寫入速度)是一項重要的評估指標。在隨機寫入資料時,快閃記憶體控制器必須連續地產生頁面映射表,並進行將頁面映射表寫入快閃記憶體或從快閃記憶體讀出頁面映射表到隨機存取記憶體的操作。頻繁地進行頁面映射表的更新會造成隨機寫入速度下降。
本揭露提供一種快閃記憶體管理方法及快閃記憶體,有效防止隨機寫入的速度下降。
本揭露提出一種快閃記憶體管理方法,包括:在隨機存取記憶體中產生多個部分頁位址映射表;以及當部分頁位址映射表的第一部分頁位址映射表被釋放時,將部分頁位址映射表中最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。
本揭露提出一種快閃記憶體,包括:記憶胞模組,包括多個實體記憶組,各實體記憶組包括多個實體記憶頁;以及控制器,耦接記憶胞模組。上述控制器在隨機存取記憶體中產生多個部分頁位址映射表;以及當部分頁位址映射表的第一部分頁位址映射表被釋放時,將部分頁位址映射表中最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。
基於上述,本揭露的快閃記憶體管理方法及快閃記憶體會在隨機存取記憶體的第一部分頁位址映射表被釋放時,將最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。如此一來,可有效防止快閃記憶體隨機寫入的速度下降。
為讓本揭露的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1為根據本揭露一實施例的快閃記憶體的方塊圖。
請參照圖1,本揭露一實施例的快閃記憶體100包括控制器110及耦接到控制器110的記憶胞模組120。控制器110可針對記憶胞模組120執行管理操作。記憶胞模組120包括多個實體記憶組(或稱為實體區塊)。每個實體記憶組包括多個實體記憶頁(或稱為實體頁面、實體頁)。每個實體記憶頁包括多個段(sector)(或稱為分段),每個段的大小例如是4K位元組。
圖2A到圖2D為根據本揭露一實施例的快閃記憶體管理方法的示意圖。
請參照圖2A及圖1,圖2A繪示了儲存於快閃記憶體100的隨機存取記憶體的部分頁位址映射表(Partial Page address Mapping Table,PPMT)佇列200的範例。PPMT佇列200可包括PPMT群組0到PPMT群組M。每個PPMT群組可包括頁面0到頁面N,且每個頁面都可儲存一個PPMT資料。在各個PPMT群組的頁面都還沒儲存PPMT資料的初始狀態下,指示符201會指到PPMT群組0的頁面0的位址。值得注意的是,在全頁位址映射中,一個邏輯頁面會映射到一個實體頁面;而在部分頁位址映射中,一個邏輯頁面可能會映射到多個不同實體頁面的分段。
請參照圖2B及圖1,在進行多次隨機寫入操作(例如,4K隨機寫入操作)之後,PPMT會依序建立於PPMT佇列200中。舉例來說,PPMT群組0的頁面0到頁面N及PPMT群組1的頁面0及頁面1儲存了控制器110可使用的PPMT,也就是說控制器110可根據上述PPMT獲得部分頁位址映射的邏輯實體映射關係(即,PPMT群組0的頁面0到頁面N及PPMT群組1的頁面0及頁面1的PPMT處於第一狀態)。在建立上述PPMT之後,指示符201會指到PPMT群組1的頁面2的位址,以指示下一個要建立的PPMT的位址。
請參照圖2C及圖1,當部分頁位址映射表(PPMT)211(又稱為第一部分頁位址映射表)被控制器110釋放(即,PPMT 211的內容被清除)時,控制器110不將PPMT 211的資料搬移到釋放佇列,而是將最新產生的當部分頁位址映射表(PPMT)212(又稱為第二部分頁位址映射表)所儲存的映射資料搬移到PPMT 211。
請參照圖2D及圖1,當PPMT 212所儲存的資料搬移到PPMT 211之後,控制器110會將指示符201指到PPMT群組1的頁面1的位址,並將PPMT群組1的頁面1的PPMT設定為第二狀態,在第二狀態中控制器110無法根據PPMT群組1的頁面1的PPMT獲得邏輯實體映射關係。
透過以上的PPMT重整方法,可有效降低PPMT的更新次數並減少PPMT在隨機存取記憶體及記憶胞模組120之間的存取操作。
圖3為根據本揭露一實施例的部分頁位址映射表的示意圖。
請參照圖3,本揭露一實施例的部分頁位址映射表300包括節欄位SE1到SE4。各節欄位包括記錄映射實體頁位址、映射段以及映射實體記憶組。以節欄位SE1為範例,節欄位SE1中記錄的映射實體記憶組301為實體記憶組B1 ,節欄位SE1中記錄的映射實體頁位址302為P1 (即,實體記憶組B1 的第P1 頁面),而節欄位SE1中記錄的映射段303為S1 (即,實體記憶組B1 的第P1 頁面的第S1 分段資料)。透過節欄位SE1到SE4所記錄的內容,可以得知對應此部分頁位址映射表300的邏輯頁位址中的資料,分別儲存在:實體記憶組B1 中的第P1 頁的第S1 分段、實體記憶組B2 中的第P2 頁的第S2 分段、實體記憶組B3 中的第P3 頁的第S3 分段以及實體記憶組B4 中的第P4 頁的第S4 分段。雖然以上實施例說明了部分頁位址映射表300包括四個節欄位,但本揭露不限於此。在另一實施例中,部分頁位址映射表300也可包括八個或其他數量的節欄位。
圖4為根據本揭露一實施例的快閃記憶體管理方法的流程圖。
請參照圖4,在步驟S401中,在隨機存取記憶體中產生多個部分頁位址映射表。
在步驟S402中,當部分頁位址映射表的第一部分頁位址映射表被釋放時,將部分頁位址映射表中最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。
綜上所述,本揭露的快閃記憶體管理方法及快閃記憶體會在隨機存取記憶體的第一部分頁位址映射表被釋放時,將最新產生的第二部分頁位址映射表所儲存的資料搬移到第一部分頁位址映射表。藉由本揭露的快閃記憶體管理方法對部分頁位址映射表進行重整,可大幅減少部分頁位址映射表的更新次數,也就是從快閃記憶體讀取部分頁位址映射表到隨機存取記憶體及從隨機存取記憶體將部分頁位址映射表寫入快閃記憶體的次數。此外,本揭露的快閃記憶體管理方法也不需要使用釋放佇列。如此一來,可有效防止快閃記憶體隨機寫入的速度下降。
雖然本揭露已以實施例揭露如上,然其並非用以限定本揭露,任何所屬技術領域中具有通常知識者,在不脫離本揭露的精神和範圍內,當可作些許的更動與潤飾,故本揭露的保護範圍當視後附的申請專利範圍所界定者為準。
100:快閃記憶體 110:控制器 120:記憶胞模組 200:部分頁位址映射表佇列 201:指示符 211、212、300:部分頁位址映射表 SE1~SE4:節欄位 301:映射實體記憶組 302:映射實體頁位址 303:映射段 S401、S402:快閃記憶體管理方法的步驟
圖1為根據本揭露一實施例的快閃記憶體的方塊圖。 圖2A到圖2D為根據本揭露一實施例的快閃記憶體管理方法的示意圖。 圖3為根據本揭露一實施例的部分頁位址映射表的示意圖。 圖4為根據本揭露一實施例的快閃記憶體管理方法的流程圖。
200:部分頁位址映射表佇列
201:指示符
211、212:部分頁位址映射表

Claims (10)

  1. 一種快閃記憶體管理方法,包括:依據一快閃記憶體多次的隨機寫入操作,以在一隨機存取記憶體中產生連續的多個部分頁位址映射表;在該些部分頁位址映射表的產生過程中,使一指示符對應的頁面依序遞增;當該些部分頁位址映射表的一第一部分頁位址映射表被釋放時,將該些部分頁位址映射表中最新產生的一第二部分頁位址映射表所儲存的資料搬移到該第一部分頁位址映射表,並使該指示符變更為對應至該第二部分頁位址映射表;以及設定該第二部分頁位址映射表為不可讀取狀態,其中該指示符對應至下一次寫入操作時新增部分頁位址映射表的資料的儲存頁面。
  2. 如申請專利範圍第1項所述的快閃記憶體管理方法,更包括:不將該第一部分頁位址映射表的資料搬移到一釋放佇列。
  3. 如申請專利範圍第1項所述的快閃記憶體管理方法,其中各該部分頁位址映射表包括多個節欄位,各該節欄位包括一映射實體頁位址、一映射段以及一映射實體記憶組。
  4. 如申請專利範圍第1項所述的快閃記憶體管理方法,其中該第一部分頁位址映射表處於一第一狀態,其中在該第一狀態中一控制器可根據該第一部分頁位址映射表獲得一邏輯實體映射關係。
  5. 如申請專利範圍第4項所述的快閃記憶體管理方法,更包括:將該第二部分頁位址映射表設定為一第二狀態,其中在該第二狀態中該控制器無法根據該第二部分頁位址映射表獲得該邏輯實體映射關係。
  6. 一種快閃記憶體,包括:一記憶胞模組,包括多個實體記憶組,各該實體記憶組包括多個實體記憶頁;以及一控制器,耦接該記憶胞模組,其中該控制器依據該快閃記憶體多次的隨機寫入操作,以在一隨機存取記憶體中產生連續的多個部分頁位址映射表;在該些部分頁位址映射表的產生過程中,使一指示符對應的頁面依序遞增;當該些部分頁位址映射表的一第一部分頁位址映射表被釋放時,將該些部分頁位址映射表中最新產生的一第二部分頁位址映射表所儲存的資料搬移到該第一部分頁位址映射表,並使該指示符變更為對應至該第二部分頁位址映射表;以及設定該第二部分頁位址映射表為不可讀取狀態,其中該指示符對應至下一次寫入操作時新增部分頁位址映射表的資料的儲存頁面。
  7. 如申請專利範圍第6項所述的快閃記憶體,其中該控制器不將該第一部分頁位址映射表的資料搬移到一釋放佇列。
  8. 如申請專利範圍第6項所述的快閃記憶體,其中各該部分頁位址映射表包括多個節欄位,各該節欄位包括一映射實體頁位址、一映射段以及一映射實體記憶組。
  9. 如申請專利範圍第6項所述的快閃記憶體,其中該第一部分頁位址映射表處於一第一狀態,其中在該第一狀態中一控制器可根據該第一部分頁位址映射表獲得一邏輯實體映射關係。
  10. 如申請專利範圍第9項所述的快閃記憶體,其中該控制器將該第二部分頁位址映射表設定為一第二狀態,其中在該第二狀態中該控制器無法根據該第二部分頁位址映射表獲得該邏輯實體映射關係。
TW108108728A 2019-03-14 2019-03-14 快閃記憶體管理方法及快閃記憶體 TWI776028B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW108108728A TWI776028B (zh) 2019-03-14 2019-03-14 快閃記憶體管理方法及快閃記憶體
CN201910377863.3A CN111694759B (zh) 2019-03-14 2019-05-06 快闪存储器管理方法及快闪存储器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108108728A TWI776028B (zh) 2019-03-14 2019-03-14 快閃記憶體管理方法及快閃記憶體

Publications (2)

Publication Number Publication Date
TW202034169A TW202034169A (zh) 2020-09-16
TWI776028B true TWI776028B (zh) 2022-09-01

Family

ID=72476014

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108108728A TWI776028B (zh) 2019-03-14 2019-03-14 快閃記憶體管理方法及快閃記憶體

Country Status (2)

Country Link
CN (1) CN111694759B (zh)
TW (1) TWI776028B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131736A1 (en) * 2008-11-21 2010-05-27 Jae Don Lee Memory device and method of operation
CN105824759A (zh) * 2014-10-31 2016-08-03 慧荣科技股份有限公司 数据储存装置以及快闪存储器控制方法
TW201830244A (zh) * 2017-02-14 2018-08-16 點序科技股份有限公司 快閃記憶體以及其管理方法
TWI652679B (zh) * 2017-12-08 2019-03-01 旺宏電子股份有限公司 記憶體控制器、記憶體系統及控制方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106170757B (zh) * 2014-11-29 2019-06-18 华为技术有限公司 一种数据存储方法及装置
CN105868122A (zh) * 2016-03-28 2016-08-17 深圳市硅格半导体股份有限公司 快闪存储设备的数据处理方法及装置
CN109299021B (zh) * 2017-07-24 2023-06-16 阿里巴巴集团控股有限公司 页迁移方法、装置和中央处理器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131736A1 (en) * 2008-11-21 2010-05-27 Jae Don Lee Memory device and method of operation
CN105824759A (zh) * 2014-10-31 2016-08-03 慧荣科技股份有限公司 数据储存装置以及快闪存储器控制方法
TW201830244A (zh) * 2017-02-14 2018-08-16 點序科技股份有限公司 快閃記憶體以及其管理方法
TWI652679B (zh) * 2017-12-08 2019-03-01 旺宏電子股份有限公司 記憶體控制器、記憶體系統及控制方法

Also Published As

Publication number Publication date
TW202034169A (zh) 2020-09-16
CN111694759B (zh) 2023-06-27
CN111694759A (zh) 2020-09-22

Similar Documents

Publication Publication Date Title
US10540100B2 (en) Mapping-based wear leveling for non-volatile memory
US11226747B2 (en) System and method for copy on write on an SSD
US8892812B2 (en) Flash memory device and data writing method for a flash memory
KR20200027045A (ko) 메모리 어드레싱
US20110004720A1 (en) Method and apparatus for performing full range random writing on a non-volatile memory
US20170075809A1 (en) Systems and methods for managing cache of a data storage device
US8862856B2 (en) Implementing remapping command with indirection update for indirected storage
US20150227424A1 (en) Data storage device and data checking and correction for volatile memory
US20090319721A1 (en) Flash memory apparatus and method for operating the same
CN109407985B (zh) 一种数据管理的方法以及相关装置
CN112084070B (zh) L2p映射数据恢复方法、装置、存储介质及电子设备
TW201039349A (en) Data accessing method for flash memory and storage system and controller using the same
KR20090035938A (ko) 하이브리드 디스크의 조각 모음 장치 및 방법
TW201729100A (zh) 記憶體裝置及其資料存取方法
CN104252420A (zh) 数据写入方法及内存系统
TW202044046A (zh) 資料儲存裝置與資料處理方法
TWI776028B (zh) 快閃記憶體管理方法及快閃記憶體
TWI635391B (zh) 快閃記憶體以及其管理方法
CN105264500A (zh) 一种数据传输方法及装置
CN109840163B (zh) 一种Nand-Flash错误数据冗余替换方法
JP2013235530A5 (zh)
Wang et al. A hybrid main memory applied in virtualization environments
CN103577113B (zh) 一种存储单元访问方法
CN101295310A (zh) 在磁盘上存储数据和元数据的方法
TWI835221B (zh) 記憶體裝置及其操作方法

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent