專利名稱:一種固態(tài)硬盤及閃存芯片的充放電控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲(chǔ)技術(shù)領(lǐng)域,尤其涉及一種固態(tài)硬盤及閃存芯片的充放電控制方法。
背景技術(shù):
NAND型閃存可根據(jù)每一存儲(chǔ)單元中可儲(chǔ)存的位數(shù)區(qū)分為SLC (Single-LevelCell,單層單元)NAND型閃存與MLC NAND型閃存。SLC NAND型閃存芯片的每個(gè)存儲(chǔ)單??梢杂袃煞N狀態(tài)聞電壓或低電壓,分別表示數(shù)據(jù)O和1,這樣一個(gè)存儲(chǔ)單元可以表示一個(gè)數(shù)據(jù)bit位。由多個(gè)物理存儲(chǔ)單元組成一個(gè)物理頁(yè),該物理頁(yè)可以表示相同數(shù)量的bit位,即邏輯頁(yè)。MLC NAND型閃存芯片的每個(gè)存儲(chǔ)單元可以有4種電壓狀態(tài)。MLC根據(jù)電壓值不同,表示不同的數(shù)據(jù)。圖1是一種MLC NAND型閃存芯片的存儲(chǔ)單元的電壓分布示意圖,當(dāng)電壓處于(TA之間時(shí)表示數(shù)據(jù)11,當(dāng)電壓位于A、之間時(shí)表示數(shù)據(jù)10,當(dāng)電壓位于B飛之間時(shí)表示數(shù)據(jù)01,當(dāng)電壓位于(TD之間時(shí)表示數(shù)據(jù)00。這樣一個(gè)存儲(chǔ)單元可以表示兩個(gè)數(shù)據(jù)bit位,MLCNAND型閃存芯片一個(gè)物理頁(yè)為SLC NAND型閃存芯片一個(gè)物理頁(yè)2倍數(shù)量的bit 位。一般會(huì)分為和物理頁(yè)相同大小的兩個(gè)邏輯頁(yè),低位的O或I組成LSB(leastsignificant bit,最低有效位),高位的 O 或 I 組成 MSB(most significant bit,最高有效位),也即說(shuō)兩個(gè)邏輯頁(yè)(LSB、MSB分別組成的頁(yè))共享一個(gè)物理頁(yè)。在圖1中,最高有效位(MSB)位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位(LSB)位于二進(jìn)制數(shù)據(jù)的最右側(cè)。假設(shè)第一個(gè)電壓狀態(tài)(11)電子數(shù)為O ;第二個(gè)電壓狀態(tài)(10)電子數(shù)為η ;第三個(gè)電壓狀態(tài)(00)電子數(shù)為2η ;第四個(gè)電壓狀態(tài)(01)電子數(shù)為3η。下面以不同順序?yàn)槔敿?xì)分析對(duì)現(xiàn)有技術(shù)中對(duì)固態(tài)硬盤讀寫的充放電過(guò)程1、先寫入最低有效位(LSB),再寫入最高有效位(MSB),其數(shù)據(jù)變化關(guān)系如圖2所
/Jn ο先寫入最低有效位(LSB),寫入數(shù)據(jù)可能是1,也可能是0,因此數(shù)據(jù)變化關(guān)系為11變?yōu)?1,或11變?yōu)?0。其中,從11變?yōu)?1時(shí),多層存儲(chǔ)單元不需要充放電;從11變?yōu)?0時(shí),需要充電η個(gè)電子。再寫入最高有效位(MSB),寫入數(shù)據(jù)可能是1,也可能是0,因此數(shù)據(jù)變化關(guān)系為11變?yōu)?1,或11變?yōu)?1,或10變?yōu)?0,或10變?yōu)?0。其中,從11變?yōu)?1,或從10變?yōu)?10,實(shí)際是沒(méi)有變化,不需要要充放電;從11變?yōu)?1,需要充電3n個(gè)電子;從10變?yōu)?0需要充電η個(gè)電子。2、先寫入最高有效位(MSB),再寫入最低有效位(LSB),其數(shù)據(jù)變化關(guān)系如圖3所
/Jn ο先寫入最高有效位(MSB),寫入數(shù)據(jù)可能是1,也可能是0,因此數(shù)據(jù)變化關(guān)系為11變?yōu)?1,或11變?yōu)?1。其中,從11變?yōu)?1時(shí),不需要充放電;從11變?yōu)?1時(shí),需要充電3η個(gè)電子;再寫入最低有效位(LSB),寫入數(shù)據(jù)可能是1,也可能是0,因此數(shù)據(jù)變化關(guān)系為11變?yōu)?1,或11變?yōu)?0,或01變?yōu)?1,或01變?yōu)?0。其中,從11變?yōu)?1,或從01變?yōu)?1,實(shí)際是沒(méi)有變化,不需要要充放電;從11變?yōu)?0,需要充電η個(gè)電子;從01變?yōu)?0需要放電η個(gè)電子。由以上分析可知,當(dāng)多層存儲(chǔ)單元的最低有效位(LSB)和最高有效位(MSB)都寫入I時(shí),不需要充放電;當(dāng)多層存儲(chǔ)單元的最低有效位(LSB)和最高有效位(MSB)有且只有一個(gè)寫入O時(shí),需要充電I次;當(dāng)多層存儲(chǔ)單元的最低有效位(LSB)和最高有效位(MSB)都寫入O時(shí)且先寫最低有效位(LSB)時(shí),需要充電2次;當(dāng)多層存儲(chǔ)單元的最低有效位(LSB)和最高有效位(MSB)都寫入O時(shí)且先寫最高有效位(MSB)時(shí),需要充電I次,并放電I次。這樣,由于MLC型閃存芯片的LSB、MSB共享物理一個(gè)物理存儲(chǔ)單元,在對(duì)LSB或MSB編程時(shí),都需要對(duì)物理存儲(chǔ)單元充放電,頻繁的充放電次數(shù)降低了 ML C型閃存芯片的擦除次數(shù),導(dǎo)致閃存芯片的磨損,降低了閃存芯片的使用壽命。綜上可知,現(xiàn)有MLC NAND型閃存芯片的充放電控制方法在實(shí)際使用上,顯然存在不便與缺陷,所以有必要加以改進(jìn)。
發(fā)明內(nèi)容
針對(duì)上述的缺陷,本發(fā)明的目的在于提供一種固態(tài)硬盤及閃存芯片的充放電控制方法,能夠避免對(duì)多層存儲(chǔ)單元進(jìn)行重復(fù)的充放電,減少了充放電次數(shù)及閃存芯片的磨損,提聞了閃存芯片的使用壽命。為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種閃存芯片充放電控制方法,用于固態(tài)硬盤,所述閃存芯片的物理頁(yè)包括多個(gè)多層存儲(chǔ)單元,所述方法包括如下步驟將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由所述物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由所述物理頁(yè)中的最高有效位映射組成;將寫入數(shù)據(jù)進(jìn)行緩存,并將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù);根據(jù)所述合并后的數(shù)據(jù)對(duì)所述物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使所述多層存儲(chǔ)單元的電壓狀態(tài)表示為所述合并后的數(shù)據(jù)的數(shù)值。根據(jù)本發(fā)明的充放電控制方法,并將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)的步驟包括判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存中;若是則將該邏輯頁(yè)與所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),否則繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。根據(jù)本發(fā)明的充放電控制方法,所述繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入之后還包括若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。根據(jù)本發(fā)明的充放電控制方法,所述繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入之后還包括若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)未寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)設(shè)置為全1,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。根據(jù)本發(fā)明的充放電控制方法,所述將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè)的步驟中,所述閃存芯片的每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;所述最高有效位位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。本發(fā)明相應(yīng)提供一種固態(tài)硬盤,所述固態(tài)硬盤包括多個(gè)閃存芯片,所述閃存芯片的物理頁(yè)包括多個(gè)多層存儲(chǔ)單元,所述固態(tài)硬盤還包括映射模塊,用于將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由所述物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由所述物理頁(yè)中的最高有效位映射組成;緩存,用于緩存寫入數(shù)據(jù);數(shù)據(jù)合并模塊,用于將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù);充放電控制器,用于根據(jù)所述合并后的數(shù)據(jù)對(duì)所述物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使所述多層存儲(chǔ)單元的電壓狀態(tài)表示為所述合并后的數(shù)據(jù)的數(shù)值。根據(jù)本發(fā)明的固態(tài)硬盤,所述固態(tài)硬盤還包括判斷模塊,所述判斷模塊用于判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存中,若是則將該邏輯頁(yè)與所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),否則繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。根據(jù)本發(fā)明的固態(tài)硬盤,若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則所述固態(tài)硬盤將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。根據(jù)本發(fā)明的固態(tài)硬盤,若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)未寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)設(shè)置為全1,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。根據(jù)本發(fā)明的固態(tài)硬盤,所述閃存芯片的每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;所述最高有效位位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。本發(fā)明通過(guò)將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),在數(shù)據(jù)寫入時(shí),首先將數(shù)據(jù)緩存寫入數(shù)據(jù),當(dāng)某個(gè)邏輯頁(yè)以及與其耦合的邏輯頁(yè)均寫入數(shù)據(jù)時(shí),則將該邏輯頁(yè)以及其耦合的邏輯頁(yè)對(duì)應(yīng)的緩存數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),再根據(jù)所述合并后的數(shù)據(jù)對(duì)物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使多層存儲(chǔ)單元的電壓狀態(tài)表示為合并后的數(shù)據(jù)的數(shù)值。也即同時(shí)寫入物理頁(yè)中的最低有效位(LSB)與最高有效位(MSB),從而可以一次性充入預(yù)定的電子數(shù),相對(duì)于現(xiàn)有技術(shù)中寫入數(shù)據(jù)時(shí)不進(jìn)行緩存數(shù)據(jù),直接將邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入物理頁(yè)中的方式,本發(fā)明能夠避免對(duì)多層存儲(chǔ)單元進(jìn)行重復(fù)的充放電,減少了充放電次數(shù)及閃存芯片的磨損,提聞了閃存芯片的使用壽命。
圖1是現(xiàn)有技術(shù)中MLC NAND型閃存芯片的存儲(chǔ)單元的電壓分布示意圖;圖2是現(xiàn)有技術(shù)中對(duì)固態(tài)硬盤讀寫的充放電過(guò)程中先寫入最低有效位,再寫入最高有效位的數(shù)據(jù)變化關(guān)系示意圖;圖3是現(xiàn)有技術(shù)中對(duì)固態(tài)硬盤讀寫的充放電過(guò)程中先寫入最高有效位,再寫入最低有效位的數(shù)據(jù)變化關(guān)系示意圖;圖4是本發(fā)明一種固態(tài)硬盤的原理結(jié)構(gòu)圖;圖5是本發(fā)明一種實(shí)施例中固態(tài)硬盤進(jìn)行充放電的原理圖;圖6是本發(fā)明一種閃存芯片充放電控制方法的流程圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。如圖4所示,本發(fā)明一種固態(tài)硬盤100,固態(tài)硬盤100包括多個(gè)閃存芯片10,閃存芯片10具有多個(gè)物理頁(yè),每個(gè)物理頁(yè)包括多個(gè)多層存儲(chǔ)單元,固態(tài)硬盤100還包括映射模塊20、緩存30、數(shù)據(jù)合并模塊40以及充放電控制器50,其中數(shù)據(jù)合并模塊40以及充放電控制器50與閃存芯片10的多層存儲(chǔ)單元電性連接。映射模塊20,用于將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),這兩個(gè)邏輯頁(yè)分別為高位邏輯頁(yè)和低位邏輯頁(yè),高位邏輯頁(yè)由物理頁(yè)中的最高有效位映射組成,低位邏輯頁(yè)由物理頁(yè)中的最低有效位映射組成。由于每個(gè)物理頁(yè)中具有多個(gè)多層存儲(chǔ)單元,每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;最高有效位位于二進(jìn)制數(shù)據(jù)的最左偵牝最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。這4個(gè)二進(jìn)制數(shù)據(jù)的最低有效位低映射至低位邏輯頁(yè),最高有效位低映射至高位邏輯頁(yè),也即說(shuō)兩個(gè)邏輯頁(yè)共享一個(gè)物理頁(yè)。緩存30,用于緩存寫入數(shù)據(jù)。固態(tài)硬盤100的閃存轉(zhuǎn)換層在接到寫數(shù)據(jù)后不是立即將數(shù)據(jù)寫入到相關(guān)的邏輯頁(yè)上,而是將數(shù)據(jù)緩存起來(lái),等待該邏輯頁(yè)的耦合頁(yè)(共享物理頁(yè)的邏輯頁(yè))上的數(shù)據(jù)寫入,耦合頁(yè)數(shù)據(jù)寫入后也暫存在緩存30中。數(shù)據(jù)合并模塊40,用于將緩存30中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。只有當(dāng)某個(gè)邏輯頁(yè)以及與其耦合的邏輯頁(yè)均寫入數(shù)據(jù)時(shí),才將該邏輯頁(yè)以及其耦合的邏輯頁(yè)對(duì)應(yīng)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。具體如圖5所示,將兩個(gè)相互耦合邏輯頁(yè)中的數(shù)據(jù)分別取出對(duì)應(yīng)的bit位,這樣就可以組成11、10、00、01四個(gè)數(shù)據(jù)中的一個(gè),以合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),該份數(shù)據(jù)的大小與一個(gè)物理頁(yè)的存儲(chǔ)空間對(duì)應(yīng),具體位置可以根據(jù)邏輯物理地址映射表進(jìn)行確定。同時(shí)合并后的數(shù)據(jù)依然存儲(chǔ)在緩存30中。充放電控制器50,用于根據(jù)所述合并后的數(shù)據(jù)對(duì)所述物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使所述多層存儲(chǔ)單元的電壓狀態(tài)表示為所述合并后的數(shù)據(jù)的數(shù)值。具體的,充電控制器50根據(jù)多層存儲(chǔ)單元需要寫入數(shù)據(jù)(即緩存30中合并后的數(shù)據(jù))的值,直接把將物理頁(yè)的多層存儲(chǔ)單元的電子數(shù)一次充到預(yù)期的值,使其能表達(dá)緩存里的數(shù)值。這樣就可以用一次充電完成兩個(gè)邏輯頁(yè)的編程,從而可以延長(zhǎng)閃存芯片10的使用壽命。在本發(fā)明中,當(dāng)某個(gè)邏輯頁(yè)以及與其耦合的邏輯頁(yè)均寫入數(shù)據(jù)時(shí),才將該邏輯頁(yè)以及其耦合的邏輯頁(yè)對(duì)應(yīng)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)數(shù)據(jù),再進(jìn)行充放電控制。也即同時(shí)寫入最低有效位(LSB)與最高有效位(MSB),從而可以一次性充入預(yù)定的電子數(shù),而不需要重復(fù)的充放電。例如現(xiàn)有技術(shù)中,數(shù)據(jù)由11變?yōu)?0,多層存儲(chǔ)單元的最低有效位和最高有效位都寫入O時(shí)且先寫最高有效位時(shí),需要先將多層存儲(chǔ)單元先充入3n個(gè)電子,再釋放η個(gè)電子;而本發(fā)明中數(shù)據(jù)由11變?yōu)?0,直接充入2η個(gè)電子即可,僅需一次充電,減少了多層存儲(chǔ)單元的充放電次數(shù)。優(yōu)選的,固態(tài)硬盤還包括判斷模塊,判斷模塊用于判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存30中,若是則數(shù)據(jù)合并模塊40將該邏輯頁(yè)與耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),再進(jìn)行充放電控制,否則繼續(xù)等待下一數(shù)據(jù)寫入緩存30直至耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。 當(dāng)某個(gè)邏輯頁(yè)已經(jīng)緩存一份數(shù)據(jù),等待耦合數(shù)據(jù)到來(lái)時(shí),如果時(shí)間過(guò)長(zhǎng)則按等待超時(shí)處理,超時(shí)處理方法有以下兩種情況若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則固態(tài)硬盤100將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存30,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),再進(jìn)行充放電控制,也即如果被等待的邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則將數(shù)據(jù)讀入到緩存30中,結(jié)合第一份已經(jīng)存在的緩存數(shù)據(jù),對(duì)物理存儲(chǔ)單元進(jìn)行充電;若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則固態(tài)硬盤100將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存30,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),再進(jìn)行充放電控制,也即如果被等待的邏輯頁(yè)沒(méi)有被寫入過(guò)數(shù)據(jù),可以將它的對(duì)應(yīng)緩存設(shè)置為全1,并結(jié)合第一份緩存數(shù)據(jù),對(duì)物理存儲(chǔ)單元進(jìn)行充電。從而,在高位邏輯頁(yè)或低位邏輯頁(yè)等待另外一份數(shù)據(jù)到來(lái)時(shí),如果超時(shí),則根據(jù)被等待邏輯頁(yè)是否寫入過(guò)數(shù)據(jù)來(lái)構(gòu)造它對(duì)應(yīng)的緩存,然后根據(jù)兩份數(shù)據(jù)緩存決定如何進(jìn)行充電,避免造成緩存30中的數(shù)據(jù)過(guò)多,影響固態(tài)硬盤的數(shù)據(jù)處理速度。如圖6所示,本發(fā)明相應(yīng)提供一種閃存芯片充放電控制方法,其通過(guò)如圖4所示的固態(tài)硬盤100實(shí)現(xiàn),該方法包括步驟S601,將同一物理頁(yè)映射至相互稱合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由物理頁(yè)中的最高有效位映射組成。本步驟通過(guò)映射模塊20實(shí)現(xiàn)。閃存芯片10的每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;最高有效位位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。步驟S602,將寫入數(shù)據(jù)進(jìn)行緩存,并將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。本步驟通過(guò)緩存30以及數(shù)據(jù)合并模塊40共同實(shí)現(xiàn)。步驟S603,根據(jù)合并后的數(shù)據(jù)對(duì)物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使多層存儲(chǔ)單元的電壓狀態(tài)表示為合并后的數(shù)據(jù)的數(shù)值。本步驟通過(guò)充放電控制器50實(shí)現(xiàn)。優(yōu)選的是,步驟S602還包括判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存中;若是則將該邏輯頁(yè)與所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),否則繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù);或者若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)未寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)設(shè)置為全1,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。綜上所述,本發(fā)明通過(guò)將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),在數(shù)據(jù)寫入時(shí),首先將數(shù)據(jù)緩存寫入數(shù)據(jù),當(dāng)某個(gè)邏輯頁(yè)以及與其耦合的邏輯頁(yè)均寫入數(shù)據(jù)時(shí),則將該邏輯頁(yè)以及其耦合的邏輯頁(yè)對(duì)應(yīng)的緩存數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),再根據(jù)所述合并后的數(shù)據(jù)對(duì)物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使多層存儲(chǔ)單元的電壓狀態(tài)表示為合并后的數(shù)據(jù)的數(shù)值。也即同時(shí)寫入物理頁(yè)中的最低有效位(LSB)與最高有效位(MSB),從而可以一次性充入預(yù)定的電子數(shù),相對(duì)于現(xiàn)有技術(shù)中寫入數(shù)據(jù)時(shí)不進(jìn)行緩存數(shù)據(jù),直接將邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入物理頁(yè)中的方式,本發(fā)明能夠避免對(duì)多層存儲(chǔ)單元進(jìn)行重復(fù)的充放電,減少了充放電次數(shù)及閃存芯片的磨損,提聞了閃存芯片的使用壽命。當(dāng)然,本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種閃存芯片充放電控制方法,用于固態(tài)硬盤,所述閃存芯片的物理頁(yè)包括多個(gè)多層存儲(chǔ)單元,其特征在于,所述方法包括如下步驟 將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由所述物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由所述物理頁(yè)中的最高有效位映射組成; 將寫入數(shù)據(jù)進(jìn)行緩存,并將所述緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù); 根據(jù)所述合并后的數(shù)據(jù)對(duì)所述物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使所述多層存儲(chǔ)單元的電壓狀態(tài)表示為所述合并后的數(shù)據(jù)的數(shù)值。
2.根據(jù)權(quán)利要求1所述的充放電控制方法,其特征在于,并將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)的步驟包括 判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存中; 若是則將該邏輯頁(yè)與所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),否則繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。
3.根據(jù)權(quán)利要求2所述的充放電控制方法,其特征在于,所述繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入之后還包括 若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。
4.根據(jù)權(quán)利要求2所述的充放電控制方法,其特征在于,所述繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入之后還包括 若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)未寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)設(shè)置為全1,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的充放電控制方法,其特征在于,所述將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè)的步驟中,所述閃存芯片的每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;所述最高有效位位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。
6.一種固態(tài)硬盤,所述固態(tài)硬盤包括多個(gè)閃存芯片,所述閃存芯片的物理頁(yè)包括多個(gè)多層存儲(chǔ)單元,其特征在于,所述固態(tài)硬盤還包括 映射模塊,用于將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由所述物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由所述物理頁(yè)中的最高有效位映射組成; 緩存,用于緩存寫入數(shù)據(jù); 數(shù)據(jù)合并模塊,用于將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)所述物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù); 充放電控制器,用于根據(jù)所述合并后的數(shù)據(jù)對(duì)所述物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使所述多層存儲(chǔ)單元的電壓狀態(tài)表示為所述合并后的數(shù)據(jù)的數(shù)值。
7.根據(jù)權(quán)利要求6所述的固態(tài)硬盤,其特征在于,所述固態(tài)硬盤還包括判斷模塊,所述判斷模塊用于判斷寫入數(shù)據(jù)對(duì)應(yīng)的邏輯頁(yè)的耦合邏輯頁(yè)是否已經(jīng)寫入數(shù)據(jù)至緩存中,若是則將該邏輯頁(yè)與所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù),否則繼續(xù)等待下一數(shù)據(jù)寫入緩存直至所述耦合邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)寫入。
8.根據(jù)權(quán)利要求7所述的固態(tài)硬盤,其特征在于,若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)已經(jīng)寫入過(guò)數(shù)據(jù),則所述固態(tài)硬盤將該耦合邏輯頁(yè)的數(shù)據(jù)讀入緩存,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。
9.根據(jù)權(quán)利要求6所述的固態(tài)硬盤,其特征在于,若等待超時(shí)且當(dāng)前邏輯頁(yè)的耦合邏輯頁(yè)未寫入過(guò)數(shù)據(jù),則將該耦合邏輯頁(yè)的數(shù)據(jù)設(shè)置為全1,并將其與當(dāng)前邏輯頁(yè)的緩存數(shù)據(jù)合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù)。
10.根據(jù)權(quán)利要求1所述的固態(tài)硬盤,其特征在于,所述閃存芯片的每個(gè)多層存儲(chǔ)單元具有4種電壓狀態(tài),4種電壓狀態(tài)表示為4個(gè)二進(jìn)制數(shù)據(jù)11、10、00、01 ;所述最高有效位位于二進(jìn)制數(shù)據(jù)的最左側(cè),最低有效位位于二進(jìn)制數(shù)據(jù)的最右側(cè)。
全文摘要
本發(fā)明適用于存儲(chǔ)技術(shù)領(lǐng)域,提供了一種固態(tài)硬盤及閃存芯片充放電控制方法,該方法包括將同一物理頁(yè)映射至相互耦合的兩個(gè)邏輯頁(yè),其中一個(gè)邏輯頁(yè)由物理頁(yè)中的最低有效位映射組成,另一邏輯頁(yè)由物理頁(yè)中的最高有效位映射組成;將寫入數(shù)據(jù)進(jìn)行緩存,并將緩存中與兩個(gè)相互耦合的邏輯頁(yè)對(duì)應(yīng)的數(shù)據(jù)根據(jù)物理頁(yè)與相互耦合的兩個(gè)邏輯頁(yè)的映射關(guān)系合并為一份與物理頁(yè)對(duì)應(yīng)的數(shù)據(jù);根據(jù)合并后的數(shù)據(jù)對(duì)物理頁(yè)的多層存儲(chǔ)單元進(jìn)行充放電控制,使多層存儲(chǔ)單元的電壓狀態(tài)表示為合并后的數(shù)據(jù)的數(shù)值。借此,本發(fā)明能夠避免對(duì)多層存儲(chǔ)單元進(jìn)行重復(fù)的充放電,減少了充放電次數(shù)及閃存芯片的磨損,提高了閃存芯片的使用壽命。
文檔編號(hào)G06F3/06GK103019616SQ201210480708
公開(kāi)日2013年4月3日 申請(qǐng)日期2012年11月23日 優(yōu)先權(quán)日2012年11月23日
發(fā)明者金明 申請(qǐng)人:記憶科技(深圳)有限公司