日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

基于等待時(shí)間的存儲(chǔ)器控制器功率管理的制作方法

文檔序號(hào):11142168閱讀:599來(lái)源:國(guó)知局
基于等待時(shí)間的存儲(chǔ)器控制器功率管理的制造方法與工藝

本公開的領(lǐng)域

本公開大體上涉及處理器,且更特定來(lái)說(shuō),涉及處理器的功率管理。

相關(guān)技術(shù)的描述

對(duì)于具有處理器的許多電子裝置(例如,通過(guò)電池供電的電子裝置)來(lái)說(shuō),需要處理器在消耗盡可能少的功率的同時(shí)仍至少滿足最小性能目標(biāo)。因此,通常向處理器指派功率預(yù)算,通過(guò)電壓或表示施加到處理器的功率的其它特性來(lái)表示所述功率預(yù)算。處理器通過(guò)以下方式在其各種模塊(例如,處理器核心、存儲(chǔ)器控制器,和類似者)之間分派其功率預(yù)算:設(shè)定施加到每個(gè)模塊的電壓或其它特性,使得處理器至少滿足其最小性能預(yù)算。然而,每個(gè)模塊可能不會(huì)在所有情形中需要其所分派的功率。舉例來(lái)說(shuō),沒(méi)有操作要執(zhí)行的模塊可能在一段短暫時(shí)期內(nèi)不需要其所分派的功率,從而允許處理器將所述模塊的所分派的功率中的一些功率臨時(shí)地重新指派給不同的模塊,從而提高了整體處理器性能。

對(duì)圖式的簡(jiǎn)要描述

通過(guò)參考附圖,可更好地理解本公開,且使其眾多特征和優(yōu)勢(shì)對(duì)于本領(lǐng)域技術(shù)人員顯而易見(jiàn)。在不同圖式中使用相同的參考符號(hào)會(huì)指示類似或等同的項(xiàng)目。

圖1是根據(jù)一些實(shí)施例的可以基于存儲(chǔ)器存取等待時(shí)間將功率分派給存儲(chǔ)器控制器的處理器的框圖。

圖2是說(shuō)明根據(jù)一些實(shí)施例的基于程序線程的存儲(chǔ)器等待時(shí)間容限將功率分派給圖1的存儲(chǔ)器控制器的圖。

圖3是說(shuō)明根據(jù)一些實(shí)施例的基于程序線程的存儲(chǔ)器等待時(shí)間容限和指令處理率將功率分派給圖1的存儲(chǔ)器控制器的圖。

圖4是說(shuō)明根據(jù)一些實(shí)施例的基于相對(duì)于多個(gè)閾值的程序線程的存儲(chǔ)器等待時(shí)間容限將功率分派給圖1的存儲(chǔ)器控制器的圖。

圖5說(shuō)明根據(jù)一些實(shí)施例的基于程序線程的存儲(chǔ)器等待時(shí)間容限將功率分派給處理器的存儲(chǔ)器控制器的方法的流程圖。

圖6是說(shuō)明根據(jù)一些實(shí)施例的用于設(shè)計(jì)和制造實(shí)施處理系統(tǒng)的組件的至少一部分的集成電路裝置的方法的流程圖。

具體實(shí)施方式

圖1到6說(shuō)明用于基于程序線程的存儲(chǔ)器等待時(shí)間容限將功率分派給處理器的存儲(chǔ)器控制器的技術(shù)。處理器通過(guò)監(jiān)測(cè)存儲(chǔ)器控制器對(duì)一個(gè)或多個(gè)存儲(chǔ)器存取請(qǐng)求作出響應(yīng)所花費(fèi)的時(shí)間量而直接地或間接地監(jiān)測(cè)程序線程的存儲(chǔ)器等待時(shí)間。當(dāng)超過(guò)程序線程的存儲(chǔ)器等待時(shí)間容限時(shí)(這通過(guò)例如緩存未命中率等一個(gè)或多個(gè)性能特性來(lái)指示),處理器可將額外的功率分派給存儲(chǔ)器控制器,進(jìn)而提高存儲(chǔ)器控制器可以處理存儲(chǔ)器存取請(qǐng)求的速度。當(dāng)未超過(guò)程序線程的存儲(chǔ)器等待時(shí)間容限時(shí),處理器可以減少分派給存儲(chǔ)器控制器的功率的量。處理器因此提高了用于執(zhí)行程序線程的性能,同時(shí)仍節(jié)省了功率。

為了說(shuō)明,在一些實(shí)施例中,處理器通過(guò)監(jiān)測(cè)提供給存儲(chǔ)器控制器的存儲(chǔ)器存取請(qǐng)求來(lái)檢測(cè)緩存未命中。舉例來(lái)說(shuō),緩存未命中可導(dǎo)致將提供給緩存的存儲(chǔ)器存取請(qǐng)求傳遞到存儲(chǔ)器控制器。當(dāng)緩存的緩存未命中率(CMR)超過(guò)閾值時(shí),這指示存儲(chǔ)器控制器可能具有相對(duì)大量的存儲(chǔ)器存取請(qǐng)求要處理,這可能會(huì)延遲對(duì)正在執(zhí)行的程序線程的存儲(chǔ)器存取的處理,并且增加了所述正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間,使得超過(guò)了所述線程的存儲(chǔ)器等待時(shí)間容限。作為響應(yīng),處理器的應(yīng)用功率管理(APM)模塊可以增加施加到存儲(chǔ)器控制器的功率電壓。此增加的功率電壓允許存儲(chǔ)器控制器的晶體管更快速地開關(guān),從而提高了存儲(chǔ)器控制器可以處理其待決的存儲(chǔ)器存取請(qǐng)求的總速度。因此,當(dāng)有相當(dāng)大量的存儲(chǔ)器存取請(qǐng)求要處理時(shí),增加供應(yīng)給存儲(chǔ)器控制器的功率會(huì)減少存儲(chǔ)器存取等待時(shí)間。當(dāng)在存儲(chǔ)器控制器處有相對(duì)少的存儲(chǔ)器存取請(qǐng)求要處理時(shí)(這通過(guò)CMR來(lái)指示),APM模塊可以減小施加到存儲(chǔ)器控制器的功率電壓,進(jìn)而節(jié)省功率。

如本文使用,“存儲(chǔ)器等待時(shí)間”是指存儲(chǔ)器存取請(qǐng)求完成執(zhí)行所花費(fèi)的時(shí)間量。在一些實(shí)施例中,用于特定存儲(chǔ)器存取請(qǐng)求的存儲(chǔ)器等待時(shí)間取決于若干因素,包括在存儲(chǔ)器控制器處可以處理存儲(chǔ)器存取請(qǐng)求的速度。此外,因?yàn)樵黾咏o存儲(chǔ)器控制器的功率會(huì)允許存儲(chǔ)器控制器更快速地處理存儲(chǔ)器存取請(qǐng)求,所以增加給存儲(chǔ)器控制器的功率會(huì)減少存儲(chǔ)器等待時(shí)間。

如本文使用,“存儲(chǔ)器等待時(shí)間容限”是指程序線程對(duì)存取存儲(chǔ)器分級(jí)體系的指定層級(jí)(例如,連接到處理器的外部RAM)的靈敏度??蓪⑺鲮`敏度表達(dá)為執(zhí)行程序線程的至少一部分所花費(fèi)或預(yù)期花費(fèi)的時(shí)間。在一些實(shí)施例中,處理器可通過(guò)使用計(jì)數(shù)器或其它計(jì)時(shí)機(jī)構(gòu)來(lái)測(cè)量在存儲(chǔ)器控制器處處理存儲(chǔ)器存取請(qǐng)求所花費(fèi)的時(shí)間量,而測(cè)量是否已經(jīng)超過(guò)程序線程的存儲(chǔ)器存取容限。在一些實(shí)施例中,處理器可使用性能指示符來(lái)間接地測(cè)量是否已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限,所述性能指示符例如為緩存未命中率、在存儲(chǔ)器控制器處接收的存儲(chǔ)器存取請(qǐng)求的數(shù)目,或其它性能指示符。

如本文所描述,處理器可基于存儲(chǔ)器存取等待時(shí)間將功率分派給存儲(chǔ)器控制器。出于描述的目的,本文描述的實(shí)施例采用通過(guò)改變存儲(chǔ)器控制器的一個(gè)或多個(gè)參考電壓(有時(shí)被稱作VDD)的量值來(lái)分派功率的處理器。將了解,在一些實(shí)施例中,處理器可例如通過(guò)改變施加到存儲(chǔ)器控制器的一個(gè)或多個(gè)節(jié)點(diǎn)的電流的量而以其它方式分派功率。

圖1說(shuō)明根據(jù)一些實(shí)施例的可以將功率分派給存儲(chǔ)器控制器的處理器100。所說(shuō)明的處理器100包括處理器核心102,其可為(例如)基于x86指令集架構(gòu)(ISA)、ARM ISA和類似者的中央處理單元(CPU)核心。處理器100可以實(shí)施多個(gè)此類處理器核心,并且可以進(jìn)一步實(shí)施被設(shè)計(jì)成或被配置成實(shí)行專用操作的處理器核心,例如,用于代表處理器100執(zhí)行圖形操作的一個(gè)或多個(gè)圖形處理單元(GPU)核心??梢栽诙喾N電子裝置中的任一者中實(shí)施處理器100,所述電子裝置例如為桌上型計(jì)算機(jī)、平板計(jì)算機(jī)、服務(wù)器、具備計(jì)算功能的蜂窩電話、個(gè)人數(shù)字助理(PDA)、機(jī)頂盒,和類似者。

處理器核心102執(zhí)行多組指令(被稱作程序線程)來(lái)代表電子裝置執(zhí)行任務(wù)。在執(zhí)行程序線程的過(guò)程中,處理器核心102可產(chǎn)生請(qǐng)求(被稱作存儲(chǔ)器存取請(qǐng)求),其表示對(duì)未存儲(chǔ)在處理器核心102的內(nèi)部寄存器處的數(shù)據(jù)的需求。存儲(chǔ)器存取請(qǐng)求可包括:存儲(chǔ)操作,每個(gè)存儲(chǔ)操作表示存儲(chǔ)對(duì)應(yīng)數(shù)據(jù)以供隨后使用的需求;以及加載操作,每個(gè)加載操作表示檢索所存儲(chǔ)的數(shù)據(jù)以供處理器核心102使用的需求。

在所描繪的實(shí)例中,處理器100包括緩存103,所述緩存包括被稱作緩存線的一組條目,其中每個(gè)緩存線存儲(chǔ)對(duì)應(yīng)數(shù)據(jù)。每條線與識(shí)別其所存儲(chǔ)的數(shù)據(jù)的存儲(chǔ)器地址相關(guān)聯(lián)。響應(yīng)于存儲(chǔ)器存取請(qǐng)求,緩存103識(shí)別其是否包括存儲(chǔ)由存儲(chǔ)器存取請(qǐng)求的存儲(chǔ)器地址識(shí)別的數(shù)據(jù)的線。如果其包括那樣的線,那么緩存103指示緩存命中,并且通過(guò)提供數(shù)據(jù)(在加載操作的情況下)或者通過(guò)存儲(chǔ)與存儲(chǔ)器存取請(qǐng)求相關(guān)聯(lián)的數(shù)據(jù)(在存儲(chǔ)操作的情況下)來(lái)滿足所述存儲(chǔ)器存取請(qǐng)求。如果緩存103不包括存儲(chǔ)由存儲(chǔ)器存取請(qǐng)求的存儲(chǔ)器地址識(shí)別的數(shù)據(jù)的線,那么其指示緩存未命中,并且將存儲(chǔ)器存取請(qǐng)求提供給存儲(chǔ)器控制器110。如下文進(jìn)一步描述,存儲(chǔ)器控制器110通過(guò)從系統(tǒng)存儲(chǔ)器(未示出)檢索與存儲(chǔ)器地址相關(guān)聯(lián)的數(shù)據(jù)并且將所檢索的數(shù)據(jù)提供給緩存103來(lái)滿足所述存儲(chǔ)器存取請(qǐng)求。作為響應(yīng),緩存103將數(shù)據(jù)存儲(chǔ)在其線中的一者處,其中所述線是基于緩存替換策略來(lái)選擇。另外,緩存103使用所檢索的數(shù)據(jù)來(lái)滿足存儲(chǔ)器存取請(qǐng)求,如上文所描述。

雖然將緩存103描繪為單個(gè)緩存,但在一些實(shí)施例中,其表示不同緩存的分級(jí)體系。舉例來(lái)說(shuō),緩存103可包括專用于處理器核心102的層級(jí)1(L1)緩存、在處理器核心102與其它處理器核心(未示出)之間共享的層級(jí)2(L2)緩存,和一個(gè)或多個(gè)額外層級(jí)的緩存。響應(yīng)于存儲(chǔ)器存取請(qǐng)求,緩存103可以連續(xù)地檢查分級(jí)體系中的每個(gè)緩存,直到其定位了具有對(duì)應(yīng)于存儲(chǔ)器存取請(qǐng)求的存儲(chǔ)器地址的線的緩存為止,從而指示每個(gè)層級(jí)處的個(gè)別緩存未命中或命中。如果沒(méi)有緩存包括對(duì)應(yīng)于存儲(chǔ)器存取請(qǐng)求的存儲(chǔ)器地址的線,那么緩存103將存儲(chǔ)器存取請(qǐng)求提供給存儲(chǔ)器控制器110來(lái)進(jìn)行滿足,如上文所描述。

存儲(chǔ)器控制器110管理存儲(chǔ)器存取請(qǐng)求到系統(tǒng)存儲(chǔ)器(未示出)的傳送,所述系統(tǒng)存儲(chǔ)器包括一個(gè)或多個(gè)存儲(chǔ)器裝置,例如隨機(jī)存取存儲(chǔ)器(RAM)模塊、快閃存儲(chǔ)器、硬盤驅(qū)動(dòng)器,和類似者,或其組合。此外,存儲(chǔ)器控制器110被配置成使得其可以緩沖多個(gè)存儲(chǔ)器存取請(qǐng)求,并且根據(jù)指定仲裁策略來(lái)處理每個(gè)請(qǐng)求。處理存儲(chǔ)器存取請(qǐng)求可以包括:緩沖存儲(chǔ)器存取請(qǐng)求;在所述存儲(chǔ)器存取請(qǐng)求與存儲(chǔ)在緩沖器處的其它待決的存儲(chǔ)器存取請(qǐng)求之間進(jìn)行仲裁;產(chǎn)生控制信令來(lái)將存儲(chǔ)器存取請(qǐng)求傳送到系統(tǒng)存儲(chǔ)器的存儲(chǔ)器裝置中的一者或多者;響應(yīng)于存儲(chǔ)器存取請(qǐng)求而緩沖從系統(tǒng)存儲(chǔ)器接收的數(shù)據(jù);以及將響應(yīng)數(shù)據(jù)傳送到緩存103。在一些實(shí)施例中,存儲(chǔ)器控制器110是執(zhí)行額外功能的北橋,所述額外功能包括管理緩存103與其它處理器緩存(未示出)之間的存儲(chǔ)器一致性、管理處理器核心與其它系統(tǒng)模塊之間的通信,和類似者。

存儲(chǔ)器控制器110包括由晶體管和未在圖1個(gè)別說(shuō)明的其它電子組件構(gòu)成的一組模塊。通過(guò)標(biāo)示為“VDD”的參考電壓向這些電子組件供應(yīng)功率。至少一些所述電子組件的特性是使得VDD的量值越高,電子組件可以越快地對(duì)輸入刺激作出響應(yīng)。舉例來(lái)說(shuō),存儲(chǔ)器控制器110可以包括一個(gè)或多個(gè)晶體管,其被配置成基于導(dǎo)電狀態(tài)與非導(dǎo)電狀態(tài)之間的輸入刺激(例如,它們的相應(yīng)柵極電極處的電壓)而開關(guān)。隨著VDD的量值增加,一個(gè)或多個(gè)晶體管可以在導(dǎo)電狀態(tài)與非導(dǎo)電狀態(tài)之間開關(guān)的速度會(huì)有所提高。因此,VDD的量值上的增加的凈效應(yīng)是存儲(chǔ)器控制器110能夠更快速地處理存儲(chǔ)器存取請(qǐng)求,從而減少存儲(chǔ)器存取等待時(shí)間。

處理器100包括被配置成設(shè)定VDD的量值的電壓調(diào)節(jié)器121。如本文進(jìn)一步描述,處理器100可以響應(yīng)于超過(guò)程序線程的存儲(chǔ)器存取等待時(shí)間而控制電壓調(diào)節(jié)器121來(lái)調(diào)整VDD,進(jìn)而提高處理器100處的整體處理效率。

為了促進(jìn)對(duì)程序線程的存儲(chǔ)器等待時(shí)間的監(jiān)測(cè),處理器100包括性能監(jiān)測(cè)器115,其基于處理器核心102、緩存103和處理器100的其它模塊處的操作而監(jiān)測(cè)性能信息。性能監(jiān)測(cè)器115包括一組寄存器、計(jì)數(shù)器和其它模塊來(lái)識(shí)別和記錄指定時(shí)間量?jī)?nèi)的指定事件的發(fā)生。舉例來(lái)說(shuō),在一些實(shí)施例中,性能監(jiān)測(cè)器測(cè)量并記錄緩存103處的緩存未命中率(CMR)。當(dāng)緩存103是具有多個(gè)緩存的緩存分級(jí)體系時(shí),性能監(jiān)測(cè)器115可以測(cè)量并記錄多個(gè)緩存中的一者或多者或每一者處的CMR。舉例來(lái)說(shuō),在一些實(shí)施例中,性能監(jiān)測(cè)器115記錄在處理器核心102與一個(gè)或多個(gè)其它處理器核心之間共享的L2緩存處的CMR。性能監(jiān)測(cè)器115還可以測(cè)量并記錄其它性能特性,例如處理器核心102處的每循環(huán)指令(IPC)率、存儲(chǔ)器控制器110接收存儲(chǔ)器存取請(qǐng)求所用的速率、存儲(chǔ)器控制器110響應(yīng)于存儲(chǔ)器存取請(qǐng)求而發(fā)送數(shù)據(jù)所用的速率,和類似者。

APM模塊120是功率控制模塊,其使用性能信息來(lái)調(diào)整供應(yīng)給處理器100(包括存儲(chǔ)器控制器110)的一個(gè)或多個(gè)模塊的功率。具體來(lái)說(shuō),APM模塊120使用在性能監(jiān)測(cè)器115處記錄的一個(gè)或多個(gè)性能測(cè)量(例如,CMR)來(lái)識(shí)別存儲(chǔ)器控制器110處的存儲(chǔ)器存取等待時(shí)間。當(dāng)性能測(cè)量超過(guò)對(duì)應(yīng)閾值從而指示存儲(chǔ)器存取等待時(shí)間已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器存取等待時(shí)間容限時(shí),APM模塊120致使電壓調(diào)節(jié)器121增加VDD的量值,從而增加供應(yīng)給存儲(chǔ)器控制器110的功率。這會(huì)提高存儲(chǔ)器控制器110處理存儲(chǔ)器存取請(qǐng)求的速度,進(jìn)而將存儲(chǔ)器存取等待時(shí)間減少到程序線程的存儲(chǔ)器存取等待時(shí)間以下。當(dāng)存儲(chǔ)器存取等待時(shí)間下降到程序線程的容限以下時(shí)、在增加VDD的量值之后已經(jīng)逝去所界定的時(shí)間量之后、在已經(jīng)在存儲(chǔ)器控制器110處處理了閾值數(shù)目的存儲(chǔ)器存取請(qǐng)求之后,或者基于滿足了一個(gè)或多個(gè)其它準(zhǔn)則,APM模塊120減小VDD的量值。

為了說(shuō)明,在所描繪的實(shí)例中,處理器100包括預(yù)取器114,其監(jiān)測(cè)存儲(chǔ)器控制器110處的存儲(chǔ)器存取。預(yù)取器114識(shí)別存儲(chǔ)器存取中的模式,并且基于那些模式而將預(yù)取請(qǐng)求發(fā)出到存儲(chǔ)器控制器110,以便將預(yù)期馬上需要的數(shù)據(jù)加載到緩存103。因此,只要處理器核心102發(fā)出的存儲(chǔ)器存取請(qǐng)求遵循預(yù)取器114所識(shí)別的模式,便將有可能在緩存103處滿足存儲(chǔ)器存取請(qǐng)求,從而保持CMR較低。因此,提供給存儲(chǔ)器控制器110的存儲(chǔ)器存取請(qǐng)求的數(shù)目可能會(huì)被維持較低,進(jìn)而還保持存儲(chǔ)器存取等待時(shí)間相對(duì)低。當(dāng)處理器核心102發(fā)出未遵循由預(yù)取器114識(shí)別的模式的一定數(shù)目的存儲(chǔ)器存取請(qǐng)求時(shí),所述存儲(chǔ)器存取請(qǐng)求更有可能在緩存103處未命中,從而增加了CMR。將在緩存103處未命中的存儲(chǔ)器存取請(qǐng)求提供給存儲(chǔ)器控制器110,進(jìn)而導(dǎo)致存儲(chǔ)器存取等待時(shí)間超過(guò)在處理器核心102處正在執(zhí)行的程序線程的存儲(chǔ)器存取等待時(shí)間,這是因?yàn)榇鎯?chǔ)器控制器110處理更高數(shù)目的存儲(chǔ)器存取請(qǐng)求要花費(fèi)增加的時(shí)間。因此,當(dāng)CMR增加到給定閾值以上時(shí),存儲(chǔ)器存取等待時(shí)間有可能超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器存取等待時(shí)間。響應(yīng)于CMR超過(guò)給定閾值,APM模塊120增加VDD,使得存儲(chǔ)器控制器110可以更快速地處理更高數(shù)目的存儲(chǔ)器存取請(qǐng)求,使得正在執(zhí)行的線程的存儲(chǔ)器等待時(shí)間下降到正在執(zhí)行的線程的存儲(chǔ)器存取等待時(shí)間以下。

在一些實(shí)施例中,APM模塊120針對(duì)處理器100的模塊強(qiáng)制執(zhí)行功率管理策略,借此,所述功率管理策略指示相對(duì)于熱限制和用于處理器100的其它物理規(guī)范的每個(gè)模塊的預(yù)算功率的標(biāo)稱量。功率管理策略還可以針對(duì)處理器100的不同模塊設(shè)定優(yōu)先級(jí),使得APM模塊120基于1)每個(gè)模塊的性能;和2)每個(gè)模塊的優(yōu)先級(jí)來(lái)指派供應(yīng)給每個(gè)模塊的功率。因此,舉例來(lái)說(shuō),如果兩個(gè)不同模塊的性能特性指示對(duì)額外功率的需求,那么APM模塊120可以識(shí)別所需要的功率是否將致使處理器100超過(guò)總功率預(yù)算,且如果超過(guò)總功率預(yù)算,那么指示將向所述兩個(gè)模塊中的哪一者指派額外功率。

為了經(jīng)由實(shí)例進(jìn)行說(shuō)明,在一些實(shí)施例中,處理器100與功率管理策略相關(guān)聯(lián),借此,向處理器核心102的功率要求給予高于存儲(chǔ)器控制器110的功率要求的優(yōu)先級(jí)。在一些情景中,存儲(chǔ)在性能監(jiān)測(cè)器115處的性能特性可以指示處理器核心102和存儲(chǔ)器控制器110兩者都可以受益于所供應(yīng)的功率上的增加。舉例來(lái)說(shuō),CMR可以指示存儲(chǔ)器控制器110可以與處理器核心102處的IPC同時(shí)地受益于VDD上的增加,從而指示處理器核心102可以受益于其供應(yīng)功率上的增加。APM模塊120首先識(shí)別是否可以在處理器100不超過(guò)其總功率預(yù)算的情況下增加供應(yīng)給處理器核心102的功率和供應(yīng)給存儲(chǔ)器控制器110的功率兩者,且如果可以,那么增加供應(yīng)給每個(gè)模塊的功率。如果APM模塊120識(shí)別出增加供應(yīng)給處理器核心102和存儲(chǔ)器控制器110兩者的功率將導(dǎo)致超過(guò)總功率預(yù)算,那么APM模塊120會(huì)增加供應(yīng)給處理器核心102的功率,這是處理器核心102的功率管理策略中的其優(yōu)先級(jí)所要求的。

圖2描繪說(shuō)明根據(jù)一些實(shí)施例的基于正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限將功率分派給圖1的存儲(chǔ)器控制器110的圖200。圖200的x軸對(duì)應(yīng)于時(shí)間,而y軸對(duì)應(yīng)于由電壓調(diào)節(jié)器121供應(yīng)給存儲(chǔ)器控制器110的VDD的量值。在所說(shuō)明的實(shí)例中,在時(shí)間201處,APM模塊120基于存儲(chǔ)在性能監(jiān)測(cè)器115處的信息而識(shí)別出緩存103處的CMR超過(guò)閾值,從而指示可能超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限達(dá)對(duì)應(yīng)閾值。因此,APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便將VDD從標(biāo)示為“V1”的標(biāo)稱量值增加到標(biāo)示為“V2”的增加的量值。在時(shí)間202處,VDD的量值已經(jīng)增加到V2,進(jìn)而允許存儲(chǔ)器控制器110更快速地處理待決的存儲(chǔ)器存取請(qǐng)求。

在時(shí)間203處,APM模塊120識(shí)別出緩存103的CMR已經(jīng)下降到閾值以下,從而指示不再超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限。作為響應(yīng),APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào)以便將VDD的量值從V2減小到V1。到了時(shí)間204,VDD的量值已經(jīng)減小到V1,進(jìn)而減少了存儲(chǔ)器控制器110所消耗的功率。因此,在圖2的所說(shuō)明的實(shí)例中,處理器100通過(guò)增加供應(yīng)給存儲(chǔ)器控制器110的功率而提高了對(duì)存儲(chǔ)器等待時(shí)間敏感的正在執(zhí)行的程序線程的性能,但通過(guò)僅在已經(jīng)可能超過(guò)程序線程的存儲(chǔ)器等待時(shí)間容限時(shí)增加所供應(yīng)的功率來(lái)限制存儲(chǔ)器控制器所消耗的功率。

圖3說(shuō)明圖300,其示出根據(jù)一些實(shí)施例的基于緩存未命中率和指令處理率將功率分派給存儲(chǔ)器控制器110。圖300的x軸對(duì)應(yīng)于時(shí)間,而y軸對(duì)應(yīng)于由電壓調(diào)節(jié)器121供應(yīng)給存儲(chǔ)器控制器110的VDD的量值。在所說(shuō)明的實(shí)例中,在時(shí)間301處,APM模塊120基于存儲(chǔ)在性能監(jiān)測(cè)器115處的信息而識(shí)別出緩存103處的CMR超過(guò)閾值。因此,APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便將VDD從標(biāo)示為“V1”的標(biāo)稱量值增加到標(biāo)示為“V2”的增加的量值。在時(shí)間302處,VDD的量值已經(jīng)增加到V2,進(jìn)而允許存儲(chǔ)器控制器110更快速地處理待決的存儲(chǔ)器存取請(qǐng)求。

在時(shí)間303處,APM模塊120識(shí)別出處理器核心102處的IPC率已經(jīng)下降到閾值以下。APM模塊120進(jìn)一步識(shí)別出在將VDD的量值維持在V2的同時(shí)供應(yīng)額外的功率將致使處理器100超過(guò)總功率預(yù)算。另外,APM模塊120基于功率管理策略而識(shí)別出處理器核心102的功率需求將優(yōu)先于存儲(chǔ)器控制器110的功率需求。作為響應(yīng),APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào)以便將VDD的量值從V2減小到V1。到了時(shí)間304,VDD的量值已經(jīng)減小到V1,進(jìn)而減少了存儲(chǔ)器控制器110所消耗的功率。因此,APM模塊120可以增加供應(yīng)給處理器核心102的功率(例如,通過(guò)增加供應(yīng)給處理器核心102的電壓的量值)。這允許處理器核心102更快速地執(zhí)行指令處理,從而在處理器100不超過(guò)其總功率預(yù)算的情況下減小其IPC。

在一些實(shí)施例中,APM模塊120可基于CMR與對(duì)應(yīng)閾值的關(guān)系而將VDD的量值設(shè)定為若干可能量值中的任一者。當(dāng)CMR超過(guò)所述閾值中的一者時(shí),這指示已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限達(dá)對(duì)應(yīng)量。在圖4處說(shuō)明實(shí)例,其描繪圖400,所述圖示出根據(jù)一些實(shí)施例的基于相對(duì)于多個(gè)閾值的緩存未命中率將功率分派給存儲(chǔ)器控制器110。圖400的x軸對(duì)應(yīng)于時(shí)間,而y軸對(duì)應(yīng)于由電壓調(diào)節(jié)器121供應(yīng)給存儲(chǔ)器控制器110的VDD的量值。在所說(shuō)明的實(shí)例中,在時(shí)間401處,APM模塊120基于存儲(chǔ)在性能監(jiān)測(cè)器115處的信息而識(shí)別出緩存103處的CMR超過(guò)閾值(標(biāo)示為“閾值1”),從而指示已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限達(dá)第一量。因此,APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便將VDD從標(biāo)示為“V1”的標(biāo)稱量值增加到標(biāo)示為“V2”的增加的量值。在時(shí)間402處,VDD的量值已經(jīng)增加到V2,進(jìn)而允許存儲(chǔ)器控制器110更快速地處理待決的存儲(chǔ)器存取請(qǐng)求。

在時(shí)間403處,APM模塊120識(shí)別出緩存103處的CMR超過(guò)另一閾值(標(biāo)示為“閾值2”)。閾值2大于閾值1,使得閾值2指示已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限達(dá)比對(duì)應(yīng)于閾值1的第一量大的第二量。因此,APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便將VDD從V2增加到標(biāo)示為“V3”的增加的量值。在時(shí)間404處,VDD的量值已經(jīng)增加到V3,進(jìn)而允許存儲(chǔ)器控制器110更快速地處理待決的存儲(chǔ)器存取請(qǐng)求。在時(shí)間405處,APM模塊120識(shí)別出緩存103的CMR已經(jīng)下降到閾值2以下。作為響應(yīng),APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào)以便將VDD的量值從V3減小到V2。

在一些實(shí)施例中,APM模塊120還可以基于其它存儲(chǔ)器存取特性(例如,存儲(chǔ)器帶寬)來(lái)調(diào)整VDD電壓。舉例來(lái)說(shuō),性能監(jiān)測(cè)器115可以監(jiān)測(cè)并且存儲(chǔ)指示來(lái)自緩存103的存儲(chǔ)器存取請(qǐng)求所需的存儲(chǔ)器帶寬的量的信息。響應(yīng)于指示存儲(chǔ)器存取請(qǐng)求所使用的存儲(chǔ)器帶寬的量超過(guò)閾值的信息,APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便在時(shí)間405處將VDD從量值V2增加到V3

另外,在一些實(shí)施例中,APM模塊可以基于除了緩存103處的緩存未命中率之外或作為其補(bǔ)充的準(zhǔn)則而識(shí)別出已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限。舉例來(lái)說(shuō),在一些實(shí)施例中,APM模塊120可以基于存儲(chǔ)在存儲(chǔ)器控制器110的緩沖器處的存儲(chǔ)器存取請(qǐng)求的數(shù)目、基于在存儲(chǔ)器控制器110的接口處接收的存儲(chǔ)器存取請(qǐng)求的數(shù)目、基于存儲(chǔ)器控制器110發(fā)出的對(duì)存儲(chǔ)器存取請(qǐng)求的響應(yīng)率和類似者來(lái)識(shí)別出已經(jīng)超過(guò)正在執(zhí)行的程序線程的存儲(chǔ)器等待時(shí)間容限。

圖5說(shuō)明根據(jù)一些實(shí)施例的將功率分派給處理器的存儲(chǔ)器控制器的方法500的流程圖。出于描述的目的,相對(duì)于圖1的處理器100處的示例性實(shí)施方案來(lái)描述所述方法。在框502處,性能監(jiān)測(cè)器115監(jiān)測(cè)并記錄緩存103處的緩存未命中率。在框504處,APM模塊識(shí)別緩存103的CMR是否超過(guò)閾值。如果未超過(guò)閾值,那么方法流移動(dòng)到框506,且APM模塊120不將要改變VDD的指示提供給電壓調(diào)節(jié)器121。因此,電壓調(diào)節(jié)器121將VDD維持在其標(biāo)稱量值。

如果在框504處APM模塊120識(shí)別出緩存103的CMR超過(guò)量值,那么方法流移動(dòng)到框508,且APM模塊120識(shí)別在針對(duì)處理器100的功率管理策略下是否存在可用的功率來(lái)分派給存儲(chǔ)器控制器110。如果不存在可用的功率(例如,因?yàn)橐呀?jīng)將所有可用的功率分派給在功率管理策略下具有比存儲(chǔ)器控制器110更高的優(yōu)先級(jí)的處理器100的模塊),那么方法流移動(dòng)到框506,且電壓調(diào)節(jié)器121將VDD維持在其標(biāo)稱量值。如果在框508處存在可用于分派的功率,那么方法流移動(dòng)到框510,且APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào)來(lái)增加VDD的量值。

方法流前進(jìn)到框512,且性能監(jiān)測(cè)器115繼續(xù)監(jiān)測(cè)緩存103的CMR。在框514處,APM模塊120識(shí)別:1)緩存103的CMR是否已經(jīng)下降到閾值以下;以及2)在功率管理策略下具有更高優(yōu)先級(jí)的處理器100的模塊是否需要在框510處分派給存儲(chǔ)器控制器110的額外功率。如果這些條件都不為真,那么方法流返回到框512,且將VDD維持在于框510處設(shè)定的較高量值。如果這些條件中的任一者為真,那么方法流移動(dòng)到框516,且APM模塊120向電壓調(diào)節(jié)器121發(fā)信號(hào),以便將VDD減小到其標(biāo)稱量值。方法流返回到框502。

在一些實(shí)施例中,上文所描述的設(shè)備和技術(shù)實(shí)施于包括一個(gè)或多個(gè)集成電路(IC)裝置(還被稱作集成電路封裝或微芯片)的系統(tǒng)中??稍谶@些IC裝置的設(shè)計(jì)和制造中使用電子設(shè)計(jì)自動(dòng)化(EDA)和計(jì)算機(jī)輔助設(shè)計(jì)(CAD)軟件工具。這些設(shè)計(jì)工具通常表示為一個(gè)或多個(gè)軟件程序。所述一個(gè)或多個(gè)軟件程序包括可由計(jì)算機(jī)系統(tǒng)執(zhí)行以便進(jìn)行以下操作的代碼:操縱計(jì)算機(jī)系統(tǒng)對(duì)表示一個(gè)或多個(gè)IC裝置的電路的代碼進(jìn)行操作,以便執(zhí)行用于設(shè)計(jì)或調(diào)適制造系統(tǒng)來(lái)制造電路的過(guò)程的至少一部分。此代碼可包括指令、數(shù)據(jù)或指令與數(shù)據(jù)的組合。表示設(shè)計(jì)工具或制造工具的軟件指令通常存儲(chǔ)在計(jì)算系統(tǒng)可存取的計(jì)算機(jī)可讀存儲(chǔ)媒體中。同樣,表示IC裝置的設(shè)計(jì)或制造的一個(gè)或多個(gè)階段的代碼可存儲(chǔ)在同一計(jì)算機(jī)可讀存儲(chǔ)媒體或不同計(jì)算機(jī)可讀存儲(chǔ)媒體中且從其進(jìn)行存取。

計(jì)算機(jī)可讀存儲(chǔ)媒體可包括可由計(jì)算機(jī)系統(tǒng)在使用期間存取以便將指令和/或數(shù)據(jù)提供給計(jì)算機(jī)系統(tǒng)的任何存儲(chǔ)媒體,或存儲(chǔ)媒體的組合。此類存儲(chǔ)媒體可包括(但不限于)光學(xué)媒體(例如,壓縮光盤(CD)、數(shù)字多功能光盤(DVD)、藍(lán)光光盤)、磁性媒體(例如,軟盤、磁帶或磁性硬盤驅(qū)動(dòng)器)、易失性存儲(chǔ)器(例如,隨機(jī)存取存儲(chǔ)器(RAM)或高速緩沖存儲(chǔ)器)、非易失性存儲(chǔ)器(例如,只讀存儲(chǔ)器(ROM)或快閃存儲(chǔ)器),或基于微機(jī)電系統(tǒng)(MEMS)的存儲(chǔ)媒體。計(jì)算機(jī)可讀存儲(chǔ)媒體可嵌入計(jì)算系統(tǒng)(例如,系統(tǒng)RAM或ROM)中、固定地附接到計(jì)算系統(tǒng)(例如,磁性硬盤驅(qū)動(dòng)器)、可移除地附接到計(jì)算系統(tǒng)(例如,光盤或基于通用串行總線(USB)的快閃存儲(chǔ)器),或經(jīng)由有線或無(wú)線網(wǎng)絡(luò)耦合到計(jì)算機(jī)系統(tǒng)(例如,網(wǎng)絡(luò)可存取存儲(chǔ)裝置(NAS))。

圖6是示出用于設(shè)計(jì)和制造實(shí)施根據(jù)一些實(shí)施例的一個(gè)或多個(gè)方面的IC裝置的示例性方法500的流程圖。如上文所述,針對(duì)以下過(guò)程中的每一者所產(chǎn)生的代碼存儲(chǔ)在或以其它方式體現(xiàn)在非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體中以供對(duì)應(yīng)的設(shè)計(jì)工具或制造工具存取和使用。

在框602處,產(chǎn)生IC裝置的功能規(guī)格??赏ㄟ^(guò)多種編程語(yǔ)言或建模語(yǔ)言(包括C、C++、SystemC、Simulink或MATLAB)中的任一者來(lái)表示所述功能規(guī)格(常常被稱作微型架構(gòu)規(guī)格(MAS))。

在框604處,使用所述功能規(guī)格來(lái)產(chǎn)生表示IC裝置的硬件的硬件描述代碼。在一些實(shí)施例中,使用至少一種硬件描述語(yǔ)言(HDL)來(lái)表示所述硬件描述代碼,所述硬件描述語(yǔ)言包括多種計(jì)算機(jī)語(yǔ)言、規(guī)范語(yǔ)言,或用于IC裝置的電路的規(guī)范化描述和設(shè)計(jì)的建模語(yǔ)言中的任一者。所產(chǎn)生的HDL代碼通常表示IC裝置的電路的操作、電路的設(shè)計(jì)和組織,以及用于通過(guò)模擬來(lái)驗(yàn)證IC裝置的正確操作的測(cè)試。HDL的實(shí)例包括模擬HDL(AHDL)、Verilog HDL、SystemVerilog HDL和VHDL。對(duì)于實(shí)施同步數(shù)字電路的IC裝置,硬件描述符代碼可包括寄存器傳遞級(jí)(RTL)代碼來(lái)提供對(duì)同步數(shù)字電路的操作的抽象表示。對(duì)于其它類型的電路,硬件描述符代碼可包括行為級(jí)代碼來(lái)提供電路操作的抽象表示。由硬件描述代碼表示的HDL模型通常經(jīng)受一輪或多輪的模擬和調(diào)試來(lái)通過(guò)設(shè)計(jì)驗(yàn)證。

在驗(yàn)證由硬件描述代碼表示的設(shè)計(jì)之后,在框606處,使用合成工具來(lái)合成硬件描述代碼以便產(chǎn)生表示或界定IC裝置的電路的初始物理實(shí)現(xiàn)方式的代碼。在一些實(shí)施例中,所述合成工具產(chǎn)生一個(gè)或多個(gè)網(wǎng)表,其包括電路裝置例子(例如,門、晶體管、電阻器、電容器、電感器、二極管等)以及電路裝置例子之間的網(wǎng)或連接。可選地,可在不使用合成工具的情況下手動(dòng)地產(chǎn)生網(wǎng)表的全部或一部分。與硬件描述代碼一樣,網(wǎng)表可經(jīng)受一個(gè)或多個(gè)測(cè)試和驗(yàn)證過(guò)程,之后產(chǎn)生最終的一組一個(gè)或多個(gè)網(wǎng)表。

可選地,可使用示意性編輯器工具起草IC裝置的電路的示意圖,且隨后可使用示意性捕獲工具捕獲所得的電路圖,且產(chǎn)生表示電路圖的組件和連接性的一個(gè)或多個(gè)網(wǎng)表(存儲(chǔ)在計(jì)算機(jī)可讀媒體上)。所捕獲的電路圖隨后可經(jīng)受一輪或多輪模擬來(lái)進(jìn)行測(cè)試和驗(yàn)證。在框608處,一個(gè)或多個(gè)EDA工具使用在框606處產(chǎn)生的網(wǎng)表來(lái)產(chǎn)生表示IC裝置的電路的物理布局的代碼。此過(guò)程可包括(例如)放置工具,其使用網(wǎng)表來(lái)確定或固定IC裝置的電路的每個(gè)元件的位置。此外,布線工具依賴放置過(guò)程而添加并布線根據(jù)網(wǎng)表連接電路元件所需的電線。所得的代碼表示IC裝置的三維模型。可以數(shù)據(jù)庫(kù)文件格式(例如,圖形數(shù)據(jù)庫(kù)系統(tǒng)II(GDSII)格式)表示所述代碼。呈此格式的數(shù)據(jù)通常表示幾何形狀、文本標(biāo)記,和關(guān)于呈分層形式的電路布局的其它信息。

在框610處,將物理布局代碼(例如,GDSII代碼)提供給制造設(shè)施,所述制造設(shè)施使用物理布局代碼來(lái)配置或以其它方式調(diào)適制造設(shè)施的制造工具(例如,通過(guò)掩模工具)來(lái)制造IC裝置。也就是說(shuō),可將物理布局代碼編程到一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)中,所述一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)隨后可以完全地或部分地控制制造設(shè)施的工具的操作,或其中執(zhí)行的制造操作。

在一些實(shí)施例中,上文所描述的技術(shù)的某些方面可由執(zhí)行軟件的處理系統(tǒng)的一個(gè)或多個(gè)處理器實(shí)施。所述軟件包括存儲(chǔ)在或另外有形地體現(xiàn)在非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體上的一組或多組可執(zhí)行命令。所述軟件可包括命令和某些數(shù)據(jù),其當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行時(shí)會(huì)操縱所述一個(gè)或多個(gè)處理器執(zhí)行上文所描述的技術(shù)的一個(gè)或多個(gè)方面。所述非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體可包括(例如)磁盤或光盤存儲(chǔ)裝置、固態(tài)存儲(chǔ)裝置,例如快閃存儲(chǔ)器、高速緩沖存儲(chǔ)器、隨機(jī)存取存儲(chǔ)器(RAM),或其它非易失性存儲(chǔ)器裝置,和類似者。存儲(chǔ)在非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體上的可執(zhí)行指令可呈由一個(gè)或多個(gè)處理器解譯或可以其它方式執(zhí)行的源代碼、匯編語(yǔ)言代碼、目標(biāo)代碼,或其它指令格式。

應(yīng)注意,不需要上文在一般描述中所描述的所有活動(dòng)或要素、可能不需要特定活動(dòng)或裝置的一部分,且可執(zhí)行一個(gè)或多個(gè)其它活動(dòng),或包括除了所描述的要素之外的要素。此外,列舉活動(dòng)的次序不一定是執(zhí)行活動(dòng)的次序。而且,已經(jīng)參考特定實(shí)施例描述了概念。然而,本領(lǐng)域技術(shù)人員應(yīng)了解,可在不脫離所附權(quán)利要求書中所陳述的本公開的范圍的情況下作出各種修改和改變。因此,可在說(shuō)明性意義而不是限制性意義上對(duì)待說(shuō)明書和圖,且希望所有此類修改包括在本公開的范圍內(nèi)。

上文已關(guān)于特定實(shí)施例描述了益處、其它優(yōu)勢(shì)和問(wèn)題的解決方案。然而,這些益處、優(yōu)勢(shì)、問(wèn)題的解決方案以及可導(dǎo)致任何益處、優(yōu)勢(shì)或解決方案發(fā)生或變得更加突出的任何特征不應(yīng)被解釋為任何或所有權(quán)利要求的關(guān)鍵、所需或?qū)嵸|(zhì)特征。另外,上文公開的特定實(shí)施例僅是說(shuō)明性的,因?yàn)樗_的標(biāo)的可以按受益于本文教導(dǎo)的益處的本領(lǐng)域技術(shù)人員顯而易見(jiàn)的不同但等效的方式加以修改和實(shí)踐。除了所附權(quán)利要求書中所描述的內(nèi)容之外,不希望對(duì)本文示出的構(gòu)造或設(shè)計(jì)的細(xì)節(jié)進(jìn)行限制。因此顯然的是,可更改或修改上文所公開的特定實(shí)施例,且所有此類變化都被視為在所公開的標(biāo)的物的范圍內(nèi)。因此,本文尋求的保護(hù)在所附權(quán)利要求書中予以陳述。

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