TWI514407B - 資料儲存裝置以及快閃記憶體控制方法 - Google Patents
資料儲存裝置以及快閃記憶體控制方法 Download PDFInfo
- Publication number
- TWI514407B TWI514407B TW103106958A TW103106958A TWI514407B TW I514407 B TWI514407 B TW I514407B TW 103106958 A TW103106958 A TW 103106958A TW 103106958 A TW103106958 A TW 103106958A TW I514407 B TWI514407 B TW I514407B
- Authority
- TW
- Taiwan
- Prior art keywords
- space
- data
- flash memory
- block
- time
- Prior art date
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
本發明係有關於以快閃記憶體(FLASH memory)實現的一種資料儲存裝置,亦有關於一種快閃記憶體控制方法。
現今資料儲存裝置常以快閃記憶體(FLASH memory)為儲存媒體,常用作:記憶卡(memory card)、通用序列匯流排閃存裝置(USB flash device)、固態硬碟(SSD)…等產品。另外有一種應用是採多晶片封裝、將快閃記憶體晶片與控制晶片包成一顆晶片一稱為嵌入式快閃記憶體模組(eMMC)。
快閃記憶體的儲存空間係劃分為複數個區塊(blocks),各區塊包括複數頁(pages)。抹除操作(erase operation)係以區塊為單位。整個區塊之內容完整抹除後,該個區塊方能釋出待下次配置使用。快閃記憶體操作技術會將抹除次數太多導致不堪使用的區塊標示為損壞。損壞的區塊越多,快閃記憶體內可用的閒置區塊就越少。一旦閒置區塊的數量低於一下限,此快閃記憶體就進入寫入保護(write protected),只能讀取,不能寫入資料。
本發明揭露一種以快閃記憶體實現的資料儲存裝
置,並且揭露一種快閃記憶體的控制方法,其中提供了精準的損壞區塊辨識技術。
根據本發明一種實施方式所實現的一種資料儲存裝置包括一快閃記憶體以及耦接該快閃記憶體的一控制器。該快閃記憶體之儲存空間係劃分為複數個區塊。各區塊包括複數頁。該控制器於儲存資料至該快閃記憶體時更將資料對應之至少一時間標籤也儲存至該快閃記憶體。於辨識儲存該資料之區塊是否為損壞區塊時,控制器係根據上述時間標籤判斷該區塊是否確實物理損壞。快閃記憶體因而免於過早被限定為寫入保護,使用壽命有效延長。
根據本發明一種實施方式所實現的快閃記憶體控制方法包括以下步驟:於儲存資料至一快閃記憶體時,更將資料對應之至少一時間標籤也儲存至該快閃記憶體,上述快閃記憶體之儲存空間劃分為複數個區塊;以及,於辨識儲存該資料之區塊是否為損壞區塊時根據上述時間標籤判斷該區塊是否確實物理損壞。
下文特舉實施例,並配合所附圖式,詳細說明本發明內容。
100‧‧‧資料儲存裝置
102‧‧‧快閃記憶體
104‧‧‧控制器
106‧‧‧主機
108‧‧‧系統資訊空間
110‧‧‧閒置空間
112‧‧‧損壞記錄
114‧‧‧時間參考
Data_Blk1、Data_Blk2‧‧‧資料區塊
S202…S214‧‧‧步驟
第1圖為根據本發明一種實施方式所實現的一資料儲存裝置100,其中包括一快閃記憶體(FLASH memory)102以及一控制器104;第2圖以流程圖更詳細圖解根據本發明一種實施方式所實
現的快閃記憶體102損壞空間辨識方法。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
第1圖為根據本發明一種實施方式所實現的一資料儲存裝置100,其中包括一快閃記憶體(FLASH memory)102以及一控制器104。控制器104可根據主機106之要求,下達指令操作該快閃記憶體102。
快閃記憶體102之儲存空間係劃分為複數個區塊(blocks),更近一步地,各區塊包括複數頁(pages)。抹除操作(erase operation)係以區塊為單位。整個區塊之內容完整抹除後,該個區塊方能釋出待下次配置使用。參考第1圖,在一實施例中,快閃記憶體102中部分區塊係作系統資訊空間108使用,儲存資料的區塊則有Data_Blk1、Data_Blk2…等,閒置沒有使用的區塊則可屬閒置空間110。控制器104在系統資訊空間108作一損壞記錄112,標記不堪使用的區塊。損壞的區塊越多,可釋放作閒置空間110之閒置區塊的區塊就越少。一旦閒置空間110之區塊數量低於一下限,此快閃記憶體102就整體進入寫入保護(write protected),只能讀取,不能寫入資料。
根據本案所揭露之技術,控制器104係耦接快閃記憶體102,其於儲存資料至該快閃記憶體102時更將資料對應之至少一時間標籤(time stamp)也儲存至該快閃記憶體102,並於辨識儲存該資料之區塊是否為損壞區塊時將上述時間標籤考
慮於其中,根據上述時間標籤判斷該區塊是否確實物理損壞。如此一來,僅因資料過於老舊(非確實物理損壞)而造成讀取困難的區塊不再被誤判為損壞。快閃記憶體102之閒置區塊數量不再無謂下降。快閃記憶體102免於過早被限定為寫入保護,壽命有效延長。
參閱資料區塊Data_Blk2,根據本案所揭露之技術,每個頁資料對應一時間標籤,且各頁資料之時間標籤係與該頁資料(data)與該頁資料相關資訊(info)一同儲存於該頁物理空間。在一優選實施例中,各頁資料之時間標籤係儲存於該頁之標頭(header)中。所述時間標籤可為標準時間,標示“日期”、甚至詳細時刻。或者,成本考量下,所述時間標籤可簡單根據系統一上電計數(power-on count)設置。所述上電計數係計數資料儲存裝置100上電次數。控制器104將資料寫入快閃記憶體102時,係將系統當下的上電計數之數值作為該資料之時間標籤。如此一來,將來在核對資料時間標籤時,與系統上電計數差距越大者代表資料越老舊。
於第1圖所示實施方式,控制器104係在系統資訊空間108記錄一時間參考114,表征當前系統所處之時間以助於評量先前所儲存之之時間標籤,即,比較時間參考114與時間標籤以判斷儲存對應時間標籤之資料的區塊是否確實物理損壞。此外,當控制器104於儲存資料至快閃記憶體102時,係根據那時的時間參考114設定資料對應之時間標籤。一種實施方式是將標準時間填入作為該時間參考114。或者,成本考量下,系統上電計數也可被用來記錄作該時間參考114。或者,資料
儲存裝置100自身可更設計有一時鐘,即可用來作為時間參考。
在一種實施方式中,控制器104係於讀取該快閃記憶體102一空間之資料發生困難時判斷該空間之資料所對應的時間標籤是否超越時間參考114一臨界量,以判斷該空間所對應之區塊是否確實物理損壞。若超越該臨界量,則代表該空間之資料讀取困難有可能是源自於資料過於老舊,而非該空間所對應之區塊發生物理損壞。若未超越該臨界量,則代表該空間之資料並非老資料,因此該空間之資料讀取困難可判定為該空間所對應之區塊發生物理損壞。該空間可能是小於一個區塊的存儲空間,例如複數個頁的存儲空間;也可能是多個區塊的存儲空間,而在一實施例中,損壞辨識係以區塊為單位,即是說,即使一個區塊中僅部分的空間發生物理損壞,該空間所在的這個區塊都會被標記為損壞。
第2圖以流程圖更詳細圖解根據本發明一種實施方式所實現的快閃記憶體102損壞空間辨識方法。所述損壞空間辨識可在讀取該快閃記憶體102內資料時實施。或者,另有實施方式是定時掃描該快閃記憶體102作損壞空間辨識。在一實施例中,於儲存資料至快閃記憶體102時,更將資料對應之至少一時間標籤也儲存至快閃記憶體102,快閃記憶體102之儲存空間劃分為複數個區塊;之後,當辨識儲存該資料之一區塊是否為損壞區塊時,係根據上述時間標籤判斷該區塊是否確實物理損壞。詳言之,即於讀取快閃記憶體102一空間之資料發生困難時,判斷該空間之資料所對應的時間標籤是否超越一時間參考一臨界量,以判定該空間所對應之區塊係確實物理損
壞。以下參考第2圖詳細敘述。
若於步驟S202判定讀取一空間之資料發生困難時(例如,無法讀取資料,或者,重複讀取動作多次方讀出資料),程序進行步驟S204,將該空間之資料備份(如,複製到其他區塊,英文稱reclaim)。在某些實施例中,步驟S204還包括在備份處儲存備份版本的時間標籤,係與當前系統之時間參考114同步。又或者,若步驟S202判定資料讀取正常,程序進行步驟S206,判定該空間正常。
於步驟S204後,程序進行步驟S208,把損壞辨識待確定的該處空間之資料所對應的時間標籤拿來與時間參考114作比較。若該空間之資料所對應的時間標籤不超越時間參考114一臨界量,即非老資料,則程序進行步驟S210,將該空間所對應的區塊標記為損壞。若該空間之資料所對應的時間標籤超越時間參考114該臨界量,即老資料,則程序進行步驟S212,對損壞辨識待確定的該處空間作耐受度測試(stress confirm)。若步驟S212判定該處空間不通過上述耐受度測試,則程序進行步驟S210,將該處空間的區塊標示為損壞區塊。反之,若步驟S212判定該處空間通過上述耐受度測試,則程序進行步驟S214,判定該空間之資料讀取困難係源自於資料過於老舊,並非物理損壞。步驟S214更包括將通過上述耐受度測試的該處空間的區塊釋出,待後續配置使用。
步驟S212所作的耐受度測試可包括:將該處空間所對應的區塊一一完整抹除後再寫入測試資料;以及,於上述測試資料得以被正確讀出時判定該該處空間通過上述耐受度
測試,反之,則判定該處空間不通過上述耐受度測試。
上述實施方式所述之控制器104除了可為特別設計之晶片外,也可以運算單元與唯讀記憶體(ROM)組合實現。
以上所揭露的技術步驟可以韌體實現,相關程式碼係載於控制器內的唯讀記憶體,由控制器內的運算單元執行。此外,凡採用同樣概念控制一快閃記憶體的技術都屬於本案所欲保護的範圍。本案更涉及快閃記憶體的控制方法,不限定以特定架構的控制器實現。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100‧‧‧資料儲存裝置
102‧‧‧快閃記憶體
104‧‧‧控制器
106‧‧‧主機
108‧‧‧系統資訊空間
110‧‧‧閒置空間
112‧‧‧損壞記錄
114‧‧‧時間參考
Data_Blk1、Data_Blk2‧‧‧資料區塊
Claims (18)
- 一種資料儲存裝置,包括:一快閃記憶體,其儲存空間劃分為複數個區塊;以及耦接該快閃記憶體的一控制器,於儲存資料至該快閃記憶體時更將該資料對應之至少一時間標籤也儲存至該快閃記憶體,並於辨識儲存該資料之一區塊是否為損壞區塊時根據上述時間標籤判斷該區塊是否確實因抹除次數過高而物理損壞不使用。
- 如申請專利範圍第1項所述之資料儲存裝置,其中:該控制器更在該快閃記憶體上述區塊之中的一系統區塊記錄一時間參考,係用於與上述時間標籤比較以判斷該區塊是否確實因抹除次數過高而物理損壞不使用;且該控制器於儲存資料至該快閃記憶體時,係根據上述時間參考設定上述時間標籤。
- 如申請專利範圍第1項所述之資料儲存裝置,其中:該控制器於讀取該快閃記憶體一空間之資料發生困難時,判斷該空間之資料所對應的時間標籤是否超越一時間參考一臨界量,以判定該空間所對應之區塊係確實因抹除次數過高而物理損壞不使用。
- 如申請專利範圍第1項所述之資料儲存裝置,其中:該控制器於讀取該快閃記憶體一空間之資料發生困難時,係將該空間之資料作備份後方判斷該空間之資料所對應的時間標籤是否超越一時間參考一臨界量;該控制器於判定該空間之資料所對應的時間標籤不超越上 述時間參考上述臨界量時,係將該空間所對應的區塊標記為損壞;該控制器於判定該空間之資料所對應的時間標籤超越上述時間參考上述臨界量後,更對該空間作耐受度測試;該控制器於該空間通過上述耐受度測試時判定該空間之資料讀取困難係源自於資料過於老舊;並且該控制器於該空間不通過上述耐受度測試時,將該空間所對應的區塊標記為損壞。
- 如申請專利範圍第4項所述之資料儲存裝置,其中:該控制器於對資料讀取發生困難之該空間之資料作備份時,係將備份處之時脈標籤同步為上述時脈參考。
- 如申請專利範圍第4項所述之資料儲存裝置,其中:該控制器更將通過上述耐受度測試的該空間所對應的區塊釋出,待後續配置使用。
- 如申請專利範圍第4項所述之資料儲存裝置,其中:該控制器對該空間作上述耐受度測試時,係將該空間所對應區塊一一完整抹除後再寫入測試資料;並且該控制器係於上述測試資料得以被正確讀出時判定該空間通過上述耐受度測試,反之,則判定該空間不通過上述耐受度測試。
- 如申請專利範圍第1項所述之資料儲存裝置,其中:上述快閃記憶體之各區塊包括複數頁,每個頁對應一個時間標籤。
- 如申請專利範圍第1項所述之資料儲存裝置,其中: 上述時間標籤係儲存於該空間之標頭。
- 如申請專利範圍第1項所述之資料儲存裝置,其中:該控制器定時掃描該快閃記憶體以辨識損壞區塊。
- 一種快閃記憶體控制方法,包括:於儲存資料至一快閃記憶體時,更將該資料對應之至少一時間標籤也儲存至該快閃記憶體,上述快閃記憶體之儲存空間劃分為複數個區塊;以及於辨識儲存該資料之一區塊是否為損壞區塊時根據上述時間標籤判斷該區塊是否確實因抹除次數過高而物理損壞不使用。
- 如申請專利範圍第11項所述之快閃記憶體控制方法,包括:於讀取該快閃記憶體一空間之資料發生困難時,判斷該空間之資料所對應的時間標籤是否超越一時間參考一臨界量,以判斷該空間所對應之區塊是否確實因抹除次數過高而物理損壞不使用。
- 如申請專利範圍第11項所述之快閃記憶體控制方法,包括:於讀取該快閃記憶體一空間之資料發生困難時,備份該空間之資料,繼以判斷該空間之資料所對應的時間標籤是否超越一時間參考一臨界量;於判定該空間之資料所對應的時間標籤不超越上述時間參考上述臨界量時,將該空間所對應的區塊標記為損壞;於判定該空間之資料所對應的時間標籤超越上述時間參考上述臨界量後,更對該空間作耐受度測試;於該空間通過上述耐受度測試時,判定該空間之資料讀取 困難係源自於資料過於老舊;並且於該空間不通過上述耐受度測試時,將該空間所對應的區塊標記為損壞。
- 如申請專利範圍第13項所述之快閃記憶體控制方法,包括:於對資料讀取發生困難之該空間之資料作備份時,將備份處之時脈標籤同步為上述時脈參考。
- 如申請專利範圍第13項所述之快閃記憶體控制方法,包括:將通過上述耐受度測試的該空間之區塊釋出,待後續配置使用。
- 如申請專利範圍第13項所述之快閃記憶體控制方法,包括:於耐受度測試中,將受測該空間的區塊一一完整抹除後再寫入測試資料,並且,於上述測試資料得以被正確讀出時判定該空間通過上述耐受度測試,反之,則判定該空間不通過上述耐受度測試。
- 如申請專利範圍第11項所述之快閃記憶體控制方法,包括:上述快閃記憶體之各區塊包括複數頁,每個頁對應一個時間標籤。
- 如申請專利範圍第11項所述之快閃記憶體控制方法,包括:定時掃描該快閃記憶體,以辨識損壞區塊。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410084448.6A CN103927128B (zh) | 2013-07-11 | 2014-03-10 | 数据储存装置以及快闪存储器控制方法 |
US14/317,108 US9305662B2 (en) | 2013-07-11 | 2014-06-27 | Data storage device and flash memory control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361845065P | 2013-07-11 | 2013-07-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201503154A TW201503154A (zh) | 2015-01-16 |
TWI514407B true TWI514407B (zh) | 2015-12-21 |
Family
ID=52718482
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103104843A TWI543189B (zh) | 2013-07-11 | 2014-02-14 | 資料儲存裝置以及快閃記憶體控制方法 |
TW103106958A TWI514407B (zh) | 2013-07-11 | 2014-03-03 | 資料儲存裝置以及快閃記憶體控制方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103104843A TWI543189B (zh) | 2013-07-11 | 2014-02-14 | 資料儲存裝置以及快閃記憶體控制方法 |
Country Status (1)
Country | Link |
---|---|
TW (2) | TWI543189B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI563509B (en) * | 2015-07-07 | 2016-12-21 | Phison Electronics Corp | Wear leveling method, memory storage device and memory control circuit unit |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050077975A1 (en) * | 2003-10-14 | 2005-04-14 | Micron Technology, Inc. | Circuits and methods of temperature compensation for refresh oscillator |
WO2010080185A1 (en) * | 2008-12-18 | 2010-07-15 | Sandisk Corporation | Data refresh for non-volatile storage |
-
2014
- 2014-02-14 TW TW103104843A patent/TWI543189B/zh active
- 2014-03-03 TW TW103106958A patent/TWI514407B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050077975A1 (en) * | 2003-10-14 | 2005-04-14 | Micron Technology, Inc. | Circuits and methods of temperature compensation for refresh oscillator |
WO2010080185A1 (en) * | 2008-12-18 | 2010-07-15 | Sandisk Corporation | Data refresh for non-volatile storage |
Also Published As
Publication number | Publication date |
---|---|
TWI543189B (zh) | 2016-07-21 |
TW201503158A (zh) | 2015-01-16 |
TW201503154A (zh) | 2015-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9305662B2 (en) | Data storage device and flash memory control method | |
TWI597605B (zh) | 用於資料儲存裝置的損耗平均方法 | |
KR100906519B1 (ko) | 비-휘발성 메모리 시스템에서 사용불가능한 블록을관리하기 위한 방법 및 장치 | |
US8464106B2 (en) | Computer system with backup function and method therefor | |
KR101498009B1 (ko) | 비휘발성 메모리 시스템에서 결함 블록 분리 | |
TWI529719B (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
US8046524B2 (en) | Managing processing delays in an isochronous system | |
TWI492051B (zh) | 資料儲存裝置與快閃記憶體控制方法 | |
US20120060054A1 (en) | Method for using bad blocks of flash memory | |
TWI569144B (zh) | 資料儲存裝置及其斷電事件判斷方法 | |
TWI436369B (zh) | 記憶裝置之使用壽命量測方法及系統內編程碼置換方法、及其資料儲存系統 | |
KR101028901B1 (ko) | 메모리 장치, 메모리 관리 장치 및 메모리 관리 방법 | |
JP2004152299A5 (zh) | ||
CN110459259A (zh) | 存储设备写错误纠错能力的测试方法、系统及存储介质 | |
TWI486957B (zh) | Nand快閃記憶體燒錄資料的處理、使用方法及裝置、運行系統 | |
TW201931366A (zh) | 資料儲存裝置以及非揮發式記憶體操作方法 | |
TWI420313B (zh) | 資料管理方法、記憶體控制器與嵌入式記憶體儲存裝置 | |
CN106227625A (zh) | 一种因掉电而损坏的闪存数据的恢复方法及系统 | |
TWI687933B (zh) | 資料儲存裝置及其區塊釋放方法 | |
US7921340B2 (en) | Nonvolatile memory device, nonvolatile memory system, and defect management method for nonvolatile memory device | |
TWI514407B (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
CN114155906A (zh) | 一种数据块修复方法、装置、设备及存储介质 | |
US9558110B2 (en) | Method for managing a flash memory | |
TWI594244B (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
US20090100214A1 (en) | Management Platform For Extending Lifespan Of Memory In Storage Devices |