信源编码-PCM非均匀量化与编码实验报告(完成版).docx

上传人:b****3 文档编号:2489280 上传时间:2022-10-30 格式:DOCX 页数:7 大小:102.77KB
下载 相关 举报
信源编码-PCM非均匀量化与编码实验报告(完成版).docx_第1页
第1页 / 共7页
信源编码-PCM非均匀量化与编码实验报告(完成版).docx_第2页
第2页 / 共7页
信源编码-PCM非均匀量化与编码实验报告(完成版).docx_第3页
第3页 / 共7页
信源编码-PCM非均匀量化与编码实验报告(完成版).docx_第4页
第4页 / 共7页
信源编码-PCM非均匀量化与编码实验报告(完成版).docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

信源编码-PCM非均匀量化与编码实验报告(完成版).docx

《信源编码-PCM非均匀量化与编码实验报告(完成版).docx》由会员分享,可在线阅读,更多相关《信源编码-PCM非均匀量化与编码实验报告(完成版).docx(7页珍藏版)》请在冰豆网上搜索。

信源编码-PCM非均匀量化与编码实验报告(完成版).docx

PCM非均匀量化与编码

实验报告

一、实验目的

(1).了解模拟信号数字化的三个基本步骤:

抽样、量化、编码。

(2).抽样频率、量化级数对信号数字化的影响.

(3).加深对非均匀量化的理解。

(4).理解信息速率与抽样量化编码的关系。

(5).掌握MATLAB语言的函数调用,提高编程编程能力,,为之后的学习做准备。

二、实验内容:

对模拟信号进行抽样、量化并进行13折线PCM编码,运用Matlab软件实现PCM编码全过程。

三、实验步骤与结果

1、抽样:

产生一个周期的正弦波x(t)=1024cos(2πt)mv,分别以4HZ和32Hz的频率进行采样用plot函数在绘出原信号和抽样后的信号序列(可用stem函数)。

(4Hz保存为图1,32Hz保存为图2)

functionsample(f)

t=0:

1/f:

1;

y=1024*cos(2*pi*t);

stem(t,y,'b','filled');

holdon;

T=1:

0.01:

1;

Y=1024*cos(2*pi*T);

plot(T,Y,'r');

2、均匀量化:

对以32Hz的抽样频率进行抽样后的信号的绝对值分别进行8级和2048级均匀量化。

在同一张图上绘出正弦波波形(用plot函数)、量化图(用stairs函数)。

(保存为图3)

functiony=Even(n,m)

t=0:

1/m:

1;

x=1024*cos(2*pi*t);

a=-1024:

2048/n:

1024;

fori=1:

m+1

forj=1:

n

if(x(i)>=a(j)&x(i)<=a(j+1))

y(i)=(a(j)+a(j+1))/2;

end

end

end

y=y/max(y);

if(n==8)

stairs(t,y,'b');

end

if(n==2048)

stairs(t,y,'k')

end

axis([01-1.51.5]);

holdon;

T=0:

0.01:

1;

Y=1024*cos(2*pi*T);

Y=Y/max(Y);

plot(T,Y,'r');

3、PCM编码

对所有的抽样值对应的2048级均匀量化值进行13折线编码,输出相应的PCM编码,并对总的编码比特数进行计数。

具体编码程序流程如下:

抽取第i个样值

判断样值符号

归一化和量化

段落判断

段内判断

输出

开始

结束

取1s原始信号

Y

N

是否达到给定的抽样频率次数32

functioncode=pcm(S)

z=sign(S);

MaxS=max(abs(S));

S=abs(S/MaxS);

Q=2048*S;

code=zeros(length(S),8);

a=[0,16,32,64,128,256,512,1024,2048];

b=[1,1,2,4,8,16,32,64];

fori=1:

length(S)

forj=1:

8

if(Q(i)>=a(j))&&(Q(i)<=a(j+1))

g=dec2bin(j-1,3);

code(i,(2:

4))=[str2num(g

(1))str2num(g

(2))str2num(g(3))];

q=ceil((Q(i)-a(j))/b(j));

ifq==0

code(i,(5:

8))=[0,0,0,0];

elsek=num2str(dec2bin(q-1,4));

code(i,(5:

8))=[str2num(k

(1))str2num(k

(2))str2num(k(3))str2num(k(4))]

end

end

end

ifz(i)>0

code(i,1)=1;

elseifz(i)<0

code(i,1)=0;

end

end

四.结果分析

1.图1,图2的区别和特征

图1和图2分别以4HZ和32Hz的频率对函数进行采样,由于图2的采样频率更高,采集的点更多,更能反映原函数的特征。

2.图3中不同量化等级的区别

图3是对以32Hz的抽样频率进行抽样后的信号的绝对值分别进行8级和2048级均匀量化而产生的函数以及原函数的正弦波波形,可以明显看出2048级的量化更精准,更能反映原函数的特征。

五.实验遇到的问题及解决方法

在该实验中我们主要学习了老师的编码,体会用matlab编程的思想与方法,初步掌握了matlab的应用,之后我与闫黄一起对原来的pcm编码进行了自己的编程,通过自己的变成对matlab有了更深的了解,感受比较深的是遇到matlab编程的问题时,不仅需要自己的思考,而且也需要去与别人讨论,有时也需要向老师与同学咨询,这样才能更快掌握matlab

六.相关源程序

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1