固態(tài)硬盤的垃圾回收方法
【專利摘要】本發(fā)明適用于存儲(chǔ)【技術(shù)領(lǐng)域】,提供了一種固態(tài)硬盤的垃圾回收方法,所述方法包括:根據(jù)固態(tài)硬盤的存儲(chǔ)參數(shù),建立虛擬地址;建立所述固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系;垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊;更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系;復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址。本發(fā)明基于兩級(jí)地址映射,可以在垃圾收集搬移有效數(shù)據(jù)時(shí)只需考慮第二級(jí)地址(虛擬地址到物理地址)的映射關(guān)系,提高了固態(tài)硬盤的垃圾收集效率,有效降低讀寫延時(shí)。
【專利說明】固態(tài)硬盤的垃圾回收方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及存儲(chǔ)【技術(shù)領(lǐng)域】,尤其涉及一種固態(tài)硬盤的垃圾回收方法。
【背景技術(shù)】
[0002]固態(tài)硬盤(SSD)主要是由存儲(chǔ)單元(NAND FLASH芯片)陣列組成,因此具有讀寫速度快,防震抗摔性,無噪音,低功耗等優(yōu)點(diǎn)。但由于NAND FLASH芯片具有與傳統(tǒng)機(jī)械硬盤不同的固有特性:1、先擦除,后讀寫。2、擦除以塊(BLOCK)為最小單位,讀寫以頁(PAGE)為最小單位。所以固體硬盤對(duì)于數(shù)據(jù)的復(fù)寫不支持“原地更新”,必須做垃圾收集,把無效數(shù)據(jù)占據(jù)的物理空間回收回來,供下次寫入有效數(shù)據(jù)使用。
[0003]參見圖1A~圖1C所示的現(xiàn)有技術(shù)的垃圾回收過程,進(jìn)行垃圾收集前,邏輯地址LO映射到物理地址PO,即{L0->P0};進(jìn)行垃圾回收時(shí),把有效數(shù)據(jù)從物理地址PO搬移到了物理地址P1,更新映射關(guān)系,此時(shí)把邏輯地址LO映射到物理地址P1{L0->P1};復(fù)寫邏輯地址L0,映射關(guān)系變成把邏輯地址LO映射到物理地址P2 {L0->P2}。從以上分析步驟可以看出,這種現(xiàn)有的基于一級(jí)地址映射的方法,在搬移物理地址PO的數(shù)據(jù)的時(shí)候,不能立即響應(yīng)復(fù)寫邏輯地址LO的操作,必須等待數(shù)據(jù)搬移完成,才能響應(yīng)復(fù)寫LO的操作,導(dǎo)致延時(shí)。
[0004]綜上可知,現(xiàn)有的固態(tài)硬盤的垃圾回收方法,在實(shí)際使用上顯然存在不便與缺陷,所以有必要加以改進(jìn)。
【發(fā)明內(nèi)容】
[0005]針對(duì)上述的缺陷,本 發(fā)明的目的在于提供一種固態(tài)硬盤的垃圾回收方法,可以提高固態(tài)硬盤的垃圾收集效率,有效降低讀寫延時(shí)。
[0006]為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種固態(tài)硬盤的垃圾回收方法,所述方法包括:
[0007]根據(jù)固態(tài)硬盤的存儲(chǔ)參數(shù),建立虛擬地址;
[0008]建立所述固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系;
[0009]垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊;
[0010]更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系;
[0011]復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址。
[0012]根據(jù)本發(fā)明的固態(tài)硬盤的垃圾回收方法,所述復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址的步驟包括:
[0013]對(duì)所述邏輯地址分配新的虛擬地址及新的物理地址;
[0014]建立所述邏輯地址與新的虛擬地址及新的物理地址的映射關(guān)系。
[0015]根據(jù)本發(fā)明的固態(tài)硬盤的垃圾回收方法,所述將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊步驟與所述復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址步驟同時(shí)執(zhí)行。
[0016]本發(fā)明通過在固態(tài)硬盤中建立虛擬地址,并維護(hù)固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系。固態(tài)硬盤進(jìn)行垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊,并更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系。優(yōu)選的,在搬移數(shù)據(jù)時(shí),本發(fā)明即可以復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址,借此提高固態(tài)硬盤的垃圾收集效率,有效降低讀寫延時(shí)。
【專利附圖】
【附圖說明】
[0017]圖1A是現(xiàn)有技術(shù)一實(shí)施例的垃圾回收前數(shù)據(jù)映射示意圖;
[0018]圖1B是現(xiàn)有技術(shù)一實(shí)施例的垃圾回收后數(shù)據(jù)映射示意圖;
[0019]圖1C是現(xiàn)有技術(shù)一實(shí)施例的邏輯地址復(fù)寫后數(shù)據(jù)映射示意圖;
[0020]圖2是本發(fā)明的固態(tài)硬盤的垃圾回收方法流程圖;
[0021]圖3A是本發(fā)明一實(shí)施例的垃圾回收前數(shù)據(jù)映射示意圖;
[0022]圖3B是本發(fā)明一實(shí)施例的垃圾回收后數(shù)據(jù)映射示意圖;
[0023]圖3C是本發(fā)明一實(shí)施例的邏輯地址復(fù)寫后數(shù)據(jù)映射示意圖。
【具體實(shí)施方式】
[0024]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0025]參見圖2,本發(fā)明提供了一種固態(tài)硬盤的垃圾回收方法,該方法應(yīng)用于固態(tài)硬盤,可有效降低讀寫延時(shí)。具體的該方法包括:
[0026]步驟S201,根據(jù)固態(tài)硬盤的存儲(chǔ)參數(shù),建立虛擬地址。所述固態(tài)硬盤的參數(shù)包括存儲(chǔ)容量、原始映射關(guān)系等。
[0027]步驟S202,建立所述固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系。
[0028]現(xiàn)有的固態(tài)硬盤的數(shù)據(jù)映射關(guān)系如圖1A所示,本發(fā)明通過引入虛擬地址,改變數(shù)據(jù)映射關(guān)系。如圖3A所示,固態(tài)硬盤在進(jìn)行垃圾收集前,數(shù)據(jù)的兩級(jí)映射關(guān)系為邏輯地址LO映射到虛擬地址VO,VO映射到物理地址PO,即{L0->V0->P0}。
[0029]步驟S203,垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊。
[0030]步驟S204,更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系。
[0031]本發(fā)明將第一數(shù)據(jù)塊的有效數(shù)據(jù)頁搬移后,有效數(shù)據(jù)的物理地址會(huì)發(fā)生改變,對(duì)應(yīng)的映射關(guān)系也會(huì)發(fā)生改變。具體的,如圖3B,把有效數(shù)據(jù)從物理地址PO搬移到了物理地址Pl,更新第二級(jí)的地址映射關(guān)系為{V0->P1},第一級(jí)映射關(guān)系不變,新的映射關(guān)系為{L0->V0->P1}。
[0032]步驟S205,復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址。
[0033]結(jié)合圖3C,復(fù)寫邏輯地址L0,分配新的虛擬地址Vl及新的物理地址P2,更新映射關(guān)系為{L0->V1->P2}。
[0034]本發(fā)明在垃圾回收時(shí)不僅回收物理地址,同時(shí)也回收虛擬地址,因此,在對(duì)數(shù)據(jù)的邏輯地址進(jìn)行復(fù)寫時(shí),對(duì)所述邏輯地址分配新的虛擬地址及新的物理地址,并建立所述邏輯地址與新的虛擬地址及新的物理地址的映射關(guān)系。
[0035]優(yōu)選的是,本發(fā)明的一級(jí)地址和二級(jí)地址的分配各自獨(dú)立,互不干擾。基于兩級(jí)地址的垃圾收集方法,僅僅只需考慮第二級(jí)地址的映射關(guān)系,而與第一級(jí)地址無關(guān)。因此,進(jìn)行垃圾回收時(shí),可以在進(jìn)行數(shù)據(jù)搬移的過程同時(shí)進(jìn)行復(fù)寫操作,即可以立即響應(yīng)復(fù)寫邏輯地址LO的操作,不需等待垃圾回收數(shù)據(jù)搬移完成,借此避免等待延時(shí)。
[0036]綜上所述,本發(fā)明通過在固態(tài)硬盤中建立虛擬地址,并維護(hù)固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系。固態(tài)硬盤進(jìn)行垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊,并更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系。優(yōu)選的,在搬移數(shù)據(jù)時(shí),本發(fā)明即可以復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址,借此提高固態(tài)硬盤的垃圾收集效率,有效降低讀寫延時(shí)。
[0037]當(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)硬盤的垃圾回收方法,其特征在于,所述方法包括: 根據(jù)固態(tài)硬盤的存儲(chǔ)參數(shù),建立虛擬地址; 建立所述固態(tài)硬盤的邏輯地址與虛擬地址的映射關(guān)系,以及所述虛擬地址與物理地址的映射關(guān)系; 垃圾回收時(shí),將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊; 更新被搬移的有效數(shù)據(jù)的虛擬地址與物理地址的映射關(guān)系; 復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址。
2.根據(jù)權(quán)利要求1所述的固態(tài)硬盤的垃圾回收方法,其特征在于,所述復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址的步驟包括: 對(duì)所述邏輯地址分配新的虛擬地址及新的物理地址; 建立所述邏輯地址與新的虛擬地址及新的物理地址的映射關(guān)系。
3.根據(jù)權(quán)利要求1或2所述的固態(tài)硬盤的垃圾回收方法,其特征在于,所述將回收處理的第一數(shù)據(jù)塊的有效數(shù)據(jù)搬移到第二數(shù)據(jù)塊步驟與所述復(fù)寫所述被搬移的有效數(shù)據(jù)的邏輯地址步驟同時(shí)執(zhí)行。
【文檔編號(hào)】G06F12/08GK103744798SQ201310695546
【公開日】2014年4月23日 申請(qǐng)日期:2013年12月17日 優(yōu)先權(quán)日:2013年12月17日
【發(fā)明者】陳均杰 申請(qǐng)人:記憶科技(深圳)有限公司