麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

聚集靜態數據的方法及其固態硬盤的制作方法

文檔序號:6363049閱讀:346來源:國知局
專利名稱:聚集靜態數據的方法及其固態硬盤的制作方法
技術領域
本發明涉及存儲技術領域,尤其涉及一種聚集靜態數據的方法及其固態硬盤。
背景技術
在大容量的SSD (solid state disk,固態硬盤)中,在 DRAM (Dynamic Random Access Memory,動態隨機存取存儲器)足夠的前提下,一般會采用頁映射作為地址映射方式。即用頁映射表記錄每個邏輯頁地址到物理頁地址的映射關系,并在SSD加電運行過程中,將頁映射表存儲在DRAM中;此外為了提高讀寫速度,采用多通道的并行讀寫技術,為此將SSD劃分成多個數據區,每個數據區對應一個讀寫通道。其中,每個數據區分為多個數據塊,每個數據塊分為多個數據頁。參見圖1,該圖I表示了在上述描述的現有技術前提下,一個寫命令中的數據在經過閃存轉換層FTL (Flash Translation Layer,閃存轉換層)的地址解析之后,被寫入各個數據區不同數據塊的不同數據頁中。同時所述數據所占據的邏輯頁地址與其實際被寫入的物理頁地址的對應關系也被記錄在頁映射表中。在頁映射的管理時,如果當前的邏輯頁地址已經映射到某個物理頁地址,先要置當前物理頁地址無效,然后將所述邏輯頁地址映射到新的物理頁。即對邏輯頁地址進行“覆蓋寫”。當多個邏輯頁地址被循環重復“覆蓋寫”后,會產生許多的無效物理頁,空閑塊也會減少。這時需要垃圾回收機制回收無效的物理頁。但是在一個數據塊中,并不是所有的數據頁都是無效的。所以在頁映射中,垃圾回收機制的選擇策略以貪心策略為主,選擇無效物理頁最多的數據塊。垃圾回收機制將選定的數據塊中的有效數據讀出,并寫入新的空閑的物理頁中。待被選定的數據塊中所有有效數據被寫入到新的物理頁,即目標數據塊的所有物理頁都變成無效后,將數據塊擦除,數據塊由此變成了空閑塊,并且擦除次數增加I。另外,現有的一些靜態磨損均衡策略通過數據塊的某屬性值或多個屬性的綜合值作為靜態數據的衡量標準。由于使用數據塊的屬性值,所以這些靜態磨損均衡策略的最小操作單元是數據塊。例如,根據統計塊擦除次數判斷數據塊內存儲的是否為靜態數據。如果是靜態數據,就通過一個中間數據塊交換擦除次數最大和最小的兩個數據塊中的數據。如上述的垃圾回收和靜態磨損均衡策略,一個數據塊要在相當長的一段時間內維持足夠多得有效數據頁數量,才能避免被垃圾回收選中,直到被損耗均衡識別成為靜態數據塊。這要求數據在寫入時,靜態數據以一種相對集中的方式聚集在數據塊中,而不是零散地散布在各個數據塊中。因為最小操作單元是數據塊,以數據塊的屬性代表整個塊內所有數據頁,所以數據塊內數據頁要保持高度的一致性。如上述圖I表述的地址解析的策略,從命令角度看,同一個命令的數據被寫入不同區的不同數據塊中。從數據塊角度看,一個數據塊中可能有分屬多個命令的數據。通常情況下,屬于同一個命令的數據的相關性比較強,一個數據塊內如果有分屬多個命令的數據,特別是隨機寫時,塊內數據所有數據頁就很難保持一致性,此時用數據塊的屬性表征塊內所有數據頁的屬性就不是很準確。參見圖2,假設某一個數據區的數據塊A中有分屬于三個寫命令的數據,其中只有一份數據是靜態數據。在使用過程中,其它兩份數據所占據的邏輯地址很快被“覆蓋寫”, 它們所占據的物理地址也被置為無效,數據塊A的有效數據頁數量就是那唯一的一份靜態數據,但是由于靜態數據比較少,不足以使數據塊A不被垃圾回收選中。被垃圾回收選中之后,數據塊A中有效的靜態的數據被搬移到新的數據塊B中,與其它有效數據組成一個新的數據塊。如果恰恰如圖2所示,數據塊B中也只有剛剛從數據塊A中搬移來的數據是靜態數據,那么與剛才情景類似,數據塊B也被垃圾回收選中,靜態數據再次被搬移到數據塊C。 如此反復,直到這份靜態數據被搬移到一個數據塊N中,數據塊N中的靜態數據所占據的頁面數量足以避免數據塊N被垃圾回收選中。這份靜態數據才停止其漫長的旅行。圖2中有效數據頁經過長途的搬移后,達到數據塊N,數據塊N中灰色部分表示的多個靜態數據的存儲。因此,由于損耗均衡識別靜態數據的顆粒度是數據塊,無法在更小的顆粒度一數據頁層面識別靜態數據,導致因多通道并行寫入而分散開的、零散的靜態數據無法再次被集中起來,被垃圾回收一次又一次的搬移,而這種搬移是不必要的,可以避免的。綜上可知,現有的靜態數據的聚集技術在實際使用上,顯然存在不便與缺陷,所以有必要加以改進。

發明內容
針對上述的缺陷,本發明的目的在于提供一種聚集靜態數據的方法及其固態硬盤,以聚集固態硬盤中零散分布的靜態數據,避免了零散分布的靜態數據被垃圾回收而頻繁搬移,降低固態硬盤的寫放大。為了實現上述目的,本發明提供一種聚集靜態數據的方法,所述方法包括如下步驟設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。根據所述的聚集靜態數據的方法,所述設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數的步驟包括根據所述固態硬盤的容量,設置所述固態硬盤的頁映射表中的物理頁地址的索引位數;所述索引位數滿足所述物理頁地址的索引需要;將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。根據所述的聚集靜態數據的方法,所述在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據的步驟包括在對所述邏輯頁地址中的數據執行垃圾回收操作,且所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊,所述冗余位數的計數值加I;或者在對所述邏輯頁地址中的數據執行垃圾回收操作,且所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊,所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,所述冗余位數的計數值清零。根據所述的聚集靜態數據的方法,在所述設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數的步驟之前或者之后還包括對所述第二組物理區塊設置標識;以及根據所述固態硬盤的容量,設置所述有效數據被垃圾回收搬移的次數的最大值;在對所述邏輯頁地址中的數據執行垃圾回收操作時,所述第二組物理塊不被作為所述垃圾回收操作的對象。根據所述的聚集靜態數據的方法,在所述冗余位數的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據;所述預設的參考值小于所述最大值。為了實現上述另一發明目的,本發明還提供了一種固態硬盤,所述固態硬盤包括第一設置模塊,用于設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;有效數據搬移模塊,用于在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據;有效數據搬移次數計數器,用于采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數。根據所述的固態硬盤,所述第一設置模塊包括索引位數設置子模塊,用于根據所述固態硬盤的容量,設置所述固態硬盤的頁映射表中的物理頁地址的索引位數;所述索引位數滿足所述物理頁地址的索引需要;冗余位數設置子模塊,用于將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。根據所述的固態硬盤,所述有效數據搬移模塊包括第一有效數據搬移子模塊,用于在對所述邏輯頁地址中的有效數據執行垃圾回收操作,且所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊;所述有效數據搬移次數計數器將所述冗余位數的計數值加I ;第二有效數據搬移子模塊,用于在對所述邏輯頁地址中的有效數據執行垃圾回收操作,且所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊;所述有效數據搬移次數計數器將所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,所述有效數據搬移次數計數器將冗余位數的計數
值清零。根據所述的固態硬盤,所述固態硬盤還包括
標識模塊,用于對所述第二組物理區塊設置標識;以及第二設置模塊,用于根據所述固態硬盤的容量,設置所述有效數據被垃圾回收搬移的次數的最大值;在對所述邏輯頁地址中的有效數據執行垃圾回收操作時,所述第二組物理塊不被作為所述垃圾回收操作的對象。根據所述的固態硬盤,在所述有效數據搬移次數計數器的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據;所述預設的參考值小于所述最大值。本發明通過設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;然后在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。由于在映射表的每個表項的冗余區中引入GC COUNT,用GC COUNT大小表示頁內有效數據靜態屬性,從有效數據頁的顆粒度上識別靜態有效數據,達到零散分布的靜態有效數據集中到一起,從而避免了零散分布的靜態有效數據被垃圾回收頻繁搬移,降低了寫放大,提高了固態硬盤的性能。


圖I是現有技術中固態硬盤的數據存儲示意圖;圖2是現有技術中固態硬盤的數據搬移示意圖;圖3是本發明第一實施例中固態硬盤的結構示意圖;圖4是本發明第二、第三實施例中固態硬盤的結構示意圖;圖5是本發明第四實施例中固態硬盤的結構示意圖;圖6是本發明第五實施例中聚集靜態數據的方法流程圖。
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。參見圖3,本發明的第一實施例提供了一種固態硬盤100,固態硬盤100包括第一設置模塊10,用于設置固態硬盤100的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;有效數據搬移模塊20,用于在對所述邏輯頁地址中的數據執行垃圾回收操作時, 根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據;有效數據搬移次數計數器30,用于采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數。在該實施例中,通過第一設置模塊10設置固態硬盤100的頁映射表中的物理頁地址的索引位數及冗余位數,其中有效數據搬移次數計數器30采用冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;該數值越大則表明該邏輯頁地址內的數據是靜態數據的可能性越大。然后,有效數據搬移模塊20根據該冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值對有效數據進行搬移。由于在該實施例中,冗余位數作為GC COUNT (move count by garbage collection,有效數據被垃圾回收搬移次數的計數器),用GC COUNT大小表示頁內數據靜態屬性,從數據頁面的顆粒度上識別靜態數據。因此,可以根據這些有效數據知道邏輯頁地址內的靜態數據的情況,有效數據搬移模塊20對這些靜態有效數據進行合適的搬移存儲。使固態硬盤100中零散的靜態數據可以聚集到預先設置的存儲區域內。方便固態硬盤100對靜態數據進行進一步的處理。 另外,引入的GC COUNT占據映射表項的冗余區,不增加額外的儲存空間。因此不會給固態硬盤100的運行帶來負擔。參見圖4,在本發明的第二實施例中,第一設置模塊10包括索引位數設置子模塊11,用于根據固態硬盤100的容量,設置固態硬盤100的頁映射表中的物理頁地址的索引位數;冗余位數設置子模塊12,用于將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。在該實施例中,索引位數設置子模塊11根據固態硬盤100的容量設置固態硬盤 100的頁映射表中的物理頁地址的索引位數,該索引位數需要滿足固態硬盤100中的所述物理頁地址的索引需要;冗余位數設置子模塊12將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數,采用該冗余位數表示邏輯地址頁的有效數據被移動的次數。具體的,以LPA(邏輯頁地址,Logical Page Address)作為頁映射表的下標索引, 頁映射表的每一表項為32位,存儲PPA (Physical Page Address,物理頁地址),該位數受到固態閃存存儲器的容量影響。以固態硬盤100的容量不大于ITB為例,28位足夠索引SSD 的所有物理頁地址,剩余的冗余的4位數用來表示該邏輯頁地址中的數據被垃圾回收機制搬移次數(GC COUNT)。于是,將頁映射表的每個表項設計成高4位表征GC COUNT,低28位表征物理頁地址。參見圖4,在本發明的第三實施例中,有效數據搬移模塊20包括第一有效數據搬移子模塊21,用于在對所述邏輯頁地址中的數據執行垃圾回收操作,且所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊;所述有效數據搬移次數計數器30將所述冗余位數的計數值加I ;第二有效數據搬移子模塊22,用于在對所述邏輯頁地址中的有效數據執行垃圾回收操作,且所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊;所述有效數據搬移次數計數器30將所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,有效數據搬移次數計數器30將冗余位數的計數值清零。在該實施例中,所述冗余位數的計數值具有預設的最大值,在固態硬盤100執行垃圾回收操作時,所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,第一有效數據搬移子模塊21將所述邏輯頁地址中的有效數據寫入第一組物理區塊,所述冗余位數的計數值加I。而在所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,第二有效數據搬移子模塊22將所述邏輯頁地址中的有效數據寫入第二組物理區塊,所述冗余位數的計數值清零。根據所述冗余位數的計數值可以明確的知道邏輯頁地址中靜態數據在該頁中的存儲狀況。在有效數據搬移次數計數器30的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據;所述預設的參考值小于所述最大值。該計數值越大則說明其中數據是靜態數據的可能性越大,在計數值達到最大值時,可以認定該邏輯頁地址中存儲的是靜態數據;或者通過預設的參考值,如該參考值為最大值的80%,認定該邏輯頁地址中存儲的是靜態數據。并將這些靜態數據存儲于預先設置的存儲區域。另外,在邏輯頁地址被覆蓋寫時,有效數據搬移次數計數器30將所述冗余位數的計數值清零,重新開始對所述邏輯頁地址內有效數據搬移次數計數。參見圖5,在本發明的第四實施例中,固態硬盤100還包括標識模塊40,用于對所述第二組物理區塊設置標識;以及第二設置模塊50,用于根據固態硬盤100的容量,設置所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值;另外,第二設置模塊50還可以用于設置上一實施例中的所述參考值。在對所述邏輯頁地址中的有效數據執行垃圾回收操作時,所述第二組物理塊不被作為所述垃圾回收操作的對象。在該實施例中,第二組物理區塊由標識模塊40進行標識,在固態硬盤100執行垃圾回收操作時,由于第二組物理區塊進行了特別的標識,其將不被執行垃圾回收的操作。而在該第二組物理區塊中的靜態數據則是由固態硬盤100各處零散收集而來的。第二設置模塊50設置有效數據被垃圾回收搬移的次數的最大值,該最大值根據固態硬盤100的存儲容量,以及其所需要達到的存儲性能所決定。在本發的一個優選實施例中,固態硬盤100的容量小于等于IT時;所述頁映射表包括32位數,所述物理頁地址的索引位數為28位,所述冗余位數為4位;所述有效數據被垃圾回收搬移的次數的最大值為15 ;而該最大值,也可以是10、8等。只是4位二進制數表示最大的十進制數為15。或者固態硬盤100的容量小于等于256G時;所述頁映射表包括32位數,所述物理頁地址的索引位數為26位,所述冗余位數為6位;所述有效數據被垃圾回收搬移的次數的最大值為63。當然也可以為其他,根據固態硬盤100的具體情況,例如固態硬盤100數據的存儲要求,以及固態硬盤100的容量大小等設置。參見圖6,在本發明的第五實施例中,提供一種聚集靜態數據的方法,所述方法包括如下步驟步驟S601中,第一設置模塊10設置固態硬盤100的頁映射表中的物理頁地址的索引位數及冗余位數;有效數據搬移次數計數器30采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;步驟S602中,有效數據搬移模塊20在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。
該實施例中,提供了一種在多通道讀寫和頁映射機制下,將零散分布的靜態數據重新聚集起來的方法,該方法有利于垃圾回收,降低寫放大。優選的,以邏輯頁地址作為頁映射表的下標索引,與之對應的頁映射的表項先滿足索引固態閃存存儲器所有物理空間的需要,在剩余的冗余位中引入表征該邏輯頁被垃圾回收搬移的次數。并且在垃圾回收的目標塊的選擇策略在各種最大化、最優化垃圾回收效率的策略基礎上,將有效數據進行適當的存儲,以達到將零散分布的靜態有效數據重新聚集的目的。在本發明的第六實施例中,步驟S601包括第一設置模塊10根據固態硬盤100的容量,設置固態硬盤100的頁映射表中的物理頁地址的索引位數;所述索引位數滿足所述物理頁地址的索引需要;冗余位數設置子模塊12將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。在該實施例中,根據固態硬盤100具體的容量設置索引位數和冗余位數。具體的, 固態硬盤100的容量小于等于IT時;所述頁映射表包括32位數,所述物理頁地址的索引位數為28位,所述冗余位數為4位;所述有效數據被垃圾回收搬移的次數的最大值為15 ;或
者固態硬盤100的容量小于等于256G時;所述頁映射表包括32位數,所述物理頁地址的索引位數為26位,所述冗余位數為6位;所述有效數據被垃圾回收搬移的次數的最大值為63。當然還可以是其他的數值設置,在此只做一個舉例。在本發明的第七實施例中,步驟S602包括第一有效數據搬移子模塊21在對所述邏輯頁地址中的有效數據執行垃圾回收操作,所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊,所述冗余位數的計數值加I ; 或者第二有效數據搬移子模塊22在對所述邏輯頁地址中的有效數據執行垃圾回收操作,所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊,所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,所述冗余位數的計數值清零。在固態硬盤100執行垃圾回收時,根據GC COUNT將有效頁搬移到不同的寫入點, 以達到重新聚集零散分布的靜態有效數據的目的。維護兩個不同的有效數據寫入點,即第一組物理區塊和第二組物理區塊。垃圾回收時在具體搬移某一邏輯頁地址的有效數據時, 根據GC COUNT值大小決定將其搬移到第一組物理區塊或者第二組物理區塊。以及在所述邏輯頁地址被覆蓋寫后,有效數據搬移次數計數器30將冗余位數的計數值清零。在本發明的第八實施例中,步驟S601之前或者之后還包括標識模塊40對所述第二組物理區塊設置標識;以及第二設置模塊50根據固態硬盤100的容量,設置所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值;在對所述邏輯頁地址中的有效數據執行垃圾回收操作時,所述第二組物理區塊不被作為所述垃圾回收操作的對象。
第二組物理區塊被標記后,有此標記的第二組物理區塊不會作為垃圾回收選擇對象。當邏輯頁地址被“覆蓋寫”時,GC COUNT清O;垃圾回收操作中,在搬移某一個邏輯頁地址內有效數據時,首先檢查以此邏輯頁地址為索引的頁映射表項的高四位,即GC COUNT值的大小,如果大于預先設定某一預設的最大值則將其搬移到第二組物理區塊,有效數據搬移次數計數器30清O ;反之,搬移到第一組物理區塊,有效數據搬移次數計數器30加I。在所述冗余位數的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據。將邏輯頁地址中的有效數據認定為有效數據后,可以將該邏輯頁地址進行標識,以方便固態硬盤100對其存儲的數據進行處理。綜上所述,本發明通過設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;然后在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。由于在映射表的每個表項的冗余區中引入GC COUNT,用GC COUNT大小表示頁內有效數據靜態屬性,從有效數據頁的顆粒度上識別靜態有效數據,達到零散分布的靜態有效數據集中到一起,從而避免了零散分布的靜態有效數據被垃圾回收頻繁搬移,降低了寫放大,提高了固態硬盤的性能。當然,本發明還可有其它多種實施例,在不背離本發明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發明所附的權利要求的保護范圍。
1權利要求
1.一種聚集靜態數據的方法,其特征在于,所述方法包括如下步驟設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。
2.根據權利要求I所述的聚集靜態數據的方法,其特征在于,所述設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數的步驟包括根據所述固態硬盤的容量,設置所述固態硬盤的頁映射表中的物理頁地址的索引位數;所述索引位數滿足所述物理頁地址的索引需要;將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。
3.根據權利要求I或2所述的聚集靜態數據的方法,其特征在于,所述在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據的步驟包括在對所述邏輯頁地址中的數據執行垃圾回收操作,且所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊,所述冗余位數的計數值加I ;或者在對所述邏輯頁地址中的數據執行垃圾回收操作,且所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊,所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,所述冗余位數的計數值清零。
4.根據權利要求3所述的聚集靜態數據的方法,其特征在于,在所述設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數的步驟之前或者之后還包括對所述第二組物理區塊設置標識;以及根據所述固態硬盤的容量,設置所述有效數據被垃圾回收搬移的次數的最大值;在對所述邏輯頁地址中的數據執行垃圾回收操作時,所述第二組物理塊不被作為所述垃圾回收操作的對象。
5.根據權利要求I所述的聚集靜態數據的方法,其特征在于,在所述冗余位數的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據;所述預設的參考值小于所述最大值。
6.一種固態硬盤,其特征在于,所述固態硬盤包括第一設置模塊,用于設置固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;有效數據搬移模塊,用于在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據;有效數據搬移次數計數器,用于采用所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數。
7.根據權利要求6所述的固態硬盤,其特征在于,所述第一設置模塊包括索引位數設置子模塊,用于根據所述固態硬盤的容量,設置所述固態硬盤的頁映射表中的物理頁地址的索引位數;所述索引位數滿足所述物理頁地址的索引需要;冗余位數設置子模塊,用于將所述頁映射表剩余的位數全部或者部分設置為所述冗余位數。
8.根據權利要求6或7所述的固態硬盤,其特征在于,所述有效數據搬移模塊包括 第一有效數據搬移子模塊,用于在對所述邏輯頁地址中的有效數據執行垃圾回收操作,且所述冗余位數的計數值未達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第一組物理區塊;所述有效數據搬移次數計數器將所述冗余位數的計數值加I ;第二有效數據搬移子模塊,用于在對所述邏輯頁地址中的有效數據執行垃圾回收操作,且所述冗余位數的計數值達到所述預設的所述有效數據被垃圾回收搬移的次數的最大值時,將所述邏輯頁地址中的有效數據寫入第二組物理區塊;所述有效數據搬移次數計數器將所述冗余位數的計數值清零;或者在所述邏輯頁地址被覆蓋寫后,所述有效數據搬移次數計數器將冗余位數的計數值清零。
9.根據權利要求8所述的固態硬盤,其特征在于,所述固態硬盤還包括標識模塊,用于對所述第二組物理區塊設置標識;以及第二設置模塊,用于根據所述固態硬盤的容量,設置所述有效數據被垃圾回收搬移的次數的最大值;在對所述邏輯頁地址中的有效數據執行垃圾回收操作時,所述第二組物理塊不被作為所述垃圾回收操作的對象。
10.根據權利要求6所述的固態硬盤,其特征在于,在所述有效數據搬移次數計數器的計數值達到所述最大值,或者達到預設的參考值時,所述邏輯頁地址中的有效數據為靜態數據;所述預設的參考值小于所述最大值。
全文摘要
本發明適用于存儲技術領域,提供了一種聚集靜態數據的方法及其固態硬盤,所述方法包括如下步驟設置所述固態硬盤的頁映射表中的物理頁地址的索引位數及冗余位數;所述冗余位數計數所述頁映射表中邏輯頁地址中的有效數據被垃圾回收搬移的次數;在對所述邏輯頁地址中的數據執行垃圾回收操作時,根據所述冗余位數的計數值和預設的所述有效數據被垃圾回收搬移的次數的最大值,搬移所述邏輯頁地址中的有效數據。借此,本發明實現了聚集固態硬盤中零散分布的靜態數據,避免了零散分布的靜態數據被垃圾回收而頻繁搬移,降低了固態硬盤的寫放大。
文檔編號G06F12/02GK102609358SQ20121000868
公開日2012年7月25日 申請日期2012年1月12日 優先權日2012年1月12日
發明者張劉松, 張志青, 張星, 王猛 申請人:記憶科技(深圳)有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 南阳市| 肇州县| 衡水市| 孟州市| 阿鲁科尔沁旗| 聂荣县| 鸡东县| 远安县| 定南县| 上虞市| 彭山县| 翁牛特旗| 保康县| 满城县| 栾川县| 新蔡县| 合江县| 双牌县| 积石山| 常德市| 保定市| 怀安县| 元朗区| 宕昌县| 阳信县| 成安县| 八宿县| 桓台县| 邯郸市| 建湖县| 安陆市| 宜州市| 洛南县| 武安市| 永州市| 吉水县| 阿瓦提县| 青海省| 抚远县| 黑龙江省| 东港市|