TWI527058B - 記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 - Google Patents
記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 Download PDFInfo
- Publication number
- TWI527058B TWI527058B TW102139739A TW102139739A TWI527058B TW I527058 B TWI527058 B TW I527058B TW 102139739 A TW102139739 A TW 102139739A TW 102139739 A TW102139739 A TW 102139739A TW I527058 B TWI527058 B TW I527058B
- Authority
- TW
- Taiwan
- Prior art keywords
- clock signal
- data
- rewritable non
- memory module
- error
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種記憶體控制方法,且特別是有關於可複寫式非揮發性記憶體模組的記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元。
數位相機、行動電話與MP3播放器在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體模組(例如,快閃記憶體)具有資料非揮發性、省電、體積小,以及無機械結構等特性,所以非常適合內建於上述所舉例的各種可攜式多媒體裝置中。
一般來說,可複寫式非揮發性記憶體模組是由一個記憶體控制電路單元來控制。此記憶體控制電路單元會提供時脈訊號給可複寫式非揮發性記憶體模組,藉此可複寫式非揮發性記憶體模組會根據此時脈訊號來運作。若時脈訊號的頻率越高,則可複寫式非揮發性記憶體模組運作的速度會越快,但進行一些操作(例
如,寫入)時發生錯誤的機率也會提升,因而可能產生不可回復的錯誤。然而,若時脈訊號的頻率越低,則可複寫式非揮發性記憶體模組執行這些操作的速度會降低。因此,如何在提升速度的情況下,又降低一些操作發生錯誤的機率,為此領域技術人員所關心的議題。
本發明提供一種記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元,可以提升可複寫式非揮發性記憶體模組的操作速度,且可降低一些操作發生錯誤的機率。
本發明一範例實施例提出一種記憶體控制方法,用於一可複寫式非揮發性記憶體模組。此方法包括:提供第一時脈訊號給可複寫式非揮發性記憶體模組,並根據第一時脈訊號讀取可複寫式非揮發性記憶體模組中的第一資料;提供第二時脈訊號給可複寫式非揮發性記憶體模組,並根據第二時脈訊號將第二資料寫入至可複寫式非揮發性記憶體模組中。其中第二時脈訊號的頻率不同於第一時脈訊號的頻率。
在一範例實施例中,上述第二時脈訊號的頻率小於第一時脈訊號的頻率。
在一範例實施例中,上述的記憶體控制方法更包括:接收來自主機系統的第一指令;若第一指令為讀取指令,執行所述提供第一時脈訊號的步驟;以及若第一指令為寫入指令,執行所
述提供第二時脈訊號的步驟。
在一範例實施例中,上述的可複寫式非揮發性記憶體模組包括多個實體抹除單元。這些實體抹除單元至少被分為資料區與系統區,上述的第一資料是儲存於資料區。此記憶體控制方法更包括:提供第二時脈訊號給可複寫式非揮發性記憶體模組,並根據第二時脈訊號讀取系統區中的第三資料。
在一範例實施例中,上述的記憶體控制方法更包括:根據一錯誤更正碼或一錯誤檢查碼判斷第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合臨界條件;若第一資料有錯誤且讀取錯誤次數不符合臨界條件,根據第一時脈訊號重新讀取第一資料並且更新讀取錯誤次數;若第一資料有錯誤且讀取錯誤次數符合臨界條件,提供第二時脈訊號給可複寫式非揮發性記憶體模組,並且根據第二時脈訊號讀取第一資料。
在一範例實施例中,上述根據錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤的步驟包括:根據錯誤更正碼判斷第一資料是否有錯誤;以及若根據錯誤更正碼判斷第一資料沒有錯誤,根據錯誤檢查碼來判斷第一資料是否有錯誤。
在一範例實施例中,上述可複寫式非揮發性記憶體模組是耦接至多個通道。上述的記憶體控制方法更包括:對於每一個通道,記錄對應的讀取錯誤次數。
本發明一範例實施例提出一種記憶體儲存裝置,包括連接介面單元、上述的可複寫式非揮發性記憶體模組、與記憶體控
制電路單元。連接介面單元是用以耦接至主機系統。記憶體控制電路單元是耦接至連接介面單元與可複寫式非揮發性記憶體模組,用以提供第一時脈訊號給可複寫式非揮發性記憶體模組,並根據第一時脈訊號讀取可複寫式非揮發性記憶體模組中的第一資料。記憶體控制電路單元也用以提供第二時脈訊號給可複寫式非揮發性記憶體模組,並根據第二時脈訊號將第二資料寫入至可複寫式非揮發性記憶體模組中。第二時脈訊號的頻率不同於第一時脈訊號的頻率。
在一範例實施例中,上述的記憶體控制電路單元更用以接收來自主機系統的第一指令。若第一指令為讀取指令,記憶體控制電路單元用以提供第一時脈訊號。若第一指令為寫入指令,記憶體控制電路單元用以提供第二時脈訊號。
在一範例實施例中,上述的實體抹除單元至少被分為資料區與系統區,並且第一資料是儲存於資料區。記憶體控制電路單元更用以提供第二時脈訊號給可複寫式非揮發性記憶體模組,並根據第二時脈訊號讀取系統區中的第三資料。
在一範例實施例中,上述的記憶體控制電路單元更用以根據錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合臨界條件。若第一資料有錯誤且讀取錯誤次數不符合臨界條件,記憶體控制電路單元用以根據第一時脈訊號重新讀取第一資料並且更新讀取錯誤次數。若第一資料有錯誤且讀取錯誤次數符合臨界條件,記憶體控制電路單元用以提
供第二時脈訊號給可複寫式非揮發性記憶體模組,並且根據第二時脈訊號讀取第一資料。
在一範例實施例中,上述記憶體控制電路單元根據錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤的操作包括以下操作。記憶體控制電路單元根據錯誤更正碼判斷第一資料是否有錯誤。若根據錯誤更正碼判斷第一資料沒有錯誤,記憶體控制電路單元根據錯誤檢查碼來判斷第一資料是否有錯誤。
在一範例實施例中,上述的可複寫式非揮發性記憶體模組是透過多個通道耦接至記憶體控制電路單元。記憶體控制電路單元更用以對於每一個通道,記錄對應的讀取錯誤次數。
本發明一範例實施例提出一種記憶體控制電路單元,用於控制上述的可複寫式非揮發性記憶體模組。此記憶體控制電路單元包括主機介面、記憶體介面、記憶體管理電路與時脈產生電路。主機介面是用以耦接至主機系統。記憶體介面是用以耦接至可複寫式非揮發性記憶體模組。記憶體管理電路是耦接至主機介面與記憶體介面。時脈產生電路是用以提供第一時脈訊號或第二時脈訊號給可複寫式非揮發性記憶體模組。記憶體管理電路用以根據第一時脈訊號讀取可複寫式非揮發性記憶體模組中的第一資料。記憶體管理電路也用以根據第二時脈訊號將第二資料寫入至可複寫式非揮發性記憶體模組中。其中第二時脈訊號的頻率不同於第一時脈訊號的頻率。
在一範例實施例中,上述的記憶體管理電路更用以接收
來自主機系統的第一指令。若第一指令為讀取指令,時脈產生電路用以提供第一時脈訊號。若第一指令為寫入指令,時脈產生電路用以提供第二時脈訊號。
在一範例實施例中,上述的實體抹除單元至少被分為資料區與系統區,並且第一資料是儲存於資料區。記憶體管理電路更用以根據第二時脈訊號讀取系統區中的第三資料。
在一範例實施例中,上述的記憶體管理電路更用以根據錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合臨界條件。若第一資料有錯誤且讀取錯誤次數不符合臨界條件,記憶體管理電路用以根據第一時脈訊號重新讀取第一資料並且更新讀取錯誤次數。若第一資料有錯誤且讀取錯誤次數符合臨界條件,記憶體管理電路用以根據第二時脈訊號讀取第一資料。
在一範例實施例中,上述的記憶體管理電路根據錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤的操作包括以下操作。記憶體管理電路根據錯誤更正碼判斷第一資料是否有錯誤。若根據錯誤更正碼判斷第一資料沒有錯誤,記憶體管理電路根據錯誤檢查碼來判斷第一資料是否有錯誤。
在一範例實施例中,上述的可複寫式非揮發性記憶體模組是透過多個通道耦接至記憶體控制電路單元。記憶體管理電路更用以對於每一個通道,記錄對應的讀取錯誤次數。
本發明一範例實施例提出一種記憶體控制方法,用於可
複寫式非揮發性記憶體模組。可複寫式非揮發性記憶體模組中的實體程式化單元被分為資料區、閒置區與系統區。此記憶體控制方法包括:提供第一時脈訊號給可複寫式非揮發性記憶體模組,並應用第一時脈訊號對可複寫式非揮發性記憶體模組之資料區或閒置區執行第一操作。提供第二時脈訊號給可複寫式非揮發性記憶體模組,並應用第二時脈訊號對可複寫式非揮發性記憶體模組之資料區或閒置區執行第二操作。其中第一時脈訊號的頻率不同於第二時脈訊號的頻率。
在一範例實施例中,上述第二時脈訊號的頻率小於第一時脈訊號的頻率,第一操作為讀取操作,並且第二操作為寫入操作。
在一範例實施例中,上述第二時脈訊號的頻率小於第一時脈訊號的頻率,第一操作是用以讀取使用者資料,第二操作是用以讀取實體位址映射表。
在一範例實施例中,上述第二時脈訊號的頻率小於第一時脈訊號的頻率,第一操作是用以讀取第一資料,並且第二操作是用以在第一資料有錯誤時重讀第一資料。
在一範例實施例中,可複寫式非揮發性記憶體模組的系統資料非儲存於資料區或閒置區,且系統區中的實體程式化單元無映射至記憶體儲存裝置的實體位址映射表中的邏輯位址。
本發明一範例實施例提出一種記憶體儲存裝置,包括連接介面單元、上述的可複寫式非揮發性記憶體模組與記憶體控制
電路單元。連接介面單元是用以耦接至主機系統。記憶體控制電路單元是耦接至連接介面單元與可複寫式非揮發性記憶體模組,用以提供第一時脈訊號給可複寫式非揮發性記憶體模組,並應用第一時脈訊號對可複寫式非揮發性記憶體模組之資料區或閒置區執行第一操作。記憶體控制電路單元也用以提供第二時脈訊號給可複寫式非揮發性記憶體模組,並應用第二時脈訊號對可複寫式非揮發性記憶體模組之資料區或閒置區執行第二操作。其中第一時脈訊號的頻率不同於第二時脈訊號的頻率。
基於上述,本發明範例實施例提出的記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元,可以提供不同頻率的時脈訊號給可複寫式非揮發性記憶體模組。藉此,在一些情況下可以提升可複寫式非揮發性記憶體模組的操作速度,而在另一些情況下可以降低操作發生錯誤的機率。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
1000‧‧‧主機系統
1100‧‧‧電腦
1102‧‧‧微處理器
1104‧‧‧隨機存取記憶體
1106‧‧‧輸入/輸出裝置
1108‧‧‧系統匯流排
1110‧‧‧資料傳輸介面
1202‧‧‧滑鼠
1204‧‧‧鍵盤
1206‧‧‧顯示器
1208‧‧‧印表機
1212‧‧‧隨身碟
1214‧‧‧記憶卡
1216‧‧‧固態硬碟
1310‧‧‧數位相機
1312‧‧‧SD卡
1314‧‧‧MMC卡
1316‧‧‧記憶棒
1318‧‧‧CF卡
1320‧‧‧嵌入式儲存裝置
100‧‧‧記憶體儲存裝置
102‧‧‧連接介面單元
104‧‧‧記憶體控制電路單元
106‧‧‧可複寫式非揮發性記憶體模組
304(0)~304(R)‧‧‧實體抹除單元
202‧‧‧記憶體管理電路
204‧‧‧主機介面
206‧‧‧記憶體介面
252‧‧‧緩衝記憶體
254‧‧‧電源管理電路
256‧‧‧錯誤檢查與校正電路
258‧‧‧時脈產生電路
402‧‧‧資料區
404‧‧‧閒置區
406‧‧‧系統區
410(0)~410(D)‧‧‧邏輯位址
S501~S505‧‧‧步驟
圖1A是根據一範例實施例所繪示的主機系統與記憶體儲存裝置。
圖1B是根據一範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖1C是根據一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
圖3是根據一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
圖4是根據一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的範例示意圖。
圖5是根據一範例實施例繪示判斷使用第一時脈訊號或第二時脈訊號的流程圖。
[第一範例實施例]
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1A是根據一範例實施例所繪示的主機系統與記憶體儲存裝置。圖1B是根據一範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。圖1C是根據一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
請參照圖1A,主機系統1000一般包括電腦1100與輸入/輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、
隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108與資料傳輸介面1110。輸入/輸出裝置1106包括如圖1B的滑鼠1202、鍵盤1204、顯示器1206與印表機1208。必須瞭解的是,圖1B所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明實施例中,記憶體儲存裝置100是透過資料傳輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104與輸入/輸出裝置1106的運作可將資料寫入至記憶體儲存裝置100或從記憶體儲存裝置100中讀取資料。例如,記憶體儲存裝置100可以是如圖1B所示的隨身碟1212、記憶卡1214或固態硬碟(Solid State Drive,SSD)1216等的可複寫式非揮發性記憶體儲存裝置。
一般而言,主機系統1000為可實質地與記憶體儲存裝置100配合以儲存資料的任意系統。雖然在本範例實施例中,主機系統1000是以電腦系統來作說明,然而,在本發明另一範例實施例中主機系統1000可以是數位相機、攝影機、通信裝置、音訊播放器或視訊播放器等系統。例如,在主機系統為數位相機(攝影機)1310時,可複寫式非揮發性記憶體儲存裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memory stick)1316、CF卡1318或嵌入式儲存裝置1320(如圖1C所示)。嵌入式儲存裝置1320包括嵌入式多媒體卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接耦接於主機系統的基板上。
圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
請參照圖2,記憶體儲存裝置100包括連接介面單元102、記憶體控制電路單元104與可複寫式非揮發性記憶體模組106。
在本範例實施例中,連接介面單元102是相容於序列先進附件(Serial Advanced Technology Attachment,SATA)標準。然而,必須瞭解的是,本發明不限於此,連接介面單元102亦可以是符合並列先進附件(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 Media Card,MMC)介面標準、崁入式多媒體儲存卡(Embedded Multimedia Card,eMMC)介面標準、通用快閃記憶體(Universal Flash Storage,UFS)介面標準、小型快閃(Compact Flash,CF)介面標準、整合式驅動電子介面(Integrated Device Electronics,IDE)標準或其他適合的標準。連接介面單元102可與記憶體控制電路單元104封裝在一個晶片中,或者連接介面單元102是佈設於一包含記憶體控制電路單元104之晶片外。
記憶體控制電路單元104用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在可複寫式非揮發性記憶體模組106中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體模組106是耦接至記憶體控制電路單元104,並且用以儲存主機系統1000所寫入之資料。可複寫式非揮發性記憶體模組106具有實體抹除單元304(0)~304(R)。例如,實體抹除單元304(0)~304(R)可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。每一實體抹除單元分別具有複數個實體程式化單元,並且屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。例如,每一實體抹除單元是由128個實體程式化單元所組成。然而,必須瞭解的是,本發明不限於此,每一實體抹除單元是可由64個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
更具體來說,每一個實體抹除單元包括多條字元線與多條位元線,每一條字元線與每一位元線交叉處配置有一個記憶胞。每一個記憶胞可儲存一或多個位元。在同一個實體抹除單元中,所有的記憶胞會一起被抹除。在此範例實施例中,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。例如,實體抹除單元為實體區塊。另一方面,同一個字元線上的記憶胞會組成一或多個實體程式化單元。若每一個記憶胞可儲存2個以上的位元,則同一個字元線上
的實體程式化單元可被分類為下實體程式化單元與上實體程式化單元。一般來說,下實體程式化單元的寫入速度會大於上實體程式化單元的寫入速度。在此範例實施例中,實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。
例如,實體程式化單元為實體頁面或是實體扇(sector)。若實體程式化單元為實體頁面,則每一個實體程式化單元通常包括資料位元區與冗餘位元區。資料位元區包含多個實體扇,用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,錯誤更正碼)。在本範例實施例中,每一個資料位元區包含32個實體扇,且一個實體扇的大小為512位元組(byte,B)。然而,在其他範例實施例中,資料位元區中也可包含8個、16個或數目更多或更少的實體扇,本發明並不限制實體扇的大小以及個數。
在本範例實施例中,可複寫式非揮發性記憶體模組106為多階記憶胞(Multi Level Cell,MLC)NAND型快閃記憶體模組,即一個記憶胞中可儲存至少2個位元。然而,本發明不限於此,可複寫式非揮發性記憶體模組106亦可是單階記憶胞(Single Level Cell,SLC)NAND型快閃記憶體模組、複數階記憶胞(Trinary Level Cell,TLC)NAND型快閃記憶體模組、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
在此範例實施例中,記憶體控制電路單元104是透過多個通道(channel)耦接至可複寫式非揮發性記憶體模組106。每一個通道是耦接至部分的實體抹除單元304(0)~304(R)。這些通道上的
操作是彼此獨立的。舉例來說,記憶體控制電路單元104在一個通道上執行寫入操作時,可以同時在另一個通道上執行讀取操作。然而,本發明並不限制通道的個數,也不限制每一個通道是耦接至哪些實體抹除單元。在另一範例實施例中,記憶體控制電路單元104與可複寫式非揮發性記憶體模組106之間只有一個通道,本發明並不在此限。
圖3是根據一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
請參照圖3,記憶體控制電路單元104包括記憶體管理電路202、主機介面204與記憶體介面206。
記憶體管理電路202用以控制記憶體控制電路單元104的整體運作。具體來說,記憶體管理電路202具有多個控制指令,並且在記憶體儲存裝置100運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路202的操作時,等同於說明記憶體控制電路單元104的操作,以下並不再贅述。
在本範例實施例中,記憶體管理電路202的控制指令是以韌體型式來實作。例如,記憶體管理電路202具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在本發明另一範例實施例中,記憶體管理電路202的控
制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組106的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路202具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當記憶體控制電路單元104被致能時,微處理器單元會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組106中之控制指令載入至記憶體管理電路202的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路202包括微控制器、記憶體管理單元、記憶體寫入單元、記憶體讀取單元、記憶體抹除單元與資料處理單元。記憶體管理單元、記憶體寫入單元、記憶體讀取單元、記憶體抹除單元與資料處理單元是耦接至微控制器。其中,記憶體管理單元用以管理可複寫式非揮發性記憶體模組106的實體抹除單元;記憶體寫入單元用以對可複寫式非揮發性記憶體模組106下達寫入指令以將資料寫入至可複寫式非揮發性記憶體模組106中;記憶體讀取單元用以對可複寫式非揮發性記憶體模組106下達讀取指令以從可複寫式非揮發性記憶體模組106中讀取資料;記憶體抹除單元用以對可複寫式非揮發性記憶體模組106下達抹除指令以將資料從可複寫式非揮發性記憶體模組106中抹除;而資料處理單元用以處理欲寫入
至可複寫式非揮發性記憶體模組106的資料以及從可複寫式非揮發性記憶體模組106中讀取的資料。
主機介面204是耦接至記憶體管理電路202並且用以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面204來傳送至記憶體管理電路202。在本範例實施例中,主機介面204是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面204亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、UHS-I標準、UHS-II標準、MS標準、MMC標準、eMMC標準、UFS標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面206是耦接至記憶體管理電路202並且用以存取可複寫式非揮發性記憶體模組106。也就是說,欲寫入至可複寫式非揮發性記憶體模組106的資料會經由記憶體介面206轉換為可複寫式非揮發性記憶體模組106所能接受的格式。
在本發明一範例實施例中,記憶體控制電路單元104還包括緩衝記憶體252、電源管理電路254、錯誤檢查與校正電路256與時脈產生電路258。
緩衝記憶體252是耦接至記憶體管理電路202並且用以暫存來自於主機系統1000的資料與指令或來自於可複寫式非揮發性記憶體模組106的資料。
電源管理電路254是耦接至記憶體管理電路202並且用
以控制記憶體儲存裝置100的電源。
錯誤檢查與校正電路256是耦接至記憶體管理電路202並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路202從主機系統1000中接收到寫入指令時,錯誤檢查與校正電路256會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code,ECC),並且記憶體管理電路202會將對應此寫入指令的資料與對應的錯誤更正碼寫入至可複寫式非揮發性記憶體模組106中。之後,當記憶體管理電路202從可複寫式非揮發性記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤更正碼,並且錯誤檢查與校正電路256會依據此錯誤更正碼對所讀取的資料執行錯誤檢查與校正程序。
時脈產生電路258是用以產生時脈訊號以讓記憶體管理電路202來存取可複寫式非揮發性記憶體模組106。具體來說,時脈產生電路258所產生的時脈訊號會提供給可複寫式非揮發性記憶體模組106,並且可複寫式非揮發性記憶體模組106會根據此時脈訊號來執行讀取、寫入或是其他操作。當所提供的時脈訊號的頻率越大時,可複寫式非揮發性記憶體模組106的運作速度也會越快。在一範例實施例中,時脈產生電路258所產生的時脈訊號也可以提供給記憶體控制電路單元104中的其他電路,藉此這些電路也是根據所提供的時脈訊號來運作。在此範例實施例中,時脈產生電路258可提供兩個以上不同頻率的時脈訊號。例如,時脈產生電路258中包括了一或多個振盪器,而這些振盪器可以是
哈特利(Hartley)振盪器、柯比茲(Colpitts)振盪器、克拉普(Clapp)振盪器、相移(phase-shift)振盪器、RC振盪器、LC振盪器或其他種類的振盪器,本發明並不在此限。
圖4是根據一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的範例示意圖。
必須瞭解的是,在此描述可複寫式非揮發性記憶體模組106之實體抹除單元的運作時,以“提取”、“劃分”、“關聯”等詞來操作實體抹除單元是邏輯上的概念。也就是說,可複寫式非揮發性記憶體模組之實體抹除單元的實際位置並未更動,而是邏輯上對可複寫式非揮發性記憶體模組的實體抹除單元進行操作。
請參照圖4,記憶體管理電路202可將可複寫式非揮發性記憶體模組的實體抹除單元304(0)~304(R)邏輯地劃分為多個區域,例如為資料區402、閒置區404與系統區406。亦即,實體抹除單元304(0)~304(R)中的實體程式化單元也被分為資料區402、閒置區404與系統區406。
資料區402的實體抹除單元是用以儲存來自主機系統1000的資料。閒置區404的實體抹除單元是用以作為資料區402的暫存區。舉例來說,若主機系統1000要更新資料區402中的資料,則此資料會先被寫入至閒置區404中,之後這些資料會被搬移至資料區402中或與資料區402中的資料合併。或者,閒置區404的實體抹除單元也可用來替換資料區402與系統區406的實體抹除單元。也就是說,當資料區402與系統區406中的實體抹除
單元損毀(即,成為壞實體抹除單元(bad physical erasing unit))時,閒置區404的實體抹除單元可用來替換此壞實體抹除單元。倘若閒置區404中無正常之實體抹除單元且有實體抹除單元損毀時,則記憶體控制器104會將整個記憶體儲存裝置100宣告為寫入保護(write protect)狀態,而無法再寫入資料。在另一範例實施例中,記憶體管理電路202可再劃分出一個取代區,專門存放用來替換壞實體抹除單元的實體抹除單元,本發明並不在此限。
系統區406的實體抹除單元是用以記錄系統資料,其中此系統資料包括可複寫式非揮發性記憶體模組106的識別碼,關於記憶體晶片的製造商與型號、記憶體晶片的容量(實體抹除單元數)、製造商資訊、每一實體抹除單元的實體程式化單元數、或記憶體儲存裝置100在連接上主機系統1000時提供主機系統1000用以辨視記憶體儲存裝置100之身份與規格的相關資訊等。值得注意的是,這些系統資料不會儲存在資料區402或閒置區404。
資料區402、閒置區404與系統區406的實體抹除單元的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在記憶體儲存裝置100的運作中,實體抹除單元關聯至資料區402、閒置區404與系統區406的分組關係會動態地變動。例如,當資料區402中的實體抹除單元損壞而被閒置區404的實體抹除單元取代時,則原本閒置區404的實體抹除單元會被關聯至資料區402。
記憶體管理電路202會配置邏輯位址410(0)~410(D)以映
射至資料區402中的實體抹除單元304(0)~304(A)。主機系統1000是透過邏輯位址410(0)~410(D)來存取資料區402中的資料。在此範例實施例中,一個邏輯位址是映射至一個實體儲存單元(一個實體儲存單元代表一個實體位址,例如實體扇),多個邏輯位址會組成一個邏輯程式化單元,並且多個邏輯程式化單元會組成一個邏輯抹除單元。一個邏輯程式化單元是映射至一或多個實體程式化單元,而一個邏輯抹除單元是映射至一或多個實體抹除單元。
在此範例實施例中,記憶體管理電路202是以邏輯抹除單元來管理可複寫式非揮發性記憶體模組106,因此記憶體管理電路202會建立一個實體位址映射表以記錄邏輯抹除單元與實體抹除單元之間的映射關係。在另一範例實施例中,記憶體管理電路202是以邏輯程式化單元來管理可複寫式非揮發性記憶體模組106,因此記憶體管理電路202會建立一個實體位址映射表以記錄邏輯程式化單元與實體程式化單元之間的映射關係。上述的實體位址映射表可以儲存在系統區406之中或是之外,本發明並不在此限。
邏輯位址410(0)~410(D)可能會映射至資料區402或是閒置區404中的實體儲存單元,但不會映射至系統區406中的實體儲存單元。以另外一個角度來說,在本範例實施例中,系統區406中的實體程式化單元不會映射至主機系統1000傳送的一寫入指令中的邏輯位址,亦即系統區406中的實體程式化單元不會映射至記憶體儲存裝置100所提供給主機系統1000使用的邏輯位址
410(0)~410(D),邏輯位址410(0)~410(D)可為記憶體儲存裝置100中的實體位址映射表中之邏輯位址。
當主機系統1000要存取可複寫式非揮發性記憶體模組106中的資料時,主機系統1000可下達讀取指令或是寫入指令給記憶體控制電路單元104。記憶體控制電路單元104會根據此讀取指令從可複寫式非揮發性記憶體模組106中讀取資料或者是把資料寫入至可複寫式非揮發性記憶體模組106中。此外,在主機系統1000沒有下達指令的情況下,記憶體控制電路單元104也可存取可複寫式非揮發性記憶體模組106,例如執行垃圾收集(garbage collection)、或是存取系統區406中的資料。特別的是,在不同的情況下,記憶體控制電路單元104會提供不同頻率的時脈訊號給可複寫式非揮發性記憶體模組106。
舉例來說,當記憶體管理電路202要讀取可複寫式非揮發性記憶體模組106時,時脈產生電路258會提供第一時脈訊號給可複寫式非揮發性記憶體模組106與記憶體管理電路202,並且記憶體管理電路202會根據第一時脈訊號讀取可複寫式非揮發性記憶體模組106中的第一資料。當記憶體管理電路202要把一第二資料寫入可複寫式非揮發性記憶體模組106時,時脈產生電路258會提供第二時脈訊號給可複寫式非揮發性記憶體模組106與記憶體管理電路202,並且記憶體管理電路202會根據第二時脈訊號將第二資料寫入至可複寫式非揮發性記憶體模組106中。其中第二時脈訊號的頻率不同於第一時脈訊號的頻率。例如,第二時
脈訊號的頻率是小於第一時脈訊號的頻率。因此,在讀取第一資料時,可複寫式非揮發性記憶體模組106是操作在較高的頻率,藉此可以增加讀取速度。另一方面,在寫入第二資料時,可複寫式非揮發性記憶體模組106是操作在較低的頻率,藉此可以降低在寫入的過程中第二資料發生錯誤的機率。然而,在另一範例實施例中,第二時脈訊號的頻率也可是大於第一時脈訊號的頻率,本發明並不在此限。
在一範例實施例中,上述的讀取或寫入操作是由主機系統1000所指示。具體來說,記憶體管理電路202會接收來自主機系統1000的一第一指令。記憶體管理電路202會判斷此第一指令的類別。若第一指令為讀取指令,則時脈產生電路258會提供第一時脈訊號,並且記憶體管理電路202會根據第一時脈訊號讀取第一資料。若第一指令為寫入指令,則時脈產生電路258會提供第二時脈訊號,並且記憶體管理電路202會根據第二時脈訊號將第二資料寫入至可複寫式非揮發性記憶體模組106。然而,在另一範例實施例中,上述的讀取或寫入操作並不是由主機系統1000所指示。例如,在執行垃圾收集時(並不是由主機系統1000所指示),記憶體管理電路202也會讀取或寫入若干資料。本發明並不限制上述讀取或寫入操作是否由主機系統1000所指示,也不限制第一資料與第二資料的來源與內容。
在一範例實施例中,要讀取重要的資料時,會使用頻率較低的第二時脈訊號;而讀取相對較不重要的資料時,會使用頻
率較高的第一時脈訊號。舉例來說,儲存在系統區406的資料是相對地比儲存在資料區402中的資料重要。在一範例實施例中,上述的第一資料可儲存在資料區402,而記憶體管理電路202要讀取資料區402中的第一資料時,記憶體管理電路202會使用頻率較高的第一時脈訊號來讀取資料。然而,當記憶體管理電路202要讀取儲存在系統區406中的一第三資料(例如,實體位址映射表)時,時脈產生電路258會提供第二時脈訊號給可複寫式非揮發性記憶體模組106,並且記憶體管理電路202會根據第二時脈訊號讀取系統區406中的第三資料。藉此,可以降低讀取重要資料時發生錯誤的機率。
在一範例實施例中,在發生讀取錯誤時,記憶體管理電路202會重複執行讀取的操作。在使用頻率較高的第一時脈訊號來讀取第一資料時,記憶體管理電路202還會計算一個讀取錯誤次數,並且根據此讀取錯誤次數判斷是否要改用頻率較低的第二時脈訊號來讀取第一資料。具體來說,在第一資料被寫入至可複寫式非揮發性記憶體模組106時,錯誤檢查與校正電路256會產生對應的錯誤更正碼或錯誤檢查碼(error detection code,EDC)。這些錯誤更正碼或是錯誤檢查碼可以是漢明碼(hamming code)、低密度奇偶檢查碼(low density parity check code,LDPC code)、渦旋碼(turbo code)或里德-所羅門碼(Reed-solomon code,RS code)、BCH碼、或是使用其他演算法的碼,本發明並不在此限。記憶體管理電路202會將對應的錯誤更正碼或錯誤檢查碼寫入至可複寫
式非揮發性記憶體模組106中。當讀取第一資料時,記憶體管理電路202也會一併讀取對應的錯誤更正碼或錯誤檢查碼。錯誤檢查與校正電路256會根據此錯誤更正碼或錯誤檢查碼判斷第一資料是否有錯誤。例如,錯誤檢查與校正電路256會先根據錯誤更正碼判斷第一資料是否有錯誤。若根據錯誤更正碼判斷第一資料沒有錯誤,錯誤檢查與校正電路256還會根據錯誤檢查碼來判斷第一資料是否有錯誤。若第一資料有錯誤,記憶體管理電路202會判斷讀取錯誤次數是否符合一個臨界條件(例如,大於一個臨界值)。若第一資料有錯誤且讀取錯誤次數不符合該臨界條件(例如,小於臨界值),記憶體管理電路202會根據第一時脈訊號重新讀取第一資料並且更新讀取錯誤次數(例如,加上1)。亦即,讀取錯誤次數也可以表示重覆讀取第一資料的次數。若第一資料有錯誤且讀取錯誤次數符合臨界條件,時脈產生電路258會提供頻率較低的第二時脈訊號給可複寫式非揮發性記憶體模組106,並且記憶體管理電路202會根據第二時脈訊號讀取第一資料,藉此降低讀取錯誤的機率。
在一範例實施例中,對於每一個耦接在可複寫式非揮發性記憶體模組106與記憶體控制電路單元104之間的通道,記憶體管理電路都會記錄對應的讀取錯誤次數。因此,讀取錯誤次數也可以表示對應的通道是否容易發生讀取錯誤。在容易發生讀取錯誤的通道上,記憶體控制電路單元104可使用頻率較低的第二時脈訊號來讀取資料,同時在其他通道上可能會使用頻率較高的
第一時脈訊號來讀取資料。
上述判斷使用第一時脈訊號或第二時脈訊號的步驟也可以任意地結合。例如,圖5是根據一範例實施例繪示判斷使用第一時脈訊號或第二時脈訊號的流程圖。請參照圖5,在步驟S501中,判斷讀取錯誤次數是否符合臨界條件。若讀取錯誤次數符合臨界條件,進行步驟S505。若讀取錯誤次數不符合臨界條件,在步驟S502中,判斷要存取的資料是否在系統區406。若要存取的資料是在系統區406,進行步驟S505。若要存取的資料不在系統區406,在步驟S503中,判斷所要執行的是否為寫入操作。若所要執行的是寫入操作,進行步驟S505。若所要執行的不是寫入操作,進行步驟S504,提供頻率較低的時脈訊號給可複寫式非揮發性記憶體模組106。在步驟S505中,提供頻率較高的時脈訊號給可複寫式非揮發性記憶體模組106。然而,本發明並不限制如何結合步驟S501~503。
[第二範例實施例]
在此僅說明第二範例實施例與第一範例實施例不同之處。請參照回圖4,在第二範例實施例中,時脈產生電路258會提供第一時脈訊號或是第二時脈訊號給可複寫式非揮發性記憶體模組106。然而,記憶體管理電路202會應用第一時脈訊號對資料區402或是閒置區404執行第一操作,並且會應用第二時脈訊號對資料區402或是閒置區404執行第二操作。第一操作與第二操作可以相同或是不相同。此外,第一操作與第二操作可以是根據主機系
統1000所下達的指令所執行,也可以是記憶體管理電路202本身所執行,本發明並不在此限。然而,第一時脈訊號的頻率不同於第二時脈訊號的頻率。舉例來說,第二時脈訊號的頻率小於該第一時脈訊號的頻率。
在一範例實施例中,第一操作為讀取操作,並且第二操作為寫入操作。在另一範例實施例中,上述的實體位址映射表是儲存在閒置區404中的實體抹除單元,第一操作是用以讀取資料區402或是閒置區404中的使用者資料,而第二操作是用以讀取閒置區404中的實體位址映射表。
在一範例實施例中,第一操作是用以讀取資料區402或是閒置區404中的第一資料,而第二操作是用以在第一資料有錯誤時重讀第一資料。具體來說,在應用第一時脈訊號讀取第一資料以後,記憶體管理電路202會根據錯誤更正碼或是錯誤檢查碼來判斷第一資料是否有錯誤。若根據錯誤更正碼或是錯誤檢查碼判斷第一資料有錯誤,則記憶體管理電路會執行第二操作,以應用第二時脈訊號來重新讀取第一資料。
綜上所述,本發明範例實施例提出的記憶體控制方法,記憶體儲存裝置與記憶體控制電路單元,可以依照不同的情況提供不同頻率的時脈訊號給可複寫式非揮發性記憶體模組。藉此,可以提升可複寫式非揮發性記憶體模組運作的速度,或者是降低一些操作發生錯誤的機率。
雖然本發明已以實施例揭露如上,然其並非用以限定本
發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S501~S505‧‧‧步驟
Claims (31)
- 一種記憶體控制方法,用於一可複寫式非揮發性記憶體模組,包括:提供一第一時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第一時脈訊號讀取該可複寫式非揮發性記憶體模組中的一第一資料;以及提供一第二時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第二時脈訊號將一第二資料寫入至該可複寫式非揮發性記憶體模組中,其中該第二時脈訊號的一頻率不同於該第一時脈訊號的一頻率。
- 如申請專利範圍第1項所述的記憶體控制方法,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率。
- 如申請專利範圍第1項所述的記憶體控制方法,更包括:接收來自一主機系統的一第一指令;若該第一指令為一讀取指令,執行所述提供該第一時脈訊號的步驟;以及若該第一指令為一寫入指令,執行所述提供該第二時脈訊號的步驟。
- 如申請專利範圍第1項所述的記憶體控制方法,其中該可複寫式非揮發性記憶體模組包括多個實體抹除單元,該些實體抹除單元至少被分為一資料區與一系統區,該第一資料是儲存於該資料區,該記憶體控制方法更包括: 提供該第二時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第二時脈訊號讀取該系統區中的一第三資料。
- 如申請專利範圍第1項所述的記憶體控制方法,更包括:根據一錯誤更正碼或一錯誤檢查碼判斷該第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合一臨界條件;若該第一資料有錯誤且該讀取錯誤次數不符合該臨界條件,根據該第一時脈訊號重新讀取該第一資料並且更新該讀取錯誤次數;若該第一資料有錯誤且該讀取錯誤次數符合該臨界條件,提供該第二時脈訊號給該可複寫式非揮發性記憶體模組,並且根據該第二時脈訊號讀取該第一資料。
- 如申請專利範圍第5項所述的記憶體控制方法,其中根據該錯誤更正碼或該錯誤檢查碼判斷該第一資料是否有錯誤的步驟包括:根據該錯誤更正碼判斷該第一資料是否有錯誤;以及若根據該錯誤更正碼判斷該第一資料沒有錯誤,根據該錯誤檢查碼來判斷該第一資料是否有錯誤。
- 如申請專利範圍第5項所述的記憶體控制方法,其中該可複寫式非揮發性記憶體模組是耦接至多個通道,該記憶體控制方法更包括:對於每一該些通道,記錄對應的該讀取錯誤次數。
- 一種記憶體儲存裝置,包括: 一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,包括多個實體抹除單元;以及一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組,用以提供一第一時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第一時脈訊號讀取該可複寫式非揮發性記憶體模組中的一第一資料,其中,該記憶體控制電路單元用以提供一第二時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第二時脈訊號將一第二資料寫入至該可複寫式非揮發性記憶體模組中,其中該第二時脈訊號的一頻率不同於該第一時脈訊號的一頻率。
- 如申請專利範圍第8項所述的記憶體儲存裝置,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率。
- 如申請專利範圍第8項所述的記憶體儲存裝置,該記憶體控制電路單元更用以接收來自該主機系統的一第一指令,其中,若該第一指令為一讀取指令,該記憶體控制電路單元用以提供該第一時脈訊號;以及其中,若該第一指令為一寫入指令,該記憶體控制電路單元用以提供該第二時脈訊號。
- 如申請專利範圍第8項所述的記憶體儲存裝置,其中該些實體抹除單元至少被分為一資料區與一系統區,該第一資料是儲存於該資料區,並且該記憶體控制電路單元更用以提供該第二 時脈訊號給該可複寫式非揮發性記憶體模組,並根據該第二時脈訊號讀取該系統區中的一第三資料。
- 如申請專利範圍第8項所述的記憶體儲存裝置,其中該記憶體控制電路單元更用以根據一錯誤更正碼或一錯誤檢查碼判斷該第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合一臨界條件,其中,若該第一資料有錯誤且該讀取錯誤次數不符合該臨界條件,該記憶體控制電路單元用以根據該第一時脈訊號重新讀取該第一資料並且更新該讀取錯誤次數,其中,若該第一資料有錯誤且該讀取錯誤次數符合該臨界條件,該記憶體控制電路單元用以提供該第二時脈訊號給該可複寫式非揮發性記憶體模組,並且根據該第二時脈訊號讀取該第一資料。
- 如申請專利範圍第12項所述的記憶體儲存裝置,其中該記憶體控制電路單元根據該錯誤更正碼或該錯誤檢查碼判斷該第一資料是否有錯誤的操作包括:該記憶體控制電路單元根據該錯誤更正碼判斷該第一資料是否有錯誤,若根據該錯誤更正碼判斷該第一資料沒有錯誤,該記憶體控制電路單元根據該錯誤檢查碼來判斷該第一資料是否有錯誤。
- 如申請專利範圍第12項所述的記憶體儲存裝置,其中該可複寫式非揮發性記憶體模組是透過多個通道耦接至該記憶體控 制電路單元,並且該記憶體控制電路單元更用以對於每一該些通道,記錄對應的該讀取錯誤次數。
- 一種記憶體控制電路單元,用於控制一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組包括多個實體抹除單元,該記憶體控制電路單元包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組;一記憶體管理電路,耦接至該主機介面與該記憶體介面;以及一時脈產生電路,用以提供一第一時脈訊號或一第二時脈訊號給該可複寫式非揮發性記憶體模組,其中,該記憶體管理電路用以根據該第一時脈訊號讀取該可複寫式非揮發性記憶體模組中的一第一資料,其中,該記憶體管理電路用以根據該第二時脈訊號將一第二資料寫入至該可複寫式非揮發性記憶體模組中,其中該第二時脈訊號的一頻率不同於該第一時脈訊號的一頻率。
- 如申請專利範圍第15項所述的記憶體控制電路單元,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率。
- 如申請專利範圍第15項所述的記憶體控制電路單元,該記憶體管理電路更用以接收來自該主機系統的一第一指令,其中,若該第一指令為一讀取指令,該時脈產生電路用以提供該第一時脈訊號;以及 其中,若該第一指令為一寫入指令,該時脈產生電路用以提供該第二時脈訊號。
- 如申請專利範圍第15項所述的記憶體控制電路單元,其中該些實體抹除單元至少被分為一資料區與一系統區,該第一資料是儲存於該資料區,並且該記憶體管理電路更用以根據該第二時脈訊號讀取該系統區中的一第三資料。
- 如申請專利範圍第15項所述的記憶體控制電路單元,其中該記憶體管理電路更用以根據一錯誤更正碼或一錯誤檢查碼判斷該第一資料是否有錯誤,並且判斷一讀取錯誤次數是否符合一臨界條件,其中,若該第一資料有錯誤且該讀取錯誤次數不符合該臨界條件,該記憶體管理電路用以根據該第一時脈訊號重新讀取該第一資料並且更新該讀取錯誤次數,其中,若該第一資料有錯誤且該讀取錯誤次數符合該臨界條件,該記憶體管理電路用以根據該第二時脈訊號讀取該第一資料。
- 如申請專利範圍第19項所述的記憶體控制電路單元,其中該記憶體管理電路根據該錯誤更正碼或該錯誤檢查碼判斷該第一資料是否有錯誤的操作包括:該記憶體管理電路根據該錯誤更正碼判斷該第一資料是否有錯誤,若根據該錯誤更正碼判斷該第一資料沒有錯誤,該記憶體管理電路根據該錯誤檢查碼來判斷該第一資料是否有錯誤。
- 如申請專利範圍第19項所述的記憶體控制電路單元,其中該可複寫式非揮發性記憶體模組是透過多個通道耦接至該記憶體控制電路單元,並且該記憶體管理電路更用以對於每一該些通道,記錄對應的該讀取錯誤次數。
- 一種記憶體控制方法,用於一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組包含多個實體程式化單元,且該些實體程式化單元被分為一系統區、一資料區及一閒置區,該記憶體控制方法包括:提供一第一時脈訊號給該可複寫式非揮發性記憶體模組,並應用該第一時脈訊號對該可複寫式非揮發性記憶體模組之該資料區或該閒置區執行一第一操作;以及提供一第二時脈訊號給該可複寫式非揮發性記憶體模組,並應用該第二時脈訊號對該可複寫式非揮發性記憶體模組之該資料區或該閒置區執行一第二操作,其中該第一時脈訊號的頻率不同於該第二時脈訊號的頻率。
- 如申請專利範圍第22項所述的記憶體控制方法,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作為一讀取操作,並且該第二操作為一寫入操作。
- 如申請專利範圍第22項所述的記憶體控制方法,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作是用以讀取一使用者資料,該第二操作是用以讀取一實體位址映射表。
- 如申請專利範圍第22項所述的記憶體控制方法,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作是用以讀取一第一資料,並且該第二操作是用以在該第一資料有錯誤時重讀該第一資料。
- 如申請專利範圍第22項所述的記憶體控制方法,其中該可複寫式非揮發性記憶體模組的系統資料非儲存於該資料區或該閒置區,且該系統區中的該些實體程式化單元無映射至該可複寫式非揮發性記憶體模組中的一實體位址映射表中的邏輯位址。
- 一種記憶體儲存裝置,包括:一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,包括多個實體程式化單元;以及一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組,將該些實體程式化單元分為一資料區、一閒置區與一系統區,其中,該記憶體控制電路單元用以提供一第一時脈訊號給該可複寫式非揮發性記憶體模組,並應用該第一時脈訊號對該可複寫式非揮發性記憶體模組之該資料區或該閒置區執行一第一操作,其中,該記憶體控制電路單元用以提供一第二時脈訊號給該可複寫式非揮發性記憶體模組,並應用該第二時脈訊號對該可複寫式非揮發性記憶體模組之該資料區或該閒置區執行一第二操 作,其中該第一時脈訊號的頻率不同於該第二時脈訊號的頻率。
- 如申請專利範圍第27項所述的記憶體儲存裝置,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作為一讀取操作,並且該第二操作為一寫入操作。
- 如申請專利範圍第27項所述的記憶體儲存裝置,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作是用以讀取一使用者資料,該第二操作是用以讀取一實體位址映射表。
- 如申請專利範圍第27項所述的記憶體儲存裝置,其中該第二時脈訊號的該頻率小於該第一時脈訊號的該頻率,該第一操作是用以讀取一第一資料,並且該第二操作是用以在該第一資料有錯誤時重讀該第一資料。
- 如申請專利範圍第27項所述的記憶體儲存裝置,其中該可複寫式非揮發性記憶體模組的系統資料非儲存於該資料區或該閒置區,且該系統區中的該些實體程式化單元無映射至該記憶體儲存裝置的一實體位址映射表中的邏輯位址。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102139739A TWI527058B (zh) | 2013-11-01 | 2013-11-01 | 記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 |
US14/161,708 US9367390B2 (en) | 2013-11-01 | 2014-01-23 | Memory controlling method, memory storage device and memory controlling circuit unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102139739A TWI527058B (zh) | 2013-11-01 | 2013-11-01 | 記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201519255A TW201519255A (zh) | 2015-05-16 |
TWI527058B true TWI527058B (zh) | 2016-03-21 |
Family
ID=53007946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102139739A TWI527058B (zh) | 2013-11-01 | 2013-11-01 | 記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9367390B2 (zh) |
TW (1) | TWI527058B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11990188B2 (en) | 2021-02-03 | 2024-05-21 | Winbond Electronics Corp. | Semiconductor apparatus and continuous readout method |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102036514B1 (ko) | 2015-07-13 | 2019-10-28 | 엘에스산전 주식회사 | 메모리 소자를 이용한 데이터 엑세스 장치 |
CN113450843B (zh) * | 2020-03-27 | 2024-01-23 | 群联电子股份有限公司 | 电路布局结构与存储器存储装置 |
TW202145017A (zh) * | 2020-05-18 | 2021-12-01 | 群聯電子股份有限公司 | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 |
JP2022094033A (ja) * | 2020-12-14 | 2022-06-24 | キオクシア株式会社 | メモリシステム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7809972B2 (en) * | 2007-03-30 | 2010-10-05 | Arm Limited | Data processing apparatus and method for translating a signal between a first clock domain and a second clock domain |
US8874831B2 (en) | 2007-06-01 | 2014-10-28 | Netlist, Inc. | Flash-DRAM hybrid memory module |
US8301833B1 (en) | 2007-06-01 | 2012-10-30 | Netlist, Inc. | Non-volatile memory module |
US7925824B2 (en) * | 2008-01-24 | 2011-04-12 | International Business Machines Corporation | System to reduce latency by running a memory channel frequency fully asynchronous from a memory device frequency |
TWI370361B (en) * | 2008-08-21 | 2012-08-11 | Ili Technology Corp | Memory access controlling apparatus and control method thereof |
JP2010081577A (ja) * | 2008-08-26 | 2010-04-08 | Elpida Memory Inc | 半導体装置およびデータ伝送システム |
CN101930404B (zh) * | 2010-08-27 | 2012-11-21 | 威盛电子股份有限公司 | 存储装置及其操作方法 |
CN102402454B (zh) * | 2010-09-10 | 2013-10-02 | 联想(北京)有限公司 | 一种调节内存运行频率的方法及电子设备 |
US8737135B2 (en) * | 2011-08-23 | 2014-05-27 | Winbond Electronics Corporation | Method for and flash memory device having improved read performance |
JP5834936B2 (ja) * | 2012-01-17 | 2015-12-24 | ソニー株式会社 | 情報処理装置および情報処理装置の制御方法 |
JP5949408B2 (ja) * | 2012-10-02 | 2016-07-06 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム |
TWI508099B (zh) * | 2013-01-28 | 2015-11-11 | Phison Electronics Corp | 工作時脈切換方法、記憶體控制器與記憶體儲存裝置 |
US9152214B2 (en) * | 2013-05-16 | 2015-10-06 | Qualcomm Innovation Center, Inc. | Dynamic load and priority based clock scaling for non-volatile storage devices |
-
2013
- 2013-11-01 TW TW102139739A patent/TWI527058B/zh active
-
2014
- 2014-01-23 US US14/161,708 patent/US9367390B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11990188B2 (en) | 2021-02-03 | 2024-05-21 | Winbond Electronics Corp. | Semiconductor apparatus and continuous readout method |
Also Published As
Publication number | Publication date |
---|---|
US20150127885A1 (en) | 2015-05-07 |
TW201519255A (zh) | 2015-05-16 |
US9367390B2 (en) | 2016-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI587304B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI516927B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI470431B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI591482B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI479505B (zh) | 資料管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI525625B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI658361B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI656531B (zh) | 平均磨損方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI479315B (zh) | 記憶體儲存裝置、其記憶體控制器與資料寫入方法 | |
TWI527058B (zh) | 記憶體控制方法、記憶體儲存裝置與記憶體控制電路單元 | |
TWI459198B (zh) | 記憶體儲存裝置、其記憶體控制器與有效資料識別方法 | |
TW201519242A (zh) | 資料寫入方法、記憶體儲存裝置、記憶體控制電路單元 | |
CN104636267A (zh) | 存储器控制方法、存储器存储装置与存储器控制电路单元 | |
TWI486765B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI545581B (zh) | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI529530B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW201913382A (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
TWI644210B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI642059B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201500925A (zh) | 資料保護方法、記憶體控制器與記憶體儲存裝置 | |
TW201913388A (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI467364B (zh) | 記憶體儲存裝置、記憶體控制器與資料寫入方法 | |
TWI635495B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI553477B (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |