專利名稱:減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及計算機固態(tài)存儲和數(shù)據(jù)存儲領域,尤其涉及一種基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng)。
背景技術:
固態(tài)硬盤(Solid State Disk)是由控制單元和存儲單元組成,簡單的說就是用固態(tài)電子存儲芯片陣列而制成的硬盤。 固態(tài)硬盤的存儲介質(zhì)分為兩種,一種是采用閃存(FLASH芯片)作為存儲介質(zhì),另外一種是采用隨機存儲器芯片(DRAM)作為存儲介質(zhì)?;陂W存的固態(tài)硬盤(IDEFLASH DISK、Serial ATA Flash Disk)是采用 FLASH芯片作為存儲介質(zhì)。它的外觀可以被制作成多種模樣,例如筆記本硬盤、微硬盤、存儲卡、U盤等樣式。這種基于閃存的固態(tài)硬盤最大的優(yōu)點就是可以移動,而且數(shù)據(jù)保護不受電源控制,能適應于各種環(huán)境,但是使用年限不高,適合于個人用戶使用。NAND Flash是一種非易失存儲介質(zhì),具有較高的單元密度,可以達到高存儲密度,寫入和擦除速度較快。目前主流的基于閃存的固態(tài)硬盤均采用NAND Flash芯片作為存儲介質(zhì),其特別之處在于工作時沒有機械運動。利用傳統(tǒng)的NAND Flash特性,以頁寫入和塊擦除的方式進行讀寫操作,因此在讀寫的效率上,非常依賴讀寫技術。眾所周知,flash的基本組成單元為頁面,M個頁面組成一個塊,其中M為自然數(shù)。如圖I所示,其為一種公知的基于閃存的固態(tài)硬盤寫入方式?;陂W存的固態(tài)硬盤是以塊為單位進行擦除,大小通常是512KB,這意味著即使某個塊上僅有一個頁面(4KB)的數(shù)據(jù)發(fā)生改變,整個塊都需要重寫。重寫過程如下“讀”通常指的是將塊上的所有數(shù)據(jù)讀入到基于閃存的固態(tài)硬盤緩存中,接著將“修改的”數(shù)據(jù)和基于閃存的固態(tài)硬盤緩存中已有的數(shù)據(jù)合并,然后“擦除”那個塊上的全部數(shù)據(jù),最后將基于閃存的固態(tài)硬盤緩存中的新數(shù)據(jù)“回寫”到已被擦除的塊上。最糟糕的是,每次對頁面寫之前,必須先執(zhí)行完成擦除操作。這就意味著對某個塊中的某個頁面進行寫操作,對此塊中的其余頁面同時進行了“擦除”和“寫”的操作,即寫放大。由于flash具有擦除次數(shù)有限、先擦除再寫的特點,當前SLC(Single LevelCell,單層單元)flash每個塊擦除最多是10萬次,而MLC(Multi-Level Cell,多層單元)flash每個塊擦除最多I萬次。由此可以看出,寫入放大會嚴重縮短基于閃存的固態(tài)硬盤的使用壽命,同時讀、修改、擦除操作無疑延長了寫周期,所以嚴重降低了基于閃存的固態(tài)硬盤的寫入速度。而且會越來越嚴重,隨著基于閃存的固態(tài)硬盤上存儲數(shù)據(jù)量的增大而變緩??梢?,基于閃存的固態(tài)硬盤作為存儲設備,反復多次的寫入操作,會嚴重縮短基于閃存的固態(tài)硬盤作為存儲設備的使用壽命。那么減小基于閃存的固態(tài)硬盤的寫入放大,成為亟待解決的問題。為延長基于閃存的固態(tài)硬盤預期使用壽命,在現(xiàn)有技術中,中國專利申請?zhí)?00910246715. 4公開了一種減小固態(tài)硬盤寫入放大的方法及裝置。所述方法包括當有新數(shù)據(jù)塊要寫入固態(tài)硬盤時,檢查所述固態(tài)硬盤中是否有與所述新數(shù)據(jù)塊完全相同的已存在數(shù)據(jù)塊;如果有,則建立所述新數(shù)據(jù)塊的邏輯地址與所述已存在數(shù)據(jù)塊的物理地址的對應關系;如果沒有,則將所述新數(shù)據(jù)塊寫入所述固態(tài)硬盤。其比較方法主要是利用每個塊的hash函數(shù)值進行比較,這也就是說,每當有數(shù)據(jù)塊進行寫入的時候,系統(tǒng)都要進行數(shù)據(jù)塊hash函數(shù)值的計算、比較、邏輯地址與物理地址映射表的修改等工作,這無疑增加了系統(tǒng)的開銷,降低了基于閃存的固態(tài)硬盤的寫入速度。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng),該寫入方法和數(shù)據(jù)寫入系統(tǒng)有效減小固態(tài)硬盤的寫入放大,提高基于閃存的固態(tài)硬盤的壽命和性能;特別適用于基于閃存的固態(tài)硬盤作為高速緩沖存儲器時,數(shù)據(jù)量大,更新快特征,能夠有效減小基于閃存的固態(tài)硬盤的寫入放大,同時有助于均衡基于閃存的固態(tài)硬盤的存儲介質(zhì)的磨損,延長整個基于閃存的固態(tài)硬盤的使用壽命,提高基于閃存的固態(tài)硬盤的性能。本發(fā)明的減小固態(tài)硬盤寫入放大的寫入方法通過下述技術方案實現(xiàn) 一種減小固態(tài)硬盤寫入放大的寫入方法,其中,固態(tài)硬盤作為高速緩沖存儲器;包括以下步驟步驟A :在向固態(tài)硬盤中寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面;步驟B :根據(jù)設定的處理條件,對符合處理條件的頁面標志為第二頁面標志的頁面進行處理;將處理后頁面的頁面標志設置為第三頁面標志;根據(jù)設定的擦除范圍,對符合擦除范圍的頁面標志為第三頁面標志的頁面所在的塊進行擦除,將擦除后塊的所有頁面的頁面標志設置為第一頁面標志;在頁面標志為第一頁面標志的新存儲頁面寫入新數(shù)據(jù),并將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入新數(shù)據(jù)。上述目的還可以通過下述技術方案進一步完善。所述步驟A之前還包括步驟A':對固態(tài)硬盤進行初始化設置,將所有頁面的頁面標志設置為第一頁面標志。本發(fā)明的數(shù)據(jù)寫入系統(tǒng)通過下述技術方案實現(xiàn)一種數(shù)據(jù)寫入系統(tǒng),包括客戶端,高速緩沖存儲器和主存儲器;所述高速緩沖存儲器采用基于閃存的固態(tài)硬盤;所述基于閃存的固態(tài)硬盤的寫入方式采用權(quán)利要求I至8中任意一種減小固態(tài)硬盤寫入放大的寫入方法;所述客戶端首先將數(shù)據(jù)寫入高速緩沖存儲器,在將數(shù)據(jù)從高速緩沖存儲器寫入到主存儲器;所述高速緩沖存儲器包括寫高速緩沖存儲器或讀寫混合高速緩沖存儲器。上述目的還可以通過下述技術方案進一步完善。所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù)。本發(fā)明的有益效果本發(fā)明的基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng),該寫入方法和數(shù)據(jù)寫入系統(tǒng)有效減小固態(tài)硬盤的寫入放大,提高基于閃存的固態(tài)硬盤的壽命和性能;特別適用于基于閃存的固態(tài)硬盤作為高速緩沖存儲器時,數(shù)據(jù)量大,更新快特征,能夠有效減小基于閃存的固態(tài)硬盤的寫入放大,同時有助于均衡基于閃存的固態(tài)硬盤的存儲介質(zhì)的磨損,延長整個基于閃存的固態(tài)硬盤的使用壽命,提高基于閃存的固態(tài)硬盤的性能。
圖I是現(xiàn)有技術的基于閃存的固態(tài)硬盤寫入方式的流程示意圖;圖2是本發(fā)明減小固態(tài)硬盤寫入放大的寫入方法的順序確定新存儲頁面的示意圖;圖3是本發(fā)明減小固態(tài)硬盤寫入放大的寫入方法實施例二的流程示意圖;圖4是本發(fā)明減小固態(tài)硬盤寫入放大的寫入方法實施例三的流程示意圖;圖5是本發(fā)明數(shù)據(jù)寫入系統(tǒng)示意圖。
具體實施例方式為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明的基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng)進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。實施例一本發(fā)明的基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法,其中固態(tài)硬盤作為高速緩沖存儲器;包括以下步驟一種減小固態(tài)硬盤寫入放大的寫入方法,其中,固態(tài)硬盤作為高速緩沖存儲器;包括以下步驟步驟A :在向固態(tài)硬盤中寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面;步驟B :根據(jù)設定的處理條件,對符合處理條件的頁面標志為第二頁面標志的頁面進行處理;將處理后頁面的頁面標志設置為第三頁面標志;根據(jù)設定的擦除范圍,對符合擦除范圍的頁面標志為第三頁面標志的頁面所在的塊進行擦除,將擦除后塊的所有頁面的頁面標志設置為第一頁面標志;在頁面標志為第一頁面標志的新存儲頁面寫入新數(shù)據(jù),并將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入新數(shù)據(jù)。其中,在所述步驟B中,將頁面的頁面標志設置為第一頁面標志,第二頁面標志,第三頁面標志,包括如下步驟設置存儲標志a和存儲標志b ;將頁面的頁面標志設置為第一頁面標志包括如下步驟將存儲標志a的值設置為0,表示干凈,干凈表示該頁面已經(jīng)被執(zhí)行過擦除操作,可以直接進行寫操作;將存儲標志b的值設置為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除;完成第一頁面標志設置;將頁面的頁面標志設置為第二頁面標志包括如下步驟將存儲標志a的值設置為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作;將存儲標志b的值設置為1,表示有效,有效表示該頁面的數(shù)據(jù)未寫入主存儲器;完成第二頁面標志設置;
將頁面的頁面標志設置為第三頁面標志包括如下步驟將存儲標志a的值設置為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作;將存儲標志b的值設置為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除;完成第三頁面標志設置。優(yōu)選的,所述步驟A之前還包括步驟A':對固態(tài)硬盤進行初始化設置,將所有頁面的頁面標志設置為第一頁面標志。其中,所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然 數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù);所述步驟A'之后還包括步驟A' -I:如圖2所示,初次寫入數(shù)據(jù)時,新存儲頁面是塊X的頁面Y,其中,X是小于等于M的任意一個自然數(shù),Y是小于等于N的任意一個自然數(shù)。優(yōu)選的,如圖2所示,所述步驟A包括以下步驟步驟A-I :識別上一次寫入數(shù)據(jù)時所占用的頁面,塊X'的頁面Y';步驟A-2:本次寫入新數(shù)據(jù)的新存儲頁面自塊X'的頁面Y'的下一頁開始,塊X'的頁數(shù)逐級遞增;塊)('的頁數(shù)遞增至頁面N后,塊數(shù)遞增;塊數(shù)遞增后,頁數(shù)逐級遞增;塊數(shù)逐級遞增至塊M后,塊數(shù)返回塊I ;其中,X'是小于等于M的自然數(shù),Y'是小于等于N的自然數(shù)。優(yōu)選的,所述步驟A'中,對固態(tài)硬盤進行初始化設置通過軟件實現(xiàn)或通過對所有的頁面進行擦除實現(xiàn)。實施例二本發(fā)明的減小固態(tài)硬盤寫入放大的寫入方法的實施例二,如圖3所示,步驟SlO':對固態(tài)硬盤進行初始化設置,將所有頁面的頁面標志設置為第一頁面標志;步驟S20':在向固態(tài)硬盤中寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面;步驟S 30':判斷相應的新存儲頁面的存儲標志a的值是0還是I :新存儲頁面的存儲標志a的值是0時,表示干凈,進入步驟S80'新存儲頁面的存儲標志a的值是I時,表示不干凈,進入步驟S40'步驟S40':判斷新存儲頁面的存儲標志b是的值是0還是I :新存儲頁面的存儲標志b的值是0時,表示無效,進入步驟S70';新存儲頁面的存儲標志b的值是I時,表示有效,進入步驟S50';步驟S50':將新存儲頁面所在塊及順序推X" -I個塊的所有存儲標志b的值是I的頁面的數(shù)據(jù)讀出寫入到主存儲器,同時將新存儲頁面所在塊及順序推X" -I個塊的所有頁面的頁面標志設置為第三頁面標志;進入步驟S60';其中,X"是自然數(shù)且I <X"
運行步驟60';步驟60':擦除新存儲頁面所在塊及順序推X" -I個塊,將擦除后的X"個塊的所有頁面的頁面標志設置為第一頁面標志;運行步驟S80';步驟S70':擦除新存儲頁面所在塊,將擦除后的新存儲頁面所在塊所有頁面的頁面標志設置為第一頁面標志;運行步驟S80';
步驟S80':將新數(shù)據(jù)寫入新存儲頁面,同時將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟S20',直至停止寫入新數(shù)據(jù)。其中,在步驟S30' 步驟S80'中,將頁面的頁面標志設置為第一頁面標志,第二頁面標志,第三頁面標志的步驟與實施例一中的步驟相同,不再詳述。其中,所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù);步驟SlO'之后包括步驟SlO' -I與實施例一中步驟A' -I相同,不再詳述。優(yōu)選的,步驟S20'包括步驟與實施例一中步驟A包含步驟相同,不再詳述。實施例三 本發(fā)明的減小固態(tài)硬盤寫入放大的寫入方法的實施例三,如圖4所示,步驟S10":對固態(tài)硬盤進行初始化設置,將所有頁面的頁面標志設置為第一頁面標志;設定存儲標志b的值為I (表示有效)的固態(tài)硬盤區(qū)域容量所占固態(tài)硬盤總?cè)萘康拈y值;步驟S20":在向固態(tài)硬盤中寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面;步驟S30":統(tǒng)計存儲標志b的值為I (表示有效)的固態(tài)硬盤區(qū)域容量所占固態(tài)硬盤總?cè)萘康谋壤欠竦陀谠O定的閥值低于設定的閥值時,運行步驟S60";不低于設定的閥值時,運行步驟S40";步驟S40":將所有存儲標志b的值為I (表示有效)的頁面的數(shù)據(jù)寫入主存儲器,將頁面標志設置為第三頁面標志;運行步驟S50";步驟S50":擦除頁面標志為第三頁面標志的頁面,將擦除后頁面的頁面標志設置為第一頁面標志;運行步驟S60";步驟S60":將新數(shù)據(jù)寫入新存儲頁面,同時將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟S20",直至停止寫入新數(shù)據(jù)。優(yōu)選的,所述閥值是50%或60%或70%或80%。其中,在步驟S30" 步驟S60"中,將頁面的頁面標志設置為第一頁面標志,第二頁面標志,第三頁面標志的步驟與實施例一中的步驟相同,不再詳述。其中,所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù);步驟S10"之后包括步驟S10" -I與實施例一中步驟A' -I相同,不再詳述。優(yōu)選的,步驟S20"包括步驟與實施例一中步驟A包含步驟相同,不再詳述。實施例四本發(fā)明的數(shù)據(jù)寫入系統(tǒng),如圖5所示,包括客戶端,高速緩沖存儲器和主存儲器;所述高速緩沖存儲器采用基于閃存的固態(tài)硬盤;所述基于閃存的固態(tài)硬盤的寫入方式采用實施例一或二或三中任意一種減小固態(tài)硬盤寫入放大的寫入方法;所述客戶端首先將數(shù)據(jù)寫入高速緩沖存儲器,在將數(shù)據(jù)從高速緩沖存儲器寫入到主存儲器;所述高速緩沖存儲器包括寫高速緩沖存儲器或讀寫混合高速緩沖存儲器。優(yōu)選的,所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù);
頁面的頁面標志包括存儲標志a和存儲標志b ;根據(jù)存儲標志a和存儲標志b將頁面標志分為第一頁面標志,第二頁面標志,第三頁面標志;第一頁面標志為存儲標志a的值為0,存儲標志b的值為0 :存儲標志a的值為0,表示干凈,干凈表示該頁面已經(jīng)被執(zhí)行過擦除操作,可以直接進行寫操作;存儲標志b的值為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除;第二頁面標志為存儲標志a的值為I,存儲標志b的值為I :存儲標志a的值為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作; 存儲標志b的值為1,表示有效,有效表示該頁面的數(shù)據(jù)未寫入主存儲器;第三頁面標志為存儲標志a的值為I,存儲標志b的值為0 :存儲標志a的值為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作;存儲標志b的值為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除。本發(fā)明的基于閃存的固態(tài)硬盤的減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng),該寫入方法和數(shù)據(jù)寫入系統(tǒng)有效減小固態(tài)硬盤的寫入放大,提高基于閃存的固態(tài)硬盤的壽命和性能;特別適用于基于閃存的固態(tài)硬盤作為高速緩沖存儲器時,數(shù)據(jù)量大,更新快特征,能夠有效減小基于閃存的固態(tài)硬盤的寫入放大,同時有助于均衡基于閃存的固態(tài)硬盤的存儲介質(zhì)的磨損,延長整個基于閃存的固態(tài)硬盤的使用壽命,提高基于閃存的固態(tài)硬盤的性能。最后應當說明的是,很顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型。
權(quán)利要求
1.一種減小固態(tài)硬盤寫入放大的寫入方法,其中,固態(tài)硬盤作為高速緩沖存儲器;其特征在于包括以下步驟 步驟A :在向固態(tài)硬盤中寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面; 步驟B :根據(jù)設定的處理條件,對符合處理條件的頁面標志為第二頁面標志的頁面進行處理;將處理后頁面的頁面標志設置為第三頁面標志; 根據(jù)設定的擦除范圍,對符合擦除范圍的頁面標志為第三頁面標志的頁面所在的塊進行擦除,將擦除后塊的所有頁面的頁面標志設置為第一頁面標志; 在頁面標志為第一頁面標志的新存儲頁面寫入新數(shù)據(jù),并將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入新數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 在所述步驟B中,將頁面的頁面標志設置為第一頁面標志,第二頁面標志,第三頁面標志,包括如下步驟設置存儲標志a和存儲標志b ; 將頁面的頁面標志設置為第一頁面標志包括如下步驟 將存儲標志a的值設置為O,表示干凈,干凈表示該頁面已經(jīng)被執(zhí)行過擦除操作,可以直接進行寫操作; 將存儲標志b的值設置為O,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除;完成第一頁面標志設置; 將頁面的頁面標志設置為第二頁面標志包括如下步驟 將存儲標志a的值設置為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作; 將存儲標志b的值設置為1,表示有效,有效表示該頁面的數(shù)據(jù)未寫入主存儲器;完成第二頁面標志設置; 將頁面的頁面標志設置為第三頁面標志包括如下步驟 將存儲標志a的值設置為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作; 將存儲標志b的值設置為O,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除;完成第三頁面標志設置。
3.根據(jù)權(quán)利要求I所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述步驟A之前還包括步驟A':對固態(tài)硬盤進行初始化設置,將所有頁面的頁面標志設置為第一頁面標志。
4.根據(jù)權(quán)利要求3所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù); 所述步驟A'之后還包括步驟A' -I :初次寫入數(shù)據(jù)時,新存儲頁面是塊X的頁面Y,其中,X是小于等于M的任意一個自然數(shù),Y是小于等于N的任意一個自然數(shù)。
5.根據(jù)權(quán)利要求4所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述步驟A包括以下步驟 步驟A-I :識別上一次寫入數(shù)據(jù)時所占用的頁面,塊X'的頁面Y'; 步驟A-2:本次寫入新數(shù)據(jù)的新存儲頁面自塊X'的頁面Y'的下一頁開始,塊X'的頁數(shù)逐級遞增;塊X'的頁數(shù)遞增至頁面N后,塊數(shù)遞增; 塊數(shù)遞增后,頁數(shù)逐級遞增;塊數(shù)逐級遞增至塊M后,塊數(shù)返回塊I ; 其中,X'是小于等于M的自然數(shù),Y'是小于等于N的自然數(shù)。
6.根據(jù)權(quán)利要求2所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述步驟B包括以下步驟 步驟S30':判斷相應的新存儲頁面的存儲標志a的值是O還是I : 新存儲頁面的存儲標志a的值是O時,表示干凈,進入步驟S80' 新存儲頁面的存儲標志a的值是I時,表示不干凈,進入步驟S40' 步驟S40':判斷新存儲頁面的存儲標志b是的值是O還是I : 新存儲頁面的存儲標志b的值是O時,表示無效,進入步驟S70'; 新存儲頁面的存儲標志b的值是I時,表示有效,進入步驟S50'; 步驟S50':將新存儲頁面所在塊及順序推X" -I個塊的所有存儲標志b的值是I的頁面的數(shù)據(jù)讀出寫入到主存儲器,同時將新存儲頁面所在塊及順序推X" -I個塊的所有頁面的頁面標志設置為第三頁面標志;進入步驟S60';其中,X"是自然數(shù)且I SX" SM;運行步驟60'; 步驟60':擦除新存儲頁面所在塊及順序推X" -I個塊,將擦除后的X"個塊的所有頁面的頁面標志設置為第一頁面標志;運行步驟S80'; 步驟S70':擦除新存儲頁面所在塊,將擦除后的新存儲頁面所在塊所有頁面的頁面標志設置為第一頁面標志;運行步驟S80'; 步驟S80':將新數(shù)據(jù)寫入新存儲頁面,同時將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入新數(shù)據(jù)。
7.根據(jù)權(quán)利要求3所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述步驟A'還包括以下步驟 設定存儲標志b的值是I的固態(tài)硬盤區(qū)域容量所占固態(tài)硬盤總?cè)萘康拈y值; 所述步驟B包括以下步驟 步驟S 30":統(tǒng)計存儲標志b的值為I的固態(tài)硬盤區(qū)域容量所占固態(tài)硬盤總?cè)萘康谋壤欠竦陀谠O定的閥值 低于設定的閥值時,運行步驟S60"; 不低于設定的閥值時,運行步驟S40"; 步驟S40":將所有存儲標志b的值為I的的頁面的數(shù)據(jù)寫入主存儲器,將頁面標志設置為第三頁面標志;運行步驟S50"; 步驟S50":擦除頁面標志為第三頁面標志的頁面,將擦除后頁面的頁面標志設置為第一頁面標志;運行步驟S60"; 步驟S60":將新數(shù)據(jù)寫入新存儲頁面,同時將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入新數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的減小固態(tài)硬盤寫入放大的寫入方法,其特征在于 所述閥值是50%或60%或70%或80%。
9.一種數(shù)據(jù)寫入系統(tǒng),其特征在于 包括客戶端,高速緩沖存儲器和主存儲器;所述高速緩沖存儲器采用基于閃存的固態(tài)硬盤;所述基于閃存的固態(tài)硬盤的寫入方式采用權(quán)利要求I至8中任意一種減小固態(tài)硬盤寫入放大的寫入方法;所述客戶端首先將數(shù)據(jù)寫入高速緩沖存儲器,在將數(shù)據(jù)從高速緩沖存儲器寫入到主存儲器;所述高速緩沖存儲器包括寫高速緩沖存儲器或讀寫混合高速緩沖存儲器。
10.根據(jù)權(quán)利要求9所述的數(shù)據(jù)寫入系統(tǒng),其特征在于 所述固態(tài)硬盤包括M個塊,分別用塊1,塊2,...,塊M表示,其中M是自然數(shù);所述每個塊包括N個頁面,分別用頁面1,頁面2,...,頁面N表示,其中N是自然數(shù); 頁面的頁面標志包括存儲標志a和存儲標志b ;根據(jù)存儲標志a和存儲標志b將頁面標志分為第一頁面標志,第二頁面標志,第三頁面標志; 第一頁面標志為存儲標志a的值為0,存儲標志b的值為0 : 存儲標志a的值為0,表示干凈,干凈表示該頁面已經(jīng)被執(zhí)行過擦除操作,可以直接進行寫操作; 存儲標志b的值為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除; 第二頁面標志為存儲標志a的值為1,存儲標志b的值為I : 存儲標志a的值為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作; 存儲標志b的值為1,表示有效,有效表示該頁面的數(shù)據(jù)未寫入主存儲器; 第三頁面標志為存儲標志a的值為1,存儲標志b的值為0 : 存儲標志a的值為1,表示不干凈,不干凈表示該頁面未被執(zhí)行過擦除操作,在寫入數(shù)據(jù)前,先執(zhí)行擦除操作; 存儲標志b的值為0,表示無效,無效表示該頁面沒有數(shù)據(jù)或該頁面的數(shù)據(jù)已經(jīng)寫入主存儲器,可以被擦除。
全文摘要
本發(fā)明涉及一種減小固態(tài)硬盤寫入放大的寫入方法和數(shù)據(jù)寫入系統(tǒng),寫入方法包括步驟A在寫入新數(shù)據(jù)時,順序確定固態(tài)硬盤的新存儲頁面;步驟B根據(jù)設定的處理條件,對符合處理條件的頁面標志為第二頁面標志的頁面進行處理;將處理后頁面的頁面標志設置為第三頁面標志;根據(jù)設定的擦除范圍,對符合擦除范圍的頁面標志為第三頁面標志的頁面所在的塊進行擦除,將擦除后塊的所有頁面的頁面標志設置為第一頁面標志;在頁面標志為第一頁面標志的新存儲頁面寫入新數(shù)據(jù),并將新存儲頁面的頁面標志設置為第二頁面標志;返回步驟A,直至停止寫入。數(shù)據(jù)寫入系統(tǒng)采用上述寫入方法。本發(fā)明有效減小固態(tài)硬盤的寫入放大,提高固態(tài)硬盤的壽命和性能。
文檔編號G06F12/02GK102750224SQ20111009796
公開日2012年10月24日 申請日期2011年4月19日 優(yōu)先權(quán)日2011年4月19日
發(fā)明者劉虹越, 姜萬成, 楊越, 王旭光, 王術 申請人:蘇州捷泰科信息技術有限公司