一種處理器啟動(dòng)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路技術(shù)領(lǐng)域,尤其涉及一種處理器啟動(dòng)的方法。
【背景技術(shù)】
[0002]隨著集成電路技術(shù)的發(fā)展,目前芯片已經(jīng)實(shí)現(xiàn)在越來越先進(jìn)的工藝節(jié)點(diǎn)上,即芯片的性能越來越高,同時(shí)芯片的工作頻率也比較高,因此芯片的功耗也比較大,但是并不是所有的應(yīng)用程序都需要芯片工作在最高性能模式下,同時(shí)芯片也并不是所有時(shí)間都需要最高性能。因此為了減小芯片的功耗,動(dòng)態(tài)電壓頻率調(diào)節(jié)(Dynamic Voltage and FrequencyScaling,簡稱DVFS)技術(shù)就應(yīng)運(yùn)而生。DVFS技術(shù)是根據(jù)芯片運(yùn)行的應(yīng)用程序?qū)τ?jì)算能力的不同需要,動(dòng)態(tài)的調(diào)整芯片的工作電壓和運(yùn)行頻率,從而降低芯片的功耗方法。目前服務(wù)器的處理單元結(jié)構(gòu)如附圖1所示,服務(wù)器的處理器芯片I由N個(gè)處理器組成,分別為處理器111,處理器112,……處理器11N,其中N > O。該處理器芯片有N個(gè)本地片上緩存,分別為本地片上緩存121,本地片上緩存122,……本地片上緩存12N,這N個(gè)本地緩存分別對應(yīng)于處理器111,處理器112,……處理器11N。圖中131為片上共享緩存,N個(gè)處理器通過片上共享緩存131進(jìn)行數(shù)據(jù)的交互,N個(gè)本地片上緩存和片上共享緩存131均是由靜態(tài)隨機(jī)存儲器(Static Random Access Memory,簡稱SRAM)實(shí)現(xiàn),圖中141為圖形處理器,專門用于圖像處理等工作。圖中151為最后一級緩存,它為一個(gè)獨(dú)立的芯片,最后一級緩存一般是由嵌入式動(dòng)態(tài)隨機(jī)訪問存儲器(Embedded Dynamic Random Access Memory,簡稱eDRAM)實(shí)現(xiàn),獨(dú)立的最后一級緩存芯片與處理器芯片通過多芯片封裝技術(shù)(Mult1-Chip Package,簡稱MCP)封裝在一起形成服務(wù)器的處理單元結(jié)構(gòu)。舉例說明服務(wù)器在以下三種情況時(shí)會利用DVFS技術(shù)動(dòng)態(tài)調(diào)整電壓和頻率,從而達(dá)到降低功耗的目的:
[0003]1、服務(wù)器中的處理器在處理不需要高性能的任務(wù)時(shí),這些處理器的工作電壓和頻率就會被降低,從而降低處理器的功耗;
[0004]2、當(dāng)一些處理器不需要處理任務(wù)時(shí),那么這些處于空閑狀態(tài)的處理器會被關(guān)閉,相應(yīng)的片上緩存或/和最后一級緩存的工作電壓應(yīng)降為片上緩存或/和最后一級緩存的保持電壓,所謂片上緩存或/和最后一級緩存的保持電壓即保證片上緩存或/和最后一級緩存中的數(shù)據(jù)不丟失所需要的最小的電壓;
[0005]3、一些處理器不需要處理任務(wù)而且相對應(yīng)的片上緩存或/和最后一級緩存也不需要保持?jǐn)?shù)據(jù),因此可以將空閑的處理器和相應(yīng)的片上緩存或/和最后一級緩存關(guān)閉,從而進(jìn)一步節(jié)省功耗。
[0006]下面我們分別從功耗降低、處理器被喚醒到處理任務(wù)所需要的時(shí)間和出現(xiàn)軟錯(cuò)誤的幾率三個(gè)方面對上面可以利用DVFS技術(shù)的三種情況進(jìn)行如下分析:
[0007]A、功耗降低方面;因?yàn)榍闆rI中服務(wù)器中的處理器和相應(yīng)的片上緩存或/和最后一級緩存仍在工作,只是減小了處理器和相應(yīng)的片上緩存或/和最后一級緩存的工作電壓和頻率,在這里我們記該情況下功耗降低量為Pl ;情況2中空閑的處理器被關(guān)閉,相應(yīng)片上緩存或/和最后一級緩存的工作電壓降低為保持電壓,在這里我們記該情況下功耗的降低量為P2 ;情況3中不僅空閑的處理器被關(guān)閉,相應(yīng)的片上緩存或/和最后一級緩存也被關(guān)閉,在這里我們記該情況下功耗的降低量為P3,從以上分析我們很容易看出功耗降低量的關(guān)系為P3>P2>P1。
[0008]B、處理器被喚醒到處理任務(wù)所需要的時(shí)間;情況I中處理器只是工作電壓和頻率被相應(yīng)的降低,但是處理器仍然在工作,所以處理器如果要處理需要高性能的任務(wù)時(shí),可以很快的進(jìn)入高性能模式,在這里我們記處理器從該模式切換到處理任務(wù)所需要的時(shí)間為tl(tl很小);情況2中空閑的處理器被關(guān)閉,但是片上緩存或/和最后一級緩存中仍然存儲著數(shù)據(jù),因此只需要將處理器喚醒,處理器就可以執(zhí)行相應(yīng)的任務(wù),在這里我們記處理器醒來到處理任務(wù)所需要的時(shí)間為t2 ;情況3中空閑的處理器被關(guān)閉,相應(yīng)的片上緩存或/和最后一級緩存也被關(guān)閉,因此不僅要將處理器喚醒,同時(shí)要將相應(yīng)的片上緩存或/和最后一級緩存喚醒,而片上緩存一般是由靜態(tài)隨機(jī)存儲器實(shí)現(xiàn)(SRAM),最后一級緩存一般是由嵌入式動(dòng)態(tài)隨機(jī)存儲器(eDRAM)實(shí)現(xiàn),在掉電后存儲在靜態(tài)隨機(jī)存儲器和嵌入式動(dòng)態(tài)隨機(jī)存儲器中的數(shù)據(jù)會丟失,所以此時(shí)片上緩存或/和最后一級緩存中沒有數(shù)據(jù),需要從片外大容量存儲器中搬運(yùn)數(shù)據(jù)到內(nèi)存中,再由內(nèi)存搬運(yùn)到片上緩存中,在這里我們記處理器從醒來到處理任務(wù)所需要的時(shí)間為t3,從以上分析中我們可以得到3種情況下處理器從醒來到處理任務(wù)所需要的時(shí)間關(guān)系為t3?t2>tl。
[0009]C、出現(xiàn)軟錯(cuò)誤的幾率;對于靜態(tài)隨機(jī)存儲器和動(dòng)態(tài)隨機(jī)存儲器來說,由于宇宙射線和芯片中其他放射性元素的存在,靜態(tài)隨機(jī)存儲器和動(dòng)態(tài)隨機(jī)存儲器可能會出現(xiàn)一定數(shù)量的軟錯(cuò)誤,而且靜態(tài)隨機(jī)存儲器和動(dòng)態(tài)隨機(jī)存儲器的工作電壓越低,靜態(tài)隨機(jī)存儲器和動(dòng)態(tài)隨機(jī)存儲器出現(xiàn)軟錯(cuò)誤的幾率越大。傳統(tǒng)的服務(wù)器中片上緩存是由靜態(tài)隨機(jī)存儲器實(shí)現(xiàn),最后一級緩存是由嵌入式動(dòng)態(tài)隨機(jī)存儲器實(shí)現(xiàn),情況I中由于片上緩存或/和最后一級緩存的工作電壓降低,所以片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率會增大,記此時(shí)片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率為Cl ;情況2中片上緩存或/和最后一級緩存的電壓被降為保持電壓,因此情況2中片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率比情況I大,記此時(shí)片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率為C2 ;因?yàn)榍闆r3中片上緩存或/和最后一級緩存被關(guān)閉,所以在這里我們就不討論情況3中片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率。從以上分析我們可以得到情況I和情況2片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率關(guān)系為:C2>C1。
[0010]在目前的服務(wù)器應(yīng)用中,服務(wù)器一般不會頻繁進(jìn)入情況2和情況3,因?yàn)殡m然服務(wù)器的功耗降低了很多,但是由于服務(wù)器中的處理器從被喚醒到處理任務(wù)所需要的時(shí)間太長,在很大程度上降低了服務(wù)器的性能。同時(shí)由于片上緩存或/和最后一級緩存的工作電壓降低,片上緩存或/和最后一級緩存出現(xiàn)軟錯(cuò)誤的幾率增大,同樣會降低服務(wù)器的性能。
[0011]目前在數(shù)據(jù)中心中為了解決處理器工作時(shí)的散熱問題,一般通過在處理器芯片上面加上風(fēng)扇來加快處理器的散熱,但是無論服務(wù)器中的處理器處于以上DVFS的哪一種情況下,風(fēng)扇一直以相同的頻率在工作。風(fēng)扇的轉(zhuǎn)動(dòng)是靠馬達(dá)的帶動(dòng),因此馬達(dá)在帶動(dòng)風(fēng)扇時(shí)也會帶來一定的熱量,因此對于數(shù)據(jù)中心的機(jī)柜來說,需要空調(diào)對機(jī)柜進(jìn)行降溫,而機(jī)柜中的空調(diào)在降溫的同時(shí)也會散發(fā)熱量,因此整個(gè)放置機(jī)柜的房間也需要進(jìn)行降溫,這樣就會使數(shù)據(jù)中心的成本增大,所以說即使處理器利用DVFS技術(shù)降低處理器的工作電壓和頻率,在一定程度上降低了服務(wù)器的功耗,但是并不能進(jìn)一步的降低數(shù)據(jù)中心的功耗。
【發(fā)明內(nèi)容】
[0012]鑒于上述技術(shù)問題,本發(fā)明提供一種處理器啟動(dòng)的方法,可應(yīng)用于設(shè)置有處理單元結(jié)構(gòu)的服務(wù)器上(如數(shù)據(jù)中心的服務(wù)器),所述處理單元結(jié)構(gòu)具有包括處理器芯片和非易失性存儲器的MCP芯片,且所述服務(wù)器預(yù)設(shè)超低功耗模式,所述方法包括:
[0013]所述服務(wù)器退出所述超低功耗模式時(shí),所述處理器芯片讀取所述非易失性存儲器和/或所述片上緩存和/或所述片外緩存中存儲的數(shù)據(jù)進(jìn)行啟動(dòng)操作。
[0014]作為一個(gè)優(yōu)選實(shí)施例,上述的處理器啟動(dòng)的方法中:
[0015]所述處理器單元結(jié)構(gòu)還包括內(nèi)存、片上緩存和/或片外緩存;以及
[0016]所述服務(wù)器工作在所述超低功耗模式時(shí),至少部分所述處理器芯片和/或至少部分所述內(nèi)存和/或至少部分所述非易失性存儲器和/或至少部分片上緩存和/或至少部分片外緩存均被置于關(guān)閉模式或待機(jī)模式。
[0017]作為一個(gè)優(yōu)選實(shí)施例,上述的處理器啟動(dòng)的方法的所述服務(wù)器還包括片外大容量存儲器,且所述方法中:
[0018]所述服務(wù)器退出所述超低功耗模式時(shí),
[0019]若所述片上緩存或/和所述片外緩存處于關(guān)閉狀態(tài),且所述內(nèi)存也處于關(guān)閉狀態(tài)時(shí),所述處理器芯片直接從所述非易失性存儲器中讀取存儲的數(shù)據(jù),以進(jìn)行所述啟動(dòng)操作;
[0020]若所述片上緩存或/和所述片外緩存被打開,且所述內(nèi)存處于關(guān)閉狀態(tài)時(shí),所述處理器芯片直接從所述非易失性存儲器中讀取存儲的數(shù)據(jù)進(jìn)行所述啟動(dòng)操作的同時(shí),從所述非易失性存儲器向所述片上緩存或/和所述片外緩存中搬運(yùn)數(shù)據(jù);或者
[0021]所述處理器芯片從所述非易失性存儲器向所述片上緩存或/和所述片外緩存搬運(yùn)數(shù)據(jù),接著再利用所述處理器芯片執(zhí)行所述片上緩存或/和所述片外緩存中的數(shù)據(jù),以進(jìn)行所述啟動(dòng)操作;
[0022]若所述片上緩存或/和所述片外緩存被打開,且所述內(nèi)存也被打開時(shí),所述處理器芯片從所述非易失性存儲器中執(zhí)行應(yīng)用程序進(jìn)行所述啟動(dòng)操作的同時(shí),從所述非易失