国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      數(shù)據(jù)存儲裝置及其操作方法與流程

      文檔序號:11250804閱讀:2094來源:國知局
      數(shù)據(jù)存儲裝置及其操作方法與流程

      相關(guān)申請的交叉引用

      本申請要求于2016年3月7日向韓國知識產(chǎn)權(quán)局提交的申請?zhí)枮?0-2016-0027151的韓國申請的優(yōu)先權(quán),其全文通過引用并入本文。

      各個實施例總體涉及包括作為存儲介質(zhì)的非易失性存儲器裝置的數(shù)據(jù)存儲裝置。



      背景技術(shù):

      最近,計算機環(huán)境范式已經(jīng)轉(zhuǎn)變?yōu)槠者m計算使得計算機系統(tǒng)可隨時隨地被使用。由于此,例如移動電話、數(shù)碼相機和筆記本電腦的便攜式電子裝置的使用已經(jīng)迅速增加。通常,這些便攜式電子裝置使用利用了存儲器裝置的數(shù)據(jù)存儲裝置。數(shù)據(jù)存儲裝置被用于存儲待被用于便攜式電子裝置中的數(shù)據(jù)。

      由于沒有機械驅(qū)動部件,使用存儲器裝置的數(shù)據(jù)存儲裝置具有以下優(yōu)點:優(yōu)良的穩(wěn)定性和耐久性、高信息存取速度和低功耗。具有這些優(yōu)點的數(shù)據(jù)存儲裝置包括通用串行總線(usb)存儲器裝置、具有各種接口的存儲卡、通用閃速存儲(ufs)裝置和固態(tài)驅(qū)動器(ssd)。



      技術(shù)實現(xiàn)要素:

      各個實施例涉及數(shù)據(jù)存儲裝置的操作方法,其能夠根據(jù)有效頁面分布特征值(distributioncharacteristic)優(yōu)化垃圾收集操作。

      在實施例中,用于操作數(shù)據(jù)存儲裝置的方法可以包括:確定與應(yīng)當(dāng)被保護的空存儲塊的最小數(shù)量成正比并且與表示使用存儲塊的有效頁面被分布的狀態(tài)的使用存儲塊的有效頁面分布特征值成反比的觸發(fā)值;在當(dāng)前空存儲塊的數(shù)量大于觸發(fā)值的情況下,執(zhí)行垃圾收集操作第一垃圾收集吞吐量;以及在當(dāng)前空存儲塊的數(shù)量等于或小于觸發(fā)值的情況下,執(zhí)行垃圾收集操作第二垃圾收集吞吐量。

      在實施例中,用于操作數(shù)據(jù)存儲裝置的方法可以包括:確定使用存儲塊的有效頁面分布特征值;以及基于使用存儲塊的有效頁面分布特征值執(zhí)行垃圾收集操作。

      在實施例中,數(shù)據(jù)存儲裝置可以包括:存儲器裝置,其包括多個存儲塊;以及控制器,其適于確定在多個存儲塊中的使用存儲塊的有效頁面分布特征值,并且基于使用存儲塊的有效頁面分布特征值執(zhí)行垃圾收集操作。

      根據(jù)實施例,數(shù)據(jù)存儲裝置的垃圾收集操作可以被優(yōu)化,并因此數(shù)據(jù)存儲裝置的操作速度可以被提升。

      附圖說明

      圖1是示出根據(jù)本發(fā)明的實施例的數(shù)據(jù)存儲裝置的框圖。

      圖2是示出根據(jù)本發(fā)明的實施例的圖1中所示的隨機存取存儲器中待被驅(qū)動的軟件的簡圖。

      圖3是示出根據(jù)本發(fā)明的實施例的由圖2的垃圾收集模塊執(zhí)行的垃圾收集操作的簡圖。

      圖4是示出根據(jù)本發(fā)明的實施例的垃圾收集操作的流程圖。

      圖5是示出根據(jù)本發(fā)明的實施例的其中數(shù)據(jù)被高效地寫入存儲塊中且因此觸發(fā)值較小的示例的簡圖。

      圖6是示出根據(jù)本發(fā)明的實施例的其中數(shù)據(jù)被低效地寫入存儲塊中且因此觸發(fā)值較大的示例的簡圖。

      圖7是示出根據(jù)本發(fā)明的實施例的第一和第二垃圾收集操作的簡圖。

      圖8是示出根據(jù)本發(fā)明的實施例的包括數(shù)據(jù)存儲裝置的數(shù)據(jù)處理系統(tǒng)的框圖。

      圖9是示出根據(jù)本發(fā)明的實施例的包括固態(tài)驅(qū)動器(ssd)的數(shù)據(jù)處理系統(tǒng)的框圖。

      圖10是示出根據(jù)本發(fā)明的實施例的圖9中所示的ssd控制器的示例性配置的框圖。

      圖11是示出根據(jù)本發(fā)明的實施例的包括數(shù)據(jù)存儲裝置的計算機系統(tǒng)的框圖。

      圖12是示出根據(jù)本發(fā)明的實施例的包括在數(shù)據(jù)存儲裝置中的非易失性存儲器裝置的框圖。

      具體實施方式

      在本發(fā)明中,在閱讀以下結(jié)合附圖的示例性實施例之后,本發(fā)明的優(yōu)點、特征及實現(xiàn)它們的方法將變得更顯而易見。然而,本發(fā)明可以不同的形式被呈現(xiàn)并且不應(yīng)被解釋為限于本文所闡述的實施例。相反,這些實施例被提供以充分詳細(xì)地描述本發(fā)明以使得本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員能夠?qū)嵤┍景l(fā)明。

      在此應(yīng)當(dāng)理解的是,本發(fā)明的實施例不限于附圖中所示出的細(xì)節(jié)并且附圖不一定按比例繪制并且在一些實例中,為了更清楚地描述本發(fā)明的某些特征,比例可能已經(jīng)被放大。盡管特定的術(shù)語被用于本文,但應(yīng)當(dāng)理解的是,本文所使用的術(shù)語只是為了描述特定的實施例而不是為了限定本發(fā)明的范圍。

      如本文所使用的,術(shù)語“和/或”包括一個或多個相關(guān)所列項目的任何和所有的組合。將被理解的是,當(dāng)元件被稱作“在另一個元件上”、“連接至”或“聯(lián)接至”另一個元件時,其可以直接在其它的元件上、連接或聯(lián)接至其它的元件或者中間元件可以存在。如本文所使用的,除非上下文清楚地另外表明,否則單數(shù)形式也旨在包括復(fù)數(shù)形式。將進一步理解的是,在本說明中使用的術(shù)語“包括”、“包括有”、“包含”和/或“包含有”說明至少一個所述特征、步驟、操作和/或元件的存在,但不排除其一個或多個其它的特征、步驟、操作和/或元件的存在或添加。

      在下文中,數(shù)據(jù)存儲裝置的操作方法將會參照附圖并通過實施例的各個示例進行描述。

      現(xiàn)在參照圖1,根據(jù)本發(fā)明的實施例的數(shù)據(jù)存儲裝置100被提供。

      根據(jù)圖1的實施例,數(shù)據(jù)存儲裝置100可以包括控制器200和非易失性存儲器裝置300??刂破?00可以包括控制單元210和隨機存取存儲器230。

      數(shù)據(jù)存儲裝置100可以存儲待被例如移動電話、mp3播放器、筆記本電腦、臺式電腦、游戲機、tv、車載信息娛樂系統(tǒng)等的主機裝置(未示出)訪問的數(shù)據(jù)。數(shù)據(jù)存儲裝置100也可以被稱作存儲器系統(tǒng)。

      根據(jù)與主機裝置電聯(lián)接的接口的協(xié)議,數(shù)據(jù)存儲裝置100可以被制成各種存儲裝置中的任意一種。例如,數(shù)據(jù)存儲裝置100可以被配置為各種存儲裝置中的任意一種,例如,固態(tài)驅(qū)動器,mmc、emmc、rs-mmc和微型-mmc形式的多媒體卡,sd、迷你-sd和微型-sd形式的安全數(shù)字卡,通用串行總線(usb)存儲裝置,通用閃速存儲(ufs)裝置,個人計算機存儲卡國際協(xié)會(pcmcia)卡類型存儲裝置,外圍組件互聯(lián)(pci)卡類型存儲裝置,高速pci(pci-e)卡類型存儲裝置,標(biāo)準(zhǔn)閃存(cf)卡,智能媒體卡和記憶棒等。

      數(shù)據(jù)存儲裝置100可以被制成例如堆疊封裝(pop)、系統(tǒng)級封裝(sip)、系統(tǒng)級芯片(soc)、多芯片封裝(mcp)、板上芯片(cob)、晶圓級制造封裝(wfp)和晶圓級堆疊封裝(wsp)的各種封裝中的任意一種。

      控制單元210可以驅(qū)動編碼類型的指令或算法(例如軟件),并可以分析并處理從主機裝置輸入的請求。控制單元210可以通過存儲器控制單元(未示出)控制非易失性存儲器裝置300以處理來自主機裝置的請求。

      隨機存取存儲器230可以存儲待被控制單元210驅(qū)動的軟件。而且,隨機存取存儲器230可以存儲軟件的驅(qū)動所必需的數(shù)據(jù),例如元數(shù)據(jù)。即,隨機存取存儲器230可以作為控制單元210的工作存儲器操作。隨機存取存儲器230可以臨時存儲待被從主機裝置傳輸至非易失性存儲器裝置300或從非易失性存儲器裝置300傳輸至主機裝置的數(shù)據(jù)。換言之,隨機存取存儲器230可以作為數(shù)據(jù)緩沖存儲器或者數(shù)據(jù)高速緩沖存儲器操作。

      非易失性存儲器裝置300可以作為數(shù)據(jù)存儲裝置100的存儲介質(zhì)操作。非易失性存儲器裝置300可以由例如nand閃速存儲器裝置、nor閃速存儲器裝置、使用鐵電電容的鐵電隨機存取存儲器(fram)、使用隧道磁阻(tmr)層的磁性隨機存取存儲器(mram)、使用硫系合金的相變隨機存取存儲器(pcram)以及使用過渡金屬氧化物的電阻隨機存取存儲器(reram)的各種非易失性存儲器裝置中的任意一種配置。鐵電隨機存取存儲器(fram)、磁性隨機存取存儲器(mram)、相變隨機存取存儲器(pcram)以及電阻隨機存取存儲器(reram)是能夠隨機訪問存儲器單元的非易失性隨機存取存儲器。非易失性存儲器裝置300可以被nand閃速存儲器裝置與上述各種非易失性隨機存取存儲器裝置的結(jié)合配置。在下文的描述中,由nand閃速存儲器裝置配置的非易失性存儲器裝置300(在下文中被稱作閃速存儲器裝置)將會被例示。

      閃速存儲器裝置300可以包括存儲器單元區(qū)域310。存儲器單元區(qū)域310可以包括多個存儲塊。多個存儲塊的每個可以包括多個頁面。從操作的角度或物理的(或結(jié)構(gòu)的)角度來看,包括在存儲器單元區(qū)域310中的存儲器單元可以被配置成分層存儲器單元組或存儲器單元單元(memorycellunit)。例如,被聯(lián)接至相同字線并且待被同時讀取和寫入(或編程)的存儲器單元可以被配置成頁面p。在下文的描述中,為便于解釋,被配置成頁面p的存儲器單元將被稱作“頁面”。而且,待被同時擦除的存儲器單元可以被配置成存儲塊b。

      在下文的描述中,例如,存儲器區(qū)域310被8個存儲塊b1至b8配置。而且,也作為一個示例,存儲塊b1至b8的每個被示為包括4個頁面p1至p4。存儲塊和頁面的數(shù)量可以在不脫離本發(fā)明的范圍的情況下通過設(shè)計改變。

      圖2是示出根據(jù)本發(fā)明的實施例的圖1中所示的隨機存取存儲器230中待被驅(qū)動的軟件示例的簡圖。

      數(shù)據(jù)存儲裝置100的控制單元210可以驅(qū)動被稱作閃存轉(zhuǎn)換層ftl的軟件以控制閃速存儲器裝置300的至少一個固有操作并為主機裝置提供裝置兼容性。通過閃存轉(zhuǎn)換層ftl的驅(qū)動,數(shù)據(jù)存儲裝置100可被主機裝置識別為一般的數(shù)據(jù)存儲裝置,例如硬盤。

      負(fù)載于隨機存取存儲器230上的閃存轉(zhuǎn)換層ftl可以由用于執(zhí)行各種功能的模塊和驅(qū)動模塊所需要的元數(shù)據(jù)配置。例如,如圖2所示,閃存轉(zhuǎn)換層ftl可以包括地址映射表map、損耗均衡模塊wlm、壞塊管理模塊bbm和垃圾收集模塊gcm。閃存轉(zhuǎn)換層ftl的配置不限于上述模塊,并且可以進一步包括模塊,例如用于并行操作多個閃速存儲器裝置300的交錯模塊、用于管理意外斷電的突然斷電管理模塊和在相關(guān)領(lǐng)域內(nèi)已知的其它模塊。

      在主機裝置訪問數(shù)據(jù)存儲裝置100(例如,請求讀取操作或?qū)懭氩僮?的情況下,主機裝置可以將邏輯地址提供至數(shù)據(jù)存儲裝置100。閃存轉(zhuǎn)換層ftl可以將提供的邏輯地址轉(zhuǎn)換為閃速存儲器裝置300的物理地址,并通過參照被轉(zhuǎn)換的物理地址執(zhí)行被請求的操作。為了使這個地址轉(zhuǎn)換操作被執(zhí)行,地址轉(zhuǎn)換數(shù)據(jù)(例如地址映射表map)可以被包括在閃存轉(zhuǎn)換層ftl中。

      損耗均衡模塊wlm可以管理閃速存儲器裝置300的存儲塊b1至b8的損耗水平。通過擦除操作和寫入操作,閃速存儲器裝置300的存儲器單元可能老化。老化的存儲器單元(即,損壞的存儲器單元)可能導(dǎo)致故障,諸如,例如物理缺陷。為了防止某個存儲塊比其它存儲塊損壞得更快,損耗均衡模塊wlm可以管理各自的存儲塊的擦除-寫入計數(shù),以這種方式達到均衡。

      壞塊管理模塊bbm可以管理在閃速存儲器裝置300的存儲塊b1至b8中已經(jīng)出現(xiàn)故障的存儲塊。如上所述,諸如例如物理缺陷的故障可出現(xiàn)在損壞的存儲器單元中。存儲在故障的存儲器單元中的數(shù)據(jù)不可以被正常讀出。此外,數(shù)據(jù)不可以被正常存儲在故障的存儲器單元中。壞塊管理模塊bbm可以管理包括故障存儲器單元的存儲塊,以這種方式使其不被使用。

      由于閃速存儲器裝置300的結(jié)構(gòu)特點,其不支持?jǐn)?shù)據(jù)的重寫。即,將數(shù)據(jù)存儲在已被寫入數(shù)據(jù)的存儲器單元中是不可能的。因此,為了將數(shù)據(jù)重寫入已被寫入數(shù)據(jù)的存儲器單元中,應(yīng)當(dāng)首先進行擦除操作。這也被稱作寫入前的擦除操作。

      閃速存儲器裝置300的擦除操作需要很長的時間。由于該原因,在擦除已被寫入數(shù)據(jù)的存儲器單元之后,控制單元210不將數(shù)據(jù)重寫入擦除的存儲器單元中。而是,控制單元210將待被寫入已被寫入數(shù)據(jù)的存儲器單元中的數(shù)據(jù)存儲在恢復(fù)至擦除狀態(tài)的存儲器單元中。通過控制單元210的該操作,有效數(shù)據(jù)和無效數(shù)據(jù)被混合在閃速存儲器裝置300中。視情況需要,控制單元210可以執(zhí)行將有效數(shù)據(jù)收集至一個地方并擦除無效數(shù)據(jù)的一系列操作(即,垃圾收集操作)。垃圾收集操作可以被稱為合并操作。

      垃圾收集模塊gcm可以對閃速存儲器裝置300的存儲塊b1至b8執(zhí)行垃圾收集操作,如圖3所示。垃圾收集模塊gcm可以執(zhí)行垃圾收集操作,同時執(zhí)行來自主機裝置的請求。另外,垃圾收集模塊gcm可以執(zhí)行垃圾收集操作,作為用于管理閃速存儲器裝置300的內(nèi)部操作,而不管來自主機裝置的請求。

      圖3示出根據(jù)本發(fā)明的實施例的由圖2的垃圾收集模塊gcm執(zhí)行的垃圾收集操作。

      根據(jù)圖3的實施例,沒有被寫入任何數(shù)據(jù)的存儲塊(例如,擦除的存儲塊)被定義為空塊eb。處于擦除狀態(tài)的空塊eb包括多個空頁面ep。已被寫入存儲在其中的一些數(shù)據(jù)的存儲塊被定義為使用塊ub。使用塊ub可以包括至少一個空頁面ep、有效數(shù)據(jù)被存儲在其中的至少一個頁面(下文中稱作有效頁面vp)和無效數(shù)據(jù)被存儲在其中的至少一個頁面(下文中稱作無效頁面ivp)。在使用存儲塊中,被確定為垃圾收集操作的目標(biāo)的存儲塊,即,待對其執(zhí)行垃圾收集操作的存儲塊被定義為棄置(victim)塊vb。

      在第一棄置塊vb1的頁面p1至p4中,有效頁面p3和p4(除了空頁面p1和p2以外)可以被分別復(fù)制到空塊eb1的空頁面p1和p2。而且,在第二棄置塊vb2的頁面p1至p4中,有效頁面p3和p4(除了無效頁面p1和p2以外)可以被分別復(fù)制到空塊eb1的空頁面p3和p4。復(fù)制有有效頁面的空塊eb1可以因此成為使用塊ub3。在有效頁面被復(fù)制之后,各自的棄置塊vb1和vb2可以被擦除并成為空塊eb2和eb3。

      垃圾收集(gc)操作包括將有效頁面vp從棄置塊vb復(fù)制到空塊eb的操作(即,寫入操作),和擦除棄置塊vb的操作。因此,垃圾收集(gc)操作可消耗控制器200的很多資源并且可需要很長的操作時間。因此,當(dāng)垃圾收集(gc)操作被執(zhí)行的時機或者垃圾收集(gc)操作所需要的時間被優(yōu)化時,數(shù)據(jù)存儲裝置100的操作速度可以被提升??商鎿Q地,當(dāng)垃圾收集(gc)操作被執(zhí)行的量,即垃圾收集(gc)執(zhí)行量或處理量(下文中稱為垃圾收集吞吐量)被優(yōu)化時,數(shù)據(jù)存儲裝置100的操作速度可被提升。

      圖4是示出根據(jù)本發(fā)明的實施例的垃圾收集操作的流程圖。

      根據(jù)圖4的實施例,由垃圾收集模塊(gcm)執(zhí)行的垃圾收集操作可以包括第一步驟(即,步驟s100)和第二步驟(即,步驟s200)。為了便于解釋,第一步驟將參照圖4至圖6進行描述,并且第二步驟將隨后參照圖4和圖7進行描述。

      第一步驟(即,步驟s100)可以是確定待被執(zhí)行的垃圾收集是何種類型的步驟。第一步驟(即,步驟s100)可以包括確定或計算觸發(fā)值tv的步驟s110以及根據(jù)觸發(fā)值tv確定待被執(zhí)行的垃圾收集的類型的步驟s120。

      在步驟s110中,觸發(fā)值tv(或確定參考值)可以被確定。觸發(fā)值tv可以如方程1計算。

      其中,為了提供用于性能提升的內(nèi)部操作所必需的空存儲器區(qū)域(例如,保留區(qū)域或過量供給區(qū)域),meb(下文中稱作最小的空塊)是空存儲塊的安全的最小數(shù)量。

      vpdc是存儲塊b1至b8的(或中的)有效頁面分布特征值,

      ubvpa是使用塊的有效頁面的平均值,以及

      nub是使用塊的數(shù)量。

      有效頁面分布特征值vpdc通過將使用塊的有效頁面的平均值(下文中稱作平均有效頁面)ubvpa除以使用塊的數(shù)量nub計算得出。有效頁面分布特征值vpdc可以與平均有效頁面ubvpa成正比。較小的有效頁面分布特征值vpdc意味著使用塊的平均有效頁面ubvpa較少。因此,較小的有效頁面分布特征值vpdc意味著數(shù)據(jù)被低效地寫入存儲塊中,即,數(shù)據(jù)通過被分散在許多存儲塊上而被寫入。相反地,較大的有效頁面分布特征值vpdc意味著使用塊的平均有效頁面ubvpa較多。因此,較大的有效頁面分布特征值vpdc意味著數(shù)據(jù)被高效地寫入存儲塊中,即,數(shù)據(jù)通過被集中在某些存儲塊上而被寫入。

      觸發(fā)值tv通過將最小空塊meb除以有效頁面分布特征值vpdc計算得出。觸發(fā)值tv與有效頁面分布特征值vpdc成反比。因此,如果有效頁面分布特征值vpdc增加,則觸發(fā)值tv下降。換言之,如果數(shù)據(jù)被高效地寫入到存儲塊中,則觸發(fā)值tv下降。相反地,如果有效頁面分布特征值vpdc下降,則觸發(fā)值tv增加。換言之,如果數(shù)據(jù)被低效地寫入到存儲塊中,則觸發(fā)值tv增加。

      由于觸發(fā)值tv根據(jù)有效頁面分布特征值vpdc確定,所以觸發(fā)值tv是指示數(shù)據(jù)是被高效地寫入還是被低效地寫入的信息。因此,觸發(fā)值tv可以被用作用于確定隨后待被執(zhí)行的垃圾收集的類型的參考值。

      即,在步驟s120中,可以作比較以確定當(dāng)前空塊的數(shù)量neb是否大于觸發(fā)值tv。根據(jù)比較空塊的數(shù)量neb和觸發(fā)值tv的結(jié)果,第一類型垃圾收集操作gc1或第二類型垃圾收集操作gc2可以被執(zhí)行。例如,在空塊的數(shù)量neb大于觸發(fā)值tv的情況下,進程可以進入到步驟s210,并且第一類型垃圾收集操作gc1可以被執(zhí)行。相反地,在空塊的數(shù)量neb等于或小于觸發(fā)值tv的情況下,進程可以進入到步驟s230,并且第二類型垃圾收集操作gc2可以被執(zhí)行。

      圖5是示出數(shù)據(jù)被高效地寫入到存儲塊中并且因此觸發(fā)值tv較小的情況的簡圖。作為示例,最小空塊meb被假定為“1”。

      根據(jù)圖5的實施例,空塊的數(shù)量neb可以被確定為三“3”,即,空塊b3、b4和b8。使用塊的數(shù)量nub可以被確定為“5”,即,使用塊b1、b2、b5、b6和b7。平均有效頁面ubvpa然后可以通過將使用塊b1、b2、b5、b6和b7的有效頁面的總數(shù)“10(=2+2+4+1+1)”除以使用塊的數(shù)量nub“5”而被確定為“2”。觸發(fā)值tv可以通過將最小空塊meb“1”除以有效頁面分布特征值vpdc“0.4”而被確定為“2.5”。

      因為空塊的數(shù)量neb“3”大于觸發(fā)值tv“2.5”,這意味著有效頁面更密集地集中于使用塊b1、b2、b5、b6和b7中。因為有效頁面更密集地集中在使用塊b1、b2、b5、b6和b7中,所以空塊eb比最小空塊meb更安全,并且由于該原因,沒有必要急于執(zhí)行垃圾收集操作。因此,在空塊的數(shù)量neb大于觸發(fā)值tv的情況下,其中非垃圾收集操作比垃圾收集操作被更密集地集中執(zhí)行的第一類型垃圾收集操作gc1被執(zhí)行。

      圖6是示出數(shù)據(jù)被低效地寫入到存儲塊中并且因此觸發(fā)值tv較大的情況的簡圖。作為示例,最小空塊meb被假定為“1”。

      根據(jù)圖6的實施例,空塊的數(shù)量neb可以被確定為“1”,即,空塊b8。使用塊的數(shù)量nub可以被確定為“7”,即,塊b1至b7。通過將使用塊b1至b7的有效頁面的總數(shù)“12(2+2+1+1+4+1+1)”除以使用塊的數(shù)量nub“7”,平均有效頁面ubvpa可以被確定為“1.71”。觸發(fā)值tv可以通過將最小空塊meb“1”除以有效頁面分布特征值vpdc“0.245”被確定為“4.08”。

      因為空塊的數(shù)量neb“1”等于或小于觸發(fā)值tv“4.08”,這意味著有效頁面被分散在使用塊b1至b7中的各處。因為有效頁面被分散在使用塊b1至b7中的各處,所以空塊eb沒有最小空塊meb安全,并且由于該原因,有必要急于執(zhí)行垃圾收集操作。因此,在空塊的數(shù)量neb等于或小于觸發(fā)值tv的情況下,其中垃圾收集操作比非垃圾收集操作被更密集地集中執(zhí)行的第二類型垃圾收集操作gc2可以被執(zhí)行。

      再次參照圖4,第二步驟(即,步驟s200)可以是執(zhí)行在第一步驟中確定的類型的垃圾收集操作垃圾收集吞吐量的步驟。第二步驟(即,步驟s200)可以包括其中第一類型垃圾收集操作gc1被執(zhí)行的步驟s210和其中第二類型垃圾收集操作gc2被執(zhí)行的步驟s230。

      其中第一類型垃圾收集操作gc1被執(zhí)行的步驟s210可以包括確定第一垃圾收集吞吐量gcth1的步驟s211和執(zhí)行垃圾收集操作第一垃圾收集吞吐量gcth1的步驟s213。

      在步驟s211中,第一垃圾收集吞吐量gcth1可以被確定。第一垃圾收集吞吐量gcth1可以按照方程2計算。

      其中,方程2中的縮寫詞的解釋如下。

      lpd意為由于垃圾收集操作被執(zhí)行而降低的性能的極限值(下文中稱作極限性能)。極限性能lpd用于限制垃圾收集吞吐量。換言之,極限性能lpd可以用于控制垃圾收集操作被執(zhí)行的比例以及非垃圾收集操作被執(zhí)行的比例。

      rgcth作為函數(shù)f(v)的變量意為被需要的垃圾收集吞吐量。所需要的垃圾收集吞吐量rgcth可以通過將棄置塊的有效頁面分布特征值vvpdc除以使用塊的有效頁面分布特征值vpdc計算得出。棄置塊的有效頁面分布特征值vvpdc通過將棄置塊的平均有效頁面vbvpa除以棄置塊的數(shù)量nvb計算得出。使用塊的有效頁面分布特征值vpdc通過將使用塊的平均有效頁面ubvpa除以使用塊的數(shù)量nub計算得出。

      假設(shè)棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,即,數(shù)據(jù)被低效地寫入棄置塊中并且數(shù)據(jù)被高效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作而獲得的收益通常較大。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較小程度,但空塊可以被容易地保護。因此,以如果棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,則垃圾收集操作被執(zhí)行至較小程度這樣的方式,所需要的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。

      假設(shè)棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,即,數(shù)據(jù)被高效地寫入棄置塊中并且數(shù)據(jù)被低效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作而獲得的收益可能較小。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較大程度,但空塊可能不被容易地保護。因此,以如果棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,則垃圾收集操作被執(zhí)行至較大程度這樣的方式,所需要的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。

      rub作為函數(shù)f(v)的另一個變量意為使用塊與總的存儲塊的比例。使用塊的比例rub通過將使用塊的數(shù)量nub除以總的塊的數(shù)量ntb計算得出。使用塊的比例rub用于通過變量rgcth控制被施加在函數(shù)f(v)上的影響。

      第一垃圾收集吞吐量gcth1可以根據(jù)極限性能lpd和函數(shù)f(v)被確定。因此,如圖7所示,第一垃圾收集吞吐量gcth1可以在極限性能lpd內(nèi)變化。盡管所需要的垃圾收集吞吐量由函數(shù)f(v)確定,但是垃圾收集吞吐量可以由極限性能lpd限定。換言之,通過極限性能lpd,非垃圾收集操作egc可以比垃圾收集操作gc更密集地被集中執(zhí)行。由于該原因,第一類型垃圾收集操作gc1可以被定義為其中非垃圾收集操作egc被執(zhí)行的比例高于垃圾收集操作gc被執(zhí)行的比例的垃圾收集操作。

      例如,非垃圾收集操作egc可以包括用于處理來自主機裝置的請求的操作,例如,閃速存儲器裝置300的讀取和寫入操作,到主機裝置的數(shù)據(jù)輸入操作/來自主機裝置的數(shù)據(jù)輸出操作等。非垃圾收集操作egc被執(zhí)行得越多,則數(shù)據(jù)存儲裝置100達到數(shù)據(jù)輸入/輸出量令人滿意的目標(biāo)吞吐量tgth變得越容易。

      其中第二類型垃圾收集操作gc2被執(zhí)行的步驟s230可以包括確定第二垃圾收集吞吐量gcth2的步驟s231和執(zhí)行垃圾收集操作第二垃圾收集吞吐量gcth2的步驟s233。

      在步驟s231中,第二垃圾收集吞吐量gcth2可以被確定。第二垃圾收集吞吐量gcth2可以按照方程3被計算。

      其中,方程3中的縮寫詞的解釋如下。

      rgcth作為函數(shù)f(v)的變量是所需要的垃圾收集吞吐量。所需的垃圾收集吞吐量rgcth通過將棄置塊的有效頁面分布特征值vvpdc除以使用塊的有效頁面分布特征值vpdc計算得出。棄置塊的有效頁面分布特征值vvpdc通過將棄置塊的平均有效頁面vbvpa除以棄置塊的數(shù)量nvb計算得出。使用塊的有效頁面分布特征值vpdc通過將使用塊的平均有效頁面ubvpa除以使用塊的數(shù)量nub計算得出。

      假設(shè)棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,即,數(shù)據(jù)被低效地寫入棄置塊中并且數(shù)據(jù)被高效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作所獲得的收益較大。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較小程度,但是空塊可以被容易保護。因此,以如果棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,則垃圾收集操作被執(zhí)行至較小程度這種方式,所需的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。

      假設(shè)棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,即,數(shù)據(jù)被高效地寫入棄置塊中并且數(shù)據(jù)被低效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作所獲得的收益可能較小。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較大程度,但是空塊可能不被容易保護。因此,以如果棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,則垃圾收集操作被執(zhí)行至較大程度這種方式,所需的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。

      rub是函數(shù)f(v)的另一個變量并且意為使用塊與總的存儲塊的比例。使用塊的比例rub通過將使用塊的數(shù)量nub除以總的塊的數(shù)量ntb計算得出。使用塊的比例rub用于通過變量rgcth控制被施加在函數(shù)f(v)上的影響。

      第二垃圾收集吞吐量gcth2可以根據(jù)函數(shù)f(v)被確定。因此,如圖7所示,第二垃圾收集吞吐量gcth2可以在目標(biāo)吞吐量tgth內(nèi)變化。即,為了保護空塊,盡管當(dāng)垃圾收集操作被執(zhí)行時沒有達到目標(biāo)吞吐量tgth,但垃圾收集操作gc仍可以更集中的方式被執(zhí)行第二垃圾收集吞吐量gcth2。由于該原因,第二類型垃圾收集操作gc2可以被定義為其中垃圾收集操作gc被執(zhí)行的比例高于非垃圾收集操作egc被執(zhí)行的比例的垃圾收集操作。

      圖8是示出根據(jù)本發(fā)明的實施例的包括數(shù)據(jù)存儲裝置1200的數(shù)據(jù)處理系統(tǒng)1000的框圖。

      根據(jù)圖8的實施例,數(shù)據(jù)處理系統(tǒng)1000可以包括主機裝置1100和數(shù)據(jù)存儲裝置1200。

      數(shù)據(jù)存儲裝置1200可以包括控制器1210和非易失性存儲器裝置1220。數(shù)據(jù)存儲裝置1200可以通過被聯(lián)接至例如移動電話、mp3播放器、筆記本電腦、臺式電腦、游戲機、tv、車載信息娛樂系統(tǒng)等的主機裝置1100而使用。數(shù)據(jù)存儲裝置1200也可以被稱作存儲器系統(tǒng)。

      控制器1210可以包括主機接口單元1211、控制單元1212、存儲器接口單元1213、隨機存取存儲器1214和錯誤校正碼(ecc)單元1215。

      控制單元1212可以響應(yīng)于來自主機裝置1100的請求控制控制器1210的一般操作。控制單元1212可以驅(qū)動用于控制非易失性存儲器裝置1220的固件或軟件。

      控制單元1212可以執(zhí)行上文參照圖4至圖7所描述的垃圾收集操作。因此,數(shù)據(jù)存儲裝置1200的垃圾收集操作可以被優(yōu)化,并因此數(shù)據(jù)存儲裝置1200的操作速度可以被提升。

      隨機存取存儲器1214可以被用作控制單元1212的工作存儲器。隨機存取存儲器1214可以被用作臨時存儲從非易失性存儲器裝置1220中讀取出的數(shù)據(jù)或主機裝置1100提供的數(shù)據(jù)的緩沖存儲器。

      主機接口單元1211可以連接主機裝置1100與控制器1210。例如,主機接口單元1211可以通過諸如通用串行總線(usb)協(xié)議、通用閃速存儲(ufs)協(xié)議、多媒體卡(mmc)協(xié)議、外圍組件互聯(lián)(pci)協(xié)議、高速pci(pci-e)協(xié)議、并行高級技術(shù)附件(pata)協(xié)議、串行高級技術(shù)附件(sata)協(xié)議、小型計算機系統(tǒng)接口(scsi)協(xié)議和串列scsi(sas)協(xié)議等多種接口協(xié)議中的一種與主機裝置1100通信。

      存儲器接口單元1213可以連接控制器1210與非易失性存儲器裝置1220。存儲器接口單元1213可以向非易失性存儲器裝置1220提供命令和地址。而且,存儲器接口單元1213可以與非易失性存儲器裝置1220交換數(shù)據(jù)。

      錯誤校正碼(ecc)單元1215可以ecc-編碼待被存儲在非易失性存儲器裝置1220中的數(shù)據(jù)。而且,錯誤校正碼(ecc)單元1215可以ecc-解碼從非易失性存儲器裝置1220中讀取出的數(shù)據(jù)。

      非易失性存儲器裝置1220可以被用作數(shù)據(jù)存儲裝置1200的存儲介質(zhì)。非易失性存儲器裝置1220可以包括多個非易失性存儲器芯片(或管芯)nvm_1至nvm_k。

      控制器1210和非易失性存儲器裝置1220可以被制成各種數(shù)據(jù)存儲裝置中的任意一種。例如,控制器1210和非易失性存儲器裝置1220可以被集成到一個半導(dǎo)體裝置中并且可以被制成mmc、emmc、rs-mmc和微型-mmc形式的多媒體卡,sd、迷你-sd和微型-sd形式的安全數(shù)字卡,通用串行總線(usb)存儲裝置,通用閃速存儲(ufs)裝置,個人計算機存儲卡國際協(xié)會(pcmcia)卡,標(biāo)準(zhǔn)閃存(cf)卡,智能媒體卡,記憶棒等中的任意一種。

      圖9是示出根據(jù)本發(fā)明的實施例的包括固態(tài)驅(qū)動器(ssd)2200的數(shù)據(jù)處理系統(tǒng)2000的框圖。

      根據(jù)圖9的實施例,數(shù)據(jù)處理系統(tǒng)2000可以包括主機裝置2100和固態(tài)驅(qū)動器(ssd)2200。

      ssd2200可以包括ssd控制器2210、緩沖存儲器裝置2220、非易失性存儲器裝置2231至223n、電源2240、信號連接器2250和電源連接器2260。

      ssd控制器2210可以響應(yīng)于來自主機裝置2100的請求訪問非易失性存儲器裝置2231至223n。

      緩沖存儲器裝置2220可以臨時存儲待被存儲在非易失性存儲器裝置2231至223n中的數(shù)據(jù)。而且,緩沖存儲器裝置2220可以臨時存儲從非易失性存儲器裝置2231至223n中讀取出的數(shù)據(jù)。在ssd控制器2210的控制下,被臨時存儲在緩沖存儲器裝置2220中的數(shù)據(jù)可以被傳輸至主機裝置2100或者非易失性存儲器裝置2231至223n。

      非易失性存儲器裝置2231至223n可以被用作ssd2200的存儲介質(zhì)。非易失性存儲器裝置2231至223n可以分別通過多個通道ch1至chn與ssd控制器2210聯(lián)接。一個或多個非易失性存儲器裝置可以被聯(lián)接至一個通道。被聯(lián)接至每個通道的非易失性存儲器裝置可以被聯(lián)接至相同的信號總線和數(shù)據(jù)總線。

      電源2240可以將通過電源連接器2260輸入的電力pwr提供至ssd2200的內(nèi)部。電源2240可以包括輔助電源2241。輔助電源2241可以供應(yīng)電力以使得ssd2200在發(fā)生突然斷電時被正常終止。輔助電源2241可以包括具有較大電容、能夠充電電力pwr的電容器。

      ssd控制器2210可以通過信號連接器2250與主機裝置2100交換信號sgl。信號sgl可以包括命令、地址和數(shù)據(jù)等。信號連接器2250可以根據(jù)主機裝置2100和ssd2200之間的接口方案由例如并行高級技術(shù)附件(pata)、串行高級技術(shù)附件(sata)、小型計算機系統(tǒng)接口(scsi)、串列scsi(sas)、外圍組件互聯(lián)(pci)、高速pci(pci-e)和通用閃速存儲(ufs)協(xié)議中的一個的連接器配置。

      圖10是示出圖9中所示的固態(tài)驅(qū)動器(ssd)控制器2210的示例性配置的框圖。

      根據(jù)圖10的實施例,ssd控制器2210可以包括存儲器接口單元2211、主機接口單元2212、錯誤校正碼(ecc)單元2213、控制單元2214和隨機存取存儲器(ram)2215。

      存儲器接口單元2211可以向非易失性存儲器裝置2231至223n提供例如命令和地址的控制信號。而且,存儲器接口單元2211可以與非易失性存儲器裝置2231至223n交換數(shù)據(jù)。在控制單元2214的控制下,存儲器接口單元2211可以將從緩沖存儲器裝置2220中傳輸?shù)臄?shù)據(jù)分散至各自的通道ch1至chn。而且,在控制單元2214的控制下,存儲器接口單元2211可以將從非易失性存儲器裝置2231至223n讀取出的數(shù)據(jù)傳輸至緩沖存儲器裝置2220。

      主機接口單元2212可以提供與和某協(xié)議對應(yīng)的主機裝置2100的連接。例如,主機接口單元2212可以通過并行高級技術(shù)附件(pata)、串行高級技術(shù)附件(sata)、小型計算機系統(tǒng)接口(scsi)、串列scsi(sas)、外圍組件互聯(lián)(pci)、高速pci(pci-e)和通用閃速存儲(ufs)協(xié)議中的一個與主機裝置2100通信。此外,主機接口單元2212可以執(zhí)行支持主機裝置2100的磁盤仿真功能以將ssd2200識別為硬盤驅(qū)動器(hdd)。

      控制單元2214可以分析并處理從主機裝置2100輸入的信號sgl??刂茊卧?214可以根據(jù)用于驅(qū)動ssd2200的固件或軟件控制緩沖存儲器裝置2220和非易失性存儲器裝置2231至223n的操作。隨機存取存儲器2215可被用作用于驅(qū)動固件或軟件的工作存儲器。

      控制單元2214可以執(zhí)行上文參照圖4至圖7所描述的垃圾收集操作。因此,ssd2200的垃圾收集操作可以被優(yōu)化,并因此ssd2200的操作速度可以被提升。

      在被存儲在緩沖存儲器裝置2220中的數(shù)據(jù)中,錯誤校正碼(ecc)單元2213可以產(chǎn)生待被傳輸至非易失性存儲器裝置2231至223n的奇偶校驗數(shù)據(jù)。產(chǎn)生的奇偶校驗數(shù)據(jù)可以和數(shù)據(jù)一起被存儲在非易失性存儲器裝置2231至223n中。錯誤校正碼(ecc)單元2213可以檢測從非易失性存儲器裝置2231至223n中讀取出的數(shù)據(jù)的錯誤。當(dāng)檢測的錯誤位于可校正的范圍內(nèi)時,錯誤校正碼(ecc)單元2213可以校正檢測的錯誤。

      圖11是示出根據(jù)本發(fā)明的實施例的包括數(shù)據(jù)存儲裝置3300的計算機系統(tǒng)3000的框圖。

      根據(jù)圖11的實施例,計算機系統(tǒng)3000可以包括被電聯(lián)接至系統(tǒng)總線3700的網(wǎng)絡(luò)適配器3100、中央處理單元(cpu)3200、數(shù)據(jù)存儲裝置3300、隨機存取存儲器(ram)3400、只讀存儲器(rom)3500和用戶接口3600。數(shù)據(jù)存儲裝置3300可以是圖1中所示的數(shù)據(jù)存儲裝置100、圖8中所示的數(shù)據(jù)存儲裝置1200或圖9中所示的ssd2200。

      網(wǎng)絡(luò)適配器3100可以提供計算機系統(tǒng)3000和外部網(wǎng)絡(luò)之間的連接。中央處理單元3200可以執(zhí)行用于驅(qū)動存在于ram3400處的操作系統(tǒng)或應(yīng)用程序的一般計算處理。

      數(shù)據(jù)存儲裝置3300可以存儲計算機系統(tǒng)3000內(nèi)所需的一般數(shù)據(jù)。例如,用于驅(qū)動計算機系統(tǒng)3000的操作系統(tǒng)、應(yīng)用程序、各種程序模塊、程序數(shù)據(jù)和用戶數(shù)據(jù)可以被存儲在數(shù)據(jù)存儲裝置3300中。

      ram3400可以被用作計算機系統(tǒng)3000的工作存儲器。一經(jīng)啟動,被從數(shù)據(jù)存儲裝置3300中讀取出的操作系統(tǒng)、應(yīng)用程序、各種程序模塊和驅(qū)動程序所需的程序數(shù)據(jù)可以被加載到ram3400上。在操作系統(tǒng)被驅(qū)動前激活的基本輸入/輸出系統(tǒng)(bios)可以被存儲在rom3500中。在計算機系統(tǒng)3000和用戶之間的信息交換可以通過用戶接口3600實現(xiàn)。

      圖12是示出根據(jù)本發(fā)明的實施例的包括在數(shù)據(jù)存儲裝置中的非易失性存儲器裝置300的框圖。

      根據(jù)圖12的實施例,非易失性存儲器裝置300可以包括存儲器單元陣列310、行解碼器320、列解碼器330、數(shù)據(jù)讀取/寫入塊340、電壓發(fā)生器350和控制邏輯360。

      存儲器單元陣列310可以包括被布置在字線wl1至wlm和位線bl1至bln彼此交叉的區(qū)域處的存儲器單元mc。

      行解碼器320可以通過字線wl1至wlm與存儲器單元陣列310聯(lián)接。行解碼器320可以根據(jù)控制邏輯360的控制來操作。行解碼器320可以解碼由外部裝置(未示出)提供的地址。行解碼器320可以基于解碼的結(jié)果選擇并驅(qū)動字線wl1至wlm。例如,行解碼器320可以將由電壓發(fā)生器350提供的字線電壓提供給字線wl1至wlm。

      數(shù)據(jù)讀取/寫入塊340可以通過位線bl1至bln與存儲器單元陣列310聯(lián)接。數(shù)據(jù)讀取/寫入塊340可以包括分別對應(yīng)于位線bl1至bln的讀取/寫入電路rw1至rwn。數(shù)據(jù)讀取/寫入塊340可以根據(jù)控制邏輯360的控制來操作。數(shù)據(jù)讀取/寫入塊340可以根據(jù)操作模式作為寫入驅(qū)動器或讀出放大器來操作。例如,數(shù)據(jù)讀取/寫入塊340可以作為將由外部裝置提供的數(shù)據(jù)在寫入操作中存儲在存儲器單元陣列310中的寫入驅(qū)動器來操作。又例如,數(shù)據(jù)讀取/寫入塊340可以作為在讀取操作中從存儲器單元陣列310中讀取出數(shù)據(jù)的讀出放大器來操作。

      列解碼器330可以根據(jù)控制邏輯360的控制來操作。列解碼器330可以解碼由外部裝置提供的地址?;诮獯a的結(jié)果,列解碼器330可以將分別對應(yīng)于位線bl1至bln的數(shù)據(jù)讀取/寫入塊340的讀取/寫入電路rw1至rwn與數(shù)據(jù)輸入/輸出線(或數(shù)據(jù)輸入/輸出緩沖區(qū))聯(lián)接。

      電壓發(fā)生器350可以產(chǎn)生待被用在非易失性存儲器裝置300的內(nèi)部操作中的電壓。由電壓發(fā)生器350產(chǎn)生的電壓可以被施加于存儲器單元陣列310的存儲器單元。例如,在編程操作中產(chǎn)生的編程電壓可以被施加于待對其執(zhí)行編程操作的存儲器單元的字線。又例如,在擦除操作中產(chǎn)生的擦除電壓可以被施加于待對其執(zhí)行擦除操作的存儲器單元的阱區(qū)。還例如,在讀取操作中產(chǎn)生的讀取電壓可以被施加于待對其執(zhí)行讀取操作的存儲器單元的字線。

      基于由外部裝置提供的控制信號,控制邏輯360可以控制非易失性存儲器裝置300的一般操作。例如,控制邏輯360可以控制非易失性存儲器裝置300的操作,例如,非易失性存儲器裝置300的讀取、寫入和擦除操作。

      還注意到,在一些實例中,除非另有明確說明,否則對于相關(guān)領(lǐng)域的技術(shù)人員將顯而易見的是,結(jié)合一個實施例所描述的特征或元件可以被單獨地使用或與另一個實施例的其它特征或元件相組合地使用。

      盡管各個實施例在上文中已經(jīng)被描述,但是本領(lǐng)域技術(shù)人員將要理解的是,所描述的實施例僅是示例。因此,本文所描述的數(shù)據(jù)存儲裝置的操作方法不應(yīng)限于所描述的實施例。對于相關(guān)領(lǐng)域內(nèi)的技術(shù)人員將是顯而易見的是,可以做出各種改變和變型而不脫離如權(quán)利要求所限定的本發(fā)明的精神和范圍。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1