課程設計脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真_第1頁
課程設計脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真_第2頁
課程設計脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真_第3頁
課程設計脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真_第4頁
課程設計脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、 重慶三峽學院 通信原理課程設計題 目:脈沖編碼調(diào)制(PCM)系統(tǒng)設計與仿真院 (系): 物理與電子工程學院 班 級: 2007級1班 負 責 人: 學號: 小組成員: 學號: 指導教師: 摘要 :脈沖編碼調(diào)制(PCM)是現(xiàn)代語音通信中數(shù)字化的重要編碼方式。 MATLAB 仿真軟件可以實現(xiàn)多層次的通信系統(tǒng)仿真。利用MATLAB 軟件實現(xiàn)脈沖編碼調(diào)制(PCM)仿真,可以為硬件電路實現(xiàn)提供理論依據(jù)。通過仿真展示了PCM編碼實現(xiàn)的設計思路及具體過程,并加以進行分析。關鍵詞: PCM 編譯碼1、脈沖編碼調(diào)制(PCM)原理脈沖編碼調(diào)制(PCM)簡稱脈碼調(diào)制,它是一種用二進制數(shù)字代碼來代替連續(xù)信號的抽樣值

2、,從而實現(xiàn)通信的方式。由于這種通信方式抗干擾能力強,因此在光釬通信、數(shù)字微波通信、衛(wèi)星通信中均獲得了極為廣泛的運用。PCM信號的形成是模擬信號經(jīng)過“抽樣、量化、編碼”三個步驟實現(xiàn)的。分別完成時間上離散、幅度上離散、及量化信號的二進制表示。根據(jù)CCITT的建議,為改善小信號量化性能,采用壓擴非均勻量化,有兩種建議方式,分別為A律和律方式,我國采用了A律方式,由于A律壓縮實現(xiàn)復雜,常使用 13 折線法編碼。PCM系統(tǒng)的原理框圖如圖1.1所示。在編碼器(1.1(a)中由沖擊脈沖對模擬信號抽樣,得到在抽樣時刻上的信號抽樣值。這個抽樣值仍是模擬量。在它量化之前,通常用保持電路將其做短暫保存,以便電路有時

3、間將其量化。在實際電路中常把抽樣和保持電路做在一起,稱為抽樣保持電路。圖中的量化器把模擬抽樣信號變成離散的數(shù)字量,然后在編碼器中進行二進制編碼。這樣,每個二進制碼組就代表一個量化后的信號抽樣值。圖1.1(b)中的譯碼器的原理與編碼過程相反,這里不再贅述。 模擬信號輸入 抽樣保持 量化器 編碼器 PCM信號輸出 沖激脈沖 (a)編碼器PCM信號輸入 譯碼器 低通濾波器 模擬信號輸出 (b)譯碼器 圖1.1 PCM原理方框圖1.1 抽樣所謂抽樣,就是對模擬信號進行周期性掃描,把時間上連續(xù)的信號變成時間上離散的信號。該模擬信號經(jīng)過抽樣后還應當包含原信號中所有信息,也就是說能無失真的恢復原模擬信號。它

4、的抽樣速率的下限是由抽樣定理確定的。在一個頻帶限制在(0,f h)內(nèi)的時間連續(xù)信號f(t),如果以1/2 f h的時間間隔對它進行抽樣,那么根據(jù)這些抽樣值就能完全恢復原信號。或者說,如果一個連續(xù)信號f(t)的頻譜中最高頻率不超過f h,當抽樣頻率f S2 f h時,抽樣后的信號就包含原連續(xù)的全部信息。這就是抽樣定理。1.2量化從數(shù)學上來看,量化就是把一個連續(xù)幅度值的無限數(shù)集合映射成一個離散幅度值的有限數(shù)集合。如圖2所示,量化器Q輸出L個量化值,k=1,2,3,L。常稱為重建電平或量化電平。當量化器輸入信號幅度落在與之間時,量化器輸出電平為。這個量化過程可以表達為: (1-1) 這里稱為分層電平

5、或判決閾值。通常稱為量化間隔。模擬入量化器量化值 圖1.2 模擬信號的量化 量化后的抽樣信號于量化前的抽樣信號相比較,當然有所失真,且不再是模擬信號。這種失真在接收端還原模擬信號是變現(xiàn)為噪聲,并稱為量化噪聲。量化噪聲的大小取決于把樣值分級“取整”的方式,分的級數(shù)越多,即量化極差或間隔越小,量化噪聲也越小。模擬信號的量化分為均勻量化和非均勻量化。由于均勻量化存在的主要缺點是:無論抽樣值大小如何,量化噪聲的均方根值都固定不變。因此,當信號較小時,則信號量化噪聲功率比也就很小,這樣,對于弱信號時的量化信噪比就難以達到給定的要求。通常,把滿足信噪比要求的輸入信號取值范圍定義為動態(tài)范圍,可見,均勻量化時

6、的信號動態(tài)范圍將受到較大的限制。為了克服這個缺點,實際中,往往采用非均勻量化。非均勻量化是根據(jù)信號的不同區(qū)間來確定量化間隔的。對于信號取值小的區(qū)間,其量化間隔也??;反之,量化間隔就大。它與均勻量化相比,有兩個突出的優(yōu)點。首先,當輸入量化器的信號具有非均勻分布的概率密度(實際中常常是這樣)時,非均勻量化器的輸出端可以得到較高的平均信號量化噪聲功率比;其次,非均勻量化時,量化噪聲功率的均方根值基本上與信號抽樣值成比例。因此量化噪聲對大、小信號的影響大致相同,即改善了小信號時的量化信噪比。實際中,非均勻量化的實際方法通常是將抽樣值通過壓縮再進行均勻量化。通常使用的壓縮器中,大多采用對數(shù)式壓縮。廣泛采

7、用的兩種對數(shù)壓縮律是壓縮律和A壓縮律。美國采用壓縮律,我國和歐洲各國均采用A壓縮律,因此,PCM編碼方式采用的也是A壓縮律。所謂A壓縮律也就是壓縮器具有如下特性的壓縮律: (1-2) (1-3)未壓縮(1)(2)(3)(4)(5)(6)(7)(8) 0 A律壓擴特性是連續(xù)曲線,A值不同壓擴特性亦不同,在電路上實現(xiàn)這樣的函數(shù)規(guī)律是相當復雜的。實際中,往往都采用近似于A律函數(shù)規(guī)律的13折線(A=87.6)的壓擴特性。這樣,它基本上保持了連續(xù)壓擴特性曲線的優(yōu)點,又便于用電路實現(xiàn),本設計中所用到的PCM編碼正是采用這種壓擴特性來進行編碼的。圖1.3示出了這種壓擴特性。 圖1.3 A律13折線表1.1列

8、出了13折線時的值與計算值的比較。表1.1 13折線時的x值與計算x值的比較 y0 1 x0 1按折線分段時的x01段落12345678斜率161684211/21/4 表1.1中第二行的值是根據(jù)時計算得到的,第三行的值是13折線分段時的值??梢?,13折線各段落的分界點與曲線十分逼近,同時按2的冪次分割有利于數(shù)字化。1.3編碼(Coding)所謂編碼就是把量化后的信號變換成代碼,其相反的過程稱為譯碼。當然,這里的編碼和譯碼與差錯控制編碼和譯碼是完全不同的,前者是屬于信源編碼的范疇。量化后的抽樣信號在一定的取值范圍內(nèi)僅有有限個可取的樣值,且信號正、負幅度分布的對稱性使正、負樣值的個數(shù)相等,正、負

9、向的量化級對稱分布。若將有限個量化樣值的絕對值從小到大依次排列,并對應的依次賦予一個十進制數(shù)字代碼,在碼前以“+”、“”號為前綴,來區(qū)分樣值的正負,則量化后的抽樣信號就轉(zhuǎn)化為按抽樣時序排列的一串十進制數(shù)字碼流,即十進制數(shù)字信號。把量化的抽樣信號變換成給定字長的二進制碼流的過程為編碼。在現(xiàn)有的編碼方法中,若按編碼的速度來分,大致可分為兩大類:低速編碼和高速編碼。通信中一般都采用第二類。編碼器的種類大體上可以歸結(jié)為三類:逐次比較型、折疊級聯(lián)型、混合型。在逐次比較型編碼方式中,無論采用幾位碼,一般均按極性碼、段落碼、段內(nèi)碼的順序排列。下面結(jié)合13折線的量化來加以說明。表1.2 段落碼 表2.3 段內(nèi)

10、碼段落序號段落碼量化級段內(nèi)碼8111151111141110711013110112110061011110111010105100910018100040117011160110301050101401002001300112001010001000100000 在13折線法中,無論輸入信號是正是負,均按8段折線(8個段落)進行編碼。若用8位折疊二進制碼來表示輸入信號的抽樣量化值,其中用第一位表示量化值的極性,其余七位(第二位至第八位)則表示抽樣量化值的絕對大小。具體的做法是:用第二至第四位表示段落碼,它的8種可能狀態(tài)來分別代表8個段落的起點電平。其它四位表示段內(nèi)碼,它的16種可能狀態(tài)來分別

11、代表每一段落的16個均勻劃分的量化級。這樣處理的結(jié)果,8個段落被劃分成27128個量化級。段落碼和8個段落之間的關系如表1.2所示;段內(nèi)碼與16個量化級之間的關系見表1.3。話音PCM的抽樣頻率為8KHZ,每個量化樣值對應一個8位二進制碼,故話音數(shù)字編碼信號的速率為8bits×8kHz=64kb/s.量化噪聲隨級數(shù)的增多和極差的縮小而縮小。量化級數(shù)增多即樣值個數(shù)增多,就要求更長的二進制編碼。因此,量化噪聲隨二進制編碼的位數(shù)增多而減少,即隨數(shù)字編碼信號的速率提高而減少。自然界中的聲音非常復雜,波形極其復雜,通常我們采用的是脈沖代碼調(diào)制編碼,即PCM編碼。PCM通過抽樣、量化、編碼三個步

12、驟將連續(xù)變化的模擬信號轉(zhuǎn)換為數(shù)字編碼。2、 量化噪聲比 PCM系統(tǒng)輸出端平均信號量化噪聲比僅依賴于每一個編碼組數(shù)N。對于一個頻帶限制在的信號,按照抽樣定理,此時要求每秒鐘最少傳輸?shù)某闃用}沖數(shù)等于2;若PCM系統(tǒng)的編碼位數(shù)為N,則需要系統(tǒng)每秒鐘傳輸2個二進制脈沖。為此,這時的系統(tǒng)的總帶寬B至少等于N。故可用公式: (2-1) 如果模擬信號的概率表示為,則信號量化噪聲比(SQNR)為: (2-2) 其中Y表示為如下式所示的歸一化輸入 (2-3)進而用dB表示的SQNR為 (2-4)量化后,通過為每個量化級數(shù)使用v比特來對這些級數(shù)進行編碼。編碼方案通常選擇為自然二進制編碼(NBC),即最低量化級映射

13、為全0序列而最高量化級映射到全1序列。所有其他級數(shù)以升序映射為各量化值。3、 設計步驟3.1、產(chǎn)生一個幅度為1,頻率w=1的正弦序列。采用均勻PCM方案,將其進行8級和16級量化。在同一坐標系內(nèi)繪出原始信號和量化信號的曲線。將兩種情況得到的SQNR進行比較。3.2、對長度為500的高斯隨機變量序列計算當量化電平數(shù)為64時所得的SQNR,并求出該序列的前5個值,相應的量化值以及相應的碼字。最后,畫出量化誤差。3.3、再分別以量化電平為16和128時重做步驟2,并對二者以及步驟2的結(jié)果進行比較。4、 仿真結(jié)果和分析 4.1、MATAB程序u_pcm.m以為抽樣值序列和所需要的量化級的數(shù)目作為輸入。

14、u_pcm.mfunction sqnr,a_quan,code=u_pcm(a,n)%U_PCM 一個序列的均勻PCM編碼。% SQNR,A_QUAN,CODE=U_PCM(A,N)% a=輸入序列。% n=量化級數(shù)的數(shù)目(偶數(shù))。% sqnr=輸入信號量化噪聲比 (以 dB為單位)。%a_quan=編碼前的量化輸出。%code=編碼后的輸出。amax=max(abs(a);a_quan=a/amax; b_quan=a_quan;d=2/n; %取樣間隔 q=d.*0:n-1;q=q-(n-1)/2)*d;%q是從(11/n)到(11/n),且間隔為2/n的序列;for i=1:n a_q

15、uan(find(q(i)-d/2 <= a_quan) & (a_quan <= q(i)+d/2)=. q(i).*ones(1,length(find(q(i)-d/2 <= a_quan) & (a_quan <= q(i)+d/2);b_quan(find( a_quan=q(i) )=(i-1).*ones(1,length(find( a_quan=q(i) );end a_quan=a_quan*amax; %循環(huán)結(jié)束后,a_quan中為量化后的值,b_quan為量化碼號nu=ceil(log2(n); %天花板函數(shù)求得PCM碼比特數(shù)co

16、de=zeros(length(a),nu); %二維數(shù)組儲存PCM碼%下面代碼為求PCM碼矩陣codefor i=1:length(a) for j=nu:-1:0 if ( fix(b_quan(i)/(2j) = 1)code(i,(nu-j) = 1;b_quan(i) = b_quan(i) - 2j; end endend sqnr=20*log10(norm(a)/norm(a-a_quan); 4.2、選擇信號的持續(xù)時間為10秒。然后用MATLAB程序u_pcm.m,生成8級量化和16級量化兩種情況下的量化信號。程序如下:echo ont=0:0.01:10;a=sin(t);

17、sqnr8,aquan8,code8=u_pcm(a,8);sqnr16,aquan16,code16=u_pcm(a,16);pause %按任意鍵可看到當N=8時的信號量化噪聲比。sqnr8pause %按任意鍵可看到當N=16時的信號量化噪聲比。sqnr16pause %按任意鍵可看到信號及其量化后的曲線。plot (t,a,'-',t,aquan8,'-.',t,aquan16,'-',t,zeros(1,length(t)運行MATLAB可得到如下結(jié)果:sqnr8 = 18.9023sqnr16 = 25.1272 圖4.2.1 8級(

18、斷線)和16級(連續(xù)線)正弦信號均勻PCM 4.3、用MATLAB程序PCM3.m找出當量化級數(shù)為64、16、128時的SQNR,求出該序列的前5個值、相應的量化值和相應的碼字。PCM3.m程序如下:x=1:500;y=randn(1,500);sqnr64, a_quan64, code64 = u_pcm(y, 64);SQNR64=sqnr64a_quan64_result = a_quan64(1), a_quan64(2), a_quan64(3), a_quan64(4), a_quan64(5) %前五個量化值code64_result = code64(1,1:6), code

19、64(2,1:6), code64(3,1:6), code64(4,1:6), code64(5,1:6) %前五個相應的碼字sqnr16, a_quan16, code16 = u_pcm(y, 16);SQNR16=sqnr16a_quan64_result = a_quan16(1), a_quan16(2), a_quan16(3), a_quan16(4), a_quan16(5) code64_result = code64(1,1:4), code64(2,1:4), code64(3,1:4), code64(4,1:4), code64(5,1:4) sqnr128, a_

20、quan128, code128 = u_pcm(y, 128);SQNR128 = sqnr128a_quan128_result = a_quan128(1), a_quan128(2), a_quan128(3), a_quan128(4), a_quan128(5) code128_result = code128(1,1:7), code128(2,1:7), code128(3,1:7), code128(4,1:7), code128(5,1:7) %下面為量化誤差圖形的代碼subplot(2,3,1);plot(x,a_quan16); %畫出量化后的圖形subplot(2,3

21、,4);Y,I = sort(y);% Y, I = sort(A)plot(a_quan16(I),abs(Y-a_quan64(I); %以量化值為橫坐標,量化誤差為縱坐標的圖形xlabel('N = 16');subplot(2,3,2);plot(x,a_quan64);subplot(2,3,5);Y,I = sort(y); plot(a_quan64(I),abs(Y-a_quan64(I);xlabel('N = 64');subplot(2,3,3);plot(x,a_quan128);subplot(2,3,6);Y,I = sort(y);

22、 plot(a_quan128(I),abs(Y-a_quan128(I);xlabel('N = 128');運行MATLAB可得到如下結(jié)果:SQNR64 = 32.3455a_quan64_result = -0.4331 -1.6931 0.1181 0.2756 -1.1419code64_result = 0 1 1 0 1 0 0 0 1 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1 0 1 0 0 0 1SQNR16 = 20.0591a_quan64_result = -0.4725 -1.7325 0.1575 0.1575 -1.1025code64_result = 0 1 1 0 0 0 1 0 1 0 0 0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論