專利名稱:一種視頻解碼裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字視頻信號(hào)處理領(lǐng)域,尤其涉及一種視頻解碼裝置和方法。
背景技術(shù):
隨著通信產(chǎn)業(yè)的不斷發(fā)展,終端已經(jīng)由原來單一的通話功能的手機(jī)等, 逐漸向話音、數(shù)據(jù)、圖像、音樂和多媒體方向綜合演變,具體包括智能手機(jī)、
PDA等。
然而,作為大多數(shù)終端尤其是移動(dòng)型終端,完全依靠電池來供電,隨著 移動(dòng)設(shè)備的功能越來越強(qiáng)大,其功率損耗也越來越大。因此,必須提高終端
設(shè)備的使用時(shí)間和待機(jī)時(shí)間。對(duì)于這個(gè)問題,目前有兩種解決方案 一種是 配備更大容量的電池;但是增大電池容量總的趨勢(shì)上將會(huì)增加整個(gè)設(shè)備的成 本。另一種是改進(jìn)系統(tǒng)設(shè)計(jì),采用先進(jìn)技術(shù),降低移動(dòng)設(shè)備的功率損耗。
因此,從移動(dòng)設(shè)備的總體設(shè)計(jì)入手,應(yīng)用先進(jìn)的技術(shù)和器件,進(jìn)行降低 功率損耗的方案設(shè)計(jì),從而盡可能延長移動(dòng)設(shè)備的使用時(shí)間。事實(shí)上,低功 耗設(shè)計(jì)已經(jīng)成為移動(dòng)設(shè)備設(shè)計(jì)中一個(gè)越來越迫切的問題。
解碼器作為移動(dòng)設(shè)備的視頻處理系統(tǒng)的關(guān)鍵部分,占用系統(tǒng)中較多資源, 消耗終端大量的功率,所以如何降低解碼器的功耗,對(duì)于延長終端的電池使 用壽命具有至關(guān)重要的作用。
解碼器功耗的降低,目前也有很多實(shí)現(xiàn)方法, 一般集中在對(duì)解碼器的算 法復(fù)雜度的降低或者對(duì)部分模塊的簡(jiǎn)化?,F(xiàn)有技術(shù)主要針對(duì)解碼器算法復(fù)雜 度的降低進(jìn)行研究,而較少的考慮了視頻解碼器內(nèi)部各模塊與功耗控制的內(nèi) 在聯(lián)系。對(duì)于降低視頻解碼器的功耗大多采用降低解碼復(fù)雜度的方法,雖然 在一定程度上可以降低了解碼器的功耗,但很多都在降低復(fù)雜度的同時(shí),降 低性能,難以保證視頻重建質(zhì)量。
經(jīng)過研究,CMOS電路的能量消耗可以由下式近似估計(jì)
尸=#2.知.0^ (1)其中「為電路的供電電壓; /^為時(shí)鐘頻率;
為電路的有效切換電容; "為活動(dòng)因子,通常為0.5。
由上式可以看出,CMOS電路的能量消耗?與電路電壓V的平方成正 比,和頻率/c"成正比,因此降低電壓以及時(shí)鐘頻率是降低線路能耗的最有
效的方法之一。而且降低電壓和頻率對(duì)降低功耗可以起到事半功倍的作用。
發(fā)明內(nèi)容
為了解決上述的技術(shù)問題,提供了 一種多任務(wù)并行的視頻解碼器裝置, 其目的在于通過對(duì)解碼器進(jìn)行多任務(wù)并行處理,并且對(duì)每個(gè)任務(wù)以及功能模 塊進(jìn)行動(dòng)態(tài)頻率調(diào)整,可以滿足系統(tǒng)性能的前提下,極大地降低功耗。
本發(fā)明提供了一種視頻解碼裝置,包括設(shè)備資源感知單元,頻率控制 單元,以及多任務(wù)解碼器;
設(shè)備資源感知單元,用于確定當(dāng)前可用功率;
頻率控制單元,用于依據(jù)設(shè)備資源感知單元確定的當(dāng)前可用功率為各任 務(wù)指配工作頻率;
多任務(wù)解碼器,用于將視頻碼流分為多個(gè)任務(wù),并依據(jù)頻率控制單元為 各任務(wù)所指配的工作頻率解碼各任務(wù)。
還包括重建視頻存儲(chǔ)區(qū),用于接收多任務(wù)解碼器的輸出,并在視頻碼流 中當(dāng)前幀的各任務(wù)解碼完成之后,根據(jù)各任務(wù)的順序重新排序后將視頻流輸 出。
設(shè)備資源感知單元,還用于感知設(shè)備的工作狀態(tài)。 多任務(wù)解碼器包括解碼器多任務(wù)劃分單元和多個(gè)解碼任務(wù)單元; 解碼器多任務(wù)劃分單元,用于將視頻碼流劃分為多個(gè)解碼片; 解碼任務(wù)單元,用于對(duì)各解碼片進(jìn)行解碼。
解碼任務(wù)單元包括熵解碼控制單元,反變換反量化單元,幀間預(yù)測(cè)單 元,幀內(nèi)預(yù)測(cè)單元,以及去方塊濾波單元。
頻率控制單元依據(jù)下式確定各解碼片的工作頻率<formula>formula see original document page 7</formula>其中V為電路的供電電壓,fcLK為第i個(gè)解碼片的工作頻率,CEFF為電
路的有效切換電容,P為當(dāng)前可用功率,n為解碼片的總數(shù),Pi為第i個(gè)解碼 片所分配的功率,mi為第i個(gè)解碼片包含的宏塊數(shù)量,i、 j為自然數(shù),Ki 《n, Kj《n, fl為活動(dòng)因子。
第i個(gè)解碼任務(wù)單元中熵解碼控制單元的工作頻率為^ *fCLK,反變換 反量化單元的工作頻率為 幀間預(yù)測(cè)單元的工作頻率 5 fcLK, 幀內(nèi)
預(yù)測(cè)單元的工作頻率為^ 'fcuc,去方塊濾波單元單元的工作頻率為^ 'fcLK;
其中v r2, t3,、和^為熵解碼控制單元、反變換反量化單元、幀間預(yù)
測(cè)單元、幀內(nèi)預(yù)測(cè)單元和去方塊濾波單元的處理時(shí)間相對(duì)于熵解碼控制單元、 或反變換反量化單元、或幀間預(yù)測(cè)單元、或幀內(nèi)預(yù)測(cè)單元或去方塊濾波單元
的處理時(shí)間的比值;第i個(gè)解碼任務(wù)單元是解碼第i個(gè)解碼片的解碼任務(wù)單
元o
關(guān)于對(duì)、'fcxK的約定在計(jì)算的過程中,如裝置(包含終端或芯片) 能提供的工作頻率任意可調(diào),則^ 'fcLK直接為計(jì)算的結(jié)果;另一方面考慮
到對(duì)于一部分裝置(包含終端或芯片),能提供的工作頻率的可調(diào)范圍不一定
是連續(xù)變化,例如提供可用工作頻率為[f!,f2,f3,f4,f5,f6,f7,f8]或陸......]等,
那么對(duì)于、'fcLK的取值,為該裝置能提供的可調(diào)工作頻率范圍內(nèi),最接近 、'fcXK的頻率值。
本發(fā)明提供了一種視頻解碼方法,包括
步驟l,確定當(dāng)前可用功率;
步驟2,將視頻碼流分為多個(gè)任務(wù),依據(jù)當(dāng)前可用功率為各任務(wù)指配工
作頻率;
步驟3,依據(jù)為各任務(wù)所指配的工作頻率解碼各任務(wù)。
還包括步驟4,重建視頻存儲(chǔ)區(qū)接收多任務(wù)解碼器的輸出,并在視頻碼
流中當(dāng)前幀的各任務(wù)解碼完成之后,根據(jù)各任務(wù)的順序重新排序后將視頻流輸出。
步驟1中,還包括感知設(shè)備的工作狀態(tài)。步驟2包括
步驟21,將視頻碼流劃分為多個(gè)解碼片;附.
步驟22,依據(jù)公式《=^P得到Pi;
步驟23,依據(jù)公式《="r2 ./m.cw得到fCLK;
其中V為電路的供電電壓,fcxK為第i個(gè)解碼片的工作頻率,CEFF為電
路的有效切換電容,P為當(dāng)前可用功率,n為解碼片的總數(shù),Pi為第i個(gè)解碼 片所分配的功率,m,為第i個(gè)解碼片包含的宏塊數(shù)量,i、 j為自然數(shù),1《i 《n, Kj《n。
步驟3中,依據(jù)為各任務(wù)所指配的工作頻率解碼各任務(wù)。
解碼任務(wù)單元包括熵解碼控制單元,反變換反量化單元,幀間預(yù)測(cè)單 元,幀內(nèi)預(yù)測(cè)單元,以及去方塊濾波單元。
步驟2中在第i個(gè)解碼任務(wù)單元中將熵解碼控制單元的工作頻率指 定為r,fox,將反變換反量化單元的工作頻率指定為^ 'fcLK,將幀間預(yù)測(cè) 單元的工作頻率指定為 ^ *fcLK, 將幀內(nèi)預(yù)測(cè)單元的工作頻率指定為
去方塊濾波單元單元的工作頻率為^ 'fmr,其中V r2, r3, ^和^為熵 解碼控制單元、反變換反量化單元、幀間預(yù)測(cè)單元、幀內(nèi)預(yù)測(cè)單元和去方塊 濾波單元的處理時(shí)間相對(duì)于熵解碼控制單元、或反變換反量化單元、或幀間 預(yù)測(cè)單元、或幀內(nèi)預(yù)測(cè)單元或去方塊濾波單元的處理時(shí)間的比值;第i個(gè)解 碼任務(wù)單元是解碼第i個(gè)解碼片的解碼任務(wù)單元。
本發(fā)明對(duì)視頻解碼器技術(shù)進(jìn)行多任務(wù)劃分,以獲得合理的多任務(wù)操作, 并且對(duì)各個(gè)任務(wù)適當(dāng)?shù)念l率控制,以達(dá)到在保證解碼總體性能的情況下,最 大化的降低解碼器的功耗。本發(fā)明提供一種變頻多任務(wù)視頻解碼來實(shí)現(xiàn)低功 耗視頻解碼的方法,針對(duì)每個(gè)任務(wù)的處理時(shí)間不同,對(duì)每個(gè)任務(wù)進(jìn)行動(dòng)態(tài)頻 率調(diào)節(jié),減小整個(gè)系統(tǒng)的空閑時(shí)間,能夠很大程度上降低功耗,而且不影響 整個(gè)視頻的解碼時(shí)間。響應(yīng)系統(tǒng)資源需求,根據(jù)不同資源等級(jí),實(shí)現(xiàn)可分級(jí) 的解碼器輸出功率控制方法,根據(jù)各個(gè)模塊的處理時(shí)間不同,從宏塊級(jí)對(duì)多 個(gè)功能模塊進(jìn)行頻率調(diào)節(jié),以獲得在某一功率模式下較低的功耗,同時(shí)使得 解碼器在該功耗下獲得最快的解碼速度。也就是解碼器具有功耗可擴(kuò)展的輸 出模式,也即每一種輸出模式下解碼器所消耗的功率不一樣,用戶可以選擇
8不同的輸出模式。
圖1是公知視頻解碼器結(jié)構(gòu)圖2是根據(jù)本發(fā)明多任務(wù)視頻解碼方法流程圖3是根據(jù)本發(fā)明實(shí)施例的功率可擴(kuò)展的視頻解碼裝置結(jié)構(gòu)圖4是根據(jù)本發(fā)明實(shí)施例的各個(gè)功能模塊單元流水線劃分圖。
具體實(shí)施例方式
本發(fā)明主要是提供一種視頻解碼裝置和方法,其能夠很大程度上降低功 耗,而且不影響整個(gè)視頻的解碼質(zhì)量。
本發(fā)明提供的視頻解碼裝置,包括設(shè)備資源感知單元,頻率控制單元, 以及多任務(wù)解碼器;
設(shè)備資源感知單元,用于確定當(dāng)前可用功率。具體用于確定設(shè)備當(dāng)前可
用功率。設(shè)備指支持電池供電的某種具體終端,可以為PDA、智能手機(jī)、嵌 入式實(shí)時(shí)設(shè)備等。設(shè)備上運(yùn)行視頻解碼程序,可支持多種視頻格式解碼,包 括QCIF、 CIF、 QVGA、 VGA、 Dl等,視頻解壓縮標(biāo)準(zhǔn)可采用H.264、 MPEG4、 MPEG2、 AVS等。
頻率控制單元,用于依據(jù)設(shè)備資源感知單元確定的當(dāng)前可用功率為各任 務(wù)指配工作頻率。具體依據(jù)設(shè)備資源感知單元確定的當(dāng)前可用功率,采用動(dòng) 態(tài)頻率調(diào)節(jié)方法,為各任務(wù)指配工作頻率,調(diào)節(jié)多任務(wù)解碼器的處理速度。
多任務(wù)解碼器,用于將視頻碼流分為多個(gè)任務(wù),并依據(jù)頻率控制單元為 各任務(wù)所指配的工作頻率解碼各任務(wù)。
其中頻率控制單元可以設(shè)置在多任務(wù)解碼器之內(nèi),也可以設(shè)置在多任務(wù) 解碼器之外。
多任務(wù)解碼器包括解碼器多任務(wù)劃分單元,用于將視頻解碼器劃分為多 個(gè)任務(wù),并將每個(gè)任務(wù)分配不同的工作頻率任務(wù)隊(duì)列中;
多任務(wù)解碼器,包括多個(gè)任務(wù)劃分,具體包含熵解碼任務(wù)模塊,反離
散余弦變換(IDCT)任務(wù)模塊、去方塊濾波任務(wù)模塊、Intra (幀內(nèi))預(yù)測(cè)任 務(wù)模塊和Inter (幀間)預(yù)測(cè)任務(wù)模塊等模塊組成。本發(fā)明的另一方面也提供了一種功率可分級(jí)視頻解碼裝置,包括
1) 設(shè)備資源感知單元,用于確定當(dāng)前可用功率;
2) 設(shè)定解碼模塊的多任務(wù)劃分,并確定任務(wù)的工作頻率;實(shí)現(xiàn)低功耗解 碼器控制;
3) 所述各個(gè)功能模塊在所選的處理頻率下對(duì)視頻進(jìn)行處理,輸出視頻。 為了使本發(fā)明的技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,
對(duì)本發(fā)明的一種視頻解碼裝置和方法進(jìn)行進(jìn)一步詳細(xì)說明。
圖1是公知的視頻解碼器的結(jié)構(gòu)示意圖,視頻解碼器由熵解碼模塊100、 反離散余弦變換(IDCT)模塊102、去方塊濾波模塊104、 Intra (幀內(nèi))預(yù) 測(cè)模塊110和Inter (幀間)預(yù)測(cè)模塊112等模塊組成。壓縮后的比特流經(jīng)過 解碼模塊100得到量化后的一組變換系數(shù)^,再經(jīng)過反離散余弦變換模塊 102,得到殘差Dn' 。 Inter預(yù)測(cè)模塊112或Intra預(yù)測(cè)110根據(jù)熵解碼模塊100 解析視頻碼流得到的預(yù)測(cè)模式、運(yùn)動(dòng)矢量、參考幀等信息,從視頻幀緩存108 中取出相應(yīng)的參考圖像數(shù)據(jù)并生成一個(gè)預(yù)測(cè)塊,然后預(yù)測(cè)塊與殘差zv相加 后,得到未經(jīng)濾波的幀,為了去除噪聲,提高圖像質(zhì)量,再經(jīng)過去方塊濾波 104后得到最后的解碼輸出圖像。
圖1中所述各個(gè)模塊的復(fù)雜度不一樣,對(duì)于每個(gè)宏塊的處理時(shí)間也是不 相同的。所以,如何在功率限定的條件下,合理地選擇各個(gè)模塊的處理頻率, 使得保證視頻解碼速度的情況下,從而更大降低功耗對(duì)解碼器是至關(guān)重要的。 本發(fā)明綜合各個(gè)模塊對(duì)視頻質(zhì)量的影響和計(jì)算復(fù)雜度,進(jìn)行了動(dòng)態(tài)頻率分級(jí) 方法處理,得到了低功耗的視頻解碼方法。
如圖2所示,本發(fā)明的多任務(wù)視頻解碼裝置,包括具有多個(gè)任務(wù)232的 多任務(wù)視頻解碼器23,以及設(shè)備資源感知單元21,頻率控制單元22,其中
所述設(shè)備資源感知單元21,用于感知設(shè)備的工作狀態(tài),例如剩余電量和 用戶指定等;
具體設(shè)備資源感知單元21感知設(shè)備的工作狀態(tài)。其中工作狀態(tài)的確定可 以主要依據(jù)以下兩個(gè)方面 一是用戶指定,用戶可以根據(jù)自己的需要指定系 統(tǒng)工作在省電、普通、或者充足電量等模式下;二是目前設(shè)備的剩余電量, 即由剩余電量來確定系統(tǒng)的工作模式為省電、便攜、或者充足電量等模式 例如當(dāng)電量小于30%時(shí)可以定義為省電模式,處于30%~70%定義為普通
10模式,70%以上為充足電量模式。優(yōu)選的,當(dāng)設(shè)備電量不足而用戶指定的要
求又較高時(shí),以感知的設(shè)備電量為準(zhǔn)。
本發(fā)明對(duì)于多任務(wù)解碼器處理,首先將解碼器按功能模塊劃分為多個(gè)子
任務(wù),然后將每個(gè)任務(wù)分配到不同的任務(wù)單元232中進(jìn)行處理,每個(gè)任務(wù)單 元工作在由頻率控制單元22計(jì)算出的工作頻率。經(jīng)解碼器多任務(wù)劃分單元 231劃分后直接按每個(gè)任務(wù)進(jìn)行處理,減小在解碼過程中任務(wù)單元之間的調(diào) 度。頻率控制單元22具有多個(gè)輸出端,輸出端接至232任務(wù)1,…,n的輸入端。
視頻解碼的并行多任務(wù)處理可以從圖像組、片slice、宏塊MB、以及各 個(gè)處理模塊之間進(jìn)行協(xié)同操作。
一幀解碼數(shù)據(jù)可包含一個(gè)或多個(gè)解碼片,對(duì)于解碼片slice之間,由于解 碼片slice之間是可以相對(duì)獨(dú)立的,所以可以進(jìn)行并行解碼。
本發(fā)明包括,片級(jí)并行多任務(wù)解碼操作, 一幀解碼數(shù)據(jù)可按多個(gè)片slice 進(jìn)行解碼,每片slice包含多個(gè)宏塊MB, —幅圖像中每片slice的宏塊數(shù)不固 定。
所述多任務(wù)解碼器23,用于在利用多個(gè)任務(wù)模塊232,或多線程,對(duì)視 頻碼流進(jìn)行解碼處理的過程中,采用并行方式執(zhí)行圖像解碼;所述多核解碼 器23采用并行的方式對(duì)每個(gè)片執(zhí)行圖像解碼,對(duì)于一幀圖像,同時(shí)針對(duì)該幀 中的多個(gè)片slice進(jìn)行并行解碼。
本發(fā)明中,多任務(wù)解碼器23在這些模塊的處理流程中,采用并行方式執(zhí) 行。當(dāng)碼流經(jīng)過多任務(wù)解碼器23處理完后,輸出至相應(yīng)重建視頻存儲(chǔ)區(qū);待 完整幀解碼和處理完之后,再根據(jù)切片順序和宏塊順序重新排序然后輸出至 顯不設(shè)備。
由于一幀是由多個(gè)切片組成,解碼一幀,等效于解碼多個(gè)切片,對(duì)于解 碼多個(gè)切片,可認(rèn)為多個(gè)解碼任務(wù)。
將解碼器各個(gè)功能單元,依據(jù)其處理速度不同,視作不同的任務(wù)單元。 然后每個(gè)任務(wù)單元根據(jù)其處理速度重新調(diào)整處理頻率。例如,環(huán)路濾波單元, 占有解碼時(shí)間長,因此分配高頻率,反離散余弦變換單元,占用解碼時(shí)間短, 因此分配低頻率。
所述的多任務(wù)解碼器23,包括多個(gè)解碼任務(wù)單元232,每個(gè)解碼任務(wù)單
ii元232包含現(xiàn)有視頻解碼的全部處理模塊,包括圖1中的熵解碼模塊100、 反離散余弦變換(IDCT)模塊102、去方塊濾波模塊104、 Intra (幀內(nèi))預(yù) 測(cè)模塊110和Inter (幀間)預(yù)測(cè)模塊112等模塊。
如圖3所示,詳述本發(fā)明的多個(gè)解碼任務(wù)單元(圖2) 232。包括頻率 控制單元300,熵解碼控制單元302,反變換反量化單元303, Intra預(yù)測(cè)單元 304, Inter預(yù)測(cè)單元305,去方塊濾波單元306。
對(duì)于解碼的各個(gè)任務(wù)單元,由于每個(gè)模塊對(duì)宏塊的處理具有相關(guān)性,所 以對(duì)每個(gè)宏塊的處理可采用各個(gè)模塊并行流水的方法。而對(duì)流水線的劃分可 以根據(jù)需求以及成本來具體劃分。
由于這些流水處理單元每個(gè)的執(zhí)行時(shí)間是不同的,有的花費(fèi)較長時(shí)間, 有的需要很少的時(shí)間,當(dāng)前一個(gè)宏塊處理完后,而后一個(gè)宏塊的處理單元由 于執(zhí)行時(shí)間較慢,使得前一個(gè)處理單元處于暫時(shí)空閑狀態(tài),這樣比較浪費(fèi)資 源,所以本發(fā)明采用動(dòng)態(tài)頻率調(diào)節(jié)每個(gè)處理單元的執(zhí)行頻率,使得每個(gè)處理 單元都同時(shí)完成對(duì)宏塊的處理。
本發(fā)明提供了的動(dòng)態(tài)頻率調(diào)節(jié)方法
第一歩感知設(shè)備的可用功率,由此來調(diào)整解碼器的最高處理頻率。設(shè)備 資源感知單元21感知到當(dāng)前設(shè)備的可用功率P后,對(duì)多任務(wù)視頻解碼器23 里包含的每個(gè)任務(wù)232分配其合適的功率,因?yàn)槊總€(gè)slice包含的宏塊數(shù)量不 一樣,可以宏塊數(shù)量作為分配的依據(jù)。包含宏塊數(shù)量多的分配較多的功率, 宏塊數(shù)量少的分配較少的功率。也就是當(dāng)前有n個(gè)任務(wù),每個(gè)任務(wù)包含的
附Z D
宏塊數(shù)量定義為mpm2,......,nv則每個(gè)任務(wù)分配的功率為《=^--p,
其中P,為第i個(gè)任務(wù)所分配的功率,mi為第i個(gè)任務(wù)包含的宏塊數(shù)量。
第二步對(duì)于每個(gè)宏塊以最大處理頻率為基準(zhǔn),來調(diào)節(jié)各個(gè)處理模塊的時(shí)
鐘頻率。最大處理頻率的獲得根據(jù)上面的步驟,可以獲得每個(gè)任務(wù)的可用 功率P,,那么由(1)式可以進(jìn)一歩獲得每個(gè)任務(wù)的最大處理頻率f^max。
作為一種可實(shí)施方式,由于各個(gè)模塊采用不同的算法,會(huì)有不同的處理 時(shí)間,在并行流水線上影響速度的瓶頸在于最慢的那個(gè)模塊以及任務(wù),因此, 較佳地,對(duì)并行流水線上處理速度最慢的模塊,將其的處理頻率分配為最高處理頻率,然后以其作為基準(zhǔn)來調(diào)整其它模塊的時(shí)鐘頻率。
根據(jù)對(duì)各個(gè)模塊在不同平臺(tái)上運(yùn)行時(shí)間的試驗(yàn)統(tǒng)計(jì),可以獲得每個(gè)宏塊 在不同平臺(tái)下時(shí)流水線上的各個(gè)模塊的處理時(shí)間比值,取運(yùn)行時(shí)間最長的模 塊,將該模塊定為參考頻率,其它模塊運(yùn)行時(shí)間跟該模塊運(yùn)行時(shí)間的比值, 記為r,.,作為計(jì)算依據(jù)。例如圖4為例,將解碼器劃分為4級(jí)流水,分別
為熵解碼、反變換、Inter預(yù)測(cè)(Intra預(yù)測(cè))以及濾波。通常情況下,解碼 器各模塊中,環(huán)路濾波模塊運(yùn)行時(shí)間最長,則參考頻率的計(jì)算,可以環(huán)路濾 波模塊為對(duì)比依據(jù)。另一方面,若通過一些技術(shù),加速了環(huán)路濾波模塊,使 得其它模塊,如熵解碼模塊變?yōu)樽詈臅r(shí)模塊,則熵解碼模塊為計(jì)算依據(jù)。
根據(jù)試驗(yàn)統(tǒng)計(jì)各級(jí)流水在一平臺(tái)下(如DSP,但不局限于DSP平臺(tái))的 處理時(shí)間比值為v r2, r3, r4,分別表示熵解碼,反變換、Inter預(yù)測(cè)、Intra 預(yù)測(cè)模塊相對(duì)于濾波模塊的運(yùn)行時(shí)間比值。則將濾波的處理頻率定為最高的
處理頻率,定義為fmax,則根據(jù)該頻率可以調(diào)節(jié)其它模塊的處理頻率,如
熵解碼的頻率則為 fmax,反變換的處理頻率為fldct=r2 fmax, Inter 預(yù)測(cè)的處理頻率為fmc=r3'fmax, Intra預(yù)測(cè)的處理頻率為fip=r4'fmax。
關(guān)于對(duì)fmaX和^ 'fmax的約定在計(jì)算的過程中,如裝置(包含終端或 芯片)能提供的工作頻率任意可調(diào),則fmax和^ 'fmax直接為計(jì)算的結(jié)果;
另一方面,考慮到對(duì)于一部分裝置(包含終端或芯片),能提供的工作頻率的
可調(diào)范圍不一定是連續(xù)變化,例如提供可用工作頻率為[&,f2,f3,f4,f5,f6,f7,f8]或 [f1;f2,......]等,那么對(duì)于f,x和^ 'fn^的取值,為該裝置能提供的可調(diào)工作
頻率范圍內(nèi),最接近fmax和^ 'fn^的頻率值。
這樣,就可以通過感知獲得設(shè)備的可用功率后,動(dòng)態(tài)地調(diào)整每個(gè)宏塊的 各個(gè)模塊的處理頻率,這樣可以保證每個(gè)模塊的處理時(shí)間是基本相同的,這 樣,流水線可以順利進(jìn)行,流水線上不需要等待,可以很好地銜接起來。同 時(shí),確保整個(gè)設(shè)備的最高運(yùn)行頻率為fmax,而在保證不降低解碼速度的情況 下,動(dòng)態(tài)調(diào)節(jié)各個(gè)模塊的處理頻率,可以避免流水線上有些模塊運(yùn)行過快, 而需要等待其它較慢的模塊,這樣能夠極大地降低功耗。
本領(lǐng)域的技術(shù)人員在不脫離權(quán)利要求書確定的本發(fā)明的精神和范圍的條 件下,還可以對(duì)以上內(nèi)容進(jìn)行各種各樣的修改。因此本發(fā)明的范圍并不僅限 于以上的說明,而是由權(quán)利要求書的范圍來確定的。
權(quán)利要求
1. 一種視頻解碼裝置,其特征在于,包括設(shè)備資源感知單元,頻率控制單元,以及多任務(wù)解碼器;設(shè)備資源感知單元,用于確定當(dāng)前可用功率;頻率控制單元,用于依據(jù)設(shè)備資源感知單元確定的當(dāng)前可用功率為各任務(wù)指配工作頻率;多任務(wù)解碼器,用于將視頻碼流分為多個(gè)任務(wù),并依據(jù)頻率控制單元為各任務(wù)所指配的工作頻率解碼各任務(wù)。
2. 如權(quán)利要求1所述的視頻解碼裝置,其特征在于,還包括重建視頻存儲(chǔ)區(qū),用于接收多任務(wù)解碼器的輸出,并在視頻碼流中當(dāng)前幀的各任務(wù)解碼完成之后,根據(jù)各任務(wù)的順序重新排序后將視頻流輸出。
3. 如權(quán)利要求1所述的視頻解碼裝置,其特征在于,設(shè)備資源感知單元,還用于感知設(shè)備的工作狀態(tài)。
4. 如權(quán)利要求1所述的視頻解碼裝置,其特征在于,多任務(wù)解碼器包括解碼器多任務(wù)劃分單元和多個(gè)解碼任務(wù)單元;解碼器多任務(wù)劃分單元,用于將視頻碼流劃分為多個(gè)解碼片;解碼任務(wù)單元,用于對(duì)各解碼片進(jìn)行解碼。
5. 如權(quán)利要求4所述的視頻解碼裝置,其特征在于,解碼任務(wù)單元包括熵解碼控制單元,反變換反量化單元,幀間預(yù)測(cè)單元,幀內(nèi)預(yù)測(cè)單元,以及去方塊濾波單元。
6. 如權(quán)利要求5所述的視頻解碼裝置,其特征在于,頻率控制單元依據(jù)下式確定各解碼片的工作頻率Z" 附.乂=1 /其中V為電路的供電電壓,fcLK為第i個(gè)解碼片的工作頻率,C^F為電路的有效切換電容,P為當(dāng)前可用功率,n為解碼片的總數(shù),Pi為第i個(gè)解碼片所分配的功率,mi為第i個(gè)解碼片包含的宏塊數(shù)量,i、 j為自然數(shù),1《i《n, Kj《n,"為活動(dòng)因子。
7. 如權(quán)利要求6所述的視頻解碼裝置,其特征在于,第i個(gè)解碼任務(wù)單元中熵解碼控制單元的工作頻率為^ 'fox,反變換反量化單元的工作頻率 為^ 'fcLK,幀間預(yù)測(cè)單元的工作頻率 73 fcLK, 幀內(nèi)預(yù)測(cè)單元的工作頻率為 、'fcLK,去方塊濾波單元單元的工作頻率為^ ftXK;其中v 5, 5,^和、為熵解碼控制單元、反變換反量化單元、幀間預(yù)測(cè)單元、幀內(nèi)預(yù)測(cè)單 元和去方塊濾波單元的處理時(shí)間相對(duì)于熵解碼控制單元、或反變換反量化單 元、或幀間預(yù)測(cè)單元、或幀內(nèi)預(yù)測(cè)單元、或去方塊濾波單元的處理時(shí)間的比值;第i個(gè)解碼任務(wù)單元是解碼第i個(gè)解碼片的解碼任務(wù)單元。
8. —種視頻解碼方法,其特征在于,包括 步驟l,確定當(dāng)前可用功率;步驟2,將視頻碼流分為多個(gè)任務(wù),依據(jù)當(dāng)前可用功率為各任務(wù)指配工 作頻率;步驟3,依據(jù)為各任務(wù)所指配的工作頻率解碼各任務(wù)。
9. 如權(quán)利要求8所述的視頻解碼方法,其特征在于,還包括歩驟4,重 建視頻存儲(chǔ)區(qū)接收多任務(wù)解碼器的輸出,并在視頻碼流中當(dāng)前幀的各任務(wù)解 碼完成之后,根據(jù)各任務(wù)的順序重新排序后將視頻流輸出。
10. 如權(quán)利要求8所述的視頻解碼方法,其特征在于,步驟1中,還感 知設(shè)備的工作狀態(tài)。
11. 如權(quán)利要求8所述的視頻解碼方法,其特征在于,歩驟2包括 步驟21,將視頻碼流劃分為多個(gè)解碼片;n 附, 7"*步驟22,依據(jù)公式<formula>formula see original document page 3</formula>得到P"Zj 7=1,步驟23,依據(jù)公式f w^./^.C,得到fcix;其中V為電路的供電電壓,fcxK為第i個(gè)解碼片的工作頻率,C砂F為電路的有效切換電容,P為當(dāng)前可用功率,n為解碼片的總數(shù),Pi為第i個(gè)解碼 片所分配的功率,m,為第i個(gè)解碼片包含的宏塊數(shù)量,i、 j為自然數(shù),1《i 《n, Kj《n,"為活動(dòng)因子。
12. 如權(quán)利要求ll所述的視頻解碼方法,其特征在于,步驟3中,依據(jù)為各任務(wù)所指配的工作頻率解碼各任務(wù)。
13. 如權(quán)利要求12所述的視頻解碼方法,其特征在于,解碼任務(wù)單元包括熵解碼控制單元,反變換反量化單元,幀間預(yù)測(cè)單元,幀內(nèi)預(yù)測(cè)單元, 以及去方塊濾波單元。
14.如權(quán)利要求13所述的視頻解碼方法,其特征在于,步驟2中在第i個(gè)解碼任務(wù)單元中將熵解碼控制單元的工作頻率指定為r, ,fcLK,將反變 換反量化單元的工作頻率指定為^ ,fcLK,將幀間預(yù)測(cè)單元的工作頻率指定 為^ 'fcLK,將幀內(nèi)預(yù)測(cè)單元的工作頻率指定為^ 'fcLK,去方塊濾波單元單元的工作頻率為 r5 fcLK; 其中 z"「 r2 , r3 j z"4 和^為熵解碼控制單元、反變換反量化單元、幀間預(yù)測(cè)單元、幀內(nèi)預(yù)測(cè)單元和去方塊濾波單元的處理時(shí) 間相對(duì)于熵解碼控制單元、或反變換反量化單元、或幀間預(yù)測(cè)單元、或幀內(nèi)預(yù)測(cè)單元、或去方塊濾波單元的處理時(shí)間的比值;第i個(gè)解碼任務(wù)單元是解 碼第i個(gè)解碼片的解碼任務(wù)單元。
全文摘要
本發(fā)明涉及一種視頻解碼器裝置和方法。該裝置包括設(shè)備資源感知單元,頻率控制單元,以及多任務(wù)解碼器;設(shè)備資源感知單元,用于確定當(dāng)前可用功率;頻率控制單元,用于依據(jù)設(shè)備資源感知單元確定的當(dāng)前可用功率為各任務(wù)指配工作頻率;多任務(wù)解碼器,用于將視頻碼流分為多個(gè)任務(wù),并依據(jù)頻率控制單元為各任務(wù)所指配的工作頻率解碼各任務(wù)。本發(fā)明通過對(duì)解碼器進(jìn)行多任務(wù)并行處理,并且對(duì)每個(gè)任務(wù)以及功能模塊進(jìn)行動(dòng)態(tài)頻率調(diào)整,可以滿足系統(tǒng)性能的前提下降低功耗。
文檔編號(hào)H04N7/26GK101466039SQ200810247439
公開日2009年6月24日 申請(qǐng)日期2008年12月31日 優(yōu)先權(quán)日2008年12月31日
發(fā)明者張繪國, 雯 紀(jì), 邢云冰, 陳益強(qiáng) 申請(qǐng)人:中國科學(xué)院計(jì)算技術(shù)研究所