两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種離散余弦變換的整數(shù)反變換裝置及其方法

文檔序號:7696445閱讀:230來源:國知局
專利名稱:一種離散余弦變換的整數(shù)反變換裝置及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及離散余弦變換(DCT)的反變換,尤其涉及一種可實現(xiàn)DCT 的整數(shù)反變換的裝置及其方法。
背景技術(shù)
為了進一步節(jié)省圖像傳輸碼率,需要對圖像信號進行壓縮, 一般方法為 去除圖像信號中的相關(guān)性及減小圖像編碼的動態(tài)范圍,通常采用變換編碼及 量化技術(shù)。變換編碼將圖像時域信號變換成頻域信號,在頻域中,圖像信號 的能量大部分集中在低頻區(qū)域,相對于時域信號,碼率有較大的下降。圖像 中的變換編碼通常采用離散余弦變換,而RV (real video)編解碼對圖像或預(yù) 測殘差采用了 4x4整數(shù)離散余弦變換技術(shù),避免了以往標(biāo)準(zhǔn)中使用的通用8x8 離散余弦變換時,逆變換經(jīng)常出現(xiàn)的失配問題。
RV正向離散余弦變換公式如下,其中a, 6, c, J表示輸入的圖像或預(yù)測殘差。
<formula>formula see original document page 11</formula>
RV整數(shù)變換是一個分離的二維變換,通常利用以上公式先進行垂直方向 上的一維變換然后進行水平方向上的一維變換。
相應(yīng)的,在整數(shù)反變換中用到的公式如下
<formula>formula see original document page 11</formula>
為了提高RV解碼器的運算速度,需要采用硬件來實現(xiàn)RV整亂良變換 中的上述運算,并且需要使用盡可能少的資源來取得足夠的運算速度。而目 前尚無硬件RV解碼器方案問世。
對于其他應(yīng)用場景下的4X4大小的DCT變換的整數(shù)反變換,其通用的 反變換公式如下
<formula>formula see original document page 12</formula>
其中,A、 B、 C和D為需進行DCT整毅變換的4個輸入值,a',6',c'和 &為進行整數(shù)反變換后得到的4個輸出值,P。,A,g為整數(shù)反變換公式中的系 數(shù),在不同應(yīng)用場景下可能不同。
明顯,對基于其它應(yīng)用場景下的DCT整數(shù)反變換,存在的問題是相同的。
其特征在于,該裝置包括第一級、第二級、第三級和第四級反變換單元, 采用流水線方式對多組輸入值進行處理,每一組輸入值的整數(shù)反變換用10拍 完成,以下計為第l拍到第10拍,每拍為一時鐘周期,其中
第一級反變換單元用于在第1~4拍,根據(jù)依次輸入的j、萬、C和D分別 計算出輸入值的倍數(shù)值i^、 A萬和g5、尸。C、《£)和尸2/)并鎖存,在第2~
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種離散余弦變換的整數(shù)反變換裝置及 其方法,可以使用較少的硬件資源,實現(xiàn)較快的運算速度。
為了解決上述問題,本發(fā)明提供了 一種離散余弦變換的整數(shù)反變換裝置, 用于依照下式對一組4個輸入值丄仏C和D進行離散余弦變換的整數(shù)反變 換運算,得到4個輸出值"',6',c'和W,其中的系數(shù)尸。,《,尸2為整數(shù)
<formula>formula see original document page 12</formula>
拍將所述倍數(shù)值依次輸出到第二級反變換單元鎖存,從第5拍開始對下一組 輸入值的處理;
第二級反變換單元用于在第4~5拍,對鎖存的倍數(shù)值做加、減運算得到 4個中間值60,61,62,63 , 60 =尸0/4+尸。C, W = P0/4 —尸。C, 62 =尸25—i^Z), M = +尸2£>; 在6 7拍對4個中間值做加、減運算,得到4個輸出值a' ,c',6',, "' = 60+63, ^' = 60-M, Z>' = 6l + 62, c' = W-62,第7拍將a' ,d'輸出到第三級反變換單元, 在第8拍將6',c'輸出到第三級反變換單元并開始對下一組輸入值的處理;
第三級反變換單元用于在第7 10拍依次將4個輸出值"',6',c', J'輸出 到第四級反變換單元,從第IO拍的下一拍開始對下一組輸入值的處理;
第四級反變換單元用于鎖存輸出值a',6',c'和W,由后續(xù)裝置依次讀出。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述第一級反變換單元包括一級輸入寄存器、 一級運算單元、 一級輸出 寄存器、 一級輸出選擇器和一級計數(shù)器,其中
所述一級計數(shù)器用于對時鐘周期進行計數(shù),向所述一級運算單元和一級 輸出選擇器輸出在/。,/,,/2,A之間循環(huán)計數(shù)的計數(shù)值,第一次循環(huán)計數(shù)值 /。,A,/2,/3對應(yīng)于對第一組輸入值進行整氣良變換的第1~4拍;
所述一級輸入寄存器用于鎖存依次輸入的丄5, C和D并輸出到所述一 級運算單元;
所述一級運算單元,用于在計數(shù)值為/。時對Z進行運算得到尸",在計數(shù) 值為/,時對5進行運算得到尸,和尸25 ,在計數(shù)值為/2時對C進行運算得到戶。C , 在計數(shù)值為/3時對D進行運算得到SZ)和/^D ,每拍的運算結(jié)果在該拍存入所 述一級輸出寄存器;
所述一級輸出寄存器用于在各拍分別鎖存倍數(shù)值i^4、 i^和i^、尸。C、 《Z>和尸2£>并輸出到所述一級輸出選擇器;
所述一級輸出選擇器用于在計數(shù)值為/,時',將i^4選通輸出,在計數(shù)值為 /2時,將^5和尸2萬選通輸出,在計數(shù)值為/3時,將尸。C選通輸出,在計數(shù)值為 /。時,將AZ)和iy)選通輸出,以上倍數(shù)值均輸出到第二級反變換單元。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述離散余弦變換的整數(shù)反變換為RV整數(shù)反變換,尸。=13,《=17,尸2 = 7; 所述一級運算單元包括第一移位運算單元、第二移位運算單元、第三移位運 行單元、 一級運算選擇器、 一級加法器和一級減法器,所述一級輸出寄存器 包括一級加法寄存器和一級減法寄存器,其中
所述第一移位運算單元用于將輸入值左移3位后輸出;
所述第二移位運算單元用于將輸入值左移2位并加上該輸入值后輸出;
所述第三移位運算單元用于將輸入值左移4位后輸出;
所述一級運算選擇器用于在計數(shù)值為/。和/2時,將第 一和第三移位運算
單元的輸出選通為一級加法器的兩個輸入,在計數(shù)值為/,和/;時,將第三移位 運算單元和一級輸入寄存器的輸出選通為一^口法器的兩個輸入,同時將第
一移位運算單元和一級輸入寄存器的輸出選通為一級減法器的兩個輸入; 所迷一級加法器用于將兩個輸入相加后寫入一級加法寄存器,在計數(shù)值
為/。,/,,/2,/3時結(jié)果分別為134,I7A13C,17D;
所述一級減法器用于將第一移位運算單元的輸出減去一級輸入寄存器的
輸出后寫入一級加法寄存器,在計數(shù)值為/,,/3時結(jié)果分別為7S,7Z);
所述一級加法寄存器和一級減法寄存器用于鎖存寫入的數(shù)值并輸出到一 級輸出選擇器。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述第二級反變換單元包括至少6個二級輸入寄存器、二級運算選擇器、 二級加法器、二級減法器、二級加法寄存器、二級減法寄存器、二級輸出選 擇器、4個中間值寄存器和二級計數(shù)器,其中!
所述二級計數(shù)器比一級計數(shù)器延遲3拍計數(shù),用于向所述二級運算選擇 器和二級輸出選擇器輸出在/。"',^"'之間循環(huán)計數(shù)的計數(shù)值;
所述6個二級輸入寄存器用于分別鎖存第一級反變換單元輸出的倍數(shù)值 尸。4、《5和尸25、尸。C、《£>和尸2£)并輸出到二級運算選擇器;所述二級運算選擇器與所述6個二級輸入寄存器和4個中伺值寄存器相 連,用于在計數(shù)值為/。'時,將i^和戶。C選通為二級加法器以及二級減法器的 兩個輸入,在計數(shù)值為時,將i^和尸力選通為二級加法器的兩個輸入,將i^ 和i^D選通為二級減法器的兩個輸入,在計數(shù)值為/2'時,將60和M選通為二 級加法器以及二級減法器的兩個輸入,在計數(shù)值為/3'時,將61和62選通二級 加法器以及二級減法器的兩個輸入;
所述二級加法器用于將兩個輸入相加后寫入二級加法寄存器,在計數(shù)值 為/。',/,',/2',/3時結(jié)果分別為6。,力3,">;
所述二級減法器用于將兩個輸入相減后寫入二級減法寄存器,在計數(shù)值 為/。', , /2' , /3'時結(jié)果分別為& , K c';
所述二級加法寄存器和二級減法寄存器用于鎖存寫入的數(shù)值并輸出到二 級輸出選擇器;
所述二級輸出選擇器用于在計數(shù)值為/。時,將60和M選通輸出到中間值 寄存器,在計數(shù)值為/:時,將61和62選通輸出到中間值寄存器,在計數(shù)值為/2' 時,將"'和J'選通輸出到第三級反變換單元,在計數(shù)值為/3'時,將6'和c'選 通輸出到第三級反變換單元;
所述4個中間值寄存器用于分別鎖存所述4個中間值M),W,62,63并輸出 到所述二^i4算選擇器。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述第三級反變換單元包括至少2個三級輸入寄存器、三級輸出選擇器 和三級計數(shù)器,所述第四級反變換單元包括」四級輸出寄存器,其中
所述三級計數(shù)器比一級計數(shù)器延遲6拍計數(shù),用于向所述三級輸出選擇 器輸出在/。',/1',/2',/3'之間循環(huán)計數(shù)的計數(shù)值;
所述2個三級輸入寄存器用于分別鎖存輸出值c', W;
所述三級輸出選擇器用于在計數(shù)值為/。'和/,'時,分別將二級反變換單元 輸出的"'和6'連通到第四級反變換單元的四級輸出寄存器,在計數(shù)值為/2'和 /3'時,分別將鎖存的輸出值c', d'連通到第四級反變換單元的四級輸出寄存 器。
進一步地,上迷整數(shù)反變換裝置還可具有以下特點
所述計數(shù)值/。,/,,/2,/3 、計數(shù)值/。',/,',/2',/3'和計數(shù)值/。',/,',/2',/3'均為0,1,2,3 ,
所述一級、二級和三級計數(shù)值均為4位計數(shù)器,用于對4組輸入進行循環(huán)計 數(shù),其中的低2位輸出到相應(yīng)的選擇器和運算器。
為了解決上述技術(shù)問題,本發(fā)明還提供了一種離散余弦變換的整數(shù)反變
換裝置,用于依照下式對一組4個輸入值j, 5, C和D進行離散余弦變換的 整數(shù)反變換運算,得到4個輸出值a',6',c'和c/',其中的系數(shù)戶。,^,g為整數(shù)
"'=尸0爿+ "萬+ P0C +尸2£ 6'=尸0爿+尸2萬-尸。C - ^Z) c' = i^4 -尸2萬 - 尸。C +《Z) d' = i^ - S萬+ P0C -,
其特征在于,該裝置包括第一級、笫二級、第三級和第四級反變換單元, 采用流水線方式對多組輸入值進行處理,其中對每組輸入值的處理如下
第一級反變換單元用于對依次輸入的丄仏C和D,分別計算出倍數(shù)值 尸。丄/^和i^、戶。C、 AZ)和iy)并鎖存,然后將所述倍數(shù)值依次輸出到第 二級反變換單元;
第二級反變換單元用于鎖存輸入的倍數(shù)值并做加、減運算得到4個中間 值60,W,62,M, 60 =尸0爿+尸0(7,61 = /^—戶0(^,62 =尸2萬—i^D,W = i^+P2Z);然后對 4個中間《直做力口、;咸運算,得至!] 4個車命出《直a' ,c',6',d', "' = 60 + 63, J' = 60 — 63, 6' = M + 62, c' = W —62,再將a' ,c',6',J'輸出到第三級反變4灸單元;
第三級反變換單元用于依次將4個輸出值a' ,&',c', d'輸出到第四級反變
換單元;
第四級反變換單元用于鎖存輸出值fl',6',C'和&,由后續(xù)裝置依次讀出。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述第一級反變換單元包括一級輸入寄存器、 一級運算單元、 一級輸出 寄存器、 一級輸出選擇器和一級計數(shù)器,所述第二級反變換單元包括6個二 級輸入寄存器dina, dinbl, dinb2, dinc,dindl,dind2,其中
所述一級計數(shù)器用于對時鐘周期進行計數(shù),向所述一級運算單元和一級
輸出選擇器輸出從小到大循環(huán)計數(shù)的4個計數(shù)值/。,A,^/;;
所述一級輸入寄存器用于鎖存輸入值并輸出到所述一級運算單元;
所述一級運算單元,用于在輸入計數(shù)值為/。,/2時完成對輸入值的"乘《" 運算,在輸入計數(shù)值為/,,/3時完成對輸入值的"乘A和乘A"運算,得到的倍 數(shù)值存入所述一級輸出寄存器;
所述一級輸出寄存器用于鎖存輸入的倍數(shù)值并輸出到一級輸出選擇器;
所述一級輸出選擇器用于在計數(shù)值為/。,/,,/2,/;時,將一級輸出寄存器在 上一時鐘周期鎖存的"乘iT,或"乘《"運算結(jié)杲分別連通到二級輸入寄存 器dina,dinbl,dinc,dindl,在計數(shù)值為/,,/3時,將一級輸出寄存器在上一時鐘 周期鎖存的"乘尸2"運算結(jié)果分別連通到二級輸入寄存器dinb2,dind2。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述整lt^變換運算為RV解碼時采用的整lt^變換運算,P。=13,S = 17, 尸2=7,所述一級運算單元包括第一移位運算單元、第二移位運算單元、第三 移位運行單元、 一級運算選擇器、 一級加法器和一級減法器,所述一級輸出 寄存器包括一級加法寄存器和一級減法寄存器,其中
所述第一移位運算單元用于將輸入值左移3位后輸出;
所述第二移位運算單元用于將輸入值左移2位并加上該輸入值后輸出;
所述第三移位運算單元用于將輸入值左移4位后輸出;
所述一級運算選擇器用于在計數(shù)值為/。,/2時,將第一和第三移位運算單 元的輸出選通為一級加法器的兩個輸入,在計數(shù)值為/,,A時,將第三移位運 算單元和一級輸入寄存器的輸出選通為一射口法器的兩個輸入,同時將第一 移位運算單元和一級輸入寄存器的輸出選通為一級減法器的兩個輸入;
所述一級加法器用于將兩個輸入相加后寫入一級加法寄存器;
所述一級減法器用于將第一移位運算單元的輸出減去一級輸入寄存器的 輸出后寫入一級加法寄存器;
所述一級加法寄存器和一級減法寄存器用于鎖存寫入的數(shù)值并輸出到一級輸出選擇器。
進一步地,上述整數(shù)反變換裝置還可具有以下特點
所述第二級反變換單元包括6個二級輸入寄存器dina, dinbl, dinb2, dinc, dindl,dind2, 二級運算選擇器、二級加法器、二級減法器、二級加法寄存器、 二級減法寄存器、二級輸出選擇器、4個中間值寄存器ZbO,Zbl,Zb2,Zb3和 二級計數(shù)器;所述第三級反變換單元包括2個三級輸入寄存器Oc, Od、三級 輸出選擇器和三級計數(shù)器;第四級反變換單元包括四級輸出寄存器,其中
所述二級計數(shù)器用于向所述二級運算選擇器和二級輸出選擇器輸出從小 到大循環(huán)計數(shù)的四個計數(shù)值/。',
所述6個二級輸入寄存器dina, dinbl, dinb2, dinc, dindl,dind2用于分別鎖 存第一級反變換單元輸出的6個倍數(shù)值;
所述二級運算選擇器用于在計數(shù)值為/。'時,將寄存器dina和寄存器dinc 的輸出與二級加法器及二級減法器的輸入選通,計數(shù)值為/;時,將寄存器dinbl 和寄存器dind2的輸出與二級加法器的輸入連通,同時將寄存器dinb2和寄存 器dindl的輸出與二級減法器的輸入連通,計數(shù)值為/2'時,將寄存器ZbO和 寄存器Zbl的輸出與二歸。法器及二級減法器的輸入選通,計數(shù)值為/3時, 將寄存器Zbl和寄存器Zb2的輸出與二級加法器及二級減法器的輸入選通;
所述二級加法器用于將兩個輸入相加后寫入二級加法寄存器;
所述二級減法器用于將兩個輸入相減后寫入二級減法寄存器,其中以寄 存器dina,寄存器dinb2,寄存器ZbO,寄存器Zbl的輸出為被減數(shù);
所述二級加法寄存器和二級減法寄存器用于鎖存寫入的數(shù)值并輸出到二 級輸出選擇器;
所述二級輸出選擇器用于在計數(shù)值為《,/;,/2',/;'時,分別將二級加法寄存 器上一時鐘周期鎖存的值選通輸出到寄存器zk),寄存器Zb3,三級輸出選擇 器和三級輸出選擇器,分別將二級減法寄存器上一時鐘周期鎖存的值選通輸 出到寄存器Zbl,寄存器Zb2,寄存器Oc,寄存器Od;
所述三級計數(shù)器用于向所述三級輸出選擇器輸出從小到大循環(huán)計數(shù)的四 個計數(shù)值/。',/,',/2',/3';
所述2個三級輸入寄存器Oc, Od分別用于對輸入值進行鎖存并輸出到三 級輸出選擇器;
所述三級輸出選擇器用于在計數(shù)值為/。'和/,'時,將從二級輸出選擇器直 接輸出的值連通到所述四級輸出寄存器,在計數(shù)值為/2'和/3'時,分別將寄存 器Oc和寄存器Od的輸出連通到所述四級輸出寄存器。
為了解決上述技術(shù)問題,本發(fā)明還提供了一種離散余弦變換的整數(shù)反變 換方法,用于依照下式對一組4個輸入值A(chǔ)、 B、 C和D進行離散余弦變換 的整數(shù)反變換,得到4個輸出值"',6',c'和W,其中的g,《,^為整數(shù)
<formula>formula see original document page 19</formula>
其特征在于,通過四級流水完成對多組輸入值的整數(shù)反變換,從接收到 笫一個輸入值A(chǔ)開始,執(zhí)行以下處理
第一級在第1~4拍,根據(jù)依次輸入的A、 B、 C和D計算出i^, i^,尸^,尸。C,i^D和gZ),在第2 5拍輸出到第二級鎖存,且從第5拍開始對 下一組輸入值的處理;
第二級在第4~7拍,先做加、減運算60 = +尸。C, W =尸。v4 -尸。C, 62 =尸2萬-SD, 63 = /^ +尸2/)并鎖存得到的中間值M), 61,62 ,M,再4故力p、減運算a'= 60 + 63, 6' = W + Z 2, c' = 6l-62,^ = 60-63,第7拍將a' ,d'輸出到第三級,在第8拍將 6',c'輸出到第三級且開始對下一組輸入值的處理;
第三級用于在第7 10拍依次將"',6',c', i輸出到第四級,且從第11拍 開始對下一組輸入值的處理;
第四級反變換單元鎖存輸出值a',6',c'和tT,由后續(xù)裝置讀出。
進一步地,上述整數(shù)反變換方法還可具有以下特點
所述第一級在第1拍根據(jù)輸入值A(chǔ),計算出i^4并鎖存;第2拍根據(jù)輸入 值B,計算出《5和戶2萬并鎖存,同時將i^輸出到第二級;第3拍根據(jù)輸入值
C,計算出尸。C并鎖存,同時將i^和i^輸出到第二級;第4拍根據(jù)輸入值D, 計算出^9和/>2"并鎖存,同時將P。C輸出到第二級;第5拍將^)和尸2"輸出 到第二級。
進一步地,上述整數(shù)反變換方法還可具有以下特點
所述第二級在第4拍,對輸入的P^和《C作加法和減法運算,得到兩個 中間值60和W并鎖存,其中60 =尸^4+/^, W = i^_《C;在第5拍,對輸入的 A5、 i^、《"和尸2/)作加法和減法運算,得到另兩個中間值62和M并鎖存, 其中62 =尸2萬-i^D, M = i^+/>2Z);在第6拍,對得到的中間值60和M作加法 和減法運算,得到輸出值"'=60 + 63, ^' = 60-63并鎖存;在第7拍,對得到的 中間值60和63作加法和減法運算,得到輸出值6' = 61+62, c^61-62并鎖存, 同時將a'和W輸出到第三級;在第8拍,將6'和c'輸出到第三級。
進一步地,上述整數(shù)反變換方法還可具有以下特點
所述第三級在第7拍將輸入的a'直接輸出到第四級,同時將輸入的6'鎖 存;在第8拍將輸入的6'直接輸出到第四級,同時將輸入的c'鎖存;在第9 拍,將鎖存的c'輸出到第四級;在第10拍,將鎖存的&輸出到第四級。
進一步地,上述整數(shù)反變換方法還可具有以下特點
所述離散余弦變換的整數(shù)反變換為用于RV解碼器的離散余弦變換的RV 整數(shù)反變換,所述尸。=13,/^=17,尸2=7;所述第一級通過做兩級運算來得到所述 134,175, 7萬,13C , 17Z>和7Z> ,對輸入值A(chǔ),在第 一級先做左移3位運算得到8A, 以及左移2位再加A的運算得到5A,然后在第二級做加法運算得到13A,對 輸入值B,在第一級先做左移4位運算、左移3位運算得到16B和犯,然后 在第二級對16B和B做加法運算,對8B和B做減法運算得到7B,對輸入值 C,第一級先做左移3位運算得到8C,以及左移2位再加C的運算得到5C, 然后在第二級做加法運算得到13C,對輸入值D,在第一級先做左移4位運 算、左移3位運算得到16D和8D,然后在第二級對16D和D做加法運算, 對8D和D做減法運算得到7D。
本發(fā)明離散余弦變換的整數(shù)反變換裝置和方法沒有使用乘法運算單元,
充分利用了流水線實現(xiàn)技術(shù),最大限度地減少了加減法器的使用,是利用硬 件資源最少的一種解決方案。


圖1是本發(fā)明實施例一級運算單元的硬件結(jié)構(gòu)圖。
圖2是本發(fā)明實施例二級運算單元的硬件結(jié)構(gòu)圖。
圖3是本發(fā)明實施例三級運算單元的硬件結(jié)構(gòu)圖。
圖4是本發(fā)明實施例整數(shù)反變換裝置實現(xiàn)流水線運算的工作示意圖。
圖5是本發(fā)明實施例在連續(xù)組數(shù)數(shù)據(jù)輸入時的流水時序圖。
具體實施例方式
下面結(jié)合附圖對本發(fā)明的具體實施方式
進行詳細說明。
本實施例以RV解碼器中的DCT變換的整數(shù)反變換裝置為例,該裝置共 分為四級流水實現(xiàn)。以下將每一級流水使用的石更件資源作為一級反變換單元, 即該整數(shù)反變換裝置包括笫一級反變換單元PIPE1、第二級反變換單元 PIPE2、第三級反變換單元PIPE3和第四級反變換單元PIPE4。
第一級反變換單元PIPE1的硬件結(jié)構(gòu)如圖l所示,其中A、 B、 C、 D為 順序輸入的4個需進行反變換的數(shù)值,依次輸入到一級輸入寄存器鎖存。與 一級輸入寄存器相連的3個運算單元分別是實現(xiàn)"乘8"運算的第一移位 運算單元,即將輸入值左移3位,圖中用"<<<3"表示;實現(xiàn)"乘5"運算 的第二移位運算單元,即將輸入值左移2位后再加該輸入值,圖中用"<<<2+1" 表示;實現(xiàn)"乘16"運算的第三移位運算單元,即將輸入值左移4位,圖中 用"< 4"表示。上述3個移位運算單元的輸出均連接到一級運算選擇器的 輸入端,該一級運算選擇器的另外1個輸入端直^"接一級輸入寄存器。該一 級運算選擇器的控制端連接到一級計數(shù)器idctcnt (四位表示)的低2位 idctcnt[l:O],該一級計數(shù)器從0到15依次循環(huán)計數(shù),用于完成四組4點運算。 如果整數(shù)反變換公式中的系數(shù)g,《,g不同,則上述運算單元的個數(shù)和實現(xiàn)的 運算都可能不同,但均可釆用移位運算和加、減法運算的方式來實現(xiàn)整數(shù)的
乘法運算。
一級運算選擇器的兩路輸出sumainl 1及sumainl2作為 一級加法器的兩個 輸入信號,另兩路輸出subainll及subain12作為一級減法器的兩個輸入信號。 一級加法器的輸出送入一級加法寄存器鎖存,該一級加法寄存器的輸出 suma一l連接到一級輸出選擇器的輸入端, 一級減法器的輸出送入一級減法寄 存器鎖存,該一級減法寄存器的輸出suba—1連接到一級輸出選擇器的輸入端。 另圖1~圖3中均略去了輸入到選擇器、寄存器和計數(shù)器的時鐘信號CLK。
第一級反變換單元的運算由idctcnt[l: O]的值(從0到3)來控制,每一 個值對應(yīng)的運算如下所示
當(dāng)idctcnt[l: 0]=0時,
當(dāng)idctcnt[l: 0]= 1時:
當(dāng)idctcnt[l: 0]=2時,
當(dāng)idctcnt[l: 0]=3時,
min 11 =爿 < 3 做min 12 = /4 < 2 +爿 幼6i"l 1 = 0 油'"12 = 0
sm min 11 = ;5 < 4
minl2 = 5 ■s 6/wl 1 = £ < 3
/minll = C《<3 /minl2 = C<《2 + C w6/'wl 1 = 0 油"12 = 0
幼min 11 = D < 4 幼minl2:D
1 = Z) < 3
<formula>formula see original document page 22</formula>(11)
<formula>formula see original document page 22</formula>(12)
<formula>formula see original document page 22</formula>(13)
<formula>formula see original document page 22</formula>(14)
請參照圖4,第一級流水線的工作過程是 在第一拍,idctcnt[l: 0]=0,執(zhí)行以下處理
將A輸入到一級輸入寄存器中, 一級運算選擇器將第一移位運算單元和 第二移位運算單元的輸出分別連通到該一級運算選擇器的兩路輸出sumainl 1 和sumainl2并在一級加法器中完成加法運算,結(jié)果鎖存在一級加法寄存器, 其值為8A+5A=13A;此時一級運算選擇器的另兩路輸出subainll及subainl2 不與任何輸入接通,也不進行減法運算。
在第二拍,idctcnt[l: 0]=1,執(zhí)行以下處理
一級輸出選擇器將一級加法寄存器的輸出連通到寄存器dina,將一級加 法寄存器上一拍鎖存的值13A寫入寄存器dina。
同時,將B輸入到一級輸入寄存器中, 一級運算選擇器將第三移位運算 單元和一級輸入寄存器的輸出分別連通到該一級運算選擇器的兩路輸出 sumainll和sumainl2并在一級加法器中完成加法運算,結(jié)果鎖存在一級加法 寄存器,其值為16B+B=17B。
同時,將第一移位運算單元的輸出連通到一級運算選擇器的輸出 subainll,將一級輸入寄存器的輸出連通到一級運算運算器的輸出subainl2 并在一級減法器中完成subainll減subainl2的運算,結(jié)果鎖存在一級減法寄 存器,其值為8B-B-7B。
在第三拍,idctcnt[l: 0]=2,執(zhí)行以下處理
一級輸出選擇器將一級加法寄存器的輸出suma—1連通到寄存器dinb2, 將一級減法寄存器的輸出suba—1連通到寄存器dinbl,將一級加法寄存器上 一拍鎖存的值17B寫入寄存器dinb2,將一級^法寄存器上一拍鎖存的值7B 寫入寄存器dinbl。
同時,將C輸入到一級輸入寄存器中, 一級運算選擇器將第一移位運算 單元和第二移位運算單元的輸出分別連通到該一級運算選擇器的兩路輸出 sumainll和sumainl2并在一級加法器中完成加法運算,結(jié)果鎖存在一級加法 寄存器,其值為8C+5C=13C。此時一級運算選擇器的另兩路輸出subainll及 subainl2不與任何輸入接通,也不進行減法運算。
在第四拍,idctcnt[l: 0]=3,執(zhí)行以下處理
一級輸出選擇器將一級加法寄存器的輸出suma一l連通到寄存器dinc,將 一級加法寄存器上一拍鎖存的值13C寫入寄存器dinc。
同時,將D輸入到一級輸入寄存器, 一級運算選擇器將第三移位運算單
元和一級輸入寄存器的輸出分別連通到該一級運算選擇器的兩路輸出
sumainll和sumainl2并在一級加法器中完成加法運算,結(jié)果鎖存在一級加法 寄存器,其值為16D+D=17D。
同時,將第一移位運算單元的輸出連通到一級運算選擇器的一輸出 subainll,將一級輸入寄存器的輸出連通到一級運算選擇的另一輸出subainl2 并在一級減法器中完成subainll減subainl2的運算,結(jié)果鎖存在一級減法寄 存器,其值為8D-D-7D。
至此,第一級反變換單元就基本完成了對一組4點的第一級反變換處理, 第一級反變換處理還包括在第五拍,將一級加法寄存器和一級減法寄存器中 的值取出,即 一級輸出選擇器將一級加法寄存器的輸出suma—l連通到寄存 器dind2,將一級減法寄存器的輸出suba_l連通到寄存器dindl,將一級加法 寄存器上一拍鎖存的值17D寫入寄存器dind2,將一級減法寄存器中上一拍鎖 存的值7D寫入寄存器dindl。 ^a^第五拍開始,已經(jīng)可以開始另一組4點的 反變換運算了。
第二級反變換單元PIPE2的硬件結(jié)構(gòu)如圖2所示,包括5個二級輸入寄 存器,分別用寄存器dina(13A)、寄存器dinbl(17B)、寄存器dinb2(7B)、寄存 器dinc(13C)、寄存器dindl(17D)和寄存器dind2 (7D)表示,括號中是該寄存 器中鎖存的數(shù)值。6個二級輸入寄存器的輸出均作為二級運算選擇器的輸入, 該二級運算選擇器的控制端連^妄到二級計數(shù)器idctcnt一se(四位表示)的低2位 idctcnt—se[l :0] , Idctcnt_se的啟動信號比idctcnt延遲3拍即3個時鐘周期,即 從第4拍開始計數(shù),該延遲可以由外部電路來控制。
二級運算選擇器的兩路輸出sumain21及sumain22作為二級加法器的兩個 輸入信號,另兩路輸出subain21及subain22作為二級減法器的兩個輸入信號。 二級加法器的輸出送入二級加法寄存器鎖存,該二級加法寄存器的輸出 suma—2連接到二級輸出選擇器的輸入端,二級減法器的輸出送入二級減法寄 存器鎖存,該二級減法寄存器的輸出suba—2連接到二級輸出選擇器的輸入端。 二級輸出選擇器的輸出端與4個中間值寄存器Zb0 Zb3和2個三級輸入寄存 器連接,該4個中間值寄存器的輸出同時也作為二級運算選擇器的輸入。
第二級反變換單元的運算由idctcnt—se[l: 0]的值(從0到3,相當(dāng)于第4 拍到第7拍)來控制,每一個值對應(yīng)的運算如下所示
當(dāng)idctcnt—se[l: 0]=0時,
當(dāng)idctcnt_se[l: 0]= 1時,
當(dāng)idctcnt—se[l: 0]=2時:
當(dāng)idctcnt—se[l: 0]=3時:
5 min 22 = di'"c
'幼min21 = ^r'"62 幼min 22 =
■smW"22 = &>k/2
$Mmin21 = Z>0 sm min 22 = 63
s"W"22 = Z>3
min 22 ::■ 62 6/"21 = 61
式中的rffna, dwc, cft> //, Z械ZW, 分別表示相應(yīng)寄
存器中的數(shù)值。
另外,下面將涉及到的中間值有
61 = 13爿—13C
62 = 75-17/)
存儲這些中間值的寄存器直接用這些值的符號來命名 請參照圖4,第二級流水線的工作過程是
在第四拍,idctcnt—se[l: 0]=0,執(zhí)行以下處理
二級運算選擇器將寄存器dina的輸出連通到該二級運算選擇器的輸出 sumain21和subain21,將寄存器dinc的輸出連通到該二級運算選擇器的輸出 sumain22和subain22,在二級加法器中完成dina和dinc的加法運算,結(jié)果鎖 存的二級加法寄存器中,值為dina+dinc=13A+13C;同時在二級減法器中完 成dina和dinc的減法運算,結(jié)果鎖存的二級減法寄存器中,值為 dina-dinc=13A-13C。
在第五拍,idctcnt—se[l: 0]=1,執(zhí)行以下處理
二級輸出選擇器將二級加法寄存器的輸出suma—2連通到寄存器Zb0,將 二級減法寄存器的輸出sumb—2連通到寄存器Zbl,即將二級加法寄存器在上 一拍鎖存的值13A+13C寫入寄存器ZbO,將二級減法寄存器在上一拍鎖存的 值13A-13C寫入寄存器Zbl。
同時,二級運算選擇器將寄存器dinb2和寄存器dindl的輸出分別連通到 該二級運算選擇器的輸出sumain21和sumain21,將寄存器dinbl和寄存器 dind2的輸出連通到該二Mit算選擇器的輸出subain22和subain22,在二級加 法器中完成dinb2和dindl的加法運算,結(jié)果鎖存的二級加法寄存器中,值為 dinb2+dindl=17B+7D;同時在二級減法器中完成dinbl減dind2的運算,結(jié)果 鎖存的二級減法寄存器中,值為dinbl-dind2=7B-17D。
在第六拍,idctcnt_se[l: 0]=2,執(zhí)行以下處理
二級輸出選擇器將二級加法寄存器的輸出suma—2連通到寄存器Zb3,將 二級減法寄存器的輸出suml^2連通到寄存器Zb2,即將二級加法寄存器上一 拍鎖存的值17B+7D寫入寄存器Zb3,將二級減法寄存器上一拍鎖存的值 7B-17D寫入寄存器Zb2。
同時,二級運算選擇器將寄存器ZbO的輸出分別連通到該二級運算選擇 器的輸出sumain21和subain21,將寄存器Zb3的輸出連通到該二級運算選擇 器的輸出sumain22和subain22,在二^Jp法器中完成b0和b3的加法運算, 結(jié)果鎖存的二級加法寄存器中,值為bO+b3=13A+17B+13C+7D;同時在二級 減法器中完成b0減b3的運算,結(jié)杲鎖存的二級減法寄存器中,值為 bO-b3=13A-17B+13C-7D。
在第七拍,idctcnt_se[l: 0]=3,執(zhí)行以下處理
二級運算選擇器將寄存器Zbl的輸出分別連通到該二級運算選擇器的輸 出sumain21和subain21,將寄存器Zb2的輸出連通到該二級運算選擇器的輸 出sumain22和subain22,在二級加法器中完成bl和b2的加法運算,結(jié)果鎖 存的二級加法寄存器中,值為bl+b2=13A+7B-13C-17D;同時在二級減法器 中完成bl減b2的運算,結(jié)果鎖存在二級減法寄存器中,值為 M-b2=13A-7B-13C+17D。
二級輸出選擇器將二級加法寄存器的輸出suma—2連通到三級輸出選擇 器,將二級減法寄存器的輸出sumb—2連通到寄存器Od,即將二級加法寄存 器上一拍鎖存的值13A+17B+13C+7D (等于a,)輸出到三級輸出選擇器,將 二級減法寄存器上一拍鎖存的值13A-17B+13C-7D寫入寄存器Od。
至此,第二級反變換單元就基本完成了對一組4點的第二級反變換處理, 第二級反變換處理還包括在第八拍,將二級加法寄存器和二級減法寄存器中 的值取出,即二級輸出選擇器將二級加法寄存器的輸出suma—2連通到三級 輸出選擇器,將二級減法寄存器的輸出suba_2連通到寄存器Oc,即將二級 加法寄存器上一拍鎖存的值13A+7B-13C-17D (等于b,)輸出到三級輸出選 擇器,將二級減法寄存器上一拍鎖存的值13A-7B-13C+17D寫入寄存器Oc。 但從第八拍開始,已經(jīng)可以開始另一組4點的反變換運算了 。
第三級反變換單元PIPE3和第四級反變換單元PIPE4的硬件結(jié)構(gòu)如圖3 所示,這兩級反變換單元主要是完成一個串并轉(zhuǎn)換的工作。其中第三級反變 換單元包括2個三級輸入寄存器、 一個三級輸出選擇器和一個三級計數(shù)器 idctcnt—se, 2個三級輸入寄存器即寄存器Oc和寄存器Od的輸出作為該三級 輸出選擇器的輸入,該三級輸出選擇器的另兩路輸入直接與二級輸出選擇器 的輸出相連。該三級輸出選擇器的控制端連接到三級計數(shù)器idctcnLse的低二 位idctcnt一se[l:0]。該三級輸出選擇器的一路輸出則連接到第四級的四級輸出 寄存器。三級計數(shù)器idctcnt_se比一級計數(shù)器idctcnt延遲6拍啟動,從第7 拍開始計數(shù),即表示從數(shù)據(jù)輸入開始第六拍后四點一維整數(shù)反變換運算完成,
結(jié)果開始輸出。
第三級反變換單元的處理由idctcntjh[l: O]的值(從0到3,相當(dāng)于第7 拍到第10拍)來控制,其工作流程如下
在第七拍,idctcntjh[l: 0]=0,執(zhí)行以下處理
二級輸出選擇器將二級加法寄存器的輸出suma_2直接連通到三級輸出 選擇器,而三級輸出選擇器將該路輸入直接連通到四級輸出寄存器,即將a, 的值寫入四級輸出寄存器。
在第八拍,idctcnt—th[l: 0]=1,執(zhí)行以下處理
二級輸出選擇器將二級加法寄存器的輸出suma_2直接連通到三級輸出 選擇器,而三級輸出選擇器將該路輸入直接連通到四級輸出寄存器,即將b, 的值寫入四級輸出寄存器。
在第九拍,idctent—th[l: 0]=2,執(zhí)行以下處理
三級輸出選擇器將寄存器Oc的輸出連通到四級輸出寄存器,即將c,的 值寫入四級輸出寄存器。
在第十拍,idctcnt—th[l: 0]=3,執(zhí)行以下處理
三級輸出選擇器將寄存器Od的輸出連通到四級,出寄存器,即將d,的 值寫入四級輸出寄存器。
至此,第三級反變換單元就完成了對一組4點的第三級反變換處理。而 第四級反變換單元是一個寄存器,其值依次為a,、 b,、 c,和d,,由后續(xù)裝置 將這些反變換的輸出數(shù)值依次讀出。從第九拍開始,第三級反變換單元可以 進4亍下一組的4點反變換處理了 。
一維運算需要進行四組4點的整數(shù)反變換。圖5中表示連續(xù)組數(shù)據(jù)輸入 時的流水時序圖。由圖可知, 一組4點的整數(shù)反變換需要10拍,而由于實現(xiàn) 了流水式工作且每一步運算都緊密銜4妄,進行一次4組16點的整數(shù)反變換總 共只需要22拍,速度可以滿足要求。同時從硬件結(jié)構(gòu)看,只使用了很少的運 算單元、選擇器和寄存器,沒有乘法等復(fù)雜運算,成本也很低。
權(quán)利要求
1、一種離散余弦變換的整數(shù)反變換裝置,用于依照下式對一組4個輸入值A(chǔ),B、C和D進行離散余弦變換的整數(shù)反變換運算,得到4個輸出值a′,b′,c′和d′,其中的系數(shù)P0,P1,P2為整數(shù)a′=P0A+P1B+P0C+P2Db′=P0A+P2B-P0C-P1Dc′=P0A-P2B-P0C+P1Dd′=P0A-P1B+P0C-P2D其特征在于,該裝置包括第一級、第二級、第三級和第四級反變換單元,采用流水線方式對多組輸入值進行處理,每一組輸入值的整數(shù)反變換用10拍完成,以下計為第1拍到第10拍,每拍為一時鐘周期,其中第一級反變換單元用于在第1~4拍,根據(jù)依次輸入的A、B、C和D分別計算出輸入值的倍數(shù)值P0A、P1B和P2B、P0C、P1D和P2D并鎖存,在第2~5拍將所述倍數(shù)值依次輸出到第二級反變換單元鎖存,從第5拍開始對下一組輸入值的處理;第二級反變換單元用于在第4~5拍,對鎖存的倍數(shù)值做加、減運算得到4個中間值b0,b1,b2,b3,b0=P0A+P0C,b1=P0A-P0C,b2=P2B-P1D,b3=P1B+P2D;在6~7拍對4個中間值做加、減運算,得到4個輸出值a′,c′,b′,d′,a′=b0+b3,d′=b0-b3,b′=b1+b2,c′=b1-b2,第7拍將a′,d′輸出到第三級反變換單元,在第8拍將b′,c′輸出到第三級反變換單元并開始對下一組輸入值的處理;第三級反變換單元用于在第7~10拍依次將4個輸出值a′,b′,c′,d′輸出到第四級反變換單元,從第10拍的下一拍開始對下一組輸入值的處理;第四級反變換單元用于鎖存輸出值a′,b′,c′和d′,由后續(xù)裝置依次讀出。
2、 如權(quán)利要求l所述的整數(shù)反變換裝置,其特征在于所述第一級反變換單元包括一級輸入寄存器、 一級運算單元、 一級輸出 寄存器、 一級輸出選擇器和一級計數(shù)器,其中所述一級計數(shù)器用于對時鐘周期進行計數(shù),向所述一級運算單元和一級 輸出選擇器輸出在/。,/,A,/3之間循環(huán)計數(shù)的計數(shù)值,第一次循環(huán)計數(shù)值 /。,/,,/2,A對應(yīng)于對第一組輸入值進行整數(shù)反變換的第1~4拍;所述一級輸入寄存器用于鎖存依次輸入的^ 、 S > C和Z)并輸出到所述一 級運算單元;所述一級運算單元,用于在計數(shù)值為/。時對乂進行運算得到i^,在計數(shù) 值為/,時對萬進行運算得到《5和尸25 ,在計數(shù)值為/2時對C進4亍運算得到尸。C , 在計數(shù)值為/3時對Z)進行運算得到和尸22),每拍的運算結(jié)果在該拍存入所 述一級輸出寄存器;所述一級輸出寄存器用于在各拍分別鎖存倍數(shù)值/^、 7^和尸25、尸。C、 《Z)和gZ)并輸出到所述一級輸出選擇器;所述一級輸出選擇器用于在計數(shù)值為/,時,將i^4選通輸出,在計數(shù)值為 /2時,將/^和尸25選通輸出,在計數(shù)值為/3時,將尸。C選通輸出,在計數(shù)值為 /。時,將/^)和尸2/)選通輸出,以上倍數(shù)值均輸出到第二級反變換單元。
3、如權(quán)利要求2所述的整數(shù)反變換裝置,其特征在于,所述離散余弦變換的整數(shù)反變換為RV整數(shù)反變換,尸。=13,《=17,P2 = 7; 所述一級運算單元包括第一移位運算單元、第二移位運算單元、第三移位運 行單元、 一級運算選擇器、 一級加法器和一級減法器,所述一級輸出寄存器 包括一級加法寄存器和一級減法寄存器,其中所述第一移位運算單元用于將輸入值左移3位后輸出;所述第二移位運算單元用于將輸入值左移2位并加上該輸入值后輸出;所述第三移位運算單元用于將輸入值左移4位后輸出;所述一級運算選擇器用于在計數(shù)值為/。和/2時,將第 一和第三移位運算單元的輸出選通為一級加法器的兩個輸入,在計數(shù)值為A和/3時,將第三移位 運算單元和一級輸入寄存器的輸出選通為一級加法器的兩個輸入,同時將第一移位運算單元和一級輸入寄存器的輸出選通為一級減法器的兩個輸入; 所述一級加法器用于將兩個輸入相加后寫入一級加法寄存器,在計數(shù)值為/。,/,,/2,/3時結(jié)果分別為13乂,17B,13C,17Z);所述一級減法器用于將第一移位運算單元的輸出減去一級輸入寄存器的 輸出后寫入一級加法寄存器,在計數(shù)值為/,,/3時結(jié)果分別為7萬,7D;所述一級加法寄存器和一級減法寄存器用于鎖存寫入的數(shù)值并輸出到一 級輸出選擇器。
4、如權(quán)利要求1或2或3所述的整數(shù)反變換裝置,其特征在于 所述第二級反變換單元包括至少6個二級輸入寄存器、二級運算選擇器、二級加法器、二級減法器、二級加法寄存器、二級減法寄存器、二級輸出選擇器、4個中間值寄存器和二級計數(shù)器,其中所述二級計數(shù)器比一級計數(shù)器延遲3拍計數(shù),用于向所述二級運算選擇 器和二級輸出選擇器輸出在d4之間循環(huán)計數(shù)的計數(shù)值;所述6個二級輸入寄存器用于分別鎖存第一級反變換單元輸出的倍數(shù)值 尸。爿、/^和尸2萬、尸。C、《"和尸2£>并輸出到二級運算選擇器;所述二級運算選擇器與所述6個二級輸入寄存器和4個中間值寄存器相 連,用于在計數(shù)值為/。'時,將/^和P。C選通為二級加法器以及二級減法器的 兩個輸入,在計數(shù)值為々時,將/^和尸2£>選通為二級加法器的兩個輸入,將尸25 和i^)選通為二級減法器的兩個輸入,在計數(shù)值為/2'時,將M)和63選通為二 級加法器以及二級減法器的兩個輸入,在計數(shù)值為/3'時,將61和62選通二級 加法器以及二級減法器的兩個輸入;所述二級加法器用于將兩個輸入相加后寫入二級加法寄存器,在計數(shù)值 為/。',/:,/2',A'時結(jié)果分別為6。A,a',6';所述二級減法器用于將兩個輸入相減后寫入二級減法寄存器,在計數(shù)值 為/。,/,',/;,A'時結(jié)果分別為、62 ;所述二級加法寄存器和二級減法寄存器用于鎖存寫入的數(shù)值并輸出到二 級輸出選擇器;所述二級輸出選擇器用于在計數(shù)<|[為/。時,將60和M選通輸出到中間值 寄存器,在計數(shù)值為/,'時,將M和62選通輸出到中間值寄存器,在計數(shù)值為/2' 時,將a'和J'選通輸出到第三級反變換單元,在計數(shù)值為/3'時,將6'和c'選通輸出到第三級反變換單元; 所述4個中間值寄存器用于分別鎖存所迷4個中間值M),M,62,63并輸出 到所述二級運算選擇器。
5、 如權(quán)利要求4所述的整H變換裝置,其特征在于所述第三級反變換單元包括至少2個三級輸入寄存器、三級輸出選擇器 和三級計數(shù)器,所述第四級反變換單元包括一四級輸出寄存器,其中所述三級計數(shù)器比一級計數(shù)器延遲6拍計數(shù),用于向所述三級輸出選擇 器輸出在/。',/,',/2',/3'之間循環(huán)計數(shù)的計數(shù)值;所述2個三級輸入寄存器用于分別鎖存輸出值c', W;所述三級輸出選擇器用于在計數(shù)值為/。'和/,'時,分別將二級反變換單元 輸出的"'和6'連通到第四級反變換單元的四級輸出寄存器,在計數(shù)值為/2'和 /3'時,分別將鎖存的輸出值c', J'連通到第四級反變換單元的四級輸出寄存 器。
6、 如權(quán)利要求5所述的整M變換裝置,其特征在于所述計數(shù)值/。,^/"/3、計數(shù)值/。',/,',/2',/3'和計數(shù)值/。',/,',/2',/3'均為0,1,2,3, 所述一級、二級和三級計數(shù)值均為4位計數(shù)器,用于對4組輸入進行循環(huán)計 數(shù),其中的低2位輸出到相應(yīng)的選擇器和運算器。
7、 一種離散余弦變換的整數(shù)反變換運算裝置,用于依照下式對一組4 個輸入值^、萬、C和D進行離散余弦變換的整數(shù)反變換運算,得到4個輸出 值a',6',c'和d',其中的系數(shù)尸。,《,戶2為整數(shù)"'=尸04 +《萬+尸。C +尸2£) 6'=尸0乂 +戶2£ —尸qC — /|£> c' = i^ -尸2萬-尸。C + i^D d' = P"-《5 + P0C - i^Z)其特征在于,該裝置包括第一級、第二級、第三級和第四級反變^:單元, 采用流水線方式對多組輸入值進行處理,其中對每組輸入值的處理如下第一級反變換單元用于對依次輸入的爿、萬、C和D,分別計算出倍數(shù)值 尸^4、《萬和尸2£、尸。C、《£>和尸2£>并鎖存,然后將所述倍數(shù)值依次輸出到第二級反變換單元;第二級反變換單元用于鎖存輸入的倍數(shù)值并做加、減運算得到4個中間《直60,61,62,M , 60 =尸04 +尸001 =戶"—戶。C,62:尸25 —/^),63 = /^ +尸2";然后對 4個中間<直{故力口、;咸運算,得至1) 4個輸出j直a' ,c',6',d', a' = 60+M, d' = 60—63, ;6' = 61+62, c' = W-62,再將a' ,c',6',rf'輸出到第三級反變換單元;第三級反變換單元用于依次將4個輸出值a' ,6',c', W輸出到第四級反變 換單元;第四級反變換單元用于鎖存輸出值a',6',c'和W,由后續(xù)裝置依次讀出。
8、 如權(quán)利要求6所述的整M變換裝置,其特征在于所述第一級反變換單元包括一級輸入寄存器、 一級運算單元、 一級輸出 寄存器、 一級輸出選擇器和一級計數(shù)器,所述第二級反變換單元包括6個二 級輸入寄存器din^ dinbl, dinb2, dinc,dindl,dind2,其中所述一級計數(shù)器用于對時鐘周期進行計數(shù),向所述一級運算單元和一級 輸出選擇器輸出從小到大循環(huán)計數(shù)的4個計數(shù)值/。,/,,/2,/;;所述一級輸入寄存器用于鎖存輸入值并輸出到所述一級運算單元;所述一級運算單元,用于在輸入計數(shù)值為/。,/2時完成對輸入值的"乘A" 運算,在輸入計數(shù)值為^,/3時完成對輸入值的"乘^和乘S"運算,得到的倍 數(shù)值存入所述一級輸出寄存器;所述一級輸出寄存器用于鎖存輸入的倍數(shù)值并輸出到 一級輸出選擇器;所述一級輸出選擇器用于在計數(shù)值為/。,A,/2,/;時,將一級輸出寄存器在 上一時鐘周期鎖存的"乘戶。"或"乘《"運算結(jié)果分別連通到二級輸入寄存 器dina,dinbl,dinc,dindl,在計數(shù)值為/,,/3時,將一級輸出寄存器在上一時鐘 周期鎖存的"乘g"運算結(jié)果分別連通到二級輸入寄存器dinb2,dind2。
9、 如權(quán)利要求7所述的整數(shù)反變換裝置,其特征在于所述整數(shù)反變換運算為RV解碼時采用的整氣良變換運算,戶。=13,^ = 17, 戶2=7,所述一級運算單元包括第一移位運算單元、第二移位運算單元、笫三 移位運行單元、 一級運算選擇器、 一級加法器和一級減法器,所述一級輸出寄存器包括一級加法寄存器和一級減法寄存器,其中所述第一移位運算單元用于將輸入值左移3位后輸出;所述第二移位運算單元用于將輸入值左移2位并加上該輸入值后輸出;所述第三移位運算單元用于將輸入值左移4位后輸出;所述一級運算選擇器用于在計數(shù)值為/。,/2時,將第一和第三移位運算單 元的輸出選通為一級加法器的兩個輸入,在計數(shù)值為/,,/3時,將第三移位運 算單元和一級輸入寄存器的輸出選通為一 口法器的兩個輸入,同時將第一 移位運算單元和一級輸入寄存器的輸出選通為一級減法器的兩個輸入;所述一級加法器用于將兩個輸入相加后寫入一級加法寄存器;所述一級減法器用于將第一移位運算單元的輸出減去一級輸入寄存器的 輸出后寫入一級加法寄存器;所述一級加法寄存器和一級減法寄存器用于鎖存寫入的數(shù)值并輸出到一 級輸出選擇器。
10、如權(quán)利要求8所述的整數(shù)反變換裝置,其特征在于所述第二級反變換單元包括6個二級輸入寄存器dina, dinbl, dinb2, dinc, dindl,dind2, 二級運算選擇器、二級加法器、二級減法器、二級加法寄存器、 二級減法寄存器、二級輸出選擇器、4個中間值寄存器ZbO,Zbl,Zb2,Zb3和 二級計數(shù)器;所述第三級反變換單元包括2個三級輸入寄存器Oc, Od、三級 輸出選擇器和三級計數(shù)器;第四級反變換單元包^"四級輸出寄存器,其中所述二級計數(shù)器用于向所述二級運算選擇器和二級輸出選擇器輸出從小 到大循環(huán)計數(shù)的四個計數(shù)值/。',/,',/2',/3';所述6個二級輸入寄存器dina, dinbl, dinb2, dinc, dindl,dind2用于分別鎖 存第一級反變換單元輸出的6個倍數(shù)值;所述二級運算選擇器用于在計數(shù)值為/。時,將寄存器dina和寄存器dinc 的輸出與二射口法器及二級減法器的輸入選通,計數(shù)值為//時,將寄存器dinbl 和寄存器dind2的輸出與二級加法器的輸入連通,同時將寄存器dinb2和寄存 器dindl的輸出與二級減法器的輸入連通,計數(shù)值為/2'時,將寄存器ZbO和寄存器Zbl的輸出與二級加法器及二級減法器的輸入選通,計數(shù)值為/3時, 將寄存器Zbl和寄存器Zb2的輸出與二級加法器及二級減法器的輸入選通;所述二級加法器用于將兩個輸入相加后寫入二級加法寄存器;所述二級減法器用于將兩個輸入相減后寫入二級減法寄存器,其中以寄 存器dina,寄存器dinb2,寄存器ZbO,寄存器Zbl的輸出為被減數(shù);所述二級加法寄存器和二級減法寄存器用于鎖存寫入的數(shù)值并輸出到二 級輸出選擇器;所述二級輸出選擇器用于在計數(shù)值為/。,/"^,/;'時,分別將二級加法寄存 器上一時鐘周期鎖存的值選通輸出到寄存器ZbO,寄存器Zb3,三級輸出選擇 器和三級輸出選擇器,分別將二級減法寄存器上一時鐘周期鎖存的值選通輸 出到寄存器ZM,寄存器Zb2,寄存器Oc,寄存器Od;所述三級計數(shù)器用于向所述三級輸出選擇器輸出從小到大循環(huán)計數(shù)的四 個計數(shù)值/。',C/2',/3';所述2個三級輸入寄存器Oc, Od分別用乎對輸入值進行鎖存并輸出到三 級輸出選擇器;所述三級輸出選擇器用于在計數(shù)值為/。'和時,將從二級輸出選擇器直 接輸出的值連通到所述四級輸出寄存器,在計數(shù)值為/2'和/3'時,分別將寄存 器Oc和寄存器Od的輸出連通到所述四級輸出寄存器。
11、 一種離散余弦變換的整數(shù)反變換方法,用于依照下式對一組4個輸 入值A(chǔ)、 B、 C和D進行離散余弦變換的整M變換,得到4個輸出值fl',6',c' 和rf',其中的尸。,《,g為整數(shù):<formula>formula see original document page 8</formula>其特征在于,通過四級流水完成對多組輸入值的整數(shù)反變換,從接收到 第一個輸入值A(chǔ)開始,執(zhí)行以下處理第一級在第1~4拍,根據(jù)依次輸入的A、 B、 C和D計算出A爿, i^,i^,尸。C,i^和尸力,在第2 5拍輸出到第二級鎖存,且從第5拍開始對 下一組輸入值的處理;第二級在第4 7拍,先做加、減運算Z 0 =尸04, M =尸"-尸。C,62 =尸2萬-《Z), 63 = ^5+尸2/)并鎖存得到的中間值60,61,62,63 ,再做力口、減運算"'=60+63, 6' = 61 + 62, c' = 61-Z 2,rf' = 60-63,第7拍將a' ,d'輸出到第三級,在第8拍將 6',c'輸出到第三級且開始對下一組輸入值的處理;第三級用于在第7 10拍依次將"',6',c', i輸出到第四級,且從第11拍 開始對下一組輸入值的處理;第四級反變換單元鎖存輸出值"',6',c'和rf',由后續(xù)裝置讀出。
12、 如權(quán)利要求7所述的整數(shù)反變換方法,其特征在于所述第一級在第1拍根據(jù)輸入值A(chǔ),計算出i^4并鎖存;第2拍根據(jù)輸入 值B,計算出i^和i^并鎖存,同時將P^4輸出到第二級;第3拍根據(jù)輸入值 C,計算出戶。C并鎖存,同時將i^和i^輸出到第二級;第4拍根據(jù)輸入值D, 計算出A"和P2£>并鎖存,同時將P。C輸出到第二級;第5拍將A"和尸2£ 輸出 到第二級。
13、 如權(quán)利要求8所述的整數(shù)反變換方法,其特征在于所述第二級在第4拍,對輸入的P3和戶。C作加法和減法運算,得到兩個 中間值60和61并鎖存,其中60 =尸"+戶。<:,61 =尸。4-《C;在第5拍,對輸入的 《5、尸2萬、7^和尸2/)作力口法和減法運算,得到另兩個中間值62和M并鎖存, 其中62 =尸2萬-i^Z), 63 = i^ + i>2Z);在第6拍,對得到的中間值60和M作加法 和減法運算,得到輸出值"'=60 + 63, c/'-60-63并鎖存;在第7拍,對得到的 中間值60和M作加法和減法運算,得到輸出值6' = 61 + 62, c'-W-62并鎖存, 同時將a'和&輸出到第三級;在第8拍,將6'和c'輸出到第三級。
14、 如權(quán)利要求9所述的整數(shù)反變換方法,其特征在于所述第三級在第7拍將輸入的a'直接輸出到第四級,同時將輸入的6'鎖 存;在第8拍將輸入的6'直接輸出到第四級,同時將輸入的c'鎖存;在第9 拍,將鎖存的c'輸出到第四級;在第10拍,將鎖存的c/'輸出到第四級。
15、如權(quán)利要求7所述的整數(shù)反變換方法,其特征在于所述離散余弦變換的整數(shù)反變換為用于RV解碼器的離散余弦變換的RV 整數(shù)反變換,所述尸。=13,/ = 17,尸2 = 7;所述第一級通過做兩級運算來得到所述 ,175,75,13C ,17/)和7Z),對輸入值A(chǔ),在第 一級先做左移3位運算得到8A,;以及左移2位再加A的運算得到5A,然后在第二級做加法運算得到13A,對 輸入值B,在第一級先做左移4位運算、左移3位運算得到16B和犯,然后 在第二級對16B和B做加法運算,對8B和B做減法運算得到7B,對輸入值 C,第一級先做左移3位運算得到8C,以及左移2位再加C的運算得到5C, 然后在第二級做加法運算得到13C,對輸入值D,在第一級先做左移4位運'算、左移3位運算得到16D和8D,然后在第二級對16D和D i故加法運算, 對8D和D做減法運算得到7D。
全文摘要
一種離散余弦變換的整數(shù)反變換裝置,包括第一至第四級反變換單元,采用流水線方式對多組輸入值進行處理,第一級反變換單元在第1~4拍,計算出輸入值的倍數(shù)值P<sub>0</sub>A、P<sub>1</sub>B和P<sub>2</sub>B、P<sub>0</sub>C、P<sub>1</sub>D和P<sub>2</sub>D并鎖存,在第2~5拍將倍數(shù)值依次輸出到第二級反變換單元鎖存;第二級反變換單元用于先對鎖存的倍數(shù)值做加、減運算得到4個中間值,再在6~7拍對4個中間值做加、減運算得到4個輸出值,在第7~8拍輸出到第三級反變換單元,第三級反變換單元在第7~10拍依次將4個輸出值輸出到第四級反變換單元。本發(fā)明可以使用較少的硬件資源,實現(xiàn)較快的運算速度。
文檔編號H04N7/30GK101355701SQ20081011977
公開日2009年1月28日 申請日期2008年9月9日 優(yōu)先權(quán)日2008年9月9日
發(fā)明者萬紅星 申請人:北京中星微電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
安平县| 姜堰市| 唐河县| 上高县| 鄂托克前旗| 太仓市| 曲靖市| 绵阳市| 高邮市| 安溪县| 房山区| 正定县| 佳木斯市| 华坪县| 垫江县| 巴青县| 赣榆县| 呼伦贝尔市| 潜江市| 安陆市| 萍乡市| 高要市| 克东县| 西乡县| 垦利县| 贺州市| 安化县| 苏尼特左旗| 上栗县| 长汀县| 大庆市| 横峰县| 定日县| 威信县| 娱乐| 乾安县| 专栏| 浪卡子县| 项城市| 安溪县| 米易县|