數(shù)據(jù)寫入方法、存儲器控制器與存儲器存儲裝置制造方法【專利摘要】一種數(shù)據(jù)寫入方法、存儲器控制器與存儲器存儲裝置。本方法用于可復(fù)寫式非易失性存儲器模塊。本方法包括:從主機系統(tǒng)中接收寫入指令與對應(yīng)此寫入指令的數(shù)據(jù)并且將此數(shù)據(jù)暫存至緩沖存儲器中,其中此數(shù)據(jù)包括多個子數(shù)據(jù)串(sub-datastreams)。本方法還包括從緩沖存儲器中將此些子數(shù)據(jù)串傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至可復(fù)寫式非易失性存儲器模塊的至少一物理抹除單元中;根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息;以及將此同位信息存儲在緩沖存儲器中并且從緩沖存儲器中移除此數(shù)據(jù)?;?,本方法可有效地使用緩沖存儲器的空間。【專利說明】數(shù)據(jù)寫入方法、存儲器控制器與存儲器存儲裝置【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及一種用于可復(fù)寫式非易失性存儲器的數(shù)據(jù)寫入方法及使用此方法的存儲器控制器與存儲器存儲裝置?!?br>背景技術(shù):
】[0002]數(shù)字相機、手機與MP3在這幾年來的成長十分迅速,促使消費者對存儲介質(zhì)的需求也急遽增加。由于可復(fù)寫式非易失性存儲器(rewritablenon-volatilememory)具有數(shù)據(jù)非易失性、低耗電、體積小、無機械結(jié)構(gòu)且讀寫速度快等特性,最適合用在便攜式電子產(chǎn)品,例如手機、個人數(shù)字助理與筆記型計算機等。因此,近年來,快閃存儲器產(chǎn)業(yè)成為電子產(chǎn)業(yè)中相當(dāng)熱門的一環(huán)。[0003]傳統(tǒng)上,快閃存儲器存儲裝置的快閃存儲器控制器配置有緩沖存儲器,并且從主機系統(tǒng)接收到寫入指令與多筆數(shù)據(jù)時,快閃存儲器控制器會先將此些數(shù)據(jù)暫存于緩沖存儲器,然后再依據(jù)物理頁面排列順序依序?qū)?shù)據(jù)寫入至對應(yīng)的物理頁面中。然而,在同一條字線上的物理頁面彼此會有耦合關(guān)系,因此,如果一個物理頁面發(fā)生編程錯誤,與此物理頁面具耦合關(guān)系的另一個物理頁面上的數(shù)據(jù)可能會遺失。例如,一個物理區(qū)塊包括多個物理頁面組,且每一物理頁面組包括一個下物理頁面與一個上物理頁面。當(dāng)一個物理頁面組的上物理頁面發(fā)生物理編程錯誤時,其下物理頁面上的數(shù)據(jù)也可能會遺失。特別是,根據(jù)快閃存儲器所規(guī)范的物理頁面編程順序,可能是連續(xù)對數(shù)個下物理頁面進(jìn)行編程后才對數(shù)個上物理頁面進(jìn)行程序。因此,在執(zhí)行一個寫入指令(以下稱為第一寫入指令)后,經(jīng)常會發(fā)生某些物理頁面組中僅下物理頁面被寫入數(shù)據(jù)的暫態(tài),并且此些某些物理頁面組中的上物理頁面可能在執(zhí)行下一個寫入指令(以下稱為第二寫入指令)才會被寫入數(shù)據(jù)。在此例子中,倘若執(zhí)行第二寫入指令已將數(shù)據(jù)寫入上物理頁面時發(fā)生編程錯誤,執(zhí)行第一寫入指令所寫入至下物理頁面的數(shù)據(jù)可能亦遺失。為了避免數(shù)據(jù)遺失,快閃存儲器控制器會在緩沖存儲器中保留此些數(shù)據(jù),直到確保數(shù)據(jù)不會因其他物理頁面的編程而遺失才會從緩沖存儲器中移除?;?,現(xiàn)有快閃存儲器存儲系統(tǒng)需配置有大容量的緩沖存儲器,造成快閃存儲器存儲系統(tǒng)的體積無法縮小,且制造成本增加。特別是,如果在配置多顆快閃存儲器晶粒的存儲器存儲系統(tǒng)中,需要更多的緩沖存儲器容量來暫存此些主機系統(tǒng)所寫入的數(shù)據(jù)?!?br/>發(fā)明內(nèi)容】[0004]本發(fā)明提供一種用于可復(fù)寫式非易失性存儲器模塊的數(shù)據(jù)寫入方法、存儲器控制器與存儲器存儲裝置,其能夠減少在執(zhí)行寫入指令時所需的緩沖存儲器空間,同時避免數(shù)據(jù)遺失。[0005]本發(fā)明范例實施例提出一種用于可復(fù)寫式非易失性存儲器模塊的數(shù)據(jù)寫入方法,其中此可復(fù)寫式非易失性存儲器模塊具有至少一存儲器晶粒,此至少一存儲器晶粒包括多個物理抹除單元,每一物理抹除單元包括多個物理編程單元。本數(shù)據(jù)寫入方法包括:從主機系統(tǒng)中接收第一寫入指令與對應(yīng)此寫入指令的第一數(shù)據(jù)并且將第一數(shù)據(jù)暫存至緩沖存儲器中,其中此第一數(shù)據(jù)包括多個子數(shù)據(jù)串。本數(shù)據(jù)寫入方法還包括從緩沖存儲器中將此些子數(shù)據(jù)串傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至至少一第一物理抹除單元中;根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息;以及將此同位信息存儲在緩沖存儲器中并且從緩沖存儲器中移除此第一數(shù)據(jù)。[0006]在本發(fā)明的一范例實施例中,上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生上述同位信息的步驟包括:依據(jù)所有的子數(shù)據(jù)串來產(chǎn)生上述同位信息。[0007]在本發(fā)明的一范例實施例中,上述每一物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至下物理編程單元的速度快于寫入數(shù)據(jù)至上物理編程單元。并且,上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生上述同位信息的步驟包括:根據(jù)存儲此些子數(shù)據(jù)串的物理編程單元識別此些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串以及根據(jù)此至少一第一子數(shù)據(jù)串產(chǎn)生該同位信息,其中此至少一第一子數(shù)據(jù)串被存儲在此些下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)此至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù)。[0008]在本發(fā)明的一范例實施例中,上述數(shù)據(jù)寫入方法,還包括:在將上述同位信息存儲在緩沖存儲器中并且從緩沖存儲器中移除上述第一數(shù)據(jù)之后,從主機系統(tǒng)接收第二寫入指令與對應(yīng)第二寫入指令的第二數(shù)據(jù)。[0009]在本發(fā)明的一范例實施例中,上述數(shù)據(jù)寫入方法還包括:判斷從緩沖存儲器中將第二數(shù)據(jù)寫入至上述至少一第一物理抹除單元中時是否發(fā)生編程錯誤;以及倘若發(fā)生編程錯誤時,使用存儲在緩沖存儲器中的同位信息解碼存儲在上述至少一第一物理抹除單元中的至少一部分子數(shù)據(jù)串來校正上述至少一部分子數(shù)據(jù)串中的至少一錯誤子數(shù)據(jù)串。[0010]在本發(fā)明的一范例實施例中,上述數(shù)據(jù)寫入方法還包括:倘若從緩沖存儲器中將第二數(shù)據(jù)寫入至第一物理抹除單元中時未發(fā)生該編程錯誤時,從緩沖存儲器中移除上述同位信息。[0011]在本發(fā)明的一范例實施例中,上述數(shù)據(jù)寫入方法還包括:根據(jù)至少一部分的第二數(shù)據(jù)產(chǎn)生另一同位信息;以及將此另一同位信息存儲至緩沖存儲器中并刪除第二數(shù)據(jù)。[0012]在本發(fā)明的一范例實施例中,其中從緩沖存儲器中將此些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至此些物理抹除單元之中的至少一第一物理抹除單元中的步驟包括:分別地為此些子數(shù)據(jù)串產(chǎn)生多個錯誤檢查與校正碼;以及將此些子數(shù)據(jù)串與分別地對應(yīng)此些子數(shù)據(jù)串的錯誤檢查與校正碼傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串與分別地對應(yīng)此些子數(shù)據(jù)串的錯誤檢查與校正碼至上述至少一第一物理抹除單元的物理編程單元中。[0013]在本發(fā)明的一范例實施例中,上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息的步驟包括:每當(dāng)將此些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至第一物理抹除單元時,根據(jù)此其中一個子數(shù)據(jù)串與先前同位信息來產(chǎn)生此同位信息。[0014]此外,本發(fā)明范例實施例提出一種存儲器控制器,用于控制可復(fù)寫式非易失性存儲器模塊。本存儲器控制器包括主機接口、存儲器接口、緩沖存儲器、同位信息編碼與解碼電路以及存儲器管理電路。主機接口用以電性連接至主機系統(tǒng)。存儲器接口,用以電性連接至可復(fù)寫式非易失性存儲器模塊,其中可復(fù)寫式非易失性存儲器模塊具有至少一存儲器晶粒,此存儲器晶粒包括多個物理抹除單元,每一物理抹除單元包括多個物理編程單元。存儲器管理電路電性連接至主機接口、存儲器接口、緩沖存儲器與同位信息編碼與解碼電路。存儲器管理電路用以從主機系統(tǒng)中接收第一寫入指令與對應(yīng)此寫入指令的第一數(shù)據(jù)并且將第一數(shù)據(jù)暫存至緩沖存儲器中,其中第一數(shù)據(jù)包括多個子數(shù)據(jù)串。此外,存儲器管理電路還用以從緩沖存儲器中將此些子數(shù)據(jù)串傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至此些物理抹除單元之中的至少一第一物理抹除單元中。另外,同位信息編碼與解碼電路用以根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息,并且存儲器管理電路還用以將此同位信息存儲在緩沖存儲器中并且該緩沖存儲器中移除上述第一數(shù)據(jù)。[0015]在本發(fā)明的一范例實施例中,在上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息的運作中,上述同位信息編碼與解碼電路依據(jù)所有的子數(shù)據(jù)串來產(chǎn)生上述同位信息。[0016]在本發(fā)明的一范例實施例中,上述每一物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至下物理編程單元的速度快于寫入數(shù)據(jù)至上物理編程單元。并且,在根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生上述同位信息的運作中,存儲器管理電路根據(jù)存儲此些子數(shù)據(jù)串的物理編程單元識別此些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串并且同位信息編碼與解碼電路根據(jù)此第一子數(shù)據(jù)串產(chǎn)生同位信息,其中第一子數(shù)據(jù)串被存儲在下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)此至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù)。[0017]在本發(fā)明的一范例實施例中,上述存儲器管理路還用以在將上述同位信息存儲在緩沖存儲器中并且從緩沖存儲器中移除上述第一數(shù)據(jù)之后,從主機系統(tǒng)接收第二寫入指令與對應(yīng)第二寫入指令的第二數(shù)據(jù)。[0018]在本發(fā)明的一范例實施例中,上述存儲器管理電路根據(jù)至少一部分的第二數(shù)據(jù)產(chǎn)生另一同位信息并將此另一同位信息存儲至緩沖存儲器中并刪除第二數(shù)據(jù)。[0019]在本發(fā)明的一范例實施例中,在上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息的運作中,每當(dāng)將此些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至第一物理抹除單元時,上述同位信息編碼與解碼電路根據(jù)此其中一個子數(shù)據(jù)串與先前同位信息來產(chǎn)生此同位信息。[0020]再者,本發(fā)明范例實施例提出一種存儲器存儲裝置,其包括連接器、可復(fù)寫式非易失性存儲器模塊與存儲器控制器。連接器用以電性連接至主機系統(tǒng)??蓮?fù)寫式非易失性存儲器模塊具有至少一存儲器晶粒,此至少一存儲器晶粒包括多個物理抹除單元,且每一物理抹除單元包括多個物理編程單元。存儲器控制器,具有緩沖存儲器且電性連接至上述連接器與可復(fù)寫式非易失性存儲器模塊。存儲器控制器用以從主機系統(tǒng)中接收第一寫入指令與對應(yīng)此寫入指令的第一數(shù)據(jù)并且將第一數(shù)據(jù)暫存至緩沖存儲器中,其中第一數(shù)據(jù)包括多個子數(shù)據(jù)串。此外,存儲器控制器還用以從緩沖存儲器中將此些子數(shù)據(jù)串傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至此些物理抹除單元之中的至少一第一物理抹除單元中。另外,存儲器控制器用以根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息,將此同位信息存儲在緩沖存儲器中并且該緩沖存儲器中移除上述第一數(shù)據(jù)。[0021]在本發(fā)明的一范例實施例中,在上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息的運作中,上述存儲器控制器依據(jù)所有的子數(shù)據(jù)串來產(chǎn)生上述同位信息。[0022]在本發(fā)明的一范例實施例中,上述每一物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至下物理編程單元的速度快于寫入數(shù)據(jù)至上物理編程單元。并且,在根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生上述同位信息的運作中,存儲器控制器根據(jù)存儲此些子數(shù)據(jù)串的物理編程單元識別此些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串并且根據(jù)此第一子數(shù)據(jù)串產(chǎn)生同位信息,其中第一子數(shù)據(jù)串被存儲在下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)此至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù)。[0023]在本發(fā)明的一范例實施例中,上述存儲器控制器還用以在將上述同位信息存儲在緩沖存儲器中并且從緩沖存儲器中移除上述第一數(shù)據(jù)之后,從主機系統(tǒng)接收第二寫入指令與對應(yīng)第二寫入指令的第二數(shù)據(jù)。[0024]在本發(fā)明的一范例實施例中,上述存儲器控制器還用以判斷從緩沖存儲器中將第二數(shù)據(jù)寫入至上述第一物理抹除單元中時是否發(fā)生編程錯誤。倘若發(fā)生編程錯誤時,存儲器控制器使用存儲在緩沖存儲器中的同位信息來解碼存儲在上述至少一第一物理抹除單元中的至少一部分子數(shù)據(jù)串以校正此至少一部分子數(shù)據(jù)串中的至少一錯誤子數(shù)據(jù)串。[0025]在本發(fā)明的一范例實施例中,倘若從緩沖存儲器中將第二數(shù)據(jù)寫入至第一物理抹除單元中時未發(fā)生編程錯誤時,存儲器控制器還用以從緩沖存儲器中移除上述同位信息。[0026]在本發(fā)明的一范例實施例中,上述存儲器控制器根據(jù)至少一部分的第二數(shù)據(jù)產(chǎn)生另一同位信息并將此另一同位信息存儲至緩沖存儲器中并刪除第二數(shù)據(jù)。[0027]在本發(fā)明的一范例實施例中,上述存儲器控制器還用以分別地為此些子數(shù)據(jù)串產(chǎn)生多個錯誤檢查與校正碼。并且,在從緩沖存儲器中將此些子數(shù)據(jù)串傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串至此些物理抹除單元之中的至少一第一物理抹除單元中的運作中,上述存儲器控制器將此些子數(shù)據(jù)串與分別地對應(yīng)此些子數(shù)據(jù)串的錯誤檢查與校正碼傳送至可復(fù)寫式非易失性存儲器模塊以寫入此些子數(shù)據(jù)串與分別地對應(yīng)此些子數(shù)據(jù)串的錯誤檢查與校正碼至上述至少一第一物理抹除單元的物理編程單元中。[0028]在本發(fā)明的一范例實施例中,在上述根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息的運作中,每當(dāng)將此些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至第一物理抹除單元時,上述存儲器控制器根據(jù)此其中一個子數(shù)據(jù)串與先前同位信息來產(chǎn)生此同位信肩、Ο[0029]基于上述,本范例實施例的數(shù)據(jù)寫入方法、存儲器控制器與存儲器存儲裝置能夠在使用較少的緩沖存儲器空間下執(zhí)行寫入指令同時確保數(shù)據(jù)的正確性。[0030]為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖作詳細(xì)說明如下?!緦@綀D】【附圖說明】[0031]圖1是根據(jù)一范例實施例所繪示的主機系統(tǒng)與存儲器存儲裝置。[0032]圖2是根據(jù)一范例實施例所繪示的計算機、輸入/輸出裝置與存儲器存儲裝置的示意圖。[0033]圖3是根據(jù)一范例實施例所繪示的主機系統(tǒng)與存儲器存儲裝置的示意圖。[0034]圖4是繪示根據(jù)本范例實施例所繪示的存儲器存儲裝置的概要方塊圖。[0035]圖5是根據(jù)一范例實施例所繪示的存儲器控制器的概要方塊圖。[0036]圖6是根據(jù)本發(fā)明一范例實施例所繪示的可復(fù)寫式非易失性存儲器模塊的示意圖。[0037]圖7是根據(jù)本發(fā)明一范例實施例所繪示的物理抹除單元中物理編程單元的布局示意圖。[0038]圖8與圖9是根據(jù)一范例實施例所繪示的管理可復(fù)寫式非易失性存儲器模塊的范例示意圖。[0039]圖10?12是根據(jù)本發(fā)明一范例實施例所繪示的寫入數(shù)據(jù)至物理編程單元的范例。[0040]圖13?15是根據(jù)本發(fā)明一范例實施例所繪示的寫入數(shù)據(jù)至物理編程單元的另一范例。[0041]圖16是根據(jù)一范例實施例所繪示的數(shù)據(jù)寫入的流程圖。[0042]【符號說明】[0043]1000:主機系統(tǒng)[0044]1100:計算機[0045]1102:微處理器[0046]1104:隨機存取存儲器[0047]1106:輸入/輸出裝置[0048]1108:系統(tǒng)總線[0049]1110:數(shù)據(jù)傳輸接口[0050]1202:鼠標(biāo)[0051]1204:鍵盤[0052]1206:顯示器[0053]1208:打印機[0054]1212:隨身碟[0055]1214:存儲卡[0056]1216:固態(tài)硬盤[0057]1310:數(shù)字相機[0058]1312:SD卡[0059]1314:MMC卡[0060]1316:記憶棒[0061]1318:CF卡[0062]1320:嵌入式存儲裝置[0063]100:存儲器存儲裝置[0064]102:連接器[0065]104:存儲器控制器[0066]106:可復(fù)寫式非易失性存儲器模塊[0067]202:存儲器管理電路[0068]204:主機接口[0069]206:存儲器接口[0070]208:緩沖存儲器[0071]210:錯誤檢查與校正電路[0072]212:同位信息編碼與解碼電路[0073]252:記憶胞陣列[0074]254:控制電路[0075]256:數(shù)據(jù)輸入/輸出緩沖器[0076]256a:第一緩沖區(qū)[0077]256b:第二緩沖區(qū)[0078]304(0)?304(R):物理抹除單元[0079]701(0)?701(255):物理編程單元[0080]400:存儲器晶粒[0081]402:數(shù)據(jù)區(qū)[0082]404:備用區(qū)[0083]406:系統(tǒng)區(qū)[0084]408:取代區(qū)[0085]LBA(O)?LBA01):邏輯地址[0086]DATA1、DATA2:數(shù)據(jù)[0087]P1、P2:同位信息[0088]SDATA1、SDATA2、SDATA3、SDATA4、SDATA5、SDATA6、SDAT7、SDATA8、SDATA9、SDATA10、SDATA11、SDATA12:子數(shù)據(jù)串[0089]ECC1、ECC2、ECC3、ECC4、ECC5、ECC6、ECC7、ECC8、ECC9、ECC10、ECC11、ECC12:錯誤檢查與校正碼[0090]S1601、S1603、S1605、S1607、S1609、S1611、S1613:數(shù)據(jù)寫入方法的步驟【具體實施方式】[0091]一般而言,存儲器存儲裝置(亦稱,存儲器存儲系統(tǒng))包括可復(fù)寫式非易失性存儲器模塊與控制器(亦稱,控制電路)。通常存儲器存儲裝置是與主機系統(tǒng)一起使用,以使主機系統(tǒng)可將數(shù)據(jù)寫入至存儲器存儲裝置或從存儲器存儲裝置中讀取數(shù)據(jù)。[0092]圖1是根據(jù)一范例實施例所繪示的主機系統(tǒng)與存儲器存儲裝置。[0093]請參照圖1,主機系統(tǒng)1000—般包括計算機1100與輸入/輸出(input/output,1/0)裝置1106。計算機1100包括微處理器1102、隨機存取存儲器(randomaccessmemory,RAM)1104、系統(tǒng)總線1108與數(shù)據(jù)傳輸接口1110。輸入/輸出裝置1106包括如圖2的鼠標(biāo)1202、鍵盤1204、顯示器1206與打印機1252。必須了解的是,圖2所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可還包括其他裝置。[0094]在本發(fā)明實施例中,存儲器存儲裝置100是通過數(shù)據(jù)傳輸接口1110與主機系統(tǒng)1000的其他元件電性連接。通過微處理器1102、隨機存取存儲器1104與輸入/輸出裝置1106的運作可將數(shù)據(jù)寫入至存儲器存儲裝置100或從存儲器存儲裝置100中讀取數(shù)據(jù)。例如,存儲器存儲裝置100可以是如圖2所示的隨身碟1212、存儲卡1214或固態(tài)硬盤(SolidStateDrive,SSD)1216等的可復(fù)寫式非易失性存儲器存儲裝置。[0095]一般而言,主機系統(tǒng)1000為可實質(zhì)地與存儲器存儲裝置100配合以存儲數(shù)據(jù)的任意系統(tǒng)。雖然在本范例實施例中,主機系統(tǒng)1000是以計算機系統(tǒng)來作說明,然而,在本發(fā)明另一范例實施例中主機系統(tǒng)1000可以是數(shù)字相機、攝像機、通信裝置、音訊播放器或視頻播放器等系統(tǒng)。例如,在主機系統(tǒng)為數(shù)字相機(攝像機)1310時,可復(fù)寫式非易失性存儲器存儲裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memorystick)1316、CF卡1318或嵌入式存儲裝置1320(如圖3所示)。嵌入式存儲裝置1320包括嵌入式多媒體卡(EmbeddedMMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接電性連接于主機系統(tǒng)的基板上。[0096]圖4是繪示根據(jù)本范例實施例所繪示的存儲器存儲裝置的概要方塊圖。[0097]請參照圖4,存儲器存儲裝置100包括連接器102、存儲器控制器104與可復(fù)寫式非易失性存儲器模塊106。[0098]在本范例實施例中,連接器102是相容于串行先進(jìn)附件(SerialAdvancedTechnologyAttachment,SATA)標(biāo)準(zhǔn)。然而,必須了解的是,本發(fā)明不限于此,連接器102也可以是符合并行先進(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)、安全數(shù)字(SecureDigital,SD)接口標(biāo)準(zhǔn)、超高速一代(UltraHighSpeed-1,UHS-1)接口標(biāo)準(zhǔn)、超高速二代(UltraHighSpeed-1I,UHS-1I)接口標(biāo)準(zhǔn)、記憶棒(MemoryStick,MS)接口標(biāo)準(zhǔn)、多媒體存儲卡(MultiMediaCard,MMC)接口標(biāo)準(zhǔn)、炭入式多媒體存儲卡(EmbeddedMultimediaCard,eMMC)接口標(biāo)準(zhǔn)、通用快閃存儲器(UniversalFlashStorage,UFS)接口標(biāo)準(zhǔn)、小型快閃(CompactFlash,CF)接口標(biāo)準(zhǔn)、整合式驅(qū)動電子接口(IntegratedDeviceElectronics,IDE)標(biāo)準(zhǔn)或其他適合的標(biāo)準(zhǔn)。[0099]存儲器控制器104用以執(zhí)行以硬件型式或固件型式實作的多個邏輯門或控制指令,并且根據(jù)主機系統(tǒng)1000的指令在可復(fù)寫式非易失性存儲器模塊106中進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等運作。[0100]可復(fù)寫式非易失性存儲器模塊106是電性連接至存儲器控制器104,并且用以存儲主機系統(tǒng)1000所寫入的數(shù)據(jù)。[0101]圖5是根據(jù)一范例實施例所繪示的存儲器控制器的概要方塊圖。必須了解的是,圖5所示的存儲器控制器的結(jié)構(gòu)僅為一范例,本發(fā)明不以此為限。[0102]請參照圖5,存儲器控制器104包括存儲器管理電路202、主機接口204、存儲器接口206、緩沖存儲器208、錯誤檢查與校正電路210與同位信息編碼與解碼電路212。[0103]存儲器管理電路202用以控制存儲器控制器104的整體運作。具體來說,存儲器管理電路202具有多個控制指令,并且在存儲器存儲裝置100運作時,此些控制指令會被執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等運作。[0104]在本范例實施例中,存儲器管理電路202的控制指令是以固件型式來實作。例如,存儲器管理電路202具有微處理器單元(未繪示)與只讀存儲器(未繪示),并且此些控制指令是被燒錄至此只讀存儲器中。當(dāng)存儲器存儲裝置100運作時,此些控制指令會由微處理器單元來執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等運作。[0105]在本發(fā)明另一范例實施例中,存儲器管理電路202的控制指令也可以程序代碼型式存儲于可復(fù)寫式非易失性存儲器模塊106的特定區(qū)域(例如,存儲器模塊中專用于存放系統(tǒng)數(shù)據(jù)的系統(tǒng)區(qū))中。此外,存儲器管理電路202具有微處理器單元(未繪示)、只讀存儲器(未繪示)及隨機存取存儲器(未繪示)。特別是,此只讀存儲器具有驅(qū)動碼,并且當(dāng)存儲器控制器104被致能時,微處理器單元會先執(zhí)行此驅(qū)動碼段來將存儲于可復(fù)寫式非易失性存儲器模塊106中的控制指令載入至存儲器管理電路202的隨機存取存儲器中。之后,微處理器單元會運轉(zhuǎn)此些控制指令以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等運作。[0106]此外,在本發(fā)明另一范例實施例中,存儲器管理電路202的控制指令也可以一硬件型式來實作。例如,存儲器管理電路202包括微控制器、記憶胞管理電路、存儲器寫入電路、存儲器讀取電路、存儲器抹除電路與數(shù)據(jù)處理電路。記憶胞管理電路、存儲器寫入電路、存儲器讀取電路、存儲器抹除電路與數(shù)據(jù)處理電路是電性連接至微控制器。其中,記憶胞管理電路用以管理可復(fù)寫式非易失性存儲器模塊106的物理抹除單元;存儲器寫入電路用以對可復(fù)寫式非易失性存儲器模塊106下達(dá)寫入指令以將數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲器模塊106中;存儲器讀取電路用以對可復(fù)寫式非易失性存儲器模塊106下達(dá)讀取指令以從可復(fù)寫式非易失性存儲器模塊106中讀取數(shù)據(jù);存儲器抹除電路用以對可復(fù)寫式非易失性存儲器模塊106下達(dá)抹除指令以將數(shù)據(jù)從可復(fù)寫式非易失性存儲器模塊106中抹除;而數(shù)據(jù)處理電路用以處理欲寫入至可復(fù)寫式非易失性存儲器模塊106的數(shù)據(jù)以及從可復(fù)寫式非易失性存儲器模塊106中讀取的數(shù)據(jù)。[0107]主機接口204是電性連接至存儲器管理電路202并且用以接收與識別主機系統(tǒng)1000所傳送的指令與數(shù)據(jù)。也就是說,主機系統(tǒng)1000所傳送的指令與數(shù)據(jù)會通過主機接口204來傳送至存儲器管理電路202。在本范例實施例中,主機接口204是相容于SATA標(biāo)準(zhǔn)。然而,必須了解的是本發(fā)明不限于此,主機接口204也可以是相容于PATA標(biāo)準(zhǔn)、IEEE1394標(biāo)準(zhǔn)、PCIExpress標(biāo)準(zhǔn)、USB標(biāo)準(zhǔn)、SD標(biāo)準(zhǔn)、UHS-1接口標(biāo)準(zhǔn)、UHS-1I接口標(biāo)準(zhǔn)、MS標(biāo)準(zhǔn)、MMC標(biāo)準(zhǔn)、eMMC接口標(biāo)準(zhǔn)、UFS接口標(biāo)準(zhǔn)、CF標(biāo)準(zhǔn)、IDE標(biāo)準(zhǔn)或其他適合的數(shù)據(jù)傳輸標(biāo)準(zhǔn)。[0108]存儲器接口206是電性連接至存儲器管理電路202并且用以存取可復(fù)寫式非易失性存儲器模塊106。也就是說,欲寫入至可復(fù)寫式非易失性存儲器模塊106的數(shù)據(jù)會經(jīng)由存儲器接口206轉(zhuǎn)換為可復(fù)寫式非易失性存儲器模塊106所能接受的格式。[0109]緩沖存儲器208是電性連接至存儲器管理電路202并且用以暫存來自于主機系統(tǒng)1000的數(shù)據(jù)與指令或來自于可復(fù)寫式非易失性存儲器模塊106的數(shù)據(jù)。[0110]錯誤檢查與校正電路210是電性連接至存儲器管理電路202并且用以執(zhí)行錯誤檢查與校正程序以確保數(shù)據(jù)的正確性。在本范例實施例中,當(dāng)存儲器管理電路202從主機系統(tǒng)1000中接收到寫入指令時,錯誤檢查與校正電路210會為對應(yīng)此寫入指令的數(shù)據(jù)產(chǎn)生對應(yīng)的錯誤檢查與校正碼(ErrorCheckingandCorrectingCode,ECCCode),并且存儲器管理電路202會將對應(yīng)此寫入指令的數(shù)據(jù)與對應(yīng)的錯誤檢查與校正碼寫入至可復(fù)寫式非易失性存儲器模塊106中。之后,當(dāng)存儲器管理電路202從可復(fù)寫式非易失性存儲器模塊106中讀取數(shù)據(jù)時會同時讀取此數(shù)據(jù)對應(yīng)的錯誤檢查與校正碼,并且錯誤檢查與校正電路210會依據(jù)此錯誤檢查與校正碼對所讀取的數(shù)據(jù)執(zhí)行錯誤檢查與校正程序。具體來說,錯誤檢查與校正電路210會被設(shè)計能夠校正一數(shù)目的錯誤位(以下稱為最大可校正錯誤位數(shù))。例如,最大可校正錯誤位數(shù)為24。倘若發(fā)生在所讀取的數(shù)據(jù)的錯誤位的數(shù)目非大于24個時,錯誤檢查與校正電路210就能夠依據(jù)錯誤檢查與校正碼將錯誤位校正回正確的值。反之,錯誤檢查與校正電路210就會回報錯誤校正失敗且存儲器管理電路202會將指示數(shù)據(jù)已遺失的訊息傳送給主機系統(tǒng)1000。[0111]同位信息編碼與解碼電路212是電性連接至存儲器管理電路202并且用以根據(jù)存儲器管理電路202的指示編碼暫存于緩沖存儲器208中欲寫入至多個物理編程單元的多筆數(shù)據(jù)(即,主機系統(tǒng)1000欲寫入的數(shù)據(jù))以產(chǎn)生同位信息。此外,同位信息編碼與解碼電路212也可根據(jù)存儲器管理電路202的指示以同位信息解碼存儲在多個物理編程單元的數(shù)據(jù)以修正數(shù)據(jù)內(nèi)的錯誤數(shù)據(jù)。也就是說,倘若此些物理編程單元的其中一個物理編程單元上的數(shù)據(jù)出現(xiàn)錯誤數(shù)據(jù)時,同位信息編碼與解碼電路212能夠依據(jù)所產(chǎn)生的同位信息來解碼此些物理編程單元上的數(shù)據(jù)以修正錯誤數(shù)據(jù)。在此,同位信息編碼與解碼電路212所產(chǎn)生的同位信息可以是奇偶校正碼(paritycheckingcode)、通道編碼(channelcoding)或是其他類型。例如,漢明碼(hammingcode)、低密度奇偶檢查碼(lowdensityparitycheckcode,LDPCcode)、潤旋石馬(turbocode)或里德-所羅門碼(Reed-solomoncode,RScode)0例如,如果數(shù)據(jù)與同位信息的長度比例為m:n,則表示m筆數(shù)據(jù)會對應(yīng)至n筆同位信息,其中m與η為正整數(shù)并且在數(shù)據(jù)錯誤筆數(shù)小于η的情況下錯誤數(shù)據(jù)都可通過同位信息來修正。一般來說,正整數(shù)m會大于正整數(shù)η,但本發(fā)明并不在此限。并且,本發(fā)明也不限制正整數(shù)m與正整數(shù)η的值。[0112]圖6是根據(jù)本發(fā)明一范例實施例所繪示的可復(fù)寫式非易失性存儲器模塊106的示意圖。[0113]可復(fù)寫式非易失性存儲器模塊106包括存儲器晶粒400。存儲器晶粒400包括記憶胞陣列252、控制電路254與數(shù)據(jù)輸入/輸出緩沖器256。[0114]記憶胞陣列252包括物理抹除單元304(0)?304(R)。每一物理抹除單元分別具有至少一個物理編程單元,并且屬于同一個物理抹除單元的物理編程單元可被獨立地寫入且被同時地抹除。例如,每一物理抹除單元是由128個物理編程單元所組成。然而,必須了解的是,本發(fā)明不限于此,每一物理抹除單元也可由64個物理編程單元、256個物理編程單元或其他任意個物理編程單元所組成。[0115]更詳細(xì)來說,物理抹除單元為抹除的最小單位。亦即,每一物理抹除單元含有最小數(shù)目之一并被抹除的記憶胞。物理編程單元為編程的最小單元。即,物理編程單元為寫入數(shù)據(jù)的最小單元。[0116]具體來說,依據(jù)每個記憶胞可存儲的位數(shù),NAND型快閃存儲器可區(qū)分為單階存儲單元(SingleLevelCell,SLC)NAND型快閃存儲器、多階存儲單元(MultiLevelCell,MLC)NAND型快閃存儲器與多階存儲單元(TrinaryLevelCell,TLC)NAND型快閃存儲器,其中SLCNAND型快閃存儲器的每個記憶胞可存儲1個位的數(shù)據(jù)(即,“1”與“0”),MLCNAND型快閃存儲器的每個記憶胞可存儲2個位的數(shù)據(jù)并且TLCNAND型快閃存儲器的每個記憶胞可存儲3個位的數(shù)據(jù)。[0117]在NAND型快閃存儲器中,物理編程單元是由排列在同一條字線上的數(shù)個記憶胞所組成。由于SLCNAND型快閃存儲器的每個記憶胞可存儲1個位的數(shù)據(jù),因此,在SLCNAND型快閃存儲器中,排列在同一條字線上的數(shù)個記憶胞是對應(yīng)一個物理編程單元。[0118]相對于SLCNAND型快閃存儲器來說,MLCNAND型快閃存儲器的每個記憶胞的浮動門存儲層可存儲2個位的數(shù)據(jù),其中每一個存儲狀態(tài)(S卩,“11”、“10”、“01”與“00”)包括最低有效位(LeastSignificantBit,LSB)以及最高有效位(MostSignificantBit,MSB)。例如,存儲狀態(tài)中從左側(cè)算起的第1個位的值為LSB,而從左側(cè)算起的第2個位的值為MSB。因此,排列在同一條字線上的數(shù)個記憶胞可組成2個物理編程單元,其中由此些記憶胞的LSB所組成的物理編程單元稱為下物理編程單元,并且由此些記憶胞的MSB所組成的物理編程單元稱為上物理編程單元。特別是,下物理編程單元的寫入速度會快于上物理編程單元的寫入速度,并且當(dāng)編程上物理編程單元發(fā)生錯誤時,下物理編程單元所存儲的數(shù)據(jù)也可能因此遺失。[0119]類似地,在TLCNAND型快閃存儲器中,每個記憶胞可存儲3個位的數(shù)據(jù),其中每一個存儲狀態(tài)(即,“111”、”110”、“101”、“100”、“011”、“010”、“001”與“000”)包括左側(cè)算起的第1個位的LSB、從左側(cè)算起的第2個位的中間有效位(CenterSignificantBit,CSB)以及從左側(cè)算起的第3個位的MSB。因此,排列在同一條字線上的數(shù)個記憶胞可組成3個物理編程單元,其中由此些記憶胞的LSB所組成的物理編程單元稱為下物理編程單元,由此些記憶胞的CSB所組成的物理編程單元稱為中物理編程單元,并且由此些記憶胞的MSB所組成的物理編程單元稱為上物理編程單元。同樣地,相對于中物理編程單元與上物理編程單元來說,下物理編程單元具有較高的穩(wěn)定度并且寫入數(shù)據(jù)至下物理編程單元的速度快于寫入數(shù)據(jù)至中物理編程單元與上物理編程單元的速度。[0120]每一物理編程單元通常包括數(shù)據(jù)位區(qū)與冗余位區(qū)。數(shù)據(jù)位區(qū)包含多個物理存取地址用以存儲使用者的數(shù)據(jù),而冗余位區(qū)用以存儲系統(tǒng)的數(shù)據(jù)(例如,控制信息與錯誤更正碼)。在本范例實施例中,每一個物理編程單元的數(shù)據(jù)位區(qū)中會包含4個物理存取地址,且一個物理存取地址的大小為512字節(jié)(byte)。然而,在其他范例實施例中,數(shù)據(jù)位區(qū)中也可包含數(shù)目更多或更少的物理存取地址,本發(fā)明并不限制物理存取地址的大小以及個數(shù)。例如,在一范例實施例中,物理抹除單元為物理區(qū)塊,并且物理編程單元為物理頁面或物理扇區(qū),但本發(fā)明不以此為限。[0121]在本范例實施例中,可復(fù)寫式非易失性存儲器模塊106為多階存儲單元(MultiLevelCell,MLC)反及(NAND)型快閃存儲器模塊。然而,本發(fā)明不限于此,可復(fù)寫式非易失性存儲器模塊106也可是單階存儲單元(SingleLevelCell,SLC)NAND型快閃存儲器模塊、多階存儲單元(TrinaryLevelCell,TLC)NAND型快閃存儲器模塊、其他快閃存儲器模塊或其他具有相同特性的存儲器模塊。[0122]控制電路254用以根據(jù)來自于存儲器控制器104的指令將數(shù)據(jù)編程至記憶胞陣列252或從記憶胞陣列252中讀取數(shù)據(jù)。[0123]數(shù)據(jù)輸入/輸出緩沖器256包括第一緩沖區(qū)256a與第二緩沖區(qū)256b。第一緩沖區(qū)256a與第二緩沖區(qū)256b彼此獨立,且可分別具有相同的容量。例如,第一緩沖區(qū)256a與第二緩沖區(qū)256b的容量皆為一個物理編程單元的容量,用以暫存欲寫入至記憶胞陣列202的數(shù)據(jù)或從記憶胞陣列202中所讀取的數(shù)據(jù)。[0124]在可復(fù)寫式非易失性存儲器模塊106中寫入數(shù)據(jù)的過程包括數(shù)據(jù)傳輸以及數(shù)據(jù)編程兩個部分。在數(shù)據(jù)傳輸?shù)牟糠?,存儲器控制?04(或存儲器管理電路202)會將欲寫入的頁數(shù)據(jù)傳輸至第一緩沖區(qū)256a,并且之后,欲寫入的頁數(shù)據(jù)會被搬移至第二緩沖區(qū)256b。而在數(shù)據(jù)編程的部分,欲寫入的頁數(shù)據(jù)會從第二緩沖區(qū)256b中編程至記憶胞陣列252。特別是,當(dāng)欲寫入的頁數(shù)據(jù)從第一緩沖區(qū)256a搬移至第二緩沖區(qū)256b之后,存儲器控制器104(或存儲器管理電路202)就會從可復(fù)寫式非易失性存儲器模塊106中接收到完成寫入指令的確認(rèn)訊息,而可再對可復(fù)寫式非易失性存儲器模塊106傳輸(或下達(dá))下一個指令。在此,第一緩沖區(qū)256a也可稱為數(shù)據(jù)快取(datacache)區(qū),而第二緩沖區(qū)256b也可稱為頁面緩沖(pagebuffer)區(qū),并且通過第二緩沖區(qū)256b的寫入運作可稱為快取編程(CacheProgram)運作。[0125]值得一提的是,在本發(fā)明范例實施例中,存儲器控制器104(或存儲器管理電路202)也可指示可復(fù)寫式非易失性存儲器模塊106不使用第二緩沖區(qū)256b來寫入數(shù)據(jù)。例如,在數(shù)據(jù)輸入/輸出緩沖器256未配置第二緩沖區(qū)256b或者基于某些因素而不使用第二緩沖區(qū)256b的例子中,可復(fù)寫式非易失性存儲器模塊106也可根據(jù)存儲器控制器104(或存儲器管理電路202)的指令直接將欲寫入的頁數(shù)據(jù)從第一緩沖區(qū)256a中編程至記憶胞陣列252中。在此例子中,存儲器管理電路202必須等到可復(fù)寫式非易失性存儲器模塊106將頁數(shù)據(jù)從第一緩沖區(qū)256a中編程至記憶胞陣列252之后才會接收到完成寫入指令的確^窗、。[0126]必須了解的是,本發(fā)明不限于圖6的范例,并且在另一范例實施例中,數(shù)據(jù)輸入/輸出緩沖器256也可只具有一個緩沖區(qū)或大于2個緩沖區(qū)。[0127]圖7是根據(jù)本發(fā)明一范例實施例所繪示的物理抹除單元中物理編程單元的布局示意圖。[0128]請參照圖7,在此以MLCNAND快閃存儲器的物理抹除單元為例進(jìn)行說明并且假設(shè)每個物理抹除單元包括256個物理編程單元。物理抹除單元304(0)包括物理編程單元701(0)?701(255)。物理編程單元701(0)與物理編程單元701(4)位于同一條字線上,物理編程單元701(1)與物理編程單元701(5)位于同一條字線上,物理編程單元701(2)與物理編程單元701(8)位于同一條字線上,物理編程單元701(3)與物理編程單元701(9)位于同一條字線上,物理編程單元701(6)與物理編程單元701(12)位于同一條字線上,物理編程單元701(7)與物理編程單元701(13)位于同一條字線上,物理編程單元701(10)與物理編程單元701(16)位于同一條字線上,物理編程單元701(11)與物理編程單元701(17)位于同一條字線上,并且以此類推。在此,物理編程單元701(0)、701(1)、701(2)、701(3)、701(6)、701(7)、710(10)、710(11)、701(14)、701(15)、...、701(250)與701(251)屬于下物理程序單元,并且物理編程單元701(4)、701(5)、701(8)、701(9)、701(12)、701(13)、710(16)、710(17)、...、701(252)、701(253)、701(254)與701(255)屬于上物理程序單元。必須了解的是,圖7所示的配置方式僅為范例,本發(fā)明不限于此。[0129]圖8與圖9是根據(jù)一范例實施例所繪示的管理可復(fù)寫式非易失性存儲器模塊的范例示意圖。[0130]必須了解的是,在此描述可復(fù)寫式非易失性存儲器模塊106的物理抹除單元的運作時,以“提取”、“交換”、“分組”、“輪替”等詞來操作物理抹除單元是邏輯上的概念。也就是說,可復(fù)寫式非易失性存儲器模塊的物理抹除單元的實際位置并未更動,而是邏輯上對可復(fù)寫式非易失性存儲器模塊的物理抹除單元進(jìn)行操作。[0131]請參照圖8,存儲器控制器104(或存儲器管理電路202)會將可復(fù)寫式非易失性存儲器模塊106的物理抹除單元304(0)?304(R)邏輯地分組為(或指派至)數(shù)據(jù)區(qū)(dataarea)402、備用區(qū)(sparearea)404、系統(tǒng)區(qū)(systemarea)406與取代區(qū)(replacementarea)408。[0132]邏輯上屬于數(shù)據(jù)區(qū)402與備用區(qū)404的物理抹除單元是用以存儲來自于主機系統(tǒng)1000的數(shù)據(jù)。具體來說,數(shù)據(jù)區(qū)402的物理抹除單元(亦稱為數(shù)據(jù)物理抹除單元)是被視為已存儲數(shù)據(jù)的物理抹除單元,而備用區(qū)404的物理抹除單元(亦稱為備用物理抹除單元)是用以寫入新數(shù)據(jù)的物理抹除單元。例如,當(dāng)從主機系統(tǒng)1000接收到寫入指令與欲寫入的數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會從備用區(qū)404中提取物理抹除單元,整理欲寫入的數(shù)據(jù)并且將數(shù)據(jù)寫入至所提取的物理抹除單元中。[0133]邏輯上屬于系統(tǒng)區(qū)406的物理抹除單元是用以記錄系統(tǒng)數(shù)據(jù),其中此系統(tǒng)數(shù)據(jù)包括關(guān)于存儲器芯片的制造商與型號、存儲器芯片的物理抹除單元數(shù)、每一物理抹除單元的物理編程單元數(shù)、映射表等。特別是,當(dāng)物理抹除單元備用于寫入系統(tǒng)數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會在此物理抹除單元的物理編程單元的冗余位區(qū)中記錄一個系統(tǒng)物理抹除單元標(biāo)記,以識別此物理抹除單元是被用于存儲系統(tǒng)數(shù)據(jù)的系統(tǒng)物理抹除單元。值得一提的是,由于對于存儲器存儲裝置100來說,系統(tǒng)數(shù)據(jù)是相當(dāng)重要的數(shù)據(jù),因此,在可復(fù)寫式非易失性存儲器模塊106為MLCNAND型快閃存儲器模塊或TLCNAND型快閃存儲器模塊的范例實施例中,存儲器控制器104(或存儲器管理電路202)僅會使用系統(tǒng)物理抹除單元的下物理編程單元來存儲系統(tǒng)數(shù)據(jù),以確保數(shù)據(jù)的可靠度。[0134]邏輯上屬于取代區(qū)408中的物理抹除單元是替代物理抹除單元。例如,可復(fù)寫式非易失性存儲器模塊106于出廠時會預(yù)留4%的物理抹除單元作為更換使用。也就是說,當(dāng)數(shù)據(jù)區(qū)402、備用區(qū)404或系統(tǒng)區(qū)406中的物理抹除單元損毀時,預(yù)留于取代區(qū)408中的物理抹除單元是用以取代損壞的物理抹除單元(即,壞物理抹除單元(badblock))。因此,倘若取代區(qū)408中仍存有正常的物理抹除單元且發(fā)生物理抹除單元損毀時,存儲器控制器104(或存儲器管理電路202)會從取代區(qū)408中提取正常的物理抹除單元來更換損毀的物理抹除單元。倘若取代區(qū)408中無正常的物理抹除單元且發(fā)生物理抹除單元損毀時,則存儲器控制器104會將整個存儲器存儲裝置100宣告為寫入保護(hù)(writeprotect)狀態(tài),而無法再寫入數(shù)據(jù)。[0135]特別是,數(shù)據(jù)區(qū)402、備用區(qū)404、系統(tǒng)區(qū)406與取代區(qū)408的物理抹除單元的數(shù)量會依據(jù)不同的存儲器規(guī)格而有所不同。此外,必須了解的是,在存儲器存儲裝置100的運作中,物理抹除單元關(guān)聯(lián)至數(shù)據(jù)區(qū)402、備用區(qū)404、系統(tǒng)區(qū)406與取代區(qū)408的分組關(guān)系會動態(tài)地變動。例如,當(dāng)備用區(qū)404中的物理抹除單元損壞而被取代區(qū)408的物理抹除單元取代時,則原本取代區(qū)408的物理抹除單元會被關(guān)聯(lián)至備用區(qū)404。[0136]請參照圖9,如上所述,數(shù)據(jù)區(qū)402與備用區(qū)404的物理抹除單元是以輪替方式來存儲主機系統(tǒng)1000所寫入的數(shù)據(jù)。在本范例實施例中,存儲器控制器104(或存儲器管理電路202)會配置邏輯地址LBA(O)?LBA(H)給主機系統(tǒng)1000以進(jìn)行數(shù)據(jù)的存取。每個邏輯地址是由數(shù)個扇區(qū)(sector)所組成。例如,在本范例實施例中,每一邏輯地址是由4個扇區(qū)所組成。但本發(fā)明不限于此,在本發(fā)明另一范例實施例中,邏輯地址也可是由8個扇區(qū)所組成或是由16個扇區(qū)所組成。在本范例實施例中,一個邏輯地址的大小是相同于一個物理編程單元的大小,并且數(shù)據(jù)區(qū)402與備用區(qū)404的物理抹除單元的物理編程單元的數(shù)目是大于邏輯地址的數(shù)目。[0137]例如,當(dāng)存儲器控制器104(或存儲器管理電路202)開始使用物理抹除單元304(0)來存儲主機系統(tǒng)1000欲寫入的數(shù)據(jù)時,不管主機系統(tǒng)1000是寫入那個邏輯地址,存儲器控制器104(或存儲器管理電路202)會將數(shù)據(jù)寫入至物理抹除單元304(0)的物理編程單元;而當(dāng)存儲器控制器104(或存儲器管理電路202)開始使用物理抹除單元304(1)來存儲主機系統(tǒng)1000欲寫入的數(shù)據(jù)時,不管主機系統(tǒng)1000是寫入那個邏輯地址,存儲器控制器104(或存儲器管理電路202)會將數(shù)據(jù)寫入至物理抹除單元304(1)的物理編程單元中。也就是說,當(dāng)寫入主機系統(tǒng)1000欲寫入的數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會使用一個物理抹除單元內(nèi)的物理編程單元來寫入數(shù)據(jù),并且當(dāng)此物理抹除單元內(nèi)的物理編程單元被使用完后才會再選擇另一個無存儲數(shù)據(jù)的物理抹除單元,并且在新選擇的物理抹除單元的物理編程單元中繼續(xù)寫入數(shù)據(jù)。[0138]為了識別每個邏輯地址的數(shù)據(jù)被存儲在那個物理編程單元,在本范例實施例中,存儲器控制器104(或存儲器管理電路202)會記錄邏輯地址與物理編程單元之間的映射關(guān)系。并且,當(dāng)主機系統(tǒng)1000欲在扇區(qū)中存取數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會確認(rèn)此扇區(qū)所屬的邏輯地址,并且在此邏輯地址所映射的物理編程單元中來存取數(shù)據(jù)。例如,在本范例實施例中,存儲器控制器104(或存儲器管理電路202)會在可復(fù)寫式非易失性存儲器模塊106的系統(tǒng)區(qū)406中存儲邏輯地址映射表來記錄每一邏輯地址所映射的物理編程單元,并且當(dāng)欲存取數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會將邏輯地址映射表載入至緩沖存儲器208來維護(hù)。[0139]圖10?12是根據(jù)本發(fā)明一范例實施例所繪示的寫入數(shù)據(jù)至物理編程單元的范例。[0140]請參照圖10?12,倘若從主機系統(tǒng)1000接收到一寫入指令(以下稱為第一寫入指令)及欲寫入至邏輯地址LBA(O)?LBA(3)的數(shù)據(jù)DATA1時,存儲器控制器104(或存儲器管理電路202)會將數(shù)據(jù)DATA1暫存至緩沖存儲器208,并且將數(shù)據(jù)DATA1根據(jù)物理編程單元的大小整理成子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4。然后,存儲器控制器104(或錯誤檢查與校正電路210)會分別地為SDATA1、SDATA2、SDATA3與SDATA4產(chǎn)生錯誤檢查與校正碼ECC1、ECC2、ECC3、與ECC4。之后,存儲器控制器104(或存儲器管理電路202)會選取一個物理抹除單元(例如,物理編程單元304(0))并且將子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4及錯誤檢查與校正碼ECC1、ECC2、ECC3、與ECC4分別且依序地編程至物理編程單元304(0)的物理編程單元701(0)、701(1)、701(2)與701(3)。特別是,存儲器控制器104(或同位信息編碼與解碼電路212)會根據(jù)子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4來產(chǎn)生同位信息P1。然后,存儲器控制器104(或存儲器管理電路202)會將同位信息P1暫存至緩沖存儲器208并且刪除暫存在緩沖存儲器208中的子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4。具體來說,由于存儲子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4的物理編程單元701(0)、701(1)、701(2)與701(3)皆為下物理編程單元,并且對應(yīng)下物理編程單元701(0)、701(1)、701(2)與701(3)的上物理編程單元710(4)、710(5)、710(8)、710(9)尚未被寫入數(shù)據(jù)。因此,如果之后對對應(yīng)下物理編程單元701(0)、701(1)、701(2)與701(3)的上物理編程單元710(4)、710(5)、710(8)、710(9)執(zhí)行編程并發(fā)生編程錯誤時,存儲在下物理編程單元701(0)、701(1)、701(2)與701(3)的數(shù)據(jù)可能會遺失?;?,在緩沖存儲器208中存儲對應(yīng)子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4的同位信息以取代完成地暫存子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4,可在減少所需的緩沖存儲器208的空間下,達(dá)到保護(hù)數(shù)據(jù)的效果。[0141]圖13?15是根據(jù)本發(fā)明一范例實施例所繪示的寫入數(shù)據(jù)至物理編程單元的另一范例。[0142]請參照圖13?15,接續(xù)圖10?12,倘若再從主機系統(tǒng)1000接收到另一寫入指令(以下稱為第二寫入指令)及欲寫入至邏輯地址LBA(4)?LBA(ll)的數(shù)據(jù)DATA2時,存儲器控制器104(或存儲器管理電路202)會將數(shù)據(jù)暫存至緩沖存儲器208,并且將數(shù)據(jù)DATA2根據(jù)物理編程單元的大小整理成子數(shù)據(jù)串SDATA5、SDATA6、SDATA7、SDATA8、SDATA9、SDATA10、SDATA11與SDATA12。然后,存儲器控制器104(或錯誤檢查與校正電路210)會分別地為子數(shù)據(jù)串SDATA5、SDATA6、SDATA7、SDATA8、SDATA9、SDATA10、SDATA11與SDATA12產(chǎn)生錯誤檢查與校正碼ECC5、ECC6、ECC7、ECC8、ECC9、ECC10、ECC11與ECC12。之后,存儲器控制器104(或存儲器管理電路202)會將子數(shù)據(jù)串SDATA5、SDATA6、SDATA7、SDATA8、SDATA9、SDATA10、SDATA11與SDATA12以及錯誤檢查與校正碼ECC5、ECC6、ECC7、ECC8、ECC9、ECC10、ECC11與ECC12分別且依序地編程至物理編程單元304(0)的物理編程單元701(4)、701(5)、701(6)、701(7)、701(8)、701(9)、701(10)與701(11)。特別是,存儲器控制器104(或同位信息編碼與解碼電路212)會根據(jù)子數(shù)據(jù)串SDATA7、SDATA8、SDATA11與SDATA12來產(chǎn)生同位信息P2。然后,存儲器控制器104(或存儲器管理電路202)會將同位信息P2暫存至緩沖存儲器208并且刪除暫存在緩沖存儲器208中的子數(shù)據(jù)串SDATA5、SDATA6、SDATA7、SDATA8、SDATA9、SDATA10、SDATA11與SDATA12。具體來說,由于存儲子數(shù)據(jù)串SDATA7、SDATA8、SDATA11與SDATA12的物理編程單元701(6)、701(7)、701(10)與701(11)皆為下物理編程單元,并且對應(yīng)下物理編程單元701(6)、701(7)、701(10)與701(11)的上物理編程單元710(12)、710(13)、710(16)、710(17)尚未被寫入數(shù)據(jù)。因此,如果之后對上物理編程單元710(12)、710(13)、710(16)、710(17)執(zhí)行編程并發(fā)生編程錯誤時,存儲在下物理編程單元701(6)、701(7)、701(10)與701(11)的數(shù)據(jù)可能會遺失。基此,在緩沖存儲器208中存儲對應(yīng)子數(shù)據(jù)串SDATA7、SDATA8、SDATA11與SDATA12的同位信息以取代完成地暫存子數(shù)據(jù)串SDATA7、SDATA8、SDATA11與SDATA12,可在減少所需的緩沖存儲器208的空間下,達(dá)到保護(hù)數(shù)據(jù)的效果。[0143]在本發(fā)明另一范例實施例中,存儲器控制器104(或存儲器管理電路202)會確認(rèn)先前所存儲的子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4是否正確無誤,并且在先前所存儲的子數(shù)據(jù)串SDATA1、SDATA2、SDATA3與SDATA4正確無誤時從緩沖存儲器208中刪除同位信息P1。另外,在另一范例實施例中,存儲器控制器104(或存儲器管理電路202)也可在緩沖存儲器208的空間不足時才刪除同位信息P1。[0144]在圖13?15的范例中,倘若在將子數(shù)據(jù)串SDATA5、SDATA6、SDATA9或SDATA10編程物理編程單元701(4)、701(5)、701(8)或701(9)時發(fā)生編程錯誤并且導(dǎo)致子數(shù)據(jù)串SDATA1、SDATA2、SDATA3或SDATA4出現(xiàn)錯誤數(shù)據(jù)時,存儲器控制器104(或存儲器管理電路202)會根據(jù)同位信息P1以及目前存儲在物理編程單元701(0)、701(1)、701(2)與701(3)的子數(shù)據(jù)串來校正錯誤數(shù)據(jù)(子數(shù)據(jù)串SDATA1、SDATA2、SDATA3或SDATA4)。至于發(fā)生編程錯誤的子數(shù)據(jù)串SDATA5、SDATA6、SDATA9或SDATA10,因緩沖存儲器208仍保留有此些子數(shù)據(jù)串,而不會遺失。[0145]值得一提的是,盡管在本范例實施例中,存儲器控制器104(或存儲器管理電路202)會識別出哪些已被寫入數(shù)據(jù)的下物理編程所對應(yīng)的上物理編程單元未被編程,并且存儲器控制器104(或同位信息編碼與解碼電路212)針對所識別之下物理編程單元上的子數(shù)據(jù)串來產(chǎn)生同位信息,但本發(fā)明不限于此。例如,在本發(fā)明另一范例實施例中,存儲器控制器104(或同位信息編碼與解碼電路212)也可對此次寫入指令所欲寫入的所有子數(shù)據(jù)串來產(chǎn)生同位信息。又例如,在本發(fā)明另一范例實施例中,存儲器控制器104(或同位信息編碼與解碼電路212)也可在每寫一筆子數(shù)據(jù)至物理編程單元時,根據(jù)前一次寫入子數(shù)據(jù)至物理編程單元所產(chǎn)生的先前同位信息與目前所寫入的子數(shù)據(jù)來產(chǎn)生新的同位信息。[0146]圖16是根據(jù)一范例實施例所繪示的數(shù)據(jù)寫入的流程圖。[0147]請參照圖16,在步驟S1601中,存儲器控制器104(或存儲器管理電路202)從主機系統(tǒng)1000接收寫入指令與對應(yīng)的數(shù)據(jù)。[0148]在步驟S1603中,存儲器控制器104(或存儲器管理電路202)會將數(shù)據(jù)暫存至緩沖存儲器208并且將數(shù)據(jù)整理成多個子數(shù)據(jù)串。[0149]在步驟S1605中,存儲器控制器104(或存儲器管理電路202)會選擇至少一物理抹除單元(以下稱為第一物理抹除單元)且將子數(shù)據(jù)串寫入至第一物理抹除單元的物理編程單元中。具體來說,存儲器控制器104(或錯誤檢查與校正電路210)會為每個子數(shù)據(jù)串產(chǎn)生對應(yīng)的錯誤檢查與校正碼,并且存儲器控制器104(或存儲器管理電路202)會將子數(shù)據(jù)串與對應(yīng)的錯誤檢查與校正碼寫入至對應(yīng)的物理編程單元。[0150]在步驟S1607中,存儲器控制器104(或存儲器管理電路202)會判斷將子數(shù)據(jù)串寫入至第一物理抹除單元的物理編程單元的過程中是否發(fā)生編程錯誤。[0151]倘若未發(fā)生編程錯誤時,在步驟S1609中,存儲器控制器104(或同位信息編碼與解碼電路212)會根據(jù)此些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生同位信息。例如,如上所述,存儲器控制器104(或存儲器管理電路202)會識別存儲此些子數(shù)據(jù)串的下物理編程單元之中其對應(yīng)之上物理編程單元(以下稱為第一上物理編程單元)未存儲數(shù)據(jù)的下物理編程單元(以下稱為第一下物理編程單元)并且依據(jù)被寫入至第一下物理編程單元的子數(shù)據(jù)串來產(chǎn)生同位信息。[0152]在步驟S1611中,存儲器控制器104(或存儲器管理電路202)會將所產(chǎn)生的同位信息存儲至緩沖存儲器208,從緩沖存儲器208中刪除此些子數(shù)據(jù)串。特別是,倘若緩沖存儲器208中存有執(zhí)行前次寫入指令所存儲的同位信息時,在步驟S1611中存儲器控制器104(或存儲器管理電路202)會一并將舊的同位信息移除。[0153]倘若發(fā)生編程錯誤時,在步驟S1613中,存儲器控制器104(或同位信息編碼與解碼電路212)會根據(jù)緩沖存儲器208中的同位信息來解碼前次寫入指令所寫入的子數(shù)據(jù)串中的至少其中一部分來校正錯誤數(shù)據(jù)。之后,存儲器控制器104(或存儲器管理電路202)可將重新進(jìn)行編程運作。[0154]綜上所述,本發(fā)明范例實施例的數(shù)據(jù)寫入方法使用此數(shù)據(jù)寫入方法的存儲器控制器能夠有效地使用緩沖存儲器的存儲空間來執(zhí)行寫入指令,同時避免數(shù)據(jù)遺失。此外,使用此數(shù)據(jù)寫入方法存儲器存儲裝置能夠在配置較少容量的緩沖存儲器下順利地執(zhí)行寫入指令,同時避免數(shù)據(jù)遺失?!緳?quán)利要求】1.一種數(shù)據(jù)寫入方法,用于寫入數(shù)據(jù)至一可復(fù)寫式非易失性存儲器模塊,其中該可復(fù)寫式非易失性存儲器模塊具有至少一存儲器晶粒,該至少一存儲器晶粒包括多個物理抹除單元,每一這些物理抹除單元包括多個物理編程單元,該數(shù)據(jù)寫入方法包括:從一主機系統(tǒng)中接收一第一寫入指令與對應(yīng)該寫入指令的一第一數(shù)據(jù)并且將該第一數(shù)據(jù)暫存至一緩沖存儲器中,其中該第一數(shù)據(jù)包括多個子數(shù)據(jù)串;從該緩沖存儲器中將這些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串至這些物理抹除單元之中的至少一第一物理抹除單元中;根據(jù)這些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生一同位信息;以及將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)。2.如權(quán)利要求1所述的數(shù)據(jù)寫入方法,其中所述根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的步驟包括:依據(jù)所有的這些子數(shù)據(jù)串來產(chǎn)生該同位信息。3.如權(quán)利要求1所述的數(shù)據(jù)寫入方法,其中每一這些物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至這些下物理編程單元的速度快于寫入數(shù)據(jù)至這些上物理編程單元,其中所述根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的步驟包括:根據(jù)存儲這些子數(shù)據(jù)串的物理編程單元識別這些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串,其中該至少一第一子數(shù)據(jù)串被存儲在這些下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)該至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù);以及根據(jù)該至少一第一子數(shù)據(jù)串產(chǎn)生該同位信息。4.如權(quán)利要求1所述的數(shù)據(jù)寫入方法,還包括:在將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)之后,從該主機系統(tǒng)接收一第二寫入指令與對應(yīng)該第二寫入指令的一第二數(shù)據(jù)。5.如權(quán)利要求4所述的數(shù)據(jù)寫入方法,還包括:判斷從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時是否發(fā)生一編程錯誤;以及倘若從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時發(fā)生該編程錯誤時,使用存儲在該緩沖存儲器中的該同位信息解碼存儲在該至少一第一物理抹除單元中的該至少一部分子數(shù)據(jù)串來校正該至少一部分子數(shù)據(jù)串中的至少一錯誤子數(shù)據(jù)串。6.如權(quán)利要求5所述的數(shù)據(jù)寫入方法,還包括:倘若從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時未發(fā)生該編程錯誤時,從該緩沖存儲器中移除該同位信息。7.如權(quán)利要求4所述的數(shù)據(jù)寫入方法,還包括:根據(jù)至少一部分的該第二數(shù)據(jù)產(chǎn)生另一同位信息;以及將該另一同位信息存儲至該緩沖存儲器中并刪除該第二數(shù)據(jù)。8.如權(quán)利要求1所述的數(shù)據(jù)寫入方法,其中從該緩沖存儲器中將這些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串至這些物理抹除單元之中的該至少一第一物理抹除單元中的步驟包括:分別地為這些子數(shù)據(jù)串產(chǎn)生多個錯誤檢查與校正碼;以及將這些子數(shù)據(jù)串與分別地對應(yīng)這些子數(shù)據(jù)串的這些錯誤檢查與校正碼傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串與分別地對應(yīng)這些子數(shù)據(jù)串的這些錯誤檢查與校正碼至該至少一第一物理抹除單元的物理編程單元中。9.如權(quán)利要求1所述的數(shù)據(jù)寫入方法,其中所述根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的步驟包括:每當(dāng)將這些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至該至少一第一物理抹除單元時,根據(jù)該其中一個子數(shù)據(jù)串與一先前同位信息來產(chǎn)生該同位信息。10.一種存儲器控制器,用于控制一可復(fù)寫式非易失性存儲器模塊,該存儲器控制器包括:一主機接口,用以電性連接至一主機系統(tǒng);一存儲器接口,用以電性連接至該可復(fù)寫式非易失性存儲器模塊,其中該可復(fù)寫式非易失性存儲器模塊具有至少一存儲器晶粒,該至少一存儲器晶粒包括多個物理抹除單元,每一這些物理抹除單元包括多個物理編程單元;一緩沖存儲器;一同位信息編碼與解碼電路;以及一存儲器管理電路,電性連接至該主機接口、該存儲器接口、該緩沖存儲器與該同位信息編碼與解碼電路,其中該存儲器管理電路用以從該主機系統(tǒng)中接收一第一寫入指令與對應(yīng)該寫入指令的一第一數(shù)據(jù)并且將該第一數(shù)據(jù)暫存至一緩沖存儲器中,其中該第一數(shù)據(jù)包括多個子數(shù)據(jù)串,其中該存儲器管理電路還用以從該緩沖存儲器中將這些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串至這些物理抹除單元之中的至少一第一物理抹除單元中,其中該同位信息編碼與解碼電路用以根據(jù)這些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生一同位信息,其中該存儲器管理電路還用以將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)。11.如權(quán)利要求10所述的存儲器控制器,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,該同位信息編碼與解碼電路依據(jù)所有的這些子數(shù)據(jù)串來產(chǎn)生該同位信息。12.如權(quán)利要求10所述的存儲器控制器,其中每一這些物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至這些下物理編程單元的速度快于寫入數(shù)據(jù)至這些上物理編程單元,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,該存儲器管理電路根據(jù)存儲這些子數(shù)據(jù)串的物理編程單元識別這些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串并且該同位信息編碼與解碼電路根據(jù)該至少一第一子數(shù)據(jù)串產(chǎn)生該同位信息,其中該至少一第一子數(shù)據(jù)串被存儲在這些下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)該至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù)。13.如權(quán)利要求10所述的存儲器控制器,其中該存儲器管理路還用以在將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)之后,從該主機系統(tǒng)接收一第二寫入指令與對應(yīng)該第二寫入指令的一第二數(shù)據(jù)。14.如權(quán)利要求13所述的存儲器控制器,其中該存儲器管理電路根據(jù)至少一部分的該第二數(shù)據(jù)產(chǎn)生另一同位信息以及將該另一同位信息存儲至該緩沖存儲器中并刪除該第二數(shù)據(jù)。15.如權(quán)利要求10所述的存儲器控制器,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,每當(dāng)將這些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至該至少一第一物理抹除單元時,該同位信息編碼與解碼電路根據(jù)該其中一個子數(shù)據(jù)串與一先前同位信息來產(chǎn)生該同位信息。16.一種存儲器存儲裝置,包括:一連接器,用以電性連接至一主機系統(tǒng);一可復(fù)寫式非易失性存儲器模塊,具有至少一存儲器晶粒,該至少一存儲器晶粒包括多個物理抹除單元,每一這些物理抹除單元包括多個物理編程單元;以及一存儲器控制器,具有一緩沖存儲器且電性連接至該連接器與該可復(fù)寫式非易失性存儲器模塊,其中該存儲器控制器用以從該主機系統(tǒng)中接收一寫入指令與對應(yīng)該寫入指令的一第一數(shù)據(jù)并且將該第一數(shù)據(jù)暫存至一緩沖存儲器中,其中該第一數(shù)據(jù)包括多個子數(shù)據(jù)串,其中該存儲器控制器還用以從該緩沖存儲器中將這些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串至這些物理抹除單元之中的至少一第一物理抹除單元中,其中該存儲器控制器用以根據(jù)這些子數(shù)據(jù)串之中至少一部分子數(shù)據(jù)串來產(chǎn)生一同位信息,其中該存儲器控制器還用以將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)。17.如權(quán)利要求16所述的存儲器存儲裝置,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,該存儲器控制器依據(jù)所有的這些子數(shù)據(jù)串來產(chǎn)生該同位信息。18.如權(quán)利要求16所述的存儲器存儲裝置,其中每一這些物理抹除單元的物理編程單元包括多個下物理編程單元與多個上物理編程單元,寫入數(shù)據(jù)至這些下物理編程單元的速度快于寫入數(shù)據(jù)至這些上物理編程單元,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,該存儲器控制器根據(jù)存儲這些子數(shù)據(jù)串的物理編程單元識別這些子數(shù)據(jù)串之中的至少一第一子數(shù)據(jù)串并且該存儲器控制器根據(jù)該至少一第一子數(shù)據(jù)串產(chǎn)生該同位信息,其中該至少一第一子數(shù)據(jù)串被存儲在這些下物理編程單元之中的至少一第一下物理編程單元并且對應(yīng)該至少一第一下物理編程單元的至少一第一上物理編程單元未存儲數(shù)據(jù)。19.如權(quán)利要求16所述的存儲器存儲裝置,其中該存儲器控制器還用以在將該同位信息存儲在該緩沖存儲器中并且從該緩沖存儲器中移除該第一數(shù)據(jù)之后,從該主機系統(tǒng)接收一第二寫入指令與對應(yīng)該第二寫入指令的一第二數(shù)據(jù)。20.如權(quán)利要求19所述的存儲器存儲裝置,其中該存儲器控制器還用以判斷從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時是否發(fā)生一編程錯誤,其中倘若從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時發(fā)生該編程錯誤時,該存儲器控制器使用存儲在該緩沖存儲器中的該同位信息來解碼存儲在該至少一第一物理抹除單元中的該至少一部分子數(shù)據(jù)串以校正該至少一部分子數(shù)據(jù)串中的至少一錯誤子數(shù)據(jù)串。21.如權(quán)利要求20所述的存儲器存儲裝置,其中倘若從該緩沖存儲器中將該第二數(shù)據(jù)寫入至該至少一第一物理抹除單元中時未發(fā)生該編程錯誤時,該存儲器控制器還用以從該緩沖存儲器中移除該同位信息。22.如權(quán)利要求19所述的存儲器存儲裝置,其中該存儲器控制器根據(jù)至少一部分的該第二數(shù)據(jù)產(chǎn)生另一同位信息以及將該另一同位信息存儲至該緩沖存儲器中并刪除該第二數(shù)據(jù)。23.如權(quán)利要求16所述的存儲器存儲裝置,其中該存儲器控制器還用以分別地為這些子數(shù)據(jù)串產(chǎn)生多個錯誤檢查與校正碼,其中在從該緩沖存儲器中將這些子數(shù)據(jù)串傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串至這些物理抹除單元之中的該至少一第一物理抹除單元中的運作中,該存儲器控制器將這些子數(shù)據(jù)串與分別地對應(yīng)這些子數(shù)據(jù)串的這些錯誤檢查與校正碼傳送至該可復(fù)寫式非易失性存儲器模塊以寫入這些子數(shù)據(jù)串與分別地對應(yīng)這些子數(shù)據(jù)串的這些錯誤檢查與校正碼至該至少一第一物理抹除單元的物理編程單元中。24.如權(quán)利要求16所述的存儲器存儲裝置,其中在根據(jù)這些子數(shù)據(jù)串之中該至少一部分子數(shù)據(jù)串來產(chǎn)生該同位信息的運作中,每當(dāng)將這些子數(shù)據(jù)串之中的其中一個子數(shù)據(jù)串寫入至該至少一第一物理抹除單元時,該存儲器控制器根據(jù)該其中一個子數(shù)據(jù)串與一先前同位信息來產(chǎn)生該同位信息。【文檔編號】G06F11/08GK104252317SQ201310257907【公開日】2014年12月31日申請日期:2013年6月26日優(yōu)先權(quán)日:2013年6月26日【發(fā)明者】陳慶聰,梁鳴仁申請人:群聯(lián)電子股份有限公司