A律PCM編碼系統(tǒng)設(shè)計與仿真_第1頁
A律PCM編碼系統(tǒng)設(shè)計與仿真_第2頁
A律PCM編碼系統(tǒng)設(shè)計與仿真_第3頁
A律PCM編碼系統(tǒng)設(shè)計與仿真_第4頁
A律PCM編碼系統(tǒng)設(shè)計與仿真_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學(xué)習(xí)文檔 僅供參考通信系統(tǒng)建模與仿真實驗報告實驗2:MATLAB編程實現(xiàn) A律PCM編碼系統(tǒng)設(shè)計與仿真1 主要技術(shù)指標(biāo):輸入信號:s(t)=Asin(2ft+);輸入信號幅值:A=-700dB;輸入信號頻率:f=4Hz;抽樣頻率:fs=100Hz;2 總體系統(tǒng)設(shè)計框圖 圖1. A律PCM編解碼的系統(tǒng)框圖3 程序塊流程設(shè)計與檢驗3.1 A律PCM編碼模塊3.1.1 A律PCM編碼規(guī)則:圖2 段落碼和段內(nèi)碼的編碼規(guī)則3.1.2 PCM編碼流程輸入信號x后,先判斷x的符號,x>0時C1=1,x<0時C1=0;判斷完符號后將信號進行歸一化和量化,再進行段落判斷以及段內(nèi)判斷,最后將C1C8輸

2、出。流程圖如下: 輸入信號S判斷符號 歸一化、量化輸出 段內(nèi)判斷 段落判斷 對已經(jīng)編碼的信號進行譯碼時,先輸入已經(jīng)編碼的碼組,根據(jù)極性碼的規(guī)則提取符號,判斷符號位,接著再判斷段落位置和段內(nèi)位置,最后將譯碼后的結(jié)果輸出,其譯碼流程圖如下: 輸入信號S判斷符號 歸一化、量化輸出 段內(nèi)判斷 段落判斷 4 程序代碼及測試仿真結(jié)果4.1 連接全程序輸入的信號進行參數(shù)設(shè)定:抽樣頻率fs=40,dt=1/fs,t=0:dt:2,輸入的正弦信號幅度不同,vm1=-70:5:0,這是以分貝為單位的,要將他轉(zhuǎn)換為以伏特為單位的vm=10.(vm1/20);開始畫圖調(diào)用各個模塊的函數(shù):PCM均勻量化編碼sqnrM,

3、zxx,zz=upcm(x,M),PCM編碼y=pcm_encode(sxx),PCM解碼yy=pcm_decode(y,v);還要計算噪聲平均功率與信號平均功率來得到信號的量化信噪比:nq(m)=sum(x-yy).*(x-yy)/length(x); sq(m)=mean(yy.2); snr(m)=(sq(m)/nq(m);4.2 仿真結(jié)果在matlab上運行主函數(shù)pcm_e_decode.m,可得到原始信號波形,PCM譯碼后的波形,不同幅度下PCM編碼后的量化信噪比以及均勻量化的量化信噪比的波形 圖3 原始抽樣信號上和PCM譯碼后的重建信號下原始抽樣信號與PCM譯碼后的信號都是正弦波,

4、可以看出經(jīng)過PCM譯碼后的重建信號與原始信號相比沒有失真,譯碼正確。圖4 A律PCM編碼與均勻量化編碼的量化信噪比的比較從上圖可以看出:1對均勻編碼和非均勻編碼,量化信噪比隨著輸入信號幅度的變化而變化;2在輸入正弦信號幅度相同的情況下,經(jīng)過A律13折線近似的PCM非均勻量化編碼后的信號量化信噪比要比均勻量化編碼后的信噪比小,因此,可以得出結(jié)論:非均勻量化可以有效地改善量化信噪比。4.3 Matlab源程序程序代碼%均勻量化編碼:functionsqnr,a_quan,code=upcm(a,n)amax=max(abs(a);a_quan=a/amax; %抽樣值歸一化b_quan=a_qua

5、n;d=2/n;q=d.*0:n-1-(n-1)/2*d;%對歸一化的輸入信號序列進行量化for i=1:n index=find(q(i)-d/2<=a_quan)&(a_quan<=q(i)+d/2); a_quan(index)=q(i).*ones(1,length(index); b_quan(find(a_quan=q(i)=(i-1).*ones(1,length(find(a_quan=q(i)enda_quan=a_quan*amax;nu=ceil(log2(n);code=zeros(length(a),nu);for i=1:length(a) fo

6、r j=nu:-1:0 if(fix(b_quan(i)/(2j)=1) code(i,nu-j)=1; b_quan(i)=b_quan(i)-2j; end endendsqnr=20*log10(norm(a)./norm(a-a_quan);%PCM編碼:functionout=pcm_encode(x)for i=1:n if x(i)>0 out(i,1)=1; else out(i,1)=0 endif abs(x(i)>0 & abs(x(i)<32 out(i,2)=0;out(i,3)=0;out(i,4)=0;step=2;st=0; elsei

7、f abs(x(i)>=32 & abs(x(i)<64 out(i,2)=0;out(i,3)=0;out(i,4)=1;step=2;st=32; elseif abs(x(i)>=64 & abs(x(i)<128 out(i,2)=0;out(i,3)=1;out(i,4)=0;step=4;st=64; elseif abs(x(i)>=128 & abs(x(i)<256 out(i,2)=0;out(i,3)=1;out(i,4)=1;step=8;st=128; elseif abs(x(i)>=256 &

8、; abs(x(i)<512 out(i,2)=1;out(i,3)=0;out(i,4)=0;step=16;st=256; elseif abs(x(i)>=512 & abs(x(i)<1024 out(i,2)=1;out(i,3)=0;out(i,4)=1;step=32;st=512; elseif abs(x(i)>=1024 & abs(x(i)<2048 out(i,2)=1;out(i,3)=1;out(i,4)=0;step=64;st=1024; elseif abs(x(i)>=2048 & abs(x(i)

9、<4096 out(i,2)=1;out(i,3)=1;out(i,4)=1;step=128;st=2048; else out(i,2)=1,out(i,3)=1;out(i,4)=1;step=128;st=2048; end if(abs(x(i)>=4096) out(i,2:8)=1 1 1 1 1 1 1; else tmp=floor(abs(x(i)-st)/step); t=dec2bin(tmp,4)-48; %函數(shù)dec2bin輸出的是ASCII字符串,48對應(yīng)0 out(i,5:8)=t(1:4); endendout=reshape(out',1

10、,8*n);%PCM譯碼:functionout=pcm_decode(in,v)%decode the input pcm code%in, input the pcm code 8bits sample%v, quantized leveln=length(in);in=reshape (in',8,n/8);slot(1)=0;slot(2)=32;slot(3)=64;slot(4)=128;slot(5)=256;slot(6)=512;slot(7)=1024;slot(8)=2048;step(1)=2;step(2)=2;step(3)=4;step(4)=8;step

11、(5)=16;step(6)=32;step(7)=64;step(8)=128;for i=1:n/8 ss=2*in(1,i)-1; tmp=in(2,i)*4+in(3,i)*2+in(4,i)+1; st=slot(tmp); dt=(in(5,i)*8+in(6,i)*4+in(7,i)*2+in(8,i)*step(tmp)+0.5*step(tmp); out(i)=ss*(st+dt)/4096*v;end%主程序中:figure(1)for k=1:length(vm) for m=1:2 x=vm(k)*sin(2*pi*4*t+2*pi*rand(1); sqnrM,zxx,zz=upcm(x,M); %PCM均勻量化編碼 srm(m)=sqnrM; v=vm(k); xx=x/v; %normalize sxx=floor(xx*4096); y=pcm_encode(sxx); %PCM編碼 yy=pcm_decod

溫馨提示

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

評論

0/150

提交評論