專利名稱:存儲(chǔ)器磨損平衡的重映射的制作方法
存儲(chǔ)器磨損平衡的重映射背景技術(shù)
特定存儲(chǔ)裝置(例如閃存)易于出現(xiàn)如下耗損情況這些存儲(chǔ)器僅僅能存在多次更新(重寫或擦除和寫入)循環(huán),盡管該次數(shù)可能相當(dāng)大(十萬以上)。為了彌補(bǔ)這種情況, 這些存儲(chǔ)裝置可采用稱為磨損平衡的方法,其包括監(jiān)控存儲(chǔ)區(qū)的相對(duì)使用以及存儲(chǔ)器的邏輯區(qū)和物理區(qū)之間的映射,以確保存儲(chǔ)器的所有物理區(qū)以相同速率磨損。磨損平衡有助于延長(zhǎng)存儲(chǔ)裝置的使用壽命。
已經(jīng)研發(fā)出多種用于磨損平衡的現(xiàn)有技術(shù)。通常在閃存轉(zhuǎn)換層(FTL)中執(zhí)行與這些技術(shù)相關(guān)的功能,該功能包括保持將存儲(chǔ)器的邏輯塊映射成存儲(chǔ)器的物理塊的查找表。 該查找表大略要求一個(gè)關(guān)于每一個(gè)存儲(chǔ)塊的狀態(tài)的字。對(duì)于允許細(xì)粒度更新的存儲(chǔ)器來說,以單個(gè)更新單元的粒度保持這種轉(zhuǎn)換表將需要相當(dāng)大的表,從而減小了標(biāo)準(zhǔn)存儲(chǔ)容量。
詳細(xì)的描述將參照附圖,在附圖中相同附圖標(biāo)記指代相同的物體,且在附圖中
圖1圖示在其上可執(zhí)行磨損平衡方法的示例性重映射的示例性存儲(chǔ)系統(tǒng);
圖2圖示示例性磨損平衡方法的重映射函數(shù);
圖3至圖5圖示利用圖1中的存儲(chǔ)裝置的示例性轉(zhuǎn)換操作;
圖6圖示在其上可執(zhí)行示例性磨損平衡方法的可替代示例性存儲(chǔ)系統(tǒng);以及
圖7圖示示例性磨損平衡方法。
具體實(shí)施方式
存在很多用于制造存儲(chǔ)器(例如SRAM、DRAM、閃存、憶阻器、PCM等)的不同技術(shù)。 諸如SRAM的一些存儲(chǔ)器耗損非常慢(例如IO21次更新),如此之慢以至于對(duì)大部分實(shí)際用途來說,它們可被認(rèn)為支持無限制的更新。諸如閃存的另一些存儲(chǔ)器耗損比較快(按IO5量級(jí)更新)。具體地,閃存為可重復(fù)編程的固態(tài)非易失性存儲(chǔ)器。閃存包括多個(gè)存儲(chǔ)單元,且每一個(gè)單元包括置于源區(qū)和漏區(qū)之間的基板溝道上的電浮動(dòng)?xùn)?。薄柵氧化層將浮?dòng)?xùn)排c基板隔離。該單元的閾值電平受放置在浮動(dòng)?xùn)派系碾姾傻臄?shù)量控制。如果電荷電平高于特定閾值,則該單元被讀取為具有一個(gè)狀態(tài),如果低于該閾值,則被讀取為具有另一個(gè)狀態(tài)。
為了使電子從基板通過柵氧化層移動(dòng)到浮動(dòng)?xùn)牛ㄟ^在指定時(shí)間段內(nèi)向源極、漏極、基板以及單獨(dú)的控制柵施加適當(dāng)?shù)碾妷航M合,對(duì)期望的浮動(dòng)?xùn)烹姾呻娖竭M(jìn)行編程。來自浮動(dòng)?xùn)诺碾娏餍孤╇S時(shí)間變化非常小,從而提供永久性存儲(chǔ)。通過上述向元素施加適合的電壓組合可減小浮動(dòng)?xùn)派系碾姾呻娖?,但?yōu)選的是包括與浮動(dòng)?xùn)畔噜彿胖玫膯为?dú)擦除柵, 其中在浮動(dòng)?xùn)排c單獨(dú)擦除柵之間具有隧道氧化物的薄層。
另一種存儲(chǔ)技術(shù),憶阻存儲(chǔ)器(memristive memory)依據(jù)憶阻效應(yīng)來工作。當(dāng)電流流過特定材料(例如二氧化鈦)時(shí),它們的電阻可能改變,且這種改變非常持久;該材料記憶其電阻,因此叫憶阻器。這種效應(yīng)在宏觀尺度不顯著,而在微觀尺度變得顯著。憶阻存儲(chǔ)器單元由位于兩個(gè)導(dǎo)體之間的憶阻材料薄膜組成。通過沿特定方向施加通過導(dǎo)體的高電流,薄膜的電阻可能增大或降低。然后可測(cè)量這種改變的電阻,而無需使用低電流使其改變。可采用交叉陣列形式制造憶阻裝置,其中存在多條平行導(dǎo)線的層,然后在導(dǎo)線上端具有憶阻材料薄膜,然后在憶阻材料薄膜上端具有垂直于第一層導(dǎo)線的平行導(dǎo)線的層。
不考慮單個(gè)單元的技術(shù),大量的這種單元形成了存儲(chǔ)器。該單元優(yōu)選地與為作為字線(word line)的一行這種單元提供的公共控制柵一起以二維陣列形式布置在半導(dǎo)體集成電路芯片上,且每一列中的單元具有它們的連接至公共位線的漏極或源極。然后通過向在期望的單元處相交的字線和位線施加適合的電壓,每一個(gè)單元可單獨(dú)尋址。為了更新 (或重寫、或擦除然后寫入)該單元,不提供這種單獨(dú)尋址,相反,通常將成組的單元連接在一起,以允許在一個(gè)組中的所有單元同時(shí)被更新。在閃存中,由于這樣的組通常相當(dāng)?shù)拇螅?因此它們被稱為擦除塊。與提供擦除相比,閃存通常以較小粒度提供寫入,而為了改變一組單元的內(nèi)容,它們必須首先被擦除,因此更新僅可以以擦除塊的級(jí)別發(fā)生。
不同的存儲(chǔ)系統(tǒng)對(duì)于不同的應(yīng)用具有優(yōu)勢(shì)(例如由于成本、非易失性、用電量等)。然而,如之前所述,一些存儲(chǔ)技術(shù)在它們可被更新(或重新編程、或擦除、或應(yīng)用于特定存儲(chǔ)技術(shù)的任何術(shù)語)的次數(shù)方面具有有限的壽命。隨著單元所經(jīng)歷的循環(huán)次數(shù)增加, 該單元的物理屬性改變。具體對(duì)于閃存來說,當(dāng)循環(huán)次數(shù)達(dá)到幾萬時(shí),其開始需要更多的電壓和/或時(shí)間來對(duì)該單元進(jìn)行編程和擦除。這被認(rèn)為是由于在重復(fù)編程和擦除循環(huán)期間, 電子被俘獲在各自的柵層和隧道介質(zhì)層中。被俘獲的電子的數(shù)量改變了該單元的操作特性,且在某一點(diǎn)處(近似為10萬次循環(huán)),需要如此多的電壓或時(shí)間來對(duì)該單元進(jìn)行編程或擦除或者編程和擦除,以至于進(jìn)一步使用它變得不切實(shí)際。在憶阻系統(tǒng)中,認(rèn)為導(dǎo)線中的金屬遷移導(dǎo)致難以向憶阻膜驅(qū)動(dòng)充分的電流來實(shí)現(xiàn)電阻變化;根據(jù)裝置的特性,裝置出現(xiàn)的循環(huán)次數(shù)會(huì)改變,但目前的裝置可持續(xù)幾千到幾萬次循環(huán)。
為了彌補(bǔ)這種情況,經(jīng)歷“耗損”的存儲(chǔ)裝置可采用被稱為磨損平衡的技術(shù)或方法,其包括基于逐塊原理監(jiān)控存儲(chǔ)器使用率,和在存儲(chǔ)器的邏輯區(qū)和物理區(qū)之間映射,以確保存儲(chǔ)器的所有物理區(qū)以相同的速率耗損。
可在閃存轉(zhuǎn)換層(FTL)中執(zhí)行與磨損平衡技術(shù)相關(guān)聯(lián)的功能,之所以這么叫是因?yàn)檫@些技術(shù)通常與閃存結(jié)合使用。磨損平衡技術(shù)的一個(gè)示例包括保持可將存儲(chǔ)器的邏輯塊映射到存儲(chǔ)器的物理塊的查找表。對(duì)于每一個(gè)存儲(chǔ)塊,該查找表大略需要一個(gè)狀態(tài)字。更新粒度在過去相當(dāng)?shù)拇?,我們甚至稱更新單元為塊。較新的裝置容許較小的更新粒度,且稱這種單元為線(line)更為恰當(dāng)。然而,對(duì)于容許細(xì)粒度更新的存儲(chǔ)器來說,以單個(gè)線的粒度保持這樣的轉(zhuǎn)換表將需要相當(dāng)大的表,從而減小了標(biāo)準(zhǔn)存儲(chǔ)容量。
圖1圖示了在其上可至少利用塊和線重映射函數(shù)執(zhí)行示例性磨損平衡操作的示例性存儲(chǔ)系統(tǒng)1。在圖1中,閃存10被組織成存儲(chǔ)單元,具體為很多塊12,每一個(gè)塊12為可閃擦除。每一個(gè)塊12包括多個(gè)線14。每一個(gè)線14為可單獨(dú)更新的最小存儲(chǔ)單元。在一個(gè)實(shí)施例中,每一個(gè)塊最少包括至少兩個(gè)線,更為優(yōu)選地最少包括8個(gè)線。
每一個(gè)塊12被設(shè)計(jì)為包含標(biāo)準(zhǔn)計(jì)算機(jī)扇區(qū)的數(shù)據(jù)值加上一些開銷(overhead)字段。從計(jì)算機(jī)系統(tǒng)接收由塊30表示的數(shù)據(jù)。待寫入數(shù)據(jù)30的存儲(chǔ)位置的邏輯地址20也由計(jì)算機(jī)系統(tǒng)發(fā)送。該邏輯地址20通過地址轉(zhuǎn)換系統(tǒng)被轉(zhuǎn)換為物理地址觀。
因此,在圖1中,存儲(chǔ)器10為具有4字節(jié)更新粒度(線)、1字節(jié)讀取粒度的1 字節(jié)閃存,且被組織為4個(gè)塊12,每一個(gè)塊12具有8條線14 (32字節(jié))。地址粒度為字節(jié)級(jí)。
由圖1中的存儲(chǔ)系統(tǒng)1執(zhí)行的重映射將邏輯地址20轉(zhuǎn)換為物理地址觀。邏輯地址20具有三個(gè)部分,即塊地址22、線地址M以及輔線地址26。例如,利用完整的重映射表 32轉(zhuǎn)換塊地址22。
利用邏輯塊地址22在線重映射表35中查找線重映射關(guān)鍵字33來轉(zhuǎn)換地址20的線部分對(duì)。將地址20的線部分M和關(guān)鍵字33傳遞至函數(shù)(F) 34,函數(shù)34產(chǎn)生轉(zhuǎn)換的物理線地址25。利用該線地址轉(zhuǎn)換允許存儲(chǔ)器10的每一個(gè)塊12將不同的重映射關(guān)鍵字用于函數(shù)F,且允許重映射函數(shù)F的性能被改變。
地址20的輔線部分沈可無需轉(zhuǎn)換而被傳遞。在很多存儲(chǔ)類型中,更新可僅以線粒度來實(shí)現(xiàn),而讀取可以以更精細(xì)粒度(即以輔線級(jí))來實(shí)現(xiàn)。
如上所述,利用線重映射關(guān)鍵字33使邏輯線地址M經(jīng)過函數(shù)34。在實(shí)施例中,函數(shù)34為兩輸入函數(shù),其在線重映射關(guān)鍵字33固定的情況下變?yōu)殡p射輸入(bijective on input)函數(shù)。利用固定的線重映射關(guān)鍵字,任意邏輯線地址將映射為可能的物理線地址,且兩個(gè)不同的邏輯線地址不可能映射為相同的物理線地址??赡艿碾p射函數(shù)包括M)R、加法、 乘法、各種密碼函數(shù)、雙射查找表以及鍵控位調(diào)和函數(shù)(keyed bit swizzling function)。 在實(shí)施例中,系統(tǒng)1可采用一個(gè)重映射函數(shù)。在另一個(gè)實(shí)施例中,系統(tǒng)1可使用一部分線重映射關(guān)鍵字來在若干重映射函數(shù)當(dāng)中選擇。
圖2中圖示了使用位調(diào)和函數(shù)作為函數(shù)34。調(diào)和是其中輸入被轉(zhuǎn)變、旋轉(zhuǎn)或混合的方法。在圖1的存儲(chǔ)器10的情況下,根據(jù)指定的模式轉(zhuǎn)變地址位,來產(chǎn)生不同于輸入的輸出。在圖2中,位調(diào)和函數(shù)50包括多個(gè)或交換或不交換位置的調(diào)和元素52。如所示被網(wǎng)絡(luò)化至一起,元素52可將進(jìn)入位調(diào)和為任何置換。在圖2中,函數(shù)50可將四個(gè)位調(diào)和為任意置換。調(diào)和函數(shù)50接受6個(gè)位(0或1)作為重映射控制關(guān)鍵字,來控制元素52的執(zhí)行。 圖2圖示了基于該6個(gè)重映射控制關(guān)鍵字位的值的一個(gè)特定重映射。
調(diào)和函數(shù)50可被執(zhí)行以完成磨損平衡方法的線重映射部分。線關(guān)鍵字查找向調(diào)和函數(shù)50的每一個(gè)元素52提供線重映射關(guān)鍵字(或?yàn)?或?yàn)?)。線重映射模塊包括調(diào)和元素52。
當(dāng)使用調(diào)和函數(shù)50時(shí),為0的關(guān)鍵字值表示調(diào)和元素52充當(dāng)通口。如果關(guān)鍵字值為1,則調(diào)和元素52交換輸入和輸出。例如,如果向輸入為01的調(diào)和元素52提供為1的關(guān)鍵字值,則輸出將為10 ;輸入00將產(chǎn)生輸出00 ;等等。因此,提供給調(diào)和函數(shù)50的四位地址將產(chǎn)生雙射的重映射。調(diào)和邏輯具有避免重復(fù)寫入存儲(chǔ)塊內(nèi)的“熱點(diǎn)”的有用特性,且易于執(zhí)行。
返回圖1,示出了存儲(chǔ)器10與存儲(chǔ)系統(tǒng)1的轉(zhuǎn)換部分分離。圖1中的存儲(chǔ)系統(tǒng)1 可在芯片上的轉(zhuǎn)換部分與存儲(chǔ)器10分離的情況下執(zhí)行。在另一個(gè)實(shí)施例中,存儲(chǔ)系統(tǒng)1可在單個(gè)芯片上執(zhí)行。如果在單個(gè)芯片上執(zhí)行,則在相同芯片上可包括用于確定何時(shí)和如何改變存儲(chǔ)器的重映射的邏輯電路??商娲兀诰哂信c確定邏輯電路的片上接口的情況下, 邏輯可處于片外。
圖3示出利用圖1的存儲(chǔ)系統(tǒng)1的示例性磨損平衡操作和地址轉(zhuǎn)換。針對(duì)塊部分 /線部分/輔線部分將邏輯地址20 (0110011)分解為01/100/11。將邏輯塊地址22(01)應(yīng)用于塊重映射表32,產(chǎn)生(01的)物理地址23。也將邏輯塊地址22(01)應(yīng)用于線重映射表35,產(chǎn)生(000的)關(guān)鍵字33以輸出。將關(guān)鍵字33 (000)和邏輯線地址M (100)傳遞至線重映射函數(shù)F。如上討論的,線重映射函數(shù)F可為多個(gè)不同的函數(shù),包括圖2的調(diào)和函數(shù)。 對(duì)于圖3所示的實(shí)施例,線重映射函數(shù)F為模8加法。因此,100+000 = 100,得出物理地址 28的中間(線)部分25。輔線部分沈直接通過,且產(chǎn)生了 0110011的物理地址觀;該物理地址28恰好與邏輯地址20相同。存儲(chǔ)區(qū)42對(duì)應(yīng)于物理地址28。
圖4示出利用與圖3中相同的邏輯地址但具有改變的線重映射表35的另一種重映射轉(zhuǎn)換。塊地址22從01被轉(zhuǎn)換為01,如之前所述。然而,線重映射表35返回100用于查找塊地址01。函數(shù)F產(chǎn)生100+100 = 000,得到轉(zhuǎn)換的線地址25。這產(chǎn)生了 0100011的物理地址,其不同于由圖3的操作所產(chǎn)生的物理地址,且不同于輸入的邏輯地址。存儲(chǔ)單元 44為相應(yīng)的存儲(chǔ)區(qū)。
圖5示出又一個(gè)地址轉(zhuǎn)換。在圖5中,邏輯塊地址22用于線重映射,地址20的邏輯塊部分22被轉(zhuǎn)換為00。在線重映射表35中的查找利用該邏輯塊地址22(01)。這樣得到011,當(dāng)其與邏輯線地址M(IOO) —起使用時(shí)產(chǎn)生111的物理線地址25。地址組成部分全部組合以產(chǎn)生0011111的物理地址28。存儲(chǔ)區(qū)46對(duì)應(yīng)于該物理地址。
模8加法僅是函數(shù)F的一個(gè)示例。如上討論的,調(diào)和函數(shù)也可用于重映射。其它重映射函數(shù)包括M)R,其將比加法更快且可能得到更好的磨損平衡。對(duì)于加法(或M)R)來說,線重映射表35中的關(guān)鍵字33應(yīng)當(dāng)是與地址20的線部分M相同的位數(shù)。其它的函數(shù)具有不同的特性,例如調(diào)和函數(shù)50對(duì)于4位線地址M將要求6位關(guān)鍵字。
如上所述的,系統(tǒng)1的存儲(chǔ)器10和轉(zhuǎn)換邏輯可位于相同芯片上,或不同芯片上。在另一個(gè)實(shí)施例中,塊重映射表和線重映射表被組合為一個(gè)表。于是所得到的查找表將處于 2位邏輯塊地址和5位組合的物理塊和函數(shù)關(guān)鍵字之間。
在又一個(gè)實(shí)施例中,在線重映射表中的查找是基于物理塊地址。圖6中示出了這樣的存儲(chǔ)系統(tǒng)結(jié)構(gòu)。在圖6中,存儲(chǔ)系統(tǒng)100包括與之前相同的物理存儲(chǔ)器10。將邏輯塊地址22傳遞至塊重映射模塊132,塊重映射模塊132將3位邏輯塊地址22轉(zhuǎn)換為物理塊地址23。將物理塊地址23應(yīng)用于物理存儲(chǔ)器10,以限定存儲(chǔ)器中接收寫入操作的塊,和應(yīng)用于用于產(chǎn)生線重映射關(guān)鍵字133的線關(guān)鍵字查找135。線重映射模塊134利用線重映射關(guān)鍵字133來將邏輯線地址M映射為物理線地址25。這些邏輯-物理地址映射的結(jié)果是物理存儲(chǔ)器10中的將接收寫入操作的特定塊中的特定線。不過系統(tǒng)100深化了在接收邏輯地址和產(chǎn)生物理轉(zhuǎn)換之間的邏輯路徑。系統(tǒng)100還使得追蹤存儲(chǔ)器的特定邏輯頁面具有特定訪問模式(例如更為頻繁地寫入奇數(shù)地址)變得更為困難。另一方面,存儲(chǔ)系統(tǒng)100使得容易追蹤存儲(chǔ)器10的特定物理塊已經(jīng)以特定方式耗損。
在圖6中,假設(shè)邏輯地址為10位地址,其由作為邏輯塊地址的前三位、作為邏輯線地址的之后三位以及作為偏移或字節(jié)地址的后四位組成,例如0011111000(178)。邏輯塊地址22位可采用從0到7的任意值。塊重映射表132提供了 0的值映射到1、1映射到4、2 映射到3等等。根據(jù)塊重映射表132轉(zhuǎn)換方法的輸出為物理塊地址23。將物理塊地址應(yīng)用于線關(guān)鍵字查找表135,來獲取對(duì)邏輯地址的線地址部分進(jìn)行調(diào)整的關(guān)鍵字。線重映射關(guān)鍵字在可執(zhí)行塊重映射的相同塊大小的塊中進(jìn)行線重映射。假設(shè)由線關(guān)鍵字查找表執(zhí)行的函數(shù)為加法函數(shù)(如上所述的,乘法、調(diào)和以及其它的函數(shù)也是可能的),且假設(shè)關(guān)鍵字為1。 如果線地址為7,則1加上該地址導(dǎo)致從7到0的線重映射。即,在線重映射表133處將17的線重映射關(guān)鍵字應(yīng)用于邏輯線地址對(duì),以產(chǎn)生物理線地址25。進(jìn)一步假設(shè)偏移為8,則從 178的邏輯地址轉(zhuǎn)換得到408,或1000001000。因此,物理塊地址23、物理線地址25以及輔線或偏移地址沈被組合以形成物理地址28。注意,塊轉(zhuǎn)換部分為粗粒度更新或轉(zhuǎn)換;線轉(zhuǎn)換或更新為基于函數(shù)的重映射。還要注意,該地址轉(zhuǎn)換方案也允許相當(dāng)細(xì)粒度的尋址-達(dá)到字節(jié)級(jí)。不過,地址的偏移部分還可設(shè)置為0,使得所尋址的存儲(chǔ)器的最小單元為線;同樣,通過將地址的線部分中的位數(shù)設(shè)置為0,所尋址的最小存儲(chǔ)器單元為塊。
利用圖1中的存儲(chǔ)系統(tǒng)1或圖6中的存儲(chǔ)系統(tǒng)100,如果輔線地址沈?yàn)?位,則存儲(chǔ)系統(tǒng)將使用與線大小匹配的粒度。不過,線大小可處于4字節(jié)和64字節(jié)之間,每一個(gè)塊具有處于大約256條和4096條之間的線,塊大小應(yīng)當(dāng)在512字節(jié)和1兆字節(jié)之間。因此, 期望的線地址大小將處于8位至12位之間。不過,這主要是其余結(jié)構(gòu)的結(jié)果(例如64字節(jié)高速緩存線大小使得64字節(jié)線合適;塊大小等于存儲(chǔ)器頁面大小或是其2倍的冪也是合適的)。
圖7為圖示應(yīng)用于圖1的存儲(chǔ)系統(tǒng)1的示例性磨損平衡操作300的流程圖。在圖 7中,操作300開始于將數(shù)據(jù)30寫入存儲(chǔ)器10的區(qū)域的操作;數(shù)據(jù)30附有邏輯地址。為防止過度磨損或存儲(chǔ)器“熱點(diǎn)”,采用包含向下轉(zhuǎn)換至線級(jí)的磨損平衡技術(shù)。
在塊310中,將邏輯地址分解為塊地址部分、線地址部分和輔線地址部分,且將這些地址部分應(yīng)用于存儲(chǔ)器轉(zhuǎn)換子系統(tǒng)的各自元素。在塊315中,首先將邏輯塊地址部分應(yīng)用于塊重映射表32,以產(chǎn)生物理塊地址。塊轉(zhuǎn)換表可使用任意函數(shù),該函數(shù)針對(duì)所應(yīng)用的至少一些邏輯塊地址部分產(chǎn)生地址轉(zhuǎn)換。還將邏輯塊地址應(yīng)用于線重映射表35,以產(chǎn)生關(guān)鍵字33 (塊320),在塊325中,將期望的線重映射函數(shù)F (34)與線重映射關(guān)鍵字33結(jié)合,以形成雙射。在塊330中利用雙射來產(chǎn)生物理線地址。
使輔線地址部分經(jīng)過轉(zhuǎn)換邏輯(塊33 ,且在塊340中,將其與物理塊地址和物理線地址結(jié)合以產(chǎn)生物理地址。然后在塊345中執(zhí)行將數(shù)據(jù)30寫入所產(chǎn)生的物理地址的寫入操作,且操作300結(jié)束。
權(quán)利要求
1.一種用于存儲(chǔ)器(10)的磨損平衡的重映射方法(300),該方法被實(shí)現(xiàn)為邏輯,包括接收(30 存儲(chǔ)操作,所述存儲(chǔ)操作包括邏輯存儲(chǔ)地址00);將所述邏輯地址分為(310)邏輯塊地址部分0 、邏輯線地址部分04)和邏輯輔線地址部分(26);執(zhí)行塊重映射,產(chǎn)生物理塊地址03);選擇(320)線重映射關(guān)鍵字(33),以在執(zhí)行所述塊重映射的相同塊大小的塊中執(zhí)行線重映射;將所述線重映射關(guān)鍵字應(yīng)用(320)于所述邏輯線地址部分,以產(chǎn)生物理線地址05); 產(chǎn)生(33 物理輔線地址06);以及結(jié)合所述物理塊地址、物理線地址和物理輔線地址,以產(chǎn)生所述存儲(chǔ)操作的物理地址 (28)。
2.根據(jù)權(quán)利要求1所述的方法,其中執(zhí)行所述塊重映射包括將所述邏輯塊地址部分轉(zhuǎn)換(315)為所述物理塊地址03)。
3.根據(jù)權(quán)利要求1所述的方法,其中選擇線重映射關(guān)鍵字包括將所述邏輯塊地址部分 (22)應(yīng)用于線重映射表(35)。
4.根據(jù)權(quán)利要求1所述的方法,其中選擇線重映射關(guān)鍵字包括將所述物理塊地址03) 應(yīng)用于線重映射表。
5.根據(jù)權(quán)利要求1所述的方法,其中將所述線重映射關(guān)鍵字應(yīng)用于所述邏輯線地址部分以產(chǎn)生物理線地址包括將所述線重映射關(guān)鍵字(33)應(yīng)用于線重映射函數(shù)(34),并且其中所述線重映射關(guān)鍵字(3 被改變。
6.根據(jù)權(quán)利要求5所述的方法,其中所述線重映射函數(shù)(34)為調(diào)和函數(shù)、BobJenkins 哈希函數(shù)、加法模、乘法以及密碼函數(shù)中的一種。
7.根據(jù)權(quán)利要求6所述的方法,其中用于重映射的所述邏輯與所述存儲(chǔ)器(10)被設(shè)置在同一個(gè)芯片上。
8.根據(jù)權(quán)利要求5所述的方法,其中所述線重映射函數(shù)(34)為鍵控位調(diào)和函數(shù)、XOR 函數(shù)以及乘以奇數(shù)鍵對(duì)地址大小取模的乘法中的一種。
9.根據(jù)權(quán)利要求1所述的方法,其中用于重映射的所述邏輯被設(shè)置在第一芯片上,而所述存儲(chǔ)器(10)被設(shè)置在第二芯片上。
10.根據(jù)權(quán)利要求9所述的方法,其中所述存儲(chǔ)器為由于耗損而導(dǎo)致具有有限壽命的存儲(chǔ)器類型,該存儲(chǔ)器包括閃存、憶阻器以及相變存儲(chǔ)器中的一種。
11.一種重映射設(shè)備,用于磨損平衡且被實(shí)現(xiàn)為邏輯,其中存儲(chǔ)器(10)接收針對(duì)特定存儲(chǔ)操作而轉(zhuǎn)換的物理地址,所述轉(zhuǎn)換的物理地址提供存儲(chǔ)區(qū)的使用的平衡,包括地址分解函數(shù),將邏輯地址00)分為邏輯塊地址部分0 、邏輯線地址部分04)和邏輯輔線地址部分06);塊重映射表(32),執(zhí)行塊重映射以產(chǎn)生物理塊地址03);線重映射表(35),提供線重映射關(guān)鍵字(3 以在執(zhí)行所述塊重映射的相同塊大小的塊中執(zhí)行線重映射;線重映射函數(shù)(34),接收所述關(guān)鍵字(33)并產(chǎn)生物理線地址05);輔線轉(zhuǎn)換裝置,基于所述邏輯輔線地址部分產(chǎn)生物理輔線地址06);以及物理地址函數(shù),基于所述物理塊地址、所述物理線地址和所述物理輔線地址產(chǎn)生物理地址( ),其中所述物理地址指定存儲(chǔ)操作在所述存儲(chǔ)器中的位置。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述塊重映射表(3 通過將所述邏輯塊地址部分轉(zhuǎn)換為所述物理塊地址來執(zhí)行所述塊重映射。
13.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述線重映射關(guān)鍵字通過將所述邏輯塊地址部分應(yīng)用于所述線重映射表來確定。
14.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述線重映射關(guān)鍵字通過將所述物理塊地址應(yīng)用于所述線重映射表來確定。
15.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述線重映射函數(shù)為調(diào)和函數(shù)、BobJenkins哈希函數(shù)、加法模、乘法以及密碼函數(shù)中的一種。
16.根據(jù)權(quán)利要求15所述的設(shè)備,其中用于重映射的所述邏輯與所述存儲(chǔ)器(10)被設(shè)置在同一個(gè)芯片上。
17.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述線重映射函數(shù)為鍵控位調(diào)和函數(shù)、XOR函數(shù)以及乘以奇數(shù)鍵對(duì)地址大小取模的乘法中的一種。
18.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述塊重映射表包括計(jì)數(shù)器以保持物理存儲(chǔ)塊的更新的計(jì)數(shù)。
19.根據(jù)權(quán)利要求11所述的設(shè)備,其中用于重映射的所述邏輯被設(shè)置在第一芯片上, 而所述存儲(chǔ)器(10)被設(shè)置在第二芯片上。
全文摘要
提供一種用于存儲(chǔ)器(10)的磨損平衡的重映射方法和對(duì)應(yīng)的設(shè)備。該方法(300)被實(shí)現(xiàn)為邏輯且包括如下步驟接收(305)存儲(chǔ)操作,所述存儲(chǔ)操作包括邏輯存儲(chǔ)地址(20);將所述邏輯地址分為邏輯塊地址部分(22)、邏輯線地址部分(24)和邏輯輔線地址部分(26);將邏輯塊地址部分轉(zhuǎn)換(315)為物理塊地址(23);選擇(320)線重映射關(guān)鍵字(33);將所述線重映射關(guān)鍵字應(yīng)用于所述邏輯線地址部分,以產(chǎn)生物理線地址(25);產(chǎn)生(335)物理輔線地址部分(26);以及結(jié)合(340)所述物理塊地址、物理線地址和物理輔線地址,以產(chǎn)生所述存儲(chǔ)操作的物理地址(28)。
文檔編號(hào)G06F12/06GK102483717SQ200980161184
公開日2012年5月30日 申請(qǐng)日期2009年11月30日 優(yōu)先權(quán)日2009年11月30日
發(fā)明者埃里克·A·安德森, 約瑟夫·A·圖切克 申請(qǐng)人:惠普發(fā)展公司,有限責(zé)任合伙企業(yè)