異質(zhì)存儲(chǔ)器存取的制作方法
【專(zhuān)利說(shuō)明】
【背景技術(shù)】
[0001]計(jì)算機(jī)系統(tǒng)使用主存儲(chǔ)器或RAM (隨機(jī)存取存儲(chǔ)器)(主存儲(chǔ)器或RAM用于在程序(應(yīng)用)執(zhí)行期間進(jìn)行存取)以及盤(pán)存儲(chǔ)器(大容量存儲(chǔ)設(shè)備),盤(pán)存儲(chǔ)器典型地用于保存/檢索整個(gè)程序以及對(duì)在當(dāng)前的執(zhí)行之外的需要存儲(chǔ)的數(shù)據(jù)文件進(jìn)行寫(xiě)入。通常,這些類(lèi)型被稱(chēng)為易失性和非易失性存儲(chǔ)設(shè)備,指的是需要恒定功率以在主存儲(chǔ)器中保留存儲(chǔ)的值,而盤(pán)存儲(chǔ)器用于程序和數(shù)據(jù)的持久存儲(chǔ)。這些類(lèi)型中的每個(gè)類(lèi)型的存取方法也是根本上不同的,因?yàn)橐资源鎯?chǔ)器由程序指令來(lái)存取,而盤(pán)存儲(chǔ)器依賴于計(jì)算機(jī)的輸入/輸出(I/o)子系統(tǒng)。雖然易失性存儲(chǔ)器一般而言更快,但是此類(lèi)存儲(chǔ)器被稱(chēng)為同質(zhì)存儲(chǔ)位置的單塊,使得存儲(chǔ)器控制器以基本上類(lèi)似的操作性能從任意的可以使用的位置來(lái)進(jìn)行存儲(chǔ)和檢索。
【附圖說(shuō)明】
[0002]如附圖中圖示說(shuō)明的,根據(jù)本發(fā)明的特定實(shí)施例的以下描述,本發(fā)明的上述目的和其它對(duì)象、特征和優(yōu)點(diǎn)將是明顯的,在附圖中,貫穿于不同的視圖,相同的標(biāo)記字符指相同部分。附圖不一定按比例繪制,而是將重點(diǎn)放在示出本發(fā)明的原則上。
[0003]圖1是適合與本文中的配置一起使用的計(jì)算機(jī)存儲(chǔ)器環(huán)境的情景圖;
圖2是圖1的計(jì)算機(jī)存儲(chǔ)器環(huán)境中的存儲(chǔ)器存取的流程圖;
圖3a-3d是描繪圖1的環(huán)境的存儲(chǔ)器存取的啟發(fā)式方法的計(jì)算和數(shù)據(jù)流;以及圖4示出了圖1的環(huán)境中的存儲(chǔ)區(qū)域的堆疊實(shí)現(xiàn)方式。
【具體實(shí)施方式】
[0004]存儲(chǔ)器控制器(其可操作地用于對(duì)易失性和非易失性存儲(chǔ)器的區(qū)域的選擇性存儲(chǔ)器存取,每個(gè)區(qū)域展現(xiàn)出不同的屬性)利用不同的存儲(chǔ)器能力,存儲(chǔ)器能力在存取速度、存留時(shí)間和功率消耗等上變化。存儲(chǔ)器的不同區(qū)域具有不同的屬性,盡管對(duì)應(yīng)用而言保持可以用作單個(gè)連續(xù)范圍可尋址存儲(chǔ)器。存儲(chǔ)器控制器使用操作模式,操作模式識(shí)別用于計(jì)算設(shè)備的操作優(yōu)先級(jí),諸如速度、功率節(jié)省或效率(即,最小化熱量/功耗)O存儲(chǔ)器控制器基于所存儲(chǔ)的數(shù)據(jù)的預(yù)期使用來(lái)識(shí)別存儲(chǔ)器區(qū)域,例如指示何時(shí)數(shù)據(jù)將被檢索的存取頻率。還可以使用其它因素,諸如傳感器或計(jì)數(shù)器以識(shí)別存儲(chǔ)器的頻繁使用的區(qū)域,頻繁使用的區(qū)域可能導(dǎo)致溫度問(wèn)題。以這種方式,對(duì)于應(yīng)用而言,存儲(chǔ)器表現(xiàn)為單個(gè)連續(xù)的庫(kù),使得應(yīng)用不需要識(shí)別該區(qū)域(與常規(guī)的易失性/非易失性存取指令形成對(duì)比)。存儲(chǔ)器控制器基于操作模式以及根據(jù)啟發(fā)式方法的預(yù)期使用來(lái)選擇存儲(chǔ)器的區(qū)域,啟發(fā)式方法基于展示出具有與數(shù)據(jù)的預(yù)期使用高度對(duì)應(yīng)的屬性的那些來(lái)偏好存儲(chǔ)器的區(qū)域。
[0005]有可能的是,DRAM將被字節(jié)可尋址的非易失性存儲(chǔ)器(NVM)替代,NVM包含但不限于鐵電的隨機(jī)存取存儲(chǔ)器(FeTRAM)、基于納米線的非易失性存儲(chǔ)器、三維(3D)交叉點(diǎn)存儲(chǔ)器(諸如相變存儲(chǔ)器(PCM))、包含憶阻器技術(shù)的存儲(chǔ)器、磁阻隨機(jī)存取存儲(chǔ)器(MRAM)和自旋轉(zhuǎn)移轉(zhuǎn)矩(STT)-MRAM。這些NVM以及易失性存儲(chǔ)器(諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM))能夠被調(diào)整以及制造用于寬范圍的存留時(shí)間(從微妙到多年的信息存留)。類(lèi)似地,揭示了用于這些存儲(chǔ)器技術(shù)的性能和功率操作點(diǎn)的寬范圍,從深度內(nèi)嵌的低性能使用到高性能部署的范圍,其中例如,能夠?qū)τ诟玫男阅軄?lái)折衷存留時(shí)間和熱負(fù)擔(dān)(例如,熱量)。本文中的配置利用了不同的性能、存留以及熱優(yōu)化存儲(chǔ)器區(qū)域,以便動(dòng)態(tài)地適應(yīng)于系統(tǒng)的操作點(diǎn),諸如使用電池時(shí)的最長(zhǎng)的待機(jī)時(shí)間、在活動(dòng)階段期間的高響應(yīng)性以及最佳峰值性能。
[0006]能夠以任何合適的方式來(lái)布置存儲(chǔ)器區(qū)域(易失性和/或非易失性),例如在單個(gè)裸晶內(nèi)、堆疊(在封裝中)或在分開(kāi)的封裝中。此外,響應(yīng)于屬性識(shí)別和基于該屬性的選擇性調(diào)用,所公開(kāi)的方法可以與任何合適的存儲(chǔ)器技術(shù)一起使用。存儲(chǔ)器控制器(MC)在策劃對(duì)存儲(chǔ)器區(qū)域的選擇進(jìn)行存取以存儲(chǔ)數(shù)據(jù)中發(fā)揮了中心作用,因?yàn)樵搮^(qū)域可以被靜態(tài)地優(yōu)化(例如,在制造時(shí)間)或通過(guò)例如配置電壓軌來(lái)動(dòng)態(tài)地優(yōu)化。MC的新功能可以包含:基于傳感器輸入、統(tǒng)計(jì)計(jì)數(shù)器和定時(shí)器,在存儲(chǔ)器區(qū)域之間自主地移動(dòng)數(shù)據(jù),使得根據(jù)當(dāng)前操作模式(諸如最佳性能或最低功率)使存儲(chǔ)器存取提供為最佳。此類(lèi)解決方案提供了在存儲(chǔ)器子系統(tǒng)的功率/熱量、性能和存留時(shí)間上的細(xì)粒度控制。
[0007]常規(guī)的MC將存儲(chǔ)器視為對(duì)于性能和效率而言具有預(yù)定的、靜態(tài)性質(zhì)的一個(gè)同質(zhì)的區(qū)域。熱事件導(dǎo)致節(jié)制對(duì)這個(gè)存儲(chǔ)器區(qū)域的存取數(shù)量,在性能上具有負(fù)面影響,因?yàn)榇嫒〔荒鼙恍遁d到其它存儲(chǔ)器區(qū)域。在常規(guī)方法中,存留時(shí)間當(dāng)前不被認(rèn)為是設(shè)計(jì)目標(biāo),因?yàn)檎麄€(gè)存儲(chǔ)器子系統(tǒng)被認(rèn)為是易失性的。對(duì)于存儲(chǔ)器的常規(guī)性能狀態(tài)是粗粒度的,僅在整個(gè)同質(zhì)的存儲(chǔ)器區(qū)域上進(jìn)行操作以及僅有很少的重新配置(即使有也很少)。
[0008]具有異質(zhì)能力的存儲(chǔ)器子系統(tǒng)正擴(kuò)展以涵蓋諸如DRAM的技術(shù),DRAM和NVM同時(shí)地作為易失性RAM。持久性存儲(chǔ)器的當(dāng)前演進(jìn)向程序員暴露載入/存儲(chǔ)字節(jié)可尋址NVMdt為在平臺(tái)架構(gòu)中的持久層。然而,將常規(guī)數(shù)據(jù)放置在易失性或持久存儲(chǔ)器/非易失性存儲(chǔ)器中以處理不同的操作點(diǎn)增加了程序員的負(fù)擔(dān)。另外,常規(guī)的持久存儲(chǔ)器僅定義一個(gè)等級(jí)的存留時(shí)間(無(wú)限的),以及不允許對(duì)用于性能的存留時(shí)間和熱性質(zhì)之間的折衷進(jìn)行調(diào)整。
[0009]本文中的配置至少部分地基于以下觀察:對(duì)于可尋址存儲(chǔ)器,常規(guī)方法定義了整塊的連續(xù)地址。常規(guī)存儲(chǔ)器控制器將存儲(chǔ)器作為同質(zhì)存儲(chǔ)區(qū)域進(jìn)行存取,其不對(duì)于性能或有效性屬性來(lái)區(qū)分存儲(chǔ)器或?qū)Υ鎯?chǔ)器進(jìn)行分區(qū)。不幸的是,對(duì)于基于存儲(chǔ)器控制器的存取,常規(guī)方法遭受的缺點(diǎn)是,僅提供了非易失性存儲(chǔ)設(shè)備的單個(gè)層或種類(lèi),以及應(yīng)用必須從易失性或非易失性(例如,盤(pán))存儲(chǔ)設(shè)備進(jìn)行選擇。
[0010]因此,本文中的配置通過(guò)提供存儲(chǔ)器的不同區(qū)域或部分的異質(zhì)布置(存儲(chǔ)器的每個(gè)不同區(qū)域或部分具有對(duì)于特征(諸如存取速度(性能)、存留時(shí)間和功率消耗)的不同的屬性),基本上克服了對(duì)于存儲(chǔ)器存取的上述缺點(diǎn)。對(duì)于數(shù)據(jù)的存儲(chǔ)而言,可以基于數(shù)據(jù)的預(yù)期使用以及對(duì)于特定屬性的感知的需求來(lái)選擇存儲(chǔ)器。例如,頻繁使用的或快速響應(yīng)情景的一部分的數(shù)據(jù)可以被存儲(chǔ)在快速檢索存儲(chǔ)器區(qū)域,而被預(yù)期為在一段時(shí)間內(nèi)不需要的數(shù)據(jù)能夠被存儲(chǔ)在高存留時(shí)間區(qū)域,因?yàn)榭梢匀菰S較慢的存取。
[0011]在本中的配置中,存儲(chǔ)器控制器(MC)控制和選擇存儲(chǔ)器區(qū)域,該存儲(chǔ)器區(qū)域能夠通過(guò)屬性進(jìn)行區(qū)分,屬性包含性能、存留時(shí)間和能量效率。取決于對(duì)于這些屬性的平臺(tái)級(jí)策略以及基于傳感器輸入(諸如熱效應(yīng))、統(tǒng)計(jì)計(jì)數(shù)器(例如,存取頻率和地址分布)以及進(jìn)一步的因素(諸如超時(shí)計(jì)數(shù)器),MC能夠根據(jù)性能、效率和存留時(shí)間來(lái)調(diào)整存儲(chǔ)器區(qū)域的操作點(diǎn)。MC的存取啟發(fā)式方法能夠利用這些不同的操作模式。另外,根據(jù)平臺(tái)級(jí)的策略,通過(guò)以上傳感的和統(tǒng)計(jì)的/測(cè)量的輸入的觸發(fā),MC可以將內(nèi)容/數(shù)據(jù)從一個(gè)存儲(chǔ)器區(qū)域移動(dòng)到另一個(gè)存儲(chǔ)器區(qū)域,以改進(jìn)存儲(chǔ)器子系統(tǒng)的整體行為。啟發(fā)式方法邏輯實(shí)現(xiàn)了存取技術(shù),該存取技術(shù)利用了反饋的迭代評(píng)價(jià),以改進(jìn)性能以及屬性與適當(dāng)?shù)幕蜃钇ヅ浯鎯?chǔ)器區(qū)域的相關(guān)。
[0012]可以在生產(chǎn)期間由電路體系結(jié)構(gòu),或在運(yùn)行時(shí)間期間動(dòng)態(tài)地(如果由電路體系結(jié)構(gòu)暴露了足夠的靈活性以修改不同區(qū)域的屬性)將存儲(chǔ)器分成性能和功率區(qū)域或具有較高存留時(shí)間的區(qū)域。
[0013]所公開(kāi)的存儲(chǔ)器控制器不同于高速緩存存儲(chǔ)器控制器,因?yàn)楦咚倬彺娲鎯?chǔ)器控制器不是基于預(yù)期的使用來(lái)選擇高速緩存存儲(chǔ)器中的不同區(qū)域;基于相同的標(biāo)準(zhǔn),所有數(shù)據(jù)都是用于緩存的候補(bǔ),典型地是最近使用的數(shù)據(jù)或最頻繁使用的數(shù)據(jù)。此外,所公開(kāi)的存儲(chǔ)器控制器不同于僅具有易失性和非易失性存儲(chǔ)設(shè)備的體系結(jié)構(gòu),因?yàn)閷?duì)易失性和非易失性存儲(chǔ)設(shè)備的存取是明確指定的,即由變量賦值或文件操作來(lái)指定。雖然在常規(guī)易失性和非易失性存儲(chǔ)設(shè)備之間的選擇通常是應(yīng)用取決于數(shù)據(jù)使用來(lái)定義的,但是應(yīng)用不具有控制對(duì)非易失性存儲(chǔ)設(shè)