數(shù)據(jù)寫入方法、存儲(chǔ)器控制電路單元與存儲(chǔ)器存儲(chǔ)裝置制造方法【專利摘要】本發(fā)明提供一種數(shù)據(jù)寫入方法、存儲(chǔ)器控制電路單元與存儲(chǔ)器存儲(chǔ)裝置,其中此存儲(chǔ)器存儲(chǔ)裝置具有第一緩沖存儲(chǔ)器、第二緩沖存儲(chǔ)器及可復(fù)寫式非易失性存儲(chǔ)器模塊,其中第一緩沖存儲(chǔ)器的傳輸帶寬大于第二緩沖存儲(chǔ)器的傳輸帶寬。本方法包括:從主機(jī)系統(tǒng)中接收寫入指令與對(duì)應(yīng)的第一數(shù)據(jù);判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù);倘若第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)時(shí),將第一數(shù)據(jù)暫存至第一緩沖存儲(chǔ)器的第一數(shù)據(jù)暫存區(qū),將第一數(shù)據(jù)從第一數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中;并且倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),將第一數(shù)據(jù)暫存至第二緩沖存儲(chǔ)器的第二數(shù)據(jù)暫存區(qū)?!緦@f明】數(shù)據(jù)寫入方法、存儲(chǔ)器控制電路單元與存儲(chǔ)器存儲(chǔ)裝置【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明是有關(guān)于一種用于可復(fù)寫式非易失性存儲(chǔ)器的數(shù)據(jù)寫入方法,尤其是涉及一種數(shù)據(jù)寫入方法、存儲(chǔ)器控制電路單元與存儲(chǔ)器存儲(chǔ)裝置?!?br>背景技術(shù):
】[0002]數(shù)碼相機(jī)、手機(jī)與MP3在這幾年來的成長(zhǎng)十分迅速,使得消費(fèi)者對(duì)存儲(chǔ)媒體的需求也急速增加。由于可復(fù)寫式非易失性存儲(chǔ)器(rewritablenon-volatilememory)具有數(shù)據(jù)非易失性、省電、體積小、無機(jī)械結(jié)構(gòu)、讀寫速度快等特性,最適于便攜式電子產(chǎn)品,例如筆記本電腦。固態(tài)硬盤就是一種以快閃存儲(chǔ)器作為存儲(chǔ)媒體的存儲(chǔ)器存儲(chǔ)裝置。因此,近年快閃存儲(chǔ)器產(chǎn)業(yè)成為電子產(chǎn)業(yè)中相當(dāng)熱門的一環(huán)。[0003]若存儲(chǔ)器存儲(chǔ)裝置是以可復(fù)寫式非易失性存儲(chǔ)器作為存儲(chǔ)媒體,當(dāng)有數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器時(shí),可復(fù)寫式非易失性存儲(chǔ)器可能會(huì)發(fā)生程序化錯(cuò)誤,使得數(shù)據(jù)并沒有成功地被寫入。因此,一個(gè)存儲(chǔ)器存儲(chǔ)裝置中通常會(huì)配置至少一個(gè)緩沖存儲(chǔ)器。此緩沖存儲(chǔ)器可以用來暫存欲寫入存儲(chǔ)器存儲(chǔ)裝置的數(shù)據(jù)。也就是說,每一筆欲寫入至存儲(chǔ)器存儲(chǔ)裝置的數(shù)據(jù)都需要先暫存至此緩沖存儲(chǔ)器,并且之后再?gòu)木彌_存儲(chǔ)器中將欲寫入的數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器中。由于對(duì)于一筆寫入數(shù)據(jù)來說,都需要對(duì)緩沖存儲(chǔ)器進(jìn)行暫存與讀取兩個(gè)動(dòng)作。因此,當(dāng)緩沖存儲(chǔ)器的傳輸帶寬不夠大時(shí),相對(duì)于分配給寫入操作的帶寬就會(huì)相對(duì)較少。[0004]此外,當(dāng)數(shù)據(jù)被暫存至緩沖存儲(chǔ)器后,存儲(chǔ)器存儲(chǔ)裝置的控制電路就會(huì)向主機(jī)傳送已完成指令的信息,以便接收下一個(gè)指令與數(shù)據(jù)。當(dāng)將數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器時(shí),可能會(huì)發(fā)生程序化錯(cuò)誤(programfail),使得數(shù)據(jù)并沒有成功地被寫入。因此,存儲(chǔ)器存儲(chǔ)裝置的控制電路會(huì)需要從緩沖存儲(chǔ)器中將以為成功寫入的數(shù)據(jù)再次寫入(也稱為重寫)至可復(fù)寫式非易失性存儲(chǔ)器中。因此,在存儲(chǔ)器存儲(chǔ)裝置中所配置的緩沖存儲(chǔ)器必須足夠大來暫存數(shù)據(jù),以避免無法進(jìn)行重寫。[0005]基于上述,為了提升寫入速度,使用帶寬較大的緩沖存儲(chǔ)器是需要的。然而,為了考量上述重寫的需求,必須使用大容量的緩沖存儲(chǔ)器。對(duì)于帶寬較大的緩沖存儲(chǔ)器來說,每存儲(chǔ)單位的成本較高。因此,如何能夠在降低制造成本下,又具有適當(dāng)容量的緩沖存儲(chǔ)器及具有適當(dāng)?shù)拇鎯?chǔ)器帶寬,為此領(lǐng)域技術(shù)人員所關(guān)心的議題?!?br/>發(fā)明內(nèi)容】[0006]本發(fā)明提供一種數(shù)據(jù)寫入方法、存儲(chǔ)器控制電路單元與存儲(chǔ)器存儲(chǔ)裝置,其能夠有效率地使用存儲(chǔ)器存儲(chǔ)裝置中暫存存儲(chǔ)器的帶寬與容量并且提升寫入數(shù)據(jù)的速度。[0007]本發(fā)明一范例實(shí)施例提出一種存儲(chǔ)器存儲(chǔ)裝置,其包括連接接口單元、可復(fù)寫式非易失性存儲(chǔ)器模塊、存儲(chǔ)器控制電路單元與第二緩沖存儲(chǔ)器。連接接口單元用以電性連接至主機(jī)系統(tǒng)。存儲(chǔ)器控制電路單元電性連接至連接接口單元與可復(fù)寫式非易失性存儲(chǔ)器模塊,其中存儲(chǔ)器控制電路單元包括一第一緩沖存儲(chǔ)器,且第一緩沖存儲(chǔ)器包括第一數(shù)據(jù)暫存區(qū)。第二緩沖存儲(chǔ)器電性連接至第一緩沖存儲(chǔ)器,其中第二緩沖存儲(chǔ)器包括第二數(shù)據(jù)暫存區(qū),且第二緩沖存儲(chǔ)器的傳輸帶寬低于第一緩沖存儲(chǔ)器的傳輸帶寬。在此,存儲(chǔ)器控制電路單元用以從主機(jī)系統(tǒng)中接收寫入指令與對(duì)應(yīng)此寫入指令的起始邏輯地址與第一數(shù)據(jù),并且用以判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)。倘若第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元將第一數(shù)據(jù)暫存至第一數(shù)據(jù)暫存區(qū),且將第一數(shù)據(jù)從第一數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中。倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元將第一數(shù)據(jù)暫存至第二數(shù)據(jù)暫存區(qū)。[0008]在本發(fā)明的一實(shí)施例中,在判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)的操作中,存儲(chǔ)器控制電路單元會(huì)判斷上述起始邏輯地址是否為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小是否為此數(shù)據(jù)存取單位的倍數(shù)。倘若起始邏輯地址為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小為數(shù)據(jù)存取單位的倍數(shù)時(shí),存儲(chǔ)器控制電路單元識(shí)別第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)。倘若起始邏輯地址不是數(shù)據(jù)存取單位的倍數(shù)或者第一數(shù)據(jù)的大小不是數(shù)據(jù)存取單位的倍數(shù)時(shí),存儲(chǔ)器控制電路單元識(shí)別第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)。[0009]在本發(fā)明的一實(shí)施例中,存儲(chǔ)器控制電路單元還從第一數(shù)據(jù)暫存區(qū)中將第一數(shù)據(jù)復(fù)制到第二緩沖存儲(chǔ)器的第二數(shù)據(jù)暫存區(qū)中。[0010]在本發(fā)明的一實(shí)施例中,倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元還用以從可復(fù)寫式非易失性存儲(chǔ)器模塊的第一實(shí)體程序化單元中將第二數(shù)據(jù)讀取至第二數(shù)據(jù)暫存區(qū)并且將第一數(shù)據(jù)與第二數(shù)據(jù)從第二數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊的第二實(shí)體程序化單元。[0011]在本發(fā)明的一實(shí)施例中,上述存儲(chǔ)器控制電路單元還用以在將第一數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生程序化錯(cuò)誤。若發(fā)生程序化錯(cuò)誤時(shí),則存儲(chǔ)器控制電路單元還用以從第二緩沖存儲(chǔ)器中讀取第一數(shù)據(jù),并根據(jù)寫入指令將所讀取的第一數(shù)據(jù)重新寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中。[0012]在本發(fā)明的一實(shí)施例中,上述存儲(chǔ)器控制電路單元還用以從主機(jī)系統(tǒng)接收讀取指令。此外,存儲(chǔ)器控制電路單元還用以判斷第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于此讀取指令所指示的一邏輯地址的第三數(shù)據(jù)。若第二緩沖存儲(chǔ)器存儲(chǔ)有屬于此讀取指令所指示的邏輯地址的第三數(shù)據(jù)時(shí),則存儲(chǔ)器控制電路單元從第二緩沖存儲(chǔ)器中讀取第三數(shù)據(jù)并將所讀取的第三數(shù)據(jù)傳送至主機(jī)系統(tǒng)以響應(yīng)此讀取指令。[0013]在本發(fā)明的一實(shí)施例中,上述的第二緩沖存儲(chǔ)器是配置在存儲(chǔ)器控制電路單元中或者配置在存儲(chǔ)器控制電路單元的外部。[0014]在本發(fā)明的一實(shí)施例中,上述第一緩沖存儲(chǔ)器為靜態(tài)隨機(jī)存取存儲(chǔ)器,第二緩沖存儲(chǔ)器為同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器并且第二緩沖存儲(chǔ)器的容量大于第一緩沖存儲(chǔ)器的容量。[0015]本發(fā)明一范例實(shí)施例提出一種存儲(chǔ)器控制電路單元,其包括主機(jī)接口、存儲(chǔ)器接口、存儲(chǔ)器管理電路、第一緩沖存儲(chǔ)器與第二緩沖存儲(chǔ)器。主機(jī)接口用以電性連接至主機(jī)系統(tǒng)。存儲(chǔ)器接口用以電性連接至可復(fù)寫式非易失性存儲(chǔ)器模塊。存儲(chǔ)器管理電路電性連接至主機(jī)接口與存儲(chǔ)器接口。第一緩沖存儲(chǔ)器電性連接至存儲(chǔ)器管理電路且包括第一數(shù)據(jù)暫存區(qū)。第二緩沖存儲(chǔ)器電性連接至第一緩沖存儲(chǔ)器與存儲(chǔ)器管理電路,其中第二緩沖存儲(chǔ)器包括第二數(shù)據(jù)暫存區(qū),且第二緩沖存儲(chǔ)器的傳輸帶寬低于第一緩沖存儲(chǔ)器的傳輸帶寬。存儲(chǔ)器管理電路用以從主機(jī)系統(tǒng)中接收寫入指令與對(duì)應(yīng)此寫入指令的起始邏輯地址與第一數(shù)據(jù)。存儲(chǔ)器管理電路還用以判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)。倘若第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器管理電路將第一數(shù)據(jù)暫存至第一數(shù)據(jù)暫存區(qū),且將第一數(shù)據(jù)從第一數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中。倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器管理電路將第一數(shù)據(jù)暫存至第二數(shù)據(jù)暫存區(qū)。[0016]在本發(fā)明的一實(shí)施例中,在判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)的操作中,存儲(chǔ)器管理電路會(huì)判斷上述起始邏輯地址是否為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小是否為此數(shù)據(jù)存取單位的倍數(shù)。倘若起始邏輯地址為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小為數(shù)據(jù)存取單位的倍數(shù)時(shí),存儲(chǔ)器管理電路識(shí)別第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)。倘若起始邏輯地址不是數(shù)據(jù)存取單位的倍數(shù)或者第一數(shù)據(jù)的大小不是數(shù)據(jù)存取單位的倍數(shù)時(shí),存儲(chǔ)器管理電路識(shí)別第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)。[0017]在本發(fā)明的一實(shí)施例中,存儲(chǔ)器管理電路還從第一數(shù)據(jù)暫存區(qū)中將第一數(shù)據(jù)復(fù)制到第二緩沖存儲(chǔ)器的第二數(shù)據(jù)暫存區(qū)中。[0018]在本發(fā)明的一實(shí)施例中,倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器管理電路還用以從可復(fù)寫式非易失性存儲(chǔ)器模塊的第一實(shí)體程序化單元中將第二數(shù)據(jù)讀取至第二數(shù)據(jù)暫存區(qū)并且將第一數(shù)據(jù)與第二數(shù)據(jù)從第二數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊的第二實(shí)體程序化單元。[0019]在本發(fā)明的一實(shí)施例中,上述存儲(chǔ)器管理電路還用以在將第一數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生程序化錯(cuò)誤。若發(fā)生程序化錯(cuò)誤時(shí),則存儲(chǔ)器管理電路還用以從第二緩沖存儲(chǔ)器中讀取第一數(shù)據(jù),并根據(jù)寫入指令將所讀取的第一數(shù)據(jù)重新寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中。[0020]在本發(fā)明的一實(shí)施例中,上述存儲(chǔ)器管理電路還用以從主機(jī)系統(tǒng)接收讀取指令。此外,存儲(chǔ)器管理電路還用以判斷第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于此讀取指令所指示的一邏輯地址的第三數(shù)據(jù)。若第二緩沖存儲(chǔ)器存儲(chǔ)有屬于此讀取指令所指示的邏輯地址的第三數(shù)據(jù)時(shí),則存儲(chǔ)器管理電路從第二緩沖存儲(chǔ)器中讀取第三數(shù)據(jù)并將所讀取的第三數(shù)據(jù)傳送至主機(jī)系統(tǒng)以響應(yīng)此讀取指令。[0021]在本發(fā)明的一實(shí)施例中,上述第一緩沖存儲(chǔ)器為靜態(tài)隨機(jī)存取存儲(chǔ)器,第二緩沖存儲(chǔ)器為同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器并且第二緩沖存儲(chǔ)器的容量大于第一緩沖存儲(chǔ)器的容量。[0022]本發(fā)明一范例實(shí)施例提出一種數(shù)據(jù)寫入方法,用于存儲(chǔ)器存儲(chǔ)裝置,其中此存儲(chǔ)器存儲(chǔ)裝置具有第一緩沖存儲(chǔ)器、第二緩沖存儲(chǔ)器以及可復(fù)寫式非易失性存儲(chǔ)器模塊,其中第一緩沖存儲(chǔ)器的傳輸帶寬大于第二緩沖存儲(chǔ)器的傳輸帶寬。本數(shù)據(jù)寫入方法包括:從主機(jī)系統(tǒng)中接收寫入指令與對(duì)應(yīng)此寫入指令的起始邏輯地址與第一數(shù)據(jù);并判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)。本數(shù)據(jù)寫入方法也包括:倘若第一數(shù)據(jù)為連續(xù)大數(shù)據(jù)時(shí),將第一數(shù)據(jù)暫存至第一緩沖存儲(chǔ)器的第一數(shù)據(jù)暫存區(qū),且將第一數(shù)據(jù)從第一數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中;以及倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),將第一數(shù)據(jù)暫存至第二緩沖存儲(chǔ)器的第二數(shù)據(jù)暫存區(qū)。[0023]在本發(fā)明的一實(shí)施例中,上述判斷第一數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)的步驟包括:判斷起始邏輯地址是否為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小是否為數(shù)據(jù)存取單位的倍數(shù);倘若起始邏輯地址為數(shù)據(jù)存取單位的倍數(shù)并且第一數(shù)據(jù)的大小為數(shù)據(jù)存取單位的倍數(shù)時(shí),識(shí)別第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù);以及倘若起始邏輯地址不是數(shù)據(jù)存取單位的倍數(shù)或者第一數(shù)據(jù)的大小不是數(shù)據(jù)存取單位的倍數(shù)時(shí),識(shí)別第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)。[0024]在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)寫入方法還包括:從第一數(shù)據(jù)暫存區(qū)中將第一數(shù)據(jù)復(fù)制到第二緩沖存儲(chǔ)器的第二數(shù)據(jù)暫存區(qū)中。[0025]在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)寫入方法還包括:倘若第一數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),從可復(fù)寫式非易失性存儲(chǔ)器模塊的第一實(shí)體程序化單元中將第二數(shù)據(jù)讀取至第二數(shù)據(jù)暫存區(qū)并且將第一數(shù)據(jù)與第二數(shù)據(jù)從第二數(shù)據(jù)暫存區(qū)中寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊的第二實(shí)體程序化單元中。[0026]在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)寫入方法還包括:在將第一數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生程序化錯(cuò)誤;以及倘若發(fā)生程序化錯(cuò)誤時(shí),則從第二緩沖存儲(chǔ)器中讀取第一數(shù)據(jù),并根據(jù)寫入指令將所讀取的第一數(shù)據(jù)重新寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊中。[0027]在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)寫入方法還包括:從主機(jī)系統(tǒng)接收讀取指令;判斷第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于此讀取指令所指示之一邏輯地址的第三數(shù)據(jù);倘若第二緩沖存儲(chǔ)器存儲(chǔ)有屬于此讀取指令所指示之邏輯地址的第三數(shù)據(jù)時(shí),從第二緩沖存儲(chǔ)器中讀取第三數(shù)據(jù)并將所讀取的第三數(shù)據(jù)傳送至主機(jī)系統(tǒng)以響應(yīng)此讀取指令。[0028]基于上述,本發(fā)明范例實(shí)施例的存儲(chǔ)器存儲(chǔ)裝置、存儲(chǔ)器控制電路單元與數(shù)據(jù)寫入方法能夠根據(jù)不同的數(shù)據(jù)類型來使用不同的緩沖機(jī)制來寫入數(shù)據(jù),由此有效率地使用存儲(chǔ)器存儲(chǔ)裝置中暫存存儲(chǔ)器的帶寬與容量并且提升寫入數(shù)據(jù)的速度。[0029]為讓本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合附圖作詳細(xì)說明如下?!緦@綀D】【附圖說明】[0030]圖1是根據(jù)一范例實(shí)施例所示出的主機(jī)系統(tǒng)與存儲(chǔ)器存儲(chǔ)裝置;[0031]圖2是根據(jù)本發(fā)明范例實(shí)施例所示出的電腦、輸入/輸出裝置與存儲(chǔ)器存儲(chǔ)裝置的不意圖;[0032]圖3是根據(jù)本發(fā)明范例實(shí)施例所示出的主機(jī)系統(tǒng)與存儲(chǔ)器存儲(chǔ)裝置的示意圖;[0033]圖4是示出圖1所示的存儲(chǔ)器存儲(chǔ)裝置的概要方塊圖;[0034]圖5是根據(jù)一范例實(shí)施例所示出的存儲(chǔ)器控制電路單元的概要方塊圖;[0035]圖6與圖7是根據(jù)第一范例實(shí)施例所示出的管理實(shí)體抹除單元的示意圖;[0036]圖8是根據(jù)本發(fā)明一范例實(shí)施例所示出的更新一個(gè)邏輯頁面的數(shù)據(jù)的范例;[0037]圖9是根據(jù)本發(fā)明一范例實(shí)施例所示出的更新一個(gè)邏輯頁面的數(shù)據(jù)的另一范例;[0038]圖10是根據(jù)本發(fā)明一范例實(shí)施例所示出的使用一般緩沖寫入機(jī)制來寫入數(shù)據(jù)的示意圖;[0039]圖11是根據(jù)本發(fā)明一范例實(shí)施例所示出的使用加速緩沖寫入機(jī)制來寫入數(shù)據(jù)的示意圖;[0040]圖12是根據(jù)本發(fā)明一范例實(shí)施例所示出的數(shù)據(jù)寫入方法的流程圖。[0041]附圖標(biāo)記說明:[0042]1000:主機(jī)系統(tǒng);[0043]1100:電腦;[0044]1102:微處理器;[0045]1104:隨機(jī)存取存儲(chǔ)器;[0046]1106:輸入/輸出裝置;[0047]1108:系統(tǒng)總線;[0048]1110:數(shù)據(jù)傳輸接口;[0049]12O2:鼠標(biāo);[0050]1204:鍵盤;[0051]1206:顯示器;[0052]1208:打印機(jī);[0053]1212:U盤;[0054]1214:存儲(chǔ)卡;[0055]1216:固態(tài)硬盤;[0056]1310:數(shù)碼相機(jī);[0057]1312:SD卡;[0058]1314:MMC卡;[0059]1316:記憶棒;[0060]1318:CF卡;[0061]1320:嵌入式存儲(chǔ)裝置;[0062]100:存儲(chǔ)器存儲(chǔ)裝置;[0063]102:連接接口單元;[0064]104:存儲(chǔ)器控制電路單元;[0065]106:可復(fù)寫式非易失性存儲(chǔ)器模塊;[0066]108:第二緩沖存儲(chǔ)器;[0067]108a:第二數(shù)據(jù)暫存區(qū);[0068]202:存儲(chǔ)器管理電路;[0069]204:主機(jī)接口;[0070]206:存儲(chǔ)器接口;[0071]208:第一緩沖存儲(chǔ)器;[0072]208a:第一數(shù)據(jù)暫存區(qū);[0073]210:錯(cuò)誤檢查與校正電路;[0074]212:電源管理電路;[0075]410(0)?410(N):實(shí)體抹除單元;[0076]502:系統(tǒng)區(qū);[0077]504:數(shù)據(jù)區(qū);[0078]506:閑置區(qū);[0079]508:取代區(qū);[0080]LBA(O)?LBA01):邏輯單元;[0081]LZ(O)?LZ(M):邏輯區(qū)域;[0082]LP(O):邏輯頁面;[0083]PP(O)、PP(I):實(shí)體頁面;[0084]UD1、UD2、0D1、0D2-1、0D2_2:數(shù)據(jù);[0085]S1201、S1203、S1205、S1207、S1209:數(shù)據(jù)寫入方法的步驟?!揪唧w實(shí)施方式】[0086]一般而言,存儲(chǔ)器存儲(chǔ)裝置(也稱,存儲(chǔ)器存儲(chǔ)系統(tǒng))包括可復(fù)寫式非易失性存儲(chǔ)器模塊與控制器(也稱,控制電路)。通常存儲(chǔ)器存儲(chǔ)裝置是與主機(jī)系統(tǒng)一起使用,以使主機(jī)系統(tǒng)可將數(shù)據(jù)寫入到存儲(chǔ)器存儲(chǔ)裝置或從存儲(chǔ)器存儲(chǔ)裝置中讀取數(shù)據(jù)。[0087]圖1是根據(jù)一范例實(shí)施例所示出的主機(jī)系統(tǒng)與存儲(chǔ)器存儲(chǔ)裝置,圖2是根據(jù)本發(fā)明范例實(shí)施例所示出的電腦、輸入/輸出裝置與存儲(chǔ)器存儲(chǔ)裝置的示意圖。[0088]請(qǐng)參照?qǐng)D1,主機(jī)系統(tǒng)1000—般包括電腦1100與輸入/輸出(input/output,以下簡(jiǎn)稱I/o)裝置1106。電腦1100包括微處理器1102、隨機(jī)存取存儲(chǔ)器(randomaccessmemory,以下簡(jiǎn)稱RAM)1104、系統(tǒng)總線1108與數(shù)據(jù)傳輸接口1110。輸入/輸出裝置1106包括如圖2的鼠標(biāo)1202、鍵盤1204、顯示器1206與打印機(jī)1208。必須了解的是,圖2所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可還包括其他裝置。[0089]在本發(fā)明實(shí)施例中,存儲(chǔ)器存儲(chǔ)裝置100是通過數(shù)據(jù)傳輸接口1110與主機(jī)系統(tǒng)1000的其他元件電性連接。通過微處理器1102、隨機(jī)存取存儲(chǔ)器1104與輸入/輸出裝置1106的操作可將數(shù)據(jù)寫入到存儲(chǔ)器存儲(chǔ)裝置100或從存儲(chǔ)器存儲(chǔ)裝置100中讀取數(shù)據(jù)。例如,存儲(chǔ)器存儲(chǔ)裝置100可以是如圖2所示的U盤1212、存儲(chǔ)卡1214或固態(tài)硬盤(SolidStateDrive,以下簡(jiǎn)稱SSD)1216等的可復(fù)寫式非易失性存儲(chǔ)器存儲(chǔ)裝置。[0090]一般而言,主機(jī)系統(tǒng)1000為可實(shí)質(zhì)地與存儲(chǔ)器存儲(chǔ)裝置100配合以存儲(chǔ)數(shù)據(jù)的任意系統(tǒng)。雖然在本范例實(shí)施例中,主機(jī)系統(tǒng)1000是以電腦系統(tǒng)來作說明,然而,在本發(fā)明另一范例實(shí)施例中主機(jī)系統(tǒng)1000可以是數(shù)碼相機(jī)、攝像機(jī)、通信裝置、音頻播放器或視頻播放器等系統(tǒng)。例如,圖3是根據(jù)本發(fā)明范例實(shí)施例所示出的主機(jī)系統(tǒng)與存儲(chǔ)器存儲(chǔ)裝置的示意圖,在主機(jī)系統(tǒng)為數(shù)碼相機(jī)(攝像機(jī))1310時(shí),可復(fù)寫式非易失性存儲(chǔ)器存儲(chǔ)裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memorystick)1316、CF卡1318或嵌入式存儲(chǔ)裝置1320(如圖3所示)。嵌入式存儲(chǔ)裝置1320包括嵌入式多媒體卡(EmbeddedMMC,以下簡(jiǎn)稱eMMC)。值得一提的是,嵌入式多媒體卡是直接電性連接于主機(jī)系統(tǒng)的基板上。[0091]圖4是示出圖1所示的存儲(chǔ)器存儲(chǔ)裝置的概要方塊圖。[0092]請(qǐng)參照?qǐng)D4,存儲(chǔ)器存儲(chǔ)裝置100包括連接接口單元102、存儲(chǔ)器控制電路單元104、可復(fù)寫式非易失性存儲(chǔ)器模塊106與第二緩沖存儲(chǔ)器108。[0093]在本實(shí)施例中,連接接口單元102是兼容于串行高級(jí)技術(shù)附件(SerialAdvancedTechnologyAttachment,以下簡(jiǎn)稱SATA)標(biāo)準(zhǔn)。然而,必須了解的是,本發(fā)明不限于此,連接接口單元102也可以是符合并行高級(jí)技術(shù)附件(ParellelAdvancedTechnologyAttachment,以下簡(jiǎn)稱PATA)標(biāo)準(zhǔn)、電氣和電子工程師協(xié)會(huì)(InstituteofElectricalandElectronicEngineers,以下簡(jiǎn)稱IEEE)1394標(biāo)準(zhǔn)、高速外設(shè)互連接口(PeripheralComponentInterconnectExpress,以下簡(jiǎn)稱PCIExpress)標(biāo)準(zhǔn)、通用串行總線(UniversalSerialBus,以下簡(jiǎn)稱USB)標(biāo)準(zhǔn)、超高速一代(UltraHighSpeed-1,以下簡(jiǎn)稱UHS-1)接口標(biāo)準(zhǔn)、超高速二代(UltraHighSpeed-ΙΙ,以下簡(jiǎn)稱UHS-1I)接口標(biāo)準(zhǔn)、安全數(shù)字(SecureDigital,以下簡(jiǎn)稱SD)接口標(biāo)準(zhǔn)、存儲(chǔ)棒(MemoryStick,以下簡(jiǎn)稱MS)接口標(biāo)準(zhǔn)、多媒體存儲(chǔ)卡(MultiMediaCard,以下簡(jiǎn)稱MMC)接口標(biāo)準(zhǔn)、小型快閃(CompactFlash,以下簡(jiǎn)稱CF)接口標(biāo)準(zhǔn)、集成式驅(qū)動(dòng)電子接口(IntegratedDeviceElectronics,以下簡(jiǎn)稱IDE)標(biāo)準(zhǔn)或其他適合的標(biāo)準(zhǔn)。在本范例實(shí)施例中,連接接口單元可與存儲(chǔ)器控制電路單元封裝在一個(gè)芯片中,或布設(shè)于一包含存儲(chǔ)器控制電路單元的芯片外。[0094]存儲(chǔ)器控制電路單元104用以執(zhí)行以硬件形式或固件形式實(shí)作的多個(gè)邏輯門或控制指令,并且根據(jù)主機(jī)系統(tǒng)1000的指令在可復(fù)寫式非易失性存儲(chǔ)器模塊106中進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。[0095]可復(fù)寫式非易失性存儲(chǔ)器模塊106是電性連接至存儲(chǔ)器控制電路單元104,并且用以存儲(chǔ)主機(jī)系統(tǒng)1000所寫入的數(shù)據(jù)??蓮?fù)寫式非易失性存儲(chǔ)器模塊106具有實(shí)體抹除單元410(O)?410(N)。例如,實(shí)體抹除單元410(O)?410(N)可屬于同一個(gè)存儲(chǔ)器晶?;蛘邔儆诓煌拇鎯?chǔ)器晶粒。每一實(shí)體抹除單元分別具有復(fù)數(shù)個(gè)實(shí)體程序化單元,其中屬于同一個(gè)實(shí)體抹除單元的實(shí)體程序化單元可被獨(dú)立地寫入且被同時(shí)地抹除。然而,必須了解的是,本發(fā)明不限于此,每一實(shí)體抹除單元可由64個(gè)實(shí)體程序化單元、256個(gè)實(shí)體程序化單元或其他任意個(gè)實(shí)體程序化單元所組成。[0096]更詳細(xì)來說,實(shí)體抹除單元為抹除的最小單位。也即,每一實(shí)體抹除單元含有最小數(shù)目的一并被抹除的記憶胞。實(shí)體程序化單元為程序化的最小單元。即,實(shí)體程序化單元為寫入數(shù)據(jù)的最小單元。每一實(shí)體程序化單元通常包括數(shù)據(jù)比特區(qū)與冗余比特區(qū)。數(shù)據(jù)比特區(qū)包含多個(gè)實(shí)體存取地址用以存儲(chǔ)使用者的數(shù)據(jù),而冗余比特區(qū)用以存儲(chǔ)系統(tǒng)的數(shù)據(jù)(例如,控制資訊與錯(cuò)誤還正碼)。在本范例實(shí)施例中,每一個(gè)實(shí)體程序化單元的數(shù)據(jù)比特區(qū)中會(huì)包含8個(gè)實(shí)體存取地址,且一個(gè)實(shí)體存取地址的大小為512字節(jié)(byte)。然而,在其他范例實(shí)施例中,數(shù)據(jù)比特區(qū)中也可包含數(shù)目更多或更少的實(shí)體存取地址,本發(fā)明并不限制實(shí)體存取地址的大小以及個(gè)數(shù)。例如,在一范例實(shí)施例中,實(shí)體抹除單元為實(shí)體區(qū)塊,并且實(shí)體程序化單元為實(shí)體頁面或?qū)嶓w扇區(qū),但本發(fā)明不以此為限。[0097]在本范例實(shí)施例中,可復(fù)寫式非易失性存儲(chǔ)器模塊106為多階記憶胞(MultiLevelCell,以下簡(jiǎn)稱MLC)NAND型快閃存儲(chǔ)器模塊(即,一個(gè)記憶胞中可存儲(chǔ)2個(gè)比特?cái)?shù)據(jù)的快閃存儲(chǔ)器模塊)。然而,本發(fā)明不限于此,可復(fù)寫式非易失性存儲(chǔ)器模塊106也可是單階記憶胞(SingleLevelCell,以下簡(jiǎn)稱SLC)NAND型快閃存儲(chǔ)器模塊(即,一個(gè)記憶胞中可存儲(chǔ)I個(gè)比特?cái)?shù)據(jù)的快閃存儲(chǔ)器模塊)、復(fù)數(shù)階記憶胞(TrinaryLevelCell,以下簡(jiǎn)稱TLC)NAND型快閃存儲(chǔ)器模塊(即,一個(gè)記憶胞中可存儲(chǔ)3個(gè)比特?cái)?shù)據(jù)的快閃存儲(chǔ)器模塊)、其他快閃存儲(chǔ)器模塊或其他具有相同特性的存儲(chǔ)器模塊。[0098]第二緩沖存儲(chǔ)器108是配置在存儲(chǔ)器控制電路單元的外部且電性連接至存儲(chǔ)器控制電路單元104。第二緩沖存儲(chǔ)器108用以緩沖存儲(chǔ)器控制電路單元104所執(zhí)行的指令或數(shù)據(jù)。例如,第二緩沖存儲(chǔ)器108具有第二數(shù)據(jù)暫存區(qū)108a是用以備份接收自主機(jī)系統(tǒng)1000的寫入數(shù)據(jù)。本范例實(shí)施例中,第二緩沖存儲(chǔ)器108為同步動(dòng)態(tài)緩沖存儲(chǔ)器(synchronousdynamicrandomaccessmemory,以下簡(jiǎn)稱SDRAM)并且第二緩沖存儲(chǔ)器108的傳輸帶寬為400M比特/秒。然而,本發(fā)明不限于此,第二緩沖存儲(chǔ)器108也可以是動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dynamicrandomaccessmemory,以下簡(jiǎn)稱DRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(staticrandomaccessmemory,以下簡(jiǎn)稱SRAM)、磁電阻式隨機(jī)存取存儲(chǔ)器(MagnetoresistiveRandomAccessMemory,以下簡(jiǎn)稱MRAM)、快取隨機(jī)存取存儲(chǔ)器(CacheRAM)、同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(synchronousdynamicrandomaccessmemory,以下簡(jiǎn)稱SDRAM)、視頻隨機(jī)存取存儲(chǔ)器(VideoRAM,以下簡(jiǎn)稱VRAM)、異或門快閃存儲(chǔ)器(NORFlash)、嵌入式動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(embeddedDRAM,以下簡(jiǎn)稱eDRAM)或其他的存儲(chǔ)器。[0099]圖5是根據(jù)一范例實(shí)施例所示出的存儲(chǔ)器控制電路單元的概要方塊圖。[0100]請(qǐng)參照?qǐng)D5,存儲(chǔ)器控制電路單元104包括存儲(chǔ)器管理電路202、主機(jī)接口204、存儲(chǔ)器接口206、第一緩沖存儲(chǔ)器208、錯(cuò)誤檢查與校正電路210與電源管理電路212。[0101]存儲(chǔ)器管理電路202用以控制存儲(chǔ)器控制電路單元104的整體操作。具體來說,存儲(chǔ)器管理電路202具有多個(gè)控制指令,并且在存儲(chǔ)器存儲(chǔ)裝置100操作時(shí),此些控制指令會(huì)被執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。[0102]在本范例實(shí)施例中,存儲(chǔ)器管理電路202的控制指令是以固件形式來實(shí)作。例如,存儲(chǔ)器管理電路202具有微處理器單元(未示出)與只讀存儲(chǔ)器(未示出),并且此些控制指令是被燒錄至此只讀存儲(chǔ)器中。當(dāng)存儲(chǔ)器存儲(chǔ)裝置100操作時(shí),此些控制指令會(huì)由微處理器單元來執(zhí)行以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。[0103]在本發(fā)明另一范例實(shí)施例中,存儲(chǔ)器管理電路202的控制指令也可以程序碼形式存儲(chǔ)于可復(fù)寫式非易失性存儲(chǔ)器模塊106的特定區(qū)域(例如,存儲(chǔ)器模塊中專用于存放系統(tǒng)數(shù)據(jù)的系統(tǒng)區(qū))中。此外,存儲(chǔ)器管理電路202具有微處理器單元(未示出)、只讀存儲(chǔ)器(未示出)及隨機(jī)存取存儲(chǔ)器(未示出)。特別是,此只讀存儲(chǔ)器具有驅(qū)動(dòng)碼,并且當(dāng)存儲(chǔ)器控制電路單元104被使能時(shí),微處理器單元會(huì)先執(zhí)行此驅(qū)動(dòng)碼段來將存儲(chǔ)于可復(fù)寫式非易失性存儲(chǔ)器模塊106中的控制指令載入至存儲(chǔ)器管理電路202的隨機(jī)存取存儲(chǔ)器中。之后,微處理器單元會(huì)運(yùn)轉(zhuǎn)此些控制指令以進(jìn)行數(shù)據(jù)的寫入、讀取與抹除等操作。[0104]此外,在本發(fā)明另一范例實(shí)施例中,存儲(chǔ)器管理電路202的控制指令也可以一硬件形式來實(shí)作。例如,存儲(chǔ)器管理電路202包括微控制器、記憶胞管理電路、存儲(chǔ)器寫入電路、存儲(chǔ)器讀取電路、存儲(chǔ)器抹除電路與數(shù)據(jù)處理電路。記憶胞管理電路、存儲(chǔ)器寫入電路、存儲(chǔ)器讀取電路、存儲(chǔ)器抹除電路與數(shù)據(jù)處理電路是電性連接至微控制器。其中,記憶胞管理電路用以管理可復(fù)寫式非易失性存儲(chǔ)器模塊106的實(shí)體抹除單元;存儲(chǔ)器寫入電路用以對(duì)可復(fù)寫式非易失性存儲(chǔ)器模塊106下達(dá)寫入指令以將數(shù)據(jù)寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中;存儲(chǔ)器讀取電路用以對(duì)可復(fù)寫式非易失性存儲(chǔ)器模塊106下達(dá)讀取指令以從可復(fù)寫式非易失性存儲(chǔ)器模塊106中讀取數(shù)據(jù);存儲(chǔ)器抹除電路用以對(duì)可復(fù)寫式非易失性存儲(chǔ)器模塊106下達(dá)抹除指令以將數(shù)據(jù)從可復(fù)寫式非易失性存儲(chǔ)器模塊106中抹除;而數(shù)據(jù)處理電路用以處理欲寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106的數(shù)據(jù)以及從可復(fù)寫式非易失性存儲(chǔ)器模塊106中讀取的數(shù)據(jù)。[0105]主機(jī)接口204是電性連接至存儲(chǔ)器管理電路202并且用以接收與識(shí)別主機(jī)系統(tǒng)1000所傳送的指令與數(shù)據(jù)。也就是說,主機(jī)系統(tǒng)1000所傳送的指令與數(shù)據(jù)會(huì)通過主機(jī)接口204來傳送至存儲(chǔ)器管理電路202。在本范例實(shí)施例中,主機(jī)接口204是兼容于SATA標(biāo)準(zhǔn)。然而,必須了解的是本發(fā)明不限于此,主機(jī)接口204也可以是兼容于PATA標(biāo)準(zhǔn)、IEEE1394標(biāo)準(zhǔn)、PCIExpress標(biāo)準(zhǔn)、USB標(biāo)準(zhǔn)、UHS-1接口標(biāo)準(zhǔn)、UHS-1I接口標(biāo)準(zhǔn)、SD標(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)。[0106]存儲(chǔ)器接口206是電性連接至存儲(chǔ)器管理電路202并且用以存取可復(fù)寫式非易失性存儲(chǔ)器模塊106。也就是說,欲寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106的數(shù)據(jù)會(huì)經(jīng)由存儲(chǔ)器接口206轉(zhuǎn)換為可復(fù)寫式非易失性存儲(chǔ)器模塊106所能接受的格式。[0107]第一緩沖存儲(chǔ)器208是電性連接至存儲(chǔ)器管理電路202并且用以緩沖存儲(chǔ)器管理電路202所執(zhí)行的指令或是數(shù)據(jù)。具體來說,第一緩沖存儲(chǔ)器208包括第一數(shù)據(jù)暫存區(qū)208a,其用以暫存主機(jī)系統(tǒng)1000所寫入或主機(jī)系統(tǒng)1000所讀取的數(shù)據(jù)。然而,必須了解的是,除了第一數(shù)據(jù)暫存區(qū)208a,第一緩沖存儲(chǔ)器208可包括其他區(qū)域(未示出),用以暫存其他數(shù)據(jù)。例如,存儲(chǔ)器管理電路202可將可復(fù)寫式非易失性存儲(chǔ)器模塊106中虛擬地址與實(shí)體地址的映射表(mappingtable)存儲(chǔ)在第一緩沖存儲(chǔ)器208的其他區(qū)域中。在本范例實(shí)施例中,第一緩沖存儲(chǔ)器208的傳輸帶寬大于第二緩沖存儲(chǔ)器108的傳輸帶寬。例如,第一緩沖存儲(chǔ)器208為靜態(tài)隨機(jī)存取存儲(chǔ)器(staticrandomaccessmemory,以下簡(jiǎn)稱SRAM)。然而,第一緩沖存儲(chǔ)器208也可以是MRAM、CacheRAM、SDRAM、VRAM、NORFlash或是eDRAM。并且第一緩沖存儲(chǔ)器208的傳輸帶寬為800M比特/秒。[0108]電源管理電路210是電性連接至存儲(chǔ)器管理電路202并且用以控制存儲(chǔ)器存儲(chǔ)裝置100的電源。[0109]錯(cuò)誤檢查與校正電路212是電性連接至存儲(chǔ)器管理電路202并且用以執(zhí)行錯(cuò)誤檢查與校正程序以確保數(shù)據(jù)的正確性。具體來說,當(dāng)存儲(chǔ)器管理電路202從主機(jī)系統(tǒng)1000中接收到寫入指令時(shí),錯(cuò)誤檢查與校正電路212會(huì)為對(duì)應(yīng)此寫入指令的數(shù)據(jù)產(chǎn)生對(duì)應(yīng)的錯(cuò)誤檢查與校正碼(ErrorCheckingandCorrectingCode,以下簡(jiǎn)稱ECCCode),并且存儲(chǔ)器管理電路202會(huì)將對(duì)應(yīng)此寫入指令的數(shù)據(jù)與對(duì)應(yīng)的錯(cuò)誤檢查與校正碼寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中。之后,當(dāng)存儲(chǔ)器管理電路202從可復(fù)寫式非易失性存儲(chǔ)器模塊106中讀取數(shù)據(jù)時(shí)會(huì)同時(shí)讀取此數(shù)據(jù)對(duì)應(yīng)的錯(cuò)誤檢查與校正碼,并且錯(cuò)誤檢查與校正電路212會(huì)依據(jù)此錯(cuò)誤檢查與校正碼對(duì)所讀取的數(shù)據(jù)執(zhí)行錯(cuò)誤檢查與校正程序。[0110]圖6與圖7是根據(jù)第一范例實(shí)施例所示出的管理實(shí)體抹除單元的示意圖。[0111]請(qǐng)參照?qǐng)D6,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將實(shí)體抹除單元410(0)?410(N)邏輯地分組為數(shù)據(jù)區(qū)502、閑置區(qū)504、系統(tǒng)區(qū)506與取代區(qū)508。[0112]邏輯上屬于數(shù)據(jù)區(qū)502與閑置區(qū)504的實(shí)體抹除單元是用以存儲(chǔ)來自于主機(jī)系統(tǒng)1000的數(shù)據(jù)。具體來說,數(shù)據(jù)區(qū)502的實(shí)體抹除單元是被視為已存儲(chǔ)數(shù)據(jù)的實(shí)體抹除單元,而閑置區(qū)504的實(shí)體抹除單元是用以替換數(shù)據(jù)區(qū)502的實(shí)體抹除單元。也就是說,當(dāng)從主機(jī)系統(tǒng)1000接收到寫入指令與欲寫入的數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)從閑置區(qū)504中提取實(shí)體抹除單元,并且將數(shù)據(jù)寫入到所提取的實(shí)體抹除單元中,以替換數(shù)據(jù)區(qū)502的實(shí)體抹除單元。[0113]邏輯上屬于系統(tǒng)區(qū)506的實(shí)體抹除單元是用以記錄系統(tǒng)數(shù)據(jù)。例如,系統(tǒng)數(shù)據(jù)包括關(guān)于可復(fù)寫式非易失性存儲(chǔ)器模塊的制造商與型號(hào)、可復(fù)寫式非易失性存儲(chǔ)器模塊的實(shí)體抹除單元數(shù)、每一實(shí)體抹除單元的實(shí)體程序化單元數(shù)等。[0114]邏輯上屬于取代區(qū)508中的實(shí)體抹除單元是用于壞實(shí)體抹除單元取代程序,以取代損壞的實(shí)體抹除單元。具體來說,倘若取代區(qū)508中仍存有正常的實(shí)體抹除單元并且數(shù)據(jù)區(qū)502的實(shí)體抹除單元損壞時(shí),存儲(chǔ)器管理電路202會(huì)從取代區(qū)508中提取正常的實(shí)體抹除單元來更換損壞的實(shí)體抹除單元。[0115]特別是,數(shù)據(jù)區(qū)502、閑置區(qū)504、系統(tǒng)區(qū)506與取代區(qū)508的實(shí)體抹除單元的數(shù)量會(huì)依據(jù)不同的存儲(chǔ)器規(guī)格而有所不同。此外,必須了解的是,在存儲(chǔ)器存儲(chǔ)裝置100的操作中,實(shí)體抹除單元關(guān)聯(lián)至數(shù)據(jù)區(qū)502、閑置區(qū)504、系統(tǒng)區(qū)506與取代區(qū)508的分組關(guān)系會(huì)動(dòng)態(tài)地變動(dòng)。例如,當(dāng)閑置區(qū)504中的實(shí)體抹除單元損壞而被取代區(qū)508的實(shí)體抹除單元取代時(shí),則原本取代區(qū)508的實(shí)體抹除單元會(huì)被關(guān)聯(lián)至閑置區(qū)504。[0116]請(qǐng)參照?qǐng)D7,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)配置邏輯單元LBA(O)?LBA(H)以映射數(shù)據(jù)區(qū)502的實(shí)體抹除單元,其中每一邏輯單元具有多個(gè)邏輯頁面以映射對(duì)應(yīng)的實(shí)體抹除單元的實(shí)體程序化單元。并且,當(dāng)主機(jī)系統(tǒng)100欲寫入數(shù)據(jù)至邏輯單元或更新存儲(chǔ)于邏輯單元中的數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)從閑置區(qū)504中提取一個(gè)實(shí)體抹除單元來寫入數(shù)據(jù),以輪替數(shù)據(jù)區(qū)502的實(shí)體抹除單元。[0117]為了識(shí)別每個(gè)邏輯頁面的數(shù)據(jù)被存儲(chǔ)在那個(gè)實(shí)體程序化單元,在本范例實(shí)施例中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)記錄邏輯頁面與實(shí)體程序化單元之間的映射,其中一個(gè)邏輯頁面的大小是相同于一個(gè)實(shí)體程序化單元的大小。在此,一個(gè)實(shí)體程序化單元的大小也稱為一個(gè)數(shù)據(jù)存取單位。并且,當(dāng)主機(jī)系統(tǒng)1000欲在邏輯頁面中存取數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)確認(rèn)此邏輯頁面所屬的邏輯單元,并且在此邏輯頁面所映射的實(shí)體程序化單元中來存取數(shù)據(jù)。[0118]圖8是根據(jù)本發(fā)明一范例實(shí)施例所示出的更新一個(gè)邏輯頁面的數(shù)據(jù)的范例。[0119]請(qǐng)參照?qǐng)D8,倘若主機(jī)系統(tǒng)1000下達(dá)寫入指令以從邏輯頁面LP(O)的起始地址開始寫入數(shù)據(jù)UDl且數(shù)據(jù)UDl的大小相同一個(gè)實(shí)體程序化單元時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)確認(rèn)邏輯頁面LP(O)所映射的實(shí)體程序化單元ΡΡ(0),選擇一個(gè)空的實(shí)體程序化單元PP(I)來替換原先映射邏輯頁面LP(O)的實(shí)體程序化單元ΡΡ(0),將數(shù)據(jù)UDl寫入至所選擇的實(shí)體程序化單元PP(I)并且將此邏輯頁面LP(O)重新映射至實(shí)體程序化單元PP(I)。然后,存儲(chǔ)在原始邏輯頁面LP(O)的映射實(shí)體程序化單元PP(O)上的數(shù)據(jù)ODl為被標(biāo)記為無效數(shù)據(jù)。[0120]圖9是根據(jù)本發(fā)明一范例實(shí)施例所示出的更新一個(gè)邏輯頁面的數(shù)據(jù)的另一范例。[0121]請(qǐng)參照?qǐng)D9,倘若主機(jī)系統(tǒng)1000下達(dá)寫入指令以從邏輯頁面LP(O)的起始地址開始寫入數(shù)據(jù)UD2且數(shù)據(jù)UD2的大小為一個(gè)實(shí)體程序化單元的大小的一半時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)確認(rèn)邏輯頁面LP(O)所映射的實(shí)體程序化單元ΡΡ(0),選擇一個(gè)空的實(shí)體程序化單元來替換原先映射邏輯頁面LP(O)的實(shí)體程序化單元PP(O),從原先映射邏輯頁面LP(O)的實(shí)體程序化單元PP(O)中讀取未被更新的數(shù)據(jù)0D2-2(S卩,舊有效數(shù)據(jù)),將數(shù)據(jù)UD2與舊有效數(shù)據(jù)0D2-2寫入至所選擇的實(shí)體程序化單元PP(I)并且將邏輯頁面LP(O)重新映射至實(shí)體程序化單元PP(I)。然后,存儲(chǔ)在原始邏輯頁面LP(O)的映射實(shí)體程序化單元PP(O)上的數(shù)據(jù)0D2-1與0D2-2會(huì)被標(biāo)記為無效數(shù)據(jù)。[0122]由于存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)記錄邏輯頁面與實(shí)體程序化單元的映射關(guān)系,因此,之后,當(dāng)主機(jī)系統(tǒng)1000下達(dá)讀取邏輯頁面LP(O)上的數(shù)據(jù)的指令時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)可根據(jù)所記錄的映射從實(shí)體程序化單元PP(I)中讀取更新后的數(shù)據(jù)。[0123]在本范例實(shí)施例中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)在可復(fù)寫式非易失性存儲(chǔ)器模塊106中存儲(chǔ)邏輯-實(shí)體地址映射表來記錄每一邏輯單元所映射的實(shí)體抹除單元,并且當(dāng)欲存取數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將邏輯-實(shí)體地址映射表載入至緩沖存儲(chǔ)器208來維護(hù)。[0124]值得一提的是,由于緩沖存儲(chǔ)器208的容量有限無法存儲(chǔ)記錄所有邏輯單元之映射關(guān)系的映射表,因此,在本范例實(shí)施例中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將邏輯單元LBA(O)?LBA(H)分組為多個(gè)邏輯區(qū)域LZ(O)?LZ(M),并且為每一邏輯區(qū)域配置一個(gè)邏輯-實(shí)體地址映射表。特別是,當(dāng)存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)欲更新某個(gè)邏輯單元的映射時(shí),對(duì)應(yīng)此邏輯單元所屬的邏輯區(qū)域的邏輯-實(shí)體地址映射表會(huì)被載入至緩沖存儲(chǔ)器208來被更新。[0125]在本范例實(shí)施例中,當(dāng)主機(jī)系統(tǒng)1000下達(dá)寫入指令與對(duì)應(yīng)的寫入數(shù)據(jù)至存儲(chǔ)器存儲(chǔ)裝置100時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)先將數(shù)據(jù)暫存至緩沖存儲(chǔ)器。特別是,由于存儲(chǔ)器存儲(chǔ)裝置100配置有具有不同容量與帶寬的第一緩沖存儲(chǔ)器208與第二緩沖存儲(chǔ)器108,因此,在本范例實(shí)施例中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)根據(jù)所寫入的數(shù)據(jù)的態(tài)樣來使用一般緩沖寫入機(jī)制與加速緩沖寫入機(jī)制來寫入數(shù)據(jù)。[0126]圖10是根據(jù)本發(fā)明一范例實(shí)施例所示出的使用一般緩沖寫入機(jī)制來寫入數(shù)據(jù)的示意圖。[0127]請(qǐng)參照?qǐng)D10,當(dāng)從主機(jī)系統(tǒng)1000接收到寫入指令與對(duì)應(yīng)的寫入數(shù)據(jù)UD2時(shí),此數(shù)據(jù)UD2會(huì)被暫存至第二緩沖存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a。例如,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)通過與第二緩沖存儲(chǔ)器108連接的總線直接將數(shù)據(jù)UD2傳輸至第二緩沖存儲(chǔ)器108或者通過與第一緩沖存儲(chǔ)器208連接的總線經(jīng)由第一緩沖存儲(chǔ)器208傳輸至第二緩沖存儲(chǔ)器108。之后,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)再?gòu)牡诙彌_存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a中將數(shù)據(jù)UD2傳送至可復(fù)寫式非易失性存儲(chǔ)器模塊106的實(shí)體程序化單元中。例如,數(shù)據(jù)0D2-2會(huì)先被讀取至第二緩沖存儲(chǔ)器108,然后數(shù)據(jù)UD2與數(shù)據(jù)0D2-2會(huì)被程序化至一個(gè)實(shí)體程序化單元PP(I)。[0128]也就是說,在一般緩沖寫入機(jī)制中,第二緩沖存儲(chǔ)器108會(huì)同時(shí)被用來作為接收寫入數(shù)據(jù)以及將寫入數(shù)據(jù)傳送至可復(fù)寫式非易失性存儲(chǔ)器模塊106的緩沖區(qū)域。特別是,在一般緩沖寫入機(jī)制中,由于第二暫存存儲(chǔ)器108的傳輸帶寬會(huì)被寫入存取與讀取存取來共享,因此,通過一般緩沖寫入機(jī)制來寫入數(shù)據(jù)的速度較慢。[0129]圖11是根據(jù)本發(fā)明一范例實(shí)施例所示出的使用加速緩沖寫入機(jī)制來寫入數(shù)據(jù)的示意圖。[0130]請(qǐng)參照?qǐng)D11,為了增加存儲(chǔ)器存儲(chǔ)裝置100的寫入速度,在加速緩沖寫入機(jī)制中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)是將傳輸帶寬較大的第一緩沖存儲(chǔ)器208作為暫存寫入數(shù)據(jù)的區(qū)域,并將傳輸帶寬較小的第二緩沖存儲(chǔ)器108作為備份寫入數(shù)據(jù)的區(qū)域。[0131]例如,當(dāng)存儲(chǔ)器存儲(chǔ)裝置100從主機(jī)系統(tǒng)1000中接收到寫入指令及對(duì)應(yīng)此寫入指令的寫入數(shù)據(jù)UDl時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將寫入數(shù)據(jù)UDl暫存至第一緩沖存儲(chǔ)器208的第一數(shù)據(jù)暫存區(qū)208a。由于第一緩沖存儲(chǔ)器208的傳輸帶寬較大,因此可滿足主機(jī)系統(tǒng)1000的寫入需求。也就是說,存儲(chǔ)器管理電路202將數(shù)據(jù)UDl暫存在第一數(shù)據(jù)暫存區(qū)208a的速度會(huì)不低于主機(jī)系統(tǒng)1000傳送數(shù)據(jù)UDl至存儲(chǔ)器管理電路202的速度,由此可即時(shí)地從主機(jī)系統(tǒng)1000接收數(shù)據(jù)并且暫存至第一緩沖存儲(chǔ)器208。[0132]在加速緩沖寫入機(jī)制中,第一緩沖存儲(chǔ)器208的傳輸帶寬可同時(shí)被寫入存取與讀取存取來分享。例如,當(dāng)一數(shù)據(jù)被寫入至第一緩沖存儲(chǔ)器208的同時(shí),其他數(shù)據(jù)可從第一緩沖存儲(chǔ)器208中被讀取出并被傳輸至可復(fù)寫式非易失性存儲(chǔ)器模塊106。例如,當(dāng)一數(shù)據(jù)被寫入至第一緩沖存儲(chǔ)器208的同時(shí),其他數(shù)據(jù)也可從第一緩沖存儲(chǔ)器208中被讀取出并且被傳送至第二緩沖存儲(chǔ)器108。[0133]接著,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)從第一數(shù)據(jù)暫存區(qū)208a中讀取數(shù)據(jù)UDl,并根據(jù)上述寫入指令將數(shù)據(jù)UDl寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中。[0134]另一方面,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)也會(huì)從第一數(shù)據(jù)暫存區(qū)208a中讀取數(shù)據(jù)m)l,并將數(shù)據(jù)UDl復(fù)制到第二緩沖存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a中。值得注意的是,在加速緩沖寫入機(jī)制中,第二緩沖存儲(chǔ)器108的傳輸帶寬可全部都被用來寫入數(shù)據(jù)UDl。也就是說,對(duì)于一份數(shù)據(jù)UDl來說,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)只需要對(duì)第二緩沖存儲(chǔ)器108做寫入的動(dòng)作,而不做讀取的動(dòng)作。另一方面,存儲(chǔ)器管理電路202也可以在將數(shù)據(jù)UDl寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106的同時(shí),將數(shù)據(jù)UDl復(fù)制到第二緩沖存儲(chǔ)器108中。[0135]基此,數(shù)據(jù)UDl便被備份在第二緩沖存儲(chǔ)器108中,并且存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)就可再?gòu)闹鳈C(jī)系統(tǒng)1000下一個(gè)寫入指令并且將新的寫入數(shù)據(jù)暫存至第一緩沖存儲(chǔ)器208。特別是,數(shù)據(jù)UDl已被備份至第二緩沖存儲(chǔ)器108中,因此,在第一緩沖存儲(chǔ)器208中,既使原先存儲(chǔ)數(shù)據(jù)UDl的地址被用來暫存新的寫入數(shù)據(jù),也不會(huì)影響存儲(chǔ)器存儲(chǔ)裝置100的操作。[0136]例如,存儲(chǔ)器管理電路202會(huì)在將數(shù)據(jù)UDl寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中之后,判斷是否發(fā)生程序化錯(cuò)誤。若發(fā)生程序化錯(cuò)誤時(shí),存儲(chǔ)器管理電路202會(huì)從第二緩沖存儲(chǔ)器108中讀取數(shù)據(jù)UDl,并根據(jù)寫入指令將數(shù)據(jù)UDl重新寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中。也就是說,當(dāng)發(fā)生程序化錯(cuò)誤而未成功地將寫入數(shù)據(jù)302寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106時(shí),既使在第一緩沖存儲(chǔ)器208中數(shù)據(jù)UDl已被覆寫成新的數(shù)據(jù),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)仍可將數(shù)據(jù)UDl從第二緩沖存儲(chǔ)器108中重新寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106中。基此,存儲(chǔ)器存儲(chǔ)裝置100能夠在利用帶寬較大的第一緩沖存儲(chǔ)器208來提升寫入速度的同時(shí),確保數(shù)據(jù)UDl能成功的寫入至可復(fù)寫式非易失性存儲(chǔ)器模塊106。在本范例實(shí)施例中,當(dāng)存儲(chǔ)器管理電路202從第二緩沖存儲(chǔ)器108中讀取數(shù)據(jù)UDl時(shí),第二緩沖存儲(chǔ)器108的傳輸帶寬可全部都被用來傳輸數(shù)據(jù)UD1。也就是說,在加速緩沖寫入機(jī)制中,第二緩沖存儲(chǔ)器108的全部傳輸帶寬會(huì)被用來執(zhí)行一個(gè)單一操作程序(例如,寫入存取或讀取存取)。例如,第二緩沖存儲(chǔ)器108的傳輸帶寬全部被用來將數(shù)據(jù)寫入至第二緩沖存儲(chǔ)器108?;蛘?,第二緩沖存儲(chǔ)器的傳輸帶寬全部被用來將數(shù)據(jù)從第二緩沖存儲(chǔ)器108讀取出。[0137]在本范例實(shí)施例中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)在接收到來自于主機(jī)系統(tǒng)1000的寫入指令與對(duì)應(yīng)的數(shù)據(jù)時(shí),判斷此數(shù)據(jù)是否為連續(xù)大數(shù)據(jù)。并且,倘若此數(shù)據(jù)為連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)使用上述加速緩沖寫入機(jī)制來寫入數(shù)據(jù),并且倘若此數(shù)據(jù)不是連續(xù)大數(shù)據(jù)時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)使用上述一般緩沖寫入機(jī)制來寫入數(shù)據(jù)。[0138]具體來說,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)判斷寫入指令所指示開始寫入數(shù)據(jù)的地址(即,起始邏輯地址)是否為數(shù)據(jù)存取單位的倍數(shù)且寫入指令所指示的寫入數(shù)據(jù)的大小是否為數(shù)據(jù)存取單位的倍數(shù)。[0139]倘若寫入指令所指示的起始邏輯地址為數(shù)據(jù)存取單位的倍數(shù)且寫入數(shù)據(jù)的大小為數(shù)據(jù)存取單位的倍數(shù)時(shí),則表示所欲寫入的數(shù)據(jù)是更新邏輯頁面內(nèi)的所有數(shù)據(jù)(如圖8所示)。此時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)采用加速緩沖寫入機(jī)制。更詳細(xì)來說,由于實(shí)體程序化單元內(nèi)的數(shù)據(jù)是全部更新,無需讀取舊有效數(shù)據(jù),因此,通過加速緩沖寫入機(jī)制可有效地利用第一緩沖存儲(chǔ)器208的大帶寬來提升寫入速度。[0140]倘若寫入指令所指示的起始邏輯地址不是數(shù)據(jù)存取單位的倍數(shù)且寫入數(shù)據(jù)的大小不是數(shù)據(jù)存取單位的倍數(shù)時(shí),則表示至少有一個(gè)邏輯頁面內(nèi)的數(shù)據(jù)不是全部被更新(如圖9所示)。此時(shí),存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)采用一般緩沖寫入機(jī)制。更詳細(xì)來說,由于實(shí)體程序化單元內(nèi)的數(shù)據(jù)僅部分被更新,因此,需先將寫入數(shù)據(jù)保留在緩沖存儲(chǔ)器中并讀取舊有效數(shù)據(jù),再以實(shí)體程序化單元為單位來進(jìn)行寫入?;耍ㄟ^一般緩沖寫入機(jī)制可有效地利用第二緩沖存儲(chǔ)器108的大容量,以避免第一緩沖存儲(chǔ)器208的第一數(shù)據(jù)暫存區(qū)208a被占滿而無法用于執(zhí)行其他指令。[0141]圖12是根據(jù)本發(fā)明一范例實(shí)施例所示出的數(shù)據(jù)寫入方法的流程圖。[0142]請(qǐng)參照?qǐng)D12,當(dāng)從主機(jī)系統(tǒng)1000接收到指示起始邏輯地址與寫入數(shù)據(jù)(以下稱為第一數(shù)據(jù))的寫入指令時(shí),在步驟S1201中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)判斷第一數(shù)據(jù)是否屬于連續(xù)大數(shù)據(jù)。例如,如上所述,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)根據(jù)寫入指令所指示的起始邏輯地址與寫入數(shù)據(jù)的大小來判斷第一數(shù)據(jù)是否屬于連續(xù)大數(shù)據(jù)。[0143]倘若第一數(shù)據(jù)屬于連續(xù)大數(shù)據(jù)時(shí),在步驟S1203中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將第一數(shù)據(jù)暫存至第一緩沖存儲(chǔ)器208的第一數(shù)據(jù)暫存區(qū)208a。[0144]之后,在步驟S1205中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將第一數(shù)據(jù)從第一數(shù)據(jù)暫存區(qū)208a中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中。然后,在步驟S1207中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)從第一數(shù)據(jù)暫存區(qū)208a中將第一數(shù)據(jù)復(fù)制到第二緩沖存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a中。[0145]倘若第一數(shù)據(jù)不屬于連續(xù)大數(shù)據(jù)時(shí),在步驟S1209中,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)將第一數(shù)據(jù)暫存至第二緩沖存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a中。值得一提的是,之后,存儲(chǔ)器控制電路單元104(或存儲(chǔ)器管理電路202)會(huì)從對(duì)應(yīng)的實(shí)體程序化單元之中將舊有效數(shù)據(jù)(以下稱為第二數(shù)據(jù))讀取至第二緩沖存儲(chǔ)器108的第二數(shù)據(jù)暫存區(qū)108a,并且將所暫存的第一數(shù)據(jù)與第二數(shù)據(jù)寫入至空的實(shí)體程序化單元中(如圖9所示)。[0146]值得一提的是,盡管在本范例實(shí)施例中,第二緩沖存儲(chǔ)器108是獨(dú)立于存儲(chǔ)器控制電路單元104來被配置,然而,本發(fā)明不限于此。在本發(fā)明另一范例實(shí)施例中,第二緩沖存儲(chǔ)器108也可被配置在存儲(chǔ)器控制電路單元104中。[0147]綜上所述,本發(fā)明實(shí)施例所提出的存儲(chǔ)器存儲(chǔ)裝置、存儲(chǔ)器控制電路單元與寫入方法,可以根據(jù)不同的數(shù)據(jù)型態(tài)來使用不同的緩沖機(jī)制來寫入數(shù)據(jù),由此有效率地使用存儲(chǔ)器存儲(chǔ)裝置中暫存存儲(chǔ)器的帶寬與容量并且提升寫入數(shù)據(jù)的速度。[0148]最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍?!緳?quán)利要求】1.一種存儲(chǔ)器存儲(chǔ)裝置,其特征在于,包括:一連接接口單元,用以電性連接至一主機(jī)系統(tǒng);一可復(fù)寫式非易失性存儲(chǔ)器模塊;一存儲(chǔ)器控制電路單元,電性連接至該連接接口單元與該可復(fù)寫式非易失性存儲(chǔ)器模塊,其中該存儲(chǔ)器控制電路單元包括一第一緩沖存儲(chǔ)器,且該第一緩沖存儲(chǔ)器包括一第一數(shù)據(jù)暫存區(qū);以及一第二緩沖存儲(chǔ)器,電性連接至該第一緩沖存儲(chǔ)器,其中該第二緩沖存儲(chǔ)器包括一第二數(shù)據(jù)暫存區(qū),該第二緩沖存儲(chǔ)器的一傳輸帶寬低于該第一緩沖存儲(chǔ)器的一傳輸帶寬,其中該存儲(chǔ)器控制電路單元用以從該主機(jī)系統(tǒng)中接收一寫入指令與對(duì)應(yīng)該寫入指令的一起始邏輯地址與一第一數(shù)據(jù),其中該存儲(chǔ)器控制電路單元還用以判斷該第一數(shù)據(jù)是否為一連續(xù)大數(shù)據(jù),倘若該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器控制電路單元將該第一數(shù)據(jù)暫存至該第一數(shù)據(jù)暫存區(qū),且將該第一數(shù)據(jù)從該第一數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中,倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器控制電路單元將該第一數(shù)據(jù)暫存至該第二數(shù)據(jù)暫存區(qū)。2.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,在判斷該第一數(shù)據(jù)是否為該連續(xù)大數(shù)據(jù)的操作中,該存儲(chǔ)器控制電路單元會(huì)判斷該起始邏輯地址是否為一數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小是否為該數(shù)據(jù)存取單位的倍數(shù),倘若該起始邏輯地址為該數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小為該數(shù)據(jù)存取單位的倍數(shù)時(shí),該存儲(chǔ)器控制電路單元識(shí)別該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù),倘若該起始邏輯地址不是該數(shù)據(jù)存取單位的倍數(shù)或者該第一數(shù)據(jù)的大小不是該數(shù)據(jù)存取單位的倍數(shù)時(shí),該存儲(chǔ)器控制電路單元識(shí)別該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)。3.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該存儲(chǔ)器控制電路單元還從該第一數(shù)據(jù)暫存區(qū)中將該第一數(shù)據(jù)復(fù)制到該第二緩沖存儲(chǔ)器的該第二數(shù)據(jù)暫存區(qū)中。4.根據(jù)權(quán)利要求3所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器控制電路單元還用以從該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第一實(shí)體程序化單元中將一第二數(shù)據(jù)讀取至該第二數(shù)據(jù)暫存區(qū)并且將該第一數(shù)據(jù)與該第二數(shù)據(jù)從該第二數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第二實(shí)體程序化單元。5.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該存儲(chǔ)器控制電路單元還用以在將該第一數(shù)據(jù)寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生一程序化錯(cuò)誤,若發(fā)生該程序化錯(cuò)誤時(shí),則該存儲(chǔ)器控制電路單元還用以從該第二緩沖存儲(chǔ)器中讀取該第一數(shù)據(jù),并根據(jù)該寫入指令將所讀取的該第一數(shù)據(jù)重新寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中。6.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該存儲(chǔ)器控制電路單元還用以從該主機(jī)系統(tǒng)接收一讀取指令,該存儲(chǔ)器控制電路單元還用以判斷該第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于該讀取指令所指示的一邏輯地址的一第三數(shù)據(jù),若該第二緩沖存儲(chǔ)器存儲(chǔ)有屬于該讀取指令所指示的該邏輯地址的該第三數(shù)據(jù)時(shí),則該存儲(chǔ)器控制電路單元從該第二緩沖存儲(chǔ)器中讀取該第三數(shù)據(jù)并將所讀取的該第三數(shù)據(jù)傳送至該主機(jī)系統(tǒng)以響應(yīng)該讀取指令。7.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該第二緩沖存儲(chǔ)器是配置在該存儲(chǔ)器控制電路單元中或者配置在該存儲(chǔ)器控制電路單元的外部。8.根據(jù)權(quán)利要求1所述的存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該第一緩沖存儲(chǔ)器為一靜態(tài)隨機(jī)存取存儲(chǔ)器,該第二緩沖存儲(chǔ)器為一同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器并且該第二緩沖存儲(chǔ)器的一容量大于該第一緩沖存儲(chǔ)器的一容量。9.一種存儲(chǔ)器控制電路單元,其特征在于,包括:一主機(jī)接口,用以電性連接至一主機(jī)系統(tǒng);一存儲(chǔ)器接口,用以電性連接至一可復(fù)寫式非易失性存儲(chǔ)器模塊;一存儲(chǔ)器管理電路,電性連接至該主機(jī)接口與該存儲(chǔ)器接口;一第一緩沖存儲(chǔ)器,電性連接至該存儲(chǔ)器管理電路且包括一第一數(shù)據(jù)暫存區(qū);以及一第二緩沖存儲(chǔ)器,電性連接至該第一緩沖存儲(chǔ)器與該存儲(chǔ)器管理電路,其中該第二緩沖存儲(chǔ)器包括一第二數(shù)據(jù)暫存區(qū),該第二緩沖存儲(chǔ)器的一傳輸帶寬低于該第一緩沖存儲(chǔ)器的一傳輸帶寬,其中該存儲(chǔ)器管理電路用以從該主機(jī)系統(tǒng)中接收一寫入指令與對(duì)應(yīng)該寫入指令的一起始邏輯地址與一第一數(shù)據(jù),其中該存儲(chǔ)器管理電路還用以判斷該第一數(shù)據(jù)是否為一連續(xù)大數(shù)據(jù),倘若該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器管理電路將該第一數(shù)據(jù)暫存至該第一數(shù)據(jù)暫存區(qū),并且將該第一數(shù)據(jù)從該第一數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中,倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器管理電路將該第一數(shù)據(jù)暫存至該第二數(shù)據(jù)暫存區(qū)。10.根據(jù)權(quán)利要求9所述的存儲(chǔ)器控制電路單元,其特征在于,在判斷該第一數(shù)據(jù)是否為該連續(xù)大數(shù)據(jù)的操作中,該存儲(chǔ)器管理電路會(huì)判斷該起始邏輯地址是否為一數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小是否為該數(shù)據(jù)存取單位的倍數(shù),倘若該起始邏輯地址為該數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小為該數(shù)據(jù)存取單位的倍數(shù)時(shí),該存儲(chǔ)器管理電路識(shí)別該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù),倘若該起始邏輯地址不是該數(shù)據(jù)存取單位的倍數(shù)或者該第一數(shù)據(jù)的大小不是該數(shù)據(jù)存取單位的倍數(shù)時(shí),該存儲(chǔ)器管理電路識(shí)別該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)。11.根據(jù)權(quán)利要求9所述的存儲(chǔ)器控制電路單元,其特征在于,其中該存儲(chǔ)器管理電路還從該第一數(shù)據(jù)暫存區(qū)中將該第一數(shù)據(jù)復(fù)制到該第二緩沖存儲(chǔ)器的該第二數(shù)據(jù)暫存區(qū)中。12.根據(jù)權(quán)利要求11所述的存儲(chǔ)器控制電路單元,其特征在于,倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),該存儲(chǔ)器管理電路還用以從該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第一實(shí)體程序化單元中將一第二數(shù)據(jù)讀取至該第二數(shù)據(jù)暫存區(qū)并且將該第一數(shù)據(jù)與該第二數(shù)據(jù)從該第二數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第二實(shí)體程序化單元。13.根據(jù)權(quán)利要求9所述的存儲(chǔ)器控制電路單元,其特征在于,該存儲(chǔ)器管理電路還用以在將該第一數(shù)據(jù)寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生一程序化錯(cuò)誤,其中若發(fā)生該程序化錯(cuò)誤時(shí),則該存儲(chǔ)器管理電路還用以從該第二緩沖存儲(chǔ)器中讀取該第一數(shù)據(jù),并根據(jù)該寫入指令將所讀取的該第一數(shù)據(jù)重新寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中。14.根據(jù)權(quán)利要求9所述的存儲(chǔ)器控制電路單元,其特征在于,該存儲(chǔ)器管理電路還用以從該主機(jī)系統(tǒng)接收一讀取指令,其中該存儲(chǔ)器管理電路還用以判斷該第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于該讀取指令所指示的一邏輯地址的一第三數(shù)據(jù),其中若該第二緩沖存儲(chǔ)器存儲(chǔ)有屬于該讀取指令所指示的該邏輯地址的該第三數(shù)據(jù)時(shí),則該存儲(chǔ)器管理電路從該第二緩沖存儲(chǔ)器中讀取該第三數(shù)據(jù)并將所讀取的該第三數(shù)據(jù)傳送至該主機(jī)系統(tǒng)以響應(yīng)該讀取指令。15.根據(jù)權(quán)利要求9所述的存儲(chǔ)器控制電路單元,其特征在于,該第一緩沖存儲(chǔ)器為一靜態(tài)隨機(jī)存取存儲(chǔ)器,該第二緩沖存儲(chǔ)器為一同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器并且該第二緩沖存儲(chǔ)器的一容量大于該第一緩沖存儲(chǔ)器的一容量。16.一種數(shù)據(jù)寫入方法,用于一存儲(chǔ)器存儲(chǔ)裝置,其特征在于,該存儲(chǔ)器存儲(chǔ)裝置具有一第一緩沖存儲(chǔ)器、一第二緩沖存儲(chǔ)器及一可復(fù)寫式非易失性存儲(chǔ)器模塊,該第一緩沖存儲(chǔ)器的一傳輸帶寬大于該第二緩沖存儲(chǔ)器的一傳輸帶寬,該寫入方法包括:從一主機(jī)系統(tǒng)中接收一寫入指令與對(duì)應(yīng)該寫入指令的一起始邏輯地址與一第一數(shù)據(jù);判斷該第一數(shù)據(jù)是否為一連續(xù)大數(shù)據(jù);倘若該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù)時(shí),將該第一數(shù)據(jù)暫存至該第一緩沖存儲(chǔ)器的一第一數(shù)據(jù)暫存區(qū),并且將該第一數(shù)據(jù)從該第一數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中;以及倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),將該第一數(shù)據(jù)暫存至該第二緩沖存儲(chǔ)器的一第二數(shù)據(jù)暫存區(qū)中。17.根據(jù)權(quán)利要求16所述的數(shù)據(jù)寫入方法,其特征在于,其中上述判斷該第一數(shù)據(jù)是否為該連續(xù)大數(shù)據(jù)的步驟包括:判斷該起始邏輯地址是否為一數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小是否為該數(shù)據(jù)存取單位的倍數(shù);倘若該起始邏輯地址為該數(shù)據(jù)存取單位的倍數(shù)并且該第一數(shù)據(jù)的大小為該數(shù)據(jù)存取單位的倍數(shù)時(shí),識(shí)別該第一數(shù)據(jù)為該連續(xù)大數(shù)據(jù);以及倘若該起始邏輯地址不是該數(shù)據(jù)存取單位的倍數(shù)或者該第一數(shù)據(jù)的大小不是該數(shù)據(jù)存取單位的倍數(shù)時(shí),識(shí)別該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)。18.根據(jù)權(quán)利要求16所述的數(shù)據(jù)寫入方法,其特征在于,還包括:從該第一數(shù)據(jù)暫存區(qū)中將該第一數(shù)據(jù)復(fù)制到該第二緩沖存儲(chǔ)器的該第二數(shù)據(jù)暫存區(qū)中。19.根據(jù)權(quán)利要求18所述的數(shù)據(jù)寫入方法,其特征在于,還包括:倘若該第一數(shù)據(jù)不是該連續(xù)大數(shù)據(jù)時(shí),從該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第一實(shí)體程序化單元中將一第二數(shù)據(jù)讀取至該第二數(shù)據(jù)暫存區(qū)并且將該第一數(shù)據(jù)與該第二數(shù)據(jù)從該第二數(shù)據(jù)暫存區(qū)中寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊的一第二實(shí)體程序化單元。20.根據(jù)權(quán)利要求16所述的數(shù)據(jù)寫入方法,其特征在于,還包括:在將該第一數(shù)據(jù)寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中之后判斷是否發(fā)生一程序化錯(cuò)誤;以及倘若發(fā)生該程序化錯(cuò)誤時(shí),則從該第二緩沖存儲(chǔ)器中讀取該第一數(shù)據(jù),并根據(jù)該寫入指令將所讀取的該第一數(shù)據(jù)重新寫入至該可復(fù)寫式非易失性存儲(chǔ)器模塊中。21.根據(jù)權(quán)利要求16所述的數(shù)據(jù)寫入方法,其特征在于,還包括:從該主機(jī)系統(tǒng)接收一讀取指令,判斷該第二緩沖存儲(chǔ)器是否存儲(chǔ)有屬于該讀取指令所指示的一邏輯地址的一第三數(shù)據(jù);倘若該第二緩沖存儲(chǔ)器存儲(chǔ)有屬于該讀取指令所指示的該邏輯地址的該第三數(shù)據(jù)時(shí),從該第二緩沖存儲(chǔ)器中讀取該第三數(shù)據(jù)并將所讀取的該第三數(shù)據(jù)傳送至該主機(jī)系統(tǒng)以響應(yīng)該讀取指令?!疚臋n編號(hào)】G06F3/06GK104423888SQ201310371587【公開日】2015年3月18日申請(qǐng)日期:2013年8月23日優(yōu)先權(quán)日:2013年8月23日【發(fā)明者】葉志剛申請(qǐng)人:群聯(lián)電子股份有限公司