TWI766764B - 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 - Google Patents
記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 Download PDFInfo
- Publication number
- TWI766764B TWI766764B TW110126657A TW110126657A TWI766764B TW I766764 B TWI766764 B TW I766764B TW 110126657 A TW110126657 A TW 110126657A TW 110126657 A TW110126657 A TW 110126657A TW I766764 B TWI766764 B TW I766764B
- Authority
- TW
- Taiwan
- Prior art keywords
- buffer
- memory
- mode
- storage device
- ratio
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (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
本發明是有關於一種記憶體管理技術,且特別是有關於一種記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於可攜式電子產品,例如筆記型電腦。固態硬碟就是一種以快閃記憶體模組作為儲存媒體的記憶體儲存裝置。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
一般來說,可複寫式非揮發性記憶體模組通常包括多個實體抹除單元,並且每一個實體抹除單元會包括多個實體程式化單元。記憶體儲存裝置中的記憶體管理電路會配置邏輯位址以映射實體抹除單元,其中每一邏輯位址具有多個邏輯單元以映射對應的實體抹除單元的實體程式化單元。
為了識別每個邏輯位址的資料被儲存在哪個實體抹除單元,記憶體管理電路會記錄邏輯位址與實體抹除單元之間的映射。具體來說,記憶體管理電路會在可複寫式非揮發性記憶體模組中儲存多個邏輯至實體位址映射表來記錄每一邏輯位址所映射的實體抹除單元。當欲存取資料時,記憶體管理電路會載入對應的邏輯至實體位址映射表至緩衝記憶體,並且依據邏輯至實體位址映射表來寫入或讀取資料。
需注意的是,緩衝記憶體的空間有限。特別是,在記憶體管理電路執行隨機讀取(random read)操作的情況下,通常會多次地載入不同的邏輯至實體位址映射表,此情形會佔用緩衝記憶體的空間。並且當記憶體管理電路執行隨機讀取操作需載入的邏輯至實體位址映射表超過緩衝記憶體配置給邏輯至實體位址映射表的空間時,將造成記憶體儲存裝置的效能惡化。
本發明提供一種記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置,可有效地提高記憶體儲存裝置的使用效率與效能。
本發明提出一種記憶體緩衝區管理方法,用於記憶體儲存裝置。所述記憶體儲存裝置包括可複寫式非揮發性記憶體模組及緩衝記憶體。所述可複寫式非揮發性記憶體模組儲存多個邏輯至實體位址映射表。所述方法包括:接收來自主機系統的連續多個第一指令;計算所述多個第一指令中讀取指令的指令比例;根據所述指令比例及比例閾值決定配置所述記憶體儲存裝置於第一模式或第二模式;響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有第一容量;響應於配置所述記憶體儲存裝置於所述第二模式,在所述緩衝記憶體配置第二緩衝區暫存所述邏輯至實體位址映射表,其中所述第二緩衝區具有第二容量,其中所述第二容量大於所述第一容量。
在本發明的一範例實施例中,上述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的步驟包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
在本發明的一範例實施例中,響應於配置所述記憶體儲存裝置於所述第二模式,所述方法更包括:在所述緩衝記憶體配置第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料,其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有第三容量。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的步驟包括:判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
在本發明的一範例實施例中,上述關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
在本發明的一範例實施例中,上述方法更包括:記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數;以及計算所述次數及所述總次數的比值以獲取有效比例,並根據所述有效比例調整所述比例閾值。
在本發明的一範例實施例中,上述根據所述有效比例調整所述比例閾值的步驟包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
在本發明的一範例實施例中,上述方法更包括:響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝區具有第四容量。其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
本發明提出一種記憶體控制電路單元,用於控制記憶體儲存裝置。所述記憶體儲存裝置包括可複寫式非揮發性記憶體模組。所述可複寫式非揮發性記憶體模組儲存多個邏輯至實體位址映射表。所述記憶體控制電路單元包括主機介面、記憶體介面、緩衝記憶體以及記憶體管理電路。所述記憶體介面用以耦接至所述可複寫式非揮發性記憶體模組。所述緩衝記憶體耦接至所述主機介面及所述記憶體介面。所述記憶體管理電路耦接至所述主機介面、所述記憶體介面與所述緩衝記憶體,其中所述記憶體管理電路用以接收來自所述主機系統的連續多個第一指令。所述記憶體管理電路更用以根據所述指令比例及比例閾值決定配置所述記憶體儲存裝置於第一模式或第二模式。其中響應於配置所述記憶體儲存裝置於所述第一模式,所述記憶體管理電路更用以在所述緩衝記憶體配置第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有第一容量。並且,響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體管理電路更用以在所述緩衝記憶體配置第二緩衝區暫存所述邏輯至實體位址映射表,其中所述第二緩衝區具有第二容量。其中所述第二容量大於所述第一容量。
在本發明的一範例實施例中,上述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
在本發明的一範例實施例中,響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體管理電路更用以在所述緩衝記憶體配置第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料。其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有第三容量。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
在本發明的一範例實施例中,上述關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
在本發明的一範例實施例中,上述記憶體管理電路更用以記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數。並且,所述記憶體管理電路更用以計算所述次數及所述總次數的比值以獲取有效比例,並根據所述有效比例調整所述比例閾值。
在本發明的一範例實施例中,上述根據所述有效比例調整所述比例閾值的操作包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
在本發明的一範例實施例中,上述記憶體管理電路更用以響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝區具有第四容量。其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
本發明提出一種記憶體儲存裝置,包括連接介面單元、可複寫式非揮發性記憶體模組以及記憶體控制電路單元。所述可複寫式非揮發性記憶體模組儲存多個邏輯至實體位址映射表。所述記憶體控制電路單元耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組,其中所述記憶體控制電路單元包括緩衝記憶體。所述記憶體控制電路單元用以接收來自所述主機系統的連續多個第一指令。所述記憶體控制電路單元更用以計算所述多個第一指令中讀取指令的指令比例。所述記憶體控制電路單元更用以根據所述指令比例及比例閾值決定配置所述記憶體儲存裝置於第一模式或第二模式。其中響應於配置所述記憶體儲存裝置於所述第一模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有第一容量。並且,響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置第二緩衝區暫存所述邏輯至實體位址映射表,其中所述第二緩衝區具有第二容量。其中所述第二容量大於所述第一容量。
在本發明的一範例實施例中,上述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
在本發明的一範例實施例中,響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料。其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有第三容量。
在本發明的一範例實施例中,上述根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
在本發明的一範例實施例中,上述關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
在本發明的一範例實施例中,上述記憶體控制電路單元更用以記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數。並且,所述記憶體控制電路單元更用以計算所述次數及所述總次數的比值以獲取有效比例,並根據所述有效比例調整所述比例閾值。
在本發明的一範例實施例中,上述根據所述有效比例調整所述比例閾值的操作包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
在本發明的一範例實施例中,上述記憶體控制電路單元更用以響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝區具有第四容量。其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
基於上述,本發明提供的記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置,能夠根據主機系統執行的讀取操作模式動態地配置緩衝記憶體的緩衝區。例如,本發明的範例實施例可在多個指令中對應至隨機讀取操作模式的讀取指令的比例超過閾值時,在緩衝記憶體中執行加速模式來配置較多的儲存空間來暫存邏輯至實體位址映射表。如此一來,本發明實施例可在適當的時機執行加速模式,藉以提升記憶體儲存裝置進行資料讀取時的速度與效能。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路單元)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖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 Storage, 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可以是單階記憶胞(Single Level Cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元的快閃記憶體模組)、多階記憶胞(Multi Level Cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元的快閃記憶體模組)、複數階記憶胞(Triple Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404,並且用以儲存主機系統11所寫入之資料。可複寫式非揮發性記憶體模組406具有實體抹除單元410(0)~410(N)。例如,實體抹除單元410(0)~410(N)可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。每一實體抹除單元分別具有複數個實體程式化單元,其中屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。然而,必須瞭解的是,本發明不限於此,每一實體抹除單元是可由64個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
更詳細來說,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。每一實體程式化單元通常包括資料位元區與冗餘位元區。資料位元區包含多個實體存取位址用以儲存使用者的資料,而冗餘(redundancy)位元區用以儲存系統的資料(例如,控制資訊與錯誤更正碼)。在本範例實施例中,每一個實體程式化單元的資料位元區中會包含8個實體存取位址,且一個實體存取位址的大小為512位元組(byte)。然而,在其他範例實施例中,資料位元區中也可包含數目更多或更少的實體存取位址,本發明並不限制實體存取位址的大小以及個數。例如,在一範例實施例中,實體抹除單元為實體區塊,並且實體程式化單元為實體頁面(page)或實體扇區(sector),但本發明不以此為限。
圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。
請參照圖5,記憶體控制電路單元404包括記憶體管理電路502、主機介面504及記憶體介面506。
記憶體管理電路502用以控制記憶體控制電路單元404的整體運作。具體來說,記憶體管理電路502具有多個控制指令,並且在記憶體儲存裝置10運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路502的操作時,等同於說明記憶體控制電路單元404的操作。
在本範例實施例中,記憶體管理電路502的控制指令是以韌體型式來實作。例如,記憶體管理電路502具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置10運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在另一範例實施例中,記憶體管理電路502的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組406的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路502具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當記憶體控制電路單元404被致能時,微處理器單元會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組406中之控制指令載入至記憶體管理電路502的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在另一範例實施例中,記憶體管理電路502的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路502包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。記憶胞管理電路用以管理可複寫式非揮發性記憶體模組406的記憶胞或其群組。記憶體寫入電路用以對可複寫式非揮發性記憶體模組406下達寫入指令序列以將資料寫入至可複寫式非揮發性記憶體模組406中。記憶體讀取電路用以對可複寫式非揮發性記憶體模組406下達讀取指令序列以從可複寫式非揮發性記憶體模組406中讀取資料。記憶體抹除電路用以對可複寫式非揮發性記憶體模組406下達抹除指令序列以將資料從可複寫式非揮發性記憶體模組406中抹除。資料處理電路用以處理欲寫入至可複寫式非揮發性記憶體模組406的資料以及從可複寫式非揮發性記憶體模組406中讀取的資料。寫入指令序列、讀取指令序列及抹除指令序列可各別包括一或多個程式碼或指令碼並且用以指示可複寫式非揮發性記憶體模組406執行相對應的寫入、讀取及抹除等操作。在一範例實施例中,記憶體管理電路502還可以下達其他類型的指令序列給可複寫式非揮發性記憶體模組406以指示執行相對應的操作。
主機介面504是耦接至記憶體管理電路502並且用以接收與識別主機系統11所傳送的指令與資料。也就是說,主機系統11所傳送的指令與資料會透過主機介面504來傳送至記憶體管理電路502。在本範例實施例中,主機介面504是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面504亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、UHS-I標準、UHS-II標準、MS標準、MMC標準、eMMC標準、UFS標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面506是耦接至記憶體管理電路502並且用以存取可複寫式非揮發性記憶體模組406。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。具體來說,若記憶體管理電路502要存取可複寫式非揮發性記憶體模組406,記憶體介面506會傳送對應的指令序列。例如,這些指令序列可包括指示寫入資料的寫入指令序列、指示讀取資料的讀取指令序列、指示抹除資料的抹除指令序列、以及用以指示各種記憶體操作(例如,改變讀取電壓準位或執行垃圾回收程序等等)的相對應的指令序列。這些指令序列例如是由記憶體管理電路502產生並且透過記憶體介面506傳送至可複寫式非揮發性記憶體模組406。這些指令序列可包括一或多個訊號,或是在匯流排上的資料。這些訊號或資料可包括指令碼或程式碼。例如,在讀取指令序列中,會包括讀取的辨識碼、記憶體位址等資訊。
在一範例實施例中,記憶體控制電路單元404還包括錯誤檢查與校正電路508、緩衝記憶體510與電源管理電路512。
錯誤檢查與校正電路508是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路508會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code, ECC)及/或錯誤檢查碼(error detecting code,EDC),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中讀取資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路508會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正程序。
在本範例實施例中,錯誤檢查與校正電路508執行編碼程序的基本單位是一個框架(frame)。一個框架包括多個資料位元。在本範例實施例中,一個框架包括256個位元。然而,在另一範例實施例中,一個框架也可以包括更多或更少的位元。
在本範例實施例中,錯誤檢查與校正電路508可以針對儲存於一個實體頁面中的資料進行單框架(single-frame)編碼,也可以針對儲存於多個實體頁面中的資料進行多框架(multi-frame)編碼。單框架編碼與多框架編碼可以分別採用低密度奇偶檢查校正碼(low density parity code,LDPC)、BCH碼、迴旋碼(convolutional code)或渦輪碼(turbo code)等編碼演算法的至少其中之一。或者,在一範例實施例中,多框架編碼還可以採用里德-所羅門碼(Reed-solomon codes, RS codes)演算法。此外,在另一範例實施例中,更多未列於上的編碼演算法也可以被採用,在此便不贅述。根據所採用的編碼演算法,錯誤檢查與校正電路508可以編碼欲保護之資料來產生相對應的錯誤更正碼及/或錯誤檢查碼。在本範例實施例中,經由編碼產生的錯誤更正碼及/或錯誤檢查碼將統稱為同位碼(parity code)。在記憶體管理電路502會將同位碼寫入至可複寫式非揮發性記憶體模組406中之前,同位碼會先暫存在緩衝記憶體510的緩衝區中。
緩衝記憶體510是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。電源管理電路512是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。
圖6是根據本發明的一範例實施例所繪示之緩衝記憶體的示意圖。
請參照圖6,緩衝記憶體510具有緩存單元610(0)~610(D),每一個緩存單元的容量例如為4KB。具體而言,四個緩存單元的容量為對應可複寫式非揮發性記憶體的一個實體程式化單元的容量。然而,必須暸解的是,本範例實施例不限定配置在緩衝記憶體510中的緩存單元的個數、緩存單元的容量以及主機系統11所傳送之資料的大小。此外,主機系統11例如是以4KB為單位來傳送或存取資料。或者,在另一範例實施例中,主機系統11每次所傳送或存取之資料的容量亦可以大於或小於4KB。
圖7與圖8是根據本發明的一範例實施例所繪示之管理實體抹除單元的範例示意圖。
必須瞭解的是,在此描述可複寫式非揮發性記憶體模組406之實體抹除單元的運作時,以「提取」、「分組」、「劃分」、「關聯」等詞來操作實體抹除單元是邏輯上的概念。也就是說,可複寫式非揮發性記憶體模組之實體抹除單元的實際位置並未更動,而是邏輯上對可複寫式非揮發性記憶體模組的實體抹除單元進行操作。
請參照圖7,記憶體管理電路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。
請參照圖8,記憶體管理電路502會配置邏輯區塊位址LBA(0)~LBA(H)以映射資料區602的實體抹除單元,其中每一邏輯區塊位址具有多個邏輯位址(logical address, LA)以映射對應之實體抹除單元的實體程式化單元。並且,當主機系統11欲寫入資料至邏輯位址或更新儲存於邏輯位址中的資料時,記憶體管理電路502會從閒置區604中提取一個實體抹除單元作為作動實體抹除單元來寫入資料,以輪替資料區602的實體抹除單元。並且,當此作為作動實體抹除單元的實體抹除單元被寫滿時,記憶體管理電路502會再從閒置區604中提取空的實體抹除單元作為作動實體抹除單元,以繼續寫入對應來自於主機系統11之寫入指令的更新資料。此外,當閒置區604中可用的實體抹除單元的數目小於預設值時,記憶體管理電路502會執行垃圾蒐集(garbage collection)操作(亦稱為,有效資料合併操作)來整理資料區602中的有效資料,以將資料區602中無儲存有效資料的實體抹除單元重新關聯至閒置區604。
值得一提的是,由於緩衝記憶體510的容量有限無法儲存記錄所有邏輯位址之映射關係的映射表,因此,在本範例實施例中,記憶體管理電路502可將邏輯區塊位址LBA(0)~LBA(H)分組為多個邏輯區域LZ(0)~LZ(M),並且為每一邏輯區域配置一個邏輯至實體位址映射表。
一般而言,為了識別每個邏輯位址的資料被儲存在哪個實體程式化單元,記憶體管理電路502會記錄邏輯位址與實體程式化單元之間的映射關係(亦稱為邏輯至實體映射關係)。例如,在本範例實施例中,記憶體管理電路502會在可複寫式非揮發性記憶體模組406中儲存邏輯至實體位址映射表來記錄每一邏輯位址所映射的實體程式化單元。當主機系統11下達多個讀取指令給記憶體管理電路502,記憶體管理電路502會將這些讀取指令放入一個指令佇列(command queue)當中,並且記憶體管理電路502會決定執行這些讀取指令的執行順序。記憶體管理電路502會將邏輯位址對應的邏輯至實體位址映射表載入至緩衝記憶體510的緩衝區中。若記憶體管理電路502要執行一個讀取指令,則記憶體管理電路502會取得此讀取指令所要讀取的邏輯位址,並根據載入至緩衝記憶體510的邏輯至實體位址映射表取得此邏輯位址所映射的一個實體抹除單元或實體程式化單元,以從此實體抹除單元或實體程式化單元中讀取資料並傳送給主機系統11。之後,記憶體管理電路502可依據載入至緩衝記憶體510的邏輯至實體位址映射表來寫入或讀取資料。
值得一提的是,若緩衝記憶體510的儲存空間不足,且讀取指令對應的邏輯至實體位址映射表未被暫存在緩衝記憶體510中(即,緩衝記憶體510中所暫存的邏輯至實體位址映射表未記錄欲更新之邏輯位址的映射時),記憶體管理電路502會執行映射表交換操作(mapping table swapping operation)以將目前暫存在緩衝記憶體510中邏輯至實體位址映射表回存至可複寫式非揮發性記憶體模組406,並且將記錄有欲讀取之邏輯位址所映射的邏輯至實體位址映射表載入至緩衝記憶體510中。
此外,當主機系統11下達多個寫入指令給記憶體管理電路502,記憶體管理電路502會將這些寫入指令及寫入指令對應的資料暫存至緩衝記憶體510的緩衝區中。若記憶體管理電路502要執行一個寫入指令,則記憶體管理電路502可依據寫入指令及載入至緩衝記憶體510的邏輯至實體位址映射表來寫入資料。
因此,請再參照圖6。在本範例實施例中,緩衝記憶體510可被配置為至少包括緩衝區612、緩衝區613與緩衝區614。緩衝區612配置為用以暫存來自主機系統11的指令、寫入資料、同位碼或其他資料,緩衝區613配置為用以暫存來自可複寫式非揮發性記憶體模組406的讀取資料,緩衝區614配置為用以暫存來自可複寫式非揮發性記憶體模組406的邏輯至實體位址映射表。應注意的是,本發明並不欲加以限制配置給緩衝區612、緩衝區613以及緩衝區614的緩存單元的數量。在一範例實施例中,緩衝區612的容量大於緩衝區614,亦即,配置給緩衝區612的緩存單元的數量大於配置給緩衝區614的緩存單元的數量。此外,可以配置固定數量的緩存單元(例如,對應容量128k)給緩衝區613。
需注意的是,來自主機系統11的讀取指令例如可包括連續讀取操作模式或隨機讀取操作模式。連續讀取操作模式代表主機系統11正在對可複寫式非揮發性記憶體模組406連續下達多個讀取指令以分別執行多個讀取操作,其中此些讀取操作所需使用的映射資訊被連續地儲存在同一個邏輯至實體位址映射表中。記憶體管理電路502例如可以根據上述的多個讀取操作所分別對應的邏輯位址,判斷此些邏輯位址的映射資訊被連續地儲存在相同的邏輯至實體位址映射表中,進而判斷可複寫式非揮發性記憶體模組406目前的操作模式為連續讀取操作模式。
隨機讀取操作模式代表主機系統11正在對可複寫式非揮發性記憶體模組406連續下達多個讀取指令以分別執行多個讀取操作,其中對應每一個讀取操作所需使用的映射資訊被分散地儲存在多個不同的邏輯至實體位址映射表中。記憶體管理電路502例如可以根據上述的多個讀取操作所分別對應的邏輯位址,判斷此些邏輯位址的映射資訊被分散地儲存在多個不同的邏輯至實體位址映射表中,進而判斷可複寫式非揮發性記憶體模組406目前的操作模式為隨機讀取操作模式。
一般來說,緩衝區614的容量有限。因此,在主機系統11是執行隨機讀取操作的情況下,記憶體管理電路502需要多次地將不同的邏輯至實體位址映射表載入緩衝記憶體510的緩衝區614。換句話說,受限於載入緩衝記憶體510中配置用來儲存邏輯至實體位址映射表的緩衝區的容量,則記憶體管理電路502必須在其完成將對應目前緩衝區614中映射資訊的資料從可複寫式非揮發性記憶體模組406中讀取至緩衝區613,以及緩衝區613接收此些資料後,記憶體管理電路502才能再載入其他部分的映射資訊至緩衝區614中,並對可複寫式非揮發性記憶體模組406下達指令佇列中的下一個隨機讀取指令。也就是說,當主機系統11執行隨機讀取操作時,受限於緩衝區的容量使得執行讀取指令的效率低落,進而導致記憶體儲存裝置10的整體效能降低。
有鑑於此,在本範例實施例中,記憶體管理電路502可根據主機系統11執行的讀取操作模式來動態地安排緩衝記憶體510中緩衝區的配置。
在一範例實施例中,記憶體管理電路502會接收來自主機系統11的連續多個指令(亦稱為第一指令)。例如,此些指令可能會是寫入指令、讀取指令或其他指令。記憶體管理電路502會計算這些第一指令中讀取指令的指令比例,並根據計算出的指令比例及比例閾值決定配置記憶體儲存裝置10於第一模式或第二模式。特別是,此比例閾值可經由一連串的事先測試與分析而決定,或者也可以動態地調整。在一範例實施例中,記憶體管理電路502是計算這些第一指令中對應至隨機讀取操作模式的讀取指令的指令比例,並根據計算出的指令比例及比例閾值決定配置記憶體儲存裝置10於第一模式或第二模式。
舉例來說,記憶體管理電路502可在指令比例小於比例閾值時配置記憶體儲存裝置10於第一模式,並在指令比例不小於比例閾值時配置記憶體儲存裝置10於第二模式。此外,記憶體管理電路502也可以在預設時間範圍內,連續多個計算出的指令比例與比例閾值的差值小於一預設差值時即配置記憶體儲存裝置10於第二模式,本發明不在此限制。
在本範例實施例中,若記憶體儲存裝置10配置於第一模式,記憶體管理電路502會在緩衝記憶體510配置緩衝區(亦稱為第一緩衝區)暫存邏輯至實體位址映射表。於此,第一緩衝區具有固定容量(亦稱為第一容量)。另一方面,若記憶體儲存裝置10配置於第二模式,記憶體管理電路502會在緩衝記憶體510配置緩衝區(亦稱為第二緩衝區)暫存邏輯至實體位址映射表。於此,第二緩衝區具有固定容量(亦稱為第二容量),並且此第二容量大於第一模式中第一緩衝區的第一容量。在本範例實施例中,邏輯至實體位址映射表係從可複寫式非揮發性記憶體模組406載入。
特別是,所述第一模式可視為是一般模式,而所述第二模式可視為是因應主機系統11多次執行隨機讀取操作而執行的加速模式。換言之,在執行的加速模式時,記憶體管理電路502會在緩衝記憶體510中配置比一般模式多的儲存空間來暫存從可複寫式非揮發性記憶體模組406載入的邏輯至實體位址映射表。
如此一來,藉由多個指令中對應至隨機讀取操作模式的讀取指令的指令比例來決定是否執行/離開加速模式,記憶體管理電路502可以有效率地切換配置模式,避免頻繁地執行/離開加速模式造成的代價。此代價例如是為了增加儲存空間來暫存從可複寫式非揮發性記憶體模組406載入的資料而捨棄緩衝記憶體510中暫存的資料造成的代價,或執行清倉(flush)操作而導致的寫入放大(Write amplification)。
在一範例實施例中,若記憶體儲存裝置10配置於第二模式,記憶體管理電路502更可以在緩衝記憶體510配置緩衝區(亦稱為第三緩衝區)暫存關聯於來自主機系統11的寫入指令的資料。例如,關聯於寫入指令的資料包括寫入指令及第二指令對應的寫入資料,本發明不在此限制。於此,第三緩衝區不同於緩衝記憶體510中配置的第二緩衝區,並且第三緩衝區具有固定容量(亦稱為第三容量)。
此外,記憶體管理電路502可以根據第三緩衝區包括的緩存單元是否被寫滿來決定是否從第二模式切換為第一模式。在本範例實施例中,當記憶體管理電路502配置記憶體儲存裝置10於第二模式時,記憶體管理電路502會判斷第三緩衝區包括的緩存單元是否被寫滿(即,配置給第三緩衝區的緩存單元的空間皆已寫入資料)。並且,記憶體管理電路502會在第三緩衝區包括的緩存單元被寫滿時,配置記憶體儲存裝置10於第一模式。
換言之,記憶體管理電路502在記憶體儲存裝置10配置於第二模式時,可透過第三緩衝區承載多個對應至隨機讀取操作模式的讀取指令之間的其他指令或資料。如此,記憶體管理電路502可不需要頻繁地在一般模式及加速模式之間切換,避免頻繁地執行/離開加速模式造成的代價。
圖9A是根據本發明的一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。圖9B是根據本發明的一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
請先參照圖9A,在第一模式910中,記憶體管理電路502配置緩衝記憶體510包括緩衝區614(亦可稱為第一緩衝區)及緩衝區612(亦可稱為第四緩衝區),且緩衝區612的容量及緩衝區614的容量的總合為一預定值。本範例實施例假設緩衝區612及緩衝區614的總容量為1208KB,其中緩衝區614的容量為72KB,緩衝區612的容量為1136KB。在本範例實施例中,記憶體管理電路502配置緩衝區614為用於暫存邏輯至實體位址映射表,並配置緩衝區612為用於暫存關聯於寫入指令的資料。
請參照圖9B,在第二模式920中,記憶體管理電路502配置緩衝區618(亦稱為第二緩衝區)的容量為824KB,並配置緩衝區616(亦稱為第三緩衝區)的容量為384KB。在本範例實施例中,記憶體管理電路502配置緩衝區618為用於暫存邏輯至實體位址映射表,並配置緩衝區616為用於暫存關聯於寫入指令的資料。在本範例實施例中,緩衝區616的容量及緩衝區618的容量的總合與第一模式910的所述預定值相同,並且第二模式920中緩衝區618的容量大於第一模式910中緩衝區614的容量。亦即,執行第二模式920時,記憶體管理電路502會在緩衝記憶體510中配置比第一模式910多的儲存空間來暫存從可複寫式非揮發性記憶體模組406載入的邏輯至實體位址映射表。
圖10A是根據本發明的另一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。圖10B是根據本發明的另一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
請先參照圖10A,第一模式910中配置緩衝區612及緩衝區614的實施方式可參照圖9A,於此不再贅述。在本範例實施例中,記憶體管理電路502配置緩衝區612包括子緩衝區6121及子緩衝區6122。於此,記憶體管理電路502配置子緩衝區6121為用於暫存寫入指令及寫入指令對應的寫入資料,並配置子緩衝區6122為用於暫存根據寫入資料產生的同位碼、垃圾蒐集操作使用的映射表或其他資料。本範例實施例假設子緩衝區6121的容量為384KB,子緩衝區6122的容量為752KB。
請參照圖10B,第二模式920中配置緩衝區616及緩衝區618的實施方式可參照圖9B,於此不再贅述。在本範例實施例中,記憶體管理電路502會將第一模式910的子緩衝區6122中執行清倉操作以將暫存在子緩衝區6122中的暫存資料寫入至可複寫式非揮發性記憶體模組406,以將子緩衝區6122的容量釋出給緩衝區618來儲存邏輯至實體位址映射表。如此,請參照圖10,緩衝區616中僅配置用於暫存寫入指令及寫入指令對應的寫入資料的緩衝區6161。此外,當記憶體管理電路502從配置記憶體儲存裝置10於第二模式920切換至第一模式910時,記憶體管理電路502可將執行清倉操作時寫入至可複寫式非揮發性記憶體模組406的暫存資料載入至子緩衝區6122中。
在一範例實施例中,記憶體管理電路502可動態調整上述比例閾值。在動態調整比例閾值的操作中,記憶體管理電路502會記錄記憶體儲存裝置10從配置於第二模式切換至配置於第一模式的切換總次數以及切換時第三緩衝區包括的緩存單元被寫滿的次數。接著,記憶體管理電路502會計算被寫滿的次數及切換總次數的比值以獲取有效比例,並根據有效比例調整比例閾值。
舉例來說,若記憶體管理電路502判斷有效比例小於前一次從記憶體儲存裝置10配置於第二模式切換至配置於第一模式計算出的先前有效比值,則增加比例閾值。另外,若記憶體管理電路502判斷有效比例不小於先前有效比值,則減少比例閾值。換言之,當有效比例越高,表示該次從第一模式切換至第二模式是有效的,因為第三緩衝區充分地承載了多個對應至隨機讀取操作模式的讀取指令之間的其他指令或資料。因此,記憶體管理電路502可在有效比例越高時減少比例閾值,增加進入第二模式的機率。
圖11是根據本發明的一範例實施例所繪示的記憶體緩衝區管理方法的流程圖。
請參照圖11,在步驟S1102中,接收來自主機系統的連續多個第一指令。在步驟S1104中,計算多個第一指令中讀取指令的指令比例。在步驟S1106中,根據指令比例及比例閾值決定配置記憶體儲存裝置於第一模式或第二模式。
然而,圖11中各步驟已詳細說明如上,在此便不再贅述。值得注意的是,圖11中各步驟可以實作為多個程式碼或是電路,本發明不加以限制。此外,圖11的方法可以搭配以上範例實施例使用,也可以單獨使用,本發明不加以限制。
綜上所述,本發明提供的記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置,能夠根據主機系統執行的讀取操作模式動態地配置緩衝記憶體的緩衝區。例如,本發明的範例實施例可在多個指令中對應至隨機讀取操作模式的讀取指令的比例超過閾值時,在緩衝記憶體中執行加速模式來配置較多的儲存空間來暫存邏輯至實體位址映射表。另一方面,本發明實施例可動態地調整用於判斷是否進入加入模式的閾值。如此一來,本發明實施例可在適當的時機執行加速模式,藉以提升記憶體儲存裝置進行資料讀取時的速度與效能。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10, 30:記憶體儲存裝置
11, 31:主機系統
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:可複寫式非揮發性記憶體模組
410(0)~410(N):實體抹除單元
502:記憶體管理電路
504:主機介面
506:記憶體介面
508:錯誤檢查與校正電路
510:緩衝記憶體
512:電源管理電路
602:資料區
604:閒置區
606:系統區
608:取代區
610(0)~610(D):緩存單元
612, 613, 614, 616, 618:緩衝區
6121, 6122, 6161:子緩衝區
910:第一模式
920:第二模式
LBA(0)~LBA(H):邏輯區塊位址
LZ(0)~LZ(M):邏輯區域
S1102:步驟(接收來自主機系統的連續多個第一指令)
S1104:步驟(計算多個第一指令中讀取指令的指令比例)
S1106:步驟(根據指令比例及比例閾值決定配置記憶體儲存裝置於第一模式或第二模式)
圖1是根據一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。
圖2是根據另一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。
圖3是根據另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。
圖6是根據本發明的一範例實施例所繪示之緩衝記憶體的示意圖。
圖7與圖8是根據本發明的一範例實施例所繪示之管理實體抹除單元的範例示意圖。
圖9A是根據本發明的一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
圖9B是根據本發明的一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
圖10A是根據本發明的另一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
圖10B是根據本發明的另一範例實施例所繪示在第一模式中緩衝記憶體之緩衝區的容量配置的示意圖。
圖11是根據本發明的一範例實施例所繪示的記憶體緩衝區管理方法的流程圖。
S1102:步驟(接收來自主機系統的連續多個第一指令)
S1104:步驟(計算多個第一指令中讀取指令的指令比例)
S1106:步驟(根據指令比例及比例閾值決定配置記憶體儲存裝置於第一模式或第二模式)
Claims (27)
- 一種記憶體緩衝區管理方法,用於一記憶體儲存裝置,其中所述記憶體儲存裝置包括一可複寫式非揮發性記憶體模組及一緩衝記憶體,所述可複寫式非揮發性記憶體模組儲存多個邏輯至實體位址映射表,所述方法包括:接收來自主機系統的連續多個第一指令;計算所述多個第一指令中對應至隨機讀取操作模式的讀取指令所佔的一指令比例;根據所述指令比例及一比例閾值決定配置所述記憶體儲存裝置於一第一模式或一第二模式;響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置一第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有一第一容量;響應於配置所述記憶體儲存裝置於所述第二模式,在所述緩衝記憶體配置一第二緩衝區暫存所述邏輯至實體位址映射表,其中所述第二緩衝區具有一第二容量,其中所述第二容量大於所述第一容量。
- 如請求項1所述的記憶體緩衝區管理方法,其中所述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
- 如請求項1所述的記憶體緩衝區管理方法,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的步驟包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
- 如請求項1所述的記憶體緩衝區管理方法,其中響應於配置所述記憶體儲存裝置於所述第二模式,所述方法更包括:在所述緩衝記憶體配置一第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料,其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有一第三容量。
- 如請求項4所述的記憶體緩衝區管理方法,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的步驟包括:判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
- 如請求項4所述的記憶體緩衝區管理方法,其中關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
- 如請求項4所述的記憶體緩衝區管理方法,其中所述方法更包括:記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數;以及計算所述次數及所述總次數的一比值以獲取一有效比例,並根據所述有效比例調整所述比例閾值。
- 如請求項7所述的記憶體緩衝區管理方法,其中根據所述有效比例調整所述比例閾值的步驟包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的一先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
- 如請求項4所述的記憶體緩衝區管理方法,其中所述方法更包括:響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置一第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝區具有一第四容量,其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
- 一種記憶體控制電路單元,用於控制一記憶體儲存裝置,所述記憶體儲存裝置包括一可複寫式非揮發性記憶體模組,所述可複寫式非揮發性記憶體模組儲存多個邏輯至實體位址映射表,其中所述記憶體控制電路單元包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至所述可複寫式非揮發性記憶體模組;一緩衝記憶體,耦接至所述主機介面及所述記憶體介面;以及一記憶體管理電路,耦接至所述主機介面、所述記憶體介面與所述緩衝記憶體,其中所述記憶體管理電路用以接收來自所述主機系統的連續多個第一指令,所述記憶體管理電路更用以計算所述多個第一指令中對應至隨機讀取操作模式的讀取指令所佔的一指令比例,所述記憶體管理電路更用以根據所述指令比例及一比例閾值決定配置所述記憶體儲存裝置於一第一模式或一第二模式,其中響應於配置所述記憶體儲存裝置於所述第一模式,所述記憶體管理電路更用以在所述緩衝記憶體配置一第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有一第一容量,並且響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體管理電路更用以在所述緩衝記憶體配置一第二緩衝區暫存所述 邏輯至實體位址映射表,其中所述第二緩衝區具有一第二容量,其中所述第二容量大於所述第一容量。
- 如請求項10所述的記憶體控制電路單元,其中所述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
- 如請求項10所述的記憶體控制電路單元,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
- 如請求項10所述的記憶體控制電路單元,其中響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體管理電路更用以在所述緩衝記憶體配置一第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料,其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有一第三容量。
- 如請求項13所述的記憶體控制電路單元,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及 響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
- 如請求項13所述的記憶體控制電路單元,其中關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
- 如請求項13所述的記憶體控制電路單元,其中所述記憶體管理電路更用以記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數,並且所述記憶體管理電路更用以計算所述次數及所述總次數的一比值以獲取一有效比例,並根據所述有效比例調整所述比例閾值。
- 如請求項16所述的記憶體控制電路單元,其中根據所述有效比例調整所述比例閾值的操作包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的一先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
- 如請求項13所述的記憶體控制電路單元,其中所述記憶體管理電路更用以響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置一第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝 區具有一第四容量,其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
- 一種記憶體儲存裝置,包括:一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,儲存多個邏輯至實體位址映射表;以及一記憶體控制電路單元,耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組,其中所述記憶體控制電路單元包括一緩衝記憶體,其中所述記憶體控制電路單元用以接收來自所述主機系統的連續多個第一指令,所述記憶體控制電路單元更用以計算所述多個第一指令中對應至隨機讀取操作模式的讀取指令所佔的一指令比例,所述記憶體控制電路單元更用以根據所述指令比例及一比例閾值決定配置所述記憶體儲存裝置於一第一模式或一第二模式,其中響應於配置所述記憶體儲存裝置於所述第一模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置一第一緩衝區暫存所述邏輯至實體位址映射表,其中所述第一緩衝區具有一第一容量,並且響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置一第二緩衝區暫存 所述邏輯至實體位址映射表,其中所述第二緩衝區具有一第二容量,其中所述第二容量大於所述第一容量。
- 如請求項19所述的記憶體儲存裝置,其中所述第一緩衝區及所述第二緩衝區暫存的所述邏輯至實體位址映射表係從所述可複寫式非揮發性記憶體模組載入。
- 如請求項19所述的記憶體儲存裝置,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括:響應於所述指令比例小於所述比例閾值,配置所述記憶體儲存裝置於所述第一模式;以及響應於所述指令比例不小於所述比例閾值,配置所述記憶體儲存裝置於所述第二模式。
- 如請求項19所述的記憶體儲存裝置,其中響應於配置所述記憶體儲存裝置於所述第二模式,所述記憶體控制電路單元更用以在所述緩衝記憶體配置一第三緩衝區暫存關聯於來自所述主機系統的寫入指令的資料,其中所述第三緩衝區不同於所述第二緩衝區且所述第三緩衝區具有一第三容量。
- 如請求項22所述的記憶體儲存裝置,其中根據所述指令比例及所述比例閾值決定配置所述記憶體儲存裝置於所述第一模式或所述第二模式的操作包括: 判斷所述第三緩衝區包括的緩存單元是否被寫滿;以及響應於所述第三緩衝區包括的所述緩存單元被寫滿,配置所述記憶體儲存裝置於所述第一模式。
- 如請求項22所述的記憶體儲存裝置,其中關聯於所述寫入指令的資料包括所述寫入指令及所述寫入指令對應的寫入資料。
- 如請求項22所述的記憶體儲存裝置,其中所述記憶體控制電路單元更用以記錄從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式的切換總次數以及切換時所述第三緩衝區包括的緩存單元被寫滿的次數,並且所述記憶體控制電路單元更用以計算所述次數及所述總次數的一比值以獲取一有效比例,並根據所述有效比例調整所述比例閾值。
- 如請求項25所述的記憶體儲存裝置,其中根據所述有效比例調整所述比例閾值的操作包括:若所述有效比例小於前一次從所述記憶體儲存裝置配置於所述第二模式切換至配置於所述第一模式計算出的一先前有效比值,則增加所述比例閾值;以及若所述有效比例不小於所述先前有效比值,則減少所述比例閾值。
- 如請求項22所述的記憶體儲存裝置,其中所述記憶體控制電路單元更用以響應於配置所述記憶體儲存裝置於所述第一模式,在所述緩衝記憶體配置一第四緩衝區,其中所述第四緩衝區不同於所述第一緩衝區且所述第四緩衝區具有一第四容量,其中所述第一容量及所述第四容量的總合等於所述第二容量及所述第三容量的總合。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110126657A TWI766764B (zh) | 2021-07-20 | 2021-07-20 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
US17/400,131 US11960762B2 (en) | 2021-07-20 | 2021-08-12 | Method for managing memory buffer and memory control circuit unit and memory storage apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110126657A TWI766764B (zh) | 2021-07-20 | 2021-07-20 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI766764B true TWI766764B (zh) | 2022-06-01 |
TW202305598A TW202305598A (zh) | 2023-02-01 |
Family
ID=83103604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110126657A TWI766764B (zh) | 2021-07-20 | 2021-07-20 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11960762B2 (zh) |
TW (1) | TWI766764B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492663A (zh) * | 2023-12-29 | 2024-02-02 | 合肥康芯威存储技术有限公司 | 一种存储器及其数据处理方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI766764B (zh) * | 2021-07-20 | 2022-06-01 | 群聯電子股份有限公司 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1289998C (zh) * | 2003-03-07 | 2006-12-13 | 因芬尼昂技术股份公司 | 缓冲芯片及—或多存储装置之驱动方法 |
TWI539278B (zh) * | 2011-06-09 | 2016-06-21 | 半導體能源研究所股份有限公司 | 高速緩衝記憶體及其驅動方法 |
CN106997275A (zh) * | 2016-01-26 | 2017-08-01 | 南宁富桂精密工业有限公司 | 缓存管理方法及使用该方法的电子装置 |
US20170351452A1 (en) * | 2016-06-01 | 2017-12-07 | Intel Corporation | Dynamic host memory buffer allocation |
US20210011642A1 (en) * | 2019-07-08 | 2021-01-14 | SK Hynix Inc. | Memory system for determining usage of a buffer based on i/o throughput and operation method thereof |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3976842A (en) * | 1975-03-10 | 1976-08-24 | Hayward Research, Inc. | Analog rate changer |
GB9111524D0 (en) * | 1991-05-29 | 1991-07-17 | Hewlett Packard Co | Data storage method and apparatus |
US9588884B2 (en) * | 2012-06-26 | 2017-03-07 | Red Bend Ltd. | Systems and methods for in-place reorganization of device storage |
US8943270B2 (en) * | 2012-07-24 | 2015-01-27 | Hitachi, Ltd. | Storage system, storage control method and storage control program |
JP6398102B2 (ja) * | 2015-05-29 | 2018-10-03 | 東芝メモリ株式会社 | メモリシステム |
CN106681932B (zh) | 2016-11-14 | 2020-10-16 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器控制电路单元及存储器存储装置 |
KR20200113989A (ko) * | 2019-03-27 | 2020-10-07 | 에스케이하이닉스 주식회사 | 메모리 시스템의 쓰기 동작을 제어하는 방법 및 장치 |
TWI766764B (zh) * | 2021-07-20 | 2022-06-01 | 群聯電子股份有限公司 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
-
2021
- 2021-07-20 TW TW110126657A patent/TWI766764B/zh active
- 2021-08-12 US US17/400,131 patent/US11960762B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1289998C (zh) * | 2003-03-07 | 2006-12-13 | 因芬尼昂技术股份公司 | 缓冲芯片及—或多存储装置之驱动方法 |
TWI539278B (zh) * | 2011-06-09 | 2016-06-21 | 半導體能源研究所股份有限公司 | 高速緩衝記憶體及其驅動方法 |
CN106997275A (zh) * | 2016-01-26 | 2017-08-01 | 南宁富桂精密工业有限公司 | 缓存管理方法及使用该方法的电子装置 |
US20170351452A1 (en) * | 2016-06-01 | 2017-12-07 | Intel Corporation | Dynamic host memory buffer allocation |
US20210011642A1 (en) * | 2019-07-08 | 2021-01-14 | SK Hynix Inc. | Memory system for determining usage of a buffer based on i/o throughput and operation method thereof |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492663A (zh) * | 2023-12-29 | 2024-02-02 | 合肥康芯威存储技术有限公司 | 一种存储器及其数据处理方法 |
CN117492663B (zh) * | 2023-12-29 | 2024-03-26 | 合肥康芯威存储技术有限公司 | 一种存储器及其数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202305598A (zh) | 2023-02-01 |
US11960762B2 (en) | 2024-04-16 |
US20230024660A1 (en) | 2023-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491588B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN111078149A (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
TWI582776B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI571882B (zh) | 平均磨損方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI656531B (zh) | 平均磨損方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI658361B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201945927A (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
TWI766764B (zh) | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW202040370A (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN111258505B (zh) | 快闪存储器的数据合并方法、控制电路单元与存储装置 | |
CN111078146A (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
TWI664528B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
US9996415B2 (en) | Data correcting method, memory control circuit unit, and memory storage device | |
TWI635495B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201913384A (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN113504880B (zh) | 存储器缓冲区管理方法、存储器控制电路单元与存储装置 | |
TWI597731B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI596477B (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 | |
US10884660B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
TW202131319A (zh) | 快閃記憶體之資料整理方法、控制電路單元與儲存裝置 | |
CN114115739B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN111240602B (zh) | 闪存的数据整理方法、控制电路单元与存储装置 | |
US11409596B1 (en) | Encoding control method, memory storage device and memory control circuit unit | |
CN112445416B (zh) | 冷区域判断方法、存储器控制电路单元与存储器存储装置 | |
US20240152296A1 (en) | Data reading method, memory storage device, and memory control circuit unit |