專利名稱::數(shù)據(jù)管理方法及使用此方法的閃存儲存系統(tǒng)與控制器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種用于閃存儲存系統(tǒng)的數(shù)據(jù)管理方法,尤其涉及一種適用于具有高速緩存的閃存儲存系統(tǒng)的數(shù)據(jù)管理方法,及使用此方法來管理數(shù)據(jù)的儲存系統(tǒng)與閃存控制器,其能夠有效地縮短清空(flush)高速緩存中暫存數(shù)據(jù)的時間。
背景技術(shù):
:數(shù)碼相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對數(shù)位內(nèi)容的儲存需求也急速增加。由于閃存(FlashMemory)具有數(shù)據(jù)非揮發(fā)性、省電、體積小與無機械結(jié)構(gòu)等的特性,適合使用者隨身攜帶作為數(shù)字檔案傳遞與交換的儲存媒體。固態(tài)硬盤(SolidStateDrive,SSD)就是以閃存作為儲存媒體的一個例子,并且已廣泛使用于電腦主機系統(tǒng)中作為主硬盤。在閃存儲存系統(tǒng)的設(shè)計上,一般來說,閃存儲存系統(tǒng)的實體區(qū)塊會分組為多個實體單元并且這些實體單元會分組為數(shù)據(jù)區(qū)(dataarea)與備用區(qū)(sparearea)0歸類為數(shù)據(jù)區(qū)的實體單元中會儲存由寫入指令所寫入的有效數(shù)據(jù),而備用區(qū)中的實體單元是用以在執(zhí)行寫入指令時替換數(shù)據(jù)區(qū)中的實體單元。具體來說,當閃存儲存系統(tǒng)接受到主機的寫入指令而欲對數(shù)據(jù)區(qū)的實體單元進行寫入時,閃存儲存系統(tǒng)會從備用區(qū)中提取一實體單元并且將在數(shù)據(jù)區(qū)中欲寫入的實體單元中的有效舊數(shù)據(jù)與欲寫入的新數(shù)據(jù)寫入至從備用區(qū)中提取的實體單元,并且將已寫入新數(shù)據(jù)的實體單元關(guān)聯(lián)為數(shù)據(jù)區(qū),并且將原本數(shù)據(jù)區(qū)的實體單元進行抹除并關(guān)聯(lián)為備用區(qū)。為了能讓主機能夠順利地存取以輪替方式儲存數(shù)據(jù)的實體單元,閃存儲存系統(tǒng)會提供邏輯單元給主機。也就是說,閃存儲存系統(tǒng)會利用在邏輯地ilh~^f^iikilhff^M^(logicaladdress-physicaladdressmappingtable)中i己新邏輯單元和數(shù)據(jù)區(qū)的實體單元之間的對映關(guān)系來反映實體單元的輪替,所以主機僅需要針對所提供邏輯單元進行寫入,而閃存儲存系統(tǒng)會依據(jù)邏輯地址-實體地址映射表對所對映的實體單元進行讀取或?qū)懭霐?shù)據(jù)。然而,相較于電腦主機系統(tǒng)的運作(例如,數(shù)據(jù)傳輸),閃存儲存裝置執(zhí)行上述實體單元輪替以寫入數(shù)據(jù)的所需時間相對較長,因此為了提升閃存儲存裝置的效率,一般來說閃存儲存裝置內(nèi)會配置高速緩存以縮短其完成相關(guān)指令的時間。例如,在閃存儲存裝置需花費相對多的時間才能完成電腦主機系統(tǒng)的寫入指令下,當電腦主機系統(tǒng)下達寫入指令時,閃存儲存系統(tǒng)會將欲寫入的數(shù)據(jù)暫存于高速緩存中并回復電腦主機系統(tǒng)已完成寫入指令。之后,當高速緩存已存滿數(shù)據(jù)時,閃存儲存裝置才會將數(shù)據(jù)寫入至其閃存中。然而,在使用高速緩存加入存取的閃存儲存裝置的架構(gòu)中,倘若高速緩存暫存相當大的數(shù)據(jù)或者所暫存的數(shù)據(jù)是需寫入至多個不同的邏輯單元時,當電腦主機系統(tǒng)下達清空(flush)高速緩存的指令時,閃存儲存系統(tǒng)會需要很長的時間方能將暫存高速緩存中的數(shù)據(jù)寫入至實體單元中,因此會造成嚴重延遲電腦主機系統(tǒng)的運作。
發(fā)明內(nèi)容本發(fā)明的一個目的是提供一種數(shù)據(jù)管理方法,適用于使用高速緩存的閃存儲存系統(tǒng),其能夠有效地避免當主機系統(tǒng)下達清空高速緩存的指令時所產(chǎn)生的逾時。本發(fā)明的另一目的是提供一種閃存控制器,適用于控制具高速緩存的閃存儲存系統(tǒng),其能夠有效地避免當主機系統(tǒng)下達清空高速緩存的指令時所產(chǎn)生的逾時。本發(fā)明的又一目的是提供一種具有高速緩存的閃存儲存系統(tǒng),其能夠有效地避免當主機系統(tǒng)下達清空高速緩存的指令時所產(chǎn)生的逾時。為實現(xiàn)上述第一個目的,本發(fā)明提出一種數(shù)據(jù)管理方法,適用于一閃存儲存系統(tǒng),其中此閃存儲存系統(tǒng)包括高速緩存與閃存,并且此閃存具有多個實體區(qū)塊。此數(shù)據(jù)管理方法包括在高速緩存中暫存來自于一主機系統(tǒng)的多個寫入數(shù)據(jù);判斷在閃存中寫入上述寫入數(shù)據(jù)的時間是否大于一處理時間上限值;以及當在閃存中寫入上述寫入數(shù)據(jù)的時間大于處理時間上限值時,則將暫存于高速緩存中的寫入數(shù)據(jù)的至少一部份寫入至閃存中。為實現(xiàn)上述另一目的,本發(fā)明提出一種閃存控制器,適用于控制一閃存儲存系統(tǒng),其中閃存儲存系統(tǒng)包括一高速緩存與一閃存,并且閃存具有多個實體區(qū)塊。閃存控制器包括微處理器單元、一主機系統(tǒng)的主機接口單元、閃存接口單元以及內(nèi)存管理單元。主機接口單元、閃存接口單元與內(nèi)存管理單元分別連接至微處理器單元。內(nèi)存管理單元會在高速緩存中暫存來自于主機系統(tǒng)的多個寫入數(shù)據(jù)。再者,內(nèi)存管理單元會判斷在閃存中寫入上述寫入數(shù)據(jù)的時間是否大于一處理時間上限值,并且當在閃存中寫入上述寫入數(shù)據(jù)的時間大于處理時間上限值時,則內(nèi)存管理單元會將暫存于高速緩存中的寫入數(shù)據(jù)的至少一部份寫入至閃存中。為實現(xiàn)上述又一目的,本發(fā)明提出一種閃存儲存系統(tǒng),包括高速緩存、具有多個實體區(qū)塊的閃存以及閃存控制器。閃存控制器是連接至高速緩存與閃存,并且閃存控制器會在高速緩存中暫存來自于一主機系統(tǒng)的多個寫入數(shù)據(jù)。再者,閃存控制器會判斷在閃存中寫入上述寫入數(shù)據(jù)的時間是否大于一處理時間上限值,其中當在閃存中寫入上述寫入數(shù)據(jù)的時間大于處理時間上限值時,則閃存控制器會將暫存于高速緩存中的寫入數(shù)據(jù)的至少一部份寫入至閃存中?;谏鲜觯景l(fā)明能夠有效地管理在高速緩存中的數(shù)據(jù),由此避免當主機系統(tǒng)下達清空指令時所產(chǎn)生的逾時。為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖作詳細說明如下。圖1是本發(fā)明第一實施例的閃存儲存系統(tǒng)的結(jié)構(gòu)示意圖;圖2是圖1的閃存晶片的結(jié)構(gòu)示意圖;圖3A3C是本發(fā)明第一實施例的閃存晶片的運作示意圖;圖4是本發(fā)明第一實施例的數(shù)據(jù)管理方法400的流程圖;圖5是本發(fā)明第二實施例的數(shù)據(jù)管理方法500的流程圖;圖6是本發(fā)明第三實施例的數(shù)據(jù)管理方法600的流程圖;圖7是本發(fā)明第四實施例的閃存儲存系統(tǒng)的結(jié)構(gòu)示意圖8是本發(fā)明第四實施例的閃存晶片的示意圖;圖9是本發(fā)明第四實施例的數(shù)據(jù)管理方法900的流程圖。附圖標記說明100,700-閃存儲存系統(tǒng);110、710-閃存控制器;IlOa-微處理器單元;110b、110b,-內(nèi)存管理單元;IlOc-閃存接口;IlOd-主機接口單元;120、720_高速緩存;130、730-閃存晶片;200-主機系統(tǒng);210、220、230、240-閃存模組;310-(0)、310-(1),310-(P)、310_(P+1)、310_(P+2)、310_(N)-實體單元;320、820_儲存區(qū);3;30、830-取代區(qū);302-系統(tǒng)區(qū);304-數(shù)據(jù)區(qū);306-備用區(qū);350-1350-M-邏輯單元;840-閃存暫存區(qū);400、500、600、900_數(shù)據(jù)管理程序;S401、S403、S405、S407、S409-數(shù)據(jù)管理步驟;S501、S503、S505、S507、S509-數(shù)據(jù)管理步驟;S60US603,S605,S607,S609,S611-數(shù)據(jù)管理步驟;S901、S903、S905、S907、S909、S911-數(shù)據(jù)管理步驟。具體實施例方式本發(fā)明所提出的數(shù)據(jù)管理方法是在主機系統(tǒng)寫入數(shù)據(jù)至高速緩存之前、或?qū)懭霐?shù)據(jù)至高速緩存之后或者以定期或不定期方式來偵測高速緩存內(nèi)所儲存的寫入數(shù)據(jù)的狀態(tài),并且判斷在閃存儲存系統(tǒng)的實體單元中寫入所有暫存的寫入數(shù)據(jù)所需的時間是否會超過一處理時間上限值。此外,當判斷寫入所有暫存的寫入數(shù)據(jù)所需的時間會超過此處理時間上限值時,則將暫存于高速緩存中的部分寫入數(shù)據(jù)先寫入至實體單元中。在此,處理時間上限值是由使用者所設(shè)定的預(yù)期值,其表示使用者能容許系統(tǒng)處于忙碌狀態(tài)而無法回應(yīng)其他指令的時間。在以下實施例中,此處理時間上限值是設(shè)定為800毫秒(millisecond)?;?,根據(jù)本發(fā)明的數(shù)據(jù)管理方法能夠在具有高速緩存的閃存儲存系統(tǒng)中當主機系統(tǒng)下達清空(flush)高速緩存內(nèi)大量或分散的數(shù)據(jù)時所發(fā)生上述時間延遲的問題。以下將以多個實施例并配合圖式詳細說明本發(fā)明。第一實施例圖1是本發(fā)明第一實施例的閃存儲存系統(tǒng)的結(jié)構(gòu)示意圖。請參照圖1,通常閃存儲存系統(tǒng)100會與主機系統(tǒng)200—起使用,以使主機系統(tǒng)200可將數(shù)據(jù)寫入至閃存儲存系統(tǒng)100或從閃存儲存系統(tǒng)100中讀取數(shù)據(jù)。在本實施例中,閃存儲存系統(tǒng)100為固態(tài)硬盤(SolidStateDrive,SSD)0但必須了解的是,在本發(fā)明另一實施例中閃存儲存系統(tǒng)100也可以是記憶卡或隨身碟。閃存儲存系統(tǒng)100包括閃存控制器110、高速緩存120與閃存晶片130。閃存控制器110會執(zhí)行以硬體型式或韌體型式實現(xiàn)的多個邏輯開關(guān)或控制指令,并且根據(jù)主機系統(tǒng)200的指令在閃存晶片130中進行數(shù)據(jù)的寫入、讀取與抹除等運作。閃存控制器110包括微處理器單元110a、內(nèi)存管理單元110b、閃存接口單元IlOc與主機接口單元IlOd0微處理器單元IlOa用以控制閃存控制器110的整體運作。具體來說,微處理器單元1IOa是與內(nèi)存管理單元110b、閃存接口單元1IOc與主機接口單元1IOd等一起運作以進行閃存儲存系統(tǒng)100的寫入、讀取、抹除等運作。內(nèi)存管理單元IlOb是連接至微處理器單元110a,并且用以執(zhí)行根據(jù)本實施例的區(qū)塊管理機制與數(shù)據(jù)管理與寫入機制。在本實施例中,內(nèi)存管理單元IlOb是以一韌體型式設(shè)置在閃存控制器110中。例如,將包括多個控制指令燒錄至一程序內(nèi)存(例如,只讀存儲器(ReadOnlyMemory,ROM))中,并且將此程序內(nèi)存嵌入在閃存控制器110中以實現(xiàn)內(nèi)存管理單元110b,其中當閃存儲存系統(tǒng)100啟動時,內(nèi)存管理單元IlOb的多個機器指令會由微處理器單元IlOa來執(zhí)行以完成本發(fā)明實施例的區(qū)塊管理機制與數(shù)據(jù)寫入機制。在本發(fā)明另一實施例中,內(nèi)存管理單元IlOb的控制指令亦可以軟體型式儲存于閃存晶片130的特定區(qū)域(例如,閃存中專用于存放系統(tǒng)數(shù)據(jù)的系統(tǒng)區(qū))中。同樣的,當閃存儲存系統(tǒng)100啟動時,內(nèi)存管理單元IlOb的控制指令會由微處理器單元IlOa來執(zhí)行。此夕卜,在本發(fā)明另一實施例中,內(nèi)存管理單元IlOb亦可以一硬體型式實現(xiàn)在閃存控制器110中。閃存接口單元IlOc是連接至微處理器單元IlOa并且用以存取閃存晶片130。也就是說,欲寫入至閃存晶片130的數(shù)據(jù)會經(jīng)由閃存接口單元IlOc轉(zhuǎn)換為閃存晶片130所能接受的格式。主機接口單元IlOd是連接至微處理器單元IlOa并且用以接收與識別主機系統(tǒng)200所傳送的指令。也就是說,主機系統(tǒng)200所傳送的指令與數(shù)據(jù)會通過主機接口單元IlOd來傳送至微處理器單元110a。在本實施例中,主機接口單元IlOd為SATA接口。然而,必須了解的是本發(fā)明不限于此,主機接口單元1IOd亦可以是USB接口、IEEE1394接口、PCIExpress接口、MS接口、MMC接口、SD接口、CF接口、IDE接口或其他適合的數(shù)據(jù)傳輸接此外,雖本實施例的附圖中沒有示出,但閃存控制器110還包括緩存、錯誤校正單元與電源管理單元等用于控制閃存的一般功能模組。高速緩存120是連接至閃存控制器110并且用以暫存主機系統(tǒng)200所存取的數(shù)據(jù)。在此實施例中,高速緩存120為動態(tài)隨機存儲器(DynamicRandomAccessmemory,DRAM)。然而,必須了解的是,本發(fā)明不限于此,磁阻式存儲器(MagnetoresistiveRandomAccessMemory,MRAM)、相變化存儲器(PhaseChangeRandomAccessMemory,PRAM)、單層記憶胞(SingleLevelCell,SLC)NAND閃存或其他適合的存儲器亦可應(yīng)用于本發(fā)明。特別是,高速緩存120亦可以是閃存晶片130中的部分儲存空間或者在閃存控制器中配置一存儲器。閃存晶片130是連接至閃存控制器110并且用以儲存數(shù)據(jù)。在本實施中,閃存晶片130為多層記憶胞(MultiLevelCell,MLC)NAND閃存。然而,必須了解的是,本發(fā)明不限于此。在本發(fā)明另一實施例中,SLCNAND閃存亦可應(yīng)用于本發(fā)明。圖2是圖1的閃存晶片的結(jié)構(gòu)示意圖。在本實施例中,閃存晶片130包括第一閃存模組210、第二閃存模組220、第三閃存模組230與第四閃存模組240,其中第一閃存模組210具有實體區(qū)塊210-(0)210_(N);第二閃存模組220具有實體區(qū)塊220-(0)220-(N);第三閃存模組230具有實體區(qū)塊230-(0)230-(N);以及第四閃存模組240具有實體區(qū)塊240-(0)240_(N)。值得一提的是,雖然本發(fā)明實施例是以包括4個閃存模組的閃存晶片130來描述,然而本發(fā)明不限于此。在閃存晶片130中實體區(qū)塊為抹除的最小單位。也就是,每一實體區(qū)塊含有最小數(shù)目之一并被抹除的存取單元。每一實體區(qū)塊通常會分割為數(shù)個頁面(page)。由于在本實施例中,閃存晶片130為MLCNAND閃存,因此,頁面為程序化(program)的最小單元。換言之,頁面為寫入數(shù)據(jù)或讀取數(shù)據(jù)的最小單元。每一頁面通常包括使用者數(shù)據(jù)區(qū)D與冗余區(qū)R。使用者數(shù)據(jù)區(qū)用以儲存使用者的數(shù)據(jù),而冗余區(qū)用以儲存系統(tǒng)的數(shù)據(jù)(例如,錯誤檢查與校正碼(ErrorCheckingandCorrectingCode,ECCCode)。在本實施例中,閃存晶片130的每一頁面具有8個扇區(qū)的容量,一般來說,一個扇區(qū)為512字節(jié),因此一個頁面為4千字節(jié)。但要特別說明的是,在其他閃存設(shè)計中(例如,SLCNAND閃存),最小的程序化單位亦可為一個扇區(qū),也就是說,以一個扇區(qū)為程序化的最小單元。此外,第一閃存模組210、第二閃存模組220、第三閃存模組230與第四閃存模組240的實體區(qū)塊也可被分組為數(shù)個區(qū)域(zone),以每一獨立的區(qū)域來管理實體區(qū)塊210-(0)210-(N)、實體區(qū)塊220-(0)220-(N)、實體區(qū)塊230-(0)230-(N)與實體區(qū)塊240_(0)240_(N)可增加操作執(zhí)行的平行程度且簡化管理的復雜度。在本實施例中,閃存控制器110會將第一閃存模組210、第二閃存模組220、第三閃存模組230與第四閃存模組240中的實體區(qū)塊邏輯地分組為多個實體單元來管理,例如1個實體單元包括4個實體區(qū)塊。由于以實體單元進行管理時,閃存控制器110是以較大的單位(即實體單元)來維護邏輯地址-實體地址映射表,因此可節(jié)省所需使用的緩存的空間。在本發(fā)明實施例中,實體區(qū)塊210-(0)210-(N)、實體區(qū)塊220-(0)220-(N)、實體區(qū)塊230-(0)230-(N)與實體區(qū)塊240-(0)240-(N)會被邏輯地分組為實體單元310-(0)310-(N)。必須了解的是,在本實施例中,將實體區(qū)塊分組為實體單元來管理,可有效地減輕系統(tǒng)資源的負載。然而,本發(fā)明不限于此,在本發(fā)明另一實施例中,亦可直接以實體區(qū)塊來進行本實施例的數(shù)據(jù)管理與寫入機制。圖3A3C是本發(fā)明第一實施例的閃存晶片的運作示意圖。必須了解的是,在此描述閃存實體區(qū)塊的運作時,以“提取”、“搬移”、“交換”、“替換”、“輪替”、“分組”等詞來操作閃存晶片130的實體區(qū)塊是邏輯上的概念。也就是說,閃存的實體區(qū)塊的實際位置并未改動,而是邏輯上對閃存的實體區(qū)塊進行操作。值得一提的是,下述的運作是由閃存控制器110的內(nèi)存管理單元IlOb所完成。請參照圖3A,內(nèi)存管理單元IlOb會將閃存晶片130的實體區(qū)塊會邏輯地分組為實體單元310-(0)310-(N),并且會將實體單元310-(0)310-(N)邏輯地分組為儲存區(qū)320以及取代區(qū)330。在儲存區(qū)320中的實體單元310-(0)310-(P)是閃存儲存系統(tǒng)100中正常被使用的實體單元。也就是說,內(nèi)存管理單元IlOb會將數(shù)據(jù)寫入至屬于儲存區(qū)320的實體單元。在取代區(qū)330中的實體單元310-(P+1)310-(N)是替代實體單元。例如,閃存晶片130于出廠時會預(yù)留4%的實體區(qū)塊作為更換使用。也就是說,當儲存區(qū)320中的實體區(qū)塊損毀時,預(yù)留于取代區(qū)330中的實體區(qū)塊可用以取代損壞的實體區(qū)塊(S卩,壞的實體區(qū)塊(badblock))。因此,倘若取代區(qū)330中仍存有可用的實體區(qū)塊時,若發(fā)生實體區(qū)塊損毀,內(nèi)存管理模組IlOb會從取代區(qū)330中提取可用的實體區(qū)塊來更換損毀的實體區(qū)塊。倘若取代區(qū)330中無可用的實體區(qū)塊且發(fā)生實體區(qū)塊損毀時,閃存儲存系統(tǒng)100將會被宣告無法再使用。請參照圖3B,內(nèi)存管理單元IlOb會將儲存區(qū)320的實體區(qū)塊邏輯地分組成一系統(tǒng)區(qū)302、一資料區(qū)304與一備用區(qū)306。系統(tǒng)區(qū)302包括實體單元310-(0)實體單元310-(S),資料區(qū)304包括實體單元310-(S+1)實體單元310-(S+M),并且備用區(qū)306包括實體單元310-(S+M+1)實體單元310-(P)0在本實施例中,上述S、M與P為正整數(shù),其代表各區(qū)配置的實體區(qū)塊數(shù)量,其可由閃存儲存系統(tǒng)的制造商依據(jù)所使用的閃存模組的容量而設(shè)定。邏輯上屬于系統(tǒng)區(qū)302中的實體單元用以記錄系統(tǒng)數(shù)據(jù),此系統(tǒng)數(shù)據(jù)包括關(guān)于閃存晶片的制造商與型號、每一閃存模組的區(qū)域數(shù)、每一區(qū)域的實體區(qū)塊數(shù)、每一實體區(qū)塊的頁面數(shù)等。邏輯上屬于數(shù)據(jù)區(qū)304中的實體單元用以儲存使用者的數(shù)據(jù),一般來說就是主機系統(tǒng)200所存取的邏輯單元所對映的實體單元。也就是說,數(shù)據(jù)區(qū)304的實體單元為儲存有效數(shù)據(jù)的單元。邏輯上屬于備用區(qū)306中的實體單元是用以輪替數(shù)據(jù)區(qū)304中的實體單元,因此在備用區(qū)306中的實體單元為空或可使用的單元,即無記錄數(shù)據(jù)或標記為已沒用的無效數(shù)據(jù)。也就是說,數(shù)據(jù)區(qū)304與備用區(qū)306的實體單元會以輪替方式來儲存主機系統(tǒng)200對閃存儲存系統(tǒng)100寫入的數(shù)據(jù)。如前所述,閃存晶片130的實體單元會以輪替方式提供主機系統(tǒng)200來儲存資料,因此內(nèi)存管理單元IlOb會提供邏輯單元350-1350-M給主機系統(tǒng)200以進行數(shù)據(jù)存取,并且通過維護邏輯地址_實體地址映射表(logicaladdress-physicaladdressmappingtable)來記錄邏輯單元所對映的實體單元。請同時參照圖3B與圖3C,例如,當主機系統(tǒng)欲寫入數(shù)據(jù)至邏輯單元350-1時,內(nèi)存管理單元IlOb會透過邏輯地址-實體地址映射表得知邏輯單元350-1目前是對映邏輯上屬于數(shù)據(jù)區(qū)304的實體單元310-(S+1)。因此,內(nèi)存管理單元IlOb會對實體單元310-(S+1)中的數(shù)據(jù)進行更新,期間,閃存控制器110會從備用區(qū)306中提取實體單元310-(S+M+1)來輪替數(shù)據(jù)區(qū)304的實體單元310-(S+1)。然而,當內(nèi)存管理單元IlOb將新數(shù)據(jù)寫入至實體單元310-(S+M+1)的同時,內(nèi)存管理單元IlOb不會立刻將實體單元310-(S+1)中的所有有效數(shù)據(jù)搬移至實體單元310-(S+M+1)而抹除實體單元310-(S+1)。具體來說,內(nèi)存管理單元IlOb會將實體單元310-(S+1)中欲寫入頁面的前的有效數(shù)據(jù)(即,頁PO與Pl)復制至實體單元310-(S+M+1)(如圖3C的(a)),并且將新數(shù)據(jù)(即,實體單元310-(S+M+1)的頁P2與P3)寫入至實體單元310-(S+M+1)(如圖3C的(b))。此時,內(nèi)存管理單元IlOb即完成寫入的動作。因為實體單元310-(S+1)中的有效數(shù)據(jù)有可能在下個操作(例如,寫入指令)中變成無效,因此立刻將實體單元310-(S+1)中的所有有效數(shù)據(jù)搬移至替換實體單元310-(S+M+1)可能會造成無謂的搬移。在此案例中,實體單元310-(S+1)與實體單元310-(S+M+1)的內(nèi)容整合起來才是所對映邏輯單元350-1的完整內(nèi)容。此母子關(guān)系(即,實體單元310-(S+1)與實體單元310-(S+M+1))的暫態(tài)關(guān)系可依據(jù)閃存控制器110中緩沖存儲器IlOd的大小而定,而暫時地維持此種暫態(tài)關(guān)系的動作一般稱為開啟(open)母子單元。特別是,在此開啟母子單元的狀態(tài)下,所處理的邏輯單元是對映多個實體單元。之后,當需要將實體單元310_(S+1)與實體單元310-(S+M+1)的內(nèi)容真正合并時,內(nèi)存管理單元IlOb才會將實體單元310-(s+l)與實體單元310-(S+M+1)整并為一個實體單元,由此提升區(qū)塊的使用效率,此合并的動作又可稱為關(guān)閉(close)母子單元。例如,如圖3C的(c)所示,當進行關(guān)閉母子單元時,內(nèi)存管理單元IlOb會將實體單元310-(S+1)中剩余的有效數(shù)據(jù)(即,頁P4PN)復制至替換實體單元310-(S+M+1),然后將實體單元310-(S+1)抹除并關(guān)聯(lián)為備用區(qū)306,同時,將實體單元310-(S+M+1)關(guān)聯(lián)為數(shù)據(jù)區(qū)304,并且在邏輯地址-實體地址映射表中將邏輯單元350-1的對映更改為實體單元310-(S+M+1),由此完成關(guān)閉母子單元的動作。特別是,在完成關(guān)閉母子單元的狀態(tài)下,所處理的邏輯單元是對映一個實體單元。在本實施例的閃存儲存系統(tǒng)100中,當主機系統(tǒng)200欲寫入數(shù)據(jù)至閃存儲存系統(tǒng)100時,閃存控制器110的內(nèi)存管理單元IlOb會從主機系統(tǒng)200中接收一寫入指令與一寫入數(shù)據(jù),其中此寫入指令會包含欲儲存此寫入數(shù)據(jù)的邏輯地址。之后,閃存控制器110的內(nèi)存管理單元IlOb會將此邏輯地址轉(zhuǎn)換為對映的邏輯單元,以及將寫入數(shù)據(jù)暫存在高速緩存120中同時記錄欲儲存此寫入數(shù)據(jù)的邏輯單元。期間,閃存儲存系統(tǒng)100可反復地從主機系統(tǒng)200中接收主機系統(tǒng)200欲寫入的數(shù)據(jù)并以相同于上述的方式處理(即,暫存于高速緩存120中)。然后,在主機系統(tǒng)200下達清空指令或者一適當時機時,內(nèi)存管理單元IlOb會將暫存于高速緩存120中的寫入數(shù)據(jù)寫入至閃存晶片130的儲存區(qū)320(如圖3A3C所示)中。值得一提的是,在本實施例中,每當主機系統(tǒng)200下達寫入指令且欲儲存的寫入數(shù)據(jù)被暫存于高速緩存120后,內(nèi)存管理單元IlOb會計算目前暫存于高速緩存120中的寫入數(shù)據(jù)的數(shù)據(jù)量,并且判斷目前暫存于高速緩存120中的寫入數(shù)據(jù)的數(shù)據(jù)量是否大于一數(shù)據(jù)量門限值。在此,數(shù)據(jù)量門限值是由使用者依據(jù)系統(tǒng)可允許的延遲時間自行設(shè)定。特別是,數(shù)據(jù)量門限值是根據(jù)上述處理時間上限值來設(shè)定。例如,在本實施例中,當暫存于高速緩存120中的寫入數(shù)據(jù)的數(shù)據(jù)量達到高速緩存120的容量的三分之二時,閃存儲存系統(tǒng)100將需要超過上述處理時間上限值的時間才能將所暫存的寫入數(shù)據(jù)寫入至閃存晶片130中,因此,數(shù)據(jù)量門限值是設(shè)定為高速緩存120的容量的三分之二。也就是說,當目前暫存于高速緩存120中的數(shù)據(jù)量大于此數(shù)據(jù)量門限值時,則判定當主機系統(tǒng)200執(zhí)行清空指令時在閃存晶片130中寫入高速緩存120中所有暫存的寫入數(shù)據(jù)的時間會大于上述處理時間上限值。因此,在目前暫存于高速緩存120中寫入數(shù)據(jù)的數(shù)據(jù)量大于此數(shù)據(jù)量門限值的情況下,內(nèi)存管理單元IlOb會將暫存于高速緩存120中的部分寫入數(shù)據(jù)先行寫入至儲存區(qū)320中。具體來說,內(nèi)存管理單元IlOb會依據(jù)欲儲存此些部分寫入數(shù)據(jù)的邏輯單元來將此些部分寫入數(shù)據(jù)寫入至對映實體單元(如圖3A3C所示)中。在本實施例中,內(nèi)存管理單元IlOb會將在高速緩存120中屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。然而,本發(fā)明不限于此,在本發(fā)明另一實施例中,內(nèi)存管理單元IlOb亦可將屬于數(shù)個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。在本發(fā)明另一實施例中,在執(zhí)行上述將屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中的動作時,內(nèi)存管理單元IlOb會判斷在高速緩存120中屬于同一個邏輯單元的寫入數(shù)據(jù)的數(shù)據(jù)量占整個邏輯單元的容量的比例是否大于一比例門限值,其中此比例門限值可由使用者自行設(shè)定。例如,在此,此比例門限值是設(shè)定為50%。具體來說,內(nèi)存管理單元IlOb會判斷在高速緩存120暫存多少此邏輯單元的數(shù)據(jù),其中若此邏輯單元的數(shù)據(jù)量已超過一定比例時,內(nèi)存管理單元IlOb會將此邏輯單元原始所對映的實體單元內(nèi)的舊有效數(shù)據(jù)復制到高速緩存120中,并且將原先暫存于高速緩存120中的寫入數(shù)據(jù)與所復制的舊有效數(shù)據(jù)整合后再一起寫入至從備用區(qū)306中提取的實體單元中。圖4是本發(fā)明第一實施例的數(shù)據(jù)管理方法400的流程圖。請參照圖4,當閃存儲存系統(tǒng)100開機后,在步驟S401中,閃存儲存系統(tǒng)100會被初始化。具體來說,在步驟S401中閃存控制器110的內(nèi)存管理單元IlOb會載入閃存晶片130的相關(guān)管理信息(如圖2、圖3A、圖3B與圖3C所描述的結(jié)構(gòu)與運作狀態(tài)的相關(guān)信息)。在步驟S403中,閃存控制器110會待命并從主機系統(tǒng)200中接收寫入指令與寫入數(shù)據(jù)。接著,在步驟S405中閃存控制器110會將所接收的寫入數(shù)據(jù)暫存于高速緩存120中。之后,在步驟S407中閃存控制器110會判斷高速緩存120中所暫存的寫入數(shù)據(jù)的數(shù)據(jù)量是否大于數(shù)據(jù)量門限值。倘若高速緩存120中所暫存的寫入數(shù)據(jù)的數(shù)據(jù)量大于數(shù)據(jù)量門限值時,則在步驟S409中閃存控制器110會將屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。然后,數(shù)據(jù)管理程序400會返回步驟S403中待命。第二實施例第二實施例相對于第一實施例是以目前高速緩存中暫存的數(shù)據(jù)量來判斷在實體單元中寫入所有暫存的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值,第二實施例的閃存儲存系統(tǒng)是依據(jù)暫存于高速緩存內(nèi)的寫入數(shù)據(jù)的分散程度來判斷在實體單元中寫入所有暫存的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值。在此,第二實施例與第一實施例的硬體結(jié)構(gòu)示意圖是類似的,以下將使用圖1、圖2、圖3A和3C來進行第二實施例的說明。類似第一實施例的運作,在本實施例中,當主機系統(tǒng)200欲寫入數(shù)據(jù)至閃存儲存系統(tǒng)100時,內(nèi)存管理單元IlOb會從主機系統(tǒng)200中接收一寫入指令與一寫入數(shù)據(jù),其中此寫入指令會包含欲儲存此寫入數(shù)據(jù)的邏輯地址。之后,內(nèi)存管理單元IlOb會將此邏輯地址轉(zhuǎn)換為對映的邏輯單元,以及將寫入數(shù)據(jù)暫存在高速緩存120中同時記錄欲儲存此寫入數(shù)據(jù)的邏輯單元。期間,閃存儲存系統(tǒng)100可反復地從主機系統(tǒng)200中接收主機系統(tǒng)200欲寫入的數(shù)據(jù)并以相同于上述的方式處理(即,暫存于高速緩存120中)。然后,在主機系統(tǒng)200下達清空指令或者一適當時機時,內(nèi)存管理單元IlOb會將暫存于高速緩存120中的寫入數(shù)據(jù)寫入至閃存晶片130的儲存區(qū)320(如圖3A3C所示的運作)中。此外,在本實施例中,每當主機系統(tǒng)200下達寫入指令且欲儲存的寫入數(shù)據(jù)被暫存于高速緩存120后,內(nèi)存管理單元IlOb會判斷目前暫存于高速緩存120中的所有寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目是否大于一數(shù)據(jù)分散門限值。具體來說,內(nèi)存管理單元IlOb可依據(jù)主機系統(tǒng)200所下達的寫入指令得知主機系統(tǒng)200欲在哪些邏輯單元中寫入這些寫入數(shù)據(jù),由此內(nèi)存管理單元IlOb可計算出需對幾個邏輯單元執(zhí)行上述開啟母子單元與關(guān)閉母子單元的動作(如圖3A3C所示的運作),進而判斷當主機系統(tǒng)200對閃存儲存系統(tǒng)100下達清空指令時閃存儲存系統(tǒng)100是否能在上述處理時間上限值內(nèi)將暫存于高速緩存120中的所有寫入數(shù)據(jù)寫入至閃存晶片130的儲存區(qū)320中。在此,數(shù)據(jù)分散門限值是由使用者依據(jù)系統(tǒng)可允許的延遲時間自行設(shè)定。特別是,數(shù)據(jù)分散門限值是根據(jù)上述處理時間上限值來設(shè)定。例如,在本實施例中,當目前暫存于高速緩存120中的寫入數(shù)據(jù)是對應(yīng)100個邏輯單元時,則閃存儲存系統(tǒng)100將需要超過上述處理時間上限值的時間才能將所暫存的寫入數(shù)據(jù)寫入至100個邏輯單元所對映的實體單元中,因此,數(shù)據(jù)分散門限值是設(shè)定為100。也就是說,當目前暫存于高速緩存120中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目大于此數(shù)據(jù)分散門限值時,則內(nèi)存管理單元IlOb會判定當主機系統(tǒng)200執(zhí)行清空指令時將高速緩存120中所有暫存的寫入數(shù)據(jù)寫入至閃存晶片130的時間會大于上述處理時間上限值。因此,在目前暫存于高速緩存120中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目大于此數(shù)據(jù)分散門限值的情況下,內(nèi)存管理單元IlOb會將暫存于高速緩存120中的部分寫入數(shù)據(jù)先行寫入至儲存區(qū)320中。具體來說,內(nèi)存管理單元IlOb會依據(jù)欲儲存此些部分寫入數(shù)據(jù)的邏輯單元來將此些部分寫入數(shù)據(jù)寫入至對映實體單元(如圖3A-3C所示)中。相同于上述第一范例實施例,內(nèi)存管理單元IlOb會將在高速緩存120中屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。圖5是根據(jù)本發(fā)明第二實施例的數(shù)據(jù)管理方法500的流程圖。請參照圖5,當閃存儲存系統(tǒng)100開機后,在步驟S501中,閃存儲存系統(tǒng)100會被初始化。之后,在步驟S503中,閃存控制器110會待命并從主機系統(tǒng)200中接收寫入指令與寫入數(shù)據(jù)。接著,在步驟S505中閃存控制器110會將所接收的寫入數(shù)據(jù)暫存于高速緩存120中。并且,在步驟S507中閃存控制器110會判斷高速緩存120中所暫存的所有寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目是否大于數(shù)據(jù)分散門限值。倘若高速緩存120中所暫存的所有寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目大于數(shù)據(jù)分散門限值時,則在步驟S509中閃存控制器110會將屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。然后,數(shù)據(jù)管理程序500會返回步驟S503中待命。第三實施例第三實施例與第一實施例的不同之處在于根據(jù)第三實施例的閃存儲存系統(tǒng)是依據(jù)閃存晶片的狀態(tài)來判斷在實體單元中寫入所有暫存的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值。在此,第三實施例與第一實施例的硬體結(jié)構(gòu)圖是類似的,以下將以圖1、圖2、圖3A3C來進行第三實施例的說明。類似第一實施例的運作,在本實施例中,當主機系統(tǒng)200欲寫入數(shù)據(jù)至閃存儲存系統(tǒng)100時,內(nèi)存管理單元IlOb會從主機系統(tǒng)200中接收一寫入指令與一寫入數(shù)據(jù),其中此寫入指令會包含欲儲存此寫入數(shù)據(jù)的邏輯位址。之后,內(nèi)存管理單元IlOb會將此邏輯位址轉(zhuǎn)換為對應(yīng)的邏輯單元,以及將寫入數(shù)據(jù)暫存在高速緩存120中同時記錄欲儲存此寫入數(shù)據(jù)的邏輯單元。期間,閃存儲存系統(tǒng)100可反復地從主機系統(tǒng)200中接收主機系統(tǒng)200欲寫入的數(shù)據(jù)并以相同于上述的方式處理(即,暫存于高速緩存120中)。然后,在主機系統(tǒng)200下達清空指令或者一適當時機時,內(nèi)存管理單元IlOb會將暫存于高速緩存120中的寫入數(shù)據(jù)寫入至閃存晶片130的儲存區(qū)320(如圖3A-3C所示的運作)中。此外,在本實施例中,每當主機系統(tǒng)200下達寫入指令且欲儲存的寫入數(shù)據(jù)被暫存于高速緩存120后,內(nèi)存管理單元IlOb會依據(jù)目前暫存于高速緩存120中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目以及備用區(qū)306中可用的實體單元的數(shù)目來計算一單元處理數(shù),并且比較所計算的單元處理數(shù)與一單元處理數(shù)上限來判斷在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值。具體來說,當閃存控制器110的內(nèi)存管理單元IlOb欲對一邏輯單元所對映的實體單元執(zhí)行寫入動作時,如圖3A與3B所示,內(nèi)存管理單元IlOb需從備用區(qū)306中提取另一實體單元以進行開啟母子單元的動作,其中若備用區(qū)306中無可用的實體單元(即,備用區(qū)306中的實體單元皆已被用作為對應(yīng)其他實體單元的子實體單元)時,則內(nèi)存管理單元IlOb必須關(guān)閉其他的母子單元(如3B所示)以使得備用區(qū)306中有可用的實體單元來執(zhí)行寫入動作。由于寫入的延遲主要是發(fā)生在執(zhí)行關(guān)閉母子單元程序而執(zhí)行開啟母子單元程序的所需時間很短,因此在本實施例中是依據(jù)暫存于高速緩存120中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目以及備用區(qū)306中可用的實體單元的數(shù)目來計算單元處理數(shù)(即,需執(zhí)行關(guān)閉母子單元程序的次數(shù)),由此判斷在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值。在此,單元處理數(shù)上限是由使用者自行設(shè)定,并且是根據(jù)執(zhí)行關(guān)閉母子單元所需的時間以及上述處理時間上限值來設(shè)定。例如,在本實施例中關(guān)閉母子單元程序需花費200毫秒,且處理時間上限值為800毫秒,因此單元處理數(shù)上限是設(shè)定為4。以下以一寫入范例來詳細說明本實施例的運作。假設(shè)備用區(qū)306中可用于開啟母子單元的實體單元的數(shù)目為5并且內(nèi)存管理單元IlOb已使用其中3個實體單元來執(zhí)行開啟母子單元程序以寫入邏輯單元0、1與2的寫入數(shù)據(jù)的情況(即,備用區(qū)306中有2個可用的實體單元)下,倘若主機系統(tǒng)200下達9個寫入指令,其中此些寫入指令是分別地指示在邏輯單元3、4、0、5、3、6、7、8與9中寫入數(shù)據(jù)時,內(nèi)存管理單元IlOb會在每次執(zhí)行寫入指令時將寫入數(shù)據(jù)暫存于高速緩存120并且判斷在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值運作,其判斷方式如下在執(zhí)行第1個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,對應(yīng)邏輯單元3的寫入數(shù)據(jù)需執(zhí)行1個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為0且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第2個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3與4的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,對應(yīng)邏輯單元3與4的寫入數(shù)據(jù)需執(zhí)行2個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為0(即,2減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第3個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4與0的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4與0的寫入數(shù)據(jù)需執(zhí)行2個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為0(即,2減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第4個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)需執(zhí)行3個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為1(即,3減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第5個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)需執(zhí)行3個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為1(即,3減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第6個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0、5與6的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5與6的寫入數(shù)據(jù)需執(zhí)行4個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為2(即,4減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第7個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0、5、6與7的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6與7的寫入數(shù)據(jù)需執(zhí)行5個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為3(即,5減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第8個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0、5、6、7與8的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6、7與8的寫入數(shù)據(jù)需執(zhí)行6個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為4(即,6減2)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元1IOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第9個寫入指令的情況下,由于高速緩存120中會存有對應(yīng)邏輯單元3、4、0、5、6、7、8與9的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6、7、8與9的寫入數(shù)據(jù)需執(zhí)行7個開啟母子單元程序來寫入。由于備用區(qū)306有2個可用的實體單元,因此在單元處理數(shù)為5(即,7減2)且大于單元處理數(shù)上限的情況下,內(nèi)存管理單元IlOb會判定在實體單元中寫入目前暫存于高速緩存120中的寫入數(shù)據(jù)所需的時間會超過上述處理時間上限值。在本實施例中,在內(nèi)存管理單元IlOb判斷所計算出的單元處理數(shù)大于所設(shè)定的單元處理上限值的情況下(例如,上述執(zhí)行第9個寫入指令的情況下),內(nèi)存管理單元IlOb會將暫存于高速緩存120中的部分寫入數(shù)據(jù)先行寫入至儲存區(qū)320中。具體來說,內(nèi)存管理單元IlOb會依據(jù)欲儲存此些部分寫入數(shù)據(jù)的邏輯單元來將此些部分寫入數(shù)據(jù)寫入至對映實體單元(如圖3A-3C所示)中。相同于上述第一范例實施例,內(nèi)存管理單元IlOb會將在高速緩存120中屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。圖6是本發(fā)明第三實施例的數(shù)據(jù)管理方法600的流程圖。請參照圖6,當閃存儲存系統(tǒng)100開機后,在步驟S601中,閃存儲存系統(tǒng)100會被初始化。之后,在步驟S603中,閃存控制器110的內(nèi)存管理單元IlOb會待命并從主機系統(tǒng)200中接收寫入指令與寫入數(shù)據(jù)。接著,在步驟S605中內(nèi)存管理單元IlOb會將所接收的寫入數(shù)據(jù)暫存于高速緩存120中。并且,在步驟S607中內(nèi)存管理單元IlOb會依據(jù)目前暫存于高速緩存120中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目以及備用區(qū)306中可用的實體單元的數(shù)目來計算一單元處理數(shù)。然后,在步驟S609中內(nèi)存管理單元IlOb會判斷所計算的單元處理數(shù)是否大于單元處理數(shù)上限值,其中倘若所計算的單元處理數(shù)大于單元處理數(shù)上限值時,則在步驟S611中會將屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至對映的實體單元中。然后,數(shù)據(jù)管理程序600會返回步驟S603中待命。第四實施例圖7是本發(fā)明第四實施例的閃存儲存系統(tǒng)的結(jié)構(gòu)示意圖。請參照圖7,閃存儲存系統(tǒng)700包括閃存控制器710、高速緩存720與閃存晶片730。閃存控制器710包括微處理器單元110a、內(nèi)存管理單元1IOb,、閃存介面單元1IOc與主機介面單元liod。微處理器單元110a、閃存介面單元IlOc與主機介面單元IlOd的結(jié)構(gòu)與功能已描述如上,在此不重復描述。內(nèi)存管理單元IlOb是連接至微處理器單元110a,并且用以執(zhí)行本實施例的區(qū)塊管理機制與數(shù)據(jù)管理與寫入機制。高速緩存720是連接至閃存控制器710并且用以暫存主機系統(tǒng)200所存取的數(shù)據(jù)。在此實施例中,高速緩存720為動態(tài)隨機存取器(DynamicRandomAccessmemory,DRAM)。然而,必須了解的是,本發(fā)明不限于此,磁阻式存儲器(MagnetoresistiveRandomAccessMemory,MRAM)、相變化存儲器(PhaseChangeRandomAccessMemory,PRAM)、單層記憶胞(SingleLevelCell,SLC)NAND閃存或其他適合的存儲器亦可應(yīng)用于本發(fā)明。閃存晶片730是連接至閃存控制器710并且用以儲存數(shù)據(jù)。在本實施中,閃存晶片730為多層記憶胞(MultiLevelCell,MLC)NAND閃存。然而,必須了解的是,本發(fā)明不限于此。在本發(fā)明另一實施例中,SLCNAND閃存亦可應(yīng)用于本發(fā)明。閃存晶片730的結(jié)構(gòu)是相同于圖2所示的結(jié)構(gòu),在此不重復描述。圖8是本發(fā)明第四實施例的閃存晶片的示意圖。值得一提的是,閃存晶片730中的實體單元310-(0)310-(N)會被分組為儲存區(qū)820、取代區(qū)830與閃存暫存區(qū)840(如圖8所示),其中儲存區(qū)820包括實體單元310-(0)310-(P),取代區(qū)830包括實體單元310-(P+1)310-(N-I),而閃存暫存區(qū)840包括實體單元310-(N)。儲存區(qū)820中的實體單元的運作方式是相同于圖3B3C所示,且取代區(qū)830的實體單元的運作方式是相同取代區(qū)330的實體單元的運作方式,在此不重復描述。閃存暫存區(qū)840中的實體單元是用以暫存欲寫入至儲存區(qū)820的數(shù)據(jù)。具體來說,由于當閃存控制器710的內(nèi)存管理單元110b’寫入數(shù)據(jù)至儲存區(qū)820時需執(zhí)行開啟與關(guān)閉母子單元程序(如圖3B3C所示),特別是當所寫入的數(shù)據(jù)為非連續(xù)小數(shù)據(jù)時,內(nèi)存管理單元110b’會需反復地執(zhí)行開啟與關(guān)閉母子單元程序,而降低整個系統(tǒng)的效能。為了避免反復地執(zhí)行開啟與關(guān)閉母子單元程序,在本實施例中,閃存暫存區(qū)840是用以暫存非連續(xù)小數(shù)據(jù)。在此,當主機系統(tǒng)200所寫入的數(shù)據(jù)為欲寫入至連續(xù)4個扇區(qū)位址時,則內(nèi)存管理單元110b’會將此寫入數(shù)據(jù)識別為連續(xù)大數(shù)據(jù),反之,則將此寫入數(shù)據(jù)識別為非連續(xù)小數(shù)據(jù)?;?,在本發(fā)明一范例實施例中,當內(nèi)存管理單元110b’寫入數(shù)據(jù)至儲存區(qū)820時,內(nèi)存管理單元110b’會判斷所寫入的數(shù)據(jù)是否為連續(xù)大數(shù)據(jù),其中當所寫入的數(shù)據(jù)為連續(xù)大數(shù)據(jù)時,則內(nèi)存管理單元110b’會將此數(shù)據(jù)寫入至儲存區(qū)820中,反之,則將此數(shù)據(jù)暫存于閃存暫存區(qū)840中。必須了解的是,在本實施例中,閃存暫存區(qū)840是以閃存晶片730中的一個實體單元來實現(xiàn),然而本發(fā)明不限于此,在本發(fā)明另一范例實施例中,閃存暫存區(qū)可以多個實體單元來實現(xiàn)。此外,在本發(fā)明另一實施例中,閃存暫存區(qū)840亦可以另一閃存晶片。在本實施例中,每當主機系統(tǒng)200欲寫入數(shù)據(jù)至閃存儲存系統(tǒng)700時,內(nèi)存管理單元110b’會從主機系統(tǒng)200中接收一寫入指令與一寫入數(shù)據(jù),其中此寫入指令會包含欲儲存此寫入數(shù)據(jù)的邏輯地址。接著,內(nèi)存管理單元110b’會將此邏輯地址轉(zhuǎn)換為對應(yīng)的邏輯單元,以及將寫入數(shù)據(jù)暫存在高速緩存720中同時記錄欲儲存此寫入數(shù)據(jù)的邏輯單元。也就是說,高速緩存720會持續(xù)地暫存主機系統(tǒng)200所傳送的寫入數(shù)據(jù)。之后,在主機系統(tǒng)200下達清空指令或者一適當時機時,內(nèi)存管理單元110b’會將暫存于高速緩存720中的寫入數(shù)據(jù)寫入至閃存晶片730的儲存區(qū)820或閃存暫存區(qū)840中。此外,在本實施例中,每當主機系統(tǒng)200下達寫入指令且欲儲存的寫入數(shù)據(jù)被暫存于高速緩存720后,內(nèi)存管理單元110b’會依據(jù)目前暫存于高速緩存720中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目、閃存暫存區(qū)840中可用的實體單元的數(shù)目以及儲存區(qū)820的備用區(qū)中可用的實體單元的數(shù)目來計算一單元處理數(shù),并且比較所計算的單元處理數(shù)與一單元處理數(shù)上限來判斷在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值。在本實施例中,單元處理數(shù)上限的設(shè)定以及單元處理數(shù)與單元處理數(shù)上限的比較是相同于第三實施例,在此不重復描述。例如,在本實施例中關(guān)閉母子單元程序需花費200毫秒,且處理時間上限值為800毫秒,因此單元處理數(shù)上限是設(shè)定為4。相較于第三實施例,本實施例是更考慮閃存暫存區(qū)840中可用的實體單元的數(shù)目。以下以一寫入范例來詳細說明本實施例的運作。假設(shè)儲存區(qū)820的備用區(qū)中可用于開啟母子單元的實體單元的數(shù)目為5,閃存暫存區(qū)840中的可用實體單元為1,并且內(nèi)存管理單元110b’已使用其中3個實體單元來執(zhí)行開啟母子單元程序以寫入邏輯單元0、1與2的寫入數(shù)據(jù)的情況(即,備用區(qū)306中有2個可用的實體單元)下,倘若主機系統(tǒng)200下達10個寫入指令,其中此些寫入指令是分別地指示在邏輯單元3、4、0、5、3、6、7、8、9與10中寫入數(shù)據(jù)時,內(nèi)存管理單元110b’會在每次執(zhí)行寫入指令時將寫入數(shù)據(jù)暫存于高速緩存720并且判斷在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間是否會超過上述處理時間上限值運作,其判斷方式如下在執(zhí)行第1個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,對應(yīng)邏輯單元3的寫入數(shù)據(jù)需執(zhí)行1個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為0且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第2個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3與4的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,對應(yīng)邏輯單元3與4的寫入數(shù)據(jù)需執(zhí)行2個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為0且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第3個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4與0的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4與0的寫入數(shù)據(jù)需執(zhí)行2個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為0且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第4個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)需執(zhí)行3個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為0(即,3減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第5個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0與5的寫入數(shù)據(jù)需執(zhí)行3個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為0(即,3減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第6個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0、5與6的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5與6的寫入數(shù)據(jù)需執(zhí)行4個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為1(即,4減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第7個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0、5、6與7的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6與7的寫入數(shù)據(jù)需執(zhí)行5個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為2(即,5減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第8個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0、5、6、7與8的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6、7與8的寫入數(shù)據(jù)需執(zhí)行6個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為3(即,6減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第9個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0、5、6、7、8與9的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6、7、8與9的寫入數(shù)據(jù)需執(zhí)行7個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為4(即,7減3)且不大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間不會超過上述處理時間上限值。在執(zhí)行第10個寫入指令的情況下,由于高速緩存720中會存有對應(yīng)邏輯單元3、4、0、5、6、7、8、9與10的寫入數(shù)據(jù)。此時,倘若主機系統(tǒng)200下達清空指令時,由于對應(yīng)邏輯單元0的開啟母子單元程序已被執(zhí)行,因此對應(yīng)邏輯單元3、4、0、5、6、7、8、9與10的寫入數(shù)據(jù)需執(zhí)行8個開啟母子單元程序來寫入。由于儲存區(qū)820的備用區(qū)有2個可用的實體單元且閃存暫存區(qū)840有1個可用的實體單元,因此在單元處理數(shù)為5(即,8減3)且大于單元處理數(shù)上限的情況下,內(nèi)存管理單元110b’會判定在實體單元中寫入目前暫存于高速緩存720中的寫入數(shù)據(jù)所需的時間會超過上述處理時間上限值。在本實施例中,在內(nèi)存管理單元110b’判斷所計算出的單元處理數(shù)大于所設(shè)定的單元處理上限值的情況下,內(nèi)存管理單元110b’會將暫存于高速緩存720中的部分寫入數(shù)據(jù)先行寫入至閃存暫存區(qū)840或儲存區(qū)820中。圖9是本發(fā)明第四實施例的數(shù)據(jù)管理方法900的流程圖。請參照圖9,當閃存儲存系統(tǒng)700開機后,在步驟S901中,閃存儲存系統(tǒng)700會被初始化。之后,在步驟S903中,閃存控制器710的內(nèi)存管理單元110b’會待命并從主機系統(tǒng)200中接收寫入指令與寫入數(shù)據(jù)。接著,在步驟S905中內(nèi)存管理單元110b’會將所接收的寫入數(shù)據(jù)暫存于高速緩存720中。并且,在步驟S907中內(nèi)存管理單元110b’會依據(jù)目前暫存于高速緩存720中的寫入數(shù)據(jù)所對應(yīng)的邏輯單元的數(shù)目、閃存暫存區(qū)840中的可用實體單元的數(shù)目以及儲存區(qū)820的備用區(qū)中可用的實體單元的數(shù)目來計算一單元處理數(shù)。然后,在步驟S909中內(nèi)存管理單元110b’會判斷所計算的單元處理數(shù)是否大于單元處理數(shù)上限值,其中倘若所計算的單元處理數(shù)大于單元處理數(shù)上限值時,則在步驟S911中會將屬于同一個邏輯單元的寫入數(shù)據(jù)寫入至閃存暫存區(qū)840中的實體單元中或儲存區(qū)820中對應(yīng)的實體單元中。然后,數(shù)據(jù)管理程序900會返回步驟S903中待命。必須了解的是,盡管在上述實施例中僅描述閃存儲存系統(tǒng)執(zhí)行寫入指令的流程,但必須了解的是,閃存控制器于待命時亦會依據(jù)閃存晶片的相關(guān)信息執(zhí)行讀取、抹除、關(guān)機或其他指令,其中此些指令的運作方式為此領(lǐng)域技術(shù)人員所熟知,在此不詳細描述。此外,必須了解的是,圖4、圖5、圖6與圖9所述的執(zhí)行順序并非限制本發(fā)明,此領(lǐng)域技術(shù)人員可依據(jù)本發(fā)明的精神下以不同于圖4、圖5、圖6與圖9所述的順序執(zhí)行上述步驟。綜上所述,本發(fā)明是通過判斷閃存控制器能否在所設(shè)定的處理時間上限值內(nèi),將高速緩存內(nèi)所暫存的所有寫入數(shù)據(jù)寫入至閃存晶片中,來預(yù)先處理高速緩存內(nèi)的寫入數(shù)據(jù),由此避免主機系統(tǒng)下達清空指令時可能產(chǎn)生的逾時問題。最后應(yīng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其進行限制,盡管參照較佳實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解其依然可以對本發(fā)明的技術(shù)方案進行修改或者等同替換,而這些修改或者等同替換亦不能使修改后的技術(shù)方案脫離本發(fā)明技術(shù)方案的精神和范圍。權(quán)利要求一種數(shù)據(jù)管理方法,適用于一閃存儲存系統(tǒng),其中該閃存儲存系統(tǒng)包括一高速緩存與一閃存,并且該閃存具有多個實體區(qū)塊,該數(shù)據(jù)管理方法包括在該高速緩存中暫存來自于一主機系統(tǒng)的多個寫入數(shù)據(jù);判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于一處理時間上限值;以及當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,則將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存中。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)管理方法,還包括將至少一部分的所述實體區(qū)塊分組為多個實體單元;以及配置多個邏輯單元,其中每一所述邏輯單元對映至少一個所述實體單元,其中每一所述寫入數(shù)據(jù)是被寫入至所述邏輯單元的其中之一。3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)管理方法,其中判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于該處理時間上限值的步驟包括判斷暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量是否大于一數(shù)據(jù)量門限值,其中當暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量大于該數(shù)據(jù)量門限值時,則判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。4.根據(jù)權(quán)利要求2所述的數(shù)據(jù)管理方法,其中判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于該處理時間上限值的步驟包括判斷寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目是否大于一數(shù)據(jù)分散門限值,其中當寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目大于該數(shù)據(jù)分散門限值時,則判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。5根據(jù)權(quán)利要求2所述的數(shù)據(jù)管理方法,還包括將所述實體單元至少分組為一數(shù)據(jù)區(qū)與一備用區(qū)。6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)管理方法,其中判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于該處理時間上限值的步驟包括依據(jù)寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目與該備用區(qū)中可用的所述實體單元的數(shù)目來獲取一單元處理數(shù);以及判斷該單元處理數(shù)是否大于一單元處理數(shù)上限,其中當該單元處理數(shù)大于該單元處理數(shù)上限時,則判斷寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值。7.根據(jù)權(quán)利要求5所述的數(shù)據(jù)管理方法,其中將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存中的步驟包括從寫入所述寫入數(shù)據(jù)的所述邏輯單元中選擇至少一個所述邏輯單元;從該備用區(qū)的實體單元之中選擇至少一個所述實體單元;將在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)以及該至少一個邏輯單元所對映的實體單元中的有效數(shù)據(jù),寫入至該至少一個所述實體單元中。8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)管理方法,其中將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存中的步驟還包括判斷在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例是否大于一比例門限值;以及當在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例大于該比例門限值時,則將該至少一個邏輯單元所對映的實體單元中的有效數(shù)據(jù)復制到該高速緩存中,并與該至少一邏輯單元的所述寫入數(shù)據(jù)整合。9.根據(jù)權(quán)利要求1所述的數(shù)據(jù)管理方法,還包括在該閃存儲存系統(tǒng)中配置一閃存暫存區(qū);以及當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存暫存區(qū)。10.一種閃存控制器,適用于控制一閃存儲存系統(tǒng),其中該閃存儲存系統(tǒng)包括一高速緩存與一閃存,并且該閃存具有多個實體區(qū)塊,該閃存控制器包括一微處理器單元;一主機接口單元,連接該微處理器單元,用以連接一主機系統(tǒng);一閃存接口單元,連接該微處理器單元,用以連接該閃存;以及一內(nèi)存管理單元,連接該微處理器單元,其中該內(nèi)存管理單元會在該高速緩存中暫存來自于該主機系統(tǒng)的多個寫入數(shù)據(jù),其中該內(nèi)存管理單元會判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于一處理時間上限值,并且其中當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,則該內(nèi)存管理單元會將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存中。11.根據(jù)權(quán)利要求10所述的閃存控制器,其中該內(nèi)存管理單元會將至少一部分的所述實體區(qū)塊分組為多個實體單元,并且配置多個邏輯單元,其中每一所述邏輯單元對映至少一個所述實體單元,其中每一所述寫入數(shù)據(jù)是被寫入至所述邏輯單元的其中之一。12.根據(jù)權(quán)利要求10所述的閃存控制器,其中該內(nèi)存管理單元會判斷暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量是否大于一數(shù)據(jù)量門限值,其中當暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量大于該數(shù)據(jù)量門限值時,則該內(nèi)存管理單元會判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。13.根據(jù)權(quán)利要求11所述的閃存控制器,其中該內(nèi)存管理單元會判斷寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目是否大于一數(shù)據(jù)分散門限值,其中當寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目大于該數(shù)據(jù)分散門限值時,則該內(nèi)存管理單元會判斷在該閃存的所述實體單元中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。14.根據(jù)權(quán)利要求11所述的閃存控制器,其中該內(nèi)存管理單元將所述實體單元至少分組為一數(shù)據(jù)區(qū)與一備用區(qū)。15.根據(jù)權(quán)利要求14所述的閃存控制器,其中該內(nèi)存管理單元會依據(jù)寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目與該備用區(qū)中可用的所述實體單元的數(shù)目來獲取一單元處理數(shù),以及判斷該單元處理數(shù)是否大于一單元處理數(shù)上限,其中當該單元處理數(shù)大于該單元處理數(shù)上限時,則該內(nèi)存管理單元判斷寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值。16.根據(jù)權(quán)利要求14所述的閃存控制器,其中該內(nèi)存管理單元會從寫入所述寫入數(shù)據(jù)的所述邏輯單元中選擇至少一個所述邏輯單元,從該備用區(qū)的實體單元之中選擇至少一個所述實體單元,并且將在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)和該至少一個邏輯單元所對映的實體單元中的有效數(shù)據(jù)寫入至該至少一個所述實體單元中。17.根據(jù)權(quán)利要求16所述的閃存控制器,其中該內(nèi)存管理單元會判斷在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例是否大于一比例門限值,其中當在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例大于該比例門限值時,則該內(nèi)存管理單元會將該至少一個邏輯單元所對應(yīng)的實體單元中的有效數(shù)據(jù)復制到該高速緩存中,并與該至少一邏輯單元的所述寫入數(shù)據(jù)整合。18.根據(jù)權(quán)利要求10所述的閃存控制器,該閃存儲存系統(tǒng)還包括一閃存暫存區(qū),其中當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,該內(nèi)存管理單元會將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存暫存區(qū)。19.一種閃存儲存系統(tǒng),包括一高速緩存;一閃存,包括多個實體區(qū)塊;以及一閃存控制器,連接至該高速緩存與該閃存,其中該閃存控制器會在該高速緩存中暫存來自于一主機系統(tǒng)的多個寫入數(shù)據(jù),其中該閃存控制器會判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是否大于一處理時間上限值,其中當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,則該閃存控制器會將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存中。20.根據(jù)權(quán)利要求19所述的閃存儲存系統(tǒng),其中該閃存控制器會將至少一部分的所述實體區(qū)塊分組為多個實體單元,并且配置多個邏輯單元,其中每一所述邏輯單元對映至少一個所述實體單元,其中每一所述寫入數(shù)據(jù)是被寫入至所述邏輯單元的其中之一。21.根據(jù)權(quán)利要求19所述的閃存儲存系統(tǒng),其中該閃存控制器會判斷暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量是否大于一數(shù)據(jù)量門限值,其中當暫存于該高速緩存中的所述寫入數(shù)據(jù)的數(shù)據(jù)量大于該數(shù)據(jù)量門限值時,則該閃存控制器會判斷在該閃存中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。22.根據(jù)權(quán)利要求20所述的閃存儲存系統(tǒng),其中該閃存控制器會判斷寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目是否大于一數(shù)據(jù)分散門限值,其中當寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目大于該數(shù)據(jù)分散門限值時,則該閃存控制器會判斷在該閃存的所述實體單元中寫入所述寫入數(shù)據(jù)的時間是大于該處理時間上限值。23.根據(jù)權(quán)利要求20所述的閃存儲存系統(tǒng),其中該閃存控制器將所述實體單元至少分組為一數(shù)據(jù)區(qū)與一備用區(qū)。24.根據(jù)權(quán)利要求23所述的閃存儲存系統(tǒng),其中該閃存控制器會依據(jù)寫入所述寫入數(shù)據(jù)的所述邏輯單元的數(shù)目與該備用區(qū)中可用的所述實體單元的數(shù)目來獲取一單元處理數(shù),以及判斷該單元處理數(shù)是否大于一單元處理數(shù)上限,其中當該單元處理數(shù)大于該單元處理數(shù)上限時,則該閃存控制器會判斷寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值。25.根據(jù)權(quán)利要求23所述的閃存儲存系統(tǒng),其中該閃存控制器會從寫入所述寫入數(shù)據(jù)的所述邏輯單元中選擇至少一個所述邏輯單元,從該備用區(qū)的實體單元之中選擇至少一個所述實體單元,并且將在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)和該至少一個邏輯單元所對映的實體單元中的有效數(shù)據(jù)寫入至該至少一個所述實體單元中。26.根據(jù)權(quán)利要求25項所述的閃存儲存系統(tǒng),其中該閃存控制器會判斷在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例是否大于一比例門限值,其中當在該高速緩存中寫入至該至少一個邏輯單元的所述寫入數(shù)據(jù)的數(shù)據(jù)量占該至少一邏輯單元的容量的比例大于該比例門限值時,則該閃存控制器會將該至少一個邏輯單元所對映的實體單元中的有效數(shù)據(jù)復制到該高速緩存中,并與該至少一邏輯單元的所述寫入數(shù)據(jù)整合。27.根據(jù)權(quán)利要求19所述的閃存儲存系統(tǒng),還包括一閃存暫存區(qū),其中當在該閃存中寫入所述寫入數(shù)據(jù)的時間大于該處理時間上限值時,該閃存控制器會將暫存于該高速緩存中的所述寫入數(shù)據(jù)的至少一部份寫入至該閃存暫存區(qū)。全文摘要本發(fā)明公開了一種數(shù)據(jù)管理方法,適用于具有高速緩存的閃存儲存系統(tǒng)。此數(shù)據(jù)管理方法包括當執(zhí)行寫入指令時先將寫入數(shù)據(jù)暫存于高速緩存中,并且確認目前暫存高速緩存中所有寫入數(shù)據(jù)的狀態(tài),其中倘若所確認的狀態(tài)顯示在閃存中寫入目前暫存在高速緩存中的所有寫入數(shù)據(jù)所需的寫入時間會超過一處理時間上限值時,則將暫存于高速緩存中的一部份寫入數(shù)據(jù)先寫入至閃存中。因此,根據(jù)本發(fā)明的數(shù)據(jù)管理方法能夠有效地避免當主機系統(tǒng)下達清空高速緩存的指令時所產(chǎn)生的逾時問題。文檔編號G06F12/08GK101866320SQ20091013395公開日2010年10月20日申請日期2009年4月14日優(yōu)先權(quán)日2009年4月14日發(fā)明者葉志剛,朱健華申請人:群聯(lián)電子股份有限公司