新四季網

一種四路並行編碼的cavlc編碼器的製作方法

2023-12-01 22:43:46

專利名稱:一種四路並行編碼的cavlc編碼器的製作方法
技術領域:
本發明屬於視頻編碼技術領域,具體涉及一種H. 264/AVC硬體編碼器。
背景技術:
H. 264/AVC是JVT組織最新提出的一個視頻編碼標準。因為H. 264/AVC能夠比之前一些編碼標準得到更高的壓縮效率和圖像質量,所以它的應用越來越廣泛。在H. 264/AVC 中,規定了兩種編碼格式上下文自適應可變長度編碼(CAVLC)和上下文自適應算術編碼 (CABAC)0在CAVLC編碼方式中,只對量化後的殘差係數進行編碼,其它信息,比如說宏塊頭信息等,都以指數哥倫布碼的形式來進行編碼(Exp-Golomb )。CAVLC編碼的主要元素有
1. Coeff_token (TotalCoeff)這是 CAVLC 中的第一個 VLC 元素。TotalCoeff 表示的是在一個虹4中所有非零係數的個數,這個元素編碼在一個4x4塊中所有非零係數的個數和拖尾1的個數(TraiIingOnes)。TotalCoeff的取值範圍為0 16。2. TrailingOnes 這個元素表示拖尾1的個數。它代表的是在反Zig-Zag掃描時,除去O係數後起始連續士 1的個數,其值的取值範圍為(Γ3。即如果連續士 1的個數超過 3,TrailingOnes 值為 3,其餘的士 1 不作為 TrailingOnes03. Sign_trail 這個元素表示的是拖尾1的符號。每一個符號編碼為一比特,O表示正1,1表示負1。4. Level 這個元素表示在4x4塊中除去TrailingOnes外的其它的非零係數。 其編碼順序為反zig-zag順序,Level的個數取值範圍為(Tl6。5. TotalZeros 這個元素表示在以反Zig-Zag掃描順序時第一個非零係數後的總的零係數的個數。6. Run_before 這個元素表示在每一個非零係數前的零的個數。其獲取和編碼順序均為反Zig-Zag順序。相比傳統的變長編碼,CAVLC可以有更高的編碼效率,這是因為CAVLC中引入了這個上下文自適應這個特點。另一方面來說,正是因為這個上下文自適應的特點,它導致了很大的數據相關性,這些相關性主要包括
1.上述所描述的一些編碼元素,只有在對每個4x4塊的掃描完成後才能完全得到。2.在編碼CoeffJoken時需要先決定一個變量nC的值,而nC的值由當前4x4塊左邊和上邊已編碼4x4塊中的非零體系數的個數計算得到。3.編碼Levels的時候有7張表格,而表格的選擇跟編碼當前4x4塊的前一個 Level的絕對值大小和使用的表格編號有關。4. CAVLC編碼時是一個順序的過程,其過程為Coeff_token— Sign_trail — Level - Total_Zeros - Run_before0這個順序的編碼過程很難直接用硬體實現並行完成,使得CAVLC編碼的時間是一個不固定的時間。由於上述廣4點所說的數據相關性,使得設計高吞吐率比如說4Kx2K(4096x2160) 或更高解析度的CAVLC硬體編碼器變得非常困難。

發明內容
本發明的目的在於提供一種高吞吐率的CAVLC編碼器。要設計高吞吐率的CAVLC編碼器,需要在電路中解決前面的相關性問題。在一個宏塊中,含有亮度(Y),色度(Cr和Cb)三種分量。在圖像格式YUV = 4:2:0的情況下,一個宏塊中有384個量化後的殘差係數。所以掃描級有可能會成為編碼器的瓶頸。另外,由於量化後的殘差係數的可能性很多,導致前面提到的一些CAVLC元素的結果變化較大。比如說Level的個數最多有16個,這會導致在編碼時的時鐘數變化很大,進而限制編碼器的吞吐率。本發明主要通過增加硬體並行性來解決限制CAVLC編碼器吞吐率的一些問題。本發明設計的高吞吐率的CAVLC編碼器,採用掃描級和編碼級組成的二級流水結的架構。本發明的CAVLC編碼器的頂層架構如

圖1所示。整個CAVLC編碼器可以分為掃描級,編碼級和CAVLC控制器三部分。掃描級由掃描級控制器,TrailingOnes計數器, TotalCoeff計數器,TotalZeros計數器,Rur^before計數器和Level檢測器組成,掃描級的功能是統計CAVLC元素值。編碼級由編碼級控制器,TotalCoeff編碼器,Total_Zeros 編碼器,Level編碼器,Run_before編碼器和比特流拼接器組成,編碼級的功能是編碼掃描級統計得到的CAVLC元素值。CAVLC控制器通過控制掃描級控制器和編碼級控制器來控制整個CAVLC編碼器的時序和功能。掃描級與編碼級兩級中採用了一塊寄存器來存儲掃描級統計得到的結果,這樣,就可以使得掃描級和編碼級能夠流水線並行處理。掃描級完成一個 4x4塊的掃描後,將得到的統計信息直接存儲在寄存器中,然後編碼級開始編碼,而掃描級則繼續掃描下一個4x4塊。通過這樣的結構,大大提高了整個編碼器的吞吐率。本發明的CAVLC編碼器具體實現如下
1.本發明的掃描級包含有掃描級控制器,TrailingOnes計數器,TotalCoeff計數器, Total_Zeros計數器,Run_before計數器和Level檢測器組成。掃描級控制器通過一個狀態機來控制掃描級在每個時鐘從殘差係數緩存中取4個殘差係數來統計CAVLC編碼的一些元素,如 TotalCoeff,Total_Zeros, TrailingOnes, Level, Run_before 等。其具體步驟如下所述
1)從係數緩存中取的四個殘差係數為COeff(TCOeff3。然後根據下面代碼(1)和(2)
所示得到8個狀態指示位S(Ts3和c(Tc3。其中s(Ts3代表各殘差係數是否等於0,C(TC3
代表各殘差係數是否等於士1
權利要求
1.一種四路並行編碼的CAVLC編碼器,其特徵在於採用掃描級和編碼級組成的二級流水結的架構,分為掃描級、編碼級和CAVLC控制器三部分;其中,掃描級由掃描級控制器,TrailingOnes 計數器、TotalCoeff 計數器、Total_Zeros 計數器、Run_before 計數器和 Level檢測器組成,掃描級用於統計CAVLC元素值;編碼級由編碼級控制器、TotalCoeff編碼器、TotalZeros編碼器、Level編碼器、Run_bef0re編碼器和比特流拼接器組成,編碼級用於編碼掃描級統計得到的CAVLC元素值;CAVLC控制器通過控制掃描級控制器和編碼級控制器來控制整個CAVLC編碼器的時序和功能;並且,掃描級與編碼級兩級中採用一塊寄存器來存儲掃描級統計得到的結果,使得掃描級和編碼級能夠流水線並行處理;掃描級完成一個4x4塊的掃描後,將得到的統計信息直接存儲在寄存器中,然後編碼級開始編碼,而掃描級則繼續掃描下一個4x4塊。
2.根據權利要求1所述的四路並行編碼的CAVLC編碼器,其特徵在於所述的掃描級控制器通過一個狀態機來控制掃描級在每個時鐘從殘差係數緩存中取4個殘差係數來統 if CAVLC 115 ^-:TotalCoeff, Total_Zeros, TrailingOnes, Level, Run—before, 具體為1)從係數緩存中取的四個殘差係數為c0eff(TC0eff3,根據下面代碼(1)式和(2)式所示得到8個狀態指示位S(Ts3和c(Tc3,其中s(Ts3代表各殘差係數是否等於0,c(Tc3 代表各殘差係數是否等於士1
3.根據權利要求2所述的四路並行編碼的CAVLC編碼器,其特徵在於所述的編碼級控制器控制TotalCoefT編碼器和T0tal_Zer0S編碼器在編碼級的第一個時鐘時,根據掃描級的!"otalCoeff^TotalZeros和TrailingOnes的值,查詢相應的表格得到碼字,編碼級控制器通過TotalCoeff的值來控制Level編碼器中在每個時鐘編碼四個Level值,編碼級控制器通過Total_Zeros的值來控制Run_before編碼器中在每個時鐘編碼四個Run_before 值,編碼級控制器控制比特流拼接器在每個時鐘把TotalCoefT編碼器,T0tal_Zer0S編碼器,Level編碼器和Rim_before編碼器產生的碼字拼接成為比特流。
4.根據權利要求3所述的四路並行編碼的CAVLC編碼器,其特徵在於所述的 TotalCoeff編碼器,Total_Zeros編碼器通過查表即得到相應的碼字,Level編碼器和Run_ before編碼器的設計如下Level編碼器採用H. 264/AVC中一個VLCN提前計算的技術,同時決定四個Level幅值的編碼對應的表格序號,實現同時對四個Level進行編碼,然後把四個Level編碼得到的碼字和對應的長度拼接起來,VLCN提前計算的代碼為 incVLC[7] = { 0,3,6,12,24,48,Oxffff }; if ( first level && TotalCoeff>10 MTrailing0nes incVLC[reg_vlc3]) vlcO = reg_vlc3+l; elsevlcO = reg_vlc3;if ( vlcO =0 ) vlcl = vlcO+1;else if ( abs(IevelO) > incVLC[vlcO]) vlcl = vlcO+1; elsevlcl=vlcO; if ( abs(Ievell) > incVLC[vlcl]) vlc2 = vlcl+1; elsevlc2 = vlcl;if ( abs(level2) > incVLC[vlc2]) vlc3 = vlc2+l; elsevlc3 = vlc2;上述代碼中abs代表的的是取絕對值的操作,incVLC[7] = { 0,3,6,12,24,48, Oxffff }表示的是表格選擇的條件;Vlc(TVlc3分別表示編碼當前四個Level值分別對應的表格序號,level(T level3表示當前編碼的幅值數,reg_leVe13表示前一組四個Level 值的中的level3,reg_vlc3表示編碼前一組四個Level值時編碼level3時用的表格序號 vlc3 ;然後,根據每個level和其相應的表格序號來編碼每個level值,每個Level的碼字結構包含前綴,後綴和它們中間的1 ;前綴由0組成,後綴的長度由levelSuffixsSize來表示;根據四個Level值的並行編碼出來的結果,按照碼字的長度,通過移位以後進行或操作來拼接成i^ourLevelCode,即四個Level的編碼碼字;Run_before編碼器,每個時鐘也是編四個Run_before,編碼Run_before主要的工作是
5.根據權利要求4所述的四路並行編碼的CAVLC編碼器,其特徵在於所述的比特流拼接器把TotalCoeff編碼器,Total_Zeros編碼器,Level編碼器和Run_before編碼器產生的碼字拼接成為比特流;編碼級在四個時鐘內完成,比特流拼接器的時序設計為第一個時鐘周期,比特流拼接器把TotalCoefT碼字和第一組RmrLevelCode打包在一起;接下來兩個周期,比特流拼接器都只需要打包Level編碼器輸出的RmrLevelCode ;在最後一個時鐘周期,比特流拼接器將最後的RmrLevelCode和Total_Zeros/Run_beforeCode打包在一起。
全文摘要
本發明屬於視頻編碼技術領域,具體為一種四路並行編碼的CAVLC編碼器。本發明採用掃描級和編碼級並行處理的二級流水線結構,掃描級一次可以掃描四個係數的,大大的減少掃描一個4x4塊所需要的時間。同樣,通過四個level和Run_before並行編碼的方式來縮短編碼級所需要的時間。編碼級的所需要的時間通過細緻的設計,使得其所消耗的時間和掃描級所用的時間相同。這樣,整個CAVLC的兩級流水線可以得到最大的吞吐率,極大地減小完成一個宏塊的編碼所需要的時鐘數。
文檔編號H04N7/26GK102325253SQ201110232250
公開日2012年1月18日 申請日期2011年8月15日 優先權日2011年8月15日
發明者任懷魯, 姜英, 曾曉洋, 沈沙, 範益波, 鍾慧波 申請人:復旦大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀