亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

分配和配置持久存儲(chǔ)器的制作方法

文檔序號(hào):11530576閱讀:253來(lái)源:國(guó)知局
分配和配置持久存儲(chǔ)器的制造方法與工藝

本公開一般涉及電子器件領(lǐng)域。更特定地,一些實(shí)施例一般涉及分配和/或配置持久存儲(chǔ)器。



背景技術(shù):

一般,用于在計(jì)算系統(tǒng)中存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器可以是易失性(存儲(chǔ)易失性信息)或非易失性的(存儲(chǔ)持久信息)。存儲(chǔ)在易失性存儲(chǔ)器中的易失性數(shù)據(jù)結(jié)構(gòu)一般用于在程序運(yùn)行時(shí)間期間支持該程序功能性所需要的暫時(shí)或中間信息。另一方面,存儲(chǔ)在非易失性(或持久存儲(chǔ)器)中的持久數(shù)據(jù)結(jié)構(gòu)在程序的運(yùn)行時(shí)間以外可用并且可以再用。此外,新的數(shù)據(jù)典型地在用戶或程序員決定使該數(shù)據(jù)持久之前首先生成為易失性數(shù)據(jù)。例如,程序員或用戶可以在對(duì)處理器直接可訪問的易失性主存儲(chǔ)器中促成易失性結(jié)構(gòu)的映射(即,例示)。另一方面,持久數(shù)據(jù)結(jié)構(gòu)在非易失性存儲(chǔ)設(shè)備(像附連到輸入/輸出(i/o或io)總線的旋轉(zhuǎn)盤)或基于非易失性存儲(chǔ)器的設(shè)備(像閃速存儲(chǔ)器)上例示。

隨著處理器中的計(jì)算能力增強(qiáng),一個(gè)關(guān)注點(diǎn)是存儲(chǔ)器可以被處理器訪問的速度。例如,為了處理數(shù)據(jù),處理器可能需要首先從存儲(chǔ)器提取數(shù)據(jù)。在完成數(shù)據(jù)處理后,結(jié)果可能需要存儲(chǔ)在存儲(chǔ)器中。因此,存儲(chǔ)器訪問速度可以對(duì)整體系統(tǒng)性能具有直接影響。

另一個(gè)重要考量是功耗。例如,在依賴電池電力的移動(dòng)計(jì)算設(shè)備中,減少功耗以允許設(shè)備在移動(dòng)時(shí)操作,這是非常重要的。因?yàn)檫^(guò)多功耗可能增加成本(例如,由于額外用電、冷卻要求提高等引起)、縮短部件壽命、限制可能使用設(shè)備的位點(diǎn)等,功耗對(duì)于非移動(dòng)性計(jì)算設(shè)備也是重要的。

硬盤驅(qū)動(dòng)器提供相對(duì)低成本的存儲(chǔ)技術(shù)方案并且在許多計(jì)算設(shè)備中使用來(lái)提供非易失性存儲(chǔ)。然而,在與例如閃速存儲(chǔ)器或固態(tài)驅(qū)動(dòng)器等非易失性存儲(chǔ)器相比時(shí),因?yàn)楸P驅(qū)動(dòng)器需要使它的盤以相對(duì)高的速度自旋并且使盤頭相對(duì)于自旋盤移動(dòng)來(lái)讀/寫數(shù)據(jù),盤驅(qū)動(dòng)器使用大量電力。該物理移動(dòng)產(chǎn)生熱并且增加功耗。同樣,在與硬驅(qū)動(dòng)器相比時(shí),基于閃存的驅(qū)動(dòng)器在執(zhí)行讀和寫操作方面快得多。為此,許多計(jì)算段轉(zhuǎn)向非易失性的閃速存儲(chǔ)器設(shè)備。

附圖說(shuō)明

參考附圖提供詳細(xì)描述。在圖中,標(biāo)號(hào)最左邊的數(shù)字標(biāo)識(shí)該標(biāo)號(hào)首次出現(xiàn)所在的圖。在不同圖中使用相同的標(biāo)號(hào)指示相似或相同的項(xiàng)目。

圖1、2、5、6和7圖示可以用于實(shí)現(xiàn)本文論述的各種實(shí)施例的計(jì)算系統(tǒng)的實(shí)施例的框圖。

圖3a示出根據(jù)實(shí)施例的配置的存儲(chǔ)器系統(tǒng)的框圖。

圖3b圖示根據(jù)實(shí)施例配置存儲(chǔ)器的方法的流程圖。

圖4a示出根據(jù)實(shí)施例的nvm管理架構(gòu)的數(shù)據(jù)中心級(jí)視圖。

圖4b圖示根據(jù)實(shí)施例的兩個(gè)管理分區(qū)的框圖。

圖4c圖示根據(jù)實(shí)施例配置存儲(chǔ)器的方法的流程圖。

具體實(shí)施方式

在下列描述中,闡述許多特定細(xì)節(jié)以便提供對(duì)各種實(shí)施例的全面理解。然而,各種實(shí)施例可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐。在其它實(shí)例中,未詳細(xì)描述眾所周知的方法、規(guī)程、部件和電路以便不混淆特定實(shí)施例。此外,實(shí)施例的各種方面可以使用例如半導(dǎo)體集成電路(“硬件”)、組織到一個(gè)或多個(gè)程序(“軟件”)內(nèi)的計(jì)算機(jī)可讀指令或硬件和軟件的某種組合等各種手段來(lái)執(zhí)行。為了該公開的目的,對(duì)“邏輯”的引用應(yīng)意指硬件、軟件或其某種組合。

如上文指示的,現(xiàn)今在計(jì)算機(jī)系統(tǒng)中使用的易失性存儲(chǔ)器多半是同構(gòu)資源,其被暫時(shí)性地分配給軟件進(jìn)程。實(shí)施例關(guān)于持久存儲(chǔ)器,其配置有最適合長(zhǎng)期性存儲(chǔ)的數(shù)據(jù)的性能和可靠性需要的獨(dú)特特性。如本文論述的,持久存儲(chǔ)器視為字節(jié)可尋址的存儲(chǔ)器,像通常的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器或dram(其有時(shí)也稱為主存儲(chǔ)器),但其跨系統(tǒng)重設(shè)或失電(powerloss)維持它的內(nèi)容。這樣的持久存儲(chǔ)器的示例包括字節(jié)可尋址3維交叉點(diǎn)存儲(chǔ)器(例如pcm(相變存儲(chǔ)器))、電阻隨機(jī)存取存儲(chǔ)器、磁阻ram、自旋轉(zhuǎn)移矩ram(sttram)。一些實(shí)施例涉及:具有獨(dú)特性能和/或可靠性特性的持久存儲(chǔ)器的區(qū)域的發(fā)現(xiàn);這些區(qū)域到服務(wù)質(zhì)量(qos)池的組織;和/或來(lái)自這些qos池的持久存儲(chǔ)器的應(yīng)用可見卷(applicationvisiblevolume)的分配。

此外,非易失性存儲(chǔ)器(在本文也能互換地稱為“持久存儲(chǔ)器”)在被引入處理器(在本文也能互換地稱為“cpu”或中央處理單元)存儲(chǔ)器層級(jí)內(nèi)時(shí)提供很大的配置靈活性。此外,nvm(非易失性存儲(chǔ)器)dimm(雙列直插存儲(chǔ)器模塊)可以分區(qū)成易失性區(qū)域和持久區(qū)域。這些區(qū)域可以采用各種交錯(cuò)或ras(可靠性、可用性和可服務(wù)性)模式操作來(lái)適應(yīng)工作負(fù)載行為和用戶要求。例如,ras可以在影響數(shù)據(jù)耐用性的配置中應(yīng)用,例如維持用戶數(shù)據(jù)的兩個(gè)副本來(lái)增加數(shù)據(jù)耐用性的鏡像。初始nvm配置可以由系統(tǒng)bios(基本輸入/輸出系統(tǒng))執(zhí)行,因?yàn)樗哂袑?duì)cpu地址映射的隱含。然而,bios并未具有理解用戶需求或表征工作負(fù)載行為的能力。為此,一些實(shí)施例:(a)使用戶能夠充分利用分區(qū)nvmdimm所提供的靈活性;(b)使由于bios配置錯(cuò)誤引起的用戶數(shù)據(jù)丟失的機(jī)會(huì)最小化;和/或(c)使用戶能夠檢索dimm上存儲(chǔ)的持久數(shù)據(jù),即使在主板出故障情況下也如此。

此外,本文論述的技術(shù)可以在各種計(jì)算系統(tǒng)(例如,其包括非移動(dòng)計(jì)算設(shè)備,例如臺(tái)式機(jī)、工作站、服務(wù)器、機(jī)架系統(tǒng)等,和移動(dòng)計(jì)算設(shè)備,例如智能電話、平板、umpc(超級(jí)移動(dòng)個(gè)人計(jì)算機(jī))、便攜式計(jì)算機(jī)、ultrabook?計(jì)算設(shè)備、智能手表、智能眼鏡、智能手環(huán)等)中提供,其包括參考圖1-7論述的那些。更特定地,圖1圖示根據(jù)實(shí)施例的計(jì)算系統(tǒng)100的框圖。該系統(tǒng)100包括一個(gè)或多個(gè)處理器102-1至102-n(在本文一般稱為“多個(gè)處理器102”或“處理器102”)。處理器102可以經(jīng)由互連或總線104通信。每個(gè)處理器可以包括各種部件,為了清楚起見,僅參考處理器102-1論述其中的一些。因此,余下的處理器102-2至102-n中的每個(gè)可以包括參考處理器102-1論述的相同或相似部件。

在實(shí)施例中,處理器102-1可以包括一個(gè)或多個(gè)處理器核106-1至106-m(在本文稱為“多個(gè)核106”,或更一般地稱為“核106”)、高速緩存108(其在各種實(shí)施例中可以是共享高速緩存或私有高速緩存)和/或路由器110。處理器核106可以在單個(gè)集成電路(ic)芯片上實(shí)現(xiàn)。此外,芯片可以包括一個(gè)或多個(gè)共享和/或私有高速緩存(例如高速緩存108)、總線或互連(例如總線或互連112)、邏輯120、邏輯150、存儲(chǔ)器控制器(例如參考圖5-7論述的那些)、nvm(非易失性存儲(chǔ)器)152(例如,其包括閃速存儲(chǔ)器、固態(tài)驅(qū)動(dòng)器(ssd))等,或其他部件。

在一個(gè)實(shí)施例中,路由器110可以用于在處理器102-1和/或系統(tǒng)100的各種部件之間通信。此外,處理器102-1可以包括不只一個(gè)路由器110。此外,許多路由器110可以通信以能夠在處理器102-1內(nèi)部或外部的各種部件之間數(shù)據(jù)路由。

高速緩存108可以存儲(chǔ)數(shù)據(jù)(例如,其包括指令),其被處理器102-1的一個(gè)或多個(gè)部件(例如核106)使用。例如,高速緩存108可以本地緩存易失性存儲(chǔ)器114中存儲(chǔ)的數(shù)據(jù)以供處理器102的部件更快訪問。如在圖1中示出的,存儲(chǔ)器114可以經(jīng)由互連104與處理器102通信。在實(shí)施例中,高速緩存108(其可以共享)可以具有各種級(jí)別,例如高速緩存108可以是中間級(jí)別的高速緩存和/或最后的級(jí)別的高速緩存(llc)。核106中的每個(gè)還可以包括1級(jí)(l1)高速緩存(116-1)(在本文一般稱為“l(fā)1高速緩存116”)。處理器102-1的各種部件可以直接、通過(guò)總線(例如,總線112)和/或存儲(chǔ)器控制器或集線器(hub)與高速緩存108通信。

如在圖1中示出的,存儲(chǔ)器114可以通過(guò)易失性存儲(chǔ)器控制器120耦合于系統(tǒng)100的其他部件。系統(tǒng)100還包括nvm存儲(chǔ)器控制器邏輯150來(lái)使nvm存儲(chǔ)器152耦合于系統(tǒng)100的各種部件。在一些實(shí)施例中,nvm存儲(chǔ)器(持久存儲(chǔ)器)152包括非易失性存儲(chǔ)器,例如納米線存儲(chǔ)器、鐵電晶體管隨機(jī)存取存儲(chǔ)器(fetram)、磁阻隨機(jī)存取存儲(chǔ)器(mram)、閃速存儲(chǔ)器、自旋轉(zhuǎn)移矩隨機(jī)存取存儲(chǔ)器(sttram)、電阻隨機(jī)存取存儲(chǔ)器、字節(jié)可尋址3維交叉點(diǎn)存儲(chǔ)器(例如pcm(相變存儲(chǔ)器))等。即使存儲(chǔ)器控制器150示出為在互連104與存儲(chǔ)器152之間耦合,邏輯150可以位于系統(tǒng)100中的別處。例如,在各種實(shí)施例中,邏輯150(或它的部分)可以在處理器102、控制器120等中的一個(gè)內(nèi)提供。在實(shí)施例中,邏輯150和nvm152包括在ssd中。然而,邏輯150控制對(duì)一個(gè)或多個(gè)nvm設(shè)備152(例如,在一些實(shí)施例中,其中一個(gè)或多個(gè)nvm設(shè)備在相同集成電路晶片上提供)的訪問,如在本文關(guān)于各種實(shí)施例論述的。在實(shí)施例中,存儲(chǔ)器控制器120和nvm控制器150還可以組合成單個(gè)控制器。

圖2圖示根據(jù)實(shí)施例的兩級(jí)系統(tǒng)主存儲(chǔ)器的框圖。一些實(shí)施例針對(duì)系統(tǒng)主存儲(chǔ)器200,其包括兩級(jí)存儲(chǔ)器(備選地在本文稱為“2lm”),該兩級(jí)存儲(chǔ)器包括系統(tǒng)盤級(jí)存儲(chǔ)的高速緩存子集(除例如運(yùn)行時(shí)數(shù)據(jù)之外)。該主存儲(chǔ)器包括:第一級(jí)存儲(chǔ)器210(備選地在本文稱為“近存儲(chǔ)器”),其包括例如由易失性存儲(chǔ)器114(例如,包括dram(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器))、nvm152等組成的更小更快存儲(chǔ)器;和第二級(jí)存儲(chǔ)器208(備選地在本文稱為“遠(yuǎn)存儲(chǔ)器”),其包括更大且更慢(相對(duì)于近存儲(chǔ)器)的易失性存儲(chǔ)器(例如,存儲(chǔ)器114)或非易失性存儲(chǔ)器存儲(chǔ)(例如,nvm152)。

在實(shí)施例中,遠(yuǎn)存儲(chǔ)器對(duì)主機(jī)操作系統(tǒng)(os)呈現(xiàn)為“主存儲(chǔ)器”,而近存儲(chǔ)器是遠(yuǎn)存儲(chǔ)器的高速緩存,其對(duì)os是透明的,從而使下文描述的實(shí)施例表現(xiàn)得與通用主存儲(chǔ)器技術(shù)方案一樣。兩級(jí)存儲(chǔ)器的管理可以通過(guò)經(jīng)由主機(jī)中央處理單元(cpu)102(其在本文能互換地稱為“處理器”)執(zhí)行的邏輯和模塊的組合來(lái)進(jìn)行。為了高效處理,近存儲(chǔ)器可以經(jīng)由一個(gè)或多個(gè)高帶寬、低延遲鏈路、總線或互連而耦合于主機(jī)系統(tǒng)cpu。遠(yuǎn)存儲(chǔ)器可以經(jīng)由一個(gè)或多個(gè)低帶寬、高延遲鏈路、總線或互連(如與近存儲(chǔ)器的相比)耦合于cpu。

參考圖2,主存儲(chǔ)器200向cpu102提供對(duì)系統(tǒng)盤存儲(chǔ)存儲(chǔ)器(例如圖5的盤驅(qū)動(dòng)器528或圖6的數(shù)據(jù)存儲(chǔ)648)的內(nèi)容的運(yùn)行時(shí)數(shù)據(jù)存儲(chǔ)和訪問。cpu可以包括高速緩存存儲(chǔ)器,其將存儲(chǔ)主存儲(chǔ)器200的內(nèi)容的子集。遠(yuǎn)存儲(chǔ)器可以包括如本文論述的易失性或非易失性存儲(chǔ)器。在這樣的實(shí)施例中,近存儲(chǔ)器210服務(wù)于遠(yuǎn)存儲(chǔ)器208的低延遲和高帶寬(即,對(duì)于cpu102訪問)高速緩存,其可以具有明顯較低帶寬和較高延遲(即,對(duì)于cpu102訪問)。

在實(shí)施例中,近存儲(chǔ)器210由近存儲(chǔ)器控制器(nmc)204管理,而遠(yuǎn)存儲(chǔ)器208由遠(yuǎn)存儲(chǔ)器控制器(fmc)206管理。fmc206將遠(yuǎn)存儲(chǔ)器208作為主存儲(chǔ)器報(bào)告給系統(tǒng)os(即,系統(tǒng)os將遠(yuǎn)存儲(chǔ)器208的大小識(shí)別為系統(tǒng)主存儲(chǔ)器200的大?。?。因?yàn)榻鎯?chǔ)器210是遠(yuǎn)存儲(chǔ)器208的“透明”高速緩存,系統(tǒng)os和系統(tǒng)應(yīng)用“不知”近存儲(chǔ)器210的存在。

cpu102進(jìn)一步包括2lm引擎模塊/邏輯202?!?lm引擎”是邏輯構(gòu)造,其可以包括硬件和/或微代碼擴(kuò)展來(lái)支持兩級(jí)主存儲(chǔ)器200。例如,2lm引擎202可以維持完整的標(biāo)簽表,其跟蹤遠(yuǎn)存儲(chǔ)器208的所有架構(gòu)上可見元件的狀態(tài)。例如,在cpu102嘗試訪問主存儲(chǔ)器200中的特定數(shù)據(jù)段時(shí),2lm引擎202確定在近存儲(chǔ)器210中是否包括數(shù)據(jù)段;如果否的話,2lm引擎202提取遠(yuǎn)存儲(chǔ)器208中的數(shù)據(jù)段并且隨后將數(shù)據(jù)段寫入近存儲(chǔ)器210(與高速緩存未命中相似)。要理解,因?yàn)榻鎯?chǔ)器210充當(dāng)遠(yuǎn)存儲(chǔ)器208的“高速緩存”,2lm引擎202可以進(jìn)一步執(zhí)行數(shù)據(jù)完善或相似高速緩存效能進(jìn)程。

此外,2lm引擎202可以管理遠(yuǎn)存儲(chǔ)器208的其他方面。例如,在遠(yuǎn)存儲(chǔ)器208包括非易失性存儲(chǔ)器(例如,nvm152)的實(shí)施例中,理解非易失性存儲(chǔ)器(例如閃存)經(jīng)受由于大量讀/寫引起的存儲(chǔ)器段的降級(jí)。從而,2lm引擎202可以采用對(duì)系統(tǒng)軟件透明的方式執(zhí)行功能,其包括損耗均衡、壞塊避免及類似物。例如,執(zhí)行損耗均衡邏輯可以包括從遠(yuǎn)存儲(chǔ)器208中具有相對(duì)低擦除周期計(jì)數(shù)的干凈未映射段的自由池中選擇段。

在一些實(shí)施例中,近存儲(chǔ)器210在大小上可以小于遠(yuǎn)存儲(chǔ)器208,但確切比率可以基于例如預(yù)計(jì)系統(tǒng)使用而變化。在這樣的實(shí)施例中,要理解因?yàn)檫h(yuǎn)存儲(chǔ)器208可以包括較密集和/或較廉價(jià)的非易失性存儲(chǔ)器,主存儲(chǔ)器200的大小可以廉價(jià)且高效增加并且獨(dú)立于系統(tǒng)中的dram(例如,近存儲(chǔ)器210)的數(shù)量而增加。

在一個(gè)實(shí)施例中,遠(yuǎn)存儲(chǔ)器208采用壓縮形式存儲(chǔ)數(shù)據(jù)并且近存儲(chǔ)器210包括對(duì)應(yīng)的未壓縮版本。從而,在近存儲(chǔ)器210請(qǐng)求遠(yuǎn)存儲(chǔ)器208的內(nèi)容時(shí),fmc206檢索內(nèi)容并且采用定制為匹配使用中的壓縮算法的固定有效載荷大?。ɡ纾?56b傳輸)返回它。

在實(shí)施例中,提供用于管理具有獨(dú)特性能和/或可靠性特性的持久存儲(chǔ)器的區(qū)域的機(jī)制。在實(shí)施例中,特性與獨(dú)立盤冗余陣列(raid)6相似。在一些實(shí)施例中,持久存儲(chǔ)器的區(qū)域組織到池內(nèi)并且池充當(dāng)卷的容量源。該系統(tǒng)的優(yōu)勢(shì)是:(a)持久存儲(chǔ)器區(qū)域可以具有有價(jià)值的獨(dú)特特性;(b)區(qū)域分組為具有相似特性的池,從而降低配置系統(tǒng)的復(fù)雜性;和/或(c)具有特定特性的卷可以從池創(chuàng)建并且可以隨獲益于那些特性的應(yīng)用來(lái)分配。

因此,一些實(shí)施例:(1)允許有多個(gè)持久存儲(chǔ)器區(qū)域,每個(gè)具有獨(dú)特的有價(jià)值特性;(2)通過(guò)引入池和卷的概念使持久存儲(chǔ)器的配置抽象化和簡(jiǎn)化;(3)提供應(yīng)用可見持久存儲(chǔ)器卷,其保留創(chuàng)建池(從其中創(chuàng)建這些卷)的獨(dú)特有價(jià)值特性;和/或(4)允許應(yīng)用從能夠使用具有匹配特性的卷來(lái)獲益。

圖3a示出根據(jù)實(shí)施例的配置存儲(chǔ)器系統(tǒng)的框圖。樣本numa(非均勻存儲(chǔ)器訪問)塊在圖3a中示出,如由px(或分區(qū)x)標(biāo)簽指示的。圖3a示出各種dimm(每個(gè)圖示為具有多個(gè)分區(qū)的列)。每個(gè)dimm耦合于相應(yīng)的存儲(chǔ)器控制器(例如在本文參考圖1-2和5-7論述的存儲(chǔ)器控制器)。在實(shí)施例中,在存儲(chǔ)器控制器中進(jìn)行交錯(cuò)和/或鏡像操作。

在圖3a中,p1-p10指示下列樣本特性,其可以與持久存儲(chǔ)器的不同池關(guān)聯(lián)。p1至p10代表具有不同特性的不同池:

p1:numa,256b通道/4kimc(集成存儲(chǔ)器控制器)交錯(cuò),套接字故障域(socketfaultdomain)

p2:numa,沒有交錯(cuò),dimm故障域

p3:numa,沒有交錯(cuò),dimm故障域

p4:numa,沒有交錯(cuò),dimm故障域

p5:numa,沒有交錯(cuò),dimm故障域

p6:uma,4k通道/1mbimc交錯(cuò)系統(tǒng)故障域

p7:uma,塊可尋址,系統(tǒng)故障域

p8:numa,鏡像,dimm故障域

p9:numa,1mb通道/1mbimc交錯(cuò),套接字故障域

p10:numa,鏡像,dimm,故障域。

圖3b圖示根據(jù)實(shí)施例配置存儲(chǔ)器的方法350的流程圖。在一個(gè)實(shí)施例中,參考圖1-3a和5-7論述的各種部件可以用于執(zhí)行參考圖3b論述的操作中的一個(gè)或多個(gè)。在實(shí)施例中,方法350的一個(gè)或多個(gè)操作在邏輯(例如,固件)中實(shí)現(xiàn),例如圖1的邏輯150和/或控制器120和/或參考其他圖論述的其他存儲(chǔ)器控制器。

參考圖1至3b,在操作352處,檢測(cè)或發(fā)現(xiàn)持久存儲(chǔ)器的區(qū)域的屬性(這些在圖中示出為px標(biāo)記的框)。在一些實(shí)施例中,考慮的屬性包括以下中的一個(gè)或多個(gè):uma、numa、交錯(cuò)類型、通信通道寬度/速度、故障域的類型(例如,系統(tǒng)、dimm、套接字等)、鏡像狀態(tài)(即,鏡像或未鏡像)等。在操作354處,具有相似特性/屬性的區(qū)域組織到qos(服務(wù)質(zhì)量)池內(nèi)。將容量貢獻(xiàn)給指定池的區(qū)域在圖中標(biāo)記px,其中x是池號(hào)。

在操作356處,qos池對(duì)系統(tǒng)管理員變得可用,例如采用以下中的一個(gè)或多個(gè)的形式:池名稱、池中持久存儲(chǔ)器的性能和/或可靠性特性,和/或池內(nèi)的可用容量。

在操作358處,管理員從池容量創(chuàng)建一個(gè)或多個(gè)卷。這些在圖中示出為圓柱。在圖中卷“v1”的情況下,它由從池p6(其是uma(均勻存儲(chǔ)器訪問))、交錯(cuò)池(其包含來(lái)自系統(tǒng)內(nèi)的所有非易失性dimm(nvdimm)的區(qū)域)的范圍組成。同樣,卷“v2”使用池p2的單一范圍并且具有numa性能特性并且它的故障域是單個(gè)nvdimm。在數(shù)據(jù)中心環(huán)境中,來(lái)自個(gè)體節(jié)點(diǎn)的卷可以組合并且作為具有特定qos特性的單個(gè)資源來(lái)管理。例如,csp(云服務(wù)提供商)可以提供兩個(gè)類型的虛擬機(jī)實(shí)例,一個(gè)具有高度可靠的持久存儲(chǔ)并且一個(gè)具有高性能存儲(chǔ)。這些實(shí)例可以分別由池p10和p1形成。csp可以預(yù)備節(jié)點(diǎn)使得預(yù)期的容量的量在每個(gè)qos池中可用。

在操作360處,卷作為持久存儲(chǔ)器或塊設(shè)備暴露于操作系統(tǒng)和/或應(yīng)用。在操作312處,卷分配給具有匹配特性的應(yīng)用。例如,“v1”分配給未numa優(yōu)化的工作負(fù)載。

在一些實(shí)施例中,軟件定義數(shù)據(jù)中心可以如下引入增加級(jí)別的自動(dòng)化:

(1)自動(dòng)卷創(chuàng)建:qos卷可以響應(yīng)于工作負(fù)載需求而自動(dòng)創(chuàng)建以及破壞。因?yàn)榫硎浅志玫?,這些可以僅在擁有它們的應(yīng)用被永久引退時(shí)刪除;

(2)自動(dòng)池創(chuàng)建:qos池可以響應(yīng)于工作負(fù)載需求而動(dòng)態(tài)擴(kuò)大和/或收縮;

(3)在出現(xiàn)新類型的工作負(fù)載時(shí)可以引入新的qos池類型的時(shí)候,可以達(dá)到最高級(jí)自動(dòng)化。例如,需要更多可預(yù)測(cè)存儲(chǔ)帶寬的應(yīng)用的需要可以通過(guò)跨越整個(gè)持久dimm的卷來(lái)滿足。具有該qos特性的池不在原始列表中(參見圖3a),但可以根據(jù)本文論述的技術(shù)來(lái)定義。

此外,持久存儲(chǔ)器是慢慢被工業(yè)接受的新的編程范式。借助于本文描述的一些實(shí)施例,應(yīng)用能夠從持久存儲(chǔ)器獲得最大利益。這樣的實(shí)施例也可以用于確保持久存儲(chǔ)器技術(shù)納入軟件定義存儲(chǔ)(sds)基礎(chǔ)設(shè)施或視覺,從而導(dǎo)致更加動(dòng)態(tài)的數(shù)據(jù)中心。

如上文論述的,非易失性存儲(chǔ)器在被引入cpu存儲(chǔ)器層級(jí)內(nèi)時(shí)提供很大的配置靈活性。此外,nvmdimm可以分區(qū)成易失性區(qū)域和持久區(qū)域。這些區(qū)域可以采用各種交叉或ras模式操作來(lái)適應(yīng)工作負(fù)載行為和用戶要求。初始nvm配置可以由系統(tǒng)bios(基本輸入/輸出系統(tǒng))執(zhí)行,因?yàn)樗哂袑?duì)cpu地址映射的隱含。然而,bios并未具有理解用戶需要或表征工作負(fù)載行為的能力。為此,一些實(shí)施例:(a)使用戶能夠充分利用分區(qū)nvmdimm所提供的靈活性;(b)使由于bios配置錯(cuò)誤引起的用戶數(shù)據(jù)丟失的機(jī)會(huì)最小化;和/或(c)使用戶能夠檢索dimm上存儲(chǔ)的持久數(shù)據(jù),甚至在主板出故障情況下也如此。

然而,現(xiàn)今市場(chǎng)上的nvmdimm未提供該級(jí)別的靈活性,因此工業(yè)上迄今為止還未遇到該問題。例如,類型1nvmdimm包含依靠nv(非易失性)存儲(chǔ)器的dram。dram在cpu地址空間中直接映射,但這些dimm無(wú)法用作nv存儲(chǔ)。類型3nvmdimm也表現(xiàn)得像塊設(shè)備,但無(wú)法采用易失性模式使用并且這些dimm上的nvm無(wú)法直接在cpu地址空間中映射。因此,nvmdimm的配置隨著制造商引入提供巨大靈活性的下一代nvm技術(shù)而成為問題。對(duì)此,一些實(shí)施例可以對(duì)這樣即將到來(lái)的nvm技術(shù)提供靈活性。

一些當(dāng)前實(shí)現(xiàn)包括dimmspd(串行存在檢測(cè))rom(只讀存儲(chǔ)器)、盤分區(qū)數(shù)據(jù)和raid元數(shù)據(jù)。下列三個(gè)表描述實(shí)施例如何與這些中的每個(gè)不同:

圖4a示出根據(jù)實(shí)施例的nvm管理架構(gòu)的數(shù)據(jù)中心級(jí)視圖。在下文描述一些部件。在最底部示出的每個(gè)nvmdimm可以分區(qū)成易失性和持久/非易失性區(qū)域。這兩個(gè)區(qū)域在cpu地址空間中映射。每個(gè)dimm還包含兩個(gè)管理分區(qū)p1和p2。p1和p2經(jīng)由專用管理(例如,郵箱)接口而可訪問。在nvm控制器中實(shí)現(xiàn)郵箱接口。管理分區(qū)甚至在nvmdimm未另外配置(即易失性和持久區(qū)域未映射到cpu地址空間內(nèi))時(shí)也可訪問。

bios以及nmv驅(qū)動(dòng)器使用郵箱接口來(lái)訪問管理分區(qū)。nvm驅(qū)動(dòng)器借助于高級(jí)配置和功率接口(acpi)規(guī)范(例如,2013年11月13日的修訂5.0a)表和/或統(tǒng)一可擴(kuò)展固件接口(uefi)規(guī)范(例如,2013年7月發(fā)布的版本2.4)來(lái)枚舉nvmdimm。例如,表規(guī)定dimm群體、配置選項(xiàng)/限制等。

本地管理應(yīng)用部件通過(guò)向nvm驅(qū)動(dòng)器發(fā)送ioctl(輸入/輸出控制)消息來(lái)訪問管理分區(qū)2。各種類型的文件系統(tǒng)可以在nvm驅(qū)動(dòng)器頂部上分層。nvm驅(qū)動(dòng)器和文件系統(tǒng)一起對(duì)遺留應(yīng)用提供標(biāo)準(zhǔn)塊和文件系統(tǒng)api(應(yīng)用編程接口)。另一方面,pm(或持久存儲(chǔ)器)感知應(yīng)用(指已被修改來(lái)理解存儲(chǔ)器可以是持久的并且它定位和重用之前保存在持久存儲(chǔ)器中的內(nèi)容的軟件)能夠繞過(guò)驅(qū)動(dòng)器層并且經(jīng)由加載/存儲(chǔ)指令直接訪問nvm,例如用于提高性能。

在數(shù)據(jù)中心環(huán)境中,管理軟件層處的工作負(fù)載調(diào)度器感知哪些應(yīng)用在每個(gè)系統(tǒng)上運(yùn)行并且因此可以關(guān)于跨易失性和持久區(qū)域等的nvmdimm的分區(qū)提出建議。

圖4b圖示根據(jù)實(shí)施例的兩個(gè)管理分區(qū)的框圖。即使參考圖4b僅論述兩個(gè)管理分區(qū),在各種實(shí)施例中可以使用更多管理分區(qū)。更特定地,管理分區(qū)2(p2)持有下列三個(gè)表:(1)nvdimm當(dāng)前配置,由bios存儲(chǔ);(2)nvdimm配置請(qǐng)求,由管理應(yīng)用存儲(chǔ);和(3)nvdimm配置響應(yīng),由bios存儲(chǔ)。

管理分區(qū)1(p1)持有nvdimm當(dāng)前配置,其還充當(dāng)最近已知可靠(lkg)配置。nvm控制器限制對(duì)p1的訪問使得bios可以對(duì)p1讀/寫,但os驅(qū)動(dòng)器/應(yīng)用無(wú)法這樣做。這確保有缺陷/惡意os軟件無(wú)法直接消除lkg。

圖4c圖示根據(jù)實(shí)施例配置存儲(chǔ)器的方法的流程圖。在一個(gè)實(shí)施例中,參考圖1-4b和5-7論述的各種部件可以用于執(zhí)行參考圖4c論述的操作中的一個(gè)或多個(gè)。在實(shí)施例中,圖4c的一個(gè)或多個(gè)操作在邏輯(例如,固件)中實(shí)現(xiàn),例如圖1的邏輯150和/或控制器120和/或參考其他圖論述的其他存儲(chǔ)器控制器。

參考圖1至4c,首先,nvm配置/重配置包括以下:(a)nvm管理控制臺(tái)針對(duì)關(guān)于nvm群體和配置選項(xiàng)的信息詢問位于每個(gè)系統(tǒng)上的管理應(yīng)用;(b)管理應(yīng)用從acpi表和p2中的表檢索該信息;(c)基于nvm配置信息、來(lái)自用戶的輸入、來(lái)自工作負(fù)載調(diào)度器和其他管理部件的提示,nvm管理控制臺(tái)可以對(duì)每個(gè)系統(tǒng)計(jì)算下一個(gè)nvm配置并且將它傳達(dá)給管理應(yīng)用。其次,管理應(yīng)用將新的配置存儲(chǔ)在nvmdimm管理分區(qū)2中,如在圖4c中示出的。第三,在重啟時(shí),bios從nvmdimm管理分區(qū)2讀取新的配置請(qǐng)求并且處理它。如果沒有新的請(qǐng)求,bios將應(yīng)用來(lái)自管理分區(qū)1的lkg配置。如果bios能夠兌現(xiàn)請(qǐng)求,它重配置dimm并且將該配置存儲(chǔ)在管理分區(qū)中。如果bios不能兌現(xiàn)請(qǐng)求,它嘗試使用lkg配置來(lái)啟動(dòng)。如果lkg配置不運(yùn)作(例如,由于dimm故障),bios將采用nvm禁用模式啟動(dòng)。對(duì)于每個(gè)處理的請(qǐng)求,bios將響應(yīng)存儲(chǔ)在管理分區(qū)中。第四,響應(yīng)由管理應(yīng)用和nvm管理控制臺(tái)來(lái)消耗。

在主板故障的情況下,用戶可以使nvmdimm物理轉(zhuǎn)向(例如,同樣的)替代系統(tǒng)。新系統(tǒng)上的bios應(yīng)用lkg配置并且重建地址映射來(lái)匹配故障系統(tǒng)。如果用戶按不正確順序安裝dimm,bios可以采用nvm禁用模式啟動(dòng)并且將用戶導(dǎo)向正確配置。

一些實(shí)施例的使用確保最終用戶能夠利用nvdimm提供的靈活性。這在兩個(gè)數(shù)據(jù)中心以及客戶端市場(chǎng)方面可以是重要的。在數(shù)據(jù)中心環(huán)境中,nvmdimm可以配置/重配置成匹配工作負(fù)載、最終用戶sla(服務(wù)等級(jí)協(xié)定)或csptco(所有權(quán)總成本)。在任務(wù)關(guān)鍵環(huán)境中,這樣的技術(shù)可以用于配置熱添加nvmdimm等。關(guān)于nvdimm技術(shù)和更一般地本地存儲(chǔ)的主要關(guān)注點(diǎn)之一還是系統(tǒng)崩潰情況下用戶數(shù)據(jù)丟失的可能性。為了解決此,一些實(shí)施例提供減輕這些問題的方式。

例如,如參考圖4a-4c論述的,一些實(shí)施例操作如下:

1.bios向管理軟件層傳達(dá)各種nvm配置選項(xiàng)和限制;

2.管理軟件層在bios規(guī)定的約束下確定最佳nvm配置。管理軟件可以在該過(guò)程期間使用復(fù)雜算法和用戶輸入;

3.管理軟件經(jīng)由位于每個(gè)nvmdimm上的專用分區(qū)向bios傳達(dá)期望配置;

4.bios處理來(lái)自管理軟件的請(qǐng)求;

a.如果沒有新的請(qǐng)求,bios將應(yīng)用最近已知可靠(lkg)配置。lkg配置存儲(chǔ)在nvmdimm上的另一個(gè)專用分區(qū)上。lkg分區(qū)可以僅被bios更新;

b.如果bios能夠兌現(xiàn)請(qǐng)求,它重配置dimm并且將該配置提升為最近已知可靠(lkg)配置;

c.如果bios不能兌現(xiàn)請(qǐng)求,它退回lkg配置或nvm禁用模式;

d.對(duì)于每個(gè)處理的請(qǐng)求,bios將響應(yīng)存儲(chǔ)在nvmdimm中。響應(yīng)由管理軟件消耗;和/或

5.如果主板出故障,dimm可以移到類似的主板,其中bios可以從每個(gè)dimm中的lkg分區(qū)讀取lkg配置并且設(shè)置nvm地址映射來(lái)匹配之前的系統(tǒng)。存儲(chǔ)在dimm上的用戶數(shù)據(jù)現(xiàn)在可以使用標(biāo)準(zhǔn)實(shí)用工具來(lái)檢索。

圖5圖示根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)500的框圖。該計(jì)算系統(tǒng)500可以包括一個(gè)或多個(gè)中央處理單元(cpu)502或處理器,其經(jīng)由互連網(wǎng)絡(luò)(或總線)504通信。處理器502可以包括通用處理器、網(wǎng)絡(luò)處理器(其處理通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)503傳達(dá)的數(shù)據(jù))、應(yīng)用處理器(例如在蜂窩電話、智能電話等中使用的那些)或其他類型的處理器(其包括精簡(jiǎn)指令集計(jì)算機(jī)(risc)處理器或復(fù)雜指令集計(jì)算機(jī)(cisc))??梢允褂酶鞣N類型的計(jì)算機(jī)網(wǎng)絡(luò)503,其包括有線(例如,以太網(wǎng)、吉比特、光纖等)或無(wú)線網(wǎng)絡(luò)(例如蜂窩、3g(第三代蜂窩電話技術(shù)或第三代無(wú)線格式(uwcc))、5g、低功率嵌入(lpe)等)。此外,處理器502可以具有單或多核設(shè)計(jì)。具有多核設(shè)計(jì)的處理器502可以使不同類型的處理器核在相同集成電路(ic)晶片上集成。具有多核設(shè)計(jì)的處理器502還可以實(shí)現(xiàn)為對(duì)稱或不對(duì)稱多處理器。

在實(shí)施例中,處理器502中的一個(gè)或多個(gè)可以與圖1的處理器102相同或相似。例如,處理器502中的一個(gè)或多個(gè)可以包括核106和/或高速緩存108中的一個(gè)或多個(gè)。參考圖1-4論述的操作還可以由系統(tǒng)500的一個(gè)或多個(gè)部件執(zhí)行。

芯片集506還可以與互連網(wǎng)絡(luò)504通信。芯片集506可以包括圖形和存儲(chǔ)器控制器集線器(gmch)508。gmch508可以包括存儲(chǔ)器控制器510(其在實(shí)施例中可以與圖1的存儲(chǔ)器控制器120相同或相似),其與存儲(chǔ)器114通信。系統(tǒng)500還可以包括各種位點(diǎn)(例如圖5中示出的那些,但可以在系統(tǒng)500內(nèi)的其他位點(diǎn)(未示出)中)中的邏輯150(例如,耦合于nvm152)。存儲(chǔ)器114可以存儲(chǔ)數(shù)據(jù),其包括由cpu502或計(jì)算系統(tǒng)500中包括的任何其他設(shè)備執(zhí)行的指令序列。在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)器114可以包括一個(gè)或多個(gè)易失性存儲(chǔ)(或存儲(chǔ)器)設(shè)備,例如隨機(jī)存取存儲(chǔ)器(ram)、動(dòng)態(tài)ram(dram)、同步dram(sdram)、靜態(tài)ram(sram)或其他類型的存儲(chǔ)設(shè)備。還可以使用非易失性存儲(chǔ)器,例如硬盤、閃存、字節(jié)可尋址3維交叉點(diǎn)存儲(chǔ)器(例如pcm)、電阻隨機(jī)存取存儲(chǔ)器、nand存儲(chǔ)器、nor存儲(chǔ)器和sttram。額外設(shè)備可以經(jīng)由互連網(wǎng)絡(luò)504通信,例如多個(gè)cpu和/或多個(gè)系統(tǒng)存儲(chǔ)器。

gmch508還可以包括圖形接口514,其與圖形加速器516通信。在本發(fā)明的一個(gè)實(shí)施例中,圖形接口514可以經(jīng)由加速圖形端口(agp)或外圍組件互連(pci)(或pci高速(pcie)接口)與圖形加速器516通信。在本發(fā)明的實(shí)施例中,顯示器517(例如平板顯示器、觸屏等)可以通過(guò)例如將存儲(chǔ)設(shè)備(例如視頻存儲(chǔ)器或系統(tǒng)存儲(chǔ)器)中存儲(chǔ)的圖像的數(shù)字表示轉(zhuǎn)化成由顯示器解釋和顯示的顯示信號(hào)的單個(gè)轉(zhuǎn)換器而與圖形接口514通信。顯示設(shè)備產(chǎn)生的顯示信號(hào)在被顯示器517解釋并且隨后在其上顯示之前可以經(jīng)過(guò)各種控制設(shè)備。

集線器接口(hubinterface)518可以允許gmch508和輸入/輸出控制集線器(ich)520通信。ich520可以向與計(jì)算系統(tǒng)500通信的i/o設(shè)備提供接口。ich520可以通過(guò)例如外圍組件互連(pci)橋、通用串行總線(usb)控制器或其他類型的外圍橋或控制器等外圍橋(或控制器)524與總線522通信。橋524可以在cpu502與外圍設(shè)備之間提供數(shù)據(jù)路徑??梢允褂闷渌愋偷耐?fù)?。多個(gè)總線也可以與ich520通信,例如通過(guò)多個(gè)橋或控制器。此外,與ich520通信的其他外設(shè)在各種實(shí)施例中可以包括集成驅(qū)動(dòng)電子器件(ide)或小型計(jì)算機(jī)系統(tǒng)接口(scsi)硬驅(qū)動(dòng)器、usb端口、鍵盤、鼠標(biāo)、并行端口、串行端口、軟盤驅(qū)動(dòng)器、數(shù)字輸出支持(例如,數(shù)字視頻接口(dvi))或其他設(shè)備。

總線522可以與音頻設(shè)備526、一個(gè)或多個(gè)盤驅(qū)動(dòng)器528和網(wǎng)絡(luò)接口設(shè)備530(其與計(jì)算機(jī)網(wǎng)絡(luò)503通信,例如經(jīng)由有線或無(wú)線接口)通信。如示出的,網(wǎng)絡(luò)接口設(shè)備530可以耦合于天線531來(lái)與網(wǎng)絡(luò)503無(wú)線(例如,經(jīng)由電氣和電子工程師協(xié)會(huì)(ieee)802.11接口(其包括ieee802.11a/b/g/n)、蜂窩接口、3g、5g、lpe等)通信。其他設(shè)備可以經(jīng)由總線522通信。在一些實(shí)施例中,各種部件(例如網(wǎng)絡(luò)接口設(shè)備530)也可以與gmch508通信。另外,處理器502和gmch508可以組合來(lái)形成單個(gè)芯片。此外,在其他實(shí)施例中,圖形加速器516可以包括在gmch508內(nèi)。

此外,計(jì)算系統(tǒng)500可以包括易失性和/或非易失性存儲(chǔ)器(或存儲(chǔ))。例如,非易失性存儲(chǔ)器可以包括下列中的一個(gè)或多個(gè):只讀存儲(chǔ)器(rom)、可編程rom(prom)、可擦除prom(eprom)、電eprom(eeprom)、盤驅(qū)動(dòng)器(例如,528)、軟盤、壓縮盤rom(cd-rom)、數(shù)字多功能盤(dvd)、閃速存儲(chǔ)器、磁光盤或能夠存儲(chǔ)電子數(shù)據(jù)(例如,其包括指令)的其他類型的非易失性機(jī)器可讀介質(zhì)。

圖6圖示根據(jù)實(shí)施例采用點(diǎn)到點(diǎn)(ptp)配置設(shè)置的計(jì)算系統(tǒng)600。特別地,圖6示出一種系統(tǒng),其中處理器、存儲(chǔ)器和輸入/輸出設(shè)備通過(guò)許多點(diǎn)到點(diǎn)接口互連。參考圖1-5論述的操作可以由系統(tǒng)600的一個(gè)或多個(gè)部件執(zhí)行。

如在圖6中圖示的,系統(tǒng)600可以包括若干處理器,為了清楚起見僅示出其中的兩個(gè):處理器602和604。處理器602和604各自可以包括本地存儲(chǔ)器控制器集線器(mch)606和608以能夠與存儲(chǔ)器610和612通信。存儲(chǔ)器610和/或612可以存儲(chǔ)各種數(shù)據(jù),例如參考圖1和/或5的存儲(chǔ)器114或nvm152論述的那些。在一些實(shí)施例中,mch606和608也可以包括圖1的存儲(chǔ)器控制器120和/或邏輯150。

在實(shí)施例中,處理器602和604可以是參考圖5論述的處理器502中的一個(gè)。處理器602和604可以分別使用點(diǎn)到點(diǎn)(ptp)接口電路616和618經(jīng)由ptp接口614交換數(shù)據(jù)。處理器602和604各自也可以使用點(diǎn)到點(diǎn)接口電路626、628、630和632經(jīng)由個(gè)體ptp接口622和624與芯片集620交換數(shù)據(jù)。芯片集620可以進(jìn)一步經(jīng)由高性能圖形接口636與高性能圖形電路634交換數(shù)據(jù),例如使用ptp接口電路637。如參考圖5論述的,在一些實(shí)施例中,圖形接口636可以耦合于顯示設(shè)備(例如,顯示器517)。

如在圖6中示出的,圖1的核106和/或高速緩存108中的一個(gè)或多個(gè)可以位于處理器602和604內(nèi)。然而,在圖6的系統(tǒng)600內(nèi)的其他電路、邏輯單元或設(shè)備中可以存在其他實(shí)施例。此外,其他實(shí)施例可以遍及圖6中圖示的若干電路、邏輯單元或設(shè)備而分布。

芯片集620可以使用ptp接口電路641與總線640通信。總線640可以具有與之通信的一個(gè)或多個(gè)設(shè)備,例如總線橋642和i/o設(shè)備643。經(jīng)由總線644,總線橋642可以與其他設(shè)備通信,例如鍵盤/鼠標(biāo)645、通信設(shè)備646(例如調(diào)制解調(diào)器、網(wǎng)絡(luò)接口設(shè)備或可以與計(jì)算機(jī)網(wǎng)絡(luò)503通信的其他通信設(shè)備,如參考網(wǎng)絡(luò)接口設(shè)備530論述的,例如包括經(jīng)由天線531)、音頻i/o設(shè)備和/或數(shù)據(jù)存儲(chǔ)設(shè)備648。數(shù)據(jù)存儲(chǔ)設(shè)備648可以存儲(chǔ)由處理器602和/或604執(zhí)行的代碼649。

在一些實(shí)施例中,本文論述的部件中的一個(gè)或多個(gè)可以包含在芯片上系統(tǒng)(soc)設(shè)備上。圖7圖示根據(jù)實(shí)施例的soc封裝的框圖。如在圖7中圖示的,soc702包括一個(gè)或多個(gè)中央處理單元(cpu)核720、一個(gè)或多個(gè)圖形處理器單元(cpu)核730、輸入/輸出(i/o)接口740和存儲(chǔ)器控制器742(其可以與存儲(chǔ)器控制器120和/或邏輯150相同或相同)。soc封裝702的各種部件可以耦合于互連或總線,例如在本文參考其他圖論述的。soc封裝702還可以包括更多或更少的部件,例如在本文參考其他圖論述的那些。此外,soc封裝720的每個(gè)部件可以包括一個(gè)或多個(gè)其他部件,例如參考本文的其他圖論述的。在一個(gè)實(shí)施例中,在一個(gè)或多個(gè)集成電路(ic)晶片上提供soc封裝702(和它的部件),例如,它們封裝到單個(gè)半導(dǎo)體器件上。

如在圖7中圖示的,soc封裝702經(jīng)由存儲(chǔ)器控制器742耦合于存儲(chǔ)器760(其可以與在本文參考其他圖論述的存儲(chǔ)器相似或相同)。在實(shí)施例中,存儲(chǔ)器760(或它的一部分)可以在soc封裝702上集成。

i/o接口740可以耦合于一個(gè)或多個(gè)i/o設(shè)備770,例如經(jīng)由互連和/或總線,例如在本文參考其他圖論述的。i/o設(shè)備770可以包括鍵盤、鼠標(biāo)、觸控板、顯示器、圖像/視頻捕捉設(shè)備(例如拍攝裝置或攝影機(jī)/錄像機(jī))、觸屏、揚(yáng)聲器或類似物中的一個(gè)或多個(gè)。此外,在實(shí)施例中,soc封裝702可以包括/集成邏輯150和/或存儲(chǔ)器控制器120。備選地,邏輯150和/或存儲(chǔ)器控制器120可以在soc封裝702外部提供(即,作為離散邏輯)。

下列示例關(guān)于另外的實(shí)施例。示例1包括一種裝置,其包括:存儲(chǔ)器控制器邏輯,其耦合于非易失性存儲(chǔ)器,用于至少部分基于一個(gè)或多個(gè)屬性將非易失性存儲(chǔ)器配置為多個(gè)分區(qū),其中對(duì)應(yīng)用或操作系統(tǒng)可見的一個(gè)或多個(gè)卷要由多個(gè)分區(qū)中的一個(gè)或多個(gè)形成,其中一個(gè)或多個(gè)卷中的每個(gè)包括多個(gè)分區(qū)中的具有來(lái)自一個(gè)或多個(gè)屬性的至少一個(gè)相似屬性的一個(gè)或多個(gè)分區(qū)。示例2包括示例1的裝置,其中非易失性存儲(chǔ)器要映射到處理器地址空間內(nèi)以允許處理器直接對(duì)非易失性存儲(chǔ)器尋址。示例3包括示例1的裝置,其中一個(gè)或多個(gè)屬性包括以下中的一個(gè)或多個(gè):uma(均勻存儲(chǔ)器訪問)、numa(非均勻存儲(chǔ)器訪問)、交錯(cuò)類型、通信通道寬度或速度、故障域類型或鏡像狀態(tài)。示例4包括示例1的裝置,其中一個(gè)或多個(gè)卷跨系統(tǒng)重設(shè)或失電而維持它們的內(nèi)容。示例5包括示例1的裝置,其中非易失性存儲(chǔ)器包括一個(gè)或多個(gè)非易失性dimm(雙列直插存儲(chǔ)器模塊)。示例6包括示例1的裝置,其中非易失性存儲(chǔ)器包括以下中的一個(gè)或多個(gè):納米線存儲(chǔ)器、鐵電晶體管隨機(jī)存取存儲(chǔ)器(fetram)、磁阻隨機(jī)存取存儲(chǔ)器(mram)、閃速存儲(chǔ)器、自旋轉(zhuǎn)移矩隨機(jī)存取存儲(chǔ)器(sttram)、電阻隨機(jī)存取存儲(chǔ)器、字節(jié)可尋址3維交叉點(diǎn)存儲(chǔ)器和相變存儲(chǔ)器(pcm)。示例7包括示例1的裝置,其中一個(gè)或多個(gè)處理器核耦合于存儲(chǔ)器控制器邏輯來(lái)訪問非易失性存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù)。示例8包括示例1的裝置,其中存儲(chǔ)器控制器邏輯、一個(gè)或多個(gè)處理器核和非易失性存儲(chǔ)器中的一個(gè)或多個(gè)在相同集成電路晶片上。

示例9包括一種裝置,其包括:存儲(chǔ)器控制器邏輯,其耦合于非易失性存儲(chǔ)器(nvm)雙列直插存儲(chǔ)器模塊(dimm),用于將nvmdimm配置為持久區(qū)域和易失性區(qū)域,其中nvmdimm要映射到處理器的地址空間內(nèi)以允許處理器直接對(duì)nvmdimm尋址,其中nvmdimm使用至少兩個(gè)管理分區(qū),其中這些管理分區(qū)甚至在nvmdimm已映射到處理器的地址空間內(nèi)之前可訪問。示例10包括示例9的裝置,其中管理分區(qū)要經(jīng)由管理接口而可訪問。示例11包括示例10的裝置,其中基本輸入/輸出系統(tǒng)(bios)或nvm驅(qū)動(dòng)器中的一個(gè)或多個(gè)使用管理接口來(lái)訪問管理分區(qū)。示例12包括示例11的裝置,其中nvm驅(qū)動(dòng)器至少部分基于來(lái)自高級(jí)配置和功率接口(acpi)的信息來(lái)使用管理接口。示例13包括示例9的裝置,其中至少兩個(gè)管理分區(qū)中的一個(gè)存儲(chǔ)對(duì)應(yīng)于nvmdimm的最近已知可靠配置的信息。示例14包括示例13的裝置,其中存儲(chǔ)對(duì)應(yīng)于最近已知可靠配置的數(shù)據(jù)的分區(qū)被保護(hù)以免受操作系統(tǒng)影響。示例15包括示例13的裝置,其中基本輸入/輸出系統(tǒng)(bios)訪問存儲(chǔ)在分區(qū)中的數(shù)據(jù),該分區(qū)存儲(chǔ)對(duì)應(yīng)于最近已知可靠配置的數(shù)據(jù)。示例16包括示例13的裝置,其中管理軟件使用至少兩個(gè)管理分區(qū)中的一個(gè)來(lái)將nvm配置數(shù)據(jù)傳達(dá)到bios。示例17包括示例13的裝置,其中在主板出故障的情況下,nvmdimm至少部分基于最近已知可靠配置信息轉(zhuǎn)向替代系統(tǒng)。示例18包括示例9的裝置,其中nvmdimm包括以下中的一個(gè)或多個(gè):納米線存儲(chǔ)器、鐵電晶體管隨機(jī)存取存儲(chǔ)器(fetram)、磁阻隨機(jī)存取存儲(chǔ)器(mram)、閃速存儲(chǔ)器、自旋轉(zhuǎn)移矩隨機(jī)存取存儲(chǔ)器(sttram)、電阻隨機(jī)存取存儲(chǔ)器、字節(jié)可尋址3維交叉點(diǎn)存儲(chǔ)器和相變存儲(chǔ)器(pcm)。示例19包括示例9的裝置,其中一個(gè)或多個(gè)處理器核耦合于存儲(chǔ)器控制器邏輯來(lái)訪問nvmdimm中存儲(chǔ)的數(shù)據(jù)。

示例20包括一種方法,其包括:至少部分基于一個(gè)或多個(gè)屬性將非易失性存儲(chǔ)器配置為多個(gè)分區(qū),其中對(duì)應(yīng)用或操作系統(tǒng)可見的一個(gè)或多個(gè)卷由多個(gè)分區(qū)中的一個(gè)或多個(gè)形成,其中一個(gè)或多個(gè)卷中的每個(gè)包括多個(gè)分區(qū)中的具有來(lái)自一個(gè)或多個(gè)屬性的至少一個(gè)相似屬性的一個(gè)或多個(gè)分區(qū)。示例21包括示例20的方法,其進(jìn)一步包括將非易失性存儲(chǔ)器映射到處理器的地址空間以允許處理器直接對(duì)非易失性存儲(chǔ)器尋址。示例22包括示例20的方法,其中一個(gè)或多個(gè)屬性包括以下中的一個(gè)或多個(gè):uma(均勻存儲(chǔ)器訪問)、numa(非均勻存儲(chǔ)器訪問)、交錯(cuò)類型、通信通道寬度或速度、故障域類型或鏡像狀態(tài)。

示例23包括一種方法,其包括:將nvmdimm配置為持久區(qū)域和易失性區(qū)域,其中nvmdimm映射到處理器的地址空間內(nèi)以允許處理器直接對(duì)nvmdimm尋址,其中nvmdimm使用至少兩個(gè)管理分區(qū),其中這些管理分區(qū)甚至在nvmdimm已經(jīng)映射到處理器的地址空間內(nèi)之前可訪問。示例24包括示例23的方法,其中管理分區(qū)要經(jīng)由管理接口而可訪問。示例25包括示例24的裝置,其中基本輸入/輸出系統(tǒng)(bios)或nvm驅(qū)動(dòng)器中的一個(gè)或多個(gè)使用管理接口來(lái)訪問管理分區(qū)。

示例26包括一種系統(tǒng),其包括:處理器,其具有一個(gè)或多個(gè)處理器核;和存儲(chǔ)器控制器邏輯,其耦合于處理器和非易失性存儲(chǔ)器,用于至少部分基于一個(gè)或多個(gè)屬性將非易失性存儲(chǔ)器配置為多個(gè)分區(qū),其中對(duì)應(yīng)用或操作系統(tǒng)可見的一個(gè)或多個(gè)卷要由多個(gè)分區(qū)中的一個(gè)或多個(gè)形成,其中一個(gè)或多個(gè)卷中的每個(gè)包括多個(gè)分區(qū)中的具有來(lái)自一個(gè)或多個(gè)屬性的至少一個(gè)相似屬性的一個(gè)或多個(gè)分區(qū)。示例27包括示例26的系統(tǒng),其中非易失性存儲(chǔ)器要映射到處理器的地址空間內(nèi)以允許處理器直接對(duì)非易失性存儲(chǔ)器尋址。示例28包括示例26的系統(tǒng),其中一個(gè)或多個(gè)屬性包括以下中的一個(gè)或多個(gè):uma(均勻存儲(chǔ)器訪問)、numa(非均勻存儲(chǔ)器訪問)、交錯(cuò)類型、通信通道寬度或速度、故障域類型或鏡像狀態(tài)。

示例29包括一種系統(tǒng),其包括:處理器,其具有一個(gè)或多個(gè)處理器核;和存儲(chǔ)器控制器邏輯,其耦合于處理器和非易失性存儲(chǔ)器(nvm)雙列直插存儲(chǔ)器模塊(dimm),用于將nvmdimm配置為持久區(qū)域和易失性區(qū)域,其中nvmdimm要映射到處理器的地址空間內(nèi)以允許處理器直接對(duì)nvmdimm尋址,其中nvmdimm使用至少兩個(gè)管理分區(qū),其中這些管理分區(qū)甚至在nvmdimm已映射到處理器的地址空間之前可訪問。示例30包括示例29的系統(tǒng),其中管理分區(qū)要經(jīng)由管理接口而可訪問。示例31包括示例30的系統(tǒng),其中基本輸入/輸出系統(tǒng)(bios)或nvm驅(qū)動(dòng)器中的一個(gè)或多個(gè)使用管理接口來(lái)訪問管理分區(qū)。

示例32包括一種裝置,其包括用于執(zhí)行如在任何之前的示例中闡述的方法的部件。

示例33包括機(jī)器可讀存儲(chǔ),其包括機(jī)器可讀指令,這些指令在執(zhí)行時(shí)實(shí)現(xiàn)如在任何之前的示例中闡述的方法或?qū)崿F(xiàn)如在任何之前的示例中闡述的裝置。

在各種實(shí)施例中,例如參考圖1-7在本文論述的操作可以實(shí)現(xiàn)為硬件(例如,電路)、軟件、固件、微代碼或其組合,其可以作為計(jì)算機(jī)程序產(chǎn)品而提供,例如包括有形(例如,非暫時(shí)性)機(jī)器可讀或計(jì)算機(jī)可讀介質(zhì),具有存儲(chǔ)在其上的指令(或軟件規(guī)程),用于對(duì)計(jì)算機(jī)編程來(lái)執(zhí)行本文論述的進(jìn)程。術(shù)語(yǔ)“邏輯”通過(guò)示例還可以包括軟件、硬件或軟件和硬件的組合。機(jī)器可讀介質(zhì)可以包括存儲(chǔ)設(shè)備,例如關(guān)于圖1-7論述的那些。

另外,這樣的有形計(jì)算機(jī)可讀介質(zhì)可以作為計(jì)算機(jī)程序產(chǎn)品而被下載,其中程序可經(jīng)由通信鏈路(例如,總線、調(diào)制解調(diào)器或網(wǎng)絡(luò)連接)通過(guò)數(shù)據(jù)信號(hào)(例如在載波或其它傳播介質(zhì)中)從遠(yuǎn)程計(jì)算機(jī)(例如,服務(wù)器)傳遞到請(qǐng)求計(jì)算機(jī)(例如,客戶端)。

在說(shuō)明書中對(duì)“一個(gè)實(shí)施例”或“實(shí)施例”的引用意指連同實(shí)施例描述的特定特征、結(jié)構(gòu)或特性可以包括在至少一個(gè)實(shí)現(xiàn)中。短語(yǔ)“在一個(gè)實(shí)施例中”在說(shuō)明書中各種地方的出現(xiàn)可以全部指相同實(shí)施例,或可以并不全指相同的實(shí)施例。

在描述和權(quán)利要求中,還可使用術(shù)語(yǔ)“耦合”和“連接”連同它們的派生詞。在一些實(shí)施例中,“連接”用于指示兩個(gè)或以上的元件彼此直接物理或電接觸。“耦合”可以意指兩個(gè)或以上的元件直接物理或電接觸。然而,“耦合”還可以意指兩個(gè)或以上的元件可彼此不直接接觸,但仍可彼此配合或相互作用。

從而,盡管實(shí)施例已經(jīng)用結(jié)構(gòu)特征和/或方法動(dòng)作特定的語(yǔ)言描述,要理解要求保護(hù)的主旨可不限于描述的特定特征或動(dòng)作。相反,特定特征和動(dòng)作作為實(shí)現(xiàn)要求保護(hù)的主旨的示例形式而公開。

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