TW200921704A - Storage apparatus and method for accessing data and for managing memory block - Google Patents

Storage apparatus and method for accessing data and for managing memory block Download PDF

Info

Publication number
TW200921704A
TW200921704A TW096142491A TW96142491A TW200921704A TW 200921704 A TW200921704 A TW 200921704A TW 096142491 A TW096142491 A TW 096142491A TW 96142491 A TW96142491 A TW 96142491A TW 200921704 A TW200921704 A TW 200921704A
Authority
TW
Taiwan
Prior art keywords
block
memory
area
storage
error correction
Prior art date
Application number
TW096142491A
Other languages
English (en)
Other versions
TWI362044B (en
Inventor
Chia-Ming Hu
Chun-Yu Hsieh
Original Assignee
Transcend Information Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Transcend Information Inc filed Critical Transcend Information Inc
Priority to TW096142491A priority Critical patent/TWI362044B/zh
Priority to US12/022,112 priority patent/US8176382B2/en
Priority to US12/265,417 priority patent/US8200919B2/en
Publication of TW200921704A publication Critical patent/TW200921704A/zh
Priority to US13/437,936 priority patent/US8327227B2/en
Application granted granted Critical
Publication of TWI362044B publication Critical patent/TWI362044B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

200921704 九、發明說明: 【發明所屬之技術領域】 本發明是有關於-種資料存取與記憶體區塊管理技 術,且特別是有關於-種延長儲存裝置使用壽命的資料 取與記憶體區塊管理技術。 ' 【先前技術】
圖1綠示為一種非揮發性記憶體架構的示意圖。請夫 照圖1,在非揮發性記憶體⑽t,如一快閃記憶體,包 括了多數個記憶體區塊’例如1〇2、1〇4和1〇6,用來儲存 貝料。而這些記憶體區塊’可以利用陣列的方式排列,因 此又可以稱為記憶體區塊陣列。在每—記憶體區塊中,都 具有-絲量的儲存空間。然而在使用—段時間後,會有 -些位兀發生錯誤,而這些發生錯誤的位元可峨稱為錯 誤位元。在習知的技術中,當發現記憶體區塊中 ^ 位鱗、,可財 1祕元校正的方絲校正錯触元,並^ 將心正過㈣錯誤位元標示為錯誤校正位元或是錯誤校正 碼(Error Correct Code,簡稱 ECC)。 圖2繪示為一種習知之記憶體區塊之管理方法的示意 圖:凊參照圖2,在習知的非揮發性記憶體中,如一快閃 忑體’可以分為正常區塊區域2〇2和失能區塊區域2〇4。 在習知的技術中,當撕—記憶體區塊的錯誤位校正元的 數目低於-預設值時,可以將此域體區塊放置在正常區 ,區,搬中。藉此,快閃記憶體就可以對正常區塊區域 2〇2中的記憶體區塊正常地進行資料的存取。 200921704 二 J υ :7厶! w JL. LU/U/u 」目對地’當鑛-記憶體輯巾的錯誤校正位元的數 ’例如高於4時,代表此記憶體 區塊在儲餘料時會有資料錯誤出現,此,習知的技術 會將此記㈣區塊放置在失能區塊區域2()4卜使得下次 在儲存資料時,不會再儲存到位在失能輯區域辦中的 記憶體區塊。當失能區塊區域204沒有可用的空間時,則 快閃記憶體將會被鎖住,而無法正常寫人新的資料。
Lj 雖然正常區塊區域中的記憶體區塊都是堪用的記憶體 區塊,_事實上’有許多堪用的記憶體區塊都是在失能 的邊緣。例如,若是上述的預設值為4時,則可能有些記 憶體區塊的錯誤校正位元數目就剛好等於4,或是等於3。 也就是說,只要這些記憶體區塊再出現i至2個錯誤校正 位兀’、則就要從正常區塊區域202移至失能區塊區域綱 中]然而,習知的非揮發性記憶體在儲存資料時,並不會 =所儲存的記憶塊有多少的錯誤校錄元。因此: 若是經常對這些在失能邊緣的記憶體區塊進行資料的存 取,就會加速這些記憶體區塊達到失能的狀態,使得非揮 發性§己憶體的使用壽命會相對地縮短。 【發明内容】 因此,本發明的目的就是在提供一種儲存裝置,可以 具有較長的使用壽命。 另外’本發明提供一種資料存取的方法,可以適用於 儲存裝置,並且可以延長儲存裝置的使用壽命。 、 本發明也提供一種記憶體區塊的管理方法,可以有效 200921704 的管度’以延長其使用的壽命。 本lx月如t、一種儲存裝置,包括— _ ,元和-記憶體單元。介面 =制;存取 ,取控制單元_記憶體單元。存取控制 接咖,並將其儲存在記憶體單二= 至-資料傳輸介面上傳輸猎兀=取的資料送 Ο 區塊和多數個區塊區域。1中二每體 η , 母―自己憶體區塊分別且右 外,立元’而n為大於等於1的正整數:此 同數別具有不同的儲存優先權,而具有相 區= 位70的記憶體區塊可以被放置在相同的 二祐二,亚且ΐ有愈少錯誤校正位元的記憶體區塊可 置在具有愈尚儲存優先權的區塊區域十。藉此,存 而!可以依據每—區塊區域之儲存優先權的高低, :貝料依序存入各區塊區域内的記憶體區塊中。 、 …f另—觀點來看,本發明提供-種資料的讀取方法, j 碩取儲存在上述儲存裝置中的資料。本發明包括從i 中―,憶體區塊中讀取資料,並錄查所讀取之記憶體區 鬼内是否有位元發生錯誤。當所讀取之記憶體區塊内有位 元發生錯誤時,則校正發生錯誤的位元,並且將其標示為 二錯誤校正位元。另外,依據所讀取之記憶體區塊内錯誤 才父正位元的數目,而決定其所在的區塊區域,使得每一區 塊區域中之記憶體區塊所具有的錯誤校正位元的數目都是 相同的。其中,每一區塊區域具有不同的儲存優先權,而 200921704
具有愈少錯誤校正位元的記憶體區塊可以被放置 咼儲存優先權的區塊區域中。 /、 i 從另一觀點來看,本發明提供一種資料的儲存方 ^提❹數純㈣域,其分別具有儲存優 • 相’並且提供多數個記憶體區塊’可以分別位於其中—區 塊區域中。另外,這些記憶體區塊分別具有η位元的錯ς Ϊ正位!^而η為大於等於1的正整數。其中,具有“ 〇 ^目錯誤权正位元的記憶體區塊可以被放置於相同的區塊 ; 區,中。藉此,本發明可以依據每一區塊區域的儲存優先
榷尚低,而將資料依序儲存在每一區塊區域中的記情 塊中。 〜 (HE 從另一觀點來看,本發明提供一種儲存裝置的資料存 取方法~包括&供多數個區塊區域,其分別具有不同的儲 存優先權,並且提供多數個記憶體區塊,分別具有η位元 j錯誤校正位元,而η為大於等於1的正整數。另外,在 讀取其中一記憶體區塊内的資料時,可以依據所讀取之記 ° ㈣體區塊f錯誤校正位元的數目,而決定其所在的區塊區 ,二使得每一區塊區域中的記憶體區塊具有相同數目的錯 决才父正位兀,並且具有愈少錯誤校正位元的記憶體區塊可 以被放置在具有愈高儲存優先權的區塊區域中。此外,在 儲存^料至儲存裝置時,可以依據每一區塊區域的儲存優 先權尚低,而將資料依序儲存在各區塊區域中的記憶體區 塊中。 從另一觀點來看,本發明提供一種記憶體區塊的管理 200921704 ZJOy^LWi.UOCMl 方法&包括&供多數個區塊區域,其分別具有不同的儲存 優先權。另外,檢查記憶體區塊中錯誤校正位元的數目。 藉此,本發明可以依據記憶體區塊之錯誤校正位元的數 目胃,而決定將該記憶體區塊存放至其中—區塊區域中,使 得在進行資料的儲存時,能決定使用此記憶體區塊來放置 資料的順位。 、在本發明的實施例中,區塊區域包括多數個正常區塊 區域和一失能區塊區域。當記憶體區塊中錯誤校正位元的 ,目未大於一預設值時’則將記憶體區塊放置到其中一正 常區塊區域中。反之,當記憶體區塊中錯誤校正位元的數 目大於預。又值日守,則將此記憶體區塊放置到失能區塊區域 中,以不考慮利用此記憶體區塊儲存資料。 立,於本發明可以將具有相同數目之錯誤校正位元的記 k體區塊放置在相同的區塊區域中,因此使用者可以藉由 本發明有效地管理儲存裝置健康度。另外,由於本發明在 儲存資料時,是依據每—區塊區域之儲存優先權的高低來 儲存資料。因此’本發明可以有效地延長儲存裝置的使用 壽命。 “為讓本發明之上述和其他目的、特徵和優點能更明顯 易懂,下文特舉較佳實施例,並配合所附圖式,作詳細說 明如下。 【實施方式】 圖3繪示為依照本發明之一較佳實施例的一種儲存裝 置的内邛功此方塊圖。請參照圖3,本發明所提供的儲存 200921704 裝置300 ’可以包括介面單元302、存取控制單元304和記 憶體單兀306。介面單元302可以耦接資料傳輸介面342 和存取控制單元304,而存取控制單元3〇4則可以耦接記 憶體單元306。藉此,存取控制單元3〇4可以將介面單元 3〇2從資料傳輸介面342上接收的資料,儲存在記憶體單 元306中。另外,存取控制單元也可以從記憶體單元 讀取資料,並且藉由介面單A 3〇2送至資料傳輸介面 342上傳輸。在本實施例中,資料傳輸介面342例如是無 * 線或有線的傳輸介面,如一通用序列匯流排。 記憶體單元306例如是快閃記憶體,其可以具有多數 個區塊區域,例如312、314、316、318、32()和切。另 外’記憶體單元306還可以具有多數個記憶體區塊,例如 332、334、336和338 ’可以被分別放置於區塊區域312、 3中 14、^6^8、32G和322至少其中之—内。在本實施例 -A區域可以分為正常區塊區域312、3l4、、別 Ι,ί 失能區塊區域322。其中,存取㈣單元遍 區㈣2中的記憶體區塊(⑽ 明。的存取’軸的原因可以參照以下各段的說 櫂,H區塊區域分別具有不_儲存優先 314 項區域312具有最高的儲存優先權,區塊區域 外,每-32G則具有最低的儲存優先權。另 而心具有^元的錯誤校正位元, ' 、整數。在本實施例中,具有相同數 200921704 ^JUy^,LWl.uUWu 記憶體區塊,可以被放置在同—區塊區 ^例如,區塊區域312中所存放的記憶體區塊,都具 固錯疾校正位元。換句話說,就是區塊區域312中所 子放的兄憶體區塊’都是完全正常的記憶體區塊。 另外具有愈少錯誤校正位元的記憶體區塊,可以被 放置在具有愈高儲存優先權的區塊區域中。例如,完全沒 有錯誤校正位元的記憶體區塊,可以放置在區塊區域312 中,而僅具有一錯誤校正位元的記憶體區塊則可以存放在
區塊區域314中,以此類推。 圖4繪示為依照本發明之一較佳實施例的一種資料之 讀取方法的步驟流程圖。請合併參照圖3和圖4,當存取 控制單元304接收一存取指令ACC,要從記憶體單元306 中讀取資料時’可以如步驟S402所述,從對應的記憶體 區塊中讀取資料。接著,存取控制單元304可以進行步驟 S404,就是檢查所讀取之記憶體區塊内,是否有位元發生 錯誤。 當存取控制單元304發現所讀取之記憶體區塊内沒有 錯誤的位元時(就是步驟S404所標示的“否”),則存取控 制單元304在讀取完資料後,可以維持所讀取之記憶體區 塊在目前的區塊區域中’也就是步驟S406所述。相對地’ 當存取控制單元304發現所讀取之記憶體區塊内有位元發 生錯誤時(就是步驟S404所標示的“是”),則可以如步驟 S408所述,校正發生錯誤的位元,並將其標示錯誤校正位 元0 10 ο ο 200921704 另外,存取控制單元304還可以如步驟S41〇所述, 判斷所讀取的記憶體區塊中,錯誤校正位元的數目是否超 過一預設值。在本實施例中,此預設值例如等於4。當存 取控制單元304發現所讀取的記憶體區塊^,錯誤校正位 數目已經超過預設值時(就是步驟S41〇所標示的 是”),代表若是資料存在此記憶體區塊中可能會發生較 高的錯誤率。因此,存取控制單元304可以進行步驟S412, 就是將所讀取的記憶體區塊移至失能區塊區域322中。藉 此’當存取控制單元304下次要儲存資料時,就不會考慮 位於失能區塊區域322中的記憶體區塊。 反之’若是所讀取的記憶體區塊中,錯誤校正位元的 目並未超過預設值時(就是步驟S410所標示的“否,,), =取控制單元删就可以依據錯誤校正位元=,)而 正*=414的敘述’將所讀取的記憶·塊移至對應的 域中。例如,存取控制單元竭讀取區塊區 輕式碼發生3體^ ^内的資料時’發現有1位元的 示為錯誤校正錯誤位元’並且將其標 的錯誤校正位t因^ 體區塊332内僅有1位元 區』::m332從區峨-移至--常 314中。持在目丽的區塊區域中,假設是區塊區域 圖 纷示為依 照本發明之一較佳實施例的一種資料之 200921704 Ο Ο 儲存方法的步驟流程圖。請合併參照圖3和圖5,當介面 單元302從資料傳輸介面342接收資料,要存入儲存装爹 3〇〇時,介面單元302可以先將接收到的資料傳送給存取 控制單元304。如步驟s5〇2所述,而存取控制單元3〇4 < 以依據存取指令ACC,而先將一資料儲存路徑指向具有最 咼儲存優先權的區塊區域,假設是區塊區域312。如上所 述,區塊區域312内所放置的記憶體區塊,如332和334, 可以都疋凡整的記憶體區塊,並沒有錯誤校正位元。因此, 這些記憶體區塊可以被時常進行資料的存取。 另外,存取控制單S 304還可以如步驟S5〇4所述, 檢查目前資料儲存路徑所指向的區塊區域中是否有多餘的 儲存空間來儲存資料。以目前來說,f料路徑是指向具有 ,高儲存優先權的區塊區域,也就是區塊區域312。因此, 存取控制單元304就可以先檢查區塊區域312内的纪情體 區塊是否還有多餘的空間可,存資料。假細 312内還有多餘的儲存空間可以 °又二°°或 S504所標示的“是,,),則存取控_貝料(也就是步驟 步釋S506,就是將資料存在目前資^^ 3()4就可㈣行 域(也就是區塊區域抑中。叫路麵指向之區塊區 反之’若是存取控制單元3〇4檢杳的 區域312已經沒有多餘的儲存空問^、、、、° ,χ區魂 S508,就是檢查目前資料路徑所指‘:區^:以,打步驟 最低的儲存優先權。由於目前資料是否具有 為312,而區塊區域312並不具有最低财子優先權的區^ 12 200921704 區域(也就是步驟S508所標示的“否”),因此存取控制單 元304就可以將貧料路徑指向具有下一級儲存優先權的區 塊區域,也就是步驟S510。
。假設,區塊區域314的儲存優先權的順位是次於區塊 區域312 ’而其巾放置的記憶體區塊纏具有丨位元的錯 誤校正位元。因此,當區塊區域312沒有多餘的儲存空間 來存放資料時,則存取控制單元3〇4可以將資料路徑指向 區塊區域314 ’並且繼續重複S5〇4等步驟,直找到有多餘 儲存空間的區塊區域可以儲存資料。 ' η在此,假設在記憶體單元3〇6中,區塊區域32〇是具 有最低儲存優先權的區塊區域。則若是存取控制單元 一直將貧料儲存路徑從區塊區域312依序指向到區塊區域 320’每一區塊區域都沒有多餘的儲存空間,而在進行步驟 S508時,又發現區塊區域32()是具有最低優先權的區塊區 知、’而區塊區域320亦沒有多餘空間可供儲存。此時,因 ^區塊區域322為失能區塊區域,其内部放置的記憶體區 塊並不會被考油來儲存資料。S此存取控制單元3〇4可 以直接進行步釋如2 ’就是放棄資料的儲存。 =據上述的綱,本發明在圖6 t,提供依照本發明 -父佳實施例的—種記憶體區塊之f理方法的步驟流程 i供Ιϊ翻於—儲存裝置。請參照圖6,在本實施例所 不同、的包括提供多數區塊區域,並且分別具有 這就如步驟S602所述。在本實施例中, --&域可以包括—❹數個正f區塊區域和一失能 13 200921704 區塊區域,其用途可以參照以上的敘述。接著,本發明可 以進行步驟S604’就是檢查一或多數個正常區塊區域的記 憶體區塊中錯誤校正位元的數目。藉此,本發明就可以依 據被檢查之記憶體區塊中錯誤校正位元的數目,而選擇— 區塊區域來放置此記憶體區塊,也就是步驟§606。 洋細地來看步驟S606 ’在本實施例中,當進行完步驟 S604後,可以如步驟S608所述,判斷被檢查之記憶體區 塊中錯誤校正位元的數目是否超過一預設值。若是被檢查 之記憶體區塊中錯誤校正位元的數目並沒有超過預設& (就是步驟S608所標示的“否”)’則代表被檢查的記憶體 區塊可能是完全正常或是堪用。因此,本發明可以依據此 記憶體區塊内錯誤校正位元的數目,而選擇一正常區塊區 域來存放此記憶體區塊,就是步驟S61〇。 一反之,若是判斷發現被檢查的記憶體區塊内錯誤校正 位元的數目超過預設值(就是步驟S608所標示的“是,,), 則代表此記憶體區塊可能已經無法正常的儲存資料。因 〇 此’本發明可以如步驟S612所述,將此記憶體區塊放置 f失能區域巾。藉此,就可崎免將資料儲存在此記 憶體區塊中。在-些實施例中,當要將錯誤校正位元超過 預設值的記憶體區塊放置到失能區塊區域時,發現失能區 塊區域中已經沒有空間時,則代表此儲存装置可能已經不 堪使用。因此’本發明就可以鎖住此儲存裝置,而不讓使 用者繼續進行資料的儲存。 綜上所述,由於本發明可以依據記憶體區塊中錯誤校 14 200921704 塊ΐΠ 合適邮魅域來械記憶體區 === 延長儲存裝置的使用壽命。此外,^ 同二ί』區=錯:杈正位7^的記憶體區塊可以被放置在 裝置的健^度。’ *此使用者可轉有效率地檢視此儲存 發明已喊佳實施觸露如上,然其並非用以 χ明,,任何熟習此技藝者,在*脫離本發明之精神 軏圍内,當可作些許之更動與潤飾,因此 乾圍當視後社巾請專職_界定者鱗。 保農 【圖式簡單說明】 圖1繪示為一種非揮發性記憶體架構的示意圖。 圖2繪示為一種習知之記憶體區塊之管理方法的示意 圖0 ^
圖3繪示為依照本發明之一較佳實施例的一種儲存裝 置的内部功能方塊圖。 &圖4繪不為依照本發明之一較佳實施例的一種資料之 5買取方法的步驟流程圖。 圖5繪不為依照本發明之一較佳實施例的一種資料之 儲存方法的步驟流程圖。 圖6繪不為依照本發明之一較佳實施例的一種記憶體 區塊之管理方法的步驟流程圖。 【主要元件符號說明】 100 ·非揮發性記憶體 15 200921704 102、104和106 :記憶體區塊 202 :正常區塊區域 204 :失能區塊區域 300 :儲存裝置 302 :介面單元 304 :存取控制單元 306 :記憶體單元 312、314、316、318、320、322 :區塊區域 332、334、336、338 :記憶體區塊 342 :資料傳輸介面 ACC :存取指令 S402、S404、S406、S408、S410、S412、S414 :資料 之讀取方法的步驟流程 S502、S504、S506、S508、S510、S512 :資料之儲存 方法的步驟流程 S602、S604、S606、S608、S610、S612 :記憶體區塊 之管理方法的步驟流程 16

Claims (1)

  1. 200921704 十、申請專利範®·· 1.—種儲存裝置,包括: 的傳輸;單元帛以透過—貧料傳輸介面,而進行資料 存取控f彳單元,_接該介面單元,肖以存取資 以及 ' 二記賴單元,_接該縣控鮮元,且該記憶 兀具有·· C 多數個記憶體區塊,用以存放資料,而每一該必 記憶體區塊分別具有η位元的錯誤校正位元, ^ 於等於1的正整數;以及 ^马大 一多數個區塊區域,具有不同的儲存優先權,而具 ,相同數目之錯誤校正位元的記憶體區塊被放置在相同的 區塊區域中丄且具有愈少錯誤校正位元的記憶體區塊被放 置在具有愈高儲存優先權的區塊區域中, Ο —其^該存取控制單元依據每一該些區塊區域之儲存優 先權的高低,而將資料依序存入各該些區塊區域内的記俛 體區塊中。 2. 如申請專利範圍第1項所述之儲存裝置,其中用以 存放具有較少錯誤校正位元之記憶體區塊的區塊區域,具 有較尚的優先權,讓該存放控制單元在進行資料儲 先考慮存放。 3. 如申請專利範圍第1項所述之儲存裝置,其中當該 存取控制單元要儲存資料時,其中該些區塊區域包括了 Λ 17 200921704 夕數個正吊區塊區域,而每一該些正常區塊區域内 記憶體區塊所具有的錯誤校正位元數目,都不大於 值;以及 一失旎區塊區域’而該失能區塊區域内的記憶體區塊 職杨錯位校正位元數目,敎於該職值,以致於該 存取控制單元在儲存資料時,不考慮存放在該失能區塊區 域内的記憶體區塊。 4.如中請專利範圍第1項所述之儲存裝置,其中該記 ’ 1¾體單元為非揮發性記憶體。 5·如申請專利範圍第4項所述之儲存裝置,其中該非 揮發性5己彳思體為快閃記憶體。 6.如申請專利範圍第1項所述之儲存裝置,其中該資 料傳輸介面為一無線或有線的傳輸介面其中之一。 7·如申請專利範圍第6項所述之儲存裝置,其中該有 線傳輸介面為一通用序列匯流排。 8·如申請專利範圍第3項所述之儲存裝置,其中該預 U 設值至少大於等於4。 9.一種資料的讀取方法,適用於具有多數個記憶體區 塊的記憶體裝置,且該些記憶體區塊被分別放置在多數個 區塊區域至少其中之一内,而該讀取方法包括下列步驟: 從該些記憶體區塊至少其中之一讀取資料; 檢查所讀取之記憶體區塊内是否有位元發生錯誤; 當所讀取之記憶體區塊内有位元發生錯誤時,則校正 發生錯誤的位元’並將其標示為一錯誤校正位元;以及 18 200921704 、—依據所讀取之記憶體區塊内錯誤校正位元的數目,而 決疋其所在的區塊區域,使得每—區塊區域巾之記憶體區 塊所具有的錯誤校正位元的數目都是相同的,其中每一該 些區塊區域具有不同的儲存優先權,而具有愈少錯誤校^ 位元的記憶體區塊被放置在具有愈高儲存優先權的區塊區 域中。 10. 如申請專利範圍第9項所述之資料的讀取方法,豆 中該些區塊區域包括多數個正常區塊區域和一失能區塊區 域。 11. 如申凊專利範圍第10項所述之資料的讀取方法, 其中決定每一該些記憶體區塊所在之區塊區域的步驟,包 括下列步驟: 判斷所項取之記憶體區塊中錯誤校正位元的數目是否 大於一預設值; ‘所§買取之§己憶體區塊中錯誤校正位元的數目未大於 該預設值時,則將所讀取之記憶體區塊從目前的區塊區域 移至一正常區塊區域中或維持在目前的區塊區域中;以及 冨所5買取之δ己憶體區塊中錯誤校正位元的數目大於該 預设值時’則將所讀取之記憶體區塊移至該失能區塊區域 中’使得下次儲存資料時’不考慮儲存在位於該失能區塊 區域中的記憶體區塊。 12. 如申請專利範圍第9項所述之資料的讀取方法,其 中當檢查所項取之§己憶體區塊沒有位元發生錯誤時,則維 持所讀取之記憶體區塊在目前的區塊區域中。 19 200921704 13. 如申請專利範圍第9項所述之資料的讀取方法,其 中該記憶體裝置為非揮發性記憶體儲存裝置。 /' 14. 一種資料的儲存方法,適用於一儲存裝置,而該儲 存方法包括下列步驟: 提供多數個區塊區域,其分別具有不同的儲存優先權; 提供多數個記憶體區塊,分別位於該些區塊區域至少 其中之一中,且該些記憶體區塊分別具有11位元的錯誤校 正位元,其_ n為大於等於(的正整數,而具有相同數目 錯誤校正位元的記憶體區塊位於相同的區塊區域中;以及 依據該些區塊區域的儲存優先權高低,而將資料依序 儲存在該些區塊區域中之該些記憶體區塊中。 15.如申請專利範圍帛14項所述之資料的儲存方法, 其中該些區塊區域包括: 值;以及 多數個正常區塊區域,而每—該些正常區塊區域内的 心fe體區塊所具有的錯誤校正位元數目,都不大於—預設
    二失能區塊區域,而該失能區塊區域⑽記憶體區塊 ^有的錯位校正位元數目,都大於該預設值,以致在儲 存貝科時,不考慮存放在該失能區塊區域_記憶體區塊。 16,如中料纖圍第15摘述之資料_存方法, 列料依序儲存在該些正常區塊區域之步驟,包括下 將-資料儲存路徑指向具有最高儲存優_的區塊區 20 200921704 多餘顺存路料指⑽區塊_中是否有 的儲存空間時,貝:::二:指向的區塊區域中還有多餘 的區塊區域中,·貝科存在目前該資料儲存路經所指向 的儲資指向的區塊區域中沒有多餘 區域/儲存路徑所指向的區塊 儲存優先權時貝以有最低的 資料的儲存;以及 、置,又有儲存二間,並放棄 當目前該資料儲存路徑所指向的 低的儲存優先權時,則將該 ^非具有最 儲龍域,以進行#料==向具有下一級 17. 如申明專利範圍第14 其中該儲存裝置騎揮發性記《儲存裝置存方法, 18. —種儲存裝置的資料存取方勺幻 提供多數個區塊區域,其分別 ^ |]乂驟: 提供多數個記憶體區塊,分0有有不1的儲存優先權; 位元,其中η為大於等於=有η位凡的錯誤校正 在讀取該些記憶體區塊其中之— 讀取之記憶體區塊中錯誤校正位元的二貝據所 的區塊區域,使得每一區塊區域中的記憶斤在 數目的錯誤校正位元’且具有愈少錯誤紅=的 200921704 區塊被放置在具有愈高儲存優先權的區塊區域中;以及 在儲存資料至該儲存裝置時,依據該些區塊區域的儲 存優先權高低,而將資料依序儲存在該些區塊區域中之該 些記憶體區塊中。 19.如申請專利範圍第18項所述之資料存取方法,其 中該些區塊區域包括多數個正常區塊區域和—失能區塊^ 域。 °° 20_如申請專利範圍第19項所述之資料存取方法,其 中決定每一該些記憶體區塊所在之區塊區域的步驟,更包 括下列步驟: 判feif所頃取之§己憶體區塊中錯誤校正位元的數目是否 大於一預設值; 菖所讀取之記憶體區塊中錯誤校正位元的數目未大於 該預設值時,則將所讀取之記憶體區塊從目前的區塊區域 移至另一正常區塊區域中;以及 當所讀取之記憶體區塊中錯誤校正位元的數目大於該 預設值時’則將所讀取之記憶體區塊移至該失能區塊區域 中使付在儲存貧料時’不考慮儲存在位於該失能區塊區 域中的記憶體區塊。 21. 如申請專利範圍第18項所述之資料存取方法,其 中該儲存裝置為非揮發性記憶體儲存裝置。 22. —種記憶體區塊的管理方法,適用於—儲存裝置, 而該管理方法包括下列步驟: 提供多數個區塊區域’其分別具有不同的儲存優先權; 22 200921704 檢查該記憶體區塊中錯誤校正位元的數目;以及 依據§亥5己憶體區塊之錯誤校正位元的數目,而決定將 該記憶體區塊存放至該些區塊區域其中之一,使得在進行 貝料的儲存時’能決定使用該記憶體區塊來放置資料的順 位。 23.如申請專利範圍第22項所述之記憶體區塊的管理 方法,其中該些區塊區域包括多數個正常區塊區域和一失 能區塊區域。 24‘如申請專利範圍第23項所述之記憶體區塊的管理 方法,更包括下列步驟: 判斷該記憶體區塊中錯誤校正位元的數目是否大於一 預設值; Λ 當該記憶體區塊中錯誤校正位元的數目未大於該預設 值時,則將該記憶體區塊放置到該些正常區塊區域其中之 —中;以及 當該記憶體區塊中錯誤校正位元的數目大於該預設值 時,則將該記憶體區塊放置到該失能區塊區域中,以不考 慮利用該記憶體區塊儲存資料。 23
TW096142491A 2007-11-09 2007-11-09 Storage apparatus and method for accessing data and for managing memory block TWI362044B (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW096142491A TWI362044B (en) 2007-11-09 2007-11-09 Storage apparatus and method for accessing data and for managing memory block
US12/022,112 US8176382B2 (en) 2007-11-09 2008-01-29 Storage apparatus, method for accessing data and for managing memory block
US12/265,417 US8200919B2 (en) 2007-11-09 2008-11-05 Storage device with self-condition inspection and inspection method thereof
US13/437,936 US8327227B2 (en) 2007-11-09 2012-04-03 Storage apparatus, method for accessing data and for managing memory block

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW096142491A TWI362044B (en) 2007-11-09 2007-11-09 Storage apparatus and method for accessing data and for managing memory block

Publications (2)

Publication Number Publication Date
TW200921704A true TW200921704A (en) 2009-05-16
TWI362044B TWI362044B (en) 2012-04-11

Family

ID=40624879

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096142491A TWI362044B (en) 2007-11-09 2007-11-09 Storage apparatus and method for accessing data and for managing memory block

Country Status (2)

Country Link
US (3) US8176382B2 (zh)
TW (1) TWI362044B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311176B1 (en) * 2012-11-20 2016-04-12 Emc Corporation Evaluating a set of storage devices and providing recommended activities
US9514837B2 (en) * 2015-01-20 2016-12-06 Sandisk Technologies Llc Selective online burn-in with adaptive and delayed verification methods for memory
KR20210081636A (ko) * 2019-12-24 2021-07-02 에스케이하이닉스 주식회사 우선 순위 결정 회로 및 그 동작 방법

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819231A (en) * 1983-01-20 1989-04-04 Nippon Hoso Kyokai Framing timing detection circuit for a character code broadcasting system
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
JP3178909B2 (ja) * 1992-01-10 2001-06-25 株式会社東芝 半導体メモリ装置
US5740349A (en) * 1993-02-19 1998-04-14 Intel Corporation Method and apparatus for reliably storing defect information in flash disk memories
US5603001A (en) * 1994-05-09 1997-02-11 Kabushiki Kaisha Toshiba Semiconductor disk system having a plurality of flash memories
US5661848A (en) * 1994-09-08 1997-08-26 Western Digital Corp Multi-drive controller with encoder circuitry that generates ECC check bytes using the finite field for optical data for appending to data flowing to HDA
US6078946A (en) * 1996-09-10 2000-06-20 First World Communications, Inc. System and method for management of connection oriented networks
KR100205006B1 (ko) 1996-10-08 1999-06-15 윤종용 자동 결함 블럭 맵핑 기능을 갖는 반도체 메모리 장치
CA2209238C (en) * 1997-06-27 2000-07-25 Bell Canada Method and apparatus for monitoring selected telecommunications sessions in an intelligent switched telephone network
US6044438A (en) * 1997-07-10 2000-03-28 International Business Machiness Corporation Memory controller for controlling memory accesses across networks in distributed shared memory processing systems
US6035432A (en) * 1997-07-31 2000-03-07 Micron Electronics, Inc. System for remapping defective memory bit sets
US5974564A (en) * 1997-07-31 1999-10-26 Micron Electronics, Inc. Method for remapping defective memory bit sets to non-defective memory bit sets
US6000006A (en) * 1997-08-25 1999-12-07 Bit Microsystems, Inc. Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage
KR100319893B1 (ko) 1999-07-01 2002-01-10 윤종용 리던던시 메모리 셀 블락을 선택적으로 차단하여 테스트함으로써 불량 메모리 셀의 위치 판별이 용이한 반도체 메모리 장치
US6725343B2 (en) * 2000-10-05 2004-04-20 Hewlett-Packard Development Company, L.P. System and method for generating cache coherence directory entries and error correction codes in a multiprocessor system
JP4059472B2 (ja) * 2001-08-09 2008-03-12 株式会社ルネサステクノロジ メモリカード及びメモリコントローラ
US7290184B2 (en) * 2001-08-23 2007-10-30 Seagate Technology Llc Emulation system for evaluating digital data channel configurations
US20030058762A1 (en) * 2001-09-26 2003-03-27 Schultz Mark Alan Defect detection of recordable storage media
US7246268B2 (en) * 2002-01-16 2007-07-17 Sandisk Corporation Method and apparatus for dynamic degradation detection
US7171594B2 (en) * 2002-03-06 2007-01-30 Hewlett-Packard Development Company, L.P. Pausing a transfer of data
US7647545B2 (en) * 2006-02-06 2010-01-12 Radio Systems Corporation Signal and protocol for remote dog trainer signaling with a forward error correction
US7512847B2 (en) * 2006-02-10 2009-03-31 Sandisk Il Ltd. Method for estimating and reporting the life expectancy of flash-disk memory
US8738977B2 (en) * 2006-08-31 2014-05-27 Agere Systems Llc Yield-enhancing device failure analysis
KR101413736B1 (ko) * 2007-09-13 2014-07-02 삼성전자주식회사 향상된 신뢰성을 갖는 메모리 시스템 및 그것의웨어-레벨링 기법

Also Published As

Publication number Publication date
US20090125783A1 (en) 2009-05-14
US8200919B2 (en) 2012-06-12
US8327227B2 (en) 2012-12-04
US8176382B2 (en) 2012-05-08
TWI362044B (en) 2012-04-11
US20090125759A1 (en) 2009-05-14
US20120192033A1 (en) 2012-07-26

Similar Documents

Publication Publication Date Title
JP4323707B2 (ja) フラッシュメモリの欠陥管理方法
US10685037B2 (en) Volume cohorts in object-redundant storage systems
JP5944941B2 (ja) クロス・ページ・セクタ、マルチ・ページ符号化およびパー・ページ符号化を使用して多重レベル・セル・フラッシュ・メモリ・デバイスにデータを記憶するための方法および装置
TWI324303B (zh)
US8756464B2 (en) Flash memory device and flash memory programming method equalizing wear-level
US8554994B2 (en) Distributed storage network utilizing memory stripes
US7512864B2 (en) System and method of accessing non-volatile computer memory
TWI543178B (zh) 解碼方法、記憶體儲存裝置及記憶體控制電路單元
JP5010756B2 (ja) メモリ装置
TW200931442A (en) Memory controller supporting rate-compatible punctured codes
KR20170062254A (ko) 데이터 저장 장치 및 그것의 동작 방법
TW200921704A (en) Storage apparatus and method for accessing data and for managing memory block
TW201044408A (en) Memory system and computer system
US8869009B2 (en) Read commands specifying error performance
JP2012003569A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN111147084B (zh) 多通道并行译码器及其译码方法
CN101436161B (zh) 存储装置与其数据存取和存储器区块管理方法
CN106527984A (zh) 一种用于固态硬盘的存储方法及其系统
JP2008158908A (ja) メモリコントローラ及びフラッシュメモリシステム並びにフラッシュメモリの制御方法
JP2008527890A (ja) 誤り訂正符号
TWI446348B (zh) 快閃記憶體的存取裝置及方法
JP2012038226A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN111162794A (zh) 译码数据缓存方法和译码器
TW200937445A (en) Mapping management methods and systems
JP2012003570A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法