繪圖處理系統(tǒng)及其電源門控方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及繪圖處理系統(tǒng),特別涉及可進(jìn)行動(dòng)態(tài)電源門控(dynami c powergating)的繪圖處理系統(tǒng)及其電源門控(power gating)方法。
【背景技術(shù)】
[0002]在電子裝置中,例如是計(jì)算機(jī)及可攜帶裝置,繪圖處理單元(GraphicsProcessing Unit,GPU)總是功耗最大的元件之一。因此,對(duì)于電源管理來說,如何降低功耗以增加電池使用時(shí)間是一個(gè)相當(dāng)重要的課題。在傳統(tǒng)的電子裝置中,均是使用軟件的方式以控制繪圖處理單元,例如是利用中央處理器(Central Processing Unit, CPU)取得系統(tǒng)信息以及使用者設(shè)定,并利用統(tǒng)計(jì)的方式做出決策。舉例來說,在傳統(tǒng)電子裝置中的繪圖處理單元的電源管理單元(Power Management Unit,PMU)依據(jù)不同的狀況以關(guān)閉或開啟在繪圖處理單元中的相應(yīng)的分割部分(partit1n),例如是繪圖處理單元中的可關(guān)閉的分割部分。
[0003]然而,以軟件控制繪圖處理單元中的不同分割部分的電源開關(guān)的細(xì)微性(granularity)程度是相當(dāng)大的,意即無法控制較細(xì)的分割部分的電源門控。再者,中央處理器在監(jiān)控及判斷電源情況時(shí)亦需要運(yùn)行相應(yīng)的應(yīng)用程序,不但會(huì)浪費(fèi)功耗,且中央處理器的效能亦是運(yùn)算時(shí)的瓶頸。因此,需要一種繪圖處理系統(tǒng)以解決上述電源管理的問題。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種繪圖處理系統(tǒng),包括:一總線接口,一繪圖處理單元,該繪圖處理單元包括:多個(gè)分割部分;以及一控制電路,該控制電路用以通過分析外部繪圖指令來控制各分割部分的一電源狀態(tài),并檢測(cè)各分割部分的一閑置狀態(tài);以及一電源管理單元,該電源管理單元用以控制該繪圖處理單元的電源,其中當(dāng)該總線接口接收到一外部繪圖指令時(shí),該總線接口通知該電源管理單元先開啟該繪圖處理單元中的控制電路的電源,而該控制電路根據(jù)外部繪圖指令再開啟相應(yīng)于該外部繪圖指令的該多個(gè)分割部分中的一個(gè)或者幾個(gè)的電源,其中當(dāng)該控制電路檢測(cè)到該多個(gè)分割部分的一第一分割部分處于該閑置狀態(tài)時(shí),該控制電路關(guān)閉該第一分割部分的電源,其中當(dāng)該總線接口檢測(cè)到該多個(gè)分割部分處于一完全閑置狀態(tài)時(shí),該總線接口通過該電源管理單元關(guān)閉該控制電路的電源,而該電源管理單元關(guān)閉該控制電路的電源時(shí),該控制電路也可以關(guān)閉該多個(gè)分割部分的電源。
[0005]本發(fā)明還提供一種電源門控方法,用于一繪圖處理系統(tǒng),該繪圖處理系統(tǒng)包括一繪圖處理單元、一總線接口、以及一電源管理單元,其中該繪圖處理單元包括一控制電路及多個(gè)分割部分,該方法包括:當(dāng)該總線接口接收到一外部繪圖指令時(shí),利用該電源管理單元開啟該控制電路的電源;之后再該控制電路通過分析外部繪圖指令來開啟相應(yīng)于該外部繪圖指令的該多個(gè)分割部分中的一個(gè)或者幾個(gè)的電源;當(dāng)該控制電路檢測(cè)到該多個(gè)分割部分的任何一個(gè)處于一閑置狀態(tài)時(shí),利用該控制電路關(guān)閉處于該閑置狀態(tài)的該多個(gè)分割部分的電源;以及當(dāng)該總線接口檢測(cè)到該多個(gè)分割部分處于一完全閑置狀態(tài)時(shí),利用該總線接口通過該電源管理單元關(guān)閉該控制電路的電源,而該電源管理單元關(guān)閉該控制電路的電源時(shí),該控制電路也可以關(guān)閉該多個(gè)分割部分的電源。
【附圖說明】
[0006]圖1是顯示依據(jù)本發(fā)明一實(shí)施例中的繪圖處理系統(tǒng)的功能方塊圖。
[0007]圖2是顯示依據(jù)本發(fā)明一實(shí)施例中的電源門控方法的流程圖。
[0008]【符號(hào)說明】
[0009]100?繪圖處理系統(tǒng);
[0010]110?總線接口;
[0011 ]111?第二檢測(cè)電路;
[0012]120?電源管理單元;
[0013]130?繪圖處理單元;
[0014]131?傳感器;
[0015]140?控制電路;
[0016]141?電源控制電路;
[0017]142?第一檢測(cè)電路;
[0018]151 - 154?分割部分。
【具體實(shí)施方式】
[0019]為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉一優(yōu)選實(shí)施例,并配合附圖,作詳細(xì)說明如下。
[0020]圖1是顯示依據(jù)本發(fā)明一實(shí)施例中的繪圖處理系統(tǒng)的功能方塊圖。如圖1所示,繪圖處理系統(tǒng)100包括一總線接口(Bus interface) 110、一電源管理單元120、以及一繪圖處理單元130??偩€接口 110耦接于電源管理單元120、繪圖處理單元130,并用以接收在繪圖處理系統(tǒng)100的一外部繪圖指令,例如是來自與繪圖處理系統(tǒng)100在同一電子裝置中的一中央處理器。電源管理單元120完全獨(dú)立于繪圖處理單元130之外的,控制繪圖處理單元130中的不同分割部分的電源門控(power gating)。舉例來說,繪圖處理單元130包括一控制電路140及多個(gè)分割部分(partit1n) 151?154,其中分割部分151?154為可開啟或關(guān)閉以進(jìn)行電源門控的分割部分。需注意的是,繪圖處理單元130中的分割部分151?154包括了用于繪圖處理的各種硬件元件,例如是頂點(diǎn)著色器(vertex shader)、圖元著色器(pixel shader)、紋理單元(texture unit)、內(nèi)部存儲(chǔ)器、凹凸貼圖(bump mapping)單元、視頻解碼單元、3D運(yùn)算單元、或是由上述不同元件所組成的運(yùn)算管線(pipeline)、切片(slice)、方塊(block)等等,但本發(fā)明并不以上述元件為限。意即分割部分151?154即為繪圖處理單元130中的實(shí)質(zhì)的不同硬件分割部分。此外,分割部分151?154的組態(tài)設(shè)定,例如是相關(guān)的運(yùn)算功能及相關(guān)的元件,可依據(jù)應(yīng)用或運(yùn)算的不同而改變。
[0021]控制電路140為一永遠(yuǎn)開啟(always on)的電路,意即當(dāng)總線接口 110接收到外部繪圖指令而開啟控制電路140的電源后,控制電路140處于一永遠(yuǎn)開啟狀態(tài)??刂齐娐?40包括一電源控制電路141以及一第一檢測(cè)電路142。電源控制電路141用以控制分割部分151?154的電源開啟或關(guān)閉(例如分別通過各分割部分一電源控制信號(hào))。一般而言,繪圖處理單元130的直接存儲(chǔ)器存取緩沖器(DMAbuffer)存儲(chǔ)繪圖處理單元130的指令集,其可被視窗顯示驅(qū)動(dòng)模型(Windows Display Driver Model, WDDM)及繪圖處理單元130所使用。各直接存儲(chǔ)器存取緩沖器為用于目前正在運(yùn)作的相同或不同引擎(engine)的指令群組(co_and group),在每個(gè)直接存儲(chǔ)器存取緩沖器的指令群組的邊界(boundary),電源控制電路141即可自動(dòng)開啟/關(guān)閉未使用的分割部分的電源。
[0022]第一檢測(cè)電路142通過各分割部分151?154所回報(bào)的一閑置狀態(tài)信號(hào)以監(jiān)控分割部分151?154的閑置狀態(tài)。除此之外,第一檢測(cè)電路142還接收在繪圖處理單元130中的一傳感器(thermal sensor) 131所檢測(cè)到的溫度信息,并且依據(jù)該溫度信息及來自各分割部分的閑置狀態(tài)信號(hào)產(chǎn)生相應(yīng)于繪圖處理單元130的一完全閑置狀態(tài)(full idle
ε????θ) ^[曰 ο
[0023]在一實(shí)施例中,當(dāng)總線接口 110接收到來自中央處理器之外部繪圖指令以開啟繪圖處理單元130時(shí),總線接口 110先通過電源管理單元120以先開啟繪圖處理單元