TW202326444A - 映射表管理方法、記憶體控制電路單元與記憶體儲存裝置 - Google Patents
映射表管理方法、記憶體控制電路單元與記憶體儲存裝置 Download PDFInfo
- Publication number
- TW202326444A TW202326444A TW111101037A TW111101037A TW202326444A TW 202326444 A TW202326444 A TW 202326444A TW 111101037 A TW111101037 A TW 111101037A TW 111101037 A TW111101037 A TW 111101037A TW 202326444 A TW202326444 A TW 202326444A
- Authority
- TW
- Taiwan
- Prior art keywords
- mapping table
- memory
- physical
- address
- logical address
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/70—Details relating to dynamic memory management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Communication Control (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
一種映射表管理方法、記憶體控制電路單元與記憶體儲存裝置。所述方法包括:從主機系統接收讀取指令,其中讀取指令指示讀取儲存於至少一第一邏輯位址的第一資料;以及查詢關聯管理資訊是否反映記錄第一邏輯位址的第一群組靜態映射0 表與動態映射表相關聯。響應於查詢結果反映第一群組靜態映射表與動態映射表相關聯,查詢動態映射表以取得第一邏輯位址所映射的第一實體位址。並且響應於查詢結果未反映第一群組靜態映射表與動態映射表相關聯,查詢群組靜態映射表中的第一群組靜態映射表以取得第一邏輯位址所映射的第二實體位址。
Description
本發明是有關於一種記憶體管理技術,且特別是有關於一種映射表管理方法、記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於可攜式電子產品,例如筆記型電腦。固態硬碟就是一種以快閃記憶體作為儲存媒體的記憶體儲存裝置。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
快閃記憶體模組具有多個實體抹除單元且每一實體抹除單元具有多個實體程式化單元(physical page),其中在實體抹除單元中寫入資料時必須依據實體程式化單元的順序寫入資料。此外,已被寫入資料之實體程式化單元需先被抹除後才能再次用於寫入資料。特別是,實體抹除單元為抹除之最小單位,並且實體程式化單元為程式化(亦稱寫入)的最小單元。因此,在快閃記憶體模組的管理中,實體抹除單元會被區分為資料區與閒置區。
資料區的實體抹除單元是用以儲存主機系統所儲存之資料。具體來說,記憶體儲存裝置中的記憶體管理電路會將主機系統所存取的邏輯存取位址轉換為邏輯區塊的邏輯頁面並且將邏輯區塊的邏輯頁面映射至資料區的實體抹除單元的實體程式化單元。也就是說,快閃記憶體模組的管理上資料區的實體抹除單元是被視為已被使用之實體抹除單元(例如,已儲存主機系統所寫入的資料)。例如,記憶體管理電路會使用邏輯位址-實體位址映射表(logical address-physical address mapping table)來記載邏輯頁面與資料區的實體程式化單元的映射關係。
在傳統更新邏輯位址-實體位址映射表中的映射資訊的方法中,通常會依序執行以下三個步驟:載入邏輯位址-實體位址映射表;更新邏輯位址-實體位址映射表的映射資訊;以及將更新後的邏輯位址-實體位址映射表回存至可複寫式非揮發性記憶體模組。
然而,在更新邏輯位址-實體位址映射表之前,邏輯頁面與資料區的實體程式化單元的映射關係會先記錄在緩衝記憶體的一個動態邏輯位址-實體位址映射表中,而暫時不更新邏輯位址-實體位址映射表。並在適當時機時,才載入邏輯位址-實體位址映射表至緩衝記憶體來更新邏輯位址-實體位址映射表。也就是說,在讀取資料的過程中,記憶體管理電路需要耗費查詢動態邏輯位址-實體位址映射表與靜態邏輯位址-實體位址映射表的時間才能得到邏輯頁面最新的映射資訊,此將影響記憶體管理電路在讀取資料時的效能。
本發明提供一種映射表管理方法、記憶體控制電路單元與記憶體儲存裝置,可以有效提高記憶體管理電路查詢資料儲存的實體位址的速度,從而提升記憶體管理電路在讀取資料時的效能。
本發明的一範例實施例提供一種映射表管理方法,適用於可複寫式非揮發性記憶體模組。其中所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表。所述映射表管理方法包括:將動態映射表以及關聯管理資訊儲存於緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表;從主機系統接收讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的第一資料;以及查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯。響應於查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址。並且響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
在本發明的一範例實施例中,上述方法更包括:讀取儲存在所述第一實體位址或所述第二實體位址的資料。
在本發明的一範例實施例中,上述查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址的步驟之前,所述映射表管理方法包括:查詢位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址;以及從所述儲存位址讀取所述第一群組靜態映射表。
在本發明的一範例實施例中,上述方法更包括:從所述主機系統接收對應第二資料的寫入指令,其中所述第二資料對應於所述第一邏輯位址;發送指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的控制電路將所述第二資料寫入至所述多個實體程式化單元中的第一實體程式化單元;以及在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
在本發明的一範例實施例中,上述根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的步驟包括:更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
在本發明的一範例實施例中,在更新所述動態映射表的所述映射資訊之後,所述方法更包括:根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體;根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址;以及在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
在本發明的一範例實施例中,上述更新所述第一群組靜態映射表的步驟更包括:更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
在本發明的一範例實施例中,上述根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的步驟包括:更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
本發明的一範例實施例提供一種記憶體控制電路單元,用以控制可複寫式非揮發性記憶體模組。其中所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表。所述記憶體控制電路單元包括主機介面、記憶體介面以及記憶體管理電路。所述主機介面用以耦接至主機系統。所述記憶體介面用以耦接至所述可複寫式非揮發性記憶體模組。所述記憶體管理電路耦接至所述主機介面與所述記憶體介面。所述記憶體管理電路用以將動態映射表以及關聯管理資訊儲存於緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表。所述記憶體管理電路更用以從所述主機系統接收讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的第一資料。並且,所述記憶體管理電路更用以查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯。響應於查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體管理電路更用以查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址。響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體管理電路更用以查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
在本發明的一範例實施例中,所述記憶體管理電路更用以讀取儲存在所述第一實體位址或所述第二實體位址的資料。
在本發明的一範例實施例中,在查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址之前,所述記憶體管理電路更用以查詢位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址。並且,所述記憶體管理電路更用以從所述儲存位址讀取所述第一群組靜態映射表。
在本發明的一範例實施例中,所述記憶體管理電路更用以從所述主機系統接收對應第二資料的寫入指令,其中所述第二資料對應於所述第一邏輯位址。所述記憶體管理電路更用以發送指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的控制電路將所述第二資料寫入至所述多個實體程式化單元中的第一實體程式化單元。並且,所述記憶體管理電路更用以在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
在本發明的一範例實施例中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體管理電路更用以更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
在本發明的一範例實施例中,在更新所述動態映射表的所述映射資訊之後,所述記憶體管理電路更用以根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體。所述記憶體管理電路更用以根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。並且,所述記憶體管理電路更用以在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
在本發明的一範例實施例中,更新所述第一群組靜態映射表的運作中,所述記憶體管理電路更用以更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
在本發明的一範例實施例中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體管理電路更用以更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
本發明的一範例實施例提供一種記憶體儲存裝置,包括連接介面單元、可複寫式非揮發性記憶體模組以及記憶體控制電路單元。所述連接介面單元用以耦接至主機系統。所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表。所述記憶體控制電路單元耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組。所述記憶體控制電路單元用以將動態映射表以及關聯管理資訊儲存於緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表。所述記憶體控制電路單元更用以從所述主機系統接收讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的第一資料。並且,所述記憶體控制電路單元更用以查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯。響應於查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體控制電路單元更用以查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址。響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體控制電路單元更用以查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
在本發明的一範例實施例中,所述記憶體控制電路單元更用以讀取儲存在所述第一實體位址或所述第二實體位址的資料。
在本發明的一範例實施例中,在查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址之前,所述記憶體控制電路單元更用以查詢位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址。並且,所述記憶體控制電路單元更用以從所述儲存位址讀取所述第一群組靜態映射表。
在本發明的一範例實施例中,所述記憶體控制電路單元更用以從所述主機系統接收對應第二資料的寫入指令,其中所述第二資料對應於所述第一邏輯位址。所述記憶體控制電路單元更用以發送指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的控制電路將所述第二資料寫入至所述多個實體程式化單元中的第一實體程式化單元。並且,所述記憶體控制電路單元更用以在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
在本發明的一範例實施例中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體控制電路單元更用以更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
在本發明的一範例實施例中,在更新所述動態映射表的所述映射資訊之後,所述記憶體控制電路單元更用以根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體。所述記憶體控制電路單元更用以根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。並且,所述記憶體控制電路單元更用以在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
在本發明的一範例實施例中,更新所述第一群組靜態映射表的運作中,所述記憶體控制電路單元更用以更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
在本發明的一範例實施例中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體控制電路單元更用以更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
基於上述,本發明的映射表管理方法、記憶體控制電路單元與記憶體儲存裝置可以將與邏輯位址相關聯的群組靜態映射表的資訊記錄在關聯管理資訊中,並在執行資料讀取操作時先查詢關聯管理資訊是否反映欲讀取資料所屬的邏輯位址的群組靜態映射表與動態映射表相關聯。也就是說,本發明的映射表管理方法可以在查詢動態映射表之前先查詢關聯管理資訊來快速得到動態映射表中是否記錄欲讀取資料的最新映射資訊,進而避免動態映射表中未記錄欲讀取資料的最新映射資訊時,需要耗費查詢動態映射表與靜態映射表的時間才能得到最新映射資訊。因此,本發明的映射表管理方法可以在執行資料讀取操作時有效提高記憶體管理電路查詢資料儲存的實體位址的速度,從而提升記憶體管理電路在讀取資料時的效能。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組(rewritable non-volatile memory module)與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。
請參照圖1與圖2,主機系統11一般包括處理器111、隨機存取記憶體(random access memory, RAM)112、唯讀記憶體(read only memory, ROM)113及資料傳輸介面114。處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114皆耦接至系統匯流排(system bus)110。
在本範例實施例中,主機系統11是透過資料傳輸介面114與記憶體儲存裝置10耦接。例如,主機系統11可經由資料傳輸介面114將資料儲存至記憶體儲存裝置10或從記憶體儲存裝置10中讀取資料。此外,主機系統11是透過系統匯流排110與I/O裝置12耦接。例如,主機系統11可經由系統匯流排110將輸出訊號傳送至I/O裝置12或從I/O裝置12接收輸入訊號。
在本範例實施例中,處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114可設置在主機系統11的主機板20上。資料傳輸介面114的數目可以是一或多個。透過資料傳輸介面114,主機板20可以經由有線或無線方式耦接至記憶體儲存裝置10。記憶體儲存裝置10可例如是隨身碟201、記憶卡202、固態硬碟(Solid State Drive, SSD)203或無線記憶體儲存裝置204。無線記憶體儲存裝置204可例如是近距離無線通訊(Near Field Communication, NFC)記憶體儲存裝置、無線傳真(WiFi)記憶體儲存裝置、藍牙(Bluetooth)記憶體儲存裝置或低功耗藍牙記憶體儲存裝置(例如,iBeacon)等以各式無線通訊技術為基礎的記憶體儲存裝置。此外,主機板20也可以透過系統匯流排110耦接至全球定位系統(Global Positioning System, GPS)模組205、網路介面卡206、無線傳輸裝置207、鍵盤208、螢幕209、喇叭210等各式I/O裝置。例如,在一範例實施例中,主機板20可透過無線傳輸裝置207存取無線記憶體儲存裝置204。
在一範例實施例中,所提及的主機系統為可實質地與記憶體儲存裝置配合以儲存資料的任意系統。雖然在上述範例實施例中,主機系統是以電腦系統來作說明,然而,圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。請參照圖3,在另一範例實施例中,主機系統31也可以是數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器或平板電腦等系統,而記憶體儲存裝置30可為其所使用的SD卡32、CF卡33或嵌入式儲存裝置34等各式非揮發性記憶體儲存裝置。嵌入式儲存裝置34包括嵌入式多媒體卡(embedded MMC, eMMC)341及/或嵌入式多晶片封裝儲存裝置(embedded Multi Chip Package, eMCP)342等各類型將記憶體模組直接耦接於主機系統的基板上的嵌入式儲存裝置。
圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
請參照圖4,記憶體儲存裝置10包括連接介面單元402、記憶體控制電路單元404與可複寫式非揮發性記憶體模組406。
在本範例實施例中,連接介面單元402是相容於序列先進附件(Serial Advanced Technology Attachment, SATA)標準。然而,必須瞭解的是,本發明不限於此,連接介面單元402亦可以是符合並列先進附件(Parallel Advanced Technology Attachment, PATA)標準、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers, IEEE)1394標準、高速周邊零件連接介面(Peripheral Component Interconnect Express, PCI Express)標準、通用序列匯流排(Universal Serial Bus, USB)標準、安全數位(Secure Digital, SD)介面標準、超高速一代(Ultra High Speed-I, UHS-I)介面標準、超高速二代(Ultra High Speed-II, UHS-II)介面標準、記憶棒(Memory Stick, MS)介面標準、多晶片封裝(Multi-Chip Package)介面標準、多媒體儲存卡(Multi Media Card, MMC)介面標準、崁入式多媒體儲存卡(Embedded Multimedia Card, eMMC)介面標準、通用快閃記憶體(Universal Flash Storage, UFS)介面標準、嵌入式多晶片封裝(embedded Multi Chip Package, eMCP)介面標準、小型快閃(Compact Flash, CF)介面標準、整合式驅動電子介面(Integrated Device Electronics, IDE)標準或其他適合的標準。連接介面單元402可與記憶體控制電路單元404封裝在一個晶片中,或者連接介面單元402是佈設於一包含記憶體控制電路單元404之晶片外。
記憶體控制電路單元404用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令並且根據主機系統11的指令在可複寫式非揮發性記憶體模組406中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404,並且用以儲存主機系統11所寫入之資料。可複寫式非揮發性記憶體模組406具有多個實體抹除單元。例如,所述多個實體抹除單元可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。每一實體抹除單元分別具有複數個實體程式化單元,其中屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。然而,必須瞭解的是,本發明不限於此,每一實體抹除單元是可由64個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
更詳細來說,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。每一實體程式化單元通常包括資料位元區與冗餘位元區。資料位元區包含多個實體存取位址用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,控制資訊與錯誤更正碼)。在本範例實施例中,每一個實體程式化單元的資料位元區中會包含4個實體存取位址,且一個實體存取位址的大小為512位元組(byte)。然而,在其他範例實施例中,資料位元區中也可包含數目更多或更少的實體存取位址,本發明並不限制實體存取位址的大小以及個數。例如,在一範例實施例中,實體抹除單元為實體區塊,並且實體程式化單元為實體頁面或實體扇區,但本發明不以此為限。
在本範例實施例中,可複寫式非揮發性記憶體模組406為多階記憶胞(Multi Level Cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元資料的快閃記憶體模組)。然而,本發明不限於此,可複寫式非揮發性記憶體模組406亦可是單階記憶胞(Single Level Cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元資料的快閃記憶體模組)、複數階記憶胞(Trinary Level Cell, TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元資料的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
可複寫式非揮發性記憶體模組406中的每一個記憶胞是基於電壓(亦稱為,臨界電壓)的改變來儲存一或多個位元。當從記憶體控制電路單元404接收到寫入指令序列或讀取指令序列時,可複寫式非揮發性記憶體模組406中的控制電路(未繪示)會控制施予至某一字元線與某一位元線(或位元線組)的電壓來改變至少一記憶胞的臨界電壓或偵測所述記憶胞的儲存狀態(state)。例如,每一個記憶胞的控制閘極(control gate)與通道之間有一個電荷捕捉層。透過施予一寫入電壓(或程式化電壓)至某一個記憶胞的控制閘極,可以改變其電荷補捉層的電子量,進而改變此記憶胞的臨界電壓。此改變臨界電壓的程序亦稱為“把資料寫入至記憶胞”或“程式化記憶胞”。隨著臨界電壓的改變,可複寫式非揮發性記憶體模組406中的記憶胞可具有多個儲存狀態。透過施予讀取電壓可以判斷一個記憶胞是屬於哪一個儲存狀態,藉此取得此記憶胞所儲存的一或多個位元。
圖5是根據一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
請參照圖5,記憶體控制電路單元404包括記憶體管理電路502、主機介面504與記憶體介面506。
記憶體管理電路502用以控制記憶體控制電路單元404的整體運作。具體來說,記憶體管理電路502具有多個控制指令,並且在記憶體儲存裝置10運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路502或任何包含於記憶體控制電路單元404中的電路元件之操作時,等同於說明記憶體控制電路單元404的操作。
在本範例實施例中,記憶體管理電路502的控制指令是以韌體型式來實作。例如,記憶體管理電路502具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置10運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在本發明另一範例實施例中,記憶體管理電路502的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組406的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路502具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有驅動碼,並且當記憶體控制電路單元404被致能時,微處理器單元會先執行此驅動碼段來將儲存於可複寫式非揮發性記憶體模組406中之控制指令載入至記憶體管理電路502的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在本發明另一範例實施例中,記憶體管理電路502的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路502包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。其中,記憶胞管理電路用以管理可複寫式非揮發性記憶體模組406的實體抹除單元;記憶體寫入電路用以對可複寫式非揮發性記憶體模組406下達寫入指令以將資料寫入至可複寫式非揮發性記憶體模組406中;記憶體讀取電路用以對可複寫式非揮發性記憶體模組406下達讀取指令以從可複寫式非揮發性記憶體模組406中讀取資料;記憶體抹除電路用以對可複寫式非揮發性記憶體模組406下達抹除指令以將資料從可複寫式非揮發性記憶體模組406中抹除;而資料處理電路用以處理欲寫入至可複寫式非揮發性記憶體模組406的資料以及從可複寫式非揮發性記憶體模組406中讀取的資料。
主機介面504是耦接至記憶體管理電路502並且用以接收與識別主機系統11所傳送的指令與資料。也就是說,主機系統11所傳送的指令與資料會透過主機介面504來傳送至記憶體管理電路502。在本範例實施例中,主機介面504是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面504亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、UHS-I介面標準 、UHS-II介面標準、SD標準 、MS標準、MMC標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面506是耦接至記憶體管理電路502並且用以存取可複寫式非揮發性記憶體模組406。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。
在本發明一範例實施例中,記憶體控制電路單元404還包括緩衝記憶體508、電源管理電路510與錯誤檢查與校正電路512。
緩衝記憶體508是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。在一實施例中,緩衝記憶體508更用以儲存實體位址-邏輯位址映射表,所述實體位址-邏輯位址映射表用於記錄實體抹除單元之中的作動實體抹除單元的實體程式化單元與邏輯位址中的多個已更新邏輯位址之間的映射資訊。具體來說,當主機系統11欲寫入更新資料至可複寫式非揮發性記憶體模組406時,記憶體管理電路502會下達指令序列給可複寫式非揮發性記憶體模組406,並藉由可複寫式非揮發性記憶體模組406的控制電路根據該指令序列將更新資料儲存至可複寫式非揮發性記憶體模組406的閒置區的一作動實體抹除單元中,並在實體位址-邏輯位址映射表中紀錄關於此寫入操作的邏輯位址以及該作動實體抹除單元中用於儲存其更新資料的實體程式化單元兩者間的映射資訊。之後,記憶體管理電路502可以再根據實體位址-邏輯位址映射表從可複寫式非揮發性記憶體模組40載入對應的邏輯位址-實體位址映射表來更新此邏輯位址-實體位址映射表中的映射資訊。
電源管理電路510是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。
錯誤檢查與校正電路512是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路512會為對應此寫入指令的資料產生對應的錯誤檢查與校正碼(Error Checking and Correcting Code, ECC Code),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤檢查與校正碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中讀取資料時會同時讀取此資料對應的錯誤檢查與校正碼,並且錯誤檢查與校正電路512會依據此錯誤檢查與校正碼對所讀取的資料執行錯誤檢查與校正程序。
圖6與圖7是根據一範例實施例所繪示之管理實體抹除單元的範例示意圖。
請參照圖6,假設可複寫式非揮發性記憶體模組406具有實體抹除單元410(0)~410(N)。記憶體管理電路502會將實體抹除單元410(0)~410(N)邏輯地分組為資料區602、閒置區604、系統區606與取代區608。
邏輯上屬於資料區602與閒置區604的實體抹除單元是用以儲存來自於主機系統11的資料。具體來說,資料區602的實體抹除單元是被視為已儲存資料的實體抹除單元,而閒置區604的實體抹除單元是用以替換資料區602的實體抹除單元。也就是說,當從主機系統11接收到寫入指令與欲寫入之資料時,記憶體管理電路502會從閒置區604中提取實體抹除單元,並且將資料寫入至所提取的實體抹除單元中,以替換資料區602的實體抹除單元。
邏輯上屬於系統區606的實體抹除單元是用以記錄系統資料。例如,系統資料包括關於可複寫式非揮發性記憶體模組的製造商與型號、可複寫式非揮發性記憶體模組的實體抹除單元數、每一實體抹除單元的實體程式化單元數等。
邏輯上屬於取代區608中的實體抹除單元是用於壞實體抹除單元取代程序,以取代損壞的實體抹除單元。具體來說,倘若取代區608中仍存有正常之實體抹除單元並且資料區602的實體抹除單元損壞時,記憶體管理電路502會從取代區608中提取正常的實體抹除單元來更換損壞的實體抹除單元。
特別是,資料區602、閒置區604、系統區606與取代區608之實體抹除單元的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在記憶體儲存裝置10的運作中,實體抹除單元關聯至資料區602、閒置區604、系統區606與取代區608的分組關係會動態地變動。例如,當閒置區604中的實體抹除單元損壞而被取代區608的實體抹除單元取代時,則原本取代區608的實體抹除單元會被關聯至閒置區604。
請參照圖7,記憶體管理電路502會配置邏輯單元LBA(0)~LBA(H)以映射資料區602的實體抹除單元,其中每一邏輯單元具有多個邏輯頁面以映射對應之實體抹除單元的實體程式化單元。並且,當主機系統11欲寫入資料至邏輯單元或更新儲存於邏輯單元中的資料時,記憶體管理電路502會從閒置區604中提取一個實體抹除單元作為作動實體抹除單元以用於寫入資料,以輪替資料區602的實體抹除單元。
為了識別資料每個邏輯單元的資料被儲存在哪個實體抹除單元,在本範例實施例中,記憶體管理電路502會記錄邏輯單元與實體抹除單元之間的映射關係。並且,當主機系統11欲在邏輯頁面中存取資料時,記憶體管理電路502會確認此邏輯頁面所屬的邏輯單元,並且在此邏輯單元所映射的實體抹除單元中來存取資料。例如,在本範例實施例中,記憶體管理電路502會在可複寫式非揮發性記憶體模組406中儲存邏輯位址-實體位址映射表來記錄每一邏輯單元所映射的實體抹除單元,並且當欲存取資料時記憶體管理電路502會將邏輯位址-實體位址映射表載入至緩衝記憶體508來維護。
值得一提的是,由於緩衝記憶體508的容量有限無法儲存記錄了所有邏輯單元之映射關係的映射表,因此,在本範例實施例中,記憶體管理電路502會將邏輯單元LBA(0)~LBA(H)分組為多個邏輯區域LZ(0)~LZ(M),並且為每一邏輯區域配置一個邏輯位址-實體位址映射表(亦稱為群組邏輯位址-實體位址映射表)。特別是,當記憶體管理電路502欲更新某個邏輯單元的映射資訊時,對應此邏輯單元所屬之邏輯區域的邏輯位址-實體位址映射表會被載入至緩衝記憶體508來被更新。
在本範例實施例中,當主機系統11欲執行寫入操作時,主機系統11可以下達寫入指令。記憶體管理電路502會從閒置區604中提取一作動實體抹除單元,並且將包含於來自主機系統11之寫入指令中的資料(亦稱為更新資料)寫入至此作動實體抹除單元中。
具體來說,當記憶體儲存裝置10從主機系統11接收到寫入指令時,來自於主機系統11之寫入指令中的資料可被寫入閒置區604中的一作動實體抹除單元中。並且,當此實體抹除單元已被寫滿時,記憶體管理電路502會再從閒置區604中提取空的實體抹除單元作為另一個作動實體抹除單元,以繼續寫入對應來自於主機系統11之寫入指令的更新資料。
圖8是根據本發明一實施例所繪示的更新邏輯位址-實體位址映射表的簡化範例。
為方便說明,在此假設資料區602具有3個實體抹除單元分別為實體抹除單元410(0)~410(2),閒置區604具有2個實體抹除單元分別為實體抹除單元410(3)~410(4)。每一實體抹除單元具有3個實體程式化單元。
請參照圖8,假設在圖8的記憶體儲存裝置10的狀態中,邏輯單元LBA(0)~LBA(2)的邏輯頁面映射資料區602的實體抹除單元410(0)~410(2)的實體程式化單元,並且閒置區604具有實體抹除單元410(3)~410(4)。也就是說,記憶體管理電路502會在邏輯位址-實體位址映射表中記錄邏輯單元LBA(0)~LBA(2)與實體抹除單元410(0)~410(4)之間的映射關係,並且將實體抹除單元410(0)~410(2)的實體程式化單元視為已儲存屬於邏輯單元LBA(0)~LBA(2)的邏輯頁面的資料(即,初始資料ID1~ID9)。特別是,在此範例實施例中,假設目前的邏輯單元LBA(0)的第0~2個邏輯頁面是分別映射至實體抹除單元410(0)的第0~2個實體程式化單元,邏輯單元LBA(1)的第0~2個邏輯頁面是分別映射至實體抹除單元410(1)的第0~2個實體程式化單元,邏輯單元LBA(2) 的第0~2個邏輯頁面是分別映射至實體抹除單元410(2)的第0~2個實體程式化單元。此外,記憶體管理電路502會記錄閒置區604中可用的實體抹除單元410(3)~410(4),且當主機系統11執行寫入操作時,在傳統的方法中,記憶體管理電路502會記錄對應此寫入操作的更新資料的映射資訊至緩衝記憶體508中的一實體位址-邏輯位址映射表(亦稱為,動態映射表)。
須注意的是,在傳統的方法中,當主機系統11執行關於一邏輯頁面的寫入操作時,記憶體管理電路502會下達寫入指令序列給可複寫式非揮發性記憶體模組406。可複寫式非揮發性記憶體模組406中的控制電路會將此寫入操作對應的更新資料寫入從閒置區604選出的作動實體抹除單元中。於此同時,記憶體管理電路502並不會立即地更改邏輯位址-實體位址映射表中邏輯單元LBA(0)~LBA(2)與實體抹除單元410(0)~410(4)之間的映射關係,記憶體管理電路502會將作動實體抹除單元中,被用於儲存此更新資料的實體程式化單元的位址(亦稱為,實體位址),連同此寫入操作所對應的邏輯頁面的位址(亦稱為,邏輯位址)記錄至緩衝記憶體508中的動態映射表中。等到動態映射表被寫滿後,才會根據動態映射表中的映射資訊(即,更新資料所對應的邏輯位址),從可複寫式非揮發性記憶體模組406載入對應的邏輯位址-實體位址映射表(亦稱為,靜態映射表)至緩衝記憶體508中,並且在更新邏輯單元LBA(0)~LBA(2)與實體抹除單元410(0)~410(4)之間的映射關係之後將更新後的靜態映射表回存至可複寫式非揮發性記憶體模組406。值得一提的是,當記憶體儲存裝置10屬於閒置狀態一段時間(例如,30秒未從主機系統11中接收到任何指令)時,記憶體管理電路502亦可以根據動態映射表中的映射資訊,載入對應的靜態映射表至緩衝記憶體508中,並且在更新邏輯單元LBA(0)~LBA(2)與實體抹除單元410(0)~410(4)之間的映射關係之後,將更新後的靜態映射表回存至可複寫式非揮發性記憶體模組406。
也就是說,在傳統更新邏輯位址-實體位址映射表中的映射資訊的方法中,通常會依序執行以下三個步驟:載入靜態映射表至緩衝記憶體508中;更新靜態映射表的映射資訊;以及將更新後的靜態映射表回存至可複寫式非揮發性記憶體模組406。
值得注意的是,在更新靜態映射表之前,實體位址與邏輯位址之間最新的映射關係會記錄在動態映射表中。因此,記憶體管理電路502在讀取資料時,會先根據讀取指令指示讀取的資料查詢動態映射表中的映射資訊,以取得此資料對應的邏輯位址所映射的實體位址。並在動態映射表中不存在此資料對應的邏輯位址時,再根據此邏輯位址查詢靜態映射表的映射資訊來取得此邏輯位址所映射的實體位址。由於動態映射表通常只會暫存特定範圍的資料,記憶體管理電路502在多數情況下會在靜態映射表查詢到讀取指令對應的實體位址。然而,動態映射表中記錄有最新的映射資訊,如果記憶體管理電路502在讀取資料時跳過查詢動態映射表這個步驟,將可能讀取到舊的資料。也就是說,在讀取資料的過程中,記憶體管理電路502需要耗費查詢動態映射表與靜態映射表的時間才能得到邏輯位址最新映射的實體位址,會降低記憶體管理電路502在讀取時的效能。
因此,本發明提出一種映射表管理方法,在可複寫式非揮發性記憶體模組406中的控制電路將寫入操作對應的更新資料寫入至實體程式化單元的同時,記憶體管理電路502可以更新暫存於緩衝記憶體508中的動態映射表以及關聯管理資訊。特別是,此關聯管理資訊可反映與動態映射表中記錄的邏輯位址相關聯的群組靜態映射表。也就是說,在查詢此關聯管理資訊後,記憶體管理電路502可獲得與動態映射表中記錄的邏輯位址相關聯的群組靜態映射表的相關資訊。
以下使用圖8至圖12來描述本發明的映射表管理方法。
請先參照圖8與圖9,圖9是根據本發明一實施例所繪示的群組靜態映射表的簡化範例。在本範例實施例中,靜態映射表被劃分為多個群組邏輯位址-實體位址映射表(亦稱為群組靜態映射表)。為方便說明,在此假設記憶體管理電路502為邏輯單元LBA(0)配置一個群組靜態映射表901,為邏輯單元LBA(1)配置一個群組靜態映射表902,並且為邏輯單元LBA(2)配置一個群組靜態映射表903。如圖9所示,群組靜態映射表901記錄邏輯單元LBA(0)的第0~2個邏輯頁面(即,對應邏輯位址LBA(0)-0~LBA(0)-2的邏輯頁面)分別對應實體抹除單元410(0)的第0~2個實體程式化單元(即,對應實體位址410(0)-0~410(0)-2的實體程式化單元),也就是,實體位址410(0)-0~410(0)-2對應的實體程式化單元分別儲存主機系統11在邏輯位址LBA(0)-0~LBA(0)-2對應的實體頁面中寫入的資料。另外,群組靜態映射表902記錄邏輯單元LBA(1)的第0~2個邏輯頁面(即,對應邏輯位址LBA(1)-0~LBA(1)-2的邏輯頁面)分別對應實體抹除單元410(1)的第0~2個實體程式化單元(即,對應實體位址410(1)-0~410(1)-2的實體程式化單元),群組靜態映射表903記錄邏輯單元LBA(2)的第0~2個邏輯頁面(即,對應邏輯位址LBA(2)-0~LBA(2)-2的邏輯頁面)分別對應實體抹除單元410(2)的第0~2個實體程式化單元(即,對應實體位址410(2)-0~410(2)-2的實體程式化單元)。
圖10是根據本發明一實施例所繪示的更新邏輯位址-實體位址映射表的簡化範例。假設主機系統11欲寫入更新資料UD1至可複寫式非揮發性記憶體模組406。更新資料UD1是屬於邏輯單元LBA(0)的第0個邏輯頁面。此時,主機系統11可以下達對應於更新資料UD1的寫入指令給記憶體管理電路502。當記憶體管理電路502從主機系統11接收到寫入指令時,可以將寫入指令中的更新資料UD1(亦稱為第二資料)寫入至可複寫式非揮發性記憶體模組406,並同時更新動態映射表以及關聯管理資訊。在本範例實施例中,記憶體管理電路502會從閒置區604中提取例如實體抹除單元410(3)做為作動實體抹除單元,並且下達寫入指令序列以指示將可複寫式非揮發性記憶體模組406的控制電路將更新資料UD1寫入至實體抹除單元410(3)的第0個實體程式化單元(亦稱為第一實體程式化單元)。於此同時,記憶體管理電路502會根據更新資料UD1屬於的邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0以及更新資料UD1寫入的第一實體程式化單元的實體位址410(3)-0更新動態映射表以及關聯管理資訊。
圖11是根據本發明一實施例所繪示的動態映射表的範例。請參照圖11,動態映射表1110儲存在緩衝記憶體508中。當記憶體管理電路502將更新資料UD1寫入至實體抹除單元410(3)的第0個實體程式化單元時,記憶體管理電路502會更新動態映射表1110的映射資訊,以使得更新資料UD1屬於的邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0映射至更新資料UD1寫入的實體抹除單元410(3)的第0個實體程式化單元的實體位址410(3)-0。換言之,此動態映射表1110記錄更新資料UD1(即,寫入資料)對應的邏輯位址以及邏輯位址所映射的實體位址。
在本範例實施例中,當記憶體管理電路502將更新資料UD1寫入至實體抹除單元410(3)的第0個實體程式化單元時,記憶體管理電路502還會將與更新資料UD1屬於的邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0相關聯的群組靜態映射表901記錄至關聯管理資訊中。然而,本發明不在此限制記錄群組靜態映射表的方式。
舉例來說,關聯管理資訊可包括一個位元映射表(bit map),如圖12所示。例如,此位元映射表中的每一個儲存欄位中的資訊可反映相應的群組靜態映射表所包括的邏輯位址是否記錄在動態映射表中。例如,若關聯管理資訊中的某一個儲存欄位中的資訊為數值「0」(或者某一預設值),表示此儲存欄位所對應的群組靜態映射表所包括的任何一個邏輯位址皆沒有記錄在動態映射表中。反之,若關聯管理資訊中的某一個儲存欄位中的資訊為數值「1」(或者某一預設值),表示此儲存欄位所對應的群組靜態映射表所包括的至少一個邏輯位址有記錄在動態映射表中。換言之,關聯管理資訊反映與動態映射表中記錄的邏輯位址相關聯的群組靜態映射表。
圖12是根據本發明一實施例所繪示的關聯管理資訊的範例。關聯管理資訊1210儲存在緩衝記憶體508中。請同時參照圖10與圖12,當記憶體管理電路502將更新資料UD1寫入至實體抹除單元410(3)的第0個實體程式化單元時,記憶體管理電路502可更新關聯管理資訊1210以使得關聯管理資訊1210反映記錄邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0的群組靜態映射表901與動態映射表1110相關聯。例如,記憶體管理電路502可將關聯管理資訊1210中群組靜態映射表901的儲存欄位記錄為數值「1」。亦即,關聯管理資訊1210反映與動態映射表1110中記錄的邏輯位址LBA(0)-0相關聯的群組靜態映射表901。
在本範例實施例中,記憶體管理電路502可從主機系統11接收讀取指令。此讀取指令可指示讀取儲存於邏輯單元的資料。假設讀取指令指示讀取邏輯單元LBA(0)的第0個邏輯頁面的位址(亦稱為第一邏輯位址)中的資料(亦稱為第一資料),記憶體管理電路502會查詢關聯管理資訊是否反映記錄第一邏輯位址的群組靜態映射表(亦稱為第一群組靜態映射表)與動態映射表相關聯。
請參照圖12的範例,記憶體管理電路502會查詢關聯管理資訊1210是否反映記錄邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0的群組靜態映射表901(即,第一群組靜態映射表)與動態映射表1110相關聯。圖12所示的關聯管理資訊1210中群組靜態映射表901所對應的儲存欄位記錄為數值「1」,此表示關聯管理資訊1210反映群組靜態映射表901與動態映射表1110相關聯。於此,響應於此查詢結果反映群組靜態映射表901與動態映射表1110相關聯,記憶體管理電路502會查詢動態映射表1110以取得邏輯位址LBA(0)-0所映射的實體位址410(3)-0(亦稱為第一實體位址)。
在另一實施例中,假設關聯管理資訊中群組靜態映射表901所對應的儲存欄位記錄為數值「0」,此表示關聯管理資訊未反映群組靜態映射表901與動態映射表1110相關聯。於此,響應於查詢結果未反映群組靜態映射表901與動態映射表1110相關聯,記憶體管理電路502會查詢群組靜態映射表901以取得邏輯位址LBA(0)-0所映射的實體位址410(0)-0(亦稱為第二實體位址)。具體來說,記憶體管理電路502可維護位址管理資訊,此位址管理資訊反映群組靜態映射表在可複寫式非揮發性記憶體模組406中的儲存位址。因此,記憶體管理電路502在查詢群組靜態映射表901之前,可先查詢位址管理資訊以得到群組靜態映射表901的儲存位址,並從此儲存位址讀取所需的群組靜態映射表901。
在取得讀取指令指示讀取的資料所映射的實體位址(如上述第一實體位址或第二實體位址)後,記憶體管理電路502可向可複寫式非揮發性記憶體模組406下達讀取指令以從可複寫式非揮發性記憶體模組406中讀取儲存在該實體位址的資料。
特別是,在映射表管理方法中,記憶體管理電路502藉由先查詢關聯管理資訊可快速得到動態映射表中是否記錄欲讀取資料的最新映射資訊。值得注意的是,查詢關聯管理資訊相較於查詢整個動態映射表所耗費的時間短。也就是說,本發明的映射表管理方法在執行資料讀取操作時,可以有效提高記憶體管理電路502查詢資料儲存的實體位址的速度,從而提升記憶體管理電路502在讀取資料時的效能。
請再參照圖9及圖11,等到動態映射表被寫滿後或記憶體儲存裝置10屬於閒置狀態一段時間時,記憶體管理電路502可以根據動態映射表中的映射資訊,從可複寫式非揮發性記憶體模組406載入對應的群組靜態映射表(例如,群組靜態映射表901)至緩衝記憶體508中。例如,記憶體管理電路502在根據動態映射表中的映射資訊載入對應的群組靜態映射表時,可查詢位址管理資訊以得到群組靜態映射表的儲存位址,並從此儲存位址讀取所需的群組靜態映射表。之後,記憶體管理電路502根據動態映射表1110的映射資訊更新群組靜態映射表901,以使得群組靜態映射表901中邏輯單元LBA(0)的第0個邏輯頁面的邏輯位址LBA(0)-0映射至實體抹除單元410(3)的第0個實體程式化單元的實體位址410(3)-0。並且,在更新群組靜態映射表901之後,記憶體管理電路502將更新後的群組靜態映射表901回存至可複寫式非揮發性記憶體模組406。此外,記憶體管理電路502可根據儲存位址更新位址管理資訊。在更新群組靜態映射表901的同時,記憶體管理電路502可以將圖12的關聯管理資訊1210中群組靜態映射表901所對應的儲存欄位更新為數值「0」,以使得關聯管理資訊1210不再反映群組靜態映射表901與動態映射表1110相關聯。然而,本發明不在此限制更新群組靜態映射表的時機。
圖13是根據一範例實施例所繪示的映射表管理方法的流程圖。
請參照圖13,在步驟S1302中,記憶體管理電路502將動態映射表以及關聯管理資訊儲存於緩衝記憶體中。在步驟S1304中,記憶體管理電路502從主機系統接收讀取指令。其中讀取指令指示讀取儲存於至少一第一邏輯位址的第一資料。在步驟S1306中,記憶體管理電路502查詢關聯管理資訊是否反映記錄第一邏輯位址的第一群組靜態映射表與動態映射表相關聯。若關聯管理資訊反映記錄第一邏輯位址的第一群組靜態映射表與動態映射表相關聯(即,步驟S1306判斷為「是」),則在步驟S1308中,記憶體管理電路502查詢動態映射表以取得第一邏輯位址所映射的第一實體位址。若關聯管理資訊未反映記錄第一邏輯位址的第一群組靜態映射表與動態映射表相關聯(即,步驟S1306判斷為「否」),則在步驟S1310中,記憶體管理電路502查詢群組靜態映射表中的第一群組靜態映射表以取得第一邏輯位址所映射的第二實體位址。
然而,圖13中各步驟已詳細說明如上,在此便不再贅述。值得注意的是,圖13中各步驟可以實作為多個程式碼或是電路,本發明不加以限制。此外,圖13的方法可以搭配以上範例實施例使用,也可以單獨使用,本發明不加以限制。
綜上所述,本發明的映射表管理方法、記憶體控制電路單元與記憶體儲存裝置透過關聯管理資訊管理動態映射表與群組靜態映射表之間的關聯,從而加速查詢實體位址的速度。本發明的實施例將與邏輯位址相關聯的群組靜態映射表的資訊記錄在關聯管理資訊中,並在執行資料讀取操作時先查詢關聯管理資訊是否反映欲讀取資料所屬的邏輯位址的群組靜態映射表與動態映射表相關聯。藉此,可快速得到動態映射表中是否記錄欲讀取資料的最新映射資訊,進而在執行資料讀取操作時有效提高記憶體管理電路查詢資料儲存的實體位址的速度,從而提升記憶體管理電路在讀取資料時的效能。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10:記憶體儲存裝置
11:主機系統
110:系統匯流排
111:處理器
112:隨機存取記憶體
113:唯讀記憶體
114:資料傳輸介面
12:輸入/輸出(I/O)裝置
20:主機板
201:隨身碟
202:記憶卡
203:固態硬碟
204:無線記憶體儲存裝置
205:全球定位系統模組
206:網路介面卡
207:無線傳輸裝置
208:鍵盤
209:螢幕
210:喇叭
32:SD卡
33:CF卡
34:嵌入式儲存裝置
341:嵌入式多媒體卡
342:嵌入式多晶片封裝儲存裝置
402:連接介面單元
404:記憶體控制電路單元
406:可複寫式非揮發性記憶體模組
502:記憶體管理電路
504:主機介面
506:記憶體介面
508:緩衝記憶體
510:電源管理電路
512:錯誤檢查與校正電路
410(0)~410(N):實體抹除單元
602:資料區
604:閒置區
606:系統區
608:取代區
901,902,903:群組靜態映射表
1110:動態映射表
1210:關聯管理資訊
LBA(0)~LBA(H):邏輯單元
LZ(0)~LZ(M):邏輯區域
ID1~ID9:初始資料
UD1:更新資料
S1302~S1310:步驟
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。
圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。
圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
圖5是根據一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
圖6與圖7是根據一範例實施例所繪示之管理實體抹除單元的範例示意圖。
圖8是根據本發明一實施例所繪示的更新邏輯位址-實體位址映射表的簡化範例。
圖9是根據本發明一實施例所繪示的群組靜態映射表的簡化範例。
圖10是根據本發明一實施例所繪示的更新邏輯位址-實體位址映射表的簡化範例。
圖11是根據本發明一實施例所繪示的動態映射表的範例。
圖12是根據本發明一實施例所繪示的關聯管理資訊的範例。
圖13是根據一範例實施例所繪示的映射表管理方法的流程圖。
S1302~S1310:步驟
Claims (24)
- 一種映射表管理方法,適用於一可複寫式非揮發性記憶體模組,其中所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存一靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表,所述映射表管理方法包括: 將一動態映射表以及一關聯管理資訊儲存於一緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表; 從一主機系統接收一讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的一第一資料;以及 查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯, 響應於一查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址,並且 響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
- 如請求項1所述的映射表管理方法,其中所述方法更包括: 讀取儲存在所述第一實體位址或所述第二實體位址的資料。
- 如請求項1所述的映射表管理方法,其中查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址的步驟之前,所述映射表管理方法包括: 查詢一位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址;以及 從所述儲存位址讀取所述第一群組靜態映射表。
- 如請求項1所述的映射表管理方法,其中所述方法更包括: 從所述主機系統接收對應一第二資料的一寫入指令,其中所述第二資料對應於所述第一邏輯位址; 發送一指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的一控制電路將所述第二資料寫入至所述多個實體程式化單元中的一第一實體程式化單元;以及 在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
- 如請求項4所述的映射表管理方法,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的步驟包括: 更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
- 如請求項5所述的映射表管理方法,其中在更新所述動態映射表的所述映射資訊之後,所述方法更包括: 根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體; 根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址;以及 在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
- 如請求項6所述的映射表管理方法,其中更新所述第一群組靜態映射表的步驟更包括: 更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
- 如請求項4所述的映射表管理方法,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的步驟包括: 更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
- 一種記憶體控制電路單元,用以控制一可複寫式非揮發性記憶體模組,其中所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存一靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表,所述記憶體控制電路單元包括: 一主機介面,用以耦接至一主機系統; 一記憶體介面,用以耦接至所述可複寫式非揮發性記憶體模組;以及 一記憶體管理電路,耦接至所述主機介面與所述記憶體介面, 其中所述記憶體管理電路用以將一動態映射表以及一關聯管理資訊儲存於一緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表, 所述記憶體管理電路更用以從所述主機系統接收一讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的一第一資料,並且 所述記憶體管理電路更用以查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯, 響應於一查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體管理電路更用以查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址, 響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體管理電路更用以查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
- 如請求項9所述的記憶體控制電路單元,其中所述記憶體管理電路更用以讀取儲存在所述第一實體位址或所述第二實體位址的資料。
- 如請求項9所述的記憶體控制電路單元,其中在查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址之前,所述記憶體管理電路更用以查詢一位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址,並且 所述記憶體管理電路更用以從所述儲存位址讀取所述第一群組靜態映射表。
- 如請求項9所述的記憶體控制電路單元,其中所述記憶體管理電路更用以從所述主機系統接收對應一第二資料的一寫入指令,其中所述第二資料對應於所述第一邏輯位址, 所述記憶體管理電路更用以發送一指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的一控制電路將所述第二資料寫入至所述多個實體程式化單元中的一第一實體程式化單元,並且 所述記憶體管理電路更用以在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
- 如請求項12所述的記憶體控制電路單元,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體管理電路更用以更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
- 如請求項13所述的記憶體控制電路單元,其中在更新所述動態映射表的所述映射資訊之後,所述記憶體管理電路更用以根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體, 所述記憶體管理電路更用以根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址,並且 所述記憶體管理電路更用以在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
- 如請求項14所述的記憶體控制電路單元,其中更新所述第一群組靜態映射表的運作中,所述記憶體管理電路更用以更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
- 如請求項12所述的記憶體控制電路單元,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體管理電路更用以更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
- 一種記憶體儲存裝置,包括: 一連接介面單元,用以耦接至一主機系統; 一可複寫式非揮發性記憶體模組,其中所述可複寫式非揮發性記憶體模組包括多個實體程式化單元,所述可複寫式非揮發性記憶體模組儲存一靜態映射表,且所述靜態映射表被劃分為多個群組靜態映射表;以及 一記憶體控制電路單元,耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組, 其中所述記憶體控制電路單元用以將一動態映射表以及一關聯管理資訊儲存於一緩衝記憶體中,其中所述動態映射表記錄寫入資料對應的邏輯位址以及所述邏輯位址所映射的實體位址,所述關聯管理資訊反映與所述動態映射表中記錄的所述邏輯位址相關聯的所述群組靜態映射表, 所述記憶體控制電路單元更用以從所述主機系統接收一讀取指令,其中所述讀取指令指示讀取儲存於至少一第一邏輯位址的一第一資料,並且 所述記憶體控制電路單元更用以查詢所述關聯管理資訊是否反映記錄所述第一邏輯位址的第一群組靜態映射表與所述動態映射表相關聯, 響應於一查詢結果反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體控制電路單元更用以查詢所述動態映射表以取得所述第一邏輯位址所映射的第一實體位址, 響應於所述查詢結果未反映所述第一群組靜態映射表與所述動態映射表相關聯,所述記憶體控制電路單元更用以查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的第二實體位址。
- 如請求項17所述的記憶體儲存裝置,其中所述記憶體控制電路單元更用以讀取儲存在所述第一實體位址或所述第二實體位址的資料。
- 如請求項17所述的記憶體儲存裝置,其中在查詢所述群組靜態映射表中的所述第一群組靜態映射表以取得所述第一邏輯位址所映射的所述第二實體位址之前,所述記憶體控制電路單元更用以查詢一位址管理資訊以得到所述第一群組靜態映射表在所述可複寫式非揮發性記憶體模組中的儲存位址,並且 所述記憶體控制電路單元更用以從所述儲存位址讀取所述第一群組靜態映射表。
- 如請求項17所述的記憶體儲存裝置,其中所述記憶體控制電路單元更用以從所述主機系統接收對應一第二資料的一寫入指令,其中所述第二資料對應於所述第一邏輯位址, 所述記憶體控制電路單元更用以發送一指令序列至所述可複寫式非揮發性記憶體模組以指示所述可複寫式非揮發性記憶體模組的一控制電路將所述第二資料寫入至所述多個實體程式化單元中的一第一實體程式化單元,並且 所述記憶體控制電路單元更用以在所述可複寫式非揮發性記憶體模組的所述控制電路將所述第二資料寫入至所述第一實體程式化單元的過程中,根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊。
- 如請求項20所述的記憶體儲存裝置,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體控制電路單元更用以更新所述動態映射表的映射資訊以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址。
- 如請求項21所述的記憶體儲存裝置,其中在更新所述動態映射表的所述映射資訊之後,所述記憶體控制電路單元更用以根據所述動態映射表的所述映射資訊從所述可複寫式非揮發性記憶體模組載入所述多個群組靜態映射表中的所述第一群組靜態映射表至所述緩衝記憶體, 所述記憶體控制電路單元更用以根據所述動態映射表的所述映射資訊更新所述第一群組靜態映射表,以使得所述所述第一邏輯位址映射至所述第一實體程式化單元的實體位址,並且 所述記憶體控制電路單元更用以在更新所述第一群組靜態映射表之後,將更新後的所述第一群組靜態映射表回存至所述可複寫式非揮發性記憶體模組。
- 如請求項22所述的記憶體儲存裝置,其中更新所述第一群組靜態映射表的運作中,所述記憶體控制電路單元更用以更新所述關聯管理資訊以使得所述關聯管理資訊不再反映所述第一群組靜態映射表與所述動態映射表相關聯。
- 如請求項20所述的記憶體儲存裝置,其中根據所述第一邏輯位址以及所述第一實體程式化單元的實體位址更新所述動態映射表以及所述關聯管理資訊的運作中,所述記憶體控制電路單元更用以更新所述關聯管理資訊以使得所述關聯管理資訊反映記錄所述第一邏輯位址的所述第一群組靜態映射表與所述動態映射表相關聯。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111644548.6A CN114328297B (zh) | 2021-12-29 | 2021-12-29 | 映射表管理方法、存储器控制电路单元与存储器存储装置 |
| CN202111644548.6 | 2021-12-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202326444A true TW202326444A (zh) | 2023-07-01 |
| TWI817315B TWI817315B (zh) | 2023-10-01 |
Family
ID=81016051
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW111101037A TWI817315B (zh) | 2021-12-29 | 2022-01-11 | 映射表管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11573908B1 (zh) |
| CN (1) | CN114328297B (zh) |
| TW (1) | TWI817315B (zh) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116149572B (zh) * | 2023-02-24 | 2025-08-15 | 合肥兆芯电子有限公司 | 映射表更新方法、存储器存储装置及存储器控制电路单元 |
| CN116244334A (zh) * | 2023-02-27 | 2023-06-09 | 上海太美数字科技有限公司 | 医学数据的查询方法、装置、设备和存储介质 |
| US20250077114A1 (en) * | 2023-09-06 | 2025-03-06 | Comcast Cable Communications, Llc | Methods and systems for storing content |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9547589B2 (en) * | 2008-06-18 | 2017-01-17 | Super Talent Technology, Corp. | Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive |
| US9104327B2 (en) * | 2011-05-17 | 2015-08-11 | Sandisk Technologies Inc. | Fast translation indicator to reduce secondary address table checks in a memory device |
| CN106557432B (zh) * | 2015-09-29 | 2019-08-06 | 群联电子股份有限公司 | 缓冲存储器管理方法、存储器控制电路单元及存储装置 |
| TWI648629B (zh) * | 2017-11-09 | 2019-01-21 | 合肥兆芯電子有限公司 | 映射表更新方法、記憶體控制電路單元與記憶體儲存裝置 |
| CN108021511B (zh) * | 2017-11-22 | 2021-04-06 | 深圳忆联信息系统有限公司 | 一种ssd性能提升的方法及ssd |
| TWI650644B (zh) * | 2018-01-05 | 2019-02-11 | 慧榮科技股份有限公司 | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器及電子裝置 |
| US11003587B2 (en) * | 2018-05-03 | 2021-05-11 | SK Hynix Inc. | Memory system with configurable NAND to DRAM ratio and method of configuring and using such memory system |
| KR102727610B1 (ko) * | 2018-08-02 | 2024-11-07 | 삼성전자주식회사 | 버츄얼 메모리 영역을 제공하는 스토리지 장치, 이를 포함하는 전자 시스템 및 전자 시스템의 동작 방법 |
| CN110908926B (zh) * | 2018-09-14 | 2022-03-22 | 慧荣科技股份有限公司 | 数据储存装置及逻辑至物理地址映射表的写入方法 |
| US11188337B2 (en) * | 2018-09-28 | 2021-11-30 | The Florida State University Research Foundation, Inc. | Micro-architecture designs and methods for eager execution and fetching of instructions |
| TWI709854B (zh) * | 2019-01-21 | 2020-11-11 | 慧榮科技股份有限公司 | 資料儲存裝置及用於存取邏輯至物理位址映射表之方法 |
| TWI717953B (zh) * | 2019-12-26 | 2021-02-01 | 大陸商深圳大心電子科技有限公司 | 儲存控制器、記憶體管理方法與儲存裝置 |
-
2021
- 2021-12-29 CN CN202111644548.6A patent/CN114328297B/zh active Active
-
2022
- 2022-01-11 TW TW111101037A patent/TWI817315B/zh active
- 2022-01-23 US US17/581,969 patent/US11573908B1/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| TWI817315B (zh) | 2023-10-01 |
| CN114328297A (zh) | 2022-04-12 |
| CN114328297B (zh) | 2024-08-06 |
| US11573908B1 (en) | 2023-02-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI785876B (zh) | 映射資訊記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TWI791981B (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
| TWI802068B (zh) | 記憶體效能優化方法、記憶體控制電路單元以及記憶體儲存裝置 | |
| TWI656531B (zh) | 平均磨損方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TWI479315B (zh) | 記憶體儲存裝置、其記憶體控制器與資料寫入方法 | |
| TWI817315B (zh) | 映射表管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TW202016937A (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
| CN110390985B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
| TWI813498B (zh) | 資料讀取方法、記憶體儲存裝置及記憶體控制電路單元 | |
| CN109273033B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
| CN112860193B (zh) | 整理指令处理方法、存储器控制电路单元与存储装置 | |
| TWI766582B (zh) | 有效資料合併方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW202034168A (zh) | 資料儲存方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI635495B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TWI813362B (zh) | 部分抹除管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW202109536A (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI741779B (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI711048B (zh) | 快閃記憶體之資料整理方法、控制電路單元與儲存裝置 | |
| TWI724427B (zh) | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI648629B (zh) | 映射表更新方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TW202236100A (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW202219946A (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
| CN112394883A (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
| TWI823792B (zh) | 映射表更新方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI780003B (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 |