相關(guān)申請(qǐng)的交叉引用
本申請(qǐng)要求于2016年3月7日向韓國知識(shí)產(chǎn)權(quán)局提交的申請(qǐng)?zhí)枮?0-2016-0027151的韓國申請(qǐng)的優(yōu)先權(quán),其全文通過引用并入本文。
各個(gè)實(shí)施例總體涉及包括作為存儲(chǔ)介質(zhì)的非易失性存儲(chǔ)器裝置的數(shù)據(jù)存儲(chǔ)裝置。
背景技術(shù):
最近,計(jì)算機(jī)環(huán)境范式已經(jīng)轉(zhuǎn)變?yōu)槠者m計(jì)算使得計(jì)算機(jī)系統(tǒng)可隨時(shí)隨地被使用。由于此,例如移動(dòng)電話、數(shù)碼相機(jī)和筆記本電腦的便攜式電子裝置的使用已經(jīng)迅速增加。通常,這些便攜式電子裝置使用利用了存儲(chǔ)器裝置的數(shù)據(jù)存儲(chǔ)裝置。數(shù)據(jù)存儲(chǔ)裝置被用于存儲(chǔ)待被用于便攜式電子裝置中的數(shù)據(jù)。
由于沒有機(jī)械驅(qū)動(dòng)部件,使用存儲(chǔ)器裝置的數(shù)據(jù)存儲(chǔ)裝置具有以下優(yōu)點(diǎn):優(yōu)良的穩(wěn)定性和耐久性、高信息存取速度和低功耗。具有這些優(yōu)點(diǎn)的數(shù)據(jù)存儲(chǔ)裝置包括通用串行總線(usb)存儲(chǔ)器裝置、具有各種接口的存儲(chǔ)卡、通用閃速存儲(chǔ)(ufs)裝置和固態(tài)驅(qū)動(dòng)器(ssd)。
技術(shù)實(shí)現(xiàn)要素:
各個(gè)實(shí)施例涉及數(shù)據(jù)存儲(chǔ)裝置的操作方法,其能夠根據(jù)有效頁面分布特征值(distributioncharacteristic)優(yōu)化垃圾收集操作。
在實(shí)施例中,用于操作數(shù)據(jù)存儲(chǔ)裝置的方法可以包括:確定與應(yīng)當(dāng)被保護(hù)的空存儲(chǔ)塊的最小數(shù)量成正比并且與表示使用存儲(chǔ)塊的有效頁面被分布的狀態(tài)的使用存儲(chǔ)塊的有效頁面分布特征值成反比的觸發(fā)值;在當(dāng)前空存儲(chǔ)塊的數(shù)量大于觸發(fā)值的情況下,執(zhí)行垃圾收集操作第一垃圾收集吞吐量;以及在當(dāng)前空存儲(chǔ)塊的數(shù)量等于或小于觸發(fā)值的情況下,執(zhí)行垃圾收集操作第二垃圾收集吞吐量。
在實(shí)施例中,用于操作數(shù)據(jù)存儲(chǔ)裝置的方法可以包括:確定使用存儲(chǔ)塊的有效頁面分布特征值;以及基于使用存儲(chǔ)塊的有效頁面分布特征值執(zhí)行垃圾收集操作。
在實(shí)施例中,數(shù)據(jù)存儲(chǔ)裝置可以包括:存儲(chǔ)器裝置,其包括多個(gè)存儲(chǔ)塊;以及控制器,其適于確定在多個(gè)存儲(chǔ)塊中的使用存儲(chǔ)塊的有效頁面分布特征值,并且基于使用存儲(chǔ)塊的有效頁面分布特征值執(zhí)行垃圾收集操作。
根據(jù)實(shí)施例,數(shù)據(jù)存儲(chǔ)裝置的垃圾收集操作可以被優(yōu)化,并因此數(shù)據(jù)存儲(chǔ)裝置的操作速度可以被提升。
附圖說明
圖1是示出根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)存儲(chǔ)裝置的框圖。
圖2是示出根據(jù)本發(fā)明的實(shí)施例的圖1中所示的隨機(jī)存取存儲(chǔ)器中待被驅(qū)動(dòng)的軟件的簡圖。
圖3是示出根據(jù)本發(fā)明的實(shí)施例的由圖2的垃圾收集模塊執(zhí)行的垃圾收集操作的簡圖。
圖4是示出根據(jù)本發(fā)明的實(shí)施例的垃圾收集操作的流程圖。
圖5是示出根據(jù)本發(fā)明的實(shí)施例的其中數(shù)據(jù)被高效地寫入存儲(chǔ)塊中且因此觸發(fā)值較小的示例的簡圖。
圖6是示出根據(jù)本發(fā)明的實(shí)施例的其中數(shù)據(jù)被低效地寫入存儲(chǔ)塊中且因此觸發(fā)值較大的示例的簡圖。
圖7是示出根據(jù)本發(fā)明的實(shí)施例的第一和第二垃圾收集操作的簡圖。
圖8是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)處理系統(tǒng)的框圖。
圖9是示出根據(jù)本發(fā)明的實(shí)施例的包括固態(tài)驅(qū)動(dòng)器(ssd)的數(shù)據(jù)處理系統(tǒng)的框圖。
圖10是示出根據(jù)本發(fā)明的實(shí)施例的圖9中所示的ssd控制器的示例性配置的框圖。
圖11是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)存儲(chǔ)裝置的計(jì)算機(jī)系統(tǒng)的框圖。
圖12是示出根據(jù)本發(fā)明的實(shí)施例的包括在數(shù)據(jù)存儲(chǔ)裝置中的非易失性存儲(chǔ)器裝置的框圖。
具體實(shí)施方式
在本發(fā)明中,在閱讀以下結(jié)合附圖的示例性實(shí)施例之后,本發(fā)明的優(yōu)點(diǎn)、特征及實(shí)現(xiàn)它們的方法將變得更顯而易見。然而,本發(fā)明可以不同的形式被呈現(xiàn)并且不應(yīng)被解釋為限于本文所闡述的實(shí)施例。相反,這些實(shí)施例被提供以充分詳細(xì)地描述本發(fā)明以使得本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員能夠?qū)嵤┍景l(fā)明。
在此應(yīng)當(dāng)理解的是,本發(fā)明的實(shí)施例不限于附圖中所示出的細(xì)節(jié)并且附圖不一定按比例繪制并且在一些實(shí)例中,為了更清楚地描述本發(fā)明的某些特征,比例可能已經(jīng)被放大。盡管特定的術(shù)語被用于本文,但應(yīng)當(dāng)理解的是,本文所使用的術(shù)語只是為了描述特定的實(shí)施例而不是為了限定本發(fā)明的范圍。
如本文所使用的,術(shù)語“和/或”包括一個(gè)或多個(gè)相關(guān)所列項(xiàng)目的任何和所有的組合。將被理解的是,當(dāng)元件被稱作“在另一個(gè)元件上”、“連接至”或“聯(lián)接至”另一個(gè)元件時(shí),其可以直接在其它的元件上、連接或聯(lián)接至其它的元件或者中間元件可以存在。如本文所使用的,除非上下文清楚地另外表明,否則單數(shù)形式也旨在包括復(fù)數(shù)形式。將進(jìn)一步理解的是,在本說明中使用的術(shù)語“包括”、“包括有”、“包含”和/或“包含有”說明至少一個(gè)所述特征、步驟、操作和/或元件的存在,但不排除其一個(gè)或多個(gè)其它的特征、步驟、操作和/或元件的存在或添加。
在下文中,數(shù)據(jù)存儲(chǔ)裝置的操作方法將會(huì)參照附圖并通過實(shí)施例的各個(gè)示例進(jìn)行描述。
現(xiàn)在參照?qǐng)D1,根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)存儲(chǔ)裝置100被提供。
根據(jù)圖1的實(shí)施例,數(shù)據(jù)存儲(chǔ)裝置100可以包括控制器200和非易失性存儲(chǔ)器裝置300??刂破?00可以包括控制單元210和隨機(jī)存取存儲(chǔ)器230。
數(shù)據(jù)存儲(chǔ)裝置100可以存儲(chǔ)待被例如移動(dòng)電話、mp3播放器、筆記本電腦、臺(tái)式電腦、游戲機(jī)、tv、車載信息娛樂系統(tǒng)等的主機(jī)裝置(未示出)訪問的數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置100也可以被稱作存儲(chǔ)器系統(tǒng)。
根據(jù)與主機(jī)裝置電聯(lián)接的接口的協(xié)議,數(shù)據(jù)存儲(chǔ)裝置100可以被制成各種存儲(chǔ)裝置中的任意一種。例如,數(shù)據(jù)存儲(chǔ)裝置100可以被配置為各種存儲(chǔ)裝置中的任意一種,例如,固態(tài)驅(qū)動(dòng)器,mmc、emmc、rs-mmc和微型-mmc形式的多媒體卡,sd、迷你-sd和微型-sd形式的安全數(shù)字卡,通用串行總線(usb)存儲(chǔ)裝置,通用閃速存儲(chǔ)(ufs)裝置,個(gè)人計(jì)算機(jī)存儲(chǔ)卡國際協(xié)會(huì)(pcmcia)卡類型存儲(chǔ)裝置,外圍組件互聯(lián)(pci)卡類型存儲(chǔ)裝置,高速pci(pci-e)卡類型存儲(chǔ)裝置,標(biāo)準(zhǔn)閃存(cf)卡,智能媒體卡和記憶棒等。
數(shù)據(jù)存儲(chǔ)裝置100可以被制成例如堆疊封裝(pop)、系統(tǒng)級(jí)封裝(sip)、系統(tǒng)級(jí)芯片(soc)、多芯片封裝(mcp)、板上芯片(cob)、晶圓級(jí)制造封裝(wfp)和晶圓級(jí)堆疊封裝(wsp)的各種封裝中的任意一種。
控制單元210可以驅(qū)動(dòng)編碼類型的指令或算法(例如軟件),并可以分析并處理從主機(jī)裝置輸入的請(qǐng)求。控制單元210可以通過存儲(chǔ)器控制單元(未示出)控制非易失性存儲(chǔ)器裝置300以處理來自主機(jī)裝置的請(qǐng)求。
隨機(jī)存取存儲(chǔ)器230可以存儲(chǔ)待被控制單元210驅(qū)動(dòng)的軟件。而且,隨機(jī)存取存儲(chǔ)器230可以存儲(chǔ)軟件的驅(qū)動(dòng)所必需的數(shù)據(jù),例如元數(shù)據(jù)。即,隨機(jī)存取存儲(chǔ)器230可以作為控制單元210的工作存儲(chǔ)器操作。隨機(jī)存取存儲(chǔ)器230可以臨時(shí)存儲(chǔ)待被從主機(jī)裝置傳輸至非易失性存儲(chǔ)器裝置300或從非易失性存儲(chǔ)器裝置300傳輸至主機(jī)裝置的數(shù)據(jù)。換言之,隨機(jī)存取存儲(chǔ)器230可以作為數(shù)據(jù)緩沖存儲(chǔ)器或者數(shù)據(jù)高速緩沖存儲(chǔ)器操作。
非易失性存儲(chǔ)器裝置300可以作為數(shù)據(jù)存儲(chǔ)裝置100的存儲(chǔ)介質(zhì)操作。非易失性存儲(chǔ)器裝置300可以由例如nand閃速存儲(chǔ)器裝置、nor閃速存儲(chǔ)器裝置、使用鐵電電容的鐵電隨機(jī)存取存儲(chǔ)器(fram)、使用隧道磁阻(tmr)層的磁性隨機(jī)存取存儲(chǔ)器(mram)、使用硫系合金的相變隨機(jī)存取存儲(chǔ)器(pcram)以及使用過渡金屬氧化物的電阻隨機(jī)存取存儲(chǔ)器(reram)的各種非易失性存儲(chǔ)器裝置中的任意一種配置。鐵電隨機(jī)存取存儲(chǔ)器(fram)、磁性隨機(jī)存取存儲(chǔ)器(mram)、相變隨機(jī)存取存儲(chǔ)器(pcram)以及電阻隨機(jī)存取存儲(chǔ)器(reram)是能夠隨機(jī)訪問存儲(chǔ)器單元的非易失性隨機(jī)存取存儲(chǔ)器。非易失性存儲(chǔ)器裝置300可以被nand閃速存儲(chǔ)器裝置與上述各種非易失性隨機(jī)存取存儲(chǔ)器裝置的結(jié)合配置。在下文的描述中,由nand閃速存儲(chǔ)器裝置配置的非易失性存儲(chǔ)器裝置300(在下文中被稱作閃速存儲(chǔ)器裝置)將會(huì)被例示。
閃速存儲(chǔ)器裝置300可以包括存儲(chǔ)器單元區(qū)域310。存儲(chǔ)器單元區(qū)域310可以包括多個(gè)存儲(chǔ)塊。多個(gè)存儲(chǔ)塊的每個(gè)可以包括多個(gè)頁面。從操作的角度或物理的(或結(jié)構(gòu)的)角度來看,包括在存儲(chǔ)器單元區(qū)域310中的存儲(chǔ)器單元可以被配置成分層存儲(chǔ)器單元組或存儲(chǔ)器單元單元(memorycellunit)。例如,被聯(lián)接至相同字線并且待被同時(shí)讀取和寫入(或編程)的存儲(chǔ)器單元可以被配置成頁面p。在下文的描述中,為便于解釋,被配置成頁面p的存儲(chǔ)器單元將被稱作“頁面”。而且,待被同時(shí)擦除的存儲(chǔ)器單元可以被配置成存儲(chǔ)塊b。
在下文的描述中,例如,存儲(chǔ)器區(qū)域310被8個(gè)存儲(chǔ)塊b1至b8配置。而且,也作為一個(gè)示例,存儲(chǔ)塊b1至b8的每個(gè)被示為包括4個(gè)頁面p1至p4。存儲(chǔ)塊和頁面的數(shù)量可以在不脫離本發(fā)明的范圍的情況下通過設(shè)計(jì)改變。
圖2是示出根據(jù)本發(fā)明的實(shí)施例的圖1中所示的隨機(jī)存取存儲(chǔ)器230中待被驅(qū)動(dòng)的軟件示例的簡圖。
數(shù)據(jù)存儲(chǔ)裝置100的控制單元210可以驅(qū)動(dòng)被稱作閃存轉(zhuǎn)換層ftl的軟件以控制閃速存儲(chǔ)器裝置300的至少一個(gè)固有操作并為主機(jī)裝置提供裝置兼容性。通過閃存轉(zhuǎn)換層ftl的驅(qū)動(dòng),數(shù)據(jù)存儲(chǔ)裝置100可被主機(jī)裝置識(shí)別為一般的數(shù)據(jù)存儲(chǔ)裝置,例如硬盤。
負(fù)載于隨機(jī)存取存儲(chǔ)器230上的閃存轉(zhuǎn)換層ftl可以由用于執(zhí)行各種功能的模塊和驅(qū)動(dòng)模塊所需要的元數(shù)據(jù)配置。例如,如圖2所示,閃存轉(zhuǎn)換層ftl可以包括地址映射表map、損耗均衡模塊wlm、壞塊管理模塊bbm和垃圾收集模塊gcm。閃存轉(zhuǎn)換層ftl的配置不限于上述模塊,并且可以進(jìn)一步包括模塊,例如用于并行操作多個(gè)閃速存儲(chǔ)器裝置300的交錯(cuò)模塊、用于管理意外斷電的突然斷電管理模塊和在相關(guān)領(lǐng)域內(nèi)已知的其它模塊。
在主機(jī)裝置訪問數(shù)據(jù)存儲(chǔ)裝置100(例如,請(qǐng)求讀取操作或?qū)懭氩僮?的情況下,主機(jī)裝置可以將邏輯地址提供至數(shù)據(jù)存儲(chǔ)裝置100。閃存轉(zhuǎn)換層ftl可以將提供的邏輯地址轉(zhuǎn)換為閃速存儲(chǔ)器裝置300的物理地址,并通過參照被轉(zhuǎn)換的物理地址執(zhí)行被請(qǐng)求的操作。為了使這個(gè)地址轉(zhuǎn)換操作被執(zhí)行,地址轉(zhuǎn)換數(shù)據(jù)(例如地址映射表map)可以被包括在閃存轉(zhuǎn)換層ftl中。
損耗均衡模塊wlm可以管理閃速存儲(chǔ)器裝置300的存儲(chǔ)塊b1至b8的損耗水平。通過擦除操作和寫入操作,閃速存儲(chǔ)器裝置300的存儲(chǔ)器單元可能老化。老化的存儲(chǔ)器單元(即,損壞的存儲(chǔ)器單元)可能導(dǎo)致故障,諸如,例如物理缺陷。為了防止某個(gè)存儲(chǔ)塊比其它存儲(chǔ)塊損壞得更快,損耗均衡模塊wlm可以管理各自的存儲(chǔ)塊的擦除-寫入計(jì)數(shù),以這種方式達(dá)到均衡。
壞塊管理模塊bbm可以管理在閃速存儲(chǔ)器裝置300的存儲(chǔ)塊b1至b8中已經(jīng)出現(xiàn)故障的存儲(chǔ)塊。如上所述,諸如例如物理缺陷的故障可出現(xiàn)在損壞的存儲(chǔ)器單元中。存儲(chǔ)在故障的存儲(chǔ)器單元中的數(shù)據(jù)不可以被正常讀出。此外,數(shù)據(jù)不可以被正常存儲(chǔ)在故障的存儲(chǔ)器單元中。壞塊管理模塊bbm可以管理包括故障存儲(chǔ)器單元的存儲(chǔ)塊,以這種方式使其不被使用。
由于閃速存儲(chǔ)器裝置300的結(jié)構(gòu)特點(diǎn),其不支持?jǐn)?shù)據(jù)的重寫。即,將數(shù)據(jù)存儲(chǔ)在已被寫入數(shù)據(jù)的存儲(chǔ)器單元中是不可能的。因此,為了將數(shù)據(jù)重寫入已被寫入數(shù)據(jù)的存儲(chǔ)器單元中,應(yīng)當(dāng)首先進(jìn)行擦除操作。這也被稱作寫入前的擦除操作。
閃速存儲(chǔ)器裝置300的擦除操作需要很長的時(shí)間。由于該原因,在擦除已被寫入數(shù)據(jù)的存儲(chǔ)器單元之后,控制單元210不將數(shù)據(jù)重寫入擦除的存儲(chǔ)器單元中。而是,控制單元210將待被寫入已被寫入數(shù)據(jù)的存儲(chǔ)器單元中的數(shù)據(jù)存儲(chǔ)在恢復(fù)至擦除狀態(tài)的存儲(chǔ)器單元中。通過控制單元210的該操作,有效數(shù)據(jù)和無效數(shù)據(jù)被混合在閃速存儲(chǔ)器裝置300中。視情況需要,控制單元210可以執(zhí)行將有效數(shù)據(jù)收集至一個(gè)地方并擦除無效數(shù)據(jù)的一系列操作(即,垃圾收集操作)。垃圾收集操作可以被稱為合并操作。
垃圾收集模塊gcm可以對(duì)閃速存儲(chǔ)器裝置300的存儲(chǔ)塊b1至b8執(zhí)行垃圾收集操作,如圖3所示。垃圾收集模塊gcm可以執(zhí)行垃圾收集操作,同時(shí)執(zhí)行來自主機(jī)裝置的請(qǐng)求。另外,垃圾收集模塊gcm可以執(zhí)行垃圾收集操作,作為用于管理閃速存儲(chǔ)器裝置300的內(nèi)部操作,而不管來自主機(jī)裝置的請(qǐng)求。
圖3示出根據(jù)本發(fā)明的實(shí)施例的由圖2的垃圾收集模塊gcm執(zhí)行的垃圾收集操作。
根據(jù)圖3的實(shí)施例,沒有被寫入任何數(shù)據(jù)的存儲(chǔ)塊(例如,擦除的存儲(chǔ)塊)被定義為空塊eb。處于擦除狀態(tài)的空塊eb包括多個(gè)空頁面ep。已被寫入存儲(chǔ)在其中的一些數(shù)據(jù)的存儲(chǔ)塊被定義為使用塊ub。使用塊ub可以包括至少一個(gè)空頁面ep、有效數(shù)據(jù)被存儲(chǔ)在其中的至少一個(gè)頁面(下文中稱作有效頁面vp)和無效數(shù)據(jù)被存儲(chǔ)在其中的至少一個(gè)頁面(下文中稱作無效頁面ivp)。在使用存儲(chǔ)塊中,被確定為垃圾收集操作的目標(biāo)的存儲(chǔ)塊,即,待對(duì)其執(zhí)行垃圾收集操作的存儲(chǔ)塊被定義為棄置(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的很多資源并且可需要很長的操作時(shí)間。因此,當(dāng)垃圾收集(gc)操作被執(zhí)行的時(shí)機(jī)或者垃圾收集(gc)操作所需要的時(shí)間被優(yōu)化時(shí),數(shù)據(jù)存儲(chǔ)裝置100的操作速度可以被提升??商鎿Q地,當(dāng)垃圾收集(gc)操作被執(zhí)行的量,即垃圾收集(gc)執(zhí)行量或處理量(下文中稱為垃圾收集吞吐量)被優(yōu)化時(shí),數(shù)據(jù)存儲(chǔ)裝置100的操作速度可被提升。
圖4是示出根據(jù)本發(fā)明的實(shí)施例的垃圾收集操作的流程圖。
根據(jù)圖4的實(shí)施例,由垃圾收集模塊(gcm)執(zhí)行的垃圾收集操作可以包括第一步驟(即,步驟s100)和第二步驟(即,步驟s200)。為了便于解釋,第一步驟將參照?qǐng)D4至圖6進(jìn)行描述,并且第二步驟將隨后參照?qǐng)D4和圖7進(jìn)行描述。
第一步驟(即,步驟s100)可以是確定待被執(zhí)行的垃圾收集是何種類型的步驟。第一步驟(即,步驟s100)可以包括確定或計(jì)算觸發(fā)值tv的步驟s110以及根據(jù)觸發(fā)值tv確定待被執(zhí)行的垃圾收集的類型的步驟s120。
在步驟s110中,觸發(fā)值tv(或確定參考值)可以被確定。觸發(fā)值tv可以如方程1計(jì)算。
其中,為了提供用于性能提升的內(nèi)部操作所必需的空存儲(chǔ)器區(qū)域(例如,保留區(qū)域或過量供給區(qū)域),meb(下文中稱作最小的空塊)是空存儲(chǔ)塊的安全的最小數(shù)量。
vpdc是存儲(chǔ)塊b1至b8的(或中的)有效頁面分布特征值,
ubvpa是使用塊的有效頁面的平均值,以及
nub是使用塊的數(shù)量。
有效頁面分布特征值vpdc通過將使用塊的有效頁面的平均值(下文中稱作平均有效頁面)ubvpa除以使用塊的數(shù)量nub計(jì)算得出。有效頁面分布特征值vpdc可以與平均有效頁面ubvpa成正比。較小的有效頁面分布特征值vpdc意味著使用塊的平均有效頁面ubvpa較少。因此,較小的有效頁面分布特征值vpdc意味著數(shù)據(jù)被低效地寫入存儲(chǔ)塊中,即,數(shù)據(jù)通過被分散在許多存儲(chǔ)塊上而被寫入。相反地,較大的有效頁面分布特征值vpdc意味著使用塊的平均有效頁面ubvpa較多。因此,較大的有效頁面分布特征值vpdc意味著數(shù)據(jù)被高效地寫入存儲(chǔ)塊中,即,數(shù)據(jù)通過被集中在某些存儲(chǔ)塊上而被寫入。
觸發(fā)值tv通過將最小空塊meb除以有效頁面分布特征值vpdc計(jì)算得出。觸發(fā)值tv與有效頁面分布特征值vpdc成反比。因此,如果有效頁面分布特征值vpdc增加,則觸發(fā)值tv下降。換言之,如果數(shù)據(jù)被高效地寫入到存儲(chǔ)塊中,則觸發(fā)值tv下降。相反地,如果有效頁面分布特征值vpdc下降,則觸發(fā)值tv增加。換言之,如果數(shù)據(jù)被低效地寫入到存儲(chǔ)塊中,則觸發(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的情況下,進(jìn)程可以進(jìn)入到步驟s210,并且第一類型垃圾收集操作gc1可以被執(zhí)行。相反地,在空塊的數(shù)量neb等于或小于觸發(fā)值tv的情況下,進(jìn)程可以進(jìn)入到步驟s230,并且第二類型垃圾收集操作gc2可以被執(zhí)行。
圖5是示出數(shù)據(jù)被高效地寫入到存儲(chǔ)塊中并且因此觸發(fā)值tv較小的情況的簡圖。作為示例,最小空塊meb被假定為“1”。
根據(jù)圖5的實(shí)施例,空塊的數(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”。
因?yàn)榭諌K的數(shù)量neb“3”大于觸發(fā)值tv“2.5”,這意味著有效頁面更密集地集中于使用塊b1、b2、b5、b6和b7中。因?yàn)橛行ы撁娓芗丶性谑褂脡Kb1、b2、b5、b6和b7中,所以空塊eb比最小空塊meb更安全,并且由于該原因,沒有必要急于執(zhí)行垃圾收集操作。因此,在空塊的數(shù)量neb大于觸發(fā)值tv的情況下,其中非垃圾收集操作比垃圾收集操作被更密集地集中執(zhí)行的第一類型垃圾收集操作gc1被執(zhí)行。
圖6是示出數(shù)據(jù)被低效地寫入到存儲(chǔ)塊中并且因此觸發(fā)值tv較大的情況的簡圖。作為示例,最小空塊meb被假定為“1”。
根據(jù)圖6的實(shí)施例,空塊的數(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”。
因?yàn)榭諌K的數(shù)量neb“1”等于或小于觸發(fā)值tv“4.08”,這意味著有效頁面被分散在使用塊b1至b7中的各處。因?yàn)橛行ы撁姹环稚⒃谑褂脡Kb1至b7中的各處,所以空塊eb沒有最小空塊meb安全,并且由于該原因,有必要急于執(zhí)行垃圾收集操作。因此,在空塊的數(shù)量neb等于或小于觸發(fā)值tv的情況下,其中垃圾收集操作比非垃圾收集操作被更密集地集中執(zhí)行的第二類型垃圾收集操作gc2可以被執(zhí)行。
再次參照?qǐng)D4,第二步驟(即,步驟s200)可以是執(zhí)行在第一步驟中確定的類型的垃圾收集操作垃圾收集吞吐量的步驟。第二步驟(即,步驟s200)可以包括其中第一類型垃圾收集操作gc1被執(zhí)行的步驟s210和其中第二類型垃圾收集操作gc2被執(zhí)行的步驟s230。
其中第一類型垃圾收集操作gc1被執(zhí)行的步驟s210可以包括確定第一垃圾收集吞吐量gcth1的步驟s211和執(zhí)行垃圾收集操作第一垃圾收集吞吐量gcth1的步驟s213。
在步驟s211中,第一垃圾收集吞吐量gcth1可以被確定。第一垃圾收集吞吐量gcth1可以按照方程2計(jì)算。
其中,方程2中的縮寫詞的解釋如下。
lpd意為由于垃圾收集操作被執(zhí)行而降低的性能的極限值(下文中稱作極限性能)。極限性能lpd用于限制垃圾收集吞吐量。換言之,極限性能lpd可以用于控制垃圾收集操作被執(zhí)行的比例以及非垃圾收集操作被執(zhí)行的比例。
rgcth作為函數(shù)f(v)的變量意為被需要的垃圾收集吞吐量。所需要的垃圾收集吞吐量rgcth可以通過將棄置塊的有效頁面分布特征值vvpdc除以使用塊的有效頁面分布特征值vpdc計(jì)算得出。棄置塊的有效頁面分布特征值vvpdc通過將棄置塊的平均有效頁面vbvpa除以棄置塊的數(shù)量nvb計(jì)算得出。使用塊的有效頁面分布特征值vpdc通過將使用塊的平均有效頁面ubvpa除以使用塊的數(shù)量nub計(jì)算得出。
假設(shè)棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,即,數(shù)據(jù)被低效地寫入棄置塊中并且數(shù)據(jù)被高效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作而獲得的收益通常較大。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較小程度,但空塊可以被容易地保護(hù)。因此,以如果棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,則垃圾收集操作被執(zhí)行至較小程度這樣的方式,所需要的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。
假設(shè)棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,即,數(shù)據(jù)被高效地寫入棄置塊中并且數(shù)據(jù)被低效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作而獲得的收益可能較小。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較大程度,但空塊可能不被容易地保護(hù)。因此,以如果棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,則垃圾收集操作被執(zhí)行至較大程度這樣的方式,所需要的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。
rub作為函數(shù)f(v)的另一個(gè)變量意為使用塊與總的存儲(chǔ)塊的比例。使用塊的比例rub通過將使用塊的數(shù)量nub除以總的塊的數(shù)量ntb計(jì)算得出。使用塊的比例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可以包括用于處理來自主機(jī)裝置的請(qǐng)求的操作,例如,閃速存儲(chǔ)器裝置300的讀取和寫入操作,到主機(jī)裝置的數(shù)據(jù)輸入操作/來自主機(jī)裝置的數(shù)據(jù)輸出操作等。非垃圾收集操作egc被執(zhí)行得越多,則數(shù)據(jù)存儲(chǔ)裝置100達(dá)到數(shù)據(jù)輸入/輸出量令人滿意的目標(biāo)吞吐量tgth變得越容易。
其中第二類型垃圾收集操作gc2被執(zhí)行的步驟s230可以包括確定第二垃圾收集吞吐量gcth2的步驟s231和執(zhí)行垃圾收集操作第二垃圾收集吞吐量gcth2的步驟s233。
在步驟s231中,第二垃圾收集吞吐量gcth2可以被確定。第二垃圾收集吞吐量gcth2可以按照方程3被計(jì)算。
其中,方程3中的縮寫詞的解釋如下。
rgcth作為函數(shù)f(v)的變量是所需要的垃圾收集吞吐量。所需的垃圾收集吞吐量rgcth通過將棄置塊的有效頁面分布特征值vvpdc除以使用塊的有效頁面分布特征值vpdc計(jì)算得出。棄置塊的有效頁面分布特征值vvpdc通過將棄置塊的平均有效頁面vbvpa除以棄置塊的數(shù)量nvb計(jì)算得出。使用塊的有效頁面分布特征值vpdc通過將使用塊的平均有效頁面ubvpa除以使用塊的數(shù)量nub計(jì)算得出。
假設(shè)棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,即,數(shù)據(jù)被低效地寫入棄置塊中并且數(shù)據(jù)被高效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作所獲得的收益較大。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較小程度,但是空塊可以被容易保護(hù)。因此,以如果棄置塊的有效頁面分布特征值vvpdc較小并且使用塊的有效頁面分布特征值vpdc較大,則垃圾收集操作被執(zhí)行至較小程度這種方式,所需的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。
假設(shè)棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,即,數(shù)據(jù)被高效地寫入棄置塊中并且數(shù)據(jù)被低效地寫入使用塊中。在這種情況下,通過執(zhí)行垃圾收集操作所獲得的收益可能較小。即,在這種情況下,盡管垃圾收集操作被執(zhí)行至較大程度,但是空塊可能不被容易保護(hù)。因此,以如果棄置塊的有效頁面分布特征值vvpdc較大并且使用塊的有效頁面分布特征值vpdc較小,則垃圾收集操作被執(zhí)行至較大程度這種方式,所需的垃圾收集吞吐量rgcth可以被設(shè)為與棄置塊的有效頁面分布特征值vvpdc成正比并且與使用塊的有效頁面分布特征值vpdc成反比。
rub是函數(shù)f(v)的另一個(gè)變量并且意為使用塊與總的存儲(chǔ)塊的比例。使用塊的比例rub通過將使用塊的數(shù)量nub除以總的塊的數(shù)量ntb計(jì)算得出。使用塊的比例rub用于通過變量rgcth控制被施加在函數(shù)f(v)上的影響。
第二垃圾收集吞吐量gcth2可以根據(jù)函數(shù)f(v)被確定。因此,如圖7所示,第二垃圾收集吞吐量gcth2可以在目標(biāo)吞吐量tgth內(nèi)變化。即,為了保護(hù)空塊,盡管當(dāng)垃圾收集操作被執(zhí)行時(shí)沒有達(dá)到目標(biāo)吞吐量tgth,但垃圾收集操作gc仍可以更集中的方式被執(zhí)行第二垃圾收集吞吐量gcth2。由于該原因,第二類型垃圾收集操作gc2可以被定義為其中垃圾收集操作gc被執(zhí)行的比例高于非垃圾收集操作egc被執(zhí)行的比例的垃圾收集操作。
圖8是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)存儲(chǔ)裝置1200的數(shù)據(jù)處理系統(tǒng)1000的框圖。
根據(jù)圖8的實(shí)施例,數(shù)據(jù)處理系統(tǒng)1000可以包括主機(jī)裝置1100和數(shù)據(jù)存儲(chǔ)裝置1200。
數(shù)據(jù)存儲(chǔ)裝置1200可以包括控制器1210和非易失性存儲(chǔ)器裝置1220。數(shù)據(jù)存儲(chǔ)裝置1200可以通過被聯(lián)接至例如移動(dòng)電話、mp3播放器、筆記本電腦、臺(tái)式電腦、游戲機(jī)、tv、車載信息娛樂系統(tǒng)等的主機(jī)裝置1100而使用。數(shù)據(jù)存儲(chǔ)裝置1200也可以被稱作存儲(chǔ)器系統(tǒng)。
控制器1210可以包括主機(jī)接口單元1211、控制單元1212、存儲(chǔ)器接口單元1213、隨機(jī)存取存儲(chǔ)器1214和錯(cuò)誤校正碼(ecc)單元1215。
控制單元1212可以響應(yīng)于來自主機(jī)裝置1100的請(qǐng)求控制控制器1210的一般操作??刂茊卧?212可以驅(qū)動(dòng)用于控制非易失性存儲(chǔ)器裝置1220的固件或軟件。
控制單元1212可以執(zhí)行上文參照?qǐng)D4至圖7所描述的垃圾收集操作。因此,數(shù)據(jù)存儲(chǔ)裝置1200的垃圾收集操作可以被優(yōu)化,并因此數(shù)據(jù)存儲(chǔ)裝置1200的操作速度可以被提升。
隨機(jī)存取存儲(chǔ)器1214可以被用作控制單元1212的工作存儲(chǔ)器。隨機(jī)存取存儲(chǔ)器1214可以被用作臨時(shí)存儲(chǔ)從非易失性存儲(chǔ)器裝置1220中讀取出的數(shù)據(jù)或主機(jī)裝置1100提供的數(shù)據(jù)的緩沖存儲(chǔ)器。
主機(jī)接口單元1211可以連接主機(jī)裝置1100與控制器1210。例如,主機(jī)接口單元1211可以通過諸如通用串行總線(usb)協(xié)議、通用閃速存儲(chǔ)(ufs)協(xié)議、多媒體卡(mmc)協(xié)議、外圍組件互聯(lián)(pci)協(xié)議、高速pci(pci-e)協(xié)議、并行高級(jí)技術(shù)附件(pata)協(xié)議、串行高級(jí)技術(shù)附件(sata)協(xié)議、小型計(jì)算機(jī)系統(tǒng)接口(scsi)協(xié)議和串列scsi(sas)協(xié)議等多種接口協(xié)議中的一種與主機(jī)裝置1100通信。
存儲(chǔ)器接口單元1213可以連接控制器1210與非易失性存儲(chǔ)器裝置1220。存儲(chǔ)器接口單元1213可以向非易失性存儲(chǔ)器裝置1220提供命令和地址。而且,存儲(chǔ)器接口單元1213可以與非易失性存儲(chǔ)器裝置1220交換數(shù)據(jù)。
錯(cuò)誤校正碼(ecc)單元1215可以ecc-編碼待被存儲(chǔ)在非易失性存儲(chǔ)器裝置1220中的數(shù)據(jù)。而且,錯(cuò)誤校正碼(ecc)單元1215可以ecc-解碼從非易失性存儲(chǔ)器裝置1220中讀取出的數(shù)據(jù)。
非易失性存儲(chǔ)器裝置1220可以被用作數(shù)據(jù)存儲(chǔ)裝置1200的存儲(chǔ)介質(zhì)。非易失性存儲(chǔ)器裝置1220可以包括多個(gè)非易失性存儲(chǔ)器芯片(或管芯)nvm_1至nvm_k。
控制器1210和非易失性存儲(chǔ)器裝置1220可以被制成各種數(shù)據(jù)存儲(chǔ)裝置中的任意一種。例如,控制器1210和非易失性存儲(chǔ)器裝置1220可以被集成到一個(gè)半導(dǎo)體裝置中并且可以被制成mmc、emmc、rs-mmc和微型-mmc形式的多媒體卡,sd、迷你-sd和微型-sd形式的安全數(shù)字卡,通用串行總線(usb)存儲(chǔ)裝置,通用閃速存儲(chǔ)(ufs)裝置,個(gè)人計(jì)算機(jī)存儲(chǔ)卡國際協(xié)會(huì)(pcmcia)卡,標(biāo)準(zhǔn)閃存(cf)卡,智能媒體卡,記憶棒等中的任意一種。
圖9是示出根據(jù)本發(fā)明的實(shí)施例的包括固態(tài)驅(qū)動(dòng)器(ssd)2200的數(shù)據(jù)處理系統(tǒng)2000的框圖。
根據(jù)圖9的實(shí)施例,數(shù)據(jù)處理系統(tǒng)2000可以包括主機(jī)裝置2100和固態(tài)驅(qū)動(dòng)器(ssd)2200。
ssd2200可以包括ssd控制器2210、緩沖存儲(chǔ)器裝置2220、非易失性存儲(chǔ)器裝置2231至223n、電源2240、信號(hào)連接器2250和電源連接器2260。
ssd控制器2210可以響應(yīng)于來自主機(jī)裝置2100的請(qǐng)求訪問非易失性存儲(chǔ)器裝置2231至223n。
緩沖存儲(chǔ)器裝置2220可以臨時(shí)存儲(chǔ)待被存儲(chǔ)在非易失性存儲(chǔ)器裝置2231至223n中的數(shù)據(jù)。而且,緩沖存儲(chǔ)器裝置2220可以臨時(shí)存儲(chǔ)從非易失性存儲(chǔ)器裝置2231至223n中讀取出的數(shù)據(jù)。在ssd控制器2210的控制下,被臨時(shí)存儲(chǔ)在緩沖存儲(chǔ)器裝置2220中的數(shù)據(jù)可以被傳輸至主機(jī)裝置2100或者非易失性存儲(chǔ)器裝置2231至223n。
非易失性存儲(chǔ)器裝置2231至223n可以被用作ssd2200的存儲(chǔ)介質(zhì)。非易失性存儲(chǔ)器裝置2231至223n可以分別通過多個(gè)通道ch1至chn與ssd控制器2210聯(lián)接。一個(gè)或多個(gè)非易失性存儲(chǔ)器裝置可以被聯(lián)接至一個(gè)通道。被聯(lián)接至每個(gè)通道的非易失性存儲(chǔ)器裝置可以被聯(lián)接至相同的信號(hào)總線和數(shù)據(jù)總線。
電源2240可以將通過電源連接器2260輸入的電力pwr提供至ssd2200的內(nèi)部。電源2240可以包括輔助電源2241。輔助電源2241可以供應(yīng)電力以使得ssd2200在發(fā)生突然斷電時(shí)被正常終止。輔助電源2241可以包括具有較大電容、能夠充電電力pwr的電容器。
ssd控制器2210可以通過信號(hào)連接器2250與主機(jī)裝置2100交換信號(hào)sgl。信號(hào)sgl可以包括命令、地址和數(shù)據(jù)等。信號(hào)連接器2250可以根據(jù)主機(jī)裝置2100和ssd2200之間的接口方案由例如并行高級(jí)技術(shù)附件(pata)、串行高級(jí)技術(shù)附件(sata)、小型計(jì)算機(jī)系統(tǒng)接口(scsi)、串列scsi(sas)、外圍組件互聯(lián)(pci)、高速pci(pci-e)和通用閃速存儲(chǔ)(ufs)協(xié)議中的一個(gè)的連接器配置。
圖10是示出圖9中所示的固態(tài)驅(qū)動(dòng)器(ssd)控制器2210的示例性配置的框圖。
根據(jù)圖10的實(shí)施例,ssd控制器2210可以包括存儲(chǔ)器接口單元2211、主機(jī)接口單元2212、錯(cuò)誤校正碼(ecc)單元2213、控制單元2214和隨機(jī)存取存儲(chǔ)器(ram)2215。
存儲(chǔ)器接口單元2211可以向非易失性存儲(chǔ)器裝置2231至223n提供例如命令和地址的控制信號(hào)。而且,存儲(chǔ)器接口單元2211可以與非易失性存儲(chǔ)器裝置2231至223n交換數(shù)據(jù)。在控制單元2214的控制下,存儲(chǔ)器接口單元2211可以將從緩沖存儲(chǔ)器裝置2220中傳輸?shù)臄?shù)據(jù)分散至各自的通道ch1至chn。而且,在控制單元2214的控制下,存儲(chǔ)器接口單元2211可以將從非易失性存儲(chǔ)器裝置2231至223n讀取出的數(shù)據(jù)傳輸至緩沖存儲(chǔ)器裝置2220。
主機(jī)接口單元2212可以提供與和某協(xié)議對(duì)應(yīng)的主機(jī)裝置2100的連接。例如,主機(jī)接口單元2212可以通過并行高級(jí)技術(shù)附件(pata)、串行高級(jí)技術(shù)附件(sata)、小型計(jì)算機(jī)系統(tǒng)接口(scsi)、串列scsi(sas)、外圍組件互聯(lián)(pci)、高速pci(pci-e)和通用閃速存儲(chǔ)(ufs)協(xié)議中的一個(gè)與主機(jī)裝置2100通信。此外,主機(jī)接口單元2212可以執(zhí)行支持主機(jī)裝置2100的磁盤仿真功能以將ssd2200識(shí)別為硬盤驅(qū)動(dòng)器(hdd)。
控制單元2214可以分析并處理從主機(jī)裝置2100輸入的信號(hào)sgl??刂茊卧?214可以根據(jù)用于驅(qū)動(dòng)ssd2200的固件或軟件控制緩沖存儲(chǔ)器裝置2220和非易失性存儲(chǔ)器裝置2231至223n的操作。隨機(jī)存取存儲(chǔ)器2215可被用作用于驅(qū)動(dòng)固件或軟件的工作存儲(chǔ)器。
控制單元2214可以執(zhí)行上文參照?qǐng)D4至圖7所描述的垃圾收集操作。因此,ssd2200的垃圾收集操作可以被優(yōu)化,并因此ssd2200的操作速度可以被提升。
在被存儲(chǔ)在緩沖存儲(chǔ)器裝置2220中的數(shù)據(jù)中,錯(cuò)誤校正碼(ecc)單元2213可以產(chǎn)生待被傳輸至非易失性存儲(chǔ)器裝置2231至223n的奇偶校驗(yàn)數(shù)據(jù)。產(chǎn)生的奇偶校驗(yàn)數(shù)據(jù)可以和數(shù)據(jù)一起被存儲(chǔ)在非易失性存儲(chǔ)器裝置2231至223n中。錯(cuò)誤校正碼(ecc)單元2213可以檢測(cè)從非易失性存儲(chǔ)器裝置2231至223n中讀取出的數(shù)據(jù)的錯(cuò)誤。當(dāng)檢測(cè)的錯(cuò)誤位于可校正的范圍內(nèi)時(shí),錯(cuò)誤校正碼(ecc)單元2213可以校正檢測(cè)的錯(cuò)誤。
圖11是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)存儲(chǔ)裝置3300的計(jì)算機(jī)系統(tǒng)3000的框圖。
根據(jù)圖11的實(shí)施例,計(jì)算機(jī)系統(tǒng)3000可以包括被電聯(lián)接至系統(tǒng)總線3700的網(wǎng)絡(luò)適配器3100、中央處理單元(cpu)3200、數(shù)據(jù)存儲(chǔ)裝置3300、隨機(jī)存取存儲(chǔ)器(ram)3400、只讀存儲(chǔ)器(rom)3500和用戶接口3600。數(shù)據(jù)存儲(chǔ)裝置3300可以是圖1中所示的數(shù)據(jù)存儲(chǔ)裝置100、圖8中所示的數(shù)據(jù)存儲(chǔ)裝置1200或圖9中所示的ssd2200。
網(wǎng)絡(luò)適配器3100可以提供計(jì)算機(jī)系統(tǒng)3000和外部網(wǎng)絡(luò)之間的連接。中央處理單元3200可以執(zhí)行用于驅(qū)動(dòng)存在于ram3400處的操作系統(tǒng)或應(yīng)用程序的一般計(jì)算處理。
數(shù)據(jù)存儲(chǔ)裝置3300可以存儲(chǔ)計(jì)算機(jī)系統(tǒng)3000內(nèi)所需的一般數(shù)據(jù)。例如,用于驅(qū)動(dòng)計(jì)算機(jī)系統(tǒng)3000的操作系統(tǒng)、應(yīng)用程序、各種程序模塊、程序數(shù)據(jù)和用戶數(shù)據(jù)可以被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置3300中。
ram3400可以被用作計(jì)算機(jī)系統(tǒng)3000的工作存儲(chǔ)器。一經(jīng)啟動(dòng),被從數(shù)據(jù)存儲(chǔ)裝置3300中讀取出的操作系統(tǒng)、應(yīng)用程序、各種程序模塊和驅(qū)動(dòng)程序所需的程序數(shù)據(jù)可以被加載到ram3400上。在操作系統(tǒng)被驅(qū)動(dòng)前激活的基本輸入/輸出系統(tǒng)(bios)可以被存儲(chǔ)在rom3500中。在計(jì)算機(jī)系統(tǒng)3000和用戶之間的信息交換可以通過用戶接口3600實(shí)現(xiàn)。
圖12是示出根據(jù)本發(fā)明的實(shí)施例的包括在數(shù)據(jù)存儲(chǔ)裝置中的非易失性存儲(chǔ)器裝置300的框圖。
根據(jù)圖12的實(shí)施例,非易失性存儲(chǔ)器裝置300可以包括存儲(chǔ)器單元陣列310、行解碼器320、列解碼器330、數(shù)據(jù)讀取/寫入塊340、電壓發(fā)生器350和控制邏輯360。
存儲(chǔ)器單元陣列310可以包括被布置在字線wl1至wlm和位線bl1至bln彼此交叉的區(qū)域處的存儲(chǔ)器單元mc。
行解碼器320可以通過字線wl1至wlm與存儲(chǔ)器單元陣列310聯(lián)接。行解碼器320可以根據(jù)控制邏輯360的控制來操作。行解碼器320可以解碼由外部裝置(未示出)提供的地址。行解碼器320可以基于解碼的結(jié)果選擇并驅(qū)動(dòng)字線wl1至wlm。例如,行解碼器320可以將由電壓發(fā)生器350提供的字線電壓提供給字線wl1至wlm。
數(shù)據(jù)讀取/寫入塊340可以通過位線bl1至bln與存儲(chǔ)器單元陣列310聯(lián)接。數(shù)據(jù)讀取/寫入塊340可以包括分別對(duì)應(yīng)于位線bl1至bln的讀取/寫入電路rw1至rwn。數(shù)據(jù)讀取/寫入塊340可以根據(jù)控制邏輯360的控制來操作。數(shù)據(jù)讀取/寫入塊340可以根據(jù)操作模式作為寫入驅(qū)動(dòng)器或讀出放大器來操作。例如,數(shù)據(jù)讀取/寫入塊340可以作為將由外部裝置提供的數(shù)據(jù)在寫入操作中存儲(chǔ)在存儲(chǔ)器單元陣列310中的寫入驅(qū)動(dòng)器來操作。又例如,數(shù)據(jù)讀取/寫入塊340可以作為在讀取操作中從存儲(chǔ)器單元陣列310中讀取出數(shù)據(jù)的讀出放大器來操作。
列解碼器330可以根據(jù)控制邏輯360的控制來操作。列解碼器330可以解碼由外部裝置提供的地址?;诮獯a的結(jié)果,列解碼器330可以將分別對(duì)應(yīng)于位線bl1至bln的數(shù)據(jù)讀取/寫入塊340的讀取/寫入電路rw1至rwn與數(shù)據(jù)輸入/輸出線(或數(shù)據(jù)輸入/輸出緩沖區(qū))聯(lián)接。
電壓發(fā)生器350可以產(chǎn)生待被用在非易失性存儲(chǔ)器裝置300的內(nèi)部操作中的電壓。由電壓發(fā)生器350產(chǎn)生的電壓可以被施加于存儲(chǔ)器單元陣列310的存儲(chǔ)器單元。例如,在編程操作中產(chǎn)生的編程電壓可以被施加于待對(duì)其執(zhí)行編程操作的存儲(chǔ)器單元的字線。又例如,在擦除操作中產(chǎn)生的擦除電壓可以被施加于待對(duì)其執(zhí)行擦除操作的存儲(chǔ)器單元的阱區(qū)。還例如,在讀取操作中產(chǎn)生的讀取電壓可以被施加于待對(duì)其執(zhí)行讀取操作的存儲(chǔ)器單元的字線。
基于由外部裝置提供的控制信號(hào),控制邏輯360可以控制非易失性存儲(chǔ)器裝置300的一般操作。例如,控制邏輯360可以控制非易失性存儲(chǔ)器裝置300的操作,例如,非易失性存儲(chǔ)器裝置300的讀取、寫入和擦除操作。
還注意到,在一些實(shí)例中,除非另有明確說明,否則對(duì)于相關(guān)領(lǐng)域的技術(shù)人員將顯而易見的是,結(jié)合一個(gè)實(shí)施例所描述的特征或元件可以被單獨(dú)地使用或與另一個(gè)實(shí)施例的其它特征或元件相組合地使用。
盡管各個(gè)實(shí)施例在上文中已經(jīng)被描述,但是本領(lǐng)域技術(shù)人員將要理解的是,所描述的實(shí)施例僅是示例。因此,本文所描述的數(shù)據(jù)存儲(chǔ)裝置的操作方法不應(yīng)限于所描述的實(shí)施例。對(duì)于相關(guān)領(lǐng)域內(nèi)的技術(shù)人員將是顯而易見的是,可以做出各種改變和變型而不脫離如權(quán)利要求所限定的本發(fā)明的精神和范圍。