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