TWI492052B - 存取快閃記憶體的方法以及相關的記憶裝置 - Google Patents
存取快閃記憶體的方法以及相關的記憶裝置 Download PDFInfo
- Publication number
- TWI492052B TWI492052B TW102118811A TW102118811A TWI492052B TW I492052 B TWI492052 B TW I492052B TW 102118811 A TW102118811 A TW 102118811A TW 102118811 A TW102118811 A TW 102118811A TW I492052 B TWI492052 B TW I492052B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- pages
- page
- flash memory
- data pages
- Prior art date
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Description
本發明係有關於一種存取快閃記憶體的方法,尤指一種備份快閃記憶體中部分資料的方法及其相關的記憶裝置。
在某些快閃記憶體設計中,尤其是三層式儲存(Triple-Level Cell,TLC)快閃記憶體,其每一個區塊的資料頁數量並非剛剛好是2的冪次方,然而,考量到快閃記憶體控制器的設計以及存取速度,一個區塊中通常只會使用2N
個資料頁來存取資料。舉例來說,假設一個區塊有258個資料頁,但是只有前面的256個(2的8次方)資料頁會被使用來儲存資料,而最後兩個資料頁通常就閒置不用。如此一來,最後兩個資料頁的使用空間就白白浪費了。
因此,本發明的目的之一在於提供一種存取快閃記憶體的方法,其可以將習知技術中原本不使用的資料頁利用來備份資料,以解決習知技術中資料頁空間浪費的問題。
依據本發明一實施例,係提供一種存取一快閃記憶體的方法,其中該快閃記憶體中一區塊所包含之資料頁的數量為(2N
+M),且N、M均為正整數,以及該方法包含有:將一資料串流寫入至該區塊之第1~2N
個資料頁中;以及將寫入至第1~2N
個資料頁中部分資料頁的資料備份至該區塊之第
(2N
+1)~(2N
+M)個資料頁中。
依據本發明另一實施例,係提供一種記憶裝置,其中該記憶裝置包含有一快閃記憶體以及一控制器,該快閃記憶體包含複數個區塊,該複數個區塊中任一區塊所包含之資料頁的數量為(2N
+M),且N、M均為正整數,以及該控制器係用來將一資料串流寫入至該區塊之第1~2N
個資料頁中,以及將寫入至第1~2N
個資料頁中部分資料頁的資料備份至該區塊之第(2N
+1)~(2N
+M)個資料頁中。
依據本發明另一實施例,係提供一種存取一快閃記憶體的方法,其中該快閃記憶體中一區塊所包含之資料頁的數量為(2N
+M),第(2N
+1)~(2N
+M)個資料頁係用來備份第1~2N
個資料頁中部分資料頁的資料,且N、M均為正整數,以及該方法包含有:讀取該部分資料頁中至少一資料頁的資料;以及選擇性地讀取第(2N
+1)~(2N
+M)個資料頁中用來備份該至少一資料頁的資料頁,以作為該至少一資料頁中的資料。
依據本發明另一實施例,係提供一種記憶裝置,其中該記憶裝置包含有一快閃記憶體以及一控制器,該快閃記憶體包含複數個區塊,該複數個區塊中任一區塊所包含之資料頁的數量為(2N
+M),第(2N
+1)~(2N
+M)個資料頁係用來備份第1~2N
個資料頁中部分資料頁的資料,且N、M均為正整數;以及該控制器係用來讀取該部分資料頁中至少一資料頁的資料,以及選擇性地讀取第(2N
+1)~(2N
+M)個資料頁中用來備份該至少一資料頁的資料頁,以作為該至少一資料頁中的資料。
100‧‧‧記憶裝置
110‧‧‧記憶體控制器
112‧‧‧微處理器
112C‧‧‧程式碼
112M‧‧‧唯讀記憶體
114‧‧‧控制邏輯
116‧‧‧緩衝記憶體
118‧‧‧介面邏輯
120‧‧‧快閃記憶體
200‧‧‧區塊
410‧‧‧資料頁緩衝器
P0~P257‧‧‧資料頁
WL0~WL85‧‧‧字元線
300~304、500~504‧‧‧步驟
第1圖為依據本發明一實施例之一種記憶裝置的示意圖。
第2圖為依據本發明一實施例之快閃記憶體中一區塊的示意圖。
第3圖為依據本發明一實施例之將資料寫入至一快閃記憶體的方法的流程圖。
第4圖為第2圖所示之區塊進行資料備份的示意圖。
第5圖為依據本發明一實施例之讀取一快閃記憶體的方法的流程圖。
請參考第1圖,第1圖為依據本發明一實施例之一種記憶裝置100的示意圖,其中本實施例之記憶裝置100尤其係為可攜式記憶裝置(例如:符合SD/MMC、CF、MS、XD標準之記憶卡)。記憶裝置100包含有一快閃記憶體(Flash Memory)120以及一控制器,該控制器可為一記憶體控制器110,且係用來存取快閃記憶體120。依據本實施例,記憶體控制器110包含一微處理器112、一唯讀記憶體(Read Only Memory,ROM)112M、一控制邏輯114、一緩衝記憶體116、與一介面邏輯118。唯讀記憶體係用來儲存一程式碼112C,而微處理器112則用來執行程式碼112C以控制對快閃記憶體120之存取(Access)。
於典型狀況下,快閃記憶體120包含複數個區塊(Block),而該控制器(例如:透過微處理器112執行程式碼112C之記憶體控制器110)對快閃記憶體120進行複製、抹除、合併資料等運作係以區塊為單位來進行複製、抹除、合併資料。另外,一區塊可記錄特定數量的資料頁(Page),其中該控制器(例如:透過微處理器112執行程式碼112C之記憶體控制器110)對快閃記憶體120進行寫入資料之運作係以資料頁為單位來進行寫入。
實作上,透過微處理器112執行程式碼112C之記憶體控制器110可利用其本身內部之元件來進行諸多控制運作,例如:利用控制邏輯114來控制快閃記憶體120之存取運作(尤其是對至少一區塊或至少一資料頁之存
取運作)、利用緩衝記憶體116進行所需之緩衝處理、以及利用介面邏輯118來與一主裝置(Host Device)溝通。
請參考第2圖,第2圖為依據本發明一實施例之快閃記憶體120中一區塊200的示意圖。如第2圖所示,區塊200係為三層式儲存(TLC)架構,亦即圖式中的每一個儲存單元(亦即每一個電晶體)可以儲存三個位元,且區塊200具有86條字元線WL0~WL85,每一條字元線構成三個資料頁,故區塊200共包含有258個資料頁P0~P257。於以下之說明書內容中,係以第2圖所示之區塊大小來描述本發明的發明內容,然而,此並非作為本發明的限制,於本發明之其他實施例中,區塊200亦可具有其他數量的資料頁。
請同時參考第1圖、第3圖以及第4圖,第3圖為依據本發明一實施例之將資料寫入至一快閃記憶體的方法的流程圖,第4圖為區塊200中資料備份的示意圖。參考第3圖,流程敘述如下:於步驟300中,流程開始。接著,於步驟302,記憶體控制器110將一資料串流循序寫入至區塊200的資料頁P0~P255,而當資料頁P0~P255均寫完資料後,流程進入步驟304。於步驟304中,記憶體控制器110將寫入至資料頁P0~P255中的兩個資料頁的資料備份至資料頁P256與P257中。
詳細來說,在步驟304中,記憶體控制器110可以依據一預設位置資訊來決定出將哪兩個資料頁中的資料備份至資料頁P256與P257中,而該預設位置資訊可由設計者依據快閃記憶體120的品質或是其他測試過的資料來決定,亦即,該預設位置資訊可以用來指出資料頁P0~P255中哪兩個資料頁的儲存品質不佳。於本發明一實施例中,由於區塊200係為三層式儲存
(TLC)架構,故區塊200之每一個字元線(WL0~WL85)上均包含有一最高位元資料頁(Most Significant Bit Page,MSB page)、一中間位元資料頁(Central Significant Bit Page,CSB page)以及一最低位元資料頁(Least Significant Bit Page,LSB page),此外,因為最高位元資料頁通常錯誤率較高,因此記憶體控制器110可以將區塊200中對應於兩條字元線上之最高位元資料頁的資料備份至資料頁P256與P257,或是將區塊200中對應於兩條字元線上之中間位元資料頁的資料備份至資料頁P256與P257,抑或是將區塊200中對應於一或兩條字元線上之一中間位元資料頁以及一最高位元資料頁的資料備份至資料頁P256與P257。
另外,在將資料頁P0~P255中的兩個資料頁的資料備份至資料頁P256與P257的過程中,參考第4圖,假設資料頁P3的資料需要備份至資料頁P256,則記憶體控制器110可以依據一複製回存指令(copy-back command)來將資料頁P3的資料先複製到資料頁緩衝器410中,之後才將資料頁緩衝器410中的資料複製到資料頁P256;接著,記憶體控制器110再依據同樣的方法將另一資料頁中的資料備份至資料頁P257。此外,於本發明之另一實施例中,記憶體控制器110亦可以依據一標準讀取/寫入命令(normal read/write command)來將資料頁P3的資料先複製到資料頁緩衝器410後,再傳送到記憶體控制器110中的緩衝器,而後續將資料由記憶體控制器110寫入至資料頁P256。
綜上所述,由於區塊200中的資料頁P256與P257可以被用來備份資料,因此,相較於習知技術中不使用資料頁P256與P257的情形,區塊200中的所有儲存空間均可以被有效利用。
另外,上述第2~4圖所舉之例子僅為一範例說明,而並非作為本
發明的限制。於本發明之其他實施例中,只要一區塊所包含之資料頁的數量為(2N
+M),且記憶體控制器110將寫入至第1~2N
個資料頁中部分資料頁的資料備份至該區塊之第(2N
+1)~(2N
+M)個資料頁中,本發明之流程可以有其他適當的變化,而這些設計上的變化均應隸屬於本發明的範疇。
接著,請同時參考第1圖、第2圖以及第5圖,第5圖為依據本發明一實施例之讀取一快閃記憶體的方法的流程圖。以下關於第5圖的說明係接續著第3圖的流程,亦即第5圖所示的流程為讀取區塊200中的資料,且區塊200中的資料頁P256與P257係已備份了資料頁P0~P255中兩個資料頁的資料。參考第5圖,流程敘述如下:於步驟500中,流程開始。於步驟502中,記憶體控制器110依據一指令以讀取資料頁P0~P255中至少一資料頁的資料,其中該至少一資料頁的資料係備份在資料頁P256或P257中。接著,在步驟504中,記憶體控制器110依據讀取該至少一資料頁的狀況來選擇性地讀取資料頁P256與P257,以作為該至少一資料頁中的資料。
詳細來說,在步驟504中,假設資料頁P256有備份資料頁P3的資料,因此,當記憶體控制器110讀取資料頁P3時,若是記憶體控制器110判斷無法成功讀取資料頁P3的資料(亦即資料損壞嚴重,且使用錯誤更正碼亦無法回復),或是因為資料頁P3需要很長的時間來使用錯誤更正碼進行資料回復,因而造成資料頁P3的讀取時間會超過一預定時間,此時記憶體控制器110便可以直接讀取資料頁P256的資料,來作為資料頁P3的資料。另外,若是記憶體控制器110已成功讀取資料頁P3的資料,則不需要再對資料頁P256進行讀取。
簡要歸納本發明,於本發明之存取一快閃記憶體的方法,係可以將一區塊中第1~2N
個資料頁中部分資料頁的資料備份至該區塊之第(2N
+1)~(2N
+M)個資料頁中,如此一來,該區塊中的每個資料頁均可以被有效利用。此外,當第1~2N
個資料頁中該部分資料頁的資料有錯誤而無法正確被讀取時,也可以藉由第(2N
+1)~(2N
+M)個資料頁中的備份資料來還原,以更加地增進快閃記憶體中資料的正確性。
300~304‧‧‧步驟
Claims (14)
- 一種存取一快閃記憶體(Flash Memory)的方法,其中該快閃記憶體中一區塊所包含之資料頁的數量為(2N +M),M為小於(2N+1 -2N )的值,且N、M均為正整數,以及該方法包含有:將一資料串流寫入至該區塊之第1~2N 個資料頁中;以及將寫入至第1~2N 個資料頁中M個資料頁的資料備份至該區塊之第(2N +1)~(2N +M)個資料頁中。
- 如申請專利範圍第1項所述之方法,其中將寫入至第1~2N 個資料頁中M個資料頁的資料備份至該區塊之第(2N +1)~(2N +M)個資料頁中的步驟包含有:自第1~2N 個資料頁中選擇出該M個資料頁;將所選擇出之資料頁的資料循序傳送至該快閃記憶體中的一資料頁緩衝器;以及將該資料頁緩衝器中所儲存的資料循序傳送至該區塊之第(2N +1)~(2N +M)個資料頁中。
- 如申請專利範圍第2項所述之方法,其中自第1~2N 個資料頁中選擇出該M個資料頁的步驟包含有:依據一預設位置資訊以自第1~2N 個資料頁中選擇出該M個資料頁。
- 如申請專利範圍第1項所述之方法,其中該快閃記憶體為一三層式儲存(Triple-Level Cell,TLC)快閃記憶體。
- 如申請專利範圍第4項所述之方法,其中該快閃記憶體之該區塊包含有多個最高位元資料頁(Most Significant Bit Page,MSB page)、中間位元 資料頁(Central Significant Bit Page,CSB page)以及最低位元資料頁(Least Significant Bit Page,LSB page),且該M個資料頁均為最高位元資料頁、均為中間位元資料頁、或是部分最高位元資料頁部分中間位元資料頁。
- 一種記憶裝置,其包含有:一快閃記憶體(Flash Memory),其中該快閃記憶體包含複數個區塊,該複數個區塊中任一區塊所包含之資料頁的數量為(2N +M),M為小於(2N+1 -2N )的值,且N、M均為正整數;以及一控制器,用來將一資料串流寫入至該區塊之第1~2N 個資料頁中,以及將寫入至第1~2N 個資料頁中M個資料頁的資料備份至該區塊之第(2N +1)~(2N +M)個資料頁中。
- 如申請專利範圍第6項所述之記憶裝置,其中該控制器自第1~2N 個資料頁中選擇出M個資料頁,將所選擇出之資料頁的資料循序傳送至該快閃記憶體中的一資料頁緩衝器,以及將該資料頁緩衝器中所儲存的資料循序傳送至該區塊之第(2N +1)~(2N +M)個資料頁中。
- 如申請專利範圍第7項所述之記憶裝置,其中該控制器依據一預設位置資訊以自第1~2N 個資料頁中選擇出該M個資料頁。
- 如申請專利範圍第6項所述之記憶裝置,其中該快閃記憶體為一三層式儲存(Triple-Level Cell,TLC)快閃記憶體。
- 如申請專利範圍第9項所述之記憶裝置,其中該快閃記憶體之該區塊包含有多個最高位元資料頁(Most Significant Bit Page,MSB page)、中間 位元資料頁(Central Significant Bit Page,CSB page)以及最低位元資料頁(Least Significant Bit Page,LSB page),且該M個資料頁均為最高位元資料頁、均為中間位元資料頁、或是部分最高位元資料頁部分中間位元資料頁。
- 一種存取一快閃記憶體(Flash Memory)的方法,其中該快閃記憶體中一區塊所包含之資料頁的數量為(2N +M),第(2N +1)~(2N +M)個資料頁係用來備份第1~2N 個資料頁中M個資料頁的資料,M為小於(2N+1 -2N )的值,且N、M均為正整數,以及該方法包含有:讀取該M個資料頁中至少一資料頁的資料;以及當該至少一資料頁的資料無法被成功讀取,或是讀取時間超過一預定時間時,選擇性地讀取第(2N +1)~(2N +M)個資料頁中用來備份該至少一資料頁的資料頁,以作為該至少一資料頁中的資料。
- 如申請專利範圍第11項所述之方法,其中該快閃記憶體為一三層式儲存(Triple-Level Cell,TLC)快閃記憶體。
- 一種記憶裝置,其包含有:一快閃記憶體(Flash Memory),其中該快閃記憶體包含複數個區塊,該複數個區塊中任一區塊所包含之資料頁的數量為(2N +M),第(2N +1)~(2N +M)個資料頁係用來備份第1~2N 個資料頁中M個資料頁的資料,M為小於(2N+1 -2N )的值,且N、M均為正整數;以及一控制器,用來讀取該M個資料頁中至少一資料頁的資料,以及當該至少一資料頁的資料無法被成功讀取,或是讀取時間超過一預定時間時,選擇性地讀取第(2N +1)~(2N +M)個資料頁中用來備份該至少一資料頁的資料頁,以作為該至少一資料頁中的資料。
- 如申請專利範圍第13項所述之記憶裝置,其中該快閃記憶體為一三層式儲存(Triple-Level Cell,TLC)快閃記憶體。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/920,074 US9384125B2 (en) | 2012-06-18 | 2013-06-17 | Method for accessing flash memory having pages used for data backup and associated memory device |
CN201310242985.4A CN103514101A (zh) | 2012-06-18 | 2013-06-18 | 存取闪存的方法以及相关的记忆装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261660825P | 2012-06-18 | 2012-06-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201401052A TW201401052A (zh) | 2014-01-01 |
TWI492052B true TWI492052B (zh) | 2015-07-11 |
Family
ID=50345045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102118811A TWI492052B (zh) | 2012-06-18 | 2013-05-28 | 存取快閃記憶體的方法以及相關的記憶裝置 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI492052B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI626541B (zh) * | 2017-08-31 | 2018-06-11 | 慧榮科技股份有限公司 | 將資料寫入至快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW504692B (en) * | 2001-04-20 | 2002-10-01 | Geneticware Co Ltd | Method and architecture for DRAM defect management and status display |
TW201003399A (en) * | 2008-07-02 | 2010-01-16 | Silicon Motion Inc | Flash memory card and method for securing a flash memory against data damage |
US20100115188A1 (en) * | 2008-11-06 | 2010-05-06 | Chun-Kun Lee | Method for managing a memory apparatus, and associated memory apparatus thereof |
TW201207857A (en) * | 2010-08-04 | 2012-02-16 | Silicon Motion Inc | Data writing method and data storage device |
-
2013
- 2013-05-28 TW TW102118811A patent/TWI492052B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW504692B (en) * | 2001-04-20 | 2002-10-01 | Geneticware Co Ltd | Method and architecture for DRAM defect management and status display |
TW201003399A (en) * | 2008-07-02 | 2010-01-16 | Silicon Motion Inc | Flash memory card and method for securing a flash memory against data damage |
US20100115188A1 (en) * | 2008-11-06 | 2010-05-06 | Chun-Kun Lee | Method for managing a memory apparatus, and associated memory apparatus thereof |
TW201207857A (en) * | 2010-08-04 | 2012-02-16 | Silicon Motion Inc | Data writing method and data storage device |
Also Published As
Publication number | Publication date |
---|---|
TW201401052A (zh) | 2014-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4524309B2 (ja) | フラッシュメモリ用のメモリコントローラ | |
TWI692690B (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
TWI520153B (zh) | 非揮發性記憶體裝置及其操作方法 | |
CN110908925B (zh) | 高效能垃圾收集方法以及数据存储装置及其控制器 | |
US9268687B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US10474573B2 (en) | Method for managing flash memory module and associated flash memory controller and electronic device | |
US8904086B2 (en) | Flash memory storage system and controller and data writing method thereof | |
US8694748B2 (en) | Data merging method for non-volatile memory module, and memory controller and memory storage device using the same | |
TWI626541B (zh) | 將資料寫入至快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
US9384125B2 (en) | Method for accessing flash memory having pages used for data backup and associated memory device | |
US9122583B2 (en) | Memory controller and memory storage device and data writing method | |
US9619380B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
TWI585778B (zh) | 非揮發性記憶體裝置的操作方法 | |
US9378130B2 (en) | Data writing method, and memory controller and memory storage apparatus using the same | |
TW201917578A (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
US8607123B2 (en) | Control circuit capable of identifying error data in flash memory and storage system and method thereof | |
CN109840165B (zh) | 存储器***及其操作方法 | |
TWI492052B (zh) | 存取快閃記憶體的方法以及相關的記憶裝置 | |
TWI657339B (zh) | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器 | |
US9830077B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
TW201611035A (zh) | 非揮發性記憶體裝置的操作方法 | |
US9652378B2 (en) | Writing method, memory controller and memory storage device | |
US8312205B2 (en) | Method for identifying a page of a block of flash memory, and associated memory device | |
KR20110131714A (ko) | 데이터 복사를 제어하는 플래시 시스템 및 그의 제어 방법 | |
TWI653630B (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器及電子裝置 |