午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

高精度的無(wú)乘法器的數(shù)字余弦變換電路及其變換方法

文檔序號(hào):7613127閱讀:254來(lái)源:國(guó)知局
專利名稱:高精度的無(wú)乘法器的數(shù)字余弦變換電路及其變換方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種無(wú)乘法器的數(shù)字余弦變換電路及其變換方法。
背景技術(shù)
大多數(shù)靜態(tài)圖像壓縮標(biāo)準(zhǔn)(如JPEG)和動(dòng)態(tài)圖像壓縮標(biāo)準(zhǔn)(如MPEG1,MPEG2,MPEG4,H263等)編碼過(guò)程中,首先采用數(shù)字余弦變換(Digital Cosine Transform,DCT)模塊對(duì)原始圖像數(shù)據(jù)(或運(yùn)動(dòng)估計(jì)后的圖像數(shù)據(jù))進(jìn)行時(shí)域到頻域的變換,然后采用量化器對(duì)頻域信號(hào)(即DCT的結(jié)果)進(jìn)行量化,最后對(duì)量化后的頻域信號(hào)進(jìn)行壓縮。在此過(guò)程中,量化器完成將頻域信號(hào)除以特定的量化系數(shù)的操作,通常采用將頻域信號(hào)乘以量化系數(shù)的倒數(shù)來(lái)實(shí)現(xiàn)。
解碼過(guò)程為首先將壓縮后的碼流解壓得到量化后的頻域信號(hào),然后對(duì)其反量化得到正確的頻域信號(hào)(即DCT的結(jié)果),最后由反向數(shù)字余弦變換(Invert DigitalCosine Transform,IDCT)模塊生成原始圖像數(shù)據(jù)(或運(yùn)動(dòng)估計(jì)后的圖像數(shù)據(jù))。在此過(guò)程中,量化器將量化后的頻域信號(hào)乘以特定的量化系數(shù),以恢復(fù)正確的頻域信號(hào)。
總之,DCT(及IDCT)和量化器是圖像壓縮(解壓)過(guò)程中最重要的計(jì)算步驟。設(shè)計(jì)一種便于硬件實(shí)現(xiàn)的低復(fù)雜度的DCT(及IDCT)和量化器,對(duì)提高系統(tǒng)性能、降低系統(tǒng)功耗、降低系統(tǒng)成本具有重要意義。
靜態(tài)圖像壓縮標(biāo)準(zhǔn)和動(dòng)態(tài)圖像壓縮標(biāo)準(zhǔn)中使用的DCT算法為8x8二維DCT,如下所示F(u,v)=14C(u)C(v)Σx=7Σ0y=07f(x,y)cos(2x+1)uπ16cos(2y+1)vπ16]]>u,v,x,y=0,1,2,…7x,y為空域坐標(biāo),u,v為頻域坐標(biāo)C(u),C(v)=12foru,v=01otherwise]]>IDCT算法為8x8二維IDCT,如下所示
f(x,y)=14Σu=7Σ0v=07C(u)C(v)F(u,v)cos(2x+1)uπ16cos(2y+1)vπ16]]>在硬件實(shí)現(xiàn)中,通常將8x8二維DCT可分解為16次一維8點(diǎn)DCT(如圖1所示),一維DCT、IDCT如下F(u)=12C(u)Σx=07f(x)cos(2x+1)uπ16]]>f(x)=12Σu=07C(u)F(u)cos(2x+1)uπ16]]>可見(jiàn),上述DCT、IDCT公式中包含大量的乘法,現(xiàn)有的各種軟件算法和硬件電路結(jié)構(gòu)旨在減少乘法的次數(shù),但過(guò)于復(fù)雜的算法不利于硬件電路實(shí)現(xiàn)。此外,DCT和IDCT使用同一結(jié)構(gòu)也是硬件電路實(shí)現(xiàn)需要考慮的重要因素。
比如,已有的一維DCT、IDCT電路通常采用圖2和圖3所示的分解方案,以下根據(jù)提出者分別稱為Chen方案和Loeffler方案。這兩個(gè)方案不僅減少了所需的乘法的次數(shù),而且具有良好的結(jié)構(gòu)對(duì)稱性便于用硬件電路實(shí)現(xiàn),尤其是DCT和IDCT可使用同一結(jié)構(gòu)實(shí)現(xiàn)。Chen方案和Loeffler方案的核心計(jì)算單元為交叉乘加單元電路(如圖4所示),該單元電路包含四個(gè)乘法和兩個(gè)加法(out1=in1*a+in2*b;out2=in2*a-in1*b)。該計(jì)算單元電路的逆運(yùn)算正是該計(jì)算單元電路本身,所以Chen方案和Loeffler方案的DCT和IDCT可使用同一電路實(shí)現(xiàn)。
許多已有的方案用幾個(gè)串聯(lián)的移位和加減法(如圖5所示)來(lái)替代圖4所示的交叉乘加單元(out1=in1*p1+in2;out2=in1*(1-p1*p2)-in2*p2),并通過(guò)選擇二進(jìn)制表達(dá)位數(shù)盡可能少的p值,用加法來(lái)替代乘法。由于p取值的限制,圖5的輸出還需其乘以一個(gè)特定的比例系數(shù)s以得到和圖4相同的結(jié)果。“乘以一個(gè)特定的比例系數(shù)s”的操作可在一維DCT變換的最后進(jìn)行(如圖6所示)。進(jìn)一步,可將兩次“乘以一個(gè)特定比例系數(shù)s”的操作合并到8x8二維DCT的最后進(jìn)行(如圖7所示)。這樣,這類方案就取消了大部分乘法計(jì)算。
通常,靜態(tài)圖像壓縮標(biāo)準(zhǔn)和動(dòng)態(tài)圖像壓縮標(biāo)準(zhǔn)中,DCT變換的結(jié)果將送入量化器,在量化器中除以量化系數(shù),即乘以量化系數(shù)的倒數(shù)。所以,可將“乘以一個(gè)總比例系數(shù)”與量化器中“乘以量化系數(shù)的倒數(shù)”合并為一次乘法,通常這種類型的DCT變換又被稱為“無(wú)乘法器DCT變換”或“帶比例系數(shù)的DCT變換”(如圖8所示)。
但是,在使用幾次串聯(lián)的移位和加減法來(lái)替代一個(gè)乘法的方案計(jì)算精度不高。如果要達(dá)到IEEE Std 1180-1990標(biāo)準(zhǔn)的要求,所需的加減法可能大于節(jié)約下來(lái)的乘法。此外,串聯(lián)的移位和加減法使計(jì)算的步驟增多,造成計(jì)算時(shí)延增大,不利于用硬件實(shí)現(xiàn)高速DCT電路。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種高精度的無(wú)乘法器的硬件電路,僅用很少的移位器和加法器來(lái)代替乘法器,并可達(dá)到很高的計(jì)算精度。
為了解決上述技術(shù)問(wèn)題,本發(fā)明所采用的技術(shù)方案是一種高精度的無(wú)乘法器的數(shù)字余弦變換電路,其特征在于,包括電路連接的第一單元電路、第二單元電路、寄存器;其中,所述的第一單元電路由4個(gè)第一加減法器構(gòu)成,包括4個(gè)輸入端和4個(gè)輸出端;所述的第二單元電路由16個(gè)移位器和12個(gè)加減法器組成,每?jī)蓚€(gè)移位器后均對(duì)應(yīng)連接一第二加減法器,每?jī)蓚€(gè)第二加減法器后還均對(duì)應(yīng)連接一第三加減法器,每四個(gè)移位器共用一個(gè)輸入端,每一個(gè)第三加減法器均設(shè)有一個(gè)輸出端;所述第一單元電路、第二單元電路的輸入端、輸出端均與寄存器相連接。
進(jìn)一步地,本發(fā)明還提供一種高精度的無(wú)乘法器的數(shù)字余弦變換和量化方法,使得h2/h6≈C6/C2,h3/h5≈C3/C5,h1/h7≈C1/C7和h4/h0≈C4/C0,其中Ck=cos(k∏/16)(k=0,1,,…,7),各h取值為為自然數(shù),其二進(jìn)制表達(dá)需要的位數(shù)盡可能少,并且其中包含的“1”或“-1”的個(gè)數(shù)最少;計(jì)算過(guò)程包括如下步驟步驟1、用兩個(gè)移位器和一個(gè)加減法器來(lái)代替一個(gè)乘法器,以完成帶比例系數(shù)s的數(shù)字余弦變換;步驟2、將變換輸出結(jié)果在量化器中乘上L,其中L為s除以量化系數(shù),得到量化后的DCT變換結(jié)果。
進(jìn)一步地,本發(fā)明的高精度的無(wú)乘法器的反向數(shù)字余弦變換電路的結(jié)構(gòu)與所述數(shù)字余弦變換電路結(jié)構(gòu)相同,其包括電路連接的第一單元電路、第二單元電路、寄存器;其中,所述的第一單元電路由4個(gè)第一加減法器構(gòu)成,包括4個(gè)輸入端和4個(gè)輸出端;
所述的第二單元電路由16個(gè)移位器和12個(gè)加減法器組成,每?jī)蓚€(gè)移位器后均對(duì)應(yīng)連接一第二加減法器,每?jī)蓚€(gè)第二加減法器后還均對(duì)應(yīng)連接一第三加減法器,每四個(gè)移位器共用一個(gè)輸入端,每一個(gè)第三加減法器均設(shè)有一個(gè)輸出端;所述第一單元電路、第二單元電路的輸入端、輸出端均與寄存器相連接。
進(jìn)一步地,本發(fā)明的高精度的無(wú)乘法器的反向數(shù)字余弦變換和量化方法,首先選擇特定值s’,s’與s相差一個(gè)比例系數(shù)。
計(jì)算過(guò)程包括如下步驟步驟1、將DCT變換結(jié)果乘以L’,得到x值,其中L’為s’與量化系數(shù)的積;步驟2、用兩個(gè)移位器和一個(gè)加減法器來(lái)代替一個(gè)乘法器,以完成帶比例系數(shù)s’的反向數(shù)字余弦變換,得到正確的反量化和反向數(shù)字余弦變換結(jié)果;本發(fā)明的優(yōu)點(diǎn)是1、通過(guò)選擇特定的數(shù),硬件電路中無(wú)需使用耗費(fèi)資源較多的乘法器。是一種“無(wú)乘法器DCT變換”;2、結(jié)構(gòu)上具有高度的并行性和一致性,硬件計(jì)算單元可重復(fù)利用,故硬件電路極為簡(jiǎn)單;3、DCT、IDCT可用同一硬件電路實(shí)現(xiàn);4、可到達(dá)很高的計(jì)算精度。


圖1是用一維8點(diǎn)DCT實(shí)現(xiàn)8x8二維DCT的原理框2現(xiàn)有的Chen方案硬件計(jì)算電路的原理框圖。
圖3是現(xiàn)有的Loeffler方案硬件計(jì)算電路的原理框圖。
圖4是現(xiàn)有的Chen方案和Loeffler方案中的交叉乘加單元示意圖。
圖5是現(xiàn)有的串聯(lián)的移位和加減法的計(jì)算單元示意圖。
圖6是在一維DCT變換的最后進(jìn)行乘法操作的原理框圖。
圖7是在二維DCT變換的最后進(jìn)行乘法操作的原理框圖。
圖8是無(wú)乘法器的DCT變換和量化器相結(jié)合的原理框圖。
圖9是本發(fā)明的DCT(及IDCT)變換電路原理示意圖。
圖10是圖9所示的計(jì)算單元電路分解示意原理圖。
圖11是圖10所示的A單元的電路結(jié)構(gòu)示意圖。
圖12是圖10所示的B單元的電路結(jié)構(gòu)示意圖。
圖13是圖9所示的DCT變換的流水線結(jié)構(gòu)示意圖。
圖14是圖9所示的IDCT變換的流水線結(jié)構(gòu)示意圖。
圖15是本發(fā)明的另一具體實(shí)施例的DCT變換電路原理示意圖。
具體實(shí)施例方式
本發(fā)明采用另一思路來(lái)實(shí)現(xiàn)Chen方案中的交叉乘加單元電路,實(shí)現(xiàn)了一種高精度的“無(wú)乘法器DCT變換電路”,現(xiàn)詳細(xì)描述如下如圖5所示,將Chen方案和Loeffler方案的核心計(jì)算單元的乘法因子a,b都除以s,則輸出也被除以s,故還需將輸出其乘以s以得到正確結(jié)果。本發(fā)明的核心思想是通過(guò)改變s值,來(lái)選擇合適的A,B值,使得A≈a/s和B≈b/s,其中A,B為自然數(shù),其二進(jìn)制表達(dá)需要的位數(shù)盡可能少,并且其中包含的“1”或“-1”的個(gè)數(shù)最少。例如限制A和B為小于等于24的自然數(shù),且僅包含不多于2個(gè)“1”或“-1”,則乘以A或B可用兩個(gè)移位器和一個(gè)加減法器來(lái)替代乘法器,其中,移位器可將一個(gè)二進(jìn)制數(shù)左移位0~4比特。A,B可選的數(shù)為1,2,3,4,5,6,7(7=8-1),8,9,10,12,14(14=16-2),15(15=16-1),16,17,18,20和24。其他的數(shù)包括11,13,19,21,22,和23無(wú)法表示為2個(gè)“1”或“-1”的二進(jìn)制數(shù)。
本發(fā)明提出一維無(wú)乘法器DCT變換電路如圖9所示。由推導(dǎo)可知,“乘以一個(gè)特定的比例系數(shù)s”可在二維DCT的最后進(jìn)行,并與量化器中“乘以量化系數(shù)的倒數(shù)”合并為一次乘法,如圖8所示。
下面結(jié)合圖2,詳細(xì)說(shuō)明圖9中的h和s值的計(jì)算方法對(duì)于中{v2,v3}->{x2,x3}的計(jì)算單元,可作如下處理考慮到c2=cos(2π/16)=0.92387953c6=cos(6π/16)=0.38268343c2c6=2.41421356≈125]]>我們可選擇h2=12h6=5這樣我們可以得到誤差小于0.5%的近似結(jié)果
h2h22+h62=0.92307692=0.99913126c2≈c2]]>h6h22+h62=0.38461538=1.00504843c6≈c6]]>對(duì)于圖2中{w4,w7}->{x4,x7}的計(jì)算單元,可作如下處理考慮到c1=cos(π/16)=0.98078528c7=cos(7π/16)=0.19509032c1c7=5.0273394≈5]]>我們選擇h1=5h7=1這樣我們可以得到誤差小于0.6%的近似結(jié)果h1h12+h72=0.98058067=1.00020865c1≈c1]]>h7h12+h72=0.19611613=0.99576935c7≈c7]]>對(duì)于圖2中{w5,w6}->{x5,x6}的計(jì)算單元,可作如下處理考慮到c3=cos(3π/16)=0.83146961c5=cos(5π/16)=0.55557023c3c5=1.49660576≈32]]>我們選擇h3=3h5=2這樣我們可以得到誤差小于0.2%的近似結(jié)果h3h32+h52=0.83205029=1.00069838c3≈c3]]>h5h32+h52=0.55470019=0.99843397c5≈c5]]>對(duì)于圖2中{u4,u5,u6,u7}->{v4,v5,v6,v7}的計(jì)算單元,可作如下處理
c4=cos(4π/16)=0.70710678≈1217]]>這樣我們可以得到誤差小于0.2%的近似結(jié)果h0=17h4=12h4h0=0.70588235=0.99826840c4≈c4]]>對(duì)于s0,s1,s2,s3可根據(jù)下式得到s0=4c4s2=2h22+h62]]>s1=12·(c0h0+c4h4)h12+h72]]>s3=12·(c0h0+c4h4)h32+h52]]>利用電路結(jié)構(gòu)的對(duì)稱性和一致性,圖9所示的計(jì)算單元可按圖10所示分解為7部分,(輸入f、輸出F和中間變量u,v,w,x保存在寄存器中,通常為二進(jìn)制補(bǔ)碼表示)。其中,部分A1,A2,A3,A4完全一致,由4個(gè)第一加減法器1構(gòu)成,包括4個(gè)輸入端和4個(gè)輸出端,可共享一個(gè)第一單元電路,如圖11所示,(在硬件電路設(shè)計(jì)中,一般不區(qū)分補(bǔ)碼加法器和補(bǔ)碼減法器,合稱補(bǔ)碼加減法器)。部分B1,B2,B3,B4也可共享一個(gè)第二單元電路,該第二單元電路由16個(gè)移位器和12個(gè)加減法器組成,每?jī)蓚€(gè)移位器2后均對(duì)應(yīng)連接一第二加減法器3,每?jī)蓚€(gè)第二加減法器3后還均對(duì)應(yīng)連接一第三加減法器4,每四個(gè)移位器2共用一個(gè)輸入端,每一個(gè)第三加減法器均設(shè)有一個(gè)輸出端。如圖12所示。所述寄存器與第一單元電路、第二單元電路的輸入輸出端均相連接。
第一單元電路中,輸出信號(hào)out0和輸出信號(hào)out1為輸入信號(hào)in0與輸入信號(hào)in1的和或者差;輸出信號(hào)out2和輸出信號(hào)out3為輸入信號(hào)in2和輸入信號(hào)in3的和或者差。第二單元電路中,將輸入信號(hào)in0移位得到信號(hào)in0_0和信號(hào)in0_1,再求和(或者差)得到輸出信號(hào)out0_0,則輸出信號(hào)out0_0為輸入信號(hào)in0乘上h的積;先將輸入信號(hào)in1移位得到信號(hào)in1_0和信號(hào)in1_1,再求和(或者差)得到輸出信號(hào)out0_1,則輸出信號(hào)out0_1為輸入信號(hào)in1乘上h的積;最后,求輸出信號(hào)out0_0與輸出信號(hào)out0_1的和或者差得到輸出信號(hào)out0。
本發(fā)明的DCT變換電路可采用圖13所示的流水線方式,可達(dá)到4個(gè)時(shí)鐘周期完成一次一維DCT變換的處理速度。圖13中橫軸表示時(shí)間,每個(gè)A或B部分用1個(gè)時(shí)鐘周期完成。任一時(shí)刻最多完成一個(gè)A部分和一個(gè)B部分的計(jì)算,所以只需一個(gè)A單元電路和一個(gè)第二單元電路即可實(shí)現(xiàn)本發(fā)明,并可達(dá)到4個(gè)時(shí)鐘周期完成一次一維DCT變換的處理速度。
如圖13所示,本發(fā)明的電路是按以下步驟工作完成DCT變換和量化(假設(shè)s除以量化系數(shù)得到L)步驟1從寄存器中取出{f1,f6,f2,f5}作為第一單元電路的輸入,則第一單元電路的輸出為{u1,u6,u2,u5},存入寄存器;步驟2從寄存器中取出{f0,f7,f3,f4}作為第一單元電路的輸入,則第一單元電路的輸出為{u0,u7,u3,u4},存入寄存器;步驟3從寄存器中取出{u1,u2,u3,u0}作為第一單元電路的輸入,則第一單元電路的輸出為{v1,v2,v3,v0},存入寄存器;同時(shí),從寄存器中取出{u7,u4,u5,u6}作為第二單元電路的輸入,則第二單元電路的輸出為{v7,v4,v5,v6},存入寄存器;步驟4從寄存器中取出{v4,v5,v6,v7}作為第一單元電路的輸入,則第一單元電路的輸出為{w4,w5,w6,w7},存入寄存器;同時(shí),從寄存器中取出{v1,v0,v2,v3}作為第二單元電路的輸入,則第二單元電路的輸出為{x1,x0,x2,x3},存入寄存器;步驟5從寄存器中取出{w4,w7,w5,w6}作為第二單元電路的輸入,則第二單元電路的輸出為{x4,x7,x5,x6},存入寄存器;同時(shí),從寄存器中取出下一次一維DCT變換的{f1,f6,f2,f5}作為第一單元電路的輸入,則第一單元電路的輸出為下一次一維DCT變換的{u1,u6,u2,u5},存入寄存器;步驟6重復(fù)步驟2~5,直至16次一維DCT變換完成;步驟7將得到的x值乘上L,得到8x8二維DCT變換的結(jié)果;IDCT電路Chen方案具有結(jié)構(gòu)對(duì)稱性,將圖2中的數(shù)據(jù)流方向取反,即可得到Chen方案的IDCT電路。這是因?yàn)閳D2中所有的交叉乘加計(jì)算單元的逆運(yùn)算就是該計(jì)算單元本身。
本發(fā)明繼承了Chen方案的這一特性,將圖9中的數(shù)據(jù)流方向取反,即可得到本發(fā)明的IDCT電路原理圖。有所不同的是,B計(jì)算單元的逆運(yùn)算與B計(jì)算單元相差一個(gè)比例系數(shù)。該比例系數(shù)可在s中加以補(bǔ)償,以下為IDCT時(shí)s’的取值。
s0′=1s0]]>s2′=1s2·(h22+h62)]]>s1′=1s1·(h12+h72)h0h4]]>s3′=1s3·(h32+h52)h0h4]]>所以,本發(fā)明中DCT變換和IDCT變換可用同一電路實(shí)現(xiàn)。如圖14所示,本發(fā)明的電路是按以下步驟工作完成反量化和IDCT變換(假設(shè)s’與量化系數(shù)的積為L(zhǎng)’)步驟1將8x8二維DCT變換的結(jié)果乘以L’,得到x值;步驟2從寄存器中取出{x4,x7,x5,x6}作為第二單元電路的輸入,則第二單元電路的輸出為{w4,w7,w5,w6},存入寄存器;步驟3從寄存器中取出{w4,w5,w6,w7}作為A單元電路的輸入,則第一單元電路的輸出為{v4,v5,v6,v7},存入寄存器;同時(shí),從寄存器中取出{x1,x0,x2,x3}作為第二單元電路的輸入,則第二單元電路的輸出為{v1,v0,v2,v3},存入寄存器;步驟4從寄存器中取出{v1,v2,v3,v0}作為第一單元電路的輸入,則第一單元電路的輸出為{u1,u2,u3,u0},存入寄存器;同時(shí),從寄存器中取出{v7,v4,v5,v6}作為第二單元電路的輸入,則第二單元電路的輸出為{u7,u4,u5,u6},存入寄存器;步驟5從寄存器中取出{u0,u7,u3,u4}作為第一單元電路的輸入,則第一單元電路的輸出為{f0,f7,f3,f4},存入寄存器;步驟6從寄存器中取出{u1,u6,u2,u5}作為第一單元電路的輸入,則第一單元電路的輸出{f1,f6,f2,f5},存入寄存器;同時(shí),從寄存器中取出下一次一維DCT變換的{x4,x7,x5,x6}作為第二單元電路的輸入,則第二單元電路的輸出為下一次一維DCT變換的{w4,w7,w5,w6},存入寄存器;步驟7重復(fù)步驟3~6,直至16次一維IDCT變換完成;如圖15所示本發(fā)明的另一具體實(shí)施例(Loeffler)中可類似地選擇
h2=12h6=5h1=5h7=1h3=3h5=2對(duì)于t0和t1,可按如下處理,考慮到r0=1h32+h52=0.27735009]]>r1=1h12+h72=0.19611613]]>r0r1=2613=2≈1712]]>我們選擇t0=17t1=12這樣我們可以得到誤差小于0.1%的近似結(jié)果t012(t0r0+t1r1)=0.27759043=1.000866551r0≈r0]]>t112(t0r0+t1r1)=0.19594619=0.999133448r1≈r1]]>總之,對(duì)于DCT變換s0=c4s2=1h22+h62]]>s1=c412(t0r0+t1r1)]]>s3=112(t0r0+t1r1)]]>對(duì)于IDCT變換
s0′=1s0]]>s2′=1s2·(h22+h62)]]>s1′=1s1·(h12+h72)t0t1]]>s3′=1s3·(h32+h52)t0t1]]>類似地,本具體實(shí)施例中的DCT變換電路和IDCT變換電路也可由一個(gè)A單元電路(如圖11)和一個(gè)B單元電路(如圖12)實(shí)現(xiàn)。但是,只能達(dá)到5個(gè)時(shí)鐘周期完成一次一維DCT變換的處理速度。
以上各例的計(jì)算誤差在1%以內(nèi),可滿足大部分圖像壓縮標(biāo)準(zhǔn)的要求。為達(dá)到更高的計(jì)算精度,我們可在更大的范圍尋找h值,來(lái)逼近C7/C1,C6/C2,C5/C3和C4。若采用h為小于等于224的自然數(shù),且僅包含不多于3個(gè)“1”或“-1”,則可達(dá)到IEEE Std 1180-1990標(biāo)準(zhǔn)的要求。
本發(fā)明的保護(hù)范圍并不局限于上述具體實(shí)施例,凡本領(lǐng)域內(nèi)技術(shù)人員所熟知的技術(shù)變換均落在本發(fā)明的保護(hù)范圍內(nèi),比如對(duì)本發(fā)明的電路原理9和圖15可有不同的分解方法和不同的流水線結(jié)構(gòu);在本發(fā)明的電路原理9和圖15中可采用不同的特殊數(shù)對(duì)h值及其各種組合。
權(quán)利要求
1.一種高精度的無(wú)乘法器的數(shù)字余弦變換電路,其特征在于,包括電路連接的第一單元電路、第二單元電路、寄存器;其中,所述的第一單元電路由4個(gè)第一加減法器構(gòu)成,包括4個(gè)輸入端和4個(gè)輸出端;所述的第二單元電路由16個(gè)移位器和12個(gè)加減法器組成,每?jī)蓚€(gè)移位器后均對(duì)應(yīng)連接一第二加減法器,每?jī)蓚€(gè)第二加減法器后還均對(duì)應(yīng)連接一第三加減法器,每四個(gè)移位器共用一個(gè)輸入端,每一個(gè)第三加減法器均設(shè)有一個(gè)輸出端;所述第一單元電路、第二單元電路的輸入端、輸出端均與寄存器相連接。
2.一種高精度的無(wú)乘法器的數(shù)字余弦變換和量化方法,其特征在于,首先選擇特定s值,使得A≈a/s和B≈b/s,其中a、b為乘法因子,A,B為自然數(shù),其二進(jìn)制表達(dá)需要的位數(shù)盡可能少,并且其中包含的“1”或“-1”的個(gè)數(shù)最少,包括如下步驟步驟1、用移位器和加減法器來(lái)代替一個(gè)乘法器,以完成帶比例系數(shù)s的數(shù)字余弦變換;步驟2、將變換輸出結(jié)果在量化器中乘上L,其中L為s除以量化系數(shù),得到量化后的DCT變換結(jié)果。
3.根據(jù)權(quán)利要求2所述的高精度的無(wú)乘法器的數(shù)字余弦變換和量化方法,其特征在于,所述s值的選擇方法為使得h2/h6≈C6/C2,h3/h5≈C3/C5,h1/h7≈C1/C7和h4/h0≈C4/C0,其中Ck=cos(k∏/16)(k=0,1,,…,7),各h取值為自然數(shù),其二進(jìn)制表達(dá)需要的位數(shù)盡可能少,并且其中包含的“1”或“-1”的個(gè)數(shù)最少。
4.根據(jù)權(quán)利要求2或3所述的高精度的無(wú)乘法數(shù)字余弦變換和量化方法,其特征在于,所述的A,B或h可選的數(shù)為1,2,3,4,5,6,7,8,9,10,12,14,15,16,17,18,20和24,則可用兩個(gè)移位器和一個(gè)加減法器來(lái)代替一個(gè)乘法器,以完成數(shù)字余弦變換。
5.根據(jù)權(quán)利要求4所述的高精度的無(wú)乘法數(shù)字余弦變換和量化方法,其特征在于,所述的A,B或h為1,2,3,4,5,6,7,8,9,10,12,14,15,16,17,18,20或24除以或乘以2的冪次。
6.根據(jù)權(quán)利要求2所述的高精度的無(wú)乘法數(shù)字余弦變換和量化方法,其特征在于,步驟1中帶比例系數(shù)s的數(shù)字余弦變換方法包括如下步驟步驟1從寄存器中取出{f1,f6,f2,f5}作為第一單元電路的輸入,則第一單元電路的輸出為{u1,u6,u2,u5},存入寄存器;步驟2從寄存器中取出{f0,f7,f3,f4}作為第一單元電路的輸入,則第一單元電路的輸出為{u0,u7,u3,u4},存入寄存器;步驟3從寄存器中取出{u1,u2,u3,u0}作為第一單元電路的輸入,則第一單元電路的輸出為{v1,v2,v3,v0},存入寄存器;同時(shí),從寄存器中取出{u7,u4,u5,u6}作為第二單元電路的輸入,則第二單元電路的輸出為{v7,v4,v5,v6},存入寄存器;步驟4從寄存器中取出{v4,v5,v6,v7}作為第一單元電路的輸入,則第一單元電路的輸出為{w4,w5,w6,w7},存入寄存器;同時(shí),從寄存器中取出{v1,v0,v2,v3}作為第二單元電路的輸入,則第二單元電路的輸出為{x1,x0,x2,x3},存入寄存器;步驟5從寄存器中取出{w4,w7,w5,w6}作為第二單元電路的輸入,則第二單元電路的輸出為{x4,x7,x5,x6},存入寄存器;同時(shí),從寄存器中取出下一次一維DCT變換的{f1,f6,f2,f5}作為第一單元電路的輸入,則第一單元電路的輸出為下一次一維DCT變換的{u1,u6,u2,u5},存入寄存器;步驟6重復(fù)步驟2~5,直至16次一維DCT變換完成。
7.根據(jù)權(quán)利要求6所述的高精度的無(wú)乘法數(shù)字余弦變換和量化方法,其特征在于,所述第一單元電路的輸入輸出關(guān)系為輸出信號(hào)out0和輸出信號(hào)out1為輸入信號(hào)in0與輸入信號(hào)in1的和或者差;輸出信號(hào)out2和輸出信號(hào)out3為輸入信號(hào)in2和輸入信號(hào)in3的和或者差。
8.根據(jù)權(quán)利要求6所述的高精度的無(wú)乘法數(shù)字余弦變換和量化方法,其特征在于,所述的第二單元電路的輸入輸出關(guān)系為輸入信號(hào)in0移位得到信號(hào)in0_0和信號(hào)in0_1,再求和或者差得到輸出信號(hào)out0_0,則輸出信號(hào)out0_0為輸入信號(hào)in0乘上h的積;輸入信號(hào)in1移位得到信號(hào)in1_0和in1_1,再求和或者差得到輸出信號(hào)out0_1,則輸出信號(hào)out0_1為輸入信號(hào)in1乘上h的積;最后,求輸出信號(hào)out0_0與輸出信號(hào)out0_1的和或者差得到輸出信號(hào)out0。
9.一種高精度的無(wú)乘法器的反向數(shù)字余弦變換電路,其特征在于,包括電路連接的第一單元電路、第二單元電路、寄存器;其中,所述的第一單元電路由4個(gè)第一加減法器構(gòu)成,包括4個(gè)輸入端和4個(gè)輸出端;所述的第二單元電路由16個(gè)移位器和12個(gè)加減法器組成,每?jī)蓚€(gè)移位器后均對(duì)應(yīng)連接一第二加減法器,每?jī)蓚€(gè)第二加減法器后還均對(duì)應(yīng)連接一第三加減法器,每四個(gè)移位器共用一個(gè)輸入端,每一個(gè)第三加減法器均設(shè)有一個(gè)輸出端;所述第一單元電路、第二單元電路的輸入端、輸出端均與寄存器相連接。
10.一種高精度的無(wú)乘法器的反向數(shù)字余弦變換和量化方法,其特征在于,首先選擇特定值s’,s’與s相差一個(gè)比例系數(shù),計(jì)算過(guò)程包括如下步驟步驟1、將DCT變換結(jié)果乘以L’,得到x值,其中L’為s’與量化系數(shù)的積;步驟2、用兩個(gè)移位器和一個(gè)加減法器來(lái)代替一個(gè)乘法器,以完成帶比例系數(shù)s’的反向數(shù)字余弦變換,得到正確的反量化和反向數(shù)字余弦變換結(jié)果。
11.根據(jù)權(quán)利要求10所述的高精度的無(wú)乘法器的反向數(shù)字余弦變換和量化方法,其特征在于,所述步驟2中帶比例系數(shù)s的反向數(shù)字余弦變換方法包括如下步驟步驟1從寄存器中取出{x4,x7,x5,x6}作為第二單元電路的輸入,則第二單元電路的輸出為{w4,w7,w5,w6},存入寄存器;步驟2從寄存器中取出{w4,w5,w6,w7}作為A單元電路的輸入,則A單元電路的輸出為{v4,v5,v6,v7},存入寄存器;同時(shí),從寄存器中取出{x1,x0,x2,x3}作為第二單元電路的輸入,則第二單元電路的輸出為{v1,v0,v2,v3},存入寄存器;步驟3從寄存器中取出{v1,v2,v3,v0}作為A單元電路的輸入,則A單元電路的輸出為{u1,u2,u3,u0},存入寄存器;同時(shí),從寄存器中取出{v7,v4,v5,v6}作為第二單元電路的輸入,則第二單元電路的輸出為{u7,u4,u5,u6},存入寄存器;步驟4從寄存器中取出{u0,u7,u3,u4}作為A單元電路的輸入,則A單元電路的輸出為{f0,f7,f3,f4},存入寄存器;步驟5從寄存器中取出{u1,u6,u2,u5}作為A單元電路的輸入,則A單元電路的輸出{f1,f6,f2,f5},存入寄存器;同時(shí),從寄存器中取出下一次一維DCT變換的{x4,x7,x5,x6}作為第二單元電路的輸入,則第二單元電路的輸出為下一次一維DCT變換的{w4,w7,w5,w6},存入寄存器;步驟6重復(fù)步驟2~5,直至16次一維IDCT變換完成。
全文摘要
本發(fā)明提供一種高精度的無(wú)乘法器的數(shù)字余弦變換和量化方法,包括如下步驟步驟1.用兩個(gè)移位器和一個(gè)加減法器來(lái)代替一個(gè)乘法器,以完成帶比例系數(shù)s的數(shù)字余弦變換;步驟2.將變換輸出結(jié)果在量化器中乘上L,其中L為s除以量化系數(shù),得到量化后的DCT變換結(jié)果。本發(fā)明通過(guò)選擇特定的數(shù),硬件電路中無(wú)需使用耗費(fèi)資源較多的乘法器。是一種“無(wú)乘法器DCT變換”;結(jié)構(gòu)上具有高度的并行性和一致性,硬件計(jì)算單元可重復(fù)利用,故硬件電路極為簡(jiǎn)單;DCT、IDCT可用同一硬件電路實(shí)現(xiàn);可到達(dá)很高的計(jì)算精度。
文檔編號(hào)H04N7/26GK1855149SQ20051002520
公開(kāi)日2006年11月1日 申請(qǐng)日期2005年4月19日 優(yōu)先權(quán)日2005年4月19日
發(fā)明者林豪 申請(qǐng)人:展訊通信(上海)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1