亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

數(shù)據(jù)儲(chǔ)存裝置以及數(shù)據(jù)存取方法與流程

文檔序號(hào):11828618閱讀:246來(lái)源:國(guó)知局
數(shù)據(jù)儲(chǔ)存裝置以及數(shù)據(jù)存取方法與流程

本發(fā)明是關(guān)于一種數(shù)據(jù)儲(chǔ)存裝置,特別是關(guān)于可對(duì)根據(jù)壞列數(shù)據(jù)跳過(guò)損壞的壞列。



背景技術(shù):

快閃存儲(chǔ)器為一種可以被電抹除并且重新寫入的非易失性存儲(chǔ)器,并且主要是應(yīng)用在存儲(chǔ)卡、USB隨身盤、eMMC以及固態(tài)硬盤(Solid-State Disk)中,借以作為一般的儲(chǔ)存與電腦裝置和數(shù)字產(chǎn)品間的數(shù)據(jù)的轉(zhuǎn)運(yùn)。

快閃存儲(chǔ)器是包括眾多的存儲(chǔ)區(qū)塊(block),并且每一存儲(chǔ)區(qū)塊具有多個(gè)用以儲(chǔ)存數(shù)據(jù)的儲(chǔ)存頁(yè)面(page)??扉W存儲(chǔ)器是以存儲(chǔ)區(qū)塊為單元進(jìn)行抹除,而以儲(chǔ)存頁(yè)面為單位進(jìn)行寫入。快閃存儲(chǔ)器于生產(chǎn)過(guò)程中,會(huì)因?yàn)榉蹓m或是光罩問(wèn)題,使得快閃存儲(chǔ)單元中的一整列(column)的數(shù)據(jù)都無(wú)法正確存取。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明所提供的數(shù)據(jù)儲(chǔ)存裝置以及數(shù)據(jù)存取方法可根據(jù)壞列數(shù)據(jù)跳過(guò)快閃存儲(chǔ)器中的壞列。

本發(fā)明提供一種數(shù)據(jù)儲(chǔ)存裝置。數(shù)據(jù)儲(chǔ)存裝置包括一快閃存儲(chǔ)器以及一控制器??扉W存儲(chǔ)器包括多個(gè)芯片,并且每一芯片包括由扇區(qū)所構(gòu)成的多條列。控制器被設(shè)置為用以根據(jù)一讀取命令或者一寫入命令,對(duì)快閃存儲(chǔ)器的列中的一第一列至一第N列進(jìn)行讀取或者寫入,并且根據(jù)一第一壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第一壞列數(shù)據(jù)的多條列,其中第一壞列數(shù)據(jù)包括一第一數(shù)據(jù)以及一第二數(shù)據(jù),第一數(shù)據(jù)為一起始地址,并且第二數(shù)據(jù)為一列數(shù)量。

在一實(shí)施例中,快閃存儲(chǔ)器更包括一壞列表,其中控制器更被設(shè)置為用以在讀取或者寫入的過(guò)程之前,讀取壞列表,以獲得第一壞列數(shù)據(jù)??刂破鞲? 設(shè)置為根據(jù)讀取命令或者寫入命令,判斷即將進(jìn)行存取的芯片,并讀取壞列表中相應(yīng)于即將進(jìn)行存取的芯片的數(shù)據(jù)。

在另一實(shí)施例中,壞列表更包括一第二壞列數(shù)據(jù),控制器更用以根據(jù)第二壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第二壞列數(shù)據(jù)的一條列,其中第二壞列數(shù)據(jù)包括一第三數(shù)據(jù),用以代表一條列的地址。

本發(fā)明提供另一種數(shù)據(jù)儲(chǔ)存裝置。數(shù)據(jù)儲(chǔ)存裝置包括一快閃存儲(chǔ)器以及一壞列表??扉W存儲(chǔ)器包括多個(gè)芯片,并且每一芯片包括由扇區(qū)所構(gòu)成的多條列。壞列表包括多個(gè)壞列數(shù)據(jù)用以記錄快閃存儲(chǔ)器中壞損的列,其中壞列數(shù)據(jù)包括至少一第一壞列數(shù)據(jù),每一第一壞列數(shù)據(jù)包括一第一數(shù)據(jù)以及一第二數(shù)據(jù),第一數(shù)據(jù)為一起始地址,并且第二數(shù)據(jù)為一列數(shù)量。

在一實(shí)施例中,壞列數(shù)據(jù)更包括至少一第二壞列數(shù)據(jù),第二壞列數(shù)據(jù)包括一第三數(shù)據(jù),用以代表一條列的地址。另外,壞列表更包括多個(gè)芯片區(qū)域分別用以儲(chǔ)存芯片的壞列數(shù)據(jù)。

數(shù)據(jù)儲(chǔ)存裝置更包括一控制器被設(shè)置為根據(jù)一讀取命令或者一寫入命令,判斷即將進(jìn)行存取的芯片,讀取壞列表中相應(yīng)于即將進(jìn)行存取的芯片的壞列數(shù)據(jù)。另外,控制器被設(shè)置為根據(jù)讀取命令或者寫入命令,對(duì)快閃存儲(chǔ)器的列中的一第一列至一第N列進(jìn)行讀取或者寫入,并且根據(jù)所讀取的壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于壞列數(shù)據(jù)的至少一條列。

本發(fā)明更提供一種數(shù)據(jù)存取方法,適用于一數(shù)據(jù)儲(chǔ)存裝置,其中數(shù)據(jù)儲(chǔ)存裝置包括一快閃存儲(chǔ)器,快閃存儲(chǔ)器包括多個(gè)芯片,并且每一芯片包括由扇區(qū)所構(gòu)成的多條列。數(shù)據(jù)存取方法包括:接收相應(yīng)于對(duì)列中的一第一列至一第N列進(jìn)行讀取或者寫入的一讀取命令或者一寫入命令;讀取一壞列表中相應(yīng)于即將進(jìn)行存取的芯片的至少一第一壞列數(shù)據(jù);以及根據(jù)讀取命令或者寫入命令,對(duì)快閃存儲(chǔ)器第一列至第N列進(jìn)行讀取或者寫入,并且根據(jù)所讀取的第一壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第一壞列數(shù)據(jù)的至少一條列,其中第一壞列數(shù)據(jù)包括一第一數(shù)據(jù)以及一第二數(shù)據(jù),第一數(shù)據(jù)為一起始地址,并且第二數(shù)據(jù)為一列數(shù)量。

附圖說(shuō)明

圖1為本發(fā)明所提供的一電子系統(tǒng)的一種實(shí)施例的方塊圖。

圖2為本發(fā)明所提供的一數(shù)據(jù)存取方法的一種實(shí)施例的流程圖。

附圖標(biāo)記說(shuō)明:

100 電子系統(tǒng);

120 主機(jī);

140 數(shù)據(jù)儲(chǔ)存裝置;

160 控制器;

162 運(yùn)算單元;

164 永久存儲(chǔ)器;

166 隨機(jī)存取存儲(chǔ)器;

180 快閃存儲(chǔ)器;

182 壞列表;

S200-S204 步驟。

具體實(shí)施方式

以下將詳細(xì)討論本發(fā)明各種實(shí)施例的裝置及使用方法。然而值得注意的是,本發(fā)明所提供的許多可行的發(fā)明概念可實(shí)施在各種特定范圍中。這些特定實(shí)施例僅用于舉例說(shuō)明本發(fā)明的裝置及使用方法,但非用于限定本發(fā)明的范圍。

圖1為本發(fā)明所提供的一電子系統(tǒng)的一種實(shí)施例的方塊圖。電子系統(tǒng)100包括一主機(jī)120以及一數(shù)據(jù)儲(chǔ)存裝置140。數(shù)據(jù)儲(chǔ)存裝置140包括一快閃存儲(chǔ)器180以及一控制器160,且可根據(jù)主機(jī)110所下達(dá)的命令操作??刂破?60包括一運(yùn)算單元162、一永久存儲(chǔ)器(如,只讀存儲(chǔ)器ROM)164以及隨機(jī)存取存儲(chǔ)器(RAM)166。永久存儲(chǔ)器164與所載的程序碼、數(shù)據(jù)組成固件(firmware),由運(yùn)算單元162執(zhí)行,使控制器160基于該固件控制該快閃存儲(chǔ)器180。隨機(jī)存取存儲(chǔ)器(RAM)166用以載入程序碼與參數(shù)以提供控制器160根據(jù)所載入的程序碼與參數(shù)動(dòng)作??扉W存儲(chǔ)器180包括多個(gè)芯片(die),并且每一芯片包括由扇區(qū)(sector)所構(gòu)成的多條列(column)以及多條行(row),其中快閃存儲(chǔ)器180中的扇區(qū)(sector)更被區(qū)分為多個(gè)區(qū)塊以及區(qū)塊中的多個(gè)頁(yè)面。值得注意的是,一 個(gè)用以儲(chǔ)存數(shù)據(jù)的扇區(qū)以及一個(gè)用以儲(chǔ)存錯(cuò)誤檢查碼(ECC Parity)的扇區(qū)可構(gòu)成一存儲(chǔ)器單元(chunk),其中存儲(chǔ)器單元是一個(gè)錯(cuò)誤檢查(ECC)的計(jì)算單位,但本發(fā)明不限于此。在其他實(shí)施例中,存儲(chǔ)器單元亦可由兩個(gè)用以儲(chǔ)存數(shù)據(jù)的扇區(qū)以及兩個(gè)用以儲(chǔ)存錯(cuò)誤檢查碼的扇區(qū)構(gòu)成。

值得注意的是,快閃存儲(chǔ)器于生產(chǎn)過(guò)程中,會(huì)因?yàn)榉蹓m或是光罩問(wèn)題,使得快閃存儲(chǔ)單元中的一整列(column)的數(shù)據(jù)都無(wú)法正確存取,損毀的列稱為壞列(bad column)。另外,在某些工藝中,快閃存儲(chǔ)單元容易產(chǎn)生連續(xù)的壞列。

在本發(fā)明的一實(shí)施例中,控制器160,被設(shè)置為用以根據(jù)一讀取命令或者一寫入命令,對(duì)快閃存儲(chǔ)器180的列中的一第一列至一第N列進(jìn)行讀取或者寫入,并且根據(jù)一第一壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第一壞列數(shù)據(jù)的多條列。值得注意的是,第一壞列數(shù)據(jù)包括一第一數(shù)據(jù)以及一第二數(shù)據(jù),第一數(shù)據(jù)為一起始地址,并且第二數(shù)據(jù)為一列數(shù)量。因此,控制器160可根據(jù)第一數(shù)據(jù)所相應(yīng)的起始地址定位至一地址,并且根據(jù)第二數(shù)據(jù)所相應(yīng)的列數(shù)量決定要從所定位的該地址開(kāi)始跳過(guò)幾條列,但本發(fā)明不限于此。舉例而言,當(dāng)需要跳過(guò)的列為50列時(shí),控制器160可根據(jù)第一壞列數(shù)據(jù)中的兩個(gè)數(shù)據(jù)跳過(guò)該50列,其中第一壞列數(shù)據(jù)中的第一數(shù)據(jù)以及第二數(shù)據(jù)僅需要兩個(gè)存儲(chǔ)器單元(chunk)的存儲(chǔ)器空間。

在另一實(shí)施例中,控制器160更用以根據(jù)一第二壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第二壞列數(shù)據(jù)的一條列。值得注意的是,第二壞列數(shù)據(jù)包括一第三數(shù)據(jù),用以代表一條列的地址。因此,控制器160可根據(jù)第二壞列數(shù)據(jù)中的第三數(shù)據(jù)所相應(yīng)的地址定位至一地址,以跳該地址所相應(yīng)的列,但本發(fā)明不限于此。舉例而言,當(dāng)需要跳過(guò)的列為50列時(shí),控制器160可根據(jù)第二壞列數(shù)據(jù)中的50個(gè)第二壞列數(shù)據(jù)中的50個(gè)第三數(shù)據(jù)跳過(guò)該50列,其中每一第三數(shù)據(jù)需要一個(gè)存儲(chǔ)器單元(chunk)的存儲(chǔ)器空間。因此,在本實(shí)施例中,控制器160需要讀取50個(gè)存儲(chǔ)器單元(chunk)的存儲(chǔ)器空間跳過(guò)50列。

在一實(shí)施例中,快閃存儲(chǔ)器180更用以儲(chǔ)存一壞列表182。壞列表182包括多個(gè)芯片區(qū)域分別用以儲(chǔ)存芯片的多個(gè)壞列數(shù)據(jù)。壞列數(shù)據(jù)用以記錄快閃存儲(chǔ)器180中壞損的列,其中壞列數(shù)據(jù)包括至少一第一壞列數(shù)據(jù)。如上所述,每 一第一壞列數(shù)據(jù)包括一第一數(shù)據(jù)以及一第二數(shù)據(jù),第一數(shù)據(jù)為一起始地址,并且第二數(shù)據(jù)為一列數(shù)量。在另一實(shí)施例中,壞列數(shù)據(jù)更包括至少一第二壞列數(shù)據(jù)。如上所述,第二壞列數(shù)據(jù)包括一第三數(shù)據(jù),用以代表一條列的地址。

控制器160更被設(shè)置為用以在讀取以及寫入的過(guò)程之前,讀取壞列表182,以獲得第一壞列數(shù)據(jù)及/或第二壞列數(shù)據(jù)。在一實(shí)施例中,數(shù)據(jù)儲(chǔ)存裝置140被上電后,控制器160將壞列表182自快閃存儲(chǔ)器180中載入隨機(jī)存取存儲(chǔ)器166,以在讀取以及寫入的過(guò)程之前直接從隨機(jī)存取存儲(chǔ)器166對(duì)壞列表182進(jìn)行讀取。另外,控制器160更被設(shè)置為根據(jù)讀取命令或者寫入命令,判斷即將進(jìn)行存取的芯片,并讀取壞列表182中相應(yīng)于即將進(jìn)行存取的芯片的數(shù)據(jù)。詳細(xì)而言,控制器160被設(shè)置為根據(jù)一讀取命令或者一寫入命令,判斷即將進(jìn)行存取的芯片,接著再讀取壞列表182中相應(yīng)于即將進(jìn)行存取的芯片的壞列數(shù)據(jù)。接著,控制器160根據(jù)讀取命令或者寫入命令,對(duì)快閃存儲(chǔ)器180的列中的一第一列至一第N列進(jìn)行讀取或者寫入,并且根據(jù)所讀取的壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于壞列數(shù)據(jù)的至少一條列。

圖2為本發(fā)明所提供的一數(shù)據(jù)存取方法的一種實(shí)施例的流程圖。數(shù)據(jù)存取方法適用于圖1所示的數(shù)據(jù)儲(chǔ)存裝置140。流程開(kāi)始于步驟S200。

在步驟S200中,控制器160接收相應(yīng)于對(duì)列中的一第一列至一第N列進(jìn)行讀取或者寫入的一讀取命令或者一寫入命令。

接著,在步驟S202中,控制器160讀取一壞列表182中相應(yīng)于即將進(jìn)行存取的芯片的至少一第一壞列數(shù)據(jù)及/或至少一第二壞列。

接著,在步驟S204中,控制器160根據(jù)讀取命令或者寫入命令,對(duì)快閃存儲(chǔ)器180第一列至第N列進(jìn)行讀取或者寫入,并且根據(jù)所讀取的第一壞列數(shù)據(jù)及/或第二壞列數(shù)據(jù),在讀取或者寫入的過(guò)程中跳過(guò)第一列至第N列中相應(yīng)于第一壞列數(shù)據(jù)的至少一條列。詳細(xì)而言,控制器160被設(shè)置為根據(jù)一讀取命令或者一寫入命令,判斷即將進(jìn)行存取的芯片,接著再讀取壞列表182中相應(yīng)于即將進(jìn)行存取的芯片的壞列數(shù)據(jù)。值得注意的是,控制器160是根據(jù)所讀取的第一壞列數(shù)據(jù)中的第一數(shù)據(jù)所相應(yīng)的起始地址定位至一地址以及根據(jù)第一壞列數(shù)據(jù)中的第二數(shù)據(jù)所相應(yīng)的列數(shù)量決定要從所定位的該地址開(kāi)始跳過(guò)幾條列,并且根據(jù)第二壞列數(shù)據(jù)中的第三數(shù)據(jù)所相應(yīng)的地址定位至一地址,以跳 該地址所相應(yīng)的列,但本發(fā)明不限于此。流程結(jié)束于步驟S204。

如上所述,本發(fā)明所提供的數(shù)據(jù)儲(chǔ)存裝置140以及數(shù)據(jù)存取方法可根據(jù)壞列數(shù)據(jù)跳過(guò)快閃存儲(chǔ)器180中的壞列,其中第一壞列數(shù)據(jù)更可以僅借由兩個(gè)數(shù)據(jù)記錄連續(xù)的壞列,以節(jié)省存儲(chǔ)器空間與控制器160資源。

本發(fā)明的方法,或特定型態(tài)或其部分,可以以程序碼的型態(tài)存在。程序碼可儲(chǔ)存于實(shí)體媒體,如軟盤、光盤片、硬盤、或是任何其他機(jī)器可讀取(如電腦可讀取)儲(chǔ)存媒體,亦或不限于外在形式的電腦程序產(chǎn)品,其中,當(dāng)程序碼被機(jī)器,如電腦載入且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的裝置。程序碼也可通過(guò)一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態(tài)進(jìn)行傳送,其中,當(dāng)程序碼被機(jī)器,如電腦接收、載入且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的裝置。當(dāng)在一般用途處理單元實(shí)作時(shí),程序碼結(jié)合處理單元提供一操作類似于應(yīng)用特定邏輯電路的獨(dú)特裝置。

惟以上所述者,僅為本發(fā)明的較佳實(shí)施例而已,當(dāng)不能以此限定本發(fā)明實(shí)施的范圍,即大凡依本發(fā)明權(quán)利要求及發(fā)明說(shuō)明內(nèi)容所作的簡(jiǎn)單的等效變化與修飾,皆仍屬本發(fā)明專利涵蓋的范圍內(nèi)。另外本發(fā)明的任一實(shí)施例或權(quán)利要求不須達(dá)成本發(fā)明所揭露的全部目的或優(yōu)點(diǎn)或特點(diǎn)。此外,摘要部分和標(biāo)題僅是用來(lái)輔助專利文件搜尋之用,并非用來(lái)限制本發(fā)明的權(quán)利范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1