專利名稱::用于閃存的區(qū)塊管理方法、儲(chǔ)存系統(tǒng)與控制器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明是有關(guān)于一種用于閃存的區(qū)塊管理方法,且特別是有關(guān)于一種用于多層存儲(chǔ)單元(MultiLevelCell,MLC)NAND閃存的區(qū)塊管理方法、使用此方法的儲(chǔ)存系統(tǒng)與控制器。
背景技術(shù):
:數(shù)字相機(jī)、手機(jī)相機(jī)與MP3在這幾年來(lái)的成長(zhǎng)十分迅速,使得消費(fèi)者對(duì)儲(chǔ)存媒體的需求也急速增加。由于閃存(FlashMemory)具有數(shù)據(jù)非易失性、省電、體積小與無(wú)機(jī)械結(jié)構(gòu)等的特性,適合可攜式應(yīng)用,最適合使用于這類可攜式由電池供電的產(chǎn)品上。存儲(chǔ)卡就是一種以與非(NAND)閃存作為儲(chǔ)存媒體的儲(chǔ)存裝置。由于存儲(chǔ)卡體積小容量大且攜帶方便,所以已廣泛用于個(gè)人重要數(shù)據(jù)的儲(chǔ)存。因此,近年閃存產(chǎn)業(yè)成為電子產(chǎn)業(yè)中相當(dāng)熱門的一環(huán)。一般來(lái)說(shuō),閃存儲(chǔ)存系統(tǒng)的閃存會(huì)劃分為多個(gè)物理區(qū)塊并且此些物理區(qū)塊會(huì)分組為數(shù)據(jù)區(qū)(dataarea)與備用區(qū)(sparearea)。歸類為數(shù)據(jù)區(qū)的物理區(qū)塊中會(huì)儲(chǔ)存由寫(xiě)入指令所寫(xiě)入的有效數(shù)據(jù),而備用區(qū)中的物理區(qū)塊是用以在執(zhí)行寫(xiě)入指令時(shí)替換數(shù)據(jù)區(qū)中的物理區(qū)塊。具體來(lái)說(shuō),當(dāng)閃存儲(chǔ)存系統(tǒng)接受到主機(jī)的寫(xiě)入指令而欲對(duì)數(shù)據(jù)區(qū)的物理區(qū)塊進(jìn)行寫(xiě)入時(shí),閃存儲(chǔ)存系統(tǒng)會(huì)從備用區(qū)中提取一物理區(qū)塊并且將在數(shù)據(jù)區(qū)中欲寫(xiě)入的物理區(qū)塊中的有效舊據(jù)的物理區(qū)塊關(guān)聯(lián)為數(shù)據(jù)區(qū),并且將原本數(shù)據(jù)區(qū)的物理區(qū)塊進(jìn)行抹除并關(guān)聯(lián)為備用區(qū)。為了能夠讓主機(jī)能夠順利地存取以輪替方式儲(chǔ)存數(shù)據(jù)的物理區(qū)塊,閃存儲(chǔ)存系統(tǒng)會(huì)提供邏輯區(qū)塊給主機(jī)。也就是說(shuō),閃存儲(chǔ)存系統(tǒng)會(huì)通過(guò)在邏輯區(qū)塊與物理區(qū)塊映射表中記錄與更新邏輯區(qū)塊與數(shù)據(jù)區(qū)的物理區(qū)塊之間的映射關(guān)系來(lái)反映物理區(qū)塊的輪替,所以主機(jī)僅需要針對(duì)所提供邏輯區(qū)塊進(jìn)行進(jìn)行讀取或?qū)懭霐?shù)據(jù)。7然而,在閃存制程上的進(jìn)步而使得每一物理區(qū)塊的設(shè)計(jì)容量會(huì)越來(lái)越大的同時(shí),亦造成上述搬移有效舊數(shù)據(jù)的時(shí)間會(huì)相對(duì)地增加而降低系統(tǒng)的效能。特別是,在當(dāng)閃存儲(chǔ)存系統(tǒng)用作為安裝計(jì)算機(jī)操作系統(tǒng)的儲(chǔ)存媒體時(shí),操作系統(tǒng)會(huì)經(jīng)常性地存取特定數(shù)據(jù)(例如,文件配置表(FileAllocationTable,FAT),因此提升此類數(shù)據(jù)存取的速度是相當(dāng)重要的。
發(fā)明內(nèi)容有鑒于此,本發(fā)明提供一種區(qū)塊管理方法,其能夠有效地提升MLCNAND閃存的數(shù)據(jù)存取的速度。此外,本發(fā)明提供一種控制器,其使用上述區(qū)塊管理方法來(lái)管理MLCNAND閃存,以有效地提升數(shù)據(jù)存取的速度。再者,本發(fā)明提供一種儲(chǔ)存系統(tǒng),其使用上述區(qū)塊管理方法來(lái)管理MLCNAND閃存,以有效地提升數(shù)據(jù)存取的速度。本發(fā)明提出一種區(qū)塊管理方法,適用于管理多層存儲(chǔ)單元(MultiLevelCell,MLC)與非(NAND)閃存的多個(gè)物理區(qū)塊且此些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),其中每一物理區(qū)塊包括多個(gè)頁(yè)面地址且此些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址,此區(qū)塊管理方法包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存取、記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊以及執(zhí)行特殊模式以使用MLCNAND閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于頻繁存取區(qū)塊的一個(gè)邏輯區(qū)塊的數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù)以及依據(jù)使用計(jì)數(shù)來(lái)排序所有邏輯區(qū)塊并且從具有最大的使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始依序記錄預(yù)先定義數(shù)目的邏輯區(qū)塊為頻繁存取區(qū)塊。在本發(fā)明的一實(shí)施例中,上述的執(zhí)行特殊模式以使用MLCNAND閃存的兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于頻繁存取區(qū)塊的一個(gè)邏輯區(qū)塊的數(shù)據(jù)步驟包括當(dāng)主機(jī)寫(xiě)入數(shù)據(jù)至每一邏輯區(qū)塊時(shí)判斷欲寫(xiě)入的邏輯區(qū)塊是否屬于頻繁存取區(qū)塊,其中當(dāng)欲寫(xiě)入的邏輯區(qū)塊屬于頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提在本發(fā)明的一實(shí)施例中,上述的記錄每一邏輯區(qū)塊的使用計(jì)數(shù)的步驟包括當(dāng)主機(jī)寫(xiě)入數(shù)據(jù)至邏輯區(qū)塊時(shí)更新此些邏輯區(qū)塊的使用計(jì)數(shù)在本發(fā)明的一實(shí)施例中,上述的區(qū)塊管理方法還包括當(dāng)欲寫(xiě)入的邏輯區(qū)塊屬于頻繁存取區(qū)塊時(shí)在邏輯區(qū)塊與物理區(qū)塊映射表中記錄特殊模式標(biāo)記以表示欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)是使用所提取的兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存以及在特殊模式映射表中記錄儲(chǔ)存欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)的兩個(gè)物理區(qū)塊。在本發(fā)明的一實(shí)施例中,上述的區(qū)塊管理方法還包括當(dāng)已使用MLCNAND此欲寫(xiě)入的邏輯區(qū)塊執(zhí)行隨機(jī)寫(xiě)入模式時(shí),從備用區(qū)中提取另一物理區(qū)塊并且在所提取的另一物理區(qū)塊中暫時(shí)地儲(chǔ)存主機(jī)對(duì)欲寫(xiě)入的邏輯區(qū)塊所寫(xiě)入的數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的區(qū)塊管理方法還包括當(dāng)欲寫(xiě)入的邏輯區(qū)塊不屬于頻繁存取區(qū)塊時(shí)則從備用區(qū)中提取一個(gè)物理區(qū)塊并且使用所提取的一個(gè)物理區(qū)塊的上頁(yè)地址與下頁(yè)地址來(lái)寫(xiě)入數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù)以及判斷每一邏輯區(qū)塊的使用計(jì)數(shù)是否大于存取頻繁門坎值,其中將使用計(jì)數(shù)大于存取頻繁門坎值的每一邏輯區(qū)塊記錄為頻繁存取區(qū)塊。.本發(fā)明亦提供一種閃存儲(chǔ)存系統(tǒng)與其控制器。此閃存儲(chǔ)存系統(tǒng)包括MLCNAND閃存、傳輸連接接口以及控制器,其中閃存儲(chǔ)存系統(tǒng)的MLCNAND閃存塊包括多個(gè)頁(yè)面地址且此些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址。此控制器包括微處理器單元以及耦接至微處理器單元的閃存接口、緩沖存儲(chǔ)器與存儲(chǔ)器管理模塊。特別是,此存儲(chǔ)器管理模塊具有可由微處理器單元執(zhí)行的多個(gè)機(jī)器指令以完成上述區(qū)塊管理方法。在本發(fā)明的一實(shí)施例中,上述的閃存儲(chǔ)存系統(tǒng)為隨身碟、快閃存儲(chǔ)卡或固態(tài)硬盤(pán)。本發(fā)明還提供了一種控制器,適用于具有多層存儲(chǔ)單元與非閃存的閃存儲(chǔ)存系統(tǒng),其中該多層存儲(chǔ)單元與非閃存具有多個(gè)物理區(qū)塊且該些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),每一物理區(qū)塊包括多個(gè)頁(yè)面地址且該些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址,該控制器包括微處理器單元;閃存接口,耦接至該微處理器單元;緩沖存儲(chǔ)器,耦接至該微處理器單元;以及存儲(chǔ)器管理模塊,耦接至該微處理器單元且具有可由該微處理器單元執(zhí)行的多個(gè)機(jī)器指令以對(duì)該閃存進(jìn)行多個(gè)區(qū)塊管理步驟,該些區(qū)塊管理步驟包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存??;記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊;以及執(zhí)行特殊模式以分別地使用該多層存儲(chǔ)單元與非閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)。本發(fā)明還提供了一種儲(chǔ)存系統(tǒng),包括多層存儲(chǔ)單元與非閃存,具有多個(gè)物理區(qū)塊且該些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),其中每一物理區(qū)塊包括多個(gè)頁(yè)面地址且該些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址;傳輸連接接口;以及控制器,電性連接至該多層存儲(chǔ)單元與非閃存與該傳輸連接接口,該控制器會(huì)執(zhí)行存儲(chǔ)器管理模塊的多個(gè)機(jī)器指令以執(zhí)行多個(gè)區(qū)塊管理步驟,該些區(qū)塊管理步驟包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存取;記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊;以及執(zhí)行特殊模儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)。本發(fā)明因采用兩個(gè)物理區(qū)塊的下頁(yè)地址(即,快速頁(yè)面)來(lái)儲(chǔ)存一個(gè)邏輯區(qū)塊的數(shù)據(jù),因此可有效地提升閃存儲(chǔ)存系統(tǒng)的存取速度。為讓本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合所附圖式,作詳細(xì)說(shuō)明如下。圖1是根據(jù)本發(fā)明實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。圖2A是繪示MLCNAND閃存的編程示意圖。圖2B是根據(jù)本發(fā)明實(shí)施例繪示MLCNAND閃存的物理區(qū)塊的上頁(yè)地址與下頁(yè)地址的配置范例。圖3A、3B與3C是根據(jù)本發(fā)明實(shí)施例繪示閃存的物理區(qū)塊以一般模式進(jìn)行輪替的示意圖。行輪替的示意圖。圖5B是根據(jù)本發(fā)明實(shí)施例繪示特殊模式映射表的范例。10圖6是根據(jù)本發(fā)明實(shí)施例繪示區(qū)塊管理步驟的流程圖。[主要元件標(biāo)號(hào)說(shuō)明]100:閃存儲(chǔ)存系統(tǒng)110:控制器110a:微處理器單元110b:存儲(chǔ)器管理模塊110c:閃存才姿口llOd:緩沖存儲(chǔ)器120:傳輸連接接口130:閃存130-0、130-1、130-2、130-N:物理區(qū)塊200:主初j202:系統(tǒng)區(qū)204:數(shù)據(jù)區(qū)206:備用區(qū)208:替換區(qū)塊210:邏輯區(qū)塊M、C、Cl、C2、L:區(qū)塊502:邏輯區(qū)塊字l殳502504:特殊模式標(biāo)記字段506:物理區(qū)塊字段512:索引字段514:第一特殊^t式區(qū)塊字段516:第二特殊^^莫式區(qū)塊字段S601、S603、S605、S607、S609、S611、S613、S615:區(qū)塊管理步驟。具體實(shí)施例方式圖1是根據(jù)本發(fā)明實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。請(qǐng)參照?qǐng)D1,閃存儲(chǔ)存系統(tǒng)100包括控制器(亦稱控制器系統(tǒng))110、傳輸連接接口120以及閃存130。通常閃存儲(chǔ)存系統(tǒng)100會(huì)與主機(jī)200—起使用,以使主機(jī)200可將數(shù)據(jù)寫(xiě)入至閃存儲(chǔ)存系統(tǒng)IOO或從閃存儲(chǔ)存系統(tǒng)100中讀取數(shù)據(jù)。在本實(shí)施例中,閃存儲(chǔ)存系統(tǒng)120為固態(tài)硬盤(pán)(SolidStateDrive,SSD)。但必須了解的是,在本發(fā)明另一實(shí)施例中閃存儲(chǔ)存系統(tǒng)100亦可以是存儲(chǔ)卡或隨身碟。控制器110會(huì)執(zhí)行以硬件形式或固件形式實(shí)作的多個(gè)指令以配合傳輸連接接口120與閃存130來(lái)進(jìn)行數(shù)據(jù)的儲(chǔ)存、讀取與抹除等運(yùn)作??刂破?10包括微處理器單元110a、存儲(chǔ)器管理模塊110b、閃存接口110c與緩沖存儲(chǔ)器llOd。微處理器單元110a用以與存儲(chǔ)器管理模塊110b、閃存接口110c與緩沖存儲(chǔ)器llOd等協(xié)同合作以進(jìn)行閃存儲(chǔ)存系統(tǒng)100的各種運(yùn)作。存儲(chǔ)器管理模塊110b是耦接至微處理器單元110a。存儲(chǔ)器管理模塊110b具有可由微處理器單元110a執(zhí)行的多個(gè)機(jī)器指令以管理閃存130,例如執(zhí)行平均磨損(wearleveling)功能、壞區(qū)塊管理功能、維護(hù)邏輯區(qū)塊與物理區(qū)塊映射表(mappingtable)功能等的機(jī)器指令。特別是,在本發(fā)明實(shí)施例中,存儲(chǔ)器管理模塊110b包含可完成根據(jù)本實(shí)施例的區(qū)塊管理步驟(如圖6所示)的機(jī)器指令。在本實(shí)施例中,存儲(chǔ)器管理模塊110b是以固件形式實(shí)作在控制器110中,例如以程序語(yǔ)言撰寫(xiě)程序相關(guān)機(jī)械指令并且儲(chǔ)存于程序存儲(chǔ)器(例如,只讀存儲(chǔ)器(ReadOnlyMemory,ROM))來(lái)實(shí)作存儲(chǔ)器管理模塊11Ob,其中當(dāng)閃存儲(chǔ)存系統(tǒng)100運(yùn)作時(shí),存儲(chǔ)器管理模塊110b的多個(gè)機(jī)械指令會(huì)被加載至緩沖存儲(chǔ)器110d中并且由微處理器單元110a來(lái)執(zhí)行以完成上述平均磨損功能、壞區(qū)塊管理功能、維護(hù)邏輯區(qū)塊與物理區(qū)塊映射表功能等。特別是,控制器IIO通過(guò)執(zhí)行存儲(chǔ)器管理模塊110b的多個(gè)機(jī)械指令來(lái)此完成根據(jù)本發(fā)明實(shí)施例的區(qū)塊管理步驟(如圖6所示)。在本發(fā)明另一實(shí)施例中,存儲(chǔ)器管理模塊110b的機(jī)械指令亦可以固件形式儲(chǔ)存于閃存130的特定區(qū)域(例如,下述的系統(tǒng)區(qū)202)中。同樣地,當(dāng)閃存儲(chǔ)存系統(tǒng)100運(yùn)作時(shí),存儲(chǔ)器管理模塊110b的多個(gè)機(jī)器指令會(huì)被加載至緩沖存儲(chǔ)器110d中并且由微處理器單元110a來(lái)執(zhí)行。此外,在本發(fā)明另一實(shí)施例中存儲(chǔ)器管理模塊110b亦可以硬件形式實(shí)作在控制器110中。閃存接口110c是耦接至微處理器單元110a并且用以存取閃存130。也就是,主機(jī)200欲寫(xiě)入至閃存130的數(shù)據(jù)會(huì)經(jīng)由閃存接口110c轉(zhuǎn)換為閃存130所能接受的格式。12緩沖存儲(chǔ)器llOd是耦接至微處理器單元110a并且用以暫時(shí)地儲(chǔ)存系統(tǒng)數(shù)據(jù)(例如邏輯區(qū)塊與物理區(qū)塊映射表)或者主機(jī)200所讀取或?qū)懭氲臄?shù)據(jù)。在本實(shí)施例中,緩沖存儲(chǔ)器llOd為靜態(tài)隨機(jī)存取存儲(chǔ)器(staticrandomaccessmemory,SRAM)。然而,必須了解的是,本發(fā)明不限于此,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DynamicRandomAccessmemory,DRAM)、磁阻式存儲(chǔ)器(MagnetoresistiveRandomAccessMemory,MRAM)、相變化存儲(chǔ)器(PhaseChangeRandomAccessMemory,PRAM)或其它適合的存^渚器亦可應(yīng)用于本發(fā)明。此外,雖未繪示于本實(shí)施例,但控制器110可還包括錯(cuò)誤校正模塊與電源管理模塊等用于控制閃存的一般功能模塊。傳輸連接接口120用以通過(guò)總線300連接主機(jī)200。在本實(shí)施例中,傳輸連接接口120為PCIExpress接口。然而,必須了解的是本發(fā)明不限于此,傳輸連接接口120亦可以是USB接口、IEEE1394接口、SATA接口、MS接口、MMC接口、SD接口、CF接口、IDE接口或其它適合的數(shù)據(jù)傳輸接口。閃存130是電性連接至控制器110并且用以儲(chǔ)存數(shù)據(jù)。閃存130通常實(shí)質(zhì)上分割為多個(gè)物理區(qū)塊(physicalblock)130-0至130-N。一般而言,在閃存中物理區(qū)塊為抹除的最小單位。亦即,每一物理區(qū)塊含有最小數(shù)目之一并被抹除的存儲(chǔ)單元。每一物理區(qū)塊通常會(huì)分割為數(shù)個(gè)頁(yè)面地址(page)。頁(yè)面地址通常為編程(program)的最小單元。但要特別說(shuō)明的是于有些不同的閃存設(shè)計(jì),最小的編程單位也可為一個(gè)扇區(qū)(sector)。也就是說(shuō),一頁(yè)面地址中有多個(gè)扇區(qū)并以一扇區(qū)為編程的最小單元。換言之,頁(yè)面地址為寫(xiě)入數(shù)據(jù)或讀取數(shù)據(jù)的最小單元。每一頁(yè)面地址通常包括使用者數(shù)據(jù)區(qū)D與冗余區(qū)R。使用者數(shù)據(jù)區(qū)用以儲(chǔ)存使用者的數(shù)據(jù),而冗余區(qū)用以儲(chǔ)存系統(tǒng)的數(shù)據(jù)(例如,錯(cuò)誤校正碼(errorcorrectingcode,ECC))。為對(duì)應(yīng)于磁盤(pán)驅(qū)動(dòng)器的扇區(qū)(sector)大小,一般而言,使用者數(shù)據(jù)區(qū)D通常為512字節(jié),而冗余區(qū)R通常為16字節(jié)。也就是,一頁(yè)為一個(gè)扇區(qū)。然而,亦可以多個(gè)扇區(qū)形成一頁(yè),例如一頁(yè)包括4個(gè)扇區(qū)。一般而言,物理區(qū)塊130-0至130-N可由任意數(shù)目的頁(yè)面地址所組成,例如64個(gè)頁(yè)面地址、128個(gè)頁(yè)面地址、256個(gè)頁(yè)面地址等。物理區(qū)塊130-0至130-N通常也可被分組為數(shù)個(gè)區(qū)域(zone),以區(qū)域來(lái)管理存儲(chǔ)器某種程度上是彼此獨(dú)立地操作以增加操作執(zhí)行的平行程度且簡(jiǎn)化管理的復(fù)雜度。此外,在本實(shí)施中閃存130為多層存儲(chǔ)單元(MultiLevelCell,MLC)與非(NAND)閃存,而MLCNAND閃存的物理區(qū)塊的編程可分為多階段。例如,以4層存儲(chǔ)單元為例,如圖2A所示,物理區(qū)塊的編程可分為2階段。第一階段是下頁(yè)地址(lowerpage)的寫(xiě)入部分,其物理特性類似于單層存儲(chǔ)單元(SingleLevelCell,SLC)NAND閃存,在完成第一階段之后才會(huì)編程上頁(yè)地址(upperpage),其中下頁(yè)地址的寫(xiě)入速度會(huì)快于上頁(yè)地址。因此,如圖2B所示每一物理區(qū)塊的頁(yè)面地址可區(qū)分為快慢頁(yè)面(即,上頁(yè)地址)與快速頁(yè)面(即,下頁(yè)地址)。類似地,在8層存儲(chǔ)單元或16層存儲(chǔ)單元的案例中,存儲(chǔ)單元會(huì)包括更多個(gè)頁(yè)面地址并且會(huì)以更多階段來(lái)寫(xiě)入。在此,將寫(xiě)入速度最快的頁(yè)面地址稱為下頁(yè)地址,其它寫(xiě)入速度較慢的頁(yè)面地址統(tǒng)稱為上頁(yè)地址。例如,上頁(yè)地址包括具有不同寫(xiě)入速度的多個(gè)頁(yè)面。此外,在其它實(shí)施例中,上頁(yè)地址也可為寫(xiě)入速度最慢的頁(yè)面,或者寫(xiě)入速度最慢與部份寫(xiě)入速度快于寫(xiě)入速度最慢頁(yè)面的頁(yè)面。例如,在4層存儲(chǔ)單元中,下頁(yè)地址為寫(xiě)入速度最快與寫(xiě)入速度次快的頁(yè)面,上頁(yè)則為寫(xiě)入速度最慢與寫(xiě)入速度次慢的頁(yè)面。特別是,由于在本發(fā)明實(shí)施例中閃存130的物理區(qū)塊的多個(gè)頁(yè)面地址可如上述區(qū)分為上頁(yè)地址與下頁(yè)地址,因此在存儲(chǔ)器管理模塊110b會(huì)包含有一頁(yè)面地址查詢表,其中會(huì)記錄在每一區(qū)塊中哪些頁(yè)面地址屬于上頁(yè)地址以及哪些頁(yè)面地址屬于下頁(yè)地址。必須了解的是,圖2B所示的上頁(yè)地址與下頁(yè)地址的配置僅為范例,本發(fā)明不限于此。因此,在使用不同上頁(yè)與下頁(yè)地址的配置的MLCNAND閃存時(shí)可使用上述頁(yè)面地址查詢表來(lái)記錄。圖3A、3B與3C是根據(jù)本發(fā)明實(shí)施例繪示閃存的物理區(qū)塊以一般模式進(jìn)行輪替的示意圖。必須了解的是,在此描述閃存的運(yùn)作時(shí)以"提取"、"搬移"、"交換"、"分割"、"劃分"等詞來(lái)操作閃存130的物理區(qū)塊130-0至130-N是邏輯上的概念。也就是說(shuō),閃存的物理區(qū)塊的實(shí)際位置并未更動(dòng),而是邏輯上對(duì)閃存的物理區(qū)塊進(jìn)行操作。值得一提的是,下述物理區(qū)塊的運(yùn)作通過(guò)控制器110執(zhí)行存儲(chǔ)器管理模塊110b的機(jī)械指令所完成。請(qǐng)參照?qǐng)D3A,在本發(fā)明實(shí)施例中,為了有效率地編程(即,寫(xiě)入與抹除)閃存130,控制器110會(huì)將閃存130的物理區(qū)塊130-1至130-N在邏輯上分組為系統(tǒng)區(qū)202、數(shù)據(jù)區(qū)204與備用區(qū)206。一般來(lái)說(shuō),閃存130中屬于數(shù)據(jù)區(qū)204的物理區(qū)塊會(huì)占90%以上。如前所述,閃存130的物理區(qū)塊130-1至130-N會(huì)以輪替方式提供主機(jī)來(lái)儲(chǔ)存數(shù)據(jù),因此控制器110會(huì)提供邏輯區(qū)塊210給主機(jī)以進(jìn)行數(shù)據(jù)存取,并且通過(guò)維護(hù)邏輯區(qū)塊與物理區(qū)塊映射表來(lái)記錄邏輯區(qū)塊所映射的物理區(qū)塊。系統(tǒng)區(qū)202中的物理區(qū)塊用以記錄系統(tǒng)數(shù)據(jù),系統(tǒng)數(shù)據(jù)例如是關(guān)于閃存130的區(qū)域數(shù)、每一區(qū)域的物理區(qū)塊數(shù)、每一物理區(qū)塊的頁(yè)面地址數(shù)、記錄邏輯區(qū)塊與物理區(qū)塊映射關(guān)系的映射表(mappingtable)等。數(shù)據(jù)區(qū)204中的物理區(qū)塊用以儲(chǔ)存使用者的數(shù)據(jù),一般來(lái)說(shuō)就是主機(jī)200所存取的邏輯區(qū)塊210所映射的區(qū)塊。備用區(qū)206中的物理區(qū)塊是用以替換數(shù)據(jù)區(qū)204中的物理區(qū)塊,因此在備用區(qū)206中的物理區(qū)塊為空或可使用的區(qū)塊,即無(wú)記錄數(shù)據(jù)或標(biāo)記為已沒(méi)用的無(wú)效數(shù)據(jù)。具體來(lái)說(shuō),由于在閃存中每個(gè)地址僅能編程一次,因此若要對(duì)已寫(xiě)過(guò)數(shù)據(jù)位置再次寫(xiě)入數(shù)據(jù)時(shí),必須先執(zhí)行抹除的操作。然而,如前所述閃存寫(xiě)入單位為頁(yè)面,其小于以物理區(qū)塊為單位的抹除單位。因此,若要執(zhí)行物理區(qū)塊的抹除操作時(shí),必須先將欲抹除物理區(qū)塊中的有效頁(yè)面地址的數(shù)據(jù)復(fù)制至其它物理區(qū)塊后才可進(jìn)行物理區(qū)塊的抹除操作。例如,當(dāng)主機(jī)欲寫(xiě)入數(shù)據(jù)至邏輯區(qū)塊210之中的邏輯區(qū)塊L時(shí),控制器IIO會(huì)通過(guò)邏輯區(qū)塊與物理區(qū)塊映射表得知邏輯區(qū)塊L目前是映射數(shù)據(jù)區(qū)204中的物理區(qū)塊M。因此,閃存儲(chǔ)存系統(tǒng)100將對(duì)物理區(qū)塊M中的數(shù)據(jù)進(jìn)行更新,期間,控制器110會(huì)從備用區(qū)206中提取物理區(qū)塊C來(lái)取代數(shù)據(jù)區(qū)204的物理區(qū)塊M。然而,當(dāng)將新數(shù)據(jù)入至物理區(qū)塊C的同時(shí),不會(huì)立刻將物理區(qū)塊M中的所有有效數(shù)據(jù)搬移至物理區(qū)塊C而抹除物理區(qū)塊M。具體來(lái)說(shuō),控制器110會(huì)將物理區(qū)塊M中欲寫(xiě)入頁(yè)面地址之前的有效數(shù)據(jù)(即頁(yè)P(yáng)O與Pl)復(fù)制至物理區(qū)塊C(如圖3B的(a)),并且將新數(shù)據(jù)(即物理區(qū)塊C的頁(yè)P(yáng)2與P3)寫(xiě)入至C區(qū)塊(如圖3B的(b))。此時(shí),將含有部分的有效舊數(shù)據(jù)與所寫(xiě)入新數(shù)據(jù)的物理區(qū)塊C暫時(shí)地關(guān)聯(lián)為替換物理區(qū)塊208。此是因?yàn)槲锢韰^(qū)塊M中的有效數(shù)據(jù)有可能在下個(gè)操作(例如,寫(xiě)入指令)中變成無(wú)效,因此立刻將物理區(qū)塊M中的所有有效數(shù)據(jù)搬移至替換物理區(qū)塊C可能會(huì)造成無(wú)謂的搬移。在此案例中,物理區(qū)塊M與替換物理區(qū)塊C的內(nèi)容整合起來(lái)才是所映射邏輯區(qū)塊L的完整內(nèi)容。此等母子區(qū)塊(即,物理區(qū)塊M與替換物理區(qū)塊C)的瞬時(shí)關(guān)系可依據(jù)控制器110中緩沖存儲(chǔ)器llOd的大小而定,例如一般會(huì)使用五組來(lái)實(shí)作。暫時(shí)地維持此種瞬時(shí)關(guān)系的操作一般可稱為開(kāi)啟(open)母子區(qū)塊。之后,當(dāng)需要將物理區(qū)塊M與替換物理區(qū)塊C的內(nèi)容真正合并時(shí),控制器110才會(huì)將物理區(qū)塊M與替換物理區(qū)塊C整并為一區(qū)塊,由此提升區(qū)塊的使用效率,此合并的操作又可稱為關(guān)閉(close)母子區(qū)塊。例如,如圖3B的(c)所示,當(dāng)進(jìn)行關(guān)閉母子區(qū)塊時(shí),控制器110會(huì)將物理區(qū)塊M中剩余的有效數(shù)據(jù)(即,頁(yè)P(yáng)4PN)復(fù)制至替換物理區(qū)塊C,然后將物理區(qū)塊M抹除并關(guān)聯(lián)為備用區(qū)206,同時(shí),將替換物理區(qū)塊C關(guān)聯(lián)為數(shù)據(jù)區(qū)204,并且在邏輯區(qū)塊與物理區(qū)塊映射表中將邏輯區(qū)塊L的映射更改為物理區(qū)塊C,由此完成關(guān)閉母子區(qū)塊的操作。由于閃存130的編程規(guī)格要求必須從每一物理區(qū)塊的第一頁(yè)開(kāi)始寫(xiě)入至最后一頁(yè)并且在每個(gè)位僅能編程一次(即由僅能'T,變?yōu)?0")的條件下,一旦存儲(chǔ)器物理區(qū)塊的頁(yè)面地址寫(xiě)入數(shù)據(jù)后,若欲更新已寫(xiě)入的數(shù)據(jù)就必須如圖3A所示從備用區(qū)206中提取一物理區(qū)塊重新進(jìn)行圖3B所示的步驟。因此,當(dāng)物理區(qū)塊在未進(jìn)行圖3B的(c)關(guān)閉操作之前(即處于圖3B的(b)所示的瞬時(shí)),而發(fā)生必須更新剛搬移的數(shù)據(jù)(例如圖3B的(a)所示的P0P1)時(shí),則所搬移的舊數(shù)據(jù)就必須再搬移一次,此稱為隨機(jī)(Random)寫(xiě)入模式時(shí)。例如,一般在儲(chǔ)存裝置中會(huì)使用文件配置表(FileAllocationTable,FAT)來(lái)管理儲(chǔ)存媒體,其中FAT數(shù)據(jù)的存取是非常頻繁。因此,當(dāng)存取FAT表時(shí)可能會(huì)因?yàn)椴粩喔聞偘嵋频臄?shù)據(jù)而進(jìn)入隨機(jī)寫(xiě)入模式。在進(jìn)入上述隨機(jī)寫(xiě)入模式時(shí),控制器110會(huì)直接在替換物理區(qū)塊C中循序地寫(xiě)入數(shù)據(jù)而不進(jìn)行如圖3B的(a)所述的有效數(shù)據(jù)搬移操作,以避免在隨機(jī)寫(xiě)入模式下不斷重復(fù)執(zhí)行圖3A與圖3B的操作。并且,當(dāng)隨機(jī)寫(xiě)入模式結(jié)束后再?gòu)膫溆脜^(qū)206中提取一物理區(qū)塊來(lái)整并物理區(qū)塊M與替換物理區(qū)塊C的有效數(shù)據(jù)。在此,進(jìn)入隨機(jī)寫(xiě)入模式的替換物理區(qū)塊C亦被稱為混亂子區(qū)塊。此外,在另一實(shí)施例中倘若主機(jī)200對(duì)邏輯區(qū)塊L不斷寫(xiě)入不滿一個(gè)頁(yè)面的數(shù)據(jù)時(shí),控制器110會(huì)再?gòu)膫溆脜^(qū)206中提取一個(gè)物理區(qū)塊作為暫存物理區(qū)塊,并且將不滿一個(gè)頁(yè)面的數(shù)據(jù)依序地寫(xiě)入至?xí)捍嫖锢韰^(qū)塊的頁(yè)面中,并且于之后當(dāng)結(jié)束母子區(qū)塊關(guān)系時(shí)才進(jìn)行有效數(shù)據(jù)的整合。例如,如圖3C所示當(dāng)上述開(kāi)啟母子區(qū)塊(即,物理區(qū)塊M與替換物理區(qū)塊C)的瞬時(shí)關(guān)系的邏輯區(qū)塊L進(jìn)入隨機(jī)寫(xiě)入模式時(shí),控制器110會(huì)再?gòu)膫溆?6區(qū)206中提取一個(gè)物理區(qū)塊作為暫存物理區(qū)塊T,并且在此隨機(jī)寫(xiě)入模式期間,主機(jī)200對(duì)邏輯區(qū)塊L的寫(xiě)入數(shù)據(jù)會(huì)暫時(shí)地儲(chǔ)存在暫存物理區(qū)塊T中。之后,當(dāng)結(jié)束隨機(jī)寫(xiě)入模式時(shí),暫存物理區(qū)塊T的數(shù)據(jù)會(huì)被整合至替換物理區(qū)塊C,并且暫存物理區(qū)塊T會(huì)被抹除并搬移回至備用區(qū)206。在本實(shí)施例中,除了以如圖3A與圖3B所示的一般模式來(lái)儲(chǔ)存邏輯區(qū)塊L的數(shù)據(jù)外,控制器110亦可執(zhí)行區(qū)塊管理模塊的機(jī)械指令以特殊模式來(lái)儲(chǔ)存邏輯區(qū)塊的數(shù)據(jù)。具體來(lái)說(shuō),在特殊模式中,控制器IIO會(huì)使用兩個(gè)替換物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存邏輯區(qū)塊的數(shù)據(jù)。如上所述,由于下頁(yè)地址的寫(xiě)入速度快于上頁(yè)地址,因此僅以下頁(yè)地址來(lái)儲(chǔ)存數(shù)據(jù)將提高數(shù)據(jù)存取的速度。然而,由于在本實(shí)施例中一個(gè)物理區(qū)塊中屬于下頁(yè)地址的頁(yè)面地址的總數(shù)是占一個(gè)物理區(qū)塊的一半,因此在本實(shí)施例的特殊模式中會(huì)以兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存一個(gè)邏輯區(qū)塊的數(shù)據(jù),其中,值得說(shuō)明的是,下頁(yè)的頁(yè)面總數(shù)亦可為物理區(qū)塊的1/N,N為自然數(shù)。圖4A、4B與4C是根據(jù)本發(fā)明實(shí)施例繪示閃存的物理區(qū)塊以特殊模式進(jìn)行輪替的示意圖。請(qǐng)參照?qǐng)D4A,例如當(dāng)主機(jī)欲寫(xiě)入數(shù)據(jù)至邏輯區(qū)塊210之中的邏輯區(qū)塊L時(shí),控制器IIO會(huì)通過(guò)邏輯區(qū)塊與物理區(qū)塊映射表得知邏輯區(qū)塊L目前是映射數(shù)據(jù)區(qū)204中的物理區(qū)塊M。因此,閃存儲(chǔ)存系統(tǒng)100將對(duì)物理區(qū)塊M中的數(shù)據(jù)進(jìn)行更新,期間,控制器IIO會(huì)從備用區(qū)206中提取物理區(qū)塊C1與物理區(qū)塊C2來(lái)取代數(shù)據(jù)區(qū)204的物理區(qū)塊M。類似地,當(dāng)將新數(shù)據(jù)寫(xiě)入至物理區(qū)塊C1與物理區(qū)塊C2的同時(shí),控制器110不會(huì)立刻將物理區(qū)塊M中的所有有效數(shù)據(jù)搬移至物理區(qū)塊Cl與物理區(qū)塊C2而抹除物理區(qū)塊M,而會(huì)暫時(shí)維持如上所述母子區(qū)塊(即,物理區(qū)塊M、替換物理區(qū)塊C1與替換物理區(qū)塊C2)的關(guān)系。在邏輯區(qū)塊是處于特殊模式期間(即,邏輯區(qū)塊是以兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存數(shù)據(jù))且是處于上述母子區(qū)塊的瞬時(shí)關(guān)系的例子中,倘若此邏輯區(qū)塊進(jìn)入上述隨機(jī)寫(xiě)入模式時(shí),同樣地,控制器IIO會(huì)從備用區(qū)206中提取一物理區(qū)塊作為暫存物理區(qū)塊來(lái)暫時(shí)儲(chǔ)存欲寫(xiě)入的數(shù)據(jù),并且于隨機(jī)寫(xiě)入模式結(jié)束時(shí)才進(jìn)行有效數(shù)據(jù)的整合。例如,如圖4B所示當(dāng)上述開(kāi)啟母子區(qū)塊(即,物理區(qū)塊M、替換物理區(qū)塊C1與替換物理區(qū)塊C2)的瞬時(shí)關(guān)系的邏輯區(qū)塊L進(jìn)入隨機(jī)寫(xiě)入模式時(shí),控制器110會(huì)再?gòu)膫溆脜^(qū)206中提取一個(gè)物理區(qū)塊作為暫存物理區(qū)塊T,并且在此隨機(jī)寫(xiě)入模式期間,主機(jī)200對(duì)邏輯區(qū)塊L的寫(xiě)入數(shù)據(jù)會(huì)暫時(shí)地儲(chǔ)存在暫存物理區(qū)塊T中。之后,當(dāng)結(jié)束隨機(jī)寫(xiě)入模式時(shí),暫存物理區(qū)塊T的數(shù)據(jù)會(huì)被整合至替換物理區(qū)塊Cl與替換物理區(qū)塊C2,并且暫存物理區(qū)塊T會(huì)被抹除并搬移回至備用區(qū)206。在本實(shí)施例中,由于邏輯區(qū)塊可處于一般模式或特殊模式,因此控制器110必須知道邏輯區(qū)塊是否處于特殊模式以及處于特殊模式的邏輯區(qū)塊是使用哪兩個(gè)物理區(qū)塊的下頁(yè)地址。圖5A是根據(jù)本發(fā)明實(shí)施例繪示邏輯區(qū)塊與物理區(qū)塊映射表的范例。請(qǐng)參照?qǐng)D5A,在本實(shí)施例中,邏輯區(qū)塊與物理區(qū)塊映射表包括邏輯區(qū)塊字段502、特殊模式標(biāo)記字段504與物理區(qū)塊字段506。物理區(qū)塊字段506用以記錄邏輯區(qū)塊字段502中所記錄的邏輯區(qū)塊映射的物理區(qū)塊。特殊模式標(biāo)記字段504用以標(biāo)記該筆記錄的邏輯區(qū)塊是處于一般模式或特殊模式,其中當(dāng)特殊模式標(biāo)記字段被記錄為"0"時(shí)表示此筆記錄所對(duì)應(yīng)的邏輯區(qū)塊是處于一般模式,而當(dāng)此特殊模式標(biāo)記字段被記錄為"1"時(shí)表示此筆記錄所對(duì)應(yīng)的邏輯區(qū)塊是處于特殊模式。例如,在圖5A的范例中,在第一筆映射記錄中記錄了邏輯區(qū)塊Q是在一般模式并且映射物理區(qū)塊125。此外,在本實(shí)施例中存儲(chǔ)器管理模塊110b還包括特殊模式映射表用以記錄處于特殊模式的邏輯區(qū)塊所映射的物理區(qū)塊。圖5B是根據(jù)本發(fā)明實(shí)施例繪示特殊模式映射表的范例。如圖5B所示,特殊模式映射表包括索引字段512、第一特殊模式區(qū)塊字段514與第二特殊模式區(qū)塊字段516。索引字段512用以記錄在特殊模式映射表中每筆記錄的索引值,第一特殊模式區(qū)塊字段514與第二特殊模式區(qū)塊字段516用以記錄此筆記錄所使用的兩個(gè)物理區(qū)塊。特塊字段。也就是,當(dāng)邏輯區(qū)塊被標(biāo)記為處于特殊模式時(shí),控制器110可通過(guò)映射的兩個(gè)物理區(qū)塊。例如,請(qǐng)參照?qǐng)D5A與圖5B的范例,在圖5A的第二筆映射記錄中記錄了邏輯區(qū)塊1是在特殊模式,并且在物理區(qū)塊字段506中記錄了特殊模式映射表的索引值0?;?,可再由特殊模式映射表的記錄中查詢到索引值0的記錄包含物理區(qū)塊98與物理區(qū)塊102?;耍ㄟ^(guò)邏輯區(qū)塊與物理區(qū)塊映射表與特殊模式映射表的查詢就可得知邏輯區(qū)塊1是使用物理區(qū)塊98與物理區(qū)塊102的下頁(yè)地址來(lái)儲(chǔ)存數(shù)據(jù)。18值得一提的是,由于備用區(qū)206的物理區(qū)塊是有限的,并且在特殊模式映射表中每增加一筆記錄就會(huì)增加閃存儲(chǔ)存系統(tǒng)ioo的負(fù)荷(例如,需要較大的緩沖存儲(chǔ)器llOd),因此在本發(fā)明實(shí)施例中會(huì)限制使用特殊模式的邏輯區(qū)塊的數(shù)目,例如在本實(shí)施例中使用特殊模式的邏輯區(qū)塊的預(yù)先定義數(shù)目為10個(gè)?;?,在本實(shí)施例中控制器110會(huì)選擇主機(jī)200經(jīng)常存取的邏輯區(qū)塊來(lái)執(zhí)行特殊模式。在本實(shí)施例中,當(dāng)閃存儲(chǔ)存系統(tǒng)100開(kāi)機(jī)時(shí),控制器110的微處理器單元110a會(huì)執(zhí)行存儲(chǔ)器管理模塊110b的機(jī)械指令以在緩沖存儲(chǔ)器110d中建立使用計(jì)數(shù)表,其中會(huì)記錄每一邏輯區(qū)塊的使用計(jì)數(shù)。例如,當(dāng)主機(jī)200對(duì)某一邏輯區(qū)塊進(jìn)行寫(xiě)入數(shù)據(jù)時(shí),則此邏輯區(qū)塊的使用計(jì)數(shù)就會(huì)被加1。在本實(shí)施例中除了記錄每一邏輯區(qū)塊的使用計(jì)數(shù)外,依據(jù)使用計(jì)數(shù)所判斷較常使用的數(shù)個(gè)邏輯區(qū)塊會(huì)被記錄在緩沖存儲(chǔ)器110d作為頻繁存取區(qū)塊。例如,在本實(shí)施例中會(huì)根據(jù)所有使用計(jì)數(shù)由大至小的排序從具有最大使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始在緩沖存儲(chǔ)器110d中記錄10個(gè)邏輯區(qū)塊,并且每當(dāng)使用計(jì)數(shù)表被更新時(shí),記錄在緩沖存儲(chǔ)器110d中的頻繁存取區(qū)塊就會(huì)被更新。此外,在本實(shí)施例中,使用計(jì)數(shù)表是在閃存儲(chǔ)存系統(tǒng)100每次開(kāi)機(jī)時(shí)重新建立,換言之,所有的計(jì)數(shù)值會(huì)在每次開(kāi)機(jī)時(shí)重新歸零來(lái)計(jì)數(shù)。然而,本發(fā)明不限于此,使用計(jì)數(shù)表亦可在閃存儲(chǔ)存系統(tǒng)IOO開(kāi)機(jī)前儲(chǔ)存至系統(tǒng)區(qū)202中以便于下次開(kāi)機(jī)時(shí)繼續(xù)計(jì)數(shù)?;耍诒景l(fā)明實(shí)施例中當(dāng)主機(jī)200對(duì)邏輯區(qū)塊進(jìn)行寫(xiě)入時(shí),控制器110就可依據(jù)在緩沖存儲(chǔ)器110d中記錄的頻繁存取區(qū)塊來(lái)判斷是否對(duì)此欲寫(xiě)入的邏輯區(qū)塊執(zhí)行特殊模式。在本發(fā)明另一實(shí)施例中,當(dāng)處于特殊模式期間的邏輯區(qū)塊結(jié)束上述母子儲(chǔ)存數(shù)據(jù)。例如,如圖4C所示,當(dāng)結(jié)束母子區(qū)塊的瞬時(shí)關(guān)系時(shí),當(dāng)舊有效數(shù)據(jù)的搬移完成后物理區(qū)塊M會(huì)被抹除并關(guān)聯(lián)為備用區(qū)206并且物理區(qū)塊C1與物理區(qū)塊C2會(huì)被關(guān)聯(lián)為數(shù)據(jù)區(qū)204。也就是說(shuō),邏輯區(qū)塊L會(huì)映射物理區(qū)塊Cl與物理區(qū)塊C2的下頁(yè)地址。同時(shí),當(dāng)主機(jī)200再次i夂對(duì)已處于特珠模式的邏輯區(qū)塊執(zhí)行寫(xiě)入指令時(shí),控制器IIO會(huì)依據(jù)緩沖存儲(chǔ)器110d中的記錄來(lái)判斷此已處于特殊模式的邏輯區(qū)塊是否仍然為頻繁存取區(qū)塊。倘若已處于特殊模式的邏輯區(qū)塊仍為頻繁存取區(qū)塊時(shí)則控制器110會(huì)從備用區(qū)206中提取兩個(gè)物理區(qū)塊作為替換物理區(qū)塊并且僅使用此兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)寫(xiě)入數(shù)據(jù)。此外,倘若已處于特殊模式的邏輯區(qū)塊不再為頻繁存取區(qū)塊時(shí)則控制器110會(huì)從備用區(qū)206中提取一個(gè)物理區(qū)塊作為替換物已處于特殊模式的邏輯區(qū)塊不再為頻繁存取區(qū)塊時(shí)則此邏輯區(qū)塊會(huì)恢復(fù)為一般模式,而不再占用兩個(gè)物理區(qū)塊。圖6是根據(jù)本發(fā)明實(shí)施例繪示區(qū)塊管理步驟的流程圖。請(qǐng)參照?qǐng)D6,當(dāng)閃存儲(chǔ)存系統(tǒng)IOO開(kāi)機(jī)時(shí),在步驟S601中會(huì)配置多個(gè)邏輯區(qū)塊以供主機(jī)200存取。接著,在步驟S603中會(huì)記錄每一邏輯區(qū)塊的使用計(jì)數(shù),其中在本實(shí)施例中當(dāng)主機(jī)200寫(xiě)入數(shù)據(jù)至邏輯區(qū)塊時(shí)就會(huì)更新邏輯區(qū)塊的使用計(jì)數(shù)。之后,在步驟S605中會(huì)依據(jù)使用計(jì)數(shù)排序所有邏輯區(qū)塊并且從具有最大使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始依序記錄預(yù)先定義數(shù)目(例如,IO個(gè))的邏輯區(qū)塊為然而在本發(fā)明另一實(shí)施例中亦可設(shè)定存取次數(shù)大于特定存取頻繁門坎值的邏輯區(qū)塊為頻繁存取區(qū)塊,其中此存取頻繁門坎值是可由使用者自行設(shè)定并且可動(dòng)態(tài)變動(dòng)。例如,存取頻繁門坎值可設(shè)為255。在步驟S607中控制器110會(huì)等待與接收主機(jī)200的寫(xiě)入指令數(shù)據(jù),并且在步驟S609中會(huì)判斷欲寫(xiě)入的邏輯區(qū)塊是否屬于頻繁存取區(qū)塊。倘若在步驟S609中判斷欲寫(xiě)入的邏輯區(qū)塊屬于頻繁存取區(qū)塊時(shí),則在步塊的下頁(yè)地址來(lái)寫(xiě)入數(shù)據(jù)。倘若在步驟S609中判斷欲寫(xiě)入的邏輯區(qū)塊不屬于頻繁存取區(qū)塊時(shí),則在步驟S613中從備用區(qū)206中提取一個(gè)物理區(qū)塊并且使用所提取的物理區(qū)塊的上頁(yè)地址與下頁(yè)地址來(lái)寫(xiě)入數(shù)據(jù)。如上所述,當(dāng)控制器110以特殊模式來(lái)管理閃存130的物理區(qū)塊時(shí),則控制器IIO必須記錄相關(guān)的映射關(guān)系以利后續(xù)的存取。因此,在步驟S611與步驟S613之后,會(huì)進(jìn)行邏輯區(qū)塊與物理區(qū)塊映射表及/或特殊模式映射表的模式標(biāo)記以表示在步驟S611中所寫(xiě)入的數(shù)據(jù)是使用所提取的兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存,并且在特殊模式映射表中記錄所使用的兩個(gè)物理區(qū)塊。之后,區(qū)塊管理步驟會(huì)回至步驟S603與S605更新使用計(jì)數(shù)與頻繁存取區(qū)塊,并且于步驟S607中再次待命接收指令。雖未繪示于圖6中,但本領(lǐng)域技術(shù)人員可輕易了解圖6的區(qū)塊管理步驟會(huì)在接收到關(guān)機(jī)或電源中斷指令后結(jié)束。綜上所述,本發(fā)明在物理區(qū)塊的管理上提供一種以兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存一個(gè)邏輯區(qū)塊的數(shù)據(jù)的特殊模式。基此,在對(duì)于使用此特殊模式的邏輯區(qū)塊進(jìn)行存取時(shí)可有效地提升數(shù)據(jù)存取的速度。特別是,本發(fā)明提供一種通過(guò)邏輯區(qū)塊的使用計(jì)數(shù)來(lái)判斷主機(jī)頻繁存取的邏輯區(qū)塊,通過(guò)對(duì)于此些頻繁存取的邏輯區(qū)塊執(zhí)行上述特殊模式,可在系統(tǒng)資源有限下提升系統(tǒng)效6匕H匕。雖然本發(fā)明已以較佳實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍當(dāng)視所附的權(quán)利要求范圍所界定者為準(zhǔn)。2權(quán)利要求1.一種區(qū)塊管理方法,適用于管理多層存儲(chǔ)單元與非閃存的多個(gè)物理區(qū)塊且該些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),其中每一物理區(qū)塊包括多個(gè)頁(yè)面地址且該些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址,該區(qū)塊管理方法包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存?。挥涗泴儆陬l繁存取區(qū)塊的邏輯區(qū)塊;以及執(zhí)行特殊模式以分別地使用該多層存儲(chǔ)單元與非閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的區(qū)塊管理方法,其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及依據(jù)該些使用計(jì)數(shù)排序該些邏輯區(qū)塊并且從具有最大的該使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始依序記錄預(yù)先定義數(shù)目的邏輯區(qū)塊為該頻繁存取區(qū)塊。3.根據(jù)權(quán)利要求1所述的區(qū)塊管理方法,其中執(zhí)行該特殊模式以分別地存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)步驟包括當(dāng)該主機(jī)寫(xiě)入數(shù)據(jù)至每一邏輯區(qū)塊時(shí)判斷該欲寫(xiě)入的邏輯區(qū)塊是否屬于該頻繁存取區(qū)塊;以及當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取兩個(gè)4,根據(jù)權(quán)利要求2所述的區(qū)塊管理方法,其中記錄每一邏輯區(qū)塊的使用計(jì)數(shù)的步驟包括當(dāng)該主機(jī)寫(xiě)入數(shù)據(jù)至該些邏輯區(qū)塊時(shí)更新該些邏輯區(qū)塊的使用計(jì)數(shù)。5,根據(jù)權(quán)利要求3所述的區(qū)塊管理方法,還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)在邏輯區(qū)塊與物理區(qū)塊映射表中記錄特殊模式標(biāo)記以表示該欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)是使用所提取的兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存以及在特殊模式映射表中記錄儲(chǔ)存該欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)的兩個(gè)物理區(qū)塊。6,根據(jù)權(quán)利要求3所述的區(qū)塊管理方法,還包括時(shí),從該備用區(qū)中提取另一物理區(qū)塊并且在所提取的另一物理區(qū)塊中暫時(shí)地儲(chǔ)存該主機(jī)對(duì)該欲寫(xiě)入的邏輯區(qū)塊所寫(xiě)入的數(shù)據(jù)。7.根據(jù)權(quán)利要求3所述的區(qū)塊管理方法,還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊不屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取一個(gè)物理區(qū)塊并且使用所提取的一個(gè)物理區(qū)塊的上頁(yè)地址與下頁(yè)地址來(lái)寫(xiě)入該數(shù)據(jù)。8.根據(jù)權(quán)利要求1所述的區(qū)塊管理方法,其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及判斷每一邏輯區(qū)塊的使用計(jì)數(shù)是否大于存取頻繁門坎值,其中將該使用計(jì)數(shù)大于該存取頻繁門坎值的每一邏輯區(qū)塊記錄為該頻繁存取區(qū)塊。9.一種控制器,適用于具有多層存儲(chǔ)單元與非閃存的閃存儲(chǔ)存系統(tǒng),其中該多層存儲(chǔ)單元與非閃存具有多個(gè)物理區(qū)塊且該些物理區(qū)塊至少分組為數(shù)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址,該控制器包括微處理器單元;閃存接口,耦接至該微處理器單元;緩沖存儲(chǔ)器,耦接至該微處理器單元;以及存儲(chǔ)器管理模塊,耦接至該微處理器單元且具有可由該微處理器單元執(zhí)行的多個(gè)機(jī)器指令以對(duì)該閃存進(jìn)行多個(gè)區(qū)塊管理步驟,該些區(qū)塊管理步驟包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存取;記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊;以及執(zhí)行特殊模式以分別地使用該多層存儲(chǔ)單元與非閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)。10.根據(jù)權(quán)利要求9所述的控制器,其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及依據(jù)該些使用計(jì)數(shù)排序該些邏輯區(qū)塊并且從具有最大的該使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始依序記錄預(yù)先定義數(shù)目的邏輯區(qū)塊為該頻繁存取區(qū)塊。11.根據(jù)權(quán)利要求9所述的控制器,其中執(zhí)行該特殊模式以分別地使用區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)步驟包括當(dāng)該主機(jī)寫(xiě)入數(shù)據(jù)至每一邏輯區(qū)塊時(shí)判斷該欲寫(xiě)入的邏輯區(qū)塊是否屬于該頻繁存取區(qū)塊;以及當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取兩個(gè)12.根據(jù)權(quán)利要求IO所述的控制器,其中記錄每一邏輯區(qū)塊的使用計(jì)數(shù)數(shù)。13.根據(jù)權(quán)利要求11所述的控制器,其中該些區(qū)塊管理步驟還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)在邏輯區(qū)塊與物理區(qū)塊映兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存以及在特殊模式映射表中記錄儲(chǔ)存該欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)的兩個(gè)物理區(qū)塊。14.根據(jù)權(quán)利要求11所述的控制器,其中該些區(qū)塊管理方法還包括寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)同時(shí)該主機(jī)對(duì)該欲寫(xiě)入的邏輯區(qū)塊執(zhí)行隨機(jī)寫(xiě)入模式時(shí),從該備用區(qū)中提取另一物理區(qū)塊并且在所提取的另一物理區(qū)塊中暫時(shí)地儲(chǔ)存該主機(jī)對(duì)該欲寫(xiě)入的邏輯區(qū)塊所寫(xiě)入的數(shù)據(jù)。15.根據(jù)權(quán)利要求11所述的控制器,其中該些區(qū)塊管理步驟還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊不屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取一個(gè)物理區(qū)塊并且使用所提取的一個(gè)物理區(qū)塊的上頁(yè)地址與下頁(yè)地址來(lái)寫(xiě)入該數(shù)據(jù)。16.根據(jù)權(quán)利要求9所述的控制器,其中該閃存儲(chǔ)存系統(tǒng)為隨身碟、快閃存儲(chǔ)卡或固態(tài)硬盤(pán)。17.根據(jù)權(quán)利要求9所述的控制器,其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及判斷每一邏輯區(qū)塊的使用計(jì)數(shù)是否大于存取頻繁門坎值,其中將該使用計(jì)數(shù)大于該存取頻繁門坎值的每一邏輯區(qū)塊記錄為該頻繁存取區(qū)塊。18.—種儲(chǔ)存系統(tǒng),包括多層存儲(chǔ)單元與非閃存,具有多個(gè)物理區(qū)塊且該些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),其中每一物理區(qū)塊包括多個(gè)頁(yè)面地址且該些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址;傳輸連接接口;以及控制器,電性連接至該多層存儲(chǔ)單元與非閃存與該傳輸連接接口,該控制器會(huì)執(zhí)行存儲(chǔ)器管理模塊的多個(gè)機(jī)器指令以執(zhí)行多個(gè)區(qū)塊管理步驟,該些區(qū)塊管理步驟包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存?。挥涗泴儆陬l繁存取區(qū)塊的邏輯區(qū)塊;以及執(zhí)行特殊模式以分別地使用該多層存儲(chǔ)單元與非閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)。19.根據(jù)權(quán)利要求18所述的儲(chǔ)存系統(tǒng),其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及依據(jù)該些使用計(jì)數(shù)排序該些邏輯區(qū)塊并且從具有最大的該使用計(jì)數(shù)的邏輯區(qū)塊開(kāi)始依序記錄預(yù)先定義數(shù)目的邏輯區(qū)塊為該頻繁存取區(qū)塊。20.根據(jù)權(quán)利要求18所述的儲(chǔ)存系統(tǒng),其中執(zhí)行該特殊模式以分別地使用該多層存儲(chǔ)單元與非閃存的兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的數(shù)據(jù)步驟包括當(dāng)該主機(jī)寫(xiě)入數(shù)據(jù)至每一邏輯區(qū)塊時(shí)判斷該欲寫(xiě)入的邏輯區(qū)塊是否屬于該頻繁存耳又區(qū)塊;以及當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取兩個(gè)21.根據(jù)權(quán)利要求19所述的儲(chǔ)存系統(tǒng),其中記錄每一邏輯區(qū)塊的使用計(jì)計(jì)數(shù)。22.根據(jù)權(quán)利要求20所述的儲(chǔ)存系統(tǒng),其中該些區(qū)塊管理步驟還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊屬于該頻繁存取區(qū)塊時(shí)在邏輯區(qū)塊與物理區(qū)塊映射表中記錄特殊模式標(biāo)^兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存以及在特殊模式映射表中記錄儲(chǔ)存該欲寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)的兩個(gè)物理區(qū)塊。23.根據(jù)權(quán)利要求20所述的儲(chǔ)存系統(tǒng),其中該些區(qū)塊管理方法還包括寫(xiě)入的邏輯區(qū)塊的數(shù)據(jù)同時(shí)該主機(jī)對(duì)該欲寫(xiě)入的邏輯區(qū)塊執(zhí)行隨機(jī)寫(xiě)入模式時(shí),從該備用區(qū)中提取另一物理區(qū)塊并且在所提取的另一物理區(qū)塊中暫時(shí)地儲(chǔ)存該主機(jī)對(duì)該欲寫(xiě)入的邏輯區(qū)塊所寫(xiě)入的數(shù)據(jù)。24.根據(jù)權(quán)利要求20所述的儲(chǔ)存系統(tǒng),其中該些區(qū)塊管理步驟還包括當(dāng)該欲寫(xiě)入的邏輯區(qū)塊不屬于該頻繁存取區(qū)塊時(shí)則從該備用區(qū)中提取一個(gè)物理區(qū)塊并且使用所提取的一個(gè)物理區(qū)塊的上頁(yè)地址與下頁(yè)地址來(lái)寫(xiě)入該數(shù)據(jù)。25.根據(jù)權(quán)利要求18所述的儲(chǔ)存系統(tǒng),其中記錄屬于該頻繁存取區(qū)塊的邏輯區(qū)塊的步驟包括記錄每一邏輯區(qū)塊的使用計(jì)數(shù);以及判斷每一邏輯區(qū)塊的使用計(jì)數(shù)是否大于存取頻繁門坎值,其中將該使用計(jì)數(shù)大于該存取頻繁門坎值的每一邏輯區(qū)塊記錄為該頻繁存取區(qū)塊。全文摘要一種區(qū)塊管理方法及使用此方法的控制器與儲(chǔ)存系統(tǒng),其適用于管理多層存儲(chǔ)單元(MultiLevelCell,MLC)與非(NAND)閃存的多個(gè)物理區(qū)塊且此些物理區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),其中每一物理區(qū)塊包括多個(gè)頁(yè)面地址且此些頁(yè)面地址區(qū)分為多個(gè)上頁(yè)地址與寫(xiě)入速度快于該些上頁(yè)地址的多個(gè)下頁(yè)地址,此區(qū)塊管理方法包括配置多個(gè)邏輯區(qū)塊以供主機(jī)存取、記錄屬于頻繁存取區(qū)塊的邏輯區(qū)塊以及執(zhí)行特殊模式以使用MLCNAND閃存的至少兩個(gè)物理區(qū)塊的下頁(yè)地址來(lái)儲(chǔ)存屬于頻繁存取區(qū)塊的一個(gè)邏輯區(qū)塊的數(shù)據(jù)。基此,有效地提升閃存儲(chǔ)存系統(tǒng)的存取速度。文檔編號(hào)G06F12/06GK101634967SQ200810134348公開(kāi)日2010年1月27日申請(qǐng)日期2008年7月24日優(yōu)先權(quán)日2008年7月24日發(fā)明者葉志剛申請(qǐng)人:群聯(lián)電子股份有限公司