本發(fā)明涉及固態(tài)硬盤,特別涉及降低固態(tài)硬盤異常掉電恢復(fù)時間的方法、裝置及相關(guān)組件。
背景技術(shù):
1、隨著存儲技術(shù)的不斷發(fā)展,qlc(quad-levelcell)nand閃存作為一種高密度存儲解決方案,逐漸在固態(tài)硬盤(ssd)領(lǐng)域得到廣泛應(yīng)用。qlc?nand單元通過存儲四個不同級別的電荷量來表示四個不同的數(shù)據(jù)狀態(tài)(即四位數(shù)據(jù)),從而實現(xiàn)了比傳統(tǒng)slc(single-levelcell)和mlc(multi-levelcell)更高的存儲容量。然而,這種高密度的存儲方式也帶來了更為復(fù)雜的電壓分布問題。
2、qlc?nand單元的電壓分布相較于slc和mlc更為復(fù)雜,這主要源于其需要更精細地控制電荷量以區(qū)分四個不同的數(shù)據(jù)狀態(tài)。因此,qlc?nand在數(shù)據(jù)存儲過程中通常需要經(jīng)過兩次編程操作,以確保數(shù)據(jù)能夠準確無誤地被存儲并在后續(xù)過程中被正確讀取。這種兩次編程的需求,使得qlc?nand在數(shù)據(jù)存儲的效率和可靠性方面面臨一定的挑戰(zhàn)。
3、為了避免直接將主機數(shù)據(jù)寫入到qlc區(qū)域可能帶來的風(fēng)險,業(yè)界通常采用了一種折中的策略:先將數(shù)據(jù)寫入到slc區(qū)域,然后再從slc區(qū)域遷移到qlc區(qū)域。這種策略雖然能夠在一定程度上提高數(shù)據(jù)存儲的可靠性,但同時也增加了數(shù)據(jù)遷移的復(fù)雜性和時間成本。
4、此外,qlc?nand在編程過程中還需要考慮相鄰wordline(字線)之間的相互影響。為了消除這種影響,兩次編程操作需要在兩組wordline(即兩層)之間交錯進行。這種交錯編程的方式雖然有助于減少相鄰wordline之間的干擾,但也使得處于不穩(wěn)定狀態(tài)的wordline數(shù)量增多。在異常掉電等突發(fā)情況下,這些不穩(wěn)定的wordline可能會對后續(xù)的數(shù)據(jù)寫入和讀取操作造成不良影響。
5、為了應(yīng)對這種情況,qlc?ssd通常需要在后續(xù)的空wordline上填充大量的無效數(shù)據(jù),以隔離并消除前面不穩(wěn)定wordline的潛在影響。然而,這種做法不僅占用了有效的存儲空間,還延長了數(shù)據(jù)恢復(fù)的時間。更為嚴重的是,遺留下的大量不穩(wěn)定wordline在后續(xù)的數(shù)據(jù)搬移過程中,由于需要進行深度的糾錯操作,會導(dǎo)致數(shù)據(jù)搬移速度顯著降低,從而影響ssd的整體性能和用戶體驗。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的是提供降低固態(tài)硬盤異常掉電恢復(fù)時間的方法、裝置及相關(guān)組件,旨在解決現(xiàn)有固態(tài)硬盤的異常掉電的恢復(fù)方法占用了有效的存儲空間、延長了數(shù)據(jù)恢復(fù)的時間等問題。
2、第一方面,本發(fā)明實施例提供一種降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,包括:
3、在qlc閃存的每層第一次編程完成后,記錄該層一次編程的源數(shù)據(jù)存儲位置;
4、將所述源數(shù)據(jù)存儲位置生成日志信息并保存至非易失性存儲介質(zhì)內(nèi);
5、在異常掉電恢復(fù)時,從所述非易失性存儲介質(zhì)內(nèi)讀取最后兩次保存的日志信息;
6、根據(jù)最后兩次保存的日志信息恢復(fù)未完成二次編程的寫入層的源數(shù)據(jù)并根據(jù)所述源數(shù)據(jù)對所述寫入層進行二次編程。
7、第二方面,本發(fā)明實施例提供一種降低固態(tài)硬盤異常掉電恢復(fù)時間的裝置,包括:
8、記錄單元,用于在qlc閃存的每層第一次編程完成后,記錄該層一次編程的源數(shù)據(jù)存儲位置;
9、保存單元,用于將所述源數(shù)據(jù)存儲位置生成日志信息并保存至非易失性存儲介質(zhì)內(nèi);
10、讀取單元,用于在異常掉電恢復(fù)時,從所述非易失性存儲介質(zhì)內(nèi)讀取最后兩次保存的日志信息;
11、恢復(fù)單元,用于根據(jù)最后兩次保存的日志信息恢復(fù)未完成二次編程的寫入層的源數(shù)據(jù)并根據(jù)所述源數(shù)據(jù)對所述寫入層進行二次編程。
12、第三方面,本發(fā)明實施例又提供了一種固態(tài)硬盤,其包括存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)上述第一方面所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法。
13、第四方面,本發(fā)明實施例還提供了一種計算機可讀存儲介質(zhì),其中所述計算機可讀存儲介質(zhì)存儲有計算機程序,所述計算機程序當(dāng)被處理器執(zhí)行時實現(xiàn)上述第一方面所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法。
14、本發(fā)明公開了降低固態(tài)硬盤異常掉電恢復(fù)時間的方法、裝置及相關(guān)組件,方法包括:在qlc閃存的每層第一次編程完成后,記錄該層一次編程的源數(shù)據(jù)存儲位置;將源數(shù)據(jù)存儲位置生成日志信息并保存至非易失性存儲介質(zhì)內(nèi);在異常掉電恢復(fù)時,從非易失性存儲介質(zhì)內(nèi)讀取最后兩次保存的日志信息;根據(jù)最后兩次保存的日志信息恢復(fù)未完成二次編程的寫入層的源數(shù)據(jù)并根據(jù)源數(shù)據(jù)對寫入層進行二次編程。本發(fā)明通過讀取最后兩次日志信息,可以恢復(fù)最后兩個完整寫入層的源數(shù)據(jù),利用這些源數(shù)據(jù)信息,可以繼續(xù)進行不穩(wěn)定層的二次編程,從而減少了無效數(shù)據(jù)的填入量以及僅完成一次編程數(shù)據(jù)的搬移。不但提升了存儲空間的利用率,還減少了恢復(fù)時間,同時避免了數(shù)據(jù)重新搬移,從而提升了數(shù)據(jù)搬移速度,進而提升了固態(tài)硬盤的整體性能和用戶體驗。本發(fā)明實施例同時還提供了一種降低固態(tài)硬盤異常掉電恢復(fù)時間的裝置、一種計算機可讀存儲介質(zhì)和一種固態(tài)硬盤,具有上述有益效果,在此不再贅述。
1.一種降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,所述非易失性存儲介質(zhì)內(nèi)僅保留最近兩次編程的源數(shù)據(jù)存儲位置。
3.根據(jù)權(quán)利要求1所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,所述根據(jù)最后兩次保存的日志信息恢復(fù)未完成二次編程的寫入層的源數(shù)據(jù)并根據(jù)所述源數(shù)據(jù)對所述寫入層進行二次編程包括:
4.根據(jù)權(quán)利要求3所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,所述一次編程掉電恢復(fù)流程包括:
5.根據(jù)權(quán)利要求4所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,根據(jù)所述上一層的一次編程的源數(shù)據(jù)對所述上一層進行二次編程之后包括:
6.根據(jù)權(quán)利要求3所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,所述二次編程掉電恢復(fù)流程包括:
7.根據(jù)權(quán)利要求6所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法,其特征在于,根據(jù)所述上一層的一次編程的源數(shù)據(jù)對所述上一層進行二次編程之后包括:
8.一種降低固態(tài)硬盤異常掉電恢復(fù)時間的裝置,其特征在于,包括:
9.一種固態(tài)硬盤,包括存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執(zhí)行所述計算機程序時實現(xiàn)如權(quán)利要求1至7中任一項所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法。
10.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)存儲有計算機程序,所述計算機程序當(dāng)被處理器執(zhí)行時使所述處理器執(zhí)行如權(quán)利要求1至7任一項所述的降低固態(tài)硬盤異常掉電恢復(fù)時間的方法。