專利名稱:提高脈沖寬度調(diào)制量化精度的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)字信號(hào)的脈寬調(diào)制,具體涉及采用雙模量化的方法對(duì)數(shù)字信號(hào)進(jìn)行脈寬調(diào)制。
背景技術(shù):
D類放大器輸入的模擬音頻信號(hào),經(jīng)內(nèi)部產(chǎn)生的三角波對(duì)輸入的模擬信號(hào)進(jìn)行脈寬調(diào)制,形成脈沖信號(hào)輸出。因其信號(hào)在時(shí)間軸連續(xù),所以它是一種模擬功率放大器。
目前的全數(shù)字音頻功率放大器在進(jìn)行數(shù)字信號(hào)的脈寬調(diào)制時(shí),由于半導(dǎo)體工藝的限制,量化器精度低,導(dǎo)致輸出的量化噪聲很大。因此現(xiàn)有的方案都是采用提高過(guò)采樣倍數(shù)和加大噪聲整形的階數(shù),使可聞?lì)l帶內(nèi)的噪聲分量遷移到可聞?lì)l帶之外。但隨之帶來(lái)的問(wèn)題是過(guò)分提高過(guò)采樣倍數(shù)會(huì)對(duì)功率器件的要求更為苛刻,放大器效率降低;而加大噪聲整形的階數(shù)會(huì)產(chǎn)生高頻振蕩和限幅失真,并使高頻音質(zhì)變差。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種新的脈沖寬度調(diào)制量化的方法,以實(shí)現(xiàn)在較低的時(shí)鐘頻率下,完成較高的量化精度。
本發(fā)明提出一種雙模PWM量化的方法。
設(shè)一個(gè)二進(jìn)制數(shù)據(jù)Data的位數(shù)是p,可將Data分解為兩個(gè)數(shù)據(jù)H和L,L是低位數(shù)據(jù),位數(shù)是n,H是高位數(shù)據(jù),位數(shù)是m(n+m=p),則Data可表示為Data=H*2n+L (1)將等式(1)兩邊除以2n*(2n-1),則Data/2n*(2n-1)=(H+L)/(2n-1)-L/2n(2)將等式(2)兩邊除以一個(gè)常數(shù)k進(jìn)行歸一化處理,使等式(2)右邊的兩項(xiàng)均不大于1,則Data/k*2n*(2n-1)=(H+L)/k*(2n-1)-L/k*2n(3)通過(guò)等式(3)可以看出,實(shí)現(xiàn)一個(gè)高精度數(shù)據(jù)Data的PWM量化器可以由兩個(gè)較低精度數(shù)據(jù)(H+L)和L的PWM量化器經(jīng)差分運(yùn)算而合成?;蛘哒f(shuō),實(shí)現(xiàn)一個(gè)同等精度的PWM量化器,雙模PWM量化器所需要的時(shí)鐘頻率要低的多。舉例說(shuō)明如下設(shè)Data的位數(shù)是16位,PWM的脈沖頻率為192kHz,則用一個(gè)PWM量化器實(shí)現(xiàn)16位數(shù)據(jù)精度時(shí),所需的時(shí)鐘頻率為f=192(kHz)*216=12.582912GHz用如此高的時(shí)鐘頻率實(shí)現(xiàn)一個(gè)16位的PWM量化器在目前是不可能的。
如果將數(shù)據(jù)Data分解為兩個(gè)數(shù)據(jù)H和L,位數(shù)均為8位,取k等于2,根據(jù)等式(3)則有Data/2*256*255=(H+L)/2*255-L/2*256用兩個(gè)PWM量化器實(shí)現(xiàn)上述等式右邊的兩項(xiàng),并保證這兩個(gè)PWM量化器輸出的脈沖頻率都是192kHz,則兩個(gè)PWM量化器所需的時(shí)鐘頻率分別是fa=192(kHz)*2*255=97.920MHzfb=192(kHz)*2*256=98.304MHz可見(jiàn),用雙模PWM量化器實(shí)現(xiàn)16位數(shù)據(jù)精度的轉(zhuǎn)換是一種易于實(shí)現(xiàn)的途徑。
綜上所述,我們提出新的量化方法它是將一個(gè)p比特輸入數(shù)據(jù)Data分解為一個(gè)m比特的高位數(shù)據(jù)H和一個(gè)n比特的低位數(shù)據(jù)L,兩數(shù)據(jù)H、L通過(guò)編碼后形成數(shù)據(jù)X和Y,再分別輸入給兩個(gè)PWM量化器;兩個(gè)PWM量化器的時(shí)鐘分別是fa和fb,經(jīng)兩個(gè)PWM量化器的輸出數(shù)據(jù)表達(dá)式分別是X/k*(2n-1)和Y/k*2n;以上數(shù)據(jù)各自滿足以下關(guān)系式(1)m+n=p;(2)Data=2n*H+L;(3)fa=k*(2n-1)*fr,fb=k*2n*fr,其中k是常數(shù),fr是數(shù)據(jù)采樣頻率,n是正整數(shù),數(shù)值等于低位二進(jìn)制數(shù)據(jù)L的位數(shù);(4)Data/k*2n*(2n-1)=X/k*(2n-1)-Y/k*2n。
實(shí)現(xiàn)上述雙模PWM量化的設(shè)備途徑有兩種第一種設(shè)備由一個(gè)數(shù)據(jù)分配器和兩個(gè)PWM量化器構(gòu)成;第二種設(shè)備由一個(gè)數(shù)據(jù)分配器、兩個(gè)PWM量化器和一個(gè)輸出切換開(kāi)關(guān)構(gòu)成。
對(duì)于上述兩種途徑中的數(shù)據(jù)分配器,應(yīng)該考慮在數(shù)據(jù)分配時(shí)各種因素的影響,并提出解決方案(1)為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償;(2)采用第一種設(shè)備方式時(shí),為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)帶符號(hào)的輸入數(shù)據(jù),對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償;(3)對(duì)于有誤差的線性補(bǔ)償;(4)為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行非線性補(bǔ)償。
圖1雙模PWM量化器的兩個(gè)結(jié)構(gòu)框2數(shù)據(jù)分配器的兩個(gè)基本的結(jié)構(gòu)框3對(duì)輸出數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償方式一的數(shù)據(jù)分配器結(jié)構(gòu)框4對(duì)輸出數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償方式二的數(shù)據(jù)分配器結(jié)構(gòu)框5對(duì)輸出數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償方式三的數(shù)據(jù)分配器結(jié)構(gòu)框6對(duì)輸出數(shù)據(jù)X和Y進(jìn)行非線性補(bǔ)償?shù)臄?shù)據(jù)分配器結(jié)構(gòu)框7應(yīng)用線性補(bǔ)償?shù)碾p模PWM量化器實(shí)施的結(jié)構(gòu)框8應(yīng)用非線性補(bǔ)償?shù)碾p模PWM量化器實(shí)施的結(jié)構(gòu)框中N為取絕對(duì)值電路,B為數(shù)據(jù)分解器,SUM為加法器,SUB為減法器,K1、K2為二選一開(kāi)關(guān),M為乘法器,Z-1為延時(shí)器(延時(shí)一個(gè)采樣周期),S為+1/-1發(fā)生器(當(dāng)符號(hào)為正時(shí)輸出+1,符號(hào)為負(fù)時(shí)輸出-1)。
為更清晰地描述本發(fā)明的技術(shù)方案,以下結(jié)合
實(shí)施技術(shù)方案在附圖1(a)中可以看到,一個(gè)高精度的二進(jìn)制數(shù)據(jù)Data進(jìn)入數(shù)據(jù)分配器Assign,在數(shù)據(jù)分配器內(nèi)進(jìn)行編碼處理,輸出兩組較低精度的數(shù)據(jù)X和Y,分別進(jìn)入兩個(gè)PWM量化器PWM_a和PWM_b。在外輸入時(shí)鐘fa和fb的作用下,PWM量化器PWM_a和PWM_b將數(shù)據(jù)X和Y變換為脈沖信號(hào)Va和Vb,脈沖信號(hào)Va和Vb的占空比與數(shù)據(jù)X和Y呈線性關(guān)系。脈沖信號(hào)Va和Vb即作為雙模PWM量化器的輸出V+和V-。
從理論上講,數(shù)據(jù)分配器Assign輸出X等于H加L,Y等于L。而H為輸入的p比特?cái)?shù)據(jù)Data的高m比特的數(shù)據(jù),L為輸入的p比特?cái)?shù)據(jù)Data的低n比特?cái)?shù)據(jù),p=m+n,Data與H、L滿足等式(1)的要求。當(dāng)輸入時(shí)鐘fa=k*(2n-1)*fr,而且PWM量化器PWM_a的重復(fù)周期為1/fr,即PWM_a的周期為k*(2n-1)個(gè)fa時(shí)鐘時(shí),量化器PWM_a可實(shí)現(xiàn)等式(3)右邊的第一項(xiàng)。當(dāng)輸入時(shí)鐘fb=k*2n*fr,而且PWM量化器PWM_b的重復(fù)周期為1/fr,即PWM_b的周期為k*2n個(gè)fb時(shí)鐘時(shí),量化器PWM_b可實(shí)現(xiàn)等式(3)右邊的第二項(xiàng)。PWM量化器PWM_a和PWM_b的輸出在外部只要通過(guò)一個(gè)減法器即可實(shí)現(xiàn)等式(3),得到合成的高精度信號(hào)。
對(duì)于帶符號(hào)的輸入數(shù)據(jù)Data,也可以按附圖1(b)進(jìn)行處理,數(shù)據(jù)分配器Assign接收輸入的p比特?cái)?shù)據(jù)Data,首先將Data變換為絕對(duì)值數(shù)據(jù)D,同時(shí)提取符號(hào)位輸出,然后將絕對(duì)值數(shù)據(jù)D進(jìn)行上述的處理過(guò)程,輸出X和Y給兩個(gè)PWM量化器PWM_a和PWM_b。在外輸入時(shí)鐘fa和fb的作用下,PWM量化器PWM_a和PWM_b將數(shù)據(jù)X和Y變換為脈沖信號(hào)Va和Vb,脈沖信號(hào)Va和Vb的占空比與數(shù)據(jù)X和Y呈線性關(guān)系。輸出切換開(kāi)關(guān)SW根據(jù)輸入數(shù)據(jù)的符號(hào)控制Va和Vb的輸出,使得Data為正時(shí)V+等于Va,V-等于Vb,Data為負(fù)時(shí)V+等于Vb,V-等于Va。
附圖1(b)的輸出在外部只要通過(guò)一個(gè)減法器也可得到合成的高精度信號(hào)。
數(shù)據(jù)分配器數(shù)據(jù)分配器的功能是將輸入的一個(gè)高精度數(shù)據(jù)Data分解為兩個(gè)低精度數(shù)據(jù)H和L,并滿足等式(1)。然后經(jīng)數(shù)學(xué)運(yùn)算得到輸出X和Y。
X=H+L(4)Y=L (5)數(shù)據(jù)分配器的基本結(jié)構(gòu)框圖見(jiàn)附圖2所示。
對(duì)應(yīng)雙模PWM量化器的兩種結(jié)構(gòu)(如附圖1(a)和附圖1(b)),數(shù)據(jù)分配器的基本結(jié)構(gòu)也有兩種。附圖2(a)的數(shù)據(jù)分配器接收高精度輸入數(shù)據(jù)Data,直接送入數(shù)據(jù)分解器,將其分解為較低精度數(shù)據(jù)H和L,使Data、H、L滿足等式(1)的要求。然后,數(shù)據(jù)H、L在加法器中相加,得到X數(shù)據(jù)輸出,同時(shí)數(shù)據(jù)L作為Y數(shù)據(jù)輸出。
附圖2(b)的數(shù)據(jù)分配器接收高精度輸入數(shù)據(jù)Data,首先送入取絕對(duì)值電路,提取出符號(hào)位Sign輸出,并將絕對(duì)值數(shù)據(jù)送入數(shù)據(jù)分解器,將其分解為較低精度數(shù)據(jù)H和L,使絕對(duì)值數(shù)據(jù)D、H、L滿足等式(1)的要求。然后,數(shù)據(jù)H、L在加法器中相加,得到X數(shù)據(jù)輸出,同時(shí)數(shù)據(jù)L作為Y數(shù)據(jù)輸出。
但是在實(shí)際應(yīng)用中,出于對(duì)避免PWM死區(qū)、提高電源電壓利用率、數(shù)據(jù)符號(hào)處理等各種因素的考慮,往往對(duì)等式(4、5)作線性或非線性補(bǔ)償,采用以下幾種方法進(jìn)行適當(dāng)?shù)奶幚怼?br>
(1)方法一線性補(bǔ)償在數(shù)據(jù)分配器的基本結(jié)構(gòu)中,某些輸入的數(shù)值會(huì)使分解的X、Y數(shù)據(jù)有極小的數(shù)值(包括0)出現(xiàn),使PWM進(jìn)入死區(qū)。在輸入為負(fù)值時(shí),也可能使X、Y出現(xiàn)負(fù)值,使PWM無(wú)法正常工作。因此將等式(4、5)作線性補(bǔ)償,以避免這些情況發(fā)生。
X=H+L+u(u是正整數(shù))(6)
Y=L+v (v是正整數(shù))(7)并使u/(k*(2n-1))=v/(k*2n)(8)在上述變換的過(guò)程中,應(yīng)保持兩個(gè)PWM量化器不出現(xiàn)大于1的情況。
方法一的電路框圖見(jiàn)附圖3所示。
對(duì)應(yīng)數(shù)據(jù)分配器的兩種基本結(jié)構(gòu)(如附圖2(a)和附圖2(b)),方法一的電路也有兩種結(jié)構(gòu),見(jiàn)附圖3(a)和附圖3(b)。附圖3(a)的數(shù)據(jù)分配器是對(duì)附圖2(a)電路的改進(jìn),其接收高精度輸入教據(jù)Data,直接送入數(shù)據(jù)分解器,將其分解為較低精度數(shù)據(jù)H和L,使Data、H、L滿足等式(1)的要求。然后,數(shù)據(jù)H、L和正整數(shù)u在加法器中相加,得到X數(shù)據(jù)輸出,同時(shí)數(shù)據(jù)L和正整數(shù)v在另一個(gè)加法器中相加,得到Y(jié)數(shù)據(jù)輸出。
由于正整數(shù)u和v滿足u/(k*(2n-1))=v/(k*2n),因此X和Y數(shù)據(jù)經(jīng)兩個(gè)PWM量化器后輸出的脈沖信號(hào)在外部的減法器上可將補(bǔ)償?shù)牟糠值窒?,仍可得到合成的高精度信?hào)。但是正整數(shù)u和v卻可使進(jìn)入PWM量化器的X和Y數(shù)據(jù)遠(yuǎn)離零值和負(fù)值,使PWM量化器有效工作。
附圖3(b)的數(shù)據(jù)分配器是對(duì)附圖2(b)電路的改進(jìn),其補(bǔ)償原理同上。在輸入數(shù)據(jù)取絕對(duì)值處理和輸出符號(hào)位方面同附圖2(b)電路。
(2)方法二線性補(bǔ)償對(duì)于輸入帶符號(hào)的數(shù)據(jù),此方法提供了另一種線性補(bǔ)償?shù)耐緩?,其?shù)據(jù)分配器的編碼規(guī)則為1、當(dāng)輸入為0時(shí)兩個(gè)PWM量化器的輸出脈沖占空比為規(guī)定的一個(gè)數(shù)值ζ(例如50%);2、當(dāng)輸入為正數(shù)時(shí)兩個(gè)PWM量化器的輸出脈沖占空比≥ζ,且兩個(gè)量化器的差值隨輸入的增加而線性增加;3、當(dāng)輸入為負(fù)數(shù)時(shí)兩個(gè)PWM量化器的輸出脈沖占空比≤ζ,且兩個(gè)量化器的差值隨輸入的減小而線性減小。
附圖1(a)所示的雙模PWM量化器可采用這種方法,不必使用輸出切換開(kāi)關(guān),可避免PWM進(jìn)入死區(qū)。用公式表示的編碼規(guī)則如下若輸入數(shù)據(jù)Data為正數(shù),則X=u+(H+L),Y=v+L若輸入數(shù)據(jù)Data為負(fù)數(shù),則X=u-(H+L),Y=v-L其中u/(k*(2n-1))=v/(k*2n)=ζ (9)H、L為輸入數(shù)據(jù)Data取絕對(duì)值D后分解的高位數(shù)據(jù)和低位數(shù)據(jù),u、v是正整數(shù)。
方法二的電路框圖見(jiàn)附圖4所示。數(shù)據(jù)分配器接收高精度輸入數(shù)據(jù)Data,首先送入取絕對(duì)值電路,提取出符號(hào)位Sign,并將絕對(duì)值數(shù)據(jù)送入數(shù)據(jù)分解器,將其分解為較低精度數(shù)據(jù)H和L,使絕時(shí)值數(shù)據(jù)D、H、L滿足等式(1)的要求。其次,數(shù)據(jù)H、L在加法器中相加,其結(jié)果與輸入數(shù)據(jù)的符號(hào)(+1/-1)相乘,即(H+L)數(shù)值的符號(hào)與輸入數(shù)據(jù)的符號(hào)相同,最后再與正整數(shù)u相加,得到X數(shù)據(jù)輸出。同時(shí)數(shù)據(jù)L與輸入數(shù)據(jù)的符號(hào)(+1/-1)相乘,即(L)數(shù)值的符號(hào)與輸入數(shù)據(jù)的符號(hào)相同,再與正整數(shù)v相加,得到Y(jié)數(shù)據(jù)輸出。
由于正整數(shù)u和v滿足u/(k*(2n-1))=v/(k*2n),因此X和Y數(shù)據(jù)經(jīng)兩個(gè)PWM量化器后輸出的脈沖信號(hào)在外部的減法器上可將補(bǔ)償?shù)牟糠值窒?,仍可得到合成的高精度信?hào)。
(3)方法三線性補(bǔ)償?shù)恼`差處理在方法一、二中,考慮到u、v、k的取值,條件u/(k*(2n-1))=v/(k*2n)可能不成立,u/(k*(2n-1))和v/(k*2n)會(huì)有微小的差別,因此定義u/(k*(2n-1))-v/(k*2n)=ε (10)由于ε的存在,上述方法在輸出中將產(chǎn)生誤差e。根據(jù)等式(3),有(u+H+L)/k*(2n-1)-(v+L)/k*2n=(u/k*(2n-1)-v/k*2n)+Data/k*2n*(2n-1)=(Data+u*2n-v*(2n-1))/k*2n*(2n-1)(11)(u-H-L)/k*(2n-1)-(v-L)/k*2n=(u/k*(2n-1)-v/k*2n)-D/k*2n*(2n-1)=(-D+u*2n-v*(2n-1))/k*2n*(2n-1) (12)從式(11、12)中可看出,誤差數(shù)值為e=u*2n-v*(2n-1) (13)因u、v是已知的正整數(shù),所以誤差e也是可預(yù)知的整數(shù)。為消除該誤差對(duì)輸出的影響,可在數(shù)據(jù)輸入端預(yù)先減去此誤差數(shù)值,得Data’=Data-e(14)然后再將Data’按方法一和方法二處理,即可消除誤差的影響。
方法三的電路框圖見(jiàn)附圖5所示。其中附圖5(a)電路是對(duì)附圖3(a)電路的誤差修正,附圖5(b)電路是對(duì)附圖3(b)電路的誤差修正,附圖5(c)電路是對(duì)附圖4電路的誤差修正。
(4)方法四非線性補(bǔ)償及誤差處理對(duì)應(yīng)雙模PWM量化器的附圖1(b)結(jié)構(gòu),數(shù)據(jù)分配器為避免PWM進(jìn)入死區(qū)可進(jìn)行非線性補(bǔ)償處理,這樣作可在電源電壓利用率方面得到好處。非線性補(bǔ)償?shù)姆椒ㄈ缦略O(shè)PWM死區(qū)門限為δ,輸入數(shù)據(jù)為Datai(第i個(gè)樣本值),Hi和Li為對(duì)第i個(gè)絕對(duì)值數(shù)據(jù)Di分解的較低精度的數(shù)據(jù),則若Li<δXi=Hi+δ,Yi=δ;否則Xi=Hi+Li,Yi=Li。
(15)由于采用非線性補(bǔ)償,合成輸出的結(jié)果與輸入的數(shù)據(jù)Datai之間產(chǎn)生誤差ei,誤差ei的絕對(duì)值為(δ-Li),符號(hào)與輸入數(shù)據(jù)Datai的符號(hào)相同。
為消除該誤差對(duì)輸出的影響,將誤差延時(shí)一個(gè)采樣周期送回?cái)?shù)據(jù)輸入端,與下次輸入的數(shù)據(jù)進(jìn)行運(yùn)算,則Datai’=Datai-ei-1(16)將Datai’變換為絕對(duì)值數(shù)據(jù)Di,并提取符號(hào)位。然后將絕對(duì)值數(shù)據(jù)Di按等式(1)分解為Hi和Li數(shù)據(jù),再按等式(15)計(jì)算Xi和Yi數(shù)據(jù)。
方法四的電路框圖見(jiàn)附圖6所示。
第一、數(shù)據(jù)分配器接收高精度輸入數(shù)據(jù)Data后,即減去誤差數(shù)據(jù),然后將結(jié)果送入取絕對(duì)值電路。取絕對(duì)值電路提取出輸入數(shù)據(jù)的符號(hào)位Sign輸出,并將絕對(duì)值數(shù)據(jù)送入數(shù)據(jù)分解器,將其分解為較低精度數(shù)據(jù)H和L,使絕對(duì)值數(shù)據(jù)D、H、L滿足等式(1)的要求。
第二、數(shù)據(jù)分解器比較數(shù)據(jù)L和PWM死區(qū)門限δ,給出比較結(jié)果。當(dāng)L<δ時(shí),二選一開(kāi)關(guān)控制δ與數(shù)據(jù)H在加法器中相加,得到X數(shù)據(jù)輸出,同時(shí)控制δ作為Y數(shù)據(jù)輸出;否則,二選一開(kāi)關(guān)則控制數(shù)據(jù)L與數(shù)據(jù)H在加法器中相加,得到X數(shù)據(jù)輸出,同時(shí)控制數(shù)據(jù)L作為Y數(shù)據(jù)輸出。
第三、δ與數(shù)據(jù)L在減法器中相減,得到誤差的絕對(duì)值。當(dāng)L<δ時(shí),此誤差通過(guò)二選一開(kāi)關(guān)送至反饋回路,并與當(dāng)前輸入數(shù)據(jù)的符號(hào)(+1/-1)相乘,得到帶符號(hào)的誤差值,即當(dāng)前輸入數(shù)據(jù)為正時(shí)誤差值亦為正,當(dāng)前輸入數(shù)據(jù)為負(fù)時(shí)誤差值亦為負(fù)。該誤差值延時(shí)一個(gè)采樣周期后與下一個(gè)輸入數(shù)據(jù)運(yùn)算,構(gòu)成反饋閉環(huán)。
PWM量化器兩個(gè)PWM量化器的輸入數(shù)據(jù)由數(shù)據(jù)分配器提供,量化器A的輸入數(shù)據(jù)為數(shù)據(jù)分配器輸出的X,量化器B的輸入數(shù)據(jù)為數(shù)據(jù)分配器輸出的Y。量化器A的輸出為脈沖信號(hào)。為保證數(shù)據(jù)合成的精度,兩個(gè)PWM量化器必須同步工作,即它們的脈沖周期相同。因此,量化器A和B的時(shí)鐘頻率fa和fb與PWM脈沖頻率fr之間滿足下面的關(guān)系fa=k*(2n-1)*fr(17)fb=k*2n*fr(18)其中,k是一個(gè)常數(shù);n是一個(gè)正整數(shù),數(shù)值等于數(shù)據(jù)分配器輸出的二進(jìn)制數(shù)據(jù)L的位數(shù)。
當(dāng)PWM量化器PWM_a的輸入時(shí)鐘為fa=k*(2n-1)*fr,PWM_a的周期為k*(2n-1)個(gè)fa時(shí)鐘時(shí),量化器PWM_a的輸出脈沖周期即為1/fr。在一個(gè)脈沖周期內(nèi),PWM_a保持連續(xù)X個(gè)fa時(shí)鐘為高,即可實(shí)現(xiàn)等式(3)右邊的第一項(xiàng)。
當(dāng)PWM量化器PWM_b的輸入時(shí)鐘為fb=k*2n*fr,PWM_b的周期為k*2n個(gè)fb時(shí)鐘時(shí),量化器PWM_b的輸出脈沖周期即為1/fr。在一個(gè)脈沖周期內(nèi),PWM_b保持連續(xù)Y個(gè)fb時(shí)鐘為高,即可實(shí)現(xiàn)等式(3)右邊的第二項(xiàng)。
輸出切換開(kāi)關(guān)在雙模PWM量化器工作于附圖1(b)所示的結(jié)構(gòu)時(shí),需要輸出切換開(kāi)關(guān)完成輸出信號(hào)的切換工作,以保證輸出信號(hào)極性的正確性。切換規(guī)則為當(dāng)輸入符號(hào)為正時(shí),輸出切換開(kāi)關(guān)的輸出“V+”等于量化器PWM_a的輸出“Va”,輸出切換開(kāi)關(guān)的輸出“V-”等于量化器PWM_b的輸出“Vb”;當(dāng)輸入符號(hào)為負(fù)時(shí),輸出切換開(kāi)關(guān)的輸出“V+”等于量化器PWM_b的輸出“Vb”,輸出切換開(kāi)關(guān)的輸出“V-”等于量化器PWM_a的輸出“Va”。
輸出PWM信號(hào)的相減功能在雙模PWM量化器電路的外部實(shí)現(xiàn)。
雙模PWM量化器的具體實(shí)施方式
實(shí)施方式一,如圖7所示該實(shí)施例應(yīng)用線性補(bǔ)償法(原理框圖見(jiàn)附圖5(c))實(shí)現(xiàn)16位音頻數(shù)字/模擬轉(zhuǎn)換的應(yīng)用。
本發(fā)明涉及的雙模PWM量化器可通過(guò)本實(shí)施例中的一塊大規(guī)??删幊涕T陣列FPGA和外圍模擬電路來(lái)實(shí)現(xiàn)。該門陣列型號(hào)為EP20K100,其內(nèi)部由13個(gè)電路單元構(gòu)成。P1為一個(gè)16位減法器,執(zhí)行輸入的16位音頻數(shù)據(jù)Data與誤差數(shù)據(jù)e的減法運(yùn)算,其中誤差數(shù)據(jù)e來(lái)自總線接口,由系統(tǒng)根據(jù)線性補(bǔ)償所帶來(lái)的偏差進(jìn)行預(yù)置。如線性補(bǔ)償沒(méi)有誤差,則誤差e置0。P1輸出17位數(shù)據(jù),最高位是符號(hào)位。P2為一個(gè)補(bǔ)碼電路,當(dāng)符號(hào)位為負(fù)時(shí),將16位數(shù)據(jù)取反加一后輸出,完成原理框圖中的取絕對(duì)值電路功能。P3為一個(gè)16位的鎖存器,其高8位輸出數(shù)據(jù)H,低8位輸出數(shù)據(jù)L,完成原理框圖中的數(shù)據(jù)分解器功能。在這里應(yīng)用鎖存器是為提高電路性能而設(shè)的。P4為一個(gè)8位全加器,實(shí)現(xiàn)H與L的相加。P5、P6為兩個(gè)補(bǔ)碼電路,當(dāng)符號(hào)位為負(fù)時(shí),將輸入數(shù)據(jù)取反加一后輸出,完成原理框圖中的乘+1/-1功能。P7、P8為兩個(gè)10位加法器,實(shí)現(xiàn)在兩路補(bǔ)碼電路的輸出數(shù)據(jù)分別加u和加v的功能,輸出數(shù)據(jù)X和Y。P9為一個(gè)20位鎖存器,是為提高電路性能而設(shè)的。P10、P11分別是一個(gè)10位計(jì)數(shù)器和一個(gè)10位比較器,構(gòu)成一個(gè)10位PWM量化器。P10的輸入頻率是數(shù)據(jù)采樣頻率fr的1020倍,加計(jì)數(shù)0~1019,1020為一個(gè)循環(huán),P11比較數(shù)據(jù)X和計(jì)數(shù)器的輸出,當(dāng)X數(shù)值大于計(jì)數(shù)值時(shí)輸出高電平,即可實(shí)現(xiàn)PWM量化功能,輸出V+。P12、P13分別是一個(gè)10位計(jì)數(shù)器和一個(gè)10位比較器,構(gòu)成另一個(gè)10位PWM量化器。P12的輸入頻率是數(shù)據(jù)采樣頻率fr的1024倍,加計(jì)數(shù)0~1023,1024為一個(gè)循環(huán),P13比較數(shù)據(jù)Y和計(jì)數(shù)器的輸出,當(dāng)Y數(shù)值大于計(jì)數(shù)值時(shí)輸出高電平,即可實(shí)現(xiàn)另一路PWM量化的功能,輸出V-。在FPGA的外部,P14為差分放大器,實(shí)現(xiàn)V+和V-兩路PWM信號(hào)的相減功能。然后再經(jīng)P15濾波器濾除高頻分量,即可得到合成的高精度模擬信號(hào)Vout。
實(shí)施方式二,如圖8所示該實(shí)施例應(yīng)用非線性補(bǔ)償法(原理框圖見(jiàn)附圖6)實(shí)現(xiàn)全數(shù)字音頻功率放大器的應(yīng)用。
本發(fā)明涉及的雙模PWM量化器可通過(guò)本實(shí)施例中的一塊大規(guī)??删幊涕T陣列FPGA和外圍模擬電路來(lái)實(shí)現(xiàn)。該門陣列型號(hào)為EP20K100,其內(nèi)部由15個(gè)電路單元構(gòu)成。P1為一個(gè)16位減法器,執(zhí)行輸入的16位音頻數(shù)據(jù)Data與誤差數(shù)據(jù)的減法運(yùn)算,其中誤差數(shù)據(jù)來(lái)自反饋支路,由非線性補(bǔ)償算法動(dòng)態(tài)產(chǎn)生。P1輸出17位數(shù)據(jù),最高位是符號(hào)位。P2為一個(gè)補(bǔ)碼電路,當(dāng)符號(hào)位為負(fù)時(shí),將16位數(shù)據(jù)取反加一后輸出,完成原理框圖中的取絕對(duì)值電路功能。P3為一個(gè)16位的鎖存器,其高8位輸出數(shù)據(jù)H,低8位輸出數(shù)據(jù)L,完成原理框圖中的數(shù)據(jù)分解器功能。在這里應(yīng)用鎖存器是為提高電路性能而設(shè)的。P4為一個(gè)二選一電路,由P12輸出的符號(hào)位控制,當(dāng)符號(hào)位為正時(shí)選擇死區(qū)門限δ(來(lái)自總線接口)輸出,否則選擇數(shù)據(jù)L輸出。P5為一個(gè)8位全加器,實(shí)現(xiàn)H與L或H與δ的相加。P6為一個(gè)17位鎖存器,輸出數(shù)據(jù)X和Y。應(yīng)用鎖存器是為提高電路性能而設(shè)的。P7、P8分別是一個(gè)9位計(jì)數(shù)器和一個(gè)9位比較器,構(gòu)成一個(gè)9位PWM量化器。P7的輸入頻率是數(shù)據(jù)采樣頻率fr的510倍,加計(jì)數(shù)0~509,510為一個(gè)循環(huán),P8比較數(shù)據(jù)X和計(jì)數(shù)器的輸出,當(dāng)X數(shù)值大于計(jì)數(shù)值時(shí)輸出高電平,即可實(shí)現(xiàn)PWM量化功能,輸出兩路相位相反的信號(hào)。P9、P10分別是一個(gè)9位計(jì)數(shù)器和一個(gè)9位比較器,構(gòu)成另一個(gè)9位PWM量化器。P9的輸入頻率是數(shù)據(jù)采樣頻率fr的512倍,加計(jì)數(shù)0~511,512為一個(gè)循環(huán),P10比較數(shù)據(jù)Y和計(jì)數(shù)器的輸出,當(dāng)Y數(shù)值大于計(jì)數(shù)值時(shí)輸出高電平,即可實(shí)現(xiàn)另一路PWM量化的功能,輸出兩路相位相反的信號(hào)。P11為四組二選一電路,實(shí)現(xiàn)原理框圖中的輸出切換開(kāi)關(guān)的功能,保證輸出信號(hào)V+和V-極性的正確性。P12為一個(gè)8位減法器,對(duì)死區(qū)門限δ和數(shù)據(jù)L進(jìn)行相減運(yùn)算,輸出誤差的絕對(duì)值,同時(shí)輸出符號(hào)位去控制兩個(gè)二選一電路動(dòng)作。P13為另一個(gè)二選一電路,作用是在需要進(jìn)行非線性補(bǔ)償時(shí)將誤差分量送入反饋支路。P14為一個(gè)補(bǔ)碼電路,當(dāng)輸入數(shù)據(jù)的符號(hào)位為負(fù)時(shí),將誤差的絕對(duì)值取反加一,使反饋的誤差符號(hào)正確。P15為一個(gè)9位鎖存器,完成原理框圖中的延時(shí)器功能,使反饋支路閉環(huán)。在FPGA的外部,P16為MOS驅(qū)動(dòng)電路,用于驅(qū)動(dòng)4個(gè)功率開(kāi)關(guān)的導(dǎo)通和截止。P17、P18、P19、P20為4個(gè)功率開(kāi)關(guān)管,組成H橋式電路,實(shí)現(xiàn)將放大的PWM脈沖信號(hào)以差分形式加到負(fù)載上。P21為負(fù)載,在此實(shí)現(xiàn)經(jīng)放大了的V+和V-兩路PWM信號(hào)的相減功能。
權(quán)利要求
1.一種提高脈沖寬度調(diào)制量化精度的方法,它是將一個(gè)p比特輸入數(shù)據(jù)Data分解為一個(gè)m比特的高位數(shù)據(jù)H和一個(gè)n比特的低位數(shù)據(jù)L,兩數(shù)據(jù)H、L通過(guò)編碼后形成數(shù)據(jù)X和Y,再分別輸入給兩個(gè)PWM量化器;兩個(gè)PWM量化器的時(shí)鐘分別是fa和fb,經(jīng)兩個(gè)PWM量化器的輸出數(shù)據(jù)表達(dá)式分別是X/k*(2n-1)和Y/k*2n;以上數(shù)據(jù)各自滿足以下關(guān)系式(1)m+n=p;(2)Data=2n*H+L;(3)fa=k*(2n-1)*fr,fh=k*2n*fr,其中k是常數(shù),fr是數(shù)據(jù)采樣頻率,n是正整數(shù),數(shù)值等于低位二進(jìn)制數(shù)據(jù)L的位數(shù);(4)Data/k*2n*(2n-1)=X/k*(2n-1)-Y/k*2n。
2.如權(quán)利要求1所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于輸入數(shù)據(jù)分解編碼通過(guò)一個(gè)數(shù)據(jù)分配器完成,數(shù)據(jù)分配器對(duì)輸入數(shù)據(jù)Data分解編碼后的兩個(gè)較低精度的二進(jìn)制數(shù)據(jù)X和Y,數(shù)據(jù)X和Y滿足下面的關(guān)系X=H+L,Y=L;X進(jìn)入PWM量化器PWM_a進(jìn)于量化,Y進(jìn)入PWM量化器PWM b進(jìn)行量化,兩量化器分別直接輸出兩組脈沖信號(hào)V+和V-。
3.如權(quán)利要求1所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于輸入數(shù)據(jù)分解編碼通過(guò)一個(gè)數(shù)據(jù)分配器完成;數(shù)據(jù)分配器在對(duì)輸入數(shù)據(jù)Data進(jìn)行分解編碼時(shí),首先提取輸入數(shù)據(jù)的符號(hào)Sign,送至輸出切換開(kāi)關(guān)SW,數(shù)據(jù)分配器取輸入數(shù)據(jù)絕對(duì)值分解編碼的兩個(gè)較低精度的二進(jìn)制數(shù)據(jù)X和Y,數(shù)據(jù)X和Y滿足下面的關(guān)系X=H+L,Y=L;X進(jìn)入PWM量化器PWM_a進(jìn)行量化,Y進(jìn)入PWM量化器PWM_b進(jìn)行量化,產(chǎn)生兩組脈沖信號(hào)Va和Vb;兩組脈沖信號(hào)Va和Vb通過(guò)輸出切換開(kāi)關(guān)SW控制輸出兩組脈沖信號(hào)V+和V-。
4.如權(quán)利要求2所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償,滿足下面的算式X=H+L+u,Y=L+v,其中u、v是正整數(shù)。
5.如權(quán)利要求3所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償,滿足下面的算式X=H+L+u,Y=L+v,其中u、v是正整數(shù)。
6.如權(quán)利要求4或5所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于線性補(bǔ)償量滿足如下條件u/(k*(2n-1))=v/(k*2n)
7.如權(quán)利要求2所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于它是對(duì)于輸入帶符號(hào)的數(shù)據(jù),為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行線性補(bǔ)償;數(shù)據(jù)分配器接受輸入帶符號(hào)的數(shù)據(jù)Data,首先送入取絕對(duì)值電路,提取出符號(hào)位Sign,再將絕對(duì)值數(shù)據(jù)進(jìn)行分解,分解后的數(shù)據(jù)H+L、L分別與符號(hào)位相乘,再分別進(jìn)行線性補(bǔ)償;數(shù)據(jù)遵循如下規(guī)則(1)若輸入數(shù)據(jù)Data為正數(shù),則X=H+L+u,Y=L+v;(2)若輸入數(shù)據(jù)Data為負(fù)數(shù),則X=u-(H+L),Y=v-L;其中u/(k*(2n-1))=v/v(k*2n)=ζ,u、v是正整數(shù),ζ是輸入數(shù)據(jù)為零時(shí)的占空比,H、L是由輸入數(shù)據(jù)Data的絕對(duì)值D分解所得。
8.如權(quán)利要求4或5所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于線性補(bǔ)償量的關(guān)系為u/(k*(2n-1))-v/(k*2n)=ε,由此會(huì)產(chǎn)生誤差e,數(shù)值為e=u*2n-v*(2n-1),將輸入數(shù)據(jù)Data先減去誤差e后,得到抵消誤差后的數(shù)據(jù)Data’,再對(duì)數(shù)據(jù)Data’進(jìn)行分配、量化處理。
9.如權(quán)利要求3所述提高脈沖寬度調(diào)制量化精度的方法,其特征在于為避免PWM進(jìn)入死區(qū)或出現(xiàn)負(fù)值,對(duì)其輸出的數(shù)據(jù)X和Y進(jìn)行非線性補(bǔ)償,其過(guò)程為PWM的死區(qū)門限為δ,對(duì)第i個(gè)輸入數(shù)據(jù)Datai減去誤差ei-1后的數(shù)據(jù)Datai’取絕對(duì)值分解為Hi和Li,數(shù)據(jù)Li與PWM的死區(qū)門限δ比較,二選一開(kāi)關(guān)K1控制數(shù)據(jù)Li的輸出;二選一開(kāi)關(guān)K2控制數(shù)據(jù)Li與PWM的死區(qū)門限δ的比較誤差ei的絕對(duì)值與數(shù)據(jù)符號(hào)signi相乘,延時(shí)一個(gè)采樣周期后與輸入數(shù)據(jù)Datai+1進(jìn)行運(yùn)算;以上數(shù)據(jù)滿足下面的關(guān)系Li<δ,輸出數(shù)據(jù)為Xi=Hi+δ,Yi=δ;Li≥δ,輸出數(shù)據(jù)為Xi=Hi+Li,Yi=Li;誤差ei-1=signi-1*(δ-Li-1),Datai’=Datai-ei-1。
全文摘要
本發(fā)明提出一種新的脈沖寬度調(diào)制量化的方法,以實(shí)現(xiàn)在較低的時(shí)鐘頻率下,完成較高的量化精度。它是將一個(gè)p比特輸入數(shù)據(jù)Data分解為一個(gè)m比特的高位數(shù)據(jù)H和一個(gè)n比特的低位數(shù)據(jù)L,兩數(shù)據(jù)H、L通過(guò)編碼后形成數(shù)據(jù)X和Y,再分別輸入給兩個(gè)PWM量化器;兩個(gè)PWM量化器的時(shí)鐘分別是f
文檔編號(hào)H03F3/217GK1345121SQ01128418
公開(kāi)日2002年4月17日 申請(qǐng)日期2001年9月6日 優(yōu)先權(quán)日2001年9月6日
發(fā)明者馬玉國(guó) 申請(qǐng)人:長(zhǎng)征火箭技術(shù)股份有限公司