[發(fā)明專利]一種避免數(shù)據(jù)重復(fù)回收的方法、裝置及固態(tài)硬盤有效
| 申請?zhí)枺?/td> | 201810053009.7 | 申請日: | 2018-01-19 |
| 公開(公告)號: | CN108170614B | 公開(公告)日: | 2022-01-11 |
| 發(fā)明(設(shè)計)人: | 陳湖廣;彭鵬;姜黎 | 申請(專利權(quán))人: | 湖南國科微電子股份有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 北京弘權(quán)知識產(chǎn)權(quán)代理有限公司 11363 | 代理人: | 逯長明;許偉群 |
| 地址: | 410100 湖南省長*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 避免 數(shù)據(jù) 重復(fù) 回收 方法 裝置 固態(tài) 硬盤 | ||
本發(fā)明提供一種避免數(shù)據(jù)重復(fù)回收的方法、裝置及固態(tài)硬盤,方法包括:實時更新存儲于緩存芯片中的映射關(guān)系緩存表,記錄數(shù)據(jù)塊更新的數(shù)據(jù)位置;根據(jù)映射關(guān)系緩存表更新存儲于閃存芯片中的映射關(guān)系表,將數(shù)據(jù)塊更新的數(shù)據(jù)位置下刷至閃存芯片;在主機再次上電時,根據(jù)映射關(guān)系表、主機寫數(shù)據(jù)塊中最后一次更新的數(shù)據(jù)位置,回收寫數(shù)據(jù)塊中最后一次更新的數(shù)據(jù)位置,重建緩存芯片中存儲的映射關(guān)系表。本申請在寫操作后,實時更新映射關(guān)系緩存表,以免目標(biāo)塊寫滿后再更新映射關(guān)系緩存表而延長數(shù)據(jù)更新周期,另外,本申請通過記錄所述數(shù)據(jù)塊更新的數(shù)據(jù)位置,能夠在重建映射關(guān)系緩存表時,確定寫入數(shù)據(jù)的先后順序,從而確保映射關(guān)系緩存表重建的準(zhǔn)確性。
技術(shù)領(lǐng)域
本公開涉及固態(tài)硬盤技術(shù)領(lǐng)域,尤其涉及一種避免數(shù)據(jù)重復(fù)回收的方法、裝置及固態(tài)硬盤。
背景技術(shù)
SSD(Solid State Drives,固態(tài)硬盤)因其較低的讀寫延遲和較高的帶寬,已廣泛應(yīng)用于高性能存儲系統(tǒng)中。請參考圖1,所示為一種常見的固態(tài)硬盤的結(jié)構(gòu)示意圖。由圖1可見,固態(tài)硬盤500的控制部分為控制芯片200,控制芯片200內(nèi)部的CPU 201負(fù)責(zé)SSD內(nèi)各個硬件模塊的總體調(diào)度控制以及與主機100的通訊;固態(tài)硬盤500的存儲空間包括緩存芯片300(如DRAM)和閃存芯片400(如Nand flash)兩大部分,其中,緩存芯片300屬于動態(tài)存儲,其讀寫訪問速度較快,可用于數(shù)據(jù)的緩存和中轉(zhuǎn),當(dāng)固態(tài)硬盤500下電以后,緩存芯片300存儲的數(shù)據(jù)便會丟失;閃存芯片400可用于長久保存主機寫下來的數(shù)據(jù),相對于緩存芯片300,閃存芯片400的存儲速率較慢,但下電后閃存芯片400存儲的數(shù)據(jù)不會丟失。
閃存芯片400不支持原位置重寫,在數(shù)據(jù)改寫時只能寫到其他位置,使得之前塊上的數(shù)據(jù)變?yōu)闊o效數(shù)據(jù),比如,需要改寫塊5上數(shù)據(jù)時,則必須將該數(shù)據(jù)遷移到其他塊(如塊3)上,遷移后,主機會直接讀取塊3上對應(yīng)的數(shù)據(jù),塊5上的數(shù)據(jù)則變?yōu)闊o效數(shù)據(jù),無效數(shù)據(jù)會占用閃存芯片400的存儲空間,降低閃存芯片400的空間利用率。為此,固態(tài)硬盤500會定期進(jìn)行數(shù)據(jù)回收,將已經(jīng)寫滿的一個或多個數(shù)據(jù)塊(稱為源塊)上的有效數(shù)據(jù)搬移到另外一個數(shù)據(jù)塊(稱為目標(biāo)塊)中,并更新緩存芯片300中存儲的該數(shù)據(jù)的邏輯地址與物理地址的映射關(guān)系,以便主機能夠根據(jù)最新的映射關(guān)系進(jìn)行數(shù)據(jù)的讀取。通過數(shù)據(jù)回收可以將幾個源塊中的有效數(shù)據(jù)組合寫入一個目標(biāo)塊上,然后釋放之前的源塊,從而獲得更多的可寫空間,節(jié)約存儲容量,提高存儲空間利用率。
主機寫數(shù)據(jù)與數(shù)據(jù)的回收是交替進(jìn)行的。對于回收的數(shù)據(jù),通常需要寫滿一個目標(biāo)塊以后,再釋放數(shù)據(jù)源塊并更新映射關(guān)系,當(dāng)主機寫滿預(yù)設(shè)個數(shù)的數(shù)據(jù)塊以后,再將最新的映射關(guān)系表下刷至閃存芯片400中長久保存。在目標(biāo)塊未寫滿時,由于更新映射關(guān)系未更新,因此主機讀取的已被回收的數(shù)據(jù),實際上讀到的是源塊上的數(shù)據(jù)。由以上數(shù)據(jù)回收過程可見,如果主機在目標(biāo)塊未寫滿時發(fā)生掉電,那么在下次上電起來時,由于回收數(shù)據(jù)的映射關(guān)系沒有更新,即回收數(shù)據(jù)未指向目標(biāo)塊,因此,目標(biāo)塊中的回收數(shù)據(jù)會被視為無效數(shù)據(jù),而被擦除掉,掉電之前已經(jīng)寫入目標(biāo)塊的數(shù)據(jù)需要進(jìn)行重新回收。
發(fā)明內(nèi)容
本發(fā)明實施例中提供了一種避免數(shù)據(jù)重復(fù)回收的方法、裝置及固態(tài)硬盤,以解決現(xiàn)有技術(shù)中,主機在目標(biāo)塊未寫滿的情況下發(fā)生掉電時,需要對已經(jīng)寫入目標(biāo)塊的數(shù)據(jù)進(jìn)行重新回收的問題。
本發(fā)明提供一種避免數(shù)據(jù)重復(fù)回收的方法,包括:
在閃存芯片中的數(shù)據(jù)塊寫入數(shù)據(jù);
實時更新存儲于緩存芯片中的映射關(guān)系緩存表,并記錄所述數(shù)據(jù)塊更新的數(shù)據(jù)位置,所述映射關(guān)系緩存表包括存儲于閃存芯片中的數(shù)據(jù)的邏輯地址與物理地址的映射關(guān)系,并記錄所述數(shù)據(jù)塊的編號和類型,所述數(shù)據(jù)塊的類型包括主機寫數(shù)據(jù)塊和回收寫數(shù)據(jù)塊,所述數(shù)據(jù)塊的編號用于標(biāo)示主機寫數(shù)據(jù)或者回收寫數(shù)據(jù)所占用的數(shù)據(jù)塊的順序;
判斷所述映射關(guān)系緩存表是否滿足預(yù)設(shè)的下刷條件;
如果滿足,則根據(jù)所述映射關(guān)系緩存表更新存儲于閃存芯片中的映射關(guān)系表,并將所述數(shù)據(jù)塊更新的數(shù)據(jù)位置下刷至閃存芯片;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于湖南國科微電子股份有限公司,未經(jīng)湖南國科微電子股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810053009.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





