動態(tài)電壓頻率調(diào)整系統(tǒng)及其方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電路控制,特別涉及可利用硬件監(jiān)測單元進行動態(tài)電壓頻率調(diào)整(Dynamic Voltage Frequency Scaling,DVFS)的動態(tài)電壓頻率調(diào)整系統(tǒng)及其動態(tài)電壓頻率調(diào)整方法。
【背景技術(shù)】
[0002]動態(tài)電壓頻率調(diào)整技術(shù)已廣泛應用于現(xiàn)今的各種處理器上,此技術(shù)可有效地管理電子系統(tǒng)的功耗以避免浪費。使用動態(tài)電壓頻率調(diào)整技術(shù)的挑戰(zhàn)在于決定要使用何種操作頻率,因為操作頻率會決定要使用的操作電壓。降低操作頻率及操作電壓也會產(chǎn)生較低的功耗。傳統(tǒng)的動態(tài)電壓頻率調(diào)整技術(shù)均是利用處理器以軟件的方式調(diào)整操作頻率及操作電壓,除了無法即時反應之后,也會有許多軟件的額外負擔(overhead)。因此,需要一種動態(tài)電壓頻率調(diào)整系統(tǒng)及其動態(tài)電壓頻率調(diào)整方法以解決在傳統(tǒng)動態(tài)電壓頻率調(diào)整技術(shù)的問題。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供一種動態(tài)電壓頻率調(diào)整系統(tǒng),包括:一運算單元;一電源管理單元;一硬件活動監(jiān)控單元,用以監(jiān)控該運算單元的一工作狀態(tài)及一溫度信息,并依據(jù)該工作狀態(tài)、該溫度信息、及一先前調(diào)整結(jié)果判斷是否要更新該運算單元的一操作電壓及一操作頻率,其中當該硬件活動監(jiān)控單元判斷要更新該運算單元的該操作電壓及該操作頻率,該硬件活動監(jiān)控單元產(chǎn)生一第一控制信號至該電源管理單元以調(diào)整該操作電壓及該操作頻率;以及一硬件電壓監(jiān)控單元,用以檢測該運算單元的一時序信息,并依據(jù)該時序信息判斷是否要微調(diào)該操作電壓,其中當該硬件電壓監(jiān)控單元判斷要微調(diào)該操作電壓,該硬件電壓監(jiān)控單元產(chǎn)生一第二控制信號至該電源管理單元以微調(diào)該操作電壓。
[0004]本發(fā)明還提供一種動態(tài)電壓頻率調(diào)整方法,用于一動態(tài)電壓頻率調(diào)整系統(tǒng),該動態(tài)電壓頻率調(diào)整系統(tǒng)包括一運算單元、一硬件活動監(jiān)控單元、一硬件電壓監(jiān)控單元、以及一電源管理單元。該方法包括:利用該硬件活動監(jiān)控單元監(jiān)控該運算單元的一工作狀態(tài)及一溫度信息;利用該硬件活動監(jiān)控單元依據(jù)該工作狀態(tài)、該溫度信息、及一先前調(diào)整結(jié)果判斷是否要更新該運算單元的一操作電壓及一操作頻率;當該硬件活動監(jiān)控單元判斷要更新該運算單元的該操作電壓及該操作頻率,利用該硬件活動監(jiān)控單元產(chǎn)生一第一控制信號至該電源管理單元以調(diào)整該操作電壓及該操作頻率;利用該硬件電壓監(jiān)控單元檢測該運算單元的一時序信息,并依據(jù)該時序信息判斷是否要微調(diào)該操作電壓;當該硬件電壓監(jiān)控單元判斷要微調(diào)該操作電壓,利用該硬件電壓監(jiān)控單元產(chǎn)生一第二控制信號至該電源管理單元以微調(diào)該操作電壓。
【附圖說明】
[0005]圖1A及圖1B是顯示依據(jù)本發(fā)明一實施例中的動態(tài)電壓頻率調(diào)整系統(tǒng)的功能方塊圖。
[0006]圖2A及圖2B是顯示依據(jù)本發(fā)明一實施例中的動態(tài)電壓頻率調(diào)整方法的流程圖。
[0007]【符號說明】
[0008]100?動態(tài)頻率電壓調(diào)整系統(tǒng);
[0009]110?運算單元;
[0010]IllA — IllD ?處理器;
[0011]112?熱傳感器;
[0012]120?硬件活動監(jiān)控單元;
[0013]121?事件計數(shù)電路;
[0014]12IA — 12ID?事件計數(shù)器;
[0015]122?負載計算單元;
[0016]123?調(diào)整預測電路;
[0017]130?硬件電壓監(jiān)控單元;
[0018]13IA — 13ID ?檢測電路;
[0019]132?控制電路;
[0020]133?狀態(tài)判斷電路
[0021]134?計時電路;
[0022]135?超時判斷電路;
[0023]136?解碼電路;
[0024]137?狀態(tài)暫存器;
[0025]140?電源管理單元;
[0026]142?動態(tài)電壓頻率調(diào)整模塊;
[0027]143A?動態(tài)電壓頻率調(diào)整邏輯電路;
[0028]143B?動態(tài)電壓頻率調(diào)整查找表;
[0029]144?適應性電壓調(diào)整模塊;
[0030]145A?適應性電壓調(diào)整邏輯電路;
[0031]145B?適應性電壓調(diào)整查找表;
[0032]146?鎖相回路;
[0033]148?電源管理芯片。
【具體實施方式】
[0034]為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉一優(yōu)選實施例,并配合附圖,作詳細說明如下。
[0035]圖1A及圖1B是顯示依據(jù)本發(fā)明一實施例中的動態(tài)電壓頻率調(diào)整系統(tǒng)的功能方塊圖。動態(tài)電壓頻率調(diào)整系統(tǒng)100包括一運算單元110、一硬件活動監(jiān)控單元(HardwareActivity Monitor,HAM) 120、一硬件電壓監(jiān)控單元(Hardware Voltage Monitor,HVM) 130、以及一電源管理單元(Power Management Unit,PMU) 140。運算單元110包括一或多個處理單元IllA?111D、以及一熱傳感器112。處理單元IllA?IllD例如可以是中央處理器(CPU)、圖形處理器(GPU)、圖像信號處理器(ISP)、視頻處理器(VPP)等等,但本發(fā)明的動態(tài)電壓頻率調(diào)整方法可應用于各種不同類型及數(shù)量的處理器,并不以上述實施例為限。除此之外,處理單元IllA?IllD也可由同一處理器中的不同內(nèi)核(core)所實現(xiàn)。熱傳感器112用以檢測運算單元110的溫度信息。
[0036]在一實施例中,硬件活動監(jiān)控單元120包括事件計數(shù)電路121、負載計算單元122、以及調(diào)整預測電路123。事件計數(shù)電路121包括事件計數(shù)器121A?121D,其分別檢測處理單元IllA?IllD之內(nèi)部管線(internal pipeline)、算術(shù)邏輯單元(ALU)、或是解碼器(decoder)的活動或事件(event)。換句話說,事件計數(shù)器121A?121D檢測處理單元IllA?IllD的實際工作負載(real workload),而非從處理單元IllA?IllD之外部檢測其工作狀態(tài)。負載計算單元122將事件計數(shù)器121A?121D所檢測到的工作負載信息與一預定閾值進行比較,并產(chǎn)生一判斷結(jié)果,其中上述預定閾值的數(shù)值預先存放于一暫存器中,且可由使用者自行設(shè)定。調(diào)整預測電路123依據(jù)該判斷結(jié)果、溫度信息及目前配置設(shè)定(例如調(diào)整預測電路123進行判斷的周期)計算一目前判斷結(jié)果。調(diào)整預測電路123并進一步判斷目前判斷結(jié)果及先前調(diào)整結(jié)果(例如是增加或降低操作電壓及操作頻率)的關(guān)系以決定是否要更新目前操作電壓及操作頻率的設(shè)定。
[0037]更進一步而言,硬件活動監(jiān)控單元120判斷處理單元IllA?IllD目前的效能是否符合目前操作電壓及操作頻率的設(shè)定。若處理單元IllA?IllD目前的效能符合目前操作電壓及操作頻率的設(shè)定,則電源管理單元140繼續(xù)保持目前操作電壓及操作頻率的設(shè)定。若否,處理單元IllA?IllD目前的效能不符合目前操作電壓及操作頻率的設(shè)定,則硬件活動監(jiān)控單元120會進一步判斷目前的操作電壓及操作頻率需增加或是降低,并通知電源管理