本公開(kāi)一般地涉及電子設(shè)備的領(lǐng)域。更特別地,本發(fā)明的一些實(shí)施例一般地涉及非易失性存儲(chǔ)器模塊。
背景技術(shù):
例如多核處理的系統(tǒng)架構(gòu)中的持續(xù)進(jìn)步和應(yīng)用中的進(jìn)步要求存儲(chǔ)器系統(tǒng)中的對(duì)應(yīng)進(jìn)步。非易失性存儲(chǔ)器系統(tǒng)提供勝過(guò)易失性存儲(chǔ)器的若干優(yōu)點(diǎn)。然而,將現(xiàn)有存儲(chǔ)器系統(tǒng)(例如雙列直插式存儲(chǔ)器模塊(DIMM))適配成結(jié)合非易失性存儲(chǔ)器的能力由于包括成本、功率管理和熱管理的若干因素而受限。
相應(yīng)地,將非易失性存儲(chǔ)器模塊結(jié)合到現(xiàn)有存儲(chǔ)器架構(gòu)中的技術(shù)可能發(fā)現(xiàn)實(shí)用。
附圖說(shuō)明
參考附圖來(lái)提供詳細(xì)描述。在圖中,參考號(hào)碼的(一個(gè)或多個(gè))最左數(shù)位標(biāo)識(shí)該參考號(hào)碼首次出現(xiàn)在其中的圖。不同附圖中的相同參考號(hào)碼的使用指示類(lèi)似或相同的物品。
圖1是根據(jù)本文中討論的各種示例的包括存儲(chǔ)器模塊的系統(tǒng)的示意性框圖圖示。
圖2A-2B是可以根據(jù)本文中討論的各種實(shí)施例實(shí)現(xiàn)的非易失性存儲(chǔ)器模塊的示例性架構(gòu)的示意性框圖。
圖3是可以根據(jù)本文中討論的各種實(shí)施例實(shí)現(xiàn)的非易失性存儲(chǔ)器模塊的電氣架構(gòu)的示意性框圖。
圖4和5A-5B是圖示了根據(jù)本文中討論的各種實(shí)施例的實(shí)現(xiàn)非易失性存儲(chǔ)器模塊的方法中的操作的流程圖。
圖6-10是根據(jù)本文中討論的各種實(shí)施例的可以被適配成實(shí)現(xiàn)非易失性存儲(chǔ)器模塊的電子設(shè)備的示意性框圖圖示。
具體實(shí)施方式
在本文中描述了非易失性存儲(chǔ)器模塊,其被配置成以用于諸如雙數(shù)據(jù)速率(DDR)同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DDS SDRAM)之類(lèi)的易失性存儲(chǔ)器的雙列直插式存儲(chǔ)器模塊(DIMM)形式因子操作。更特別地,在本文中描述了結(jié)合執(zhí)行功率管理功能的板載控制器的存儲(chǔ)器模塊,所述功率管理功能使能符合由聯(lián)合電子設(shè)備工程委員會(huì)(JEDEC)發(fā)布的針對(duì)DIMM的易失性存儲(chǔ)器(例如DDR SDRAM)標(biāo)準(zhǔn)的存儲(chǔ)器模塊,所述標(biāo)準(zhǔn)在2012年9月公布的文檔號(hào)碼JESD79-4下在www.jedec.org處的JEDEC網(wǎng)站處為公眾可用。為了實(shí)現(xiàn)這一點(diǎn),可以將功率管理控制器結(jié)合到存儲(chǔ)器模塊上以將來(lái)自輸入功率軌(power rail)的功率從輸入電壓轉(zhuǎn)換成不同于輸入電壓的至少一個(gè)輸出電壓。功率管理控制器執(zhí)行下面更詳細(xì)描述的附加功能。
在以下描述中,闡述眾多特定細(xì)節(jié)以便提供對(duì)各種實(shí)施例的透徹理解。然而,可以在沒(méi)有特定細(xì)節(jié)的情況下實(shí)踐本發(fā)明的各種實(shí)施例。在其他實(shí)例中,并未詳細(xì)描述公知的方法、過(guò)程、組件和電路以便不使本發(fā)明的特定實(shí)施例模糊。進(jìn)一步地,可以使用各種部件來(lái)執(zhí)行本發(fā)明的實(shí)施例的各種方面,所述各種部件諸如集成半導(dǎo)體電路(“硬件”)、組織成一個(gè)或多個(gè)程序(“軟件”)的計(jì)算機(jī)可讀指令或硬件和軟件的某組合。出于本公開(kāi)的目的,對(duì)“邏輯”的引用將意味著硬件、軟件或其某組合。
圖1是根據(jù)本文中討論的各種示例的包括存儲(chǔ)器模塊的系統(tǒng)的示意性框圖圖示。參考圖1,系統(tǒng)主存儲(chǔ)器100提供運(yùn)行時(shí)數(shù)據(jù)存儲(chǔ)和向CPU 110提供對(duì)(未示出的)系統(tǒng)盤(pán)存儲(chǔ)存儲(chǔ)器的內(nèi)容的訪(fǎng)問(wèn)。CPU 110可以包括高速緩存,其將存儲(chǔ)主存儲(chǔ)器100的內(nèi)容的子集。
在該實(shí)施例中存在兩個(gè)存儲(chǔ)器級(jí)別。主存儲(chǔ)器100包括被示出為近存儲(chǔ)器(DRAM)120的一個(gè)級(jí)別的易失性存儲(chǔ)器和被示出為遠(yuǎn)存儲(chǔ)器130的一個(gè)級(jí)別的存儲(chǔ)器。遠(yuǎn)存儲(chǔ)器可以包括易失性存儲(chǔ)器(例如靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM))、非易失性存儲(chǔ)器,或者可以包括非易失性存儲(chǔ)器,例如相變存儲(chǔ)器、NAND(閃速)存儲(chǔ)器、鐵電隨機(jī)存取存儲(chǔ)器(FeRAM)、基于納米線(xiàn)的非易失性存儲(chǔ)器、結(jié)合憶阻器技術(shù)的存儲(chǔ)器、諸如相變存儲(chǔ)器(PCM)之類(lèi)的三維(3D)交叉點(diǎn)存儲(chǔ)器、磁阻隨機(jī)存取存儲(chǔ)器(MRAM)、自旋轉(zhuǎn)移扭矩存儲(chǔ)器(STT-RAM)或NAND閃存。在該實(shí)施例中,近存儲(chǔ)器120起遠(yuǎn)存儲(chǔ)器130的低等待時(shí)間和高帶寬(即,用于CPU 110訪(fǎng)問(wèn))高速緩存的作用,所述遠(yuǎn)存儲(chǔ)器130可能具有值得注意地較低的帶寬和較高的等待時(shí)間(即,用于CPU 110訪(fǎng)問(wèn))。
在該實(shí)施例中,近存儲(chǔ)器120由近存儲(chǔ)器控制器(NMC)125管理,而遠(yuǎn)存儲(chǔ)器130由遠(yuǎn)存儲(chǔ)器控制器(FMC)135管理。FMC 135將遠(yuǎn)存儲(chǔ)器130作為主存儲(chǔ)器報(bào)告給系統(tǒng)操作系統(tǒng)(OS)——即系統(tǒng)OS將遠(yuǎn)存儲(chǔ)器130的大小識(shí)別為系統(tǒng)主存儲(chǔ)器100的大小。系統(tǒng)OS和系統(tǒng)應(yīng)用“未意識(shí)到”近存儲(chǔ)器120的存在,因?yàn)槠涫沁h(yuǎn)存儲(chǔ)器130的“透明”高速緩存。
CPU 110進(jìn)一步包括兩級(jí)存儲(chǔ)器(2LM)引擎模塊/邏輯140。“2LM引擎”是可以包括硬件和/或微代碼擴(kuò)展以支持兩級(jí)主存儲(chǔ)器100的邏輯構(gòu)造。例如,2LM引擎140可以維護(hù)跟蹤遠(yuǎn)存儲(chǔ)器130的所有架構(gòu)上可見(jiàn)元件的狀態(tài)的完整標(biāo)記表。例如,當(dāng)CPU 110嘗試訪(fǎng)問(wèn)主存儲(chǔ)器100中的特定數(shù)據(jù)段時(shí),2LM引擎140確定所述數(shù)據(jù)段是否被包括在近存儲(chǔ)器120中;如果其不被包括在近存儲(chǔ)器120中,則2LM引擎140在遠(yuǎn)存儲(chǔ)器130中取出該數(shù)據(jù)段并且隨后將該數(shù)據(jù)段寫(xiě)入到近存儲(chǔ)器120(類(lèi)似于高速緩存缺失)。要理解,因?yàn)榻鎯?chǔ)器120充當(dāng)遠(yuǎn)存儲(chǔ)器130的“高速緩存”,所以2LM引擎140可以進(jìn)一步執(zhí)行數(shù)據(jù)預(yù)取或本領(lǐng)域中已知的類(lèi)似的高速緩存效率過(guò)程。
2LM引擎140可以管理遠(yuǎn)存儲(chǔ)器130的其他方面。例如,在其中遠(yuǎn)存儲(chǔ)器130包括非易失性存儲(chǔ)器的實(shí)施例中,應(yīng)理解諸如閃存之類(lèi)的非易失性存儲(chǔ)器經(jīng)受歸因于大量讀取/寫(xiě)入的存儲(chǔ)器段的退化。因此,2LM引擎140可以以對(duì)系統(tǒng)軟件透明的方式執(zhí)行包括磨損均衡、壞塊避免等的功能。例如,執(zhí)行磨損均衡邏輯可以包括從遠(yuǎn)存儲(chǔ)器130中的具有相對(duì)低的擦除循環(huán)計(jì)數(shù)的潔凈的未經(jīng)映射段的自由池選擇段。
要理解,近存儲(chǔ)器120在大小上小于遠(yuǎn)存儲(chǔ)器130,但是確切的比率可以基于例如預(yù)期的系統(tǒng)使用而變化。在該實(shí)施例中,要理解,因?yàn)檫h(yuǎn)存儲(chǔ)器130包括較密集、較低廉的非易失性存儲(chǔ)器,所以可以使主存儲(chǔ)器100低廉且高效地并且獨(dú)立于系統(tǒng)中的DRAM(即近存儲(chǔ)器120)的量增加。
在各種實(shí)施例中,存儲(chǔ)器設(shè)備150中的存儲(chǔ)器中的至少一些可以被配置為DIMM設(shè)備并且可以包括非易失性存儲(chǔ)器,例如相變存儲(chǔ)器(PCM)、三維交叉點(diǎn)存儲(chǔ)器、電阻存儲(chǔ)器、納米線(xiàn)存儲(chǔ)器、鐵電晶體管隨機(jī)存取存儲(chǔ)器(FeTRAM)、諸如NAND或NOR之類(lèi)的閃存、結(jié)合憶阻器技術(shù)的磁阻隨機(jī)存取存儲(chǔ)器(MRAM)存儲(chǔ)器、自旋轉(zhuǎn)移扭矩(STT)-MRAM。
圖2A-2B是可以根據(jù)本文中討論的各種實(shí)施例實(shí)現(xiàn)的非易失性存儲(chǔ)器模塊的示例性架構(gòu)的示意性框圖。更特別地,圖2A描繪了可以根據(jù)本文中討論的各種實(shí)施例實(shí)現(xiàn)的非易失性存儲(chǔ)器模塊的第一側(cè)并且圖2B描繪了第二側(cè)。參考圖2A-2B,在一些示例中,存儲(chǔ)器模塊200可以包括被定尺寸成適合在DIMM插槽內(nèi)并且具有多個(gè)連接器或引腳212的卡210,所述多個(gè)連接器或引腳212被定位成提供與電子設(shè)備的電路板上的DIMM插槽中的對(duì)應(yīng)引腳的電氣接觸。
存儲(chǔ)器模塊200可以進(jìn)一步包括非易失性存儲(chǔ)器組220A、220B、220C、220D,其可以在本文中共同由參考數(shù)字220指代。如上面描述的那樣,存儲(chǔ)器組220中的存儲(chǔ)器中的至少一些可以配置為DIMM設(shè)備并且可以實(shí)現(xiàn)非易失性存儲(chǔ)器,例如NAND(閃速)存儲(chǔ)器、鐵電隨機(jī)存取存儲(chǔ)器(FeRAM)、基于納米線(xiàn)的非易失性存儲(chǔ)器、結(jié)合憶阻器技術(shù)的存儲(chǔ)器、諸如相變存儲(chǔ)器(PCM)之類(lèi)的三維(3D)交叉點(diǎn)存儲(chǔ)器、自旋轉(zhuǎn)移扭矩存儲(chǔ)器(STT-RAM)或NAND閃存。
存儲(chǔ)器模塊200可以進(jìn)一步包括可以對(duì)應(yīng)于在圖1中描繪的控制器142的介質(zhì)控制器230、時(shí)鐘232和功率管理控制器240。在一些示例中,功率管理控制器240可以被結(jié)合到與介質(zhì)控制器240分離的集成電路器件(例如專(zhuān)用集成電路(ASIC))中。在其他示例中,功率管理控制器240可以被集成到介質(zhì)控制器230中。
圖3是可以根據(jù)本文中討論的各種實(shí)施例實(shí)現(xiàn)的諸如存儲(chǔ)器模塊200之類(lèi)的非易失性存儲(chǔ)器模塊200的電氣架構(gòu)的示意性框圖。參考圖3,在一些示例中,非易失性存儲(chǔ)器模塊200經(jīng)由合適的主機(jī)連接器310耦合到主機(jī)設(shè)備。在一些示例中,主機(jī)連接器310提供包括在輸入軌320上提供的12伏輸入的電氣連接。主機(jī)連接器310還可以向一個(gè)或多個(gè)閃存模塊330和一個(gè)或多個(gè)存儲(chǔ)器緩沖器332提供功率。
輸入軌320上的電功率被提供給功率管理控制器240。在操作中,功率管理控制器240從輸入功率軌320接收電功率并且經(jīng)由輸出功率軌322A-322J向非易失性存儲(chǔ)器模塊200的其他組件分配電功率,所述輸出功率軌322A-322J可以在本文中共同由參考數(shù)字332指代。輸出功率軌322向存儲(chǔ)器模塊200的包括存儲(chǔ)器控制器230、時(shí)鐘232和一個(gè)或多個(gè)非易失性存儲(chǔ)器模塊220的其他組件提供電功率。控制器240還向能量存儲(chǔ)設(shè)備250提供功率。在一些示例中,能量存儲(chǔ)設(shè)備250可以實(shí)現(xiàn)為一個(gè)或多個(gè)電容器、電池等。
如上面描述的那樣,在一些實(shí)施例中,(一個(gè)或多個(gè))存儲(chǔ)器模塊200中的控制器240實(shí)現(xiàn)存儲(chǔ)器模塊200中的功率管理操作。將參考圖4和5A-5B來(lái)描述由控制器240和/或驅(qū)動(dòng)162實(shí)現(xiàn)的操作。
首先參考圖4,在操作410處,功率管理控制器240監(jiān)視輸入功率軌處的電壓。在操作415處,控制器240確定輸入功率總線(xiàn)處的電壓是否滿(mǎn)足最小閾值。如果電壓不滿(mǎn)足閾值,則控制器240繼續(xù)監(jiān)視輸入軌。相比之下,如果在操作415處輸入功率軌處的電壓滿(mǎn)足或超過(guò)閾值,則控制傳到操作420并且控制器240發(fā)起上電序列。
在一些示例中,上電序列從輸入功率軌320接收電功率(操作425)并且然后轉(zhuǎn)換電功率且經(jīng)由輸出軌322將其分配給存儲(chǔ)器模塊200上的各種組件(操作430)。將電功率從輸入電壓轉(zhuǎn)換成對(duì)于電功率被分配到的組件而言適當(dāng)?shù)碾妷骸_M(jìn)一步地,在一些示例中,上電序列實(shí)現(xiàn)在對(duì)各種輸出軌322上電中的延遲。輸出延遲可以是可變的,使得電功率在第一延遲之后提供到第一輸出功率軌,并且在第二延遲之后提供到第二輸出功率軌,等等。在一些示例中,控制器240可以在相應(yīng)輸出軌322上提供恒定功率輸出。在其他實(shí)施例中,控制器240可以在輸出軌322中的一個(gè)或多個(gè)上生成變化的輸出電壓。
一旦上電序列完成,控制器240就進(jìn)入其中其監(jiān)視輸入軌320上的功率狀態(tài)的狀態(tài)。如果在操作440處檢測(cè)到功率故障條件,則控制傳到操作445并且控制器240發(fā)起功率故障序列。相比之下,如果在操作440處沒(méi)有檢測(cè)到功率故障條件,則控制傳到操作450并且控制器240監(jiān)視功率重置條件。
如果在操作450處檢測(cè)到功率重置條件,則控制傳到操作455并且控制器發(fā)起功率重置序列。相比之下,如果在操作450處沒(méi)有檢測(cè)到功率重置條件,則控制回傳到操作435。因此,操作435-455定義了控制器240依照其監(jiān)視功率故障條件和/或功率重置條件的循環(huán)。
圖5A是更詳細(xì)地描述在功率故障監(jiān)視和功率故障序列中涉及的操作的流程圖。參考圖5,在操作510處控制器監(jiān)視功率輸入軌320。在操作515處控制器240確定輸入功率軌處的電壓是否落至最小閾值(例如12V)以下達(dá)預(yù)定最小時(shí)間量(例如10毫秒(ms))。如果電壓沒(méi)有落至閾值以下達(dá)最小時(shí)間量,則控制器240繼續(xù)監(jiān)視輸入軌。相比之下,如果在操作515處輸入功率軌處的電壓滿(mǎn)足落至閾值以下達(dá)最小時(shí)間量,則控制傳到操作520并且控制器240將去往控制器240的輸入功率從輸入功率軌320切換到能量倉(cāng)庫(kù)250??刂破?40然后繼續(xù)從所存儲(chǔ)的能量汲取功率,同時(shí)其根據(jù)功率故障優(yōu)先次序?qū)Υ鎯?chǔ)器模塊上的組件執(zhí)行有序掉電,所述功率故障優(yōu)先次序可以存儲(chǔ)在控制器240上的或耦合到控制器240的存儲(chǔ)器中。
圖5B是更詳細(xì)地描述了在功率重置監(jiān)視和功率故障序列中涉及的操作的流程圖。參考圖5,在操作550處控制器240監(jiān)視連接器212上的重置輸入引腳。如果在操作555處控制器240未能檢測(cè)到重置信號(hào),則控制器240繼續(xù)監(jiān)視重置輸入引腳。相比之下,如果在操作555處控制器240檢測(cè)到重置信號(hào),則控制傳到操作560并且控制器240將去往控制器240的輸入功率從輸入功率軌320切換到能量倉(cāng)庫(kù)250。控制器240然后繼續(xù)從所存儲(chǔ)的能量汲取功率,同時(shí)其根據(jù)功率故障優(yōu)先次序?qū)Υ鎯?chǔ)器模塊上的組件執(zhí)行有序掉電,所述功率故障優(yōu)先次序可以存儲(chǔ)在控制器240上的或耦合到控制器240的存儲(chǔ)器中。
如上面描述的那樣,在一些實(shí)施例中,電子設(shè)備可以具體化為計(jì)算機(jī)系統(tǒng)。圖6圖示了根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)600的框圖。計(jì)算系統(tǒng)600可以包括經(jīng)由互連網(wǎng)絡(luò)(或總線(xiàn))604通信的一個(gè)或多個(gè)中央處理單元(CPU)602或處理器。處理器602可以包括通用處理器、網(wǎng)絡(luò)處理器(其處理通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)603傳送的數(shù)據(jù)),或其他類(lèi)型的處理器(包括精簡(jiǎn)指令集計(jì)算機(jī)(RISC)處理器或復(fù)雜指令集計(jì)算機(jī)(CISC))。而且,處理器602可以具有單核或多核設(shè)計(jì)。具有多核設(shè)計(jì)的處理器602可以在同一集成電路(IC)管芯上集成不同類(lèi)型的處理器核。而且,具有多核設(shè)計(jì)的處理器602可以實(shí)現(xiàn)為對(duì)稱(chēng)或非對(duì)稱(chēng)多處理器。在實(shí)施例中,處理器602中的一個(gè)或多個(gè)可以與圖1的處理器102相同或類(lèi)似。例如,處理器602中的一個(gè)或多個(gè)可以包括參考圖1-3討論的控制單元120。而且,參考圖3-5討論的操作可以由系統(tǒng)600的一個(gè)或多個(gè)組件執(zhí)行。
芯片組606還可以與互連網(wǎng)絡(luò)604通信。芯片組606可以包括存儲(chǔ)器控制中樞(MCH)608。MCH 608可以包括與存儲(chǔ)器612(其可以與圖1的存儲(chǔ)器130相同或類(lèi)似)通信的存儲(chǔ)器控制器610。存儲(chǔ)器412可以存儲(chǔ)數(shù)據(jù),包括指令序列,所述數(shù)據(jù)可以由CPU 602或計(jì)算系統(tǒng)600中包括的任何其他設(shè)備執(zhí)行。在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)器612可以包括一個(gè)或多個(gè)易失性存儲(chǔ)(或存儲(chǔ)器)設(shè)備,諸如隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)RAM(DRAM)、同步DRAM(SDRAM)、靜態(tài)RAM(SRAM)或其他類(lèi)型的存儲(chǔ)設(shè)備。還可以利用非易失性存儲(chǔ)器,諸如硬盤(pán)。附加設(shè)備可以經(jīng)由互連網(wǎng)絡(luò)604進(jìn)行通信,所述附加設(shè)備諸如多個(gè)CPU和/或多個(gè)系統(tǒng)存儲(chǔ)器。
MCH 608還可以包括與顯示設(shè)備616通信的圖形接口614。在本發(fā)明的一個(gè)實(shí)施例中,圖形接口614可以經(jīng)由加速圖形端口(AGP)與顯示設(shè)備616通信。在本發(fā)明的實(shí)施例中,顯示器616(諸如平板顯示器)可以通過(guò)例如信號(hào)轉(zhuǎn)換器與圖形接口614通信,所述信號(hào)轉(zhuǎn)換器將存儲(chǔ)在諸如視頻存儲(chǔ)器或系統(tǒng)存儲(chǔ)器之類(lèi)的存儲(chǔ)設(shè)備中的圖像的數(shù)字表示轉(zhuǎn)化成由顯示器616解釋和顯示的顯示信號(hào)。由顯示設(shè)備產(chǎn)生的顯示信號(hào)可以在由顯示器616解釋并且隨后在顯示器616上顯示之前經(jīng)過(guò)各種控制設(shè)備。
中樞接口618可以允許MCH 608和輸入/輸出控制中樞(ICH)620進(jìn)行通信。ICH 620可以提供到與計(jì)算系統(tǒng)600通信的(一個(gè)或多個(gè))I/O設(shè)備的接口。ICH 620可以通過(guò)外圍橋接器(或控制器)624與總線(xiàn)622通信,所述外圍橋接器(或控制器)624諸如外圍組件互連(PCI)橋接器、通用串行總線(xiàn)(USB)控制器或其他類(lèi)型的外圍橋接器或控制器。橋接器624可以提供CPU 602與外圍設(shè)備之間的數(shù)據(jù)路徑??梢岳闷渌?lèi)型的拓?fù)?。而且,多個(gè)總線(xiàn)可以例如通過(guò)多個(gè)橋接器或控制器與ICH 620通信。而且,在本發(fā)明的各種實(shí)施例中,與ICH 620通信的其他外圍設(shè)備可以包括集成驅(qū)動(dòng)電子設(shè)備(IDE)或(一個(gè)或多個(gè))小型計(jì)算機(jī)系統(tǒng)接口(SCSI)硬盤(pán)驅(qū)動(dòng)器、(一個(gè)或多個(gè))USB端口、鍵盤(pán)、鼠標(biāo)、(一個(gè)或多個(gè))并行端口、(一個(gè)或多個(gè))串行端口、(一個(gè)或多個(gè))軟盤(pán)驅(qū)動(dòng)器、數(shù)字輸出支持(例如數(shù)字視頻接口(DVI))或其他設(shè)備。
總線(xiàn)622可以與音頻設(shè)備626、一個(gè)或多個(gè)盤(pán)驅(qū)動(dòng)器628和網(wǎng)絡(luò)接口設(shè)備630(其與計(jì)算機(jī)網(wǎng)絡(luò)603通信)通信。其他設(shè)備可以經(jīng)由總線(xiàn)622進(jìn)行通信。而且,在本發(fā)明的一些實(shí)施例中,各種組件(諸如網(wǎng)絡(luò)接口設(shè)備630)可以與MCH 608通信。此外,處理器602和本文中討論的一個(gè)或多個(gè)其他組件可以組合以形成單個(gè)芯片(例如以提供片上系統(tǒng)(SOC))。此外,在本發(fā)明的其他實(shí)施例中,圖形加速器616可以被包括在MCH 608內(nèi)。
此外,計(jì)算系統(tǒng)600可以包括易失性和/或非易失性存儲(chǔ)器(或儲(chǔ)存器)。例如,非易失性存儲(chǔ)器可以包括以下中的一個(gè)或多個(gè):只讀存儲(chǔ)器(ROM)、可編程ROM(PROM)、可擦除PROM(EPROM)、電EPROM(EEPROM)、盤(pán)驅(qū)動(dòng)器(例如628)、軟盤(pán)、致密盤(pán)ROM(CD-ROM)、數(shù)字多功能盤(pán)(DVD)、閃存、磁光盤(pán)或能夠存儲(chǔ)電子數(shù)據(jù)(例如,包括指令)的其他類(lèi)型的非易失性機(jī)器可讀介質(zhì)。
圖7圖示了根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)700的框圖。系統(tǒng)700可以包括一個(gè)或多個(gè)處理器702-1至702-N(在本文中一般稱(chēng)為“多個(gè)處理器702”或“處理器702”)。多個(gè)處理器702可以經(jīng)由互連網(wǎng)絡(luò)或總線(xiàn)704進(jìn)行通信。每個(gè)處理器可以包括各種組件,為了清楚起見(jiàn)僅參考處理器702-1討論其中的一些。相應(yīng)地,其余的處理器702-2至702-N中的每個(gè)可以包括參考處理器702-1討論的相同或類(lèi)似的組件。
在實(shí)施例中,處理器702-1可以包括一個(gè)或多個(gè)處理器核706-1至706-N(在本文中稱(chēng)為“多個(gè)核706”或更一般地稱(chēng)為“核706”)、共享高速緩存708、路由器710和/或處理器控制邏輯或單元720。處理器核706可以在單個(gè)集成電路(IC)芯片上實(shí)現(xiàn)。而且,芯片可以包括一個(gè)或多個(gè)共享和/或私有的高速緩存(諸如高速緩存708)、總線(xiàn)或互連(諸如總線(xiàn)或互連網(wǎng)絡(luò)712)、存儲(chǔ)器控制器或其他組件。
在一個(gè)實(shí)施例中,路由器710可以用于在處理器702-1和/或系統(tǒng)700的各種組件之間進(jìn)行通信。而且,處理器702-1可以包括不止一個(gè)路由器710。此外,許多路由器710可以在通信中以使能處理器702-1的內(nèi)部或外部的各種組件之間的數(shù)據(jù)路由。
共享高速緩存708可以存儲(chǔ)被處理器702-1的一個(gè)或多個(gè)組件(諸如核706)利用的數(shù)據(jù)(例如包括指令)。例如,共享高速緩存708可以在本地緩存在存儲(chǔ)器714中存儲(chǔ)的數(shù)據(jù)用于由處理器702的組件更快地訪(fǎng)問(wèn)。在實(shí)施例中,高速緩存708可以包括中級(jí)高速緩存(諸如2級(jí)(L2)、3級(jí)(L3)、4級(jí)(L4)或其他級(jí)高速緩存)、末級(jí)高速緩存(LLC)和/或其組合。而且,處理器702-1的各種組件可以直接地、通過(guò)總線(xiàn)(例如總線(xiàn)712)和/或存儲(chǔ)器控制器或中樞與共享高速緩存708通信。如圖7中所示,在一些實(shí)施例中,核706中的一個(gè)或多個(gè)可以包括1級(jí)(L1)高速緩存716-1(在本文中一般稱(chēng)為“L1高速緩存716”)。在一個(gè)實(shí)施例中,控制單元720可以包括實(shí)現(xiàn)上面參考圖2中的存儲(chǔ)器控制器122描述的操作的邏輯。
圖8圖示了根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)的處理器核706和其他組件的部分的框圖。在一個(gè)實(shí)施例中,圖8中示出的箭頭圖示了指令通過(guò)核706的流動(dòng)方向。一個(gè)或多個(gè)處理器核(諸如處理器核706)可以在單個(gè)集成電路芯片(或管芯)上實(shí)現(xiàn),諸如參考圖7所討論的那樣。而且,芯片可以包括一個(gè)或多個(gè)共享和/或私有的高速緩存(例如圖7的高速緩存708)、互連(例如圖7的互連704和/或112)、控制單元、存儲(chǔ)器控制器或其他組件。
如圖8中圖示的那樣,處理器核706可以包括取出單元802以取出供核706執(zhí)行的指令(包括具有條件分支的指令)??梢詮闹T如存儲(chǔ)器714之類(lèi)的任何存儲(chǔ)設(shè)備取出該指令。核706還可以包括解碼單元804以對(duì)所取出的指令解碼。例如,解碼單元804可以將所取出的指令解碼成多個(gè)uop(微操作)。
此外,核706可以包括調(diào)度單元806。調(diào)度單元806可以執(zhí)行與存儲(chǔ)(例如從解碼單元804接收的)經(jīng)解碼的指令相關(guān)聯(lián)的各種操作,直到指令準(zhǔn)備好用于分派為止,例如直到經(jīng)解碼的指令的所有源值變得可用為止。在一個(gè)實(shí)施例中,調(diào)度單元806可以向執(zhí)行單元808調(diào)度和/或發(fā)出(或分派)經(jīng)解碼的指令以用于執(zhí)行。執(zhí)行單元808可以在所分派的指令被(例如通過(guò)解碼單元804)解碼并且(例如通過(guò)調(diào)度單元806)分派之后執(zhí)行所分派的指令。在實(shí)施例中,執(zhí)行單元808可以包括不止一個(gè)執(zhí)行單元。執(zhí)行單元808還可以執(zhí)行各種算術(shù)操作,諸如加法、減法、乘法和/或除法,并且可以包括一個(gè)或多個(gè)算術(shù)邏輯單元(ALU)。在實(shí)施例中,(未示出的)協(xié)處理器可以結(jié)合執(zhí)行單元808執(zhí)行各種算術(shù)操作。
進(jìn)一步地,執(zhí)行單元808可以無(wú)序地執(zhí)行指令。因而,在一個(gè)實(shí)施例中,處理器核706可以是無(wú)序處理器核。核706還可以包括引退單元810。引退單元810可以在已執(zhí)行的指令被提交之后引退它們。在實(shí)施例中,已執(zhí)行的指令的引退可以導(dǎo)致根據(jù)指令的執(zhí)行提交處理器狀態(tài)、由指令使用的物理寄存器被解除分配等。
核706還可以包括總線(xiàn)單元714以使能經(jīng)由一個(gè)或多個(gè)總線(xiàn)(例如總線(xiàn)804和/或812)的處理器核706的組件與其他組件(諸如參考圖8討論的組件)之間的通信。核706還可以包括一個(gè)或多個(gè)寄存器816以存儲(chǔ)由核706的各種組件訪(fǎng)問(wèn)的數(shù)據(jù)(諸如與功率消耗狀態(tài)設(shè)置相關(guān)的值)。
此外,即使圖7圖示了控制單元720經(jīng)由互連812耦合到核706,但是在各種實(shí)施例中控制單元720可以位于其他地方(諸如在核706內(nèi)部)、經(jīng)由總線(xiàn)704耦合到核等。
在一些實(shí)施例中,本文中討論的組件中的一個(gè)或多個(gè)可以具體化為片上系統(tǒng)(SOC)設(shè)備。圖9圖示了根據(jù)實(shí)施例的SOC封裝的框圖。如圖9中圖示的那樣,SOC 902包括一個(gè)或多個(gè)中央處理單元(CPU)核920、一個(gè)或多個(gè)圖形處理器單元(GPU)核930、輸入/輸出(I/O)接口940和存儲(chǔ)器控制器942。SOC封裝902的各種組件可以耦合到互連或總線(xiàn),諸如在本文中參考其他圖討論的那樣。而且,SOC封裝902可以包括更多或更少的組件,諸如在本文中參考其他圖討論的那些。進(jìn)一步地,SOC封裝902的每個(gè)組件可以包括一個(gè)或多個(gè)其他組件,例如如參考本文中的其他圖所討論的那樣。在一個(gè)實(shí)施例中,在一個(gè)或多個(gè)集成電路(IC)管芯上提供SOC封裝902(及其組件),例如所述管芯被封裝到單個(gè)半導(dǎo)體器件中。
如圖9中圖示的那樣,SOC封裝902經(jīng)由存儲(chǔ)器控制器942耦合到存儲(chǔ)器960(其可以與在本文中參考其他圖討論的存儲(chǔ)器類(lèi)似或相同)。在實(shí)施例中,可以在SOC封裝902上集成存儲(chǔ)器960(或其一部分)。
I/O接口940可以例如經(jīng)由諸如在本文中參考其他圖所討論的互連和/或總線(xiàn)耦合到一個(gè)或多個(gè)I/O設(shè)備970。(一個(gè)或多個(gè))I/O設(shè)備970可以包括以下中的一個(gè)或多個(gè):鍵盤(pán)、鼠標(biāo)、觸摸墊、顯示器、圖像/視頻捕獲設(shè)備(諸如相機(jī)或攝像機(jī)/錄像機(jī))、觸摸屏、揚(yáng)聲器等。
圖10圖示了根據(jù)本發(fā)明的實(shí)施例的以點(diǎn)對(duì)點(diǎn)(PtP)配置來(lái)布置的計(jì)算系統(tǒng)1000。特別地,圖10示出其中處理器、存儲(chǔ)器和輸入/輸出設(shè)備通過(guò)多個(gè)點(diǎn)對(duì)點(diǎn)接口互連的系統(tǒng)。參考圖2討論的操作可以由系統(tǒng)1000的一個(gè)或多個(gè)組件執(zhí)行。
如圖10中圖示的那樣,系統(tǒng)100可以包括若干處理器,為了清楚起見(jiàn)僅示出其中的兩個(gè)——處理器1002和1004。處理器1002和1004可以每個(gè)包括本地存儲(chǔ)器控制器中樞(MCH)1006和1008以使能與存儲(chǔ)器1010和1012的通信。在一些實(shí)施例中,MCH 1006和1008可以包括圖1的存儲(chǔ)器控制器120和/或邏輯125。
在實(shí)施例中,處理器1002和1004可以是參考圖7討論的處理器702中的一個(gè)。處理器1002和1004可以分別使用PtP接口電路1016和1018經(jīng)由點(diǎn)對(duì)點(diǎn)(PtP)接口1014來(lái)交換數(shù)據(jù)。而且,處理器1002和1004可以每個(gè)使用點(diǎn)對(duì)點(diǎn)接口電路1026、1028、1030和1032經(jīng)由單獨(dú)的PtP接口1022和1024與芯片組1020交換數(shù)據(jù)。芯片組1020可以進(jìn)一步例如使用PtP接口電路1037經(jīng)由高性能圖形接口1036與高性能圖形電路1034交換數(shù)據(jù)。
如圖10中所示,圖1的核106和/或高速緩存108中的一個(gè)或多個(gè)可以位于處理器1004內(nèi)。然而,其他示例可以存在于圖10的系統(tǒng)1000內(nèi)的其他電路、邏輯單元或器件中。進(jìn)一步地,可以使其他示例分布遍及圖10中圖示的若干電路、邏輯單元或器件。
芯片組1020可以使用PtP接口電路1041與總線(xiàn)1040通信??偩€(xiàn)1040可以具有與其通信的一個(gè)或多個(gè)設(shè)備,諸如總線(xiàn)橋接器1042和I/O設(shè)備1043。經(jīng)由總線(xiàn)1044,總線(xiàn)橋接器1043可以與其他設(shè)備通信,所述其他設(shè)備諸如鍵盤(pán)/鼠標(biāo)1045、通信設(shè)備1046(諸如調(diào)制解調(diào)器、網(wǎng)絡(luò)接口設(shè)備或可以與計(jì)算機(jī)網(wǎng)絡(luò)1003通信的其他通信設(shè)備)、音頻I/O設(shè)備和/或數(shù)據(jù)存儲(chǔ)設(shè)備1048。數(shù)據(jù)存儲(chǔ)設(shè)備1048(其可以是硬盤(pán)驅(qū)動(dòng)器或基于NAND閃存的固態(tài)驅(qū)動(dòng)器)可以存儲(chǔ)可以由處理器1004執(zhí)行的代碼1049。
以下示例關(guān)于進(jìn)一步示例。
示例1是一種存儲(chǔ)器模塊,其包括非易失性存儲(chǔ)器、到易失性存儲(chǔ)器總線(xiàn)的接口、用以從主機(jī)平臺(tái)接收功率的至少一個(gè)輸入功率軌以及控制器,所述控制器包括邏輯,其至少部分地包括硬件邏輯,用以將來(lái)自輸入功率軌的功率從輸入電壓轉(zhuǎn)換成不同于輸入電壓的至少一個(gè)輸出電壓。
在示例2中,示例1的主題可以可選地包括其中第一張力螺釘調(diào)整第一軸與第一套管之間的張力的布置。
在示例3中,示例1-2中的任一個(gè)的主題可以可選地包括雙數(shù)據(jù)速率同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DDRx-SDRAM)總線(xiàn)、DDR SDRAM總線(xiàn)或DDR4 SDRAM總線(xiàn)。
在示例4中,示例1-3中的任一個(gè)的主題可以可選地包括如下布置:其中控制器包括邏輯,其至少部分地包括硬件邏輯,用以使第一輸出軌或第二輸出軌中的至少一個(gè)上的輸出電壓變化。
在示例5中,示例1-4中的任一個(gè)的主題可以可選地包括如下布置:其中控制器包括邏輯,其至少部分地包括硬件邏輯,用以在輸入功率軌處的從主機(jī)平臺(tái)接收到的功率達(dá)到閾值電壓時(shí)在存儲(chǔ)器模塊上發(fā)起上電序列。
在示例6中,示例1-5中的任一個(gè)的主題可以可選地包括其中上電序列實(shí)現(xiàn)將功率提供到第一輸出軌之前的第一延遲和將功率提供到第二輸出軌之前的第二延遲的布置。
在示例7中,示例1-6中的任一個(gè)的主題可以可選地包括耦合到存儲(chǔ)器模塊的能量存儲(chǔ)設(shè)備。
在示例8中,示例1-7中的任一個(gè)的主題可以可選地包括其中控制器包括檢測(cè)功率故障條件并且響應(yīng)于功率故障條件來(lái)實(shí)現(xiàn)功率故障序列的邏輯的布置。
在示例9中,示例1-8中的任一個(gè)的主題可以可選地包括其中功率故障序列從用以提供功率的耦合到存儲(chǔ)器模塊的至少一個(gè)能量倉(cāng)庫(kù)汲取功率以使能存儲(chǔ)器模塊上的一個(gè)或多個(gè)組件的有序掉電的布置。
在示例10中,示例1-9中的任一個(gè)的主題可以可選地包括其中控制器包括檢測(cè)功率重置信號(hào)并且響應(yīng)于功率重置信號(hào)來(lái)實(shí)現(xiàn)功率重置序列的邏輯的布置。
在示例11中,示例1-10中的任一個(gè)的主題可以可選地包括其中功率重置序列從用以提供功率的耦合到存儲(chǔ)器模塊的至少一個(gè)能量倉(cāng)庫(kù)汲取功率以使能存儲(chǔ)器模塊上的一個(gè)或多個(gè)組件的有序掉電的布置。
示例12是一種電子設(shè)備,其包括用以執(zhí)行操作系統(tǒng)和至少一個(gè)應(yīng)用的處理器、存儲(chǔ)器模塊,所述存儲(chǔ)器模塊包括非易失性存儲(chǔ)器、到易失性存儲(chǔ)器總線(xiàn)的接口、用以從主機(jī)平臺(tái)接收功率的至少一個(gè)輸入功率軌以及控制器,所述控制器包括邏輯,其至少部分地包括硬件邏輯,用以將來(lái)自輸入功率軌的功率從輸入電壓轉(zhuǎn)換成不同于輸入電壓的至少一個(gè)輸出電壓。
在示例13中,示例12的主題可以可選地包括其中第一張力螺釘調(diào)整第一軸與第一套管之間的張力的布置。
在示例14中,示例12-13中的任一個(gè)的主題可以可選地包括雙數(shù)據(jù)速率同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DDRx-SDRAM)總線(xiàn)、DDR SDRAM總線(xiàn)或DDR4 SDRAM總線(xiàn)。
在示例15中,示例12-14中的任一個(gè)的主題可以可選地包括如下布置:其中控制器包括邏輯,其至少部分地包括硬件邏輯,用以使第一輸出軌或第二輸出軌中的至少一個(gè)上的輸出電壓變化。
在示例16中,示例12-14中的任一個(gè)的主題可以可選地包括如下布置:其中控制器包括邏輯,其至少部分地包括硬件邏輯,用以在輸入功率軌處的從主機(jī)平臺(tái)接收到的功率達(dá)到閾值電壓時(shí)在存儲(chǔ)器模塊上發(fā)起上電序列。
在示例17中,示例12-16中的任一個(gè)的主題可以可選地包括其中上電序列實(shí)現(xiàn)將功率提供到第一輸出軌之前的第一延遲和將功率提供到第二輸出軌之前的第二延遲的布置。
在示例18中,示例12-17中的任一個(gè)的主題可以可選地包括耦合到存儲(chǔ)器模塊的能量存儲(chǔ)設(shè)備。
在示例19中,示例12-18中的任一個(gè)的主題可以可選地包括其中控制器包括檢測(cè)功率故障條件并且響應(yīng)于功率故障條件來(lái)實(shí)現(xiàn)功率故障序列的邏輯的布置。
在示例20中,示例12-19中的任一個(gè)的主題可以可選地包括其中功率故障序列從用以提供功率的耦合到存儲(chǔ)器模塊的至少一個(gè)能量倉(cāng)庫(kù)汲取功率以使能存儲(chǔ)器模塊上的一個(gè)或多個(gè)組件的有序掉電的布置。
在示例21中,示例12-20中的任一個(gè)的主題可以可選地包括其中控制器包括檢測(cè)功率重置信號(hào)并且響應(yīng)于功率重置信號(hào)來(lái)實(shí)現(xiàn)功率重置序列的邏輯的布置。
在示例22中,示例12-21中的任一個(gè)的主題可以可選地包括其中功率重置序列從用以提供功率的耦合到存儲(chǔ)器模塊的至少一個(gè)能量倉(cāng)庫(kù)汲取功率以使能存儲(chǔ)器模塊上的一個(gè)或多個(gè)組件的有序掉電的布置。
在本發(fā)明的各種實(shí)施例中,在本文中例如參考圖4-5討論的操作可以實(shí)現(xiàn)為硬件(例如電路)、軟件、固件、微代碼或它們的組合,其可以被提供為例如包括有形(例如非暫時(shí)性)機(jī)器可讀或計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)程序產(chǎn)品,所述介質(zhì)具有存儲(chǔ)在其上的用于對(duì)計(jì)算機(jī)編程以執(zhí)行本文中討論的過(guò)程的指令(或軟件過(guò)程)。而且,作為示例,術(shù)語(yǔ)“邏輯”可以包括,軟件、硬件或軟件和硬件的組合。機(jī)器可讀介質(zhì)可以包括諸如本文中討論的那些存儲(chǔ)設(shè)備之類(lèi)的存儲(chǔ)設(shè)備。
在本說(shuō)明書(shū)中對(duì)“一個(gè)實(shí)施例”或“一實(shí)施例”的引用意味著結(jié)合實(shí)施例描述的特定特征、結(jié)構(gòu)或特性可以被包括在至少一個(gè)實(shí)現(xiàn)中。短語(yǔ)“在一個(gè)實(shí)施例中”在本說(shuō)明書(shū)中的各種位置中的出現(xiàn)可能或可能不都指代同一實(shí)施例。
而且,在說(shuō)明書(shū)和權(quán)利要求書(shū)中,可以使用術(shù)語(yǔ)“耦合”和“連接”連同其派生詞。在本發(fā)明的一些實(shí)施例中,“連接”可以用于指示兩個(gè)或更多元件與彼此直接物理或電氣接觸?!榜詈稀笨梢砸馕吨鴥蓚€(gè)或更多元件直接物理或電氣接觸。然而,“耦合”還可以意味著兩個(gè)或更多元件可以不與彼此直接接觸,但是仍可以與彼此協(xié)作或交互。
因此,盡管已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動(dòng)作的語(yǔ)言描述了本發(fā)明的實(shí)施例,但是要理解,所要求保護(hù)的主題可以不限于所描述的特定特征或動(dòng)作。相反,特定特征和動(dòng)作被作為實(shí)現(xiàn)所要求保護(hù)的主題的樣本形式而公開(kāi)。