- 多媒體中視頻應用的編碼特征
- 多媒體中視頻應用的負載特性分析
- SOC系統(tǒng)增加了一個功率控制模塊(PCM)
- 采用反饋機制來控制功率
在SOC設計中,設計者大量重用現(xiàn)有經(jīng)過驗證的成熟IP核,對于設計一個復雜系統(tǒng)并保證其上市時間的意義重大。當前,很多專業(yè)的IP供應商提供了大量可供設計者選用的IP核,設計者們需要根據(jù)應用需求,選出合適的IP核,并確定每種IP核對應的配置。對于移動多媒體SOC的設計,為了實現(xiàn)系統(tǒng)級的優(yōu)化,SOC系統(tǒng)設計者的核心目標之一即是在保證多媒體服務質量的同時使得系統(tǒng)代價(芯片面積和功耗)最小化。
本文對多媒體中視頻應用的編碼特征以及負載特性進行分析,從系統(tǒng)設計及優(yōu)化的層次,將功率管理模塊嵌入至多媒體SOC系統(tǒng)中。同時,將系統(tǒng)的運行狀態(tài)按不同的IP配置情況組合成一系列微狀態(tài),在前人所做工作的基礎上,利用F-ARIMA模型預測負載,同時利用多媒體應用中衡量服務質量的重要指標——最后期限缺失率(deadlinemissrate,DMR)作為反饋控制信息,兩者相結合的方式,實時調整多媒體SOC系統(tǒng)的運行狀態(tài),實現(xiàn)移動多媒體SOC設計過程中的功耗優(yōu)化。
常用視頻編碼標準以及負載分析
在所有的視頻壓縮算法中,MPEG-x和H.26y標準正逐漸占據(jù)主導地位。這些視頻壓縮算法,帶來更高傳輸效率的同時,也帶來了終端更大的運算量。根據(jù)多媒體應用的特征及其編碼標準,不難發(fā)現(xiàn),并非所有多媒體視頻幀所需要的解碼時間都是一致的。以MPEG標準壓縮的幀為例,其總共由三種類型的幀構成,分別為:內部幀(intra),雙向幀(bidirectional)和可預測幀(predictive)。這三種不同類型的幀,具有不同的解碼復雜度。即使是同一種類型的幀內部,其解碼復雜度也有較大差異。顯而易見,將所有的解碼任務的實時性約束都設置為同一個標準將會導致系統(tǒng)始終工作于最差分支下,從而付出不必要的功耗開銷。
目前,在多媒體SOC設計過程中,針對其重要的視頻應用的負載特性進行功耗優(yōu)化是一個非常熱點的研究問題。常見的低功耗設計技巧主要有動態(tài)電壓調整(dynamicvoltagescale,DVS)和動態(tài)功率管理(dynamicpowermanagement,DPM)技術。在DVS技術中,在保證服務質量的同時,讓不同計算量的任務運行在不同的工作電壓和頻率;而DPM技術則在運行過程中,動態(tài)關閉系統(tǒng)某些空閑模塊。在眾多針對多媒體應用進行低功耗設計的研究中,其主要思路可分為兩類。一種是將多媒體應用的負載當作一個隨機過程,然后采用馬爾可夫或者半馬爾可夫模型預測負載,再根據(jù)預測結果調整當前系統(tǒng)運行狀態(tài)。如在文中,提出了一種基于回歸方程的方式,通過系統(tǒng)當前“工作”和“空閑”時間預測即將到來的“工作”和“空閑”時間。分別利用離散馬爾可夫時間序列和連續(xù)馬爾可夫序列算法預測系統(tǒng)負載。以上這些方式都有效地降低了系統(tǒng)功耗開銷,但是其最大不足之處在于多媒體應用的編碼方式和內容多種多樣,無法找到一種合適的模型來適應所有多媒體應用。另外一方面,也有研究利用實時反饋控制的方式,來調整當前系統(tǒng)運行狀態(tài)的方式來降低多媒體系統(tǒng)的功耗。
目前,使用最廣泛的視頻壓縮標準為MPEG-x(x=1,2,4)系列和H.26y,(y=1,2,3,4)系列。一般地,視頻編碼器將連續(xù)的圖像壓縮成I,B,P三種不同的幀類型。I幀的壓縮率大于P幀,P幀的壓縮率大于B幀。連續(xù)的兩個I幀之間的所有幀(不包括后一個I幀)構成一個圖像分組(GOP)。一個GOP由I幀幀間間隔N,以及P幀幀間間隔M兩個參數(shù)決定。與此對應,對于解碼器的解碼負載而言則有I>P>B這個規(guī)律。
即便采用同一種編碼格式,面向不同的應用場景,多媒體應用的負載情況也有很大區(qū)別,下面以H.264.視頻壓縮標準為例,給出一些常見格式的視頻應用的負載情況,見表1。
[page]
根據(jù)表1的實驗結果,圖l將更形象地描述解碼器的工作過程。從圖1中可以看出,解碼器僅有兩種狀態(tài),即高速工作狀態(tài)和空閑狀態(tài)。由于解碼器運行狀態(tài)下的能量消耗計算方式為
式中:T為工作時間;C是與系統(tǒng)負載電容相關的系數(shù);Vdd和f分別為供電電壓和運行頻率。對于同樣的負載,根據(jù)式(1),很容易推導出,當負載均勻分布于時間間隔T內時,能量效率是最優(yōu)的。所以,對于面向多媒體應用的SOC低功耗系統(tǒng)級優(yōu)化而言,其主要思想就是如何根據(jù)具體應用的需要,在當前可用的IP及其配置中,尋求一套最優(yōu)化的組合,使得系統(tǒng)負載能均勻分布在給定的時間約束內。圖2給出的則是設計者進行系統(tǒng)級功耗優(yōu)化的理想狀態(tài),雖然在實際應用中該狀態(tài)永遠無法達到,但是可以在設計過程中無限逼近這一狀態(tài)。
2系統(tǒng)實現(xiàn)
在多媒體SOC中,為了保證服務質量,系統(tǒng)的設計目標必須是面向最高負載情況。然而在實際運行過程中,視頻解碼器、中央處理器以及一些外設經(jīng)常處于不活動或者低負載狀態(tài),這無疑白白消耗了一些能量。為解決該問題,EDA公司對Multi-Vt以及Muhi-Vdd等低功耗設計技術提供更有力的支持,IP供應商對同一IP核也提供了豐富配置以滿足不同應用需求,同時Foundry也提供了更豐富的標準單元庫以及工藝。在進行低功耗多媒體SOC設計的過程中,設計者所要做的就是充分利用這些技術優(yōu)勢,盡可能地去開發(fā)可利用的低功耗設計空間。
圖3給出了一個多媒體SOC目標系統(tǒng)的基本架構圖,該系統(tǒng)和當前多媒體SOC系統(tǒng)最大的差異在于增加了一個功率控制模塊(PCM)。該模塊的實現(xiàn)方式可以靈活多樣,對于某些對實時性要求較高的功能塊(如負載預測),可以采用硬件加速的方式實現(xiàn)。而對于實時性要求不高的功能塊,則可以利用中央處理器的軟件資源來實現(xiàn)。在設計過程中,先將構成系統(tǒng)的各個IP核按其配置和對應的性能,同時結合多媒體SOC的應用需求,組合成一系列的微狀態(tài),然后將這些狀態(tài)構成一個查找表,存儲于功率控制模塊。
系統(tǒng)在運行過程中,控制模塊會根據(jù)當前負載情況,實時調整整個系統(tǒng)的運行狀態(tài),通過配置寄存器的方式,讓系統(tǒng)在各個不同微狀態(tài)之間切換,從而盡量使負載能均勻分布于整個運行過程中,達到降低功耗的目的。在功率控制模塊的核心算法中,本文采用了反饋控制和負載預測相結合的方式,以此來彌補彼此的不足之處。對于負載預測而言,預測模型的準確性直接關系到多媒體的服務質量。研究表明,多媒體視頻幀長的統(tǒng)計特征表現(xiàn)出了很強的長相關性(longtermdependency,IRD),而多媒體SOC的系統(tǒng)負載又和幀長有著直接關系,所以在功率控制模塊中,采用F-ARIMA模型來進行負載預測。該模型是一種典型的自相似模型,能很好地反映時間序列的LRD特性,從而能比較準確地進行多媒體視頻應用的負載預測。
而對于反饋控制機制,本文采用了跟視頻服務質量密切相關的最后期限缺失率(DMR)作為反饋標準。具體方法是:首先系統(tǒng)運行于缺省狀態(tài),通常是性能相應功耗都最高的狀態(tài)。然后系統(tǒng)根據(jù)性能檢測模塊,并從預測模型庫中選擇預測模型對負載進行預測,然后根據(jù)預測結果實時調整當前系統(tǒng)的微狀態(tài)。當系統(tǒng)性能檢測模塊監(jiān)測到DMR高于某一預先設定的門限,則系統(tǒng)反饋控制模塊負責調整預測模型的參數(shù)或者徹底更新預測模型,直至DMR值低于預先設定的門限值。
本文針對移動多媒體SOC設計中的功耗問題,提出了一種系統(tǒng)級低功耗設計方法。該方法的核心是利用各種IP所提供的配置空間,將多媒體SOC系統(tǒng)細分為不同的微狀態(tài)。同時結合傳統(tǒng)的DVS以及DPM思想,利用反饋控制和負載預測相結合的方式,實時調整系統(tǒng)運行過程中的微狀態(tài),從而在保證多媒體服務質量的基礎上,讓系統(tǒng)負載盡可能均勻分布于整個運行期間,達到降低功耗的目的。通過系統(tǒng)級的仿真和評估,該算法相對傳統(tǒng)方法而言,進一步有效地降低了系統(tǒng)功耗,平均約能降低40%左右。同時,由于該方法采用了與服務質量直接相關的DMR作為反饋控制信號,故在降低功耗的同時,能保證多媒體視頻DMR在9%以下,均值在5%以下。