專利名稱:移動應用處理器的自適應中斷調控裝置的制作方法
技術領域:
本實用新型涉及一種自適應中斷調控裝置,尤其是一種移動應用處理器的自適應中斷調控裝置。
背景技術:
中斷,是一種外設與CPU之間的通信機制,外設通過中斷,通知CPU特定的事件發(fā)生(數(shù)據(jù)等待處理,等等),CPU停止當前的指令,轉而去處理中斷請求?,F(xiàn)代高性能SoC(System on Chip)通常運行某種多任務操作系統(tǒng),在中斷發(fā)生時,通常要執(zhí)行下列的程序1)、保存當前線程環(huán)境(context) ;2)、根據(jù)中斷向量表跳轉到中斷處理程序;3)、執(zhí)行中斷處理程序,處理數(shù)據(jù);4)、中斷處理程序結束,恢復當前線程環(huán)境;現(xiàn)代SoC,尤其移動應用處理器,集成多種通信外設,如WiFi,3G(第三代通 信)/4G(第四代通信)m0dem,藍牙,GPS,觸摸屏控制器等等。不同的外設,其本身發(fā)生的速率不同,對中斷響應延遲的要求也不同,比如觸摸屏,其單位時間內不會有大量中斷產生,但對每個中斷,要求很快能夠響應(既盡可能短的中斷延遲)。對于WiFi,3G/4G modem取決于當前是否在傳輸大量數(shù)據(jù);如果是,則單位時間內,會有大量中斷發(fā)生,對于中斷響應延遲要求減低,如果沒有傳輸大量數(shù)據(jù),則期望有很短的中斷延遲。總體來說,如果某一個外設在一定時間內產生了巨量的中斷,則會造成系統(tǒng)非常緩慢,因為每個中斷處理有系統(tǒng)開銷。這就造成不必要的CPU資源浪費。隨著越來越高速的通信機制在移動設備中的應用,如何減低系統(tǒng)開銷,同時保持很好的中斷延遲響應,成為一個新挑戰(zhàn)。用Wifi 802. Ilac,最新的標準使物理層速度達到500Mbps到lGbps,每個數(shù)據(jù)包大約2KB,那么如果每個數(shù)據(jù)包產生一個中斷,500Mbps下每秒大概有31000個中斷請求!目前,減低高速通信速率下中斷數(shù)量的方法有2種I、軟件調控方法軟件設定一個閥值Tw,每次中斷發(fā)生后,軟件把此外設的中斷禁止,然后去讀取此外設中的數(shù)據(jù),假設此外設是WiFi,那么軟件循環(huán)讀取數(shù)據(jù)包,直到讀取的數(shù)量達到閥值Tw。若外設中還有未處理的數(shù)據(jù),則通知操作系統(tǒng),下次計劃(schedule)繼續(xù)讀此外設數(shù)據(jù)包。否則,則重新允許此設備中斷。2、硬件調控方法硬件設定一個閥值Th,只有當此設備中等待處理的數(shù)據(jù)包達到Th個,設備才發(fā)生中斷請求。為了避免在低數(shù)據(jù)率情況下,設備中待處理數(shù)據(jù)包不能很快達到閥值而造成嚴重的中斷延遲,硬件通常維持一個可設定計時器,當設備中收到數(shù)據(jù)包,計時器開始計時,如果計時器超過了設定值,即使設備中的數(shù)據(jù)包數(shù)量沒達到Th個,設備也產生中斷,請求CPU處理數(shù)據(jù)。當前的硬件和軟件解決方案都有一個最大的問題,即如何確定中斷閥值?對硬件方案,還有一個如何確定計時器時間的問題。通常這2個值由系統(tǒng)軟件編寫人員,根據(jù)最壞情況(worst case analysis)分析得出,但實際情況是數(shù)據(jù)傳輸情況每時每刻都不同,數(shù)據(jù)包傳輸率時刻變化,所以此方案有很大局限性,遠非最佳,甚至有時會造成數(shù)據(jù)傳輸超時的嚴重問題。發(fā)明內容本實用新型的目的是克服現(xiàn)有技術中存在的不足,提供一種移動應用處理器的自適應中斷調控裝置,其結構緊湊,有效控制中斷數(shù)量,提高移動應用處理器的處理性能。按照本實用新型提供的技術方案,所述移動應用處理器的自適應中斷調控裝置,包括通信外設及與所述通信外設相連的移動處理器,所述通信外設還與流量監(jiān)控單元相連;所述流量監(jiān)控單元在中斷調控周期Tm內統(tǒng)計外設的數(shù)據(jù)包數(shù)量,并預測通信外設的下一中斷調控周期Tm內接收的數(shù)據(jù)包數(shù)量;流量監(jiān)控單元將預測數(shù)據(jù)包數(shù)量與預設的最大中斷速率Imax比較,以調整通信外設的動態(tài)中斷閾值Th以及計時器初始值CT,以使得通信外設產生最低的中斷延遲。所述流量監(jiān)控單元內預設所需的中斷調控周期Tm,最大中斷閾值Tmax以及最大中斷速率Imax ;并采用P = (1-w)*PT+W*PT_1;0 < W < I進行下一中斷調控周期Tm的數(shù)據(jù)包數(shù)量預測,其中P為預測數(shù)據(jù)包數(shù)量,Pt為當前中斷調控周期接收的數(shù)據(jù)包數(shù)量,Pt-!為前一中斷調控周期接收的數(shù)據(jù)包數(shù)量,w為加權系數(shù)?!ぎ擯*1000 < Imax時,流量監(jiān)控單元設定動態(tài)中斷閾值Th為I個,計時器初始值Ct為1000 ;當P*1000 > Imax且(P*1000/Imax) > Imax時,流量監(jiān)控單元設定動態(tài)閾值Th為Tmax個,計時器初始值 Ct 為 Ct = O. 5*Tmax/P ;當 P*1000 > Imax 且(P*1000/Imax) < Imax 時,流量監(jiān)控單元設定動態(tài)中斷閾值Th為Th = P*1000/Imax個,計時器初始值Ct為Ct = Th/P。所述通信外設包括WiFi、3G/4G調制解調器、藍牙、GPS或觸摸屏控制器。所述移動處理器包括單片機、ARM或DSP。本實用新型的優(yōu)點通信外設與流量監(jiān)控單元相連,流量監(jiān)控單元內預設中斷調控周期Tm、最大中斷閾值Tmax以及最大中斷速率Imax,流量監(jiān)控單元根據(jù)當前中斷調控周期Tffl內接收的平均數(shù)據(jù)包數(shù)量,并預測通信外設下一個中斷調控周期Tm內接收的數(shù)據(jù)包數(shù)量P,并將預測的數(shù)據(jù)包數(shù)量P與最大中斷速率Imax進行比較判斷,以調整動態(tài)中斷閾值Th以及計時器初始值CT,;無須事先對通信模式進行最壞狀況分析而決定參數(shù),保證系統(tǒng)在高速通信模式下,對數(shù)據(jù)包進行組合有效的控制中斷數(shù)量,保證系統(tǒng)在低速通信模式下,有最小的中斷響應延遲;結構緊湊,提高移動應用處理器的處理性能。
圖I為本實用新型的結構框圖。圖2為本實用新型流量監(jiān)控單元與通信外設相配合的結構框圖。圖3為本實用新型流量監(jiān)控單元調整通信外設參數(shù)的流程圖。圖4為本實用新型具體實施時的示意圖。
具體實施方式
下面結合具體附圖和實施例對本實用新型作進一步說明。如圖I、圖2和圖3所示在目前的移動設備中,包括移動處理器及與所述移動處理器相連的通信外設;通信外設在接收數(shù)據(jù)包時會產生中斷,產生中斷后會增加系統(tǒng)開銷,浪費CPU資源;為了能夠提高移動設備的CPU利用效率,降低系統(tǒng)開銷,本實用新型包括通信外設及與所述通信外設相連的移動處理器,所述通信外設還與流量監(jiān)控單元相連;所述流量監(jiān)控單元在中斷調控周期Tm內統(tǒng)計外設的數(shù)據(jù)包數(shù)量,并預測通信外設的下一中斷調控周期Tm內接收的數(shù)據(jù)包數(shù)量;流量監(jiān)控單元將預測數(shù)據(jù)包數(shù)量與預設的最大中斷速率Ifflax比較,以調整通信外設的動態(tài)中斷閾值Th以及計時器初始值CT,以使得通信外設產生最低的中斷延遲。所述通信外設包括WiFi、3G/4G調制解調器、藍牙、GPS或觸摸屏控制器。所述移動處理器包括單片機、ARM或DSP。流量監(jiān)控單元與通信外設的具體配合過程,可以參照上面的自適應調控方法的步驟,此處不再詳述。通過本實用新型進行中斷調控時,本實用新型包括用于處理通信外設流量的流量監(jiān)控單元,所述自適應中斷調控方法包括如下步驟a、在流量監(jiān)控單元內設定所需的中斷調控周期Tm,最大中斷閾值Tmax以及最大中斷速率; 如圖2所示流量監(jiān)控單元內具有中斷調控周期Tm寄存器、最大中斷閾值Tmax寄存器及最大中斷速率Imax寄存器,通過相應寄存器能夠實現(xiàn)相應數(shù)值的設定寄存;流量監(jiān)控單元同時能夠完成簡單的計算,可以采用常規(guī)的邏輯電路實現(xiàn),流量監(jiān)控單元的具體結構不是本實用新型的重點,普通技術人員都能夠理解與實現(xiàn);流量監(jiān)控單元可以集成到各高速通信設備中,也可以作為一個獨立單元存在,前提是流量監(jiān)控單元能夠設置通信外設中的動態(tài)中斷閾值寄存器與計時器寄存器;通信外設中一般具有數(shù)據(jù)包統(tǒng)計寄存器(stats register),如果通信外設中無數(shù)據(jù)包統(tǒng)計寄存器,流量監(jiān)控單元也可以與移動處理器相連,移動處理器對通信外設接收的數(shù)據(jù)包數(shù)量統(tǒng)計后傳輸給流量監(jiān)控單元,如圖I中的虛線所示。一般地,根據(jù)移動處理器的處理速度及通信外設的中斷處理時序要求,設置相應的中斷調控周期Tm、最大中斷閾值Tmax以及最大中斷速率1_,相應值設定后存儲在流量監(jiān)控單元內對應的寄存器內;中斷調控周期Tm—般為毫秒級,最大中斷閾值Tmax的統(tǒng)計單位為個;最大中斷閾值Tmax表示在一次中斷請求內最多可以處理的數(shù)據(jù)包數(shù)量,最大中斷閾值Tmax根據(jù)移動處理器的處理能力,外設緩存的大小,物理層最大的通信速率,數(shù)據(jù)包的大小等因素有關;最大中斷速率Imax表示單位時間呃逆對多可以處理中斷的數(shù)量,用“個/秒”表示,最大中斷速率Imax主要是根據(jù)移動處理器的處理能力,和分配多少處理能力給對應的通信外設等因素決定;b、在中斷調控周期Tm內,流量監(jiān)控單元統(tǒng)計通信外設收到的數(shù)據(jù)包數(shù)量;在中斷調控周期內,流量監(jiān)控單元對通信外設接收到的平均數(shù)據(jù)包數(shù)量;C、流量監(jiān)控單元根據(jù)統(tǒng)計的數(shù)據(jù)包數(shù)據(jù)量預測通信外設下一中斷調控周期Tm內的數(shù)據(jù)包數(shù)量,其中,流量監(jiān)控單元采用P = (1-W)*PT+W*PT_1;0 <w< 1,進行下一中斷調控周期Tm的數(shù)據(jù)包數(shù)量預測,P為預測數(shù)據(jù)包數(shù)量,Pt為當前中斷調控周期接收的數(shù)據(jù)包數(shù)量,Pt-!為前一中斷調控周期接收的數(shù)據(jù)包數(shù)量,w為加權系數(shù),P的單位是“個/毫秒”一般認為,通信外設的通信數(shù)據(jù)率在一定時間內,會達到一個穩(wěn)定的狀態(tài),因此可以采用上述數(shù)據(jù)包數(shù)量預測公式進行預測;通過數(shù)據(jù)包數(shù)量預測后,能夠避免不必要的中斷調控;加權系數(shù)w是一個可設定值,當加權系數(shù)w取O. 5時即為絕對平均;若加權系數(shù)w大于O. 5,則表示上一個中斷調控周期的數(shù)據(jù)包流量在平均中占有主要作用,若加權系數(shù)w小于O. 5,則表示當前的數(shù)據(jù)包流量在平均中占據(jù)主要作用;d、流量監(jiān)控單元根據(jù)預測數(shù)據(jù)包數(shù)量與最大中斷速率Imax間的關系,調整通信外設的動態(tài)中斷閾值Th以及計時器初始值CT,以使得通信外設產生最低的中斷延遲。流量監(jiān)控單元對預測數(shù)據(jù)包數(shù)量與最大中斷速率Imax之間的比較具體為當當P*1000 < Imax時,流量監(jiān)控單元設定動態(tài)中斷閾值Th為I個,計時器初始值CtS 1000 ;當 P*1000 > Imax且(P*1000/Imax) > Imax時,流量監(jiān)控單元設定動態(tài)閾值Th為Tmax個,計時器初始值 Ct 為 Ct = O. 5*Tmax/P ;當 P*1000 > Imax 且(P*1000/Imax) < Imax 時,流量監(jiān)控單元設定動態(tài)中斷閾值Th為Th = P*1000/Imax個,計時器初始值Ct為Ct = Th/P ;計時器初始值Ct的單位,取決于通信外設的規(guī)定。如圖4所示根據(jù)移動處理器與通信外設的處理能力與中斷處理要求,本實用新型實施例中,將流量監(jiān)控單元設定最大中斷速率Imax為3000個/秒,最大中斷閾值Tmax為64個,中斷調控周期Tm為1ms,通信外設的數(shù)據(jù)包字節(jié)數(shù)為2kB。如圖中所示,在A時間段,通信外設接收25Mbps的數(shù)據(jù)包,達到穩(wěn)定過程后,通過下述計算過程能夠得到數(shù)據(jù)包數(shù)量P,具體為25*1000000/8 = 3125000 Bytes/sec,數(shù)據(jù)包字節(jié)數(shù)是2KB ;3125000/2000 = 1562. 5個/秒=I. 56個/毫秒。我們假設這是個穩(wěn)態(tài),所以Pt= I. 56,ΡΤ_1 = I. 56,既2次的調控周期內,讀到的數(shù)據(jù)包流速相同。把這2個值代入到流量預測公式P = (ι-w) *PT+W*PT_1;0 < W < I,不管加權系數(shù)取什么值,最后預測的P=I. 56,這是正確的預測。根據(jù)圖3的比較流程能夠得到動態(tài)中斷閥值Th為1,計時器初始值CtS I秒(此時,計時器對通信外設的中斷不起作用,因為閥值為I)。此模式為低速模式,通信外設對中斷響應延遲要求高,所以Th設為1,即每收到一個數(shù)據(jù)包即發(fā)生中斷請求。此時段,設備每秒會產生1560個中斷請求。假設通信狀況發(fā)生變化,在B時間段,系統(tǒng)接收250Mbps的數(shù)據(jù),通過預測計算過程能夠得到數(shù)據(jù)包數(shù)量P為15. 6數(shù)據(jù)包/毫秒,由流量監(jiān)控單元測得數(shù)據(jù)包流量,然后根據(jù)圖3的比較與計算能夠得到動態(tài)中斷閥值Th為6,既每6個數(shù)據(jù)包產生一個中斷,計時器初始值Ct為3. 84毫秒,此時,通信外設每秒產生2600個中斷請求,只不過每個中斷處理中要讀取6個數(shù)據(jù)包。此模式為高速模式,系統(tǒng)對中斷響應延遲要求降低,但需要一次性處理多個數(shù)據(jù)包(即包的組合)以節(jié)省冗余的中斷處理時鐘浪費。在C時間段,假設通信速率下降,那么同理,計算結果又回到和A時間段相同的數(shù)值。從實例中看,從A到B,通信速度提高了 10倍,但每秒產生的中斷數(shù)量,只增加了90% ;而且,在低速情況下,通信外設自動回到傳統(tǒng)的每個數(shù)據(jù)包發(fā)生一次中斷的模式,保證最低的中斷延遲。本實用新型通信外設與流量監(jiān)控單元相連,流量監(jiān)控單元內預設中斷調控周期Tm、最大中斷閾值Tmax以及最大中斷速率Imax,流量監(jiān)控單元根據(jù)當前中斷調控周期Tm內接收的平均數(shù)據(jù)包數(shù)量,并預測通信外設下一個中斷調控周期Tm內接收的數(shù)據(jù)包數(shù)量P,并將預測的數(shù)據(jù)包數(shù)量P與最大中斷速率Imax進行比較判斷,以調整動態(tài)中斷閾值Th以及計時器初始值CT,;無須事先對通信模式進行最壞狀況分析而決定參數(shù),保證系統(tǒng)在高速通信模式下,對數(shù)據(jù)包進行組合有效的控制中斷數(shù)量,保證系統(tǒng)在低速通信模式下,有最小的中斷響應延遲;結構緊湊,提高移動應用處理器的處理性能。
權利要求1.一種移動應用處理器的自適應中斷調控裝置,其特征是包括通信外設及與所述通信外設相連的移動處理器,所述通信外設還與流量監(jiān)控單元相連。
2.根據(jù)權利要求I所示的移動應用處理器的自適應中斷調控裝置,其特征是所述通信外設包括WiFi、3G/4G調制解調器、藍牙、GPS或觸摸屏控制器。
3.根據(jù)權利要求I所示的移動應用處理器的自適應中斷調控裝置,其特征是所述移動處理器包括單片機、ARM或DSP。
專利摘要本實用新型涉及一種移動應用處理器的自適應中斷調控裝置,其包括通信外設及與所述通信外設相連的移動處理器,所述通信外設還與流量監(jiān)控單元相連;所述流量監(jiān)控單元在中斷調控周期Tm內統(tǒng)計外設的數(shù)據(jù)包數(shù)量,并預測通信外設的下一中斷調控周期Tm內接收的數(shù)據(jù)包數(shù)量;流量監(jiān)控單元將預測數(shù)據(jù)包數(shù)量與預設的最大中斷速率Imax比較,以調整通信外設的動態(tài)中斷閾值Th以及計時器初始值CT,以使得通信外設產生最低的中斷延遲。本實用新型結構緊湊,有效控制中斷數(shù)量,提高移動應用處理器的處理性能。
文檔編號G06F9/48GK202677378SQ201220119458
公開日2013年1月16日 申請日期2012年3月27日 優(yōu)先權日2012年3月27日
發(fā)明者孫雷 申請人:無錫里外半導體科技有限公司