本發(fā)明涉及一種存儲器抹除方法,尤其涉及一種用于可重寫式非易失性存儲器模塊的存儲器抹除方法以及使用此方法的存儲器控制電路單元與存儲器存儲裝置。
背景技術(shù):
::數(shù)字相機(jī)、手機(jī)與MP3在這幾年來的成長十分迅速,使得消費者對存儲媒體的需求也急速增加。由于可重寫式非易失性存儲器(rewritablenon-volatilememory)模塊具有數(shù)據(jù)非易失性、省電、體積小、無機(jī)械結(jié)構(gòu)、讀寫速度快等特性,最適于可攜式電子產(chǎn)品,例如筆記型電腦。固態(tài)硬盤就是一種以可重寫式非易失性存儲器模塊作為儲存媒體的存儲裝置。因此,近年可重寫式非易失性存儲器存儲裝置產(chǎn)業(yè)成為電子產(chǎn)業(yè)中相當(dāng)熱門的一環(huán)。一般來說,可重寫式非易失性存儲器存儲裝置必須先經(jīng)過格式化程序,才能被用來儲存數(shù)據(jù)。又或者,當(dāng)使用者想要將儲存于可重寫式非易失性存儲器中的數(shù)據(jù)徹底刪除,使用者會對可重寫式非易失性存儲器存儲裝置進(jìn)行格式化操作。具體來說,以安全數(shù)字(SecureDigital,SD)標(biāo)準(zhǔn)為例,當(dāng)使用者使用主機(jī)系統(tǒng)的操作接口對連接至主機(jī)系統(tǒng)的可重寫式非易失性存儲器存儲裝置下達(dá)格式化指令時,指示有起始邏輯地址(CMD32)、結(jié)束邏輯地址(CMD32)和執(zhí)行抹除(CMD38)的抹除指令會下達(dá)給可重寫式非易失性存儲器存儲裝置,并且可重寫式非易失性存儲器存儲裝置的存儲器控制器會依據(jù)抹除指令中的起始邏輯地址和結(jié)束邏輯地址來執(zhí)行抹除操作。也就是說,之后,當(dāng)主機(jī)系統(tǒng)欲從已執(zhí)行抹除操作的邏輯地址范圍中讀取數(shù)據(jù)時,存儲器控制器會將預(yù)設(shè)數(shù)據(jù)(例如,每個比特皆為0的數(shù)據(jù))傳送給主機(jī)系統(tǒng)。然而,每次接收的抹除指令的欲抹除邏輯范圍不盡相同,特別是,隨著可重寫式非易失性存儲器存儲裝置的容量越來越大,若每次接收的抹除指令所指示的欲抹除邏輯范圍較小時,存儲器控制器需反復(fù)地執(zhí)行接收指令與執(zhí)行抹除操作,由此造成格式化所需要的時間也隨著大幅地增加。因此,實有必要研發(fā)一套能夠快速地對可重寫式非易失性存儲器存儲裝置執(zhí)行格式化的機(jī)制。技術(shù)實現(xiàn)要素:本發(fā)明提供一種存儲器抹除方法、存儲器控制電路單元及存儲器存儲裝置,其能夠大幅縮短執(zhí)行抹除指令的時間。本發(fā)明的一范例實施例提出一種用于一可重寫式非易失性存儲器模塊的存儲器抹除方法,此可重寫式非易失性存儲器模塊具有多個實體抹單元且每一實體抹除單元具有多個實體程序化單元。本存儲器抹除方法包括:接收抹除指令,并且依據(jù)此抹除指令識別欲抹除邏輯地址范圍,其中此欲抹除邏輯地址范圍屬于第一邏輯單元。本方法還包括:依據(jù)邏輯地址-實體地址映射表,判斷第一邏輯單元是否映射任一實體抹除單元,并且倘若第一邏輯單元無映射實體抹除單元時,在未對該可重寫式非易失性存儲器模塊實際地執(zhí)行抹除操作下,傳送抹除指令完成信息以回應(yīng)此抹除指令。本方法還包括:倘若第一實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元且無實體抹除單元作為對應(yīng)第一邏輯單元的子實體抹除單元時,建立對應(yīng)第一邏輯單元的抹除索引表,并且將此抹除索引表的多個比特之中至少一個比特標(biāo)記為第一值,其中第一邏輯單元被劃分為多個邏輯地址區(qū)域,此些比特的每一個比特是對應(yīng)此些邏輯地址區(qū)域的其中之一,且上述欲抹除邏輯地址范圍為被標(biāo)記為第一值的至少一比特對應(yīng)的邏輯地址區(qū)域。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:在建立對應(yīng)第一邏輯單元的抹除索引表,并且將抹除索引表的比特之中的至少一比特標(biāo)記為該第一值之后,倘若有屬于欲抹除邏輯地址范圍的數(shù)據(jù)被儲存在對應(yīng)第一邏輯單元的暫存實體抹除單元中時,刪除對應(yīng)欲抹除邏輯地址范圍的映射登錄。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:在建立對應(yīng)第一邏輯單元的抹除索引表,并且將抹除索引表的比特之中的至少一比特標(biāo)記為該第一值之后,判斷是否有屬于欲抹除邏輯地址范圍的數(shù)據(jù)被儲存在對應(yīng)第一邏輯單元的暫存實體抹除單元中。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:刪除對應(yīng)欲抹除邏輯地址范圍的映射登錄之后,更新對應(yīng)第一邏輯單元的暫存實體抹除單元的暫存映射表。在本發(fā)明的一范例實施例中,上述判斷第一邏輯單元是否映射此些實體抹除單元之中的任一實體抹除單元的步驟包括:判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元;判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的子實體抹除單元;判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的暫存實體抹除單元;并且倘若無實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元、子實體抹除單元與暫存實體抹除單元時,識別第一邏輯單元無映射實體抹除單元。在本發(fā)明的一范例實施例中,上述建立對應(yīng)第一邏輯單元的抹除索引表的步驟包括:動態(tài)地依據(jù)邏輯單元的大小設(shè)定每一個邏輯地址區(qū)域的大小,依據(jù)每一個邏輯地址區(qū)域的大小計算邏輯地址區(qū)域的數(shù)目,并且根據(jù)邏輯地址區(qū)域的數(shù)目配置抹除索引表的比特。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:倘若第二實體抹除單元已被程序化作為對應(yīng)第一邏輯單元的子實體抹除單元時,判斷欲抹除邏輯地址范圍的起始邏輯地址是否接續(xù)前一個抹除指令指示的結(jié)束邏輯地址;倘若欲抹除邏輯地址范圍的起始邏輯地址接續(xù)前一個抹除指令指示的結(jié)束邏輯地址時,判斷欲抹除邏輯地址范圍的結(jié)束邏輯地址是否等于第一邏輯單元的結(jié)束邏輯地址;以及倘若欲抹除邏輯地址范圍的結(jié)束邏輯地址等于第一邏輯單元的結(jié)束邏輯地址時,在邏輯地址-實體地址映射表中刪除第一邏輯單元的映射登錄。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:倘若欲抹除邏輯地址范圍的起始邏輯地址非接續(xù)前一個抹除指令指示的結(jié)束邏輯地址時,將預(yù)設(shè)數(shù)據(jù)程序化至第二實體抹除單元的至少一實體程序化單元中,其中第二實體抹除單元的此至少一實體程序化單元映射欲抹除邏輯地址范圍。在本發(fā)明的一范例實施例中,上述存儲器抹除方法還包括:倘若欲抹除邏輯地址范圍的結(jié)束邏輯地址不等于第一邏輯單元的結(jié)束邏輯地址時,將預(yù)設(shè)數(shù)據(jù)程序化至第二實體抹除單元的至少一實體程序化單元中,其中第二實體抹除單元的此至少一實體程序化單元映射欲抹除邏輯地址范圍。本發(fā)明的一范例實施例提出一種用于控制一可重寫式非易失性存儲器模塊的存儲器控制電路單元。此存儲器控制電路單元包括:主機(jī)接口、存儲器接口和存儲器管理電路。主機(jī)接口用以電性連接至主機(jī)系統(tǒng)。存儲器接口用以電性連接至可重寫式非易失性存儲器模塊,其中此可重寫式非易失性存儲器模塊具有多個實體抹單元且每一實體抹除單元具有多個實體程序化單元。存儲器管理電路電性連接至主機(jī)接口和存儲器接口。存儲器管理電路用以接收抹除指令,且依據(jù)抹除指令識別欲抹除邏輯地址范圍,其中此欲抹除邏輯地址范圍屬于第一邏輯單元。存儲器管理電路還用以依據(jù)邏輯地址-實體地址映射表,判斷第一邏輯單元是否映射任一實體抹除單元。倘若第一邏輯單元無映射實體抹除單元時,存儲器管理電路還用以在未對可重寫式非易失性存儲器模塊實際地執(zhí)行抹除操作下,傳送抹除指令完成信息以回應(yīng)此抹除指令。倘若第一實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元且無實體抹除單元作為對應(yīng)第一邏輯單元的子實體抹除單元時,存儲器管理電路還用以建立對應(yīng)第一邏輯單元的抹除索引表,將抹除索引表的多個比特之中至少一個比特標(biāo)記為第一值,其中第一邏輯單元被劃分為多個邏輯地址區(qū)域,此些比特的每一個比特是對應(yīng)所述多個邏輯地址區(qū)域的其中之一,且欲抹除邏輯地址范圍為此至少一比特對應(yīng)的邏輯地址區(qū)域。在本發(fā)明的一范例實施例中,在建立對應(yīng)第一邏輯單元的抹除索引表,并且將抹除索引表的比特之中的至少一個比特標(biāo)記為第一值之后,倘若有屬于欲抹除邏輯地址范圍的數(shù)據(jù)被儲存在對應(yīng)第一邏輯單元的暫存實體抹除單元中時,存儲器管理電路還用以刪除對應(yīng)欲抹除邏輯地址范圍的映射登錄并且更新對應(yīng)第一邏輯單元的暫存實體抹除單元的暫存映射表。在本發(fā)明的一范例實施例中,在建立對應(yīng)第一邏輯單元的抹除索引表,并且將抹除索引表的比特之中的至少一個比特標(biāo)記為第一值之后,該存儲器管理電路還用以判斷是否有屬于欲抹除邏輯地址范圍的數(shù)據(jù)被儲存在對應(yīng)第一邏輯單元的暫存實體抹除單元中。在本發(fā)明的一范例實施例中,刪除對應(yīng)欲抹除邏輯地址范圍的映射登錄之后,存儲器管理電路還用以更新對應(yīng)第一邏輯單元的暫存實體抹除單元的暫存映射表。在本發(fā)明的一范例實施例中,在上述判斷第一邏輯單元是否映射此些實體抹除單元之中的任一實體抹除單元的運作中,存儲器管理電路單元判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元,判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的子實體抹除單元并且判斷是否任一實體抹除單元被指派作為對應(yīng)第一邏輯單元的暫存實體抹除單元。倘若無實體抹除單元被指派作為對應(yīng)第一邏輯單元的母實體抹除單元、子實體抹除單元與暫存實體抹除單元時,存儲器管理電路單元識別第一邏輯單元無映射實體抹除單元。在本發(fā)明的一范例實施例中,在建立對應(yīng)第一邏輯單元的抹除索引表的運作中,存儲器控制電路單元動態(tài)地依據(jù)邏輯單元的大小設(shè)定每一個邏輯地址區(qū)域的大小,依據(jù)每一個邏輯地址區(qū)域的大小計算邏輯地址區(qū)域的數(shù)目,并且根據(jù)邏輯地址區(qū)域的數(shù)目配置抹除索引表的比特。在本發(fā)明的一范例實施例中,倘若第二實體抹除單元已被程序化作為對應(yīng)第一邏輯單元的子實體抹除單元時,存儲器管理電路判斷欲抹除邏輯地址范圍的起始邏輯地址是否接續(xù)前一個抹除指令指示的結(jié)束邏輯地址。倘若欲抹除邏輯地址范圍的起始邏輯地址接續(xù)前一個抹除指令指示的結(jié)束邏輯地址時,存儲器管理電路判斷欲抹除邏輯地址范圍的結(jié)束邏輯地址是否等于第一邏輯單元的結(jié)束邏輯地址。以及,倘若欲抹除邏輯地址范圍的結(jié)束邏輯地址等于第一邏輯單元的結(jié)束邏輯地址時,存儲器管理電路在邏輯地址-實體地址映射表中刪除第一邏輯單元的映射登錄。在本發(fā)明的一范例實施例中,倘若欲抹除邏輯地址范圍的起始邏輯地址非接續(xù)前一個抹除指令指示的結(jié)束邏輯地址時,存儲器管理電路將預(yù)設(shè)數(shù)據(jù)程序化至第二實體抹除單元的至少一實體程序化單元中,其中第二實體抹除單元的此至少一實體程序化單元映射欲抹除邏輯地址范圍。在本發(fā)明的一范例實施例中,倘若欲抹除邏輯地址范圍的結(jié)束邏輯地址不等于第一邏輯單元的結(jié)束邏輯地址時,存儲器管理電路下達(dá)指令序列以將預(yù)設(shè)數(shù)據(jù)程序化至第二實體抹除單元的至少一實體程序化單元中,其中第二實體抹除單元的此至少一實體程序化單元映射欲抹除邏輯地址范圍。本發(fā)明的一范例實施例提出一種存儲器存儲裝置,其包括用以電性連接至主機(jī)系統(tǒng)的連接接口單元、可重寫式非易失性存儲器模塊以及上述存儲器控制電路單元。可重寫式非易失性存儲器模塊具有多個實體抹除單元,且每一個實體抹除單元具有多個實體程序化單元。存儲器控制電路單元電性連接至此連接接口單元與可重寫式非易失性存儲器模塊?;谏鲜?,本發(fā)明范例實施例的存儲器抹除方法、存儲器控制電路單元及存儲器存儲裝置會根據(jù)欲抹除邏輯地址范圍及其所屬的邏輯單元的映射狀態(tài)來執(zhí)行對應(yīng)的操作,由此大幅縮短執(zhí)行抹除指令的時間。為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖作詳細(xì)說明如下。附圖說明圖1是根據(jù)一范例實施例所顯示的主機(jī)系統(tǒng)、存儲器存儲裝置及輸入/輸出(I/O)裝置的示意圖;圖2是根據(jù)另一范例實施例所顯示的主機(jī)系統(tǒng)、存儲器存儲裝置及輸入/輸出(I/O)裝置的示意圖;圖3是根據(jù)另一范例實施例所顯示的主機(jī)系統(tǒng)與存儲器存儲裝置的示意圖;圖4是根據(jù)一范例實施例所顯示的主機(jī)系統(tǒng)與存儲器存儲裝置的概要方框圖;圖5是根據(jù)一范例實施例所顯示的存儲器控制電路單元的概要方框圖;圖6與圖7是根據(jù)一范例實施例所顯示的管理實體抹除單元的范例示意圖;圖8~圖13是根據(jù)一范例實施例所顯示的寫入數(shù)據(jù)至可重寫式非易失性存儲器模塊的范例及其對應(yīng)的邏輯地址-實體地址映射表;圖14是根據(jù)一范例實施例所顯示的抹除索引表的示意圖;圖15A與圖15B是根據(jù)一范例實施例所顯示的存儲器抹除方法的流程圖。附圖標(biāo)記:10、30:存儲器存儲裝置;11、31:主機(jī)系統(tǒng);12:輸入/輸出(I/O)裝置;110:系統(tǒng)總線;111:處理器;112:隨機(jī)存取存儲器(RAM);113:只讀存儲器(ROM);114:數(shù)據(jù)傳輸接口;20:主機(jī)板;204:無線存儲器存儲裝置;205:全球定位系統(tǒng)模塊;206:網(wǎng)絡(luò)接口卡;207:無線傳輸裝置;208:鍵盤;209:屏幕;210:喇叭;30:存儲器存儲裝置;31:主機(jī)系統(tǒng);32:SD卡;33:CF卡;34:嵌入式存儲裝置;341:嵌入式多媒體卡;342:嵌入式多芯片封裝存儲裝置;402:連接接口單元;404:存儲器控制電路單元;406:可重寫式非易失性存儲器模塊;410(0)、410(1)、410(F-1)、410(F)、410(F+1)、410(S-1)、410(S)、410(S+1)、410(R-1)、410(R)、410(R+1)、410(N):實體抹除單元;502:存儲器管理電路;504:主機(jī)接口;506:存儲器接口;508:緩沖存儲器;510:電源管理電路;512:錯誤檢查與校正電路;602:數(shù)據(jù)區(qū);604:閑置區(qū);606:系統(tǒng)區(qū);608:取代區(qū);LBA(0)~LBA(H):邏輯單元;LZ(0)~LZ(M):邏輯區(qū)域;1101:邏輯地址-實體地址映射表;1401:抹除索引表;S1501:接收抹除指令并且依據(jù)抹除指令識別欲抹除邏輯地址范圍以及此欲抹除邏輯地址范圍所屬的邏輯單元的步驟;S1503:判斷是否有實體抹除單元被指派作為第一邏輯單元的母實體抹除單元的步驟;S1505:判斷是否有實體抹除單元被指派作為第一邏輯單元的子實體抹除單元的步驟;S1507:判斷在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是否儲存預(yù)設(shè)數(shù)據(jù)的步驟;S1509:建立對應(yīng)第一邏輯單元的抹除索引表并且將此抹除索引表中對應(yīng)的欲抹除邏輯地址范圍的至少一個比特標(biāo)記為第一值的步驟;S1511:判斷是否有實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)的步驟;S1513:刪除對應(yīng)的映射登錄并更新第一邏輯單元的暫存實體抹除單元的暫存映射表的步驟;S1515:傳送抹除指令完成信息的步驟;S1517:判斷欲抹除邏輯地址范圍的起始邏輯地址是否接續(xù)前一個抹除指令指示的結(jié)束邏輯地址且欲抹除邏輯地址范圍的結(jié)束邏輯地址是否為第一邏輯單元的結(jié)束邏輯地址的步驟;S1519:在邏輯地址-實體地址映射表中更新第一邏輯單元的映射登錄的步驟;S1521:將預(yù)設(shè)數(shù)據(jù)程序化至欲抹除邏輯地址范圍所映射的實體程序化單元中的步驟;S1523:選擇一個實體抹除單元作為第一邏輯單元的子實體抹除單元并且將預(yù)設(shè)數(shù)據(jù)程序化至欲抹除邏輯地址范圍所映射的實體程序化單元中的步驟;S1525:判斷是否有實體抹除單元被指派作為第一邏輯單元的子實體抹除單元的步驟;S1527:判斷在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是否儲存預(yù)設(shè)數(shù)據(jù)的步驟;S1529:判斷是否有實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)的步驟;S1531:刪除對應(yīng)的映射登錄并更新第一邏輯單元的暫存實體抹除單元的暫存映射表的步驟。具體實施方式一般而言,存儲器存儲裝置(也稱,存儲器儲存系統(tǒng))包括可重寫式非易失性存儲器模塊與控制器(也稱,控制電路單元)。通常存儲器存儲裝置是與主機(jī)系統(tǒng)一起使用,以使主機(jī)系統(tǒng)可將數(shù)據(jù)寫入至存儲器存儲裝置或從存儲器存儲裝置中讀取數(shù)據(jù)。圖1是根據(jù)一范例實施例所顯示的主機(jī)系統(tǒng)、存儲器存儲裝置及輸入/輸出(I/O)裝置的示意圖,并且圖2是根據(jù)另一范例實施例所顯示的主機(jī)系統(tǒng)、存儲器存儲裝置及輸入/輸出(I/O)裝置的示意圖。請參照圖1與圖2,主機(jī)系統(tǒng)11一般包括處理器111、隨機(jī)存取存儲器(randomaccessmemory,RAM)112、只讀存儲器(readonlymemory,ROM)113及數(shù)據(jù)傳輸接口114。處理器111、隨機(jī)存取存儲器112、只讀存儲器113及數(shù)據(jù)傳輸接口114皆電性連接至系統(tǒng)總線(systembus)110。在本范例實施例中,主機(jī)系統(tǒng)11是通過數(shù)據(jù)傳輸接口114與存儲器存儲裝置10電性連接。例如,主機(jī)系統(tǒng)11可經(jīng)由數(shù)據(jù)傳輸接口114將數(shù)據(jù)寫入至存儲器存儲裝置10或從存儲器存儲裝置10中讀取數(shù)據(jù)。此外,主機(jī)系統(tǒng)11是通過系統(tǒng)總線110與I/O裝置12電性連接。例如,主機(jī)系統(tǒng)11可經(jīng)由系統(tǒng)總線110將輸出信號傳送至I/O裝置12或從I/O裝置12接收輸入信號。在本范例實施例中,處理器111、隨機(jī)存取存儲器112、只讀存儲器113及數(shù)據(jù)傳輸接口114是可設(shè)置在主機(jī)系統(tǒng)11的主機(jī)板20上。數(shù)據(jù)傳輸接口114的數(shù)目可以是一個或多個。通過數(shù)據(jù)傳輸接口114,主機(jī)板20可以經(jīng)由有線或無線方式電性連接至存儲器存儲裝置10。存儲器存儲裝置10可例如是隨身盤201、記憶卡202、固態(tài)硬盤(SolidStateDrive,SSD)203或無線存儲器存儲裝置204。無線存儲器存儲裝置204可例如是近距離無線通信(NearFieldCommunicationStorage,NFC)存儲器存儲裝置、無線傳真(WiFi)存儲器存儲裝置、藍(lán)牙(Bluetooth)存儲器存儲裝置或低功耗藍(lán)牙存儲器存儲裝置(例如,iBeacon)等以各式無線通信技術(shù)為基礎(chǔ)的存儲器存儲裝置。此外,主機(jī)板20也可以通過系統(tǒng)總線110電性連接至全球定位系統(tǒng)(GlobalPositioningSystem,GPS)模塊205、網(wǎng)絡(luò)接口卡206、無線傳輸裝置207、鍵盤208、屏幕209、喇叭210等各式I/O裝置。例如,在一范例實施例中,主機(jī)板20可通過無線傳輸裝置207存取無線存儲器存儲裝置204。在一范例實施例中,所提及的主機(jī)系統(tǒng)為可實質(zhì)地與存儲器存儲裝置配合以儲存數(shù)據(jù)的任意系統(tǒng)。雖然在上述范例實施例中,主機(jī)系統(tǒng)是以電腦系統(tǒng)來作說明,然而,圖3是根據(jù)另一范例實施例所顯示的主機(jī)系統(tǒng)與存儲器存儲裝置的示意圖。請參照圖3,在另一范例實施例中,主機(jī)系統(tǒng)31也可以是數(shù)字相機(jī)、攝影機(jī)、通信裝置、音頻播放器、視頻播放器或平板電腦等系統(tǒng),而存儲器存儲裝置30可為其所使用的SD卡32、CF卡33或嵌入式存儲裝置34等各式非易失性存儲器存儲裝置。嵌入式存儲裝置34包括嵌入式多媒體卡(embeddedMMC,eMMC)341和/或嵌入式多芯片封裝存儲裝置(embeddedMultiChipPackage,eMCP)342等各類型將存儲器模塊直接電性連接于主機(jī)系統(tǒng)的基板上的嵌入式存儲裝置。圖4是根據(jù)一范例實施例所顯示的主機(jī)系統(tǒng)與存儲器存儲裝置的概要方框圖。請參照圖4,存儲器存儲裝置10包括連接接口單元402、存儲器控制電路單元404與可重寫式非易失性存儲器模塊406。在本范例實施例中,連接接口單元402是相容于安全數(shù)字(SecureDigital,SD)接口標(biāo)準(zhǔn)。然而,必須了解的是,本發(fā)明不限于此,連接接口單元402也可以是符合序列先進(jìn)附件(SerialAdvancedTechnologyAttachment,SATA)標(biāo)準(zhǔn)、并列先進(jìn)附件(ParallelAdvancedTechnologyAttachment,PATA)標(biāo)準(zhǔn)、電氣和電子工程師協(xié)會(InstituteofElectricalandElectronicEngineers,IEEE)1394標(biāo)準(zhǔn)、高速周邊零件連接接口(PeripheralComponentInterconnectExpress,PCIExpress)標(biāo)準(zhǔn)、通用序列總線(UniversalSerialBus,USB)標(biāo)準(zhǔn)、超高速一代(UltraHighSpeed-I,UHS-I)接口標(biāo)準(zhǔn)、超高速二代(UltraHighSpeed-II,UHS-II)接口標(biāo)準(zhǔn)、記憶棒(MemoryStick,MS)接口標(biāo)準(zhǔn)、多芯片封裝(Multi-ChipPackage)接口標(biāo)準(zhǔn)、多媒體存儲卡(MultiMediaCard,MMC)接口標(biāo)準(zhǔn)、嵌入式多媒體存儲卡(EmbeddedMultimediaCard,eMMC)接口標(biāo)準(zhǔn)、通用快閃存儲器(UniversalFlashStorage,UFS)接口標(biāo)準(zhǔn)、嵌入式多芯片封裝(embeddedMultiChipPackage,eMCP)接口標(biāo)準(zhǔn)、小型快閃(CompactFlash,CF)接口標(biāo)準(zhǔn)、整合式驅(qū)動電子接口(IntegratedDeviceElectronics,IDE)標(biāo)準(zhǔn)或其他適合的標(biāo)準(zhǔn)。在本范例實施例中,連接接口單元402可與存儲器控制電路單元404封裝在一個芯片中,或者連接接口單元402是布設(shè)于一包含存儲器控制電路單元的芯片外。存儲器控制電路單元404用以執(zhí)行以硬件型式或固件型式實作的多個邏輯門或控制指令,并且根據(jù)主機(jī)系統(tǒng)11的指令在可重寫式非易失性存儲器模塊406中進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作??芍貙懯椒且资源鎯ζ髂K406是電性連接至存儲器控制電路單元404,并且用以儲存主機(jī)系統(tǒng)11所寫入的數(shù)據(jù)??芍貙懯椒且资源鎯ζ髂K406具有實體抹除單元410(0)~410(N)。例如,實體抹除單元410(0)~410(N)可屬于同一個存儲器晶粒(die)或者屬于不同的存儲器晶粒。每一實體抹除(erasing)單元分別具有多個實體程序化(programming)單元,其中屬于同一個實體抹除單元之實體程序化單元可被獨立地寫入且被同時地抹除。然而,必須了解的是,本發(fā)明不限于此,每一實體抹除單元是可由64個實體程序化單元、256個實體程序化單元或其他任意個實體程序化單元所組成。更詳細(xì)來說,實體抹除單元為抹除的最小單位。即,每一實體抹除單元含有最小數(shù)目的一并被抹除的存儲單元。實體程序化單元為程序化的最小單元。即,實體程序化單元為寫入數(shù)據(jù)的最小單元。每一實體程序化單元通常包括數(shù)據(jù)比特區(qū)與冗余比特區(qū)。數(shù)據(jù)比特區(qū)包含多個實體存取地址用以儲存使用者的數(shù)據(jù),而冗余比特區(qū)用以儲存系統(tǒng)的數(shù)據(jù)(例如,控制信息與錯誤更正碼)。在本范例實施例中,每一個實體程序化單元的數(shù)據(jù)比特區(qū)中會包含8個實體存取地址,且一個實體存取地址的大小為512比特組(byte)。然而,在其他范例實施例中,數(shù)據(jù)比特區(qū)中也可包含數(shù)目更多或更少的實體存取地址,本發(fā)明并不限制實體存取地址的大小以及個數(shù)。例如,在一范例實施例中,實體抹除單元為實體區(qū)塊,并且實體程序化單元為實體頁面或?qū)嶓w扇區(qū),但本發(fā)明不以此為限。在本范例實施例中,可重寫式非易失性存儲器模塊406為單階存儲單元(SingleLevelCell,SLC)NAND型快閃存儲器模塊(即,一個存儲單元中可儲存1個數(shù)據(jù)比特的快閃存儲器模塊)。然而,本發(fā)明不限于此,可重寫式非易失性存儲器模塊406也可是多階存儲單元(MultiLevelCell,MLC)NAND型快閃存儲器模塊(即,一個存儲單元中可儲存2個數(shù)據(jù)比特的快閃存儲器模塊)、三階存儲單元(TrinaryLevelCell,TLC)NAND型快閃存儲器模塊(即,一個存儲單元中可儲存3個數(shù)據(jù)比特的快閃存儲器模塊)或其他具有相同特性的存儲器模塊。圖5是根據(jù)一范例實施例所顯示的存儲器控制電路單元的概要方框圖。請參照圖5,存儲器控制電路單元404包括存儲器管理電路502、主機(jī)接口504與存儲器接口506、緩沖存儲器508、電源管理電路510與錯誤檢查與校正電路512。存儲器管理電路502用以控制存儲器控制電路單元404的整體操作。具體來說,存儲器管理電路502具有多個控制指令,并且在存儲器存儲裝置10操作時,此些控制指令會被執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。以下描述存儲器管理電路502所執(zhí)行的操作與功能,也可視為由存儲器控制電路單元404所執(zhí)行。在本范例實施例中,存儲器管理電路502的控制指令是以固件型式來實作。例如,存儲器管理電路502具有微處理器單元(未顯示)與只讀存儲器(未顯示),并且此些控制指令是被刻錄至此只讀存儲器中。當(dāng)存儲器存儲裝置10操作時,此些控制指令會由微處理器單元來執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。圖6與圖7是根據(jù)一范例實施例所顯示的管理實體抹除單元的范例示意圖。必須了解的是,在此描述可重寫式非易失性存儲器模塊406之實體抹除單元的操作時,以“提取”、“分組”、“劃分”、“關(guān)聯(lián)”等詞來操作實體抹除單元是邏輯上的概念。也就是說,可重寫式非易失性存儲器模塊的實體抹除單元的實際位置并未更動,而是邏輯上對可重寫式非易失性存儲器模塊的實體抹除單元進(jìn)行操作。請參照圖6,存儲器管理電路502會將實體抹除單元410(0)~410(N)邏輯地分組為數(shù)據(jù)區(qū)602、閑置區(qū)604、系統(tǒng)區(qū)606與取代區(qū)608。邏輯上屬于數(shù)據(jù)區(qū)602與閑置區(qū)604的實體抹除單元是用以儲存來自于主機(jī)系統(tǒng)11的數(shù)據(jù)。具體來說,數(shù)據(jù)區(qū)602的實體抹除單元是被視為已儲存數(shù)據(jù)的實體抹除單元,而閑置區(qū)604的實體抹除單元是用以替換數(shù)據(jù)區(qū)602的實體抹除單元。也就是說,當(dāng)從主機(jī)系統(tǒng)11接收到寫入指令與欲寫入的數(shù)據(jù)時,存儲器管理電路502會使用從閑置區(qū)604中提取實體抹除單元來寫入數(shù)據(jù),以替換數(shù)據(jù)區(qū)602的實體抹除單元。邏輯上屬于系統(tǒng)區(qū)606的實體抹除單元是用以記錄系統(tǒng)數(shù)據(jù)。例如,系統(tǒng)數(shù)據(jù)包括關(guān)于可重寫式非易失性存儲器模塊的制造商與型號、可重寫式非易失性存儲器模塊的實體抹除單元數(shù)、每一實體抹除單元的實體程序化單元數(shù)等。邏輯上屬于取代區(qū)608中的實體抹除單元是用于壞實體抹除單元取代程序,以取代損壞的實體抹除單元。具體來說,倘若取代區(qū)608中仍存有正常的實體抹除單元并且數(shù)據(jù)區(qū)602的實體抹除單元損壞時,存儲器管理電路502會從取代區(qū)608中提取正常的實體抹除單元來更換損壞的實體抹除單元。特別是,數(shù)據(jù)區(qū)602、閑置區(qū)604、系統(tǒng)區(qū)606與取代區(qū)608的實體抹除單元的數(shù)量會根據(jù)不同的存儲器規(guī)格而有所不同。此外,必須了解的是,在存儲器存儲裝置10的操作中,實體抹除單元關(guān)聯(lián)至數(shù)據(jù)區(qū)602、閑置區(qū)604、系統(tǒng)區(qū)606與取代區(qū)608的分組關(guān)系會動態(tài)地變動。例如,當(dāng)閑置區(qū)604中的實體抹除單元損壞而被取代區(qū)608的實體抹除單元取代時,則原本取代區(qū)608的實體抹除單元會被關(guān)聯(lián)至閑置區(qū)604。請參照圖7,存儲器管理電路502會配置邏輯為邏輯單元LBA(0)~LBA(H)以映射數(shù)據(jù)區(qū)602的實體抹除單元,其中每一邏輯單元具有多個邏輯子單元以映射對應(yīng)的實體抹除單元的實體程序化單元。并且,當(dāng)主機(jī)系統(tǒng)11欲寫入數(shù)據(jù)至邏輯地址或更新儲存于邏輯地址中的數(shù)據(jù)時,存儲器管理電路502會從閑置區(qū)604中提取一個實體抹除單元來寫入數(shù)據(jù),以輪替數(shù)據(jù)區(qū)602的實體抹除單元。在本范例實施例中,邏輯子單元可以是邏輯頁面或邏輯扇區(qū)。為了識別數(shù)據(jù)每個邏輯單元的數(shù)據(jù)被儲存在那個實體抹除單元,在本范例實施例中,存儲器管理電路502會記錄邏輯單元與實體抹除單元之間的映射。并且,當(dāng)主機(jī)系統(tǒng)11欲在邏輯子單元中存取數(shù)據(jù)時,存儲器管理電路502會確認(rèn)此邏輯子單元所屬的邏輯單元,并且在此邏輯單元所映射的實體抹除單元中來存取數(shù)據(jù)。例如,在本范例實施例中,存儲器管理電路502會在可重寫式非易失性存儲器模塊406中儲存邏輯地址-實體地址映射表來記錄每一邏輯單元所映射的實體抹除單元,并且當(dāng)欲存取數(shù)據(jù)時存儲器管理電路502會將邏輯地址-實體地址映射表載入至緩沖存儲器508來維護(hù)。值得一提的是,由于緩沖存儲器508的容量有限,無法儲存記錄所有邏輯地址之映射關(guān)系的映射表,因此,在本范例實施例中,存儲器管理電路502會將邏輯單元LBA(0)~LBA(H)分組為多個邏輯區(qū)域LZ(0)~LZ(M),并且為每一邏輯區(qū)域配置一個邏輯地址-實體地址映射表。特別是,當(dāng)存儲器管理電路502欲更新某個邏輯單元的映射時,對應(yīng)此邏輯單元所屬的邏輯區(qū)域的邏輯地址-實體地址映射表會被載入至緩沖存儲器508來被更新。圖8~圖10是根據(jù)一范例實施例所顯示的寫入數(shù)據(jù)至可重寫式非易失性存儲器模塊的范例及其對應(yīng)的邏輯地址-實體地址映射表。請參照圖8~圖13,在此范例中,存儲器存儲裝置10的可重寫式非易失性存儲器模塊406是以實體抹除單元為基礎(chǔ)(也稱為區(qū)塊為基礎(chǔ)(blockbased))來進(jìn)行管理。具體而言,在邏輯單元LBA(0)是映射至實體抹除單元410(0)的映射狀態(tài)(如圖11所示的邏輯地址-實體地址映射表1101)下,當(dāng)存儲器管理電路502從主機(jī)系統(tǒng)1000中接收到寫入指令而欲寫入數(shù)據(jù)至屬于邏輯單元LBA(0)的邏輯地址時,存儲器管理電路502會依據(jù)邏輯地址-實體地址映射表識別邏輯單元LBA(0)目前是映射至實體抹除單元410(0)并且從閑置區(qū)604中提取實體抹除單元410(F)作為替換實體抹除單元來輪替實體抹除單元410(0)。然而,當(dāng)存儲器管理電路502將新數(shù)據(jù)寫入至實體抹除單元410(F)的同時,存儲器管理電路502不會立刻將實體抹除單元410(0)中的所有有效數(shù)據(jù)搬移至實體抹除單元410(F)而抹除實體抹除單元410(0)。具體來說,存儲器管理電路502會將實體抹除單元410(0)中欲寫入實體程序化單元之前的有效數(shù)據(jù)(即,實體抹除單元410(0)的第0實體程序化單元與第1實體程序化單元中的數(shù)據(jù))復(fù)制至實體抹除單元410(F)的第0實體程序化單元與第1實體程序化單元中(如圖8所示),并且將新數(shù)據(jù)寫入至實體抹除單元410(F)的第2實體程序化單元與第3實體程序化單元中(如圖9所示)。此時,存儲器管理電路502即完成寫入的操作。因為實體抹除單元410(0)中的有效數(shù)據(jù)有可能在下個操作(例如,寫入指令)中變成無效,因此立刻將實體抹除單元410(0)中的有效數(shù)據(jù)搬移至實體抹除單元410(F)可能會造成無謂的搬移。此外,數(shù)據(jù)必須依序地寫入至實體抹除單元內(nèi)的實體程序化單元,因此,存儲器管理電路502僅會先搬移欲寫入實體程序化單元之前的有效數(shù)據(jù)。在本范例實施例中,暫時地維持此等母子暫態(tài)關(guān)系(即,實體抹除單元410(0)與實體抹除單元410(F))的操作稱為開啟(open)母子實體抹除單元,并且原實體抹除單元稱為對應(yīng)此邏輯單元的母實體抹除單元而替換實體抹除單元稱為對應(yīng)此邏輯單元的子實體抹除單元。例如,存儲器管理電路502會在邏輯地址-實體地址映射表中記錄此子實體抹除單元的映射登錄(如圖12所示的邏輯地址-實體地址映射表1101)。此外,對應(yīng)一個邏輯單元的母子實體抹除單元已被開啟(即,一個邏輯單元的數(shù)據(jù)已被儲存在一個實體抹除單元(即,母實體抹除單元)且另一個實體抹除單元已被指派作為此邏輯單元的子實體抹除單元來寫入更新數(shù)據(jù))下,存儲器管理電路502也可再使用另一個實體抹除單元(例如,實體抹除單元410(F+1))來儲存屬于邏輯單元LBA(0)的小數(shù)據(jù)(即,數(shù)據(jù)量小于一個實體程序化單元的容量的數(shù)據(jù))。具體來說,如上所述,實體程序化單元為寫入數(shù)據(jù)的最小單元,因此,存儲器管理電路502會先將小數(shù)據(jù)暫時地程序化至一個實體抹除單元(也可稱為暫存實體抹除單元),并且之后再將可填滿整個實體程序化單元的數(shù)據(jù)一起程序化至子實體抹除單元。例如,此暫存實體抹除單元的指派信息亦可記錄在邏輯地址-實體地址映射表中或者記錄在額外配置的暫存映射表中。之后,當(dāng)需要將實體抹除單元410(0)與實體抹除單元410(F)的內(nèi)容合并(merge)時,存儲器管理電路502才會將實體抹除單元410(0)與實體抹除單元410(F)的數(shù)據(jù)整并至一個實體抹除單元,由此提升實體抹除單元的使用效率。在此,合并母子實體抹除單元的操作稱為數(shù)據(jù)合并操作或關(guān)閉(close)母子實體抹除單元。例如,如圖10所示,當(dāng)進(jìn)行關(guān)閉母子實體抹除單元時,存儲器管理電路502會將實體抹除單元410(0)中剩余的有效數(shù)據(jù)(即,實體抹除單元410(0)的第4實體程序化單元~第(K)實體程序化單元中的數(shù)據(jù))復(fù)制至替換實體抹除單元410(F)的第4實體程序化單元~第(K)實體程序化單元中,然后將實體抹除單元410(0)抹除并關(guān)聯(lián)至閑置區(qū)604,同時,將實體抹除單元410(F)關(guān)聯(lián)至數(shù)據(jù)區(qū)502。也就是說,存儲器管理電路502會在邏輯地址-實體地址映射表中將邏輯單元LBA(0)重新映射至實體抹除單元410(F)(如圖13所示的邏輯地址-實體地址映射表1101)。值得一提的是,倘若有實體抹除單元被指派作為此邏輯單元的暫存實體抹除單元時,在執(zhí)行數(shù)據(jù)合并操作時,由于此暫存實體抹除單元上的有效數(shù)據(jù)已被程序化至對應(yīng)的實體程序化單元,因此,存儲器管理電路502會將此暫存實體抹除單元重新關(guān)聯(lián)至閑置區(qū)604。在本范例實施例中,存儲器管理電路502會建立閑置區(qū)實體抹除單元表(未顯示)來記錄目前被關(guān)聯(lián)至閑置區(qū)的實體抹除單元。值得一提的是,閑置區(qū)604中實體抹除單元的數(shù)目是有限的,基此,在存儲器存儲裝置10操作期間,開啟的母子實體抹除單元的組數(shù)也會受到限制。因此,當(dāng)存儲器存儲裝置10接收到來自于主機(jī)系統(tǒng)11的寫入指令時,倘若已開啟母子實體抹除單元的組數(shù)達(dá)到上限時,存儲器管理電路502需關(guān)閉至少一組目前已開啟的母子實體抹除單元(即,執(zhí)行關(guān)閉母子實體抹除單元操作)以執(zhí)行此寫入指令。在本發(fā)明另一范例實施例中,存儲器管理電路502的控制指令也可以程序碼型式儲存于可重寫式非易失性存儲器模塊406的特定區(qū)域(例如,存儲器模塊中專用于存放系統(tǒng)數(shù)據(jù)的系統(tǒng)區(qū))中。此外,存儲器管理電路502具有微處理器單元(未顯示)、只讀存儲器(未顯示)及隨機(jī)存取存儲器(未顯示)。特別是,此只讀存儲器具有驅(qū)動碼,并且當(dāng)存儲器控制電路單元404被致能時,微處理器單元會先執(zhí)行此驅(qū)動碼段來將儲存于可重寫式非易失性存儲器模塊406中的控制指令載入至存儲器管理電路502的隨機(jī)存取存儲器中。之后,微處理器單元會運轉(zhuǎn)此些控制指令以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。此外,在本發(fā)明另一范例實施例中,存儲器管理電路502的控制指令也可以一硬件型式來實作。例如,存儲器管理電路502包括微控制器、存儲單元管理電路、存儲器寫入電路、存儲器讀取電路、存儲器抹除電路與數(shù)據(jù)處理電路。存儲單元管理電路、存儲器寫入電路、存儲器讀取電路、存儲器抹除電路與數(shù)據(jù)處理電路是電性連接至微控制器。其中,存儲單元管理電路用以管理可重寫式非易失性存儲器模塊406的實體抹除單元;存儲器寫入電路用以對可重寫式非易失性存儲器模塊406下達(dá)寫入指令以將數(shù)據(jù)寫入至可重寫式非易失性存儲器模塊406中;存儲器讀取電路用以對可重寫式非易失性存儲器模塊406下達(dá)讀取指令以從可重寫式非易失性存儲器模塊406中讀取數(shù)據(jù);存儲器抹除電路用以對可重寫式非易失性存儲器模塊406下達(dá)抹除指令以將數(shù)據(jù)從可重寫式非易失性存儲器模塊406中抹除;而數(shù)據(jù)處理電路用以處理欲寫入至可重寫式非易失性存儲器模塊406的數(shù)據(jù)以及從可重寫式非易失性存儲器模塊406中讀取的數(shù)據(jù)。請再參照圖5,主機(jī)接口504是電性連接至存儲器管理電路502并且用以電性連接至連接接口單元402,以接收與識別主機(jī)系統(tǒng)11所傳送的指令與數(shù)據(jù)。也就是說,主機(jī)系統(tǒng)11所傳送的指令與數(shù)據(jù)會通過主機(jī)接口504來傳送至存儲器管理電路502。在本范例實施例中,主機(jī)接口504是相容于SD標(biāo)準(zhǔn)。然而,必須了解的是本發(fā)明不限于此,主機(jī)接口504亦可以是相容于SATA標(biāo)準(zhǔn)、PATA標(biāo)準(zhǔn)、IEEE1394標(biāo)準(zhǔn)、PCIExpress標(biāo)準(zhǔn)、USB標(biāo)準(zhǔn)、UHS-I接口標(biāo)準(zhǔn)、UHS-II接口標(biāo)準(zhǔn)、MS標(biāo)準(zhǔn)、MMC標(biāo)準(zhǔn)、CF標(biāo)準(zhǔn)、IDE標(biāo)準(zhǔn)或其他適合的數(shù)據(jù)傳輸標(biāo)準(zhǔn)。存儲器接口506是電性連接至存儲器管理電路502并且用以存取可重寫式非易失性存儲器模塊406。也就是說,欲寫入至可重寫式非易失性存儲器模塊406的數(shù)據(jù)會經(jīng)由存儲器接口506轉(zhuǎn)換為可重寫式非易失性存儲器模塊406所能接受的格式。緩沖存儲器508是電性連接至存儲器管理電路502并且用以暫存來自于主機(jī)系統(tǒng)11的暫存數(shù)據(jù)與指令或來自于可重寫式非易失性存儲器模塊406的數(shù)據(jù)。電源管理電路510是電性連接至存儲器管理電路502并且用以控制存儲器存儲裝置10的電源。錯誤檢查與校正電路512是電性連接至存儲器管理電路502并且用以執(zhí)行錯誤檢查與校正程序以確保數(shù)據(jù)的正確性。例如,當(dāng)存儲器管理電路502從主機(jī)系統(tǒng)11中接收到寫入指令時,錯誤檢查與校正電路512會為對應(yīng)此寫入指令的數(shù)據(jù)產(chǎn)生對應(yīng)的錯誤檢查與校正碼(ErrorCheckingandCorrectingCode,ECCCode),并且存儲器管理電路502會將對應(yīng)此寫入指令的數(shù)據(jù)與對應(yīng)的錯誤檢查與校正碼寫入至可重寫式非易失性存儲器模塊406中。之后,當(dāng)存儲器管理電路502從可重寫式非易失性存儲器模塊406中讀取數(shù)據(jù)時會同時讀取此數(shù)據(jù)對應(yīng)的錯誤檢查與校正碼,并且錯誤檢查與校正電路512會根據(jù)此錯誤檢查與校正碼對所讀取的數(shù)據(jù)執(zhí)行錯誤檢查與校正程序。在本范例實施例中,當(dāng)存儲器存儲裝置10接收到抹除指令時,存儲器管理電路502會依據(jù)抹除指令中所指示的起始邏輯地址和結(jié)束邏輯地址識別出欲抹除邏輯地址范圍,并且依據(jù)欲抹除邏輯地址范圍識別對應(yīng)的邏輯單元(例如,邏輯單元LBA(0))。特別是,存儲器管理電路502會判斷所識別出的邏輯單元是否有映射實體抹除單元。例如,存儲器管理電路502會根據(jù)邏輯地址-實體地址映射表來判斷是否有實體抹除單元被指派作為此邏輯單元的母實體抹除單元、子實體抹除單元或暫存實體抹除單元。倘若無實體抹除單元被指派作為此邏輯單元的母實體抹除單元、子實體抹除單元或暫存實體抹除單元時,存儲器管理電路502會傳送抹除指令完成信息以回應(yīng)此抹除指令。也就是說,在欲抹除邏輯地址范圍所屬的邏輯單元尚未儲存數(shù)據(jù)下,存儲器管理電路502不會對可重寫式非易失性存儲器模塊406實際地執(zhí)行程序化或抹除操作(也就是說,存儲器管理電路502不會對可重寫式非易失性存儲器模塊406執(zhí)行實體抹除操作),直接回復(fù)抹除指令完成信息,以表示已完成抹除操作。在此例子中,存儲器管理電路502不會對可重寫式非易失性存儲器模塊406執(zhí)行程序化或抹除操作,因此,大幅縮短執(zhí)行抹除指令的時間。在本范例實施例中,倘若可重寫式非易失性存儲器模塊406的其中一個實體抹除單元已被指派作為包含欲抹除邏輯地址范圍的邏輯單元的母實體抹除單元時,存儲器管理電路502會判斷是否有一個實體抹除單元被指派作為包含欲抹除邏輯地址范圍的邏輯單元的子實體抹除單元。倘若無實體抹除單元被指派作為包含欲抹除邏輯地址范圍的邏輯單元的子實體抹除單元時,存儲器管理電路502會建立對應(yīng)此邏輯單元的抹除索引表,并且將對應(yīng)欲抹除邏輯地址范圍的索引(或稱為比特)標(biāo)記為代表已被抹除的值(以下參考為第一值)。此外,存儲器管理電路502會判斷是否有一個實體抹除單元被指派作為包含欲抹除邏輯地址范圍的邏輯單元的暫存實體抹除單元并且暫存有屬于欲抹除邏輯地址范圍的數(shù)據(jù)。若屬于欲抹除邏輯地址范圍的數(shù)據(jù)被暫存在對應(yīng)此邏輯單元的暫存實體抹除單元時,存儲器管理電路502會刪除對應(yīng)的映射登錄。在另一范例實施例中,存儲器管理電路502會再進(jìn)一步地更新一對應(yīng)此暫存實體抹除單元的暫存映射表。基此,后續(xù)主機(jī)系統(tǒng)11在從此邏輯單元中讀取數(shù)據(jù)時,若抹除索引表中的對應(yīng)比特被標(biāo)記為第一值,則存儲器管理電路502會傳送預(yù)設(shè)數(shù)據(jù)給主機(jī)系統(tǒng)11,而若抹除索引表中的對應(yīng)比特被標(biāo)記為另一個值(例如,第二值)時,則存儲器管理電路502會傳送所儲存的數(shù)據(jù)給主機(jī)系統(tǒng)11。由于存儲器管理電路502是利用抹除索引表來快速記錄已被抹除的地址,而未實際對實體地址進(jìn)行抹除或程序化預(yù)設(shè)數(shù)據(jù),因此,大幅縮短執(zhí)行抹除指令的時間。圖14是根據(jù)一范例實施例所顯示的抹除索引表的示意圖。請參照圖14,在對應(yīng)邏輯單元的抹除索引表1401被建立時,存儲器管理電路502會將邏輯單元(例如,邏輯單元LBA(0))劃分為多個邏輯地址區(qū)域LBA(0-1)~LBA(0-T)并且在抹除索引表1401中配置T個比特,以分別對應(yīng)邏輯單元的邏輯地址區(qū)域LBA(0-1)~LBA(0-T)。若欲抹除邏輯地址范圍涵蓋邏輯地址區(qū)域LBA(0-1)~LBA(0-3)時,存儲器管理電路502會將對應(yīng)邏輯地址區(qū)域LBA(0-1)~LBA(0-3)的比特標(biāo)記為第一值(例如,’1’)。例如,每個邏輯地址區(qū)域的大小固定為1百萬比特組。然而,必須需了解的是,另一范例實施例中,存儲器管理電路502是可在建立抹除索引表時,邏輯單元的大小動態(tài)地設(shè)定每一個邏輯地址區(qū)域的大小,依據(jù)每一個邏輯地址區(qū)域的大小計算邏輯地址區(qū)域的數(shù)目,并且根據(jù)邏輯地址區(qū)域的數(shù)目來配置抹除索引表的比特。倘若可重寫式非易失性存儲器模塊406的其中一個實體抹除單元已被指派作為包含欲抹除邏輯地址范圍的邏輯單元的母實體抹除單元且另一個實體抹除單元被指派作為包含欲抹除邏輯地址范圍的邏輯單元的子實體抹除單元時,存儲器管理電路502會依據(jù)欲抹除邏輯地址范圍來決定將預(yù)設(shè)數(shù)據(jù)程序化至對應(yīng)此邏輯單元的子實體抹除單元或僅是更新邏輯地址-實體地址表的映射登錄。具體來說,存儲器管理電路502會判斷欲抹除邏輯地址范圍的起始邏輯地址是否接續(xù)前一個抹除指令指示的結(jié)束邏輯地址以及欲抹除邏輯地址范圍的結(jié)束邏輯地址是否為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址。倘若欲抹除邏輯地址范圍的起始邏輯地址接續(xù)前一個抹除指令指示的結(jié)束邏輯地址且欲抹除邏輯地址范圍的結(jié)束邏輯地址為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址時,存儲器管理電路502會直接在邏輯地址-實體地址表中更新此邏輯單元的映射登錄(即,將此邏輯單元的映射登錄刪除)。倘若欲抹除邏輯地址范圍的起始邏輯地址非接續(xù)前一個抹除指令指示的結(jié)束邏輯地址或者欲抹除邏輯地址范圍的結(jié)束邏輯地址非為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址時,存儲器管理電路502會如圖8~圖10所述的寫入操作,在對應(yīng)的實體程序化單元中程序化預(yù)設(shè)數(shù)據(jù)。例如,倘若在圖9所示的狀態(tài)下,主機(jī)系統(tǒng)11指示的欲抹除邏輯地址范圍是屬于邏輯單元LBA(0)且是映射實體抹除單元410(0)的第(0)~(K/3)實體程序化單元時,由于欲抹除邏輯地址范圍的結(jié)束邏輯地址非為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址并且對應(yīng)母實體抹除單元410(0)的子實體抹除單元的第(0)~(3)實體程序化單元已儲存數(shù)據(jù),因此,存儲器管理電路502會提取另一個實體抹除單元(例如實體抹除單元410(S-1))作為對應(yīng)母實體抹除單元410(0)的子實體抹除單元,將預(yù)設(shè)數(shù)據(jù)程序化至子實體抹除單元410(S-1)的第(0)~(K/3)實體程序化單元中,且將實體抹除單元410(F)關(guān)聯(lián)回閑置區(qū)604。之后,倘若主機(jī)系統(tǒng)11再指示的欲抹除邏輯地址范圍屬于邏輯單元LBA(0)且是映射實體抹除單元410(0)的第(K/3+1)~(2×K/3)實體程序化單元時,由于欲抹除邏輯地址范圍的結(jié)束邏輯地址非為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址,因此,存儲器管理電路502將預(yù)設(shè)數(shù)據(jù)程序化至子實體抹除單元410(S-1)的第(K/3+1)~(2×K/3)實體程序化單元。再者,倘若主機(jī)系統(tǒng)11再指示的欲抹除邏輯地址范圍是屬于邏輯單元LBA(0)且是映射實體抹除單元410(0)的第(2×K/3)~(K)實體程序化單元時,由于欲抹除邏輯地址范圍的起始邏輯地址是接續(xù)前一個抹除指令指示的結(jié)束邏輯地址并且欲抹除邏輯地址范圍的結(jié)束邏輯地址為欲抹除邏輯地址范圍所屬邏輯單元的結(jié)束邏輯地址,因此,存儲器管理電路502會在邏輯地址-實體地址映射表中,將邏輯單元LBA(0)的映射登錄刪除,也就是,邏輯單元LBA(0)不再映射實體抹除單元。在此例子中,針對一個邏輯單元的抹除,存儲器管理電路502可節(jié)省最后一個執(zhí)行程序化預(yù)設(shè)數(shù)據(jù)的時間,因此,有效縮短執(zhí)行抹除指令的時間。圖15A與圖15B是根據(jù)一范例實施例所顯示的存儲器抹除方法的流程圖。請參照圖15,在步驟S1501中,存儲器管理電路502接收抹除指令,并且依據(jù)抹除指令識別欲抹除邏輯地址范圍以及此欲抹除邏輯地址范圍所屬的邏輯單元(以下稱為第一邏輯單元)。在步驟S1503中,存儲器管理電路502會判斷是否有實體抹除單元被指派作為第一邏輯單元的母實體抹除單元。例如,存儲器管理電路502可根據(jù)邏輯地址-實體地址表中的映射登錄來獲取第一邏輯單元的映射信息。倘若其中一個實體抹除單元(以下稱為第一實體抹除單元)被指派作為第一邏輯單元的母實體抹除單元時,在步驟S1505中,存儲器管理電路502會判斷是否有實體抹除單元被指派作為第一邏輯單元的子實體抹除單元。倘若其中一個實體抹除單元(以下稱為第二實體抹除單元)被指派作為第一邏輯單元的子實體抹除單元時,在步驟S1507中,存儲器管理電路502會判斷在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是否儲存預(yù)設(shè)數(shù)據(jù)(例如,每個比特皆為0的數(shù)據(jù))。倘第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是儲存預(yù)設(shè)數(shù)據(jù)時,在步驟S1509中,存儲器管理電路502會建立對應(yīng)第一邏輯單元的抹除索引表,并且將此抹除索引表中對應(yīng)的欲抹除邏輯地址范圍的至少一個比特標(biāo)記為第一值。建立抹除索引表與標(biāo)記比特的方法是以配合附圖詳細(xì)描述如上,在此不再重復(fù)描述。然后,在步驟S1511中,存儲器管理電路502會判斷是否有實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)。倘若其中一個實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且此第一邏輯單元的暫存實體抹除單元儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)時,在步驟S1513中,存儲器管理電路502會刪除對應(yīng)的映射登錄并更新第一邏輯單元的暫存實體抹除單元的暫存映射表。之后,在步驟S1515中,存儲器管理電路502會傳送抹除指令完成信息,以回應(yīng)所接收的抹除指令。倘若在步驟S1511中判斷無實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元或者第一邏輯單元的暫存實體抹除單元無儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)時,步驟S1515會被執(zhí)行。倘若在步驟S1507中判斷第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址非儲存預(yù)設(shè)數(shù)據(jù)時,在步驟S1517中,存儲器管理電路502會判斷欲抹除邏輯地址范圍的起始邏輯地址是否接續(xù)前一個抹除指令指示的結(jié)束邏輯地址且欲抹除邏輯地址范圍的結(jié)束邏輯地址是否為第一邏輯單元的結(jié)束邏輯地址。倘若欲抹除邏輯地址范圍的起始邏輯地址接續(xù)前一個抹除指令指示的結(jié)束邏輯地址且欲抹除邏輯地址范圍的結(jié)束邏輯地址為第一邏輯單元的結(jié)束邏輯地址時,在步驟S1519中,存儲器管理電路502會在邏輯地址-實體地址映射表中更新第一邏輯單元的映射登錄(即,刪除第一邏輯單元與實體抹除單元的映射關(guān)系),并且之后步驟S1515會被執(zhí)行。倘若欲抹除邏輯地址范圍的起始邏輯地址非接續(xù)前一個抹除指令指示的結(jié)束邏輯地址或者欲抹除邏輯地址范圍的結(jié)束邏輯地址非為第一邏輯單元的結(jié)束邏輯地址時,在步驟S1521中,存儲器管理電路502會將預(yù)設(shè)數(shù)據(jù)程序化至欲抹除邏輯地址范圍所映射的實體程序化單元中,并且之后步驟S1515會被執(zhí)行。倘若在步驟S1505中判斷無實體抹除單元被指派作為第一邏輯單元的子實體抹除單元時,步驟S1523中,存儲器管理電路502會選擇一個實體抹除單元作為第一邏輯單元的子實體抹除單元并且將預(yù)設(shè)數(shù)據(jù)程序化至欲抹除邏輯地址范圍所映射的實體程序化單元中。然后,步驟1515會被執(zhí)行。倘若在步驟S1503中判斷無實體抹除單元被指派作為第一邏輯單元的母實體抹除單元時,在步驟S1525中,存儲器管理電路502會判斷是否有實體抹除單元被指派作為第一邏輯單元的子實體抹除單元。倘若其中一個實體抹除單元(以下稱為第二實體抹除單元)被指派作為第一邏輯單元的子實體抹除單元時,在步驟S1527中,存儲器管理電路502會判斷在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是否儲存預(yù)設(shè)數(shù)據(jù)(例如,每個比特皆為0的數(shù)據(jù))。倘若在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址是儲存預(yù)設(shè)數(shù)據(jù),步驟S1515會被執(zhí)行;并且倘若在第二實體抹除單元中對應(yīng)欲抹除邏輯地址范圍的地址不是儲存預(yù)設(shè)數(shù)據(jù)時,步驟S1523會被執(zhí)行。倘若在步驟S1525中判斷無實體抹除單元被指派作為第一邏輯單元的子實體抹除單元時,在步驟S1529中,存儲器管理電路502會判斷是否有實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)。倘若其中一個實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元且此第一邏輯單元的暫存實體抹除單元儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)時,在步驟S1531中,存儲器管理電路502會刪除對應(yīng)的映射登錄并更新第一邏輯單元的暫存實體抹除單元的暫存映射表;并且倘若無實體抹除單元被指派作為第一邏輯單元的暫存實體抹除單元或者第一邏輯單元的暫存實體抹除單元未儲存屬于欲抹除邏輯地址范圍的數(shù)據(jù)時,步驟S1515會被執(zhí)行。也就是說,在判斷無實體抹除單元儲存屬于第一邏輯單元的數(shù)據(jù)時,存儲器管理電路502不會執(zhí)行在可重寫式非易失性存儲器模塊406上執(zhí)行實體抹除操作,而直接回復(fù)已完成抹除指令的信息。綜上所述,本發(fā)明范例實施例的抹除方法、存儲器控制電路單元與存儲器存儲裝置,在接收到抹除指令后,會根據(jù)欲抹除邏輯地址范圍及其所屬邏輯單元的映射狀態(tài)來執(zhí)行不同的操作,由此快速地將從欲抹除邏輯地址范圍中讀取的值更改為預(yù)設(shè)數(shù)據(jù),并且大幅縮短執(zhí)行抹除指令所需的時間。雖然本發(fā)明已以實施例揭示如上,然其并非用以限定本發(fā)明,所屬
技術(shù)領(lǐng)域:
:中普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更改與潤飾,均在本發(fā)明范圍內(nèi)。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3