- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
A律PCM编码系统设计与仿真
通信系统建模与仿真实验报告
实验2:MATLAB编程实现 A律PCM编码系统设计与仿真
1 主要技术指标:
输入信号:s(t)=Asin(2πft+θ);
输入信号幅值:A=-70~0dB;
输入信号频率:f=4Hz;
抽样频率:fs=100Hz;
2 总体系统设计框图
图1. A律PCM编解码的系统框图
3 程序块流程设计与检验
3.1 A律PCM编码模块
3.1.1 A律PCM编码规则:
图2 段落码和段内码的编码规则
3.1.2 PCM编码流程
输入信号x后,先判断x的符号,x0时C1=1,x0时C1=0;判断完符号后将信号进行归一化和量化,再进行段落判断以及段内判断,最后将C1~C8输出。流程图如下:
3.2.A律PCM译码模块
对已经编码的信号进行译码时,先输入已经编码的码组,根据极性码的规则提取符号,判断符号位,接着再判断段落位置和段内位置,最后将译码后的结果输出,其译码流程图如下:
4 程序代码及测试仿真结果
4.1 连接全程序
输入的信号进行参数设定:
抽样频率fs=40,dt=1/fs,t=0:dt:2,输入的正弦信号幅度不同,vm1=-70:5:0,这是以分贝为单位的,要将他转换为以伏特为单位的vm=10.^(vm1/20);
开始画图调用各个模块的函数:PCM均匀量化编码[sqnrM,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 仿真结果
在matlab上运行主函数pcm_e_decode.m,可得到原始信号波形,PCM译码后的波形,不同幅度下PCM编码后的量化信噪比以及均匀量化的量化信噪比的波形
图3 原始抽样信号(上)和PCM译码后的重建信号(下)
原始抽样信号与PCM译码后的信号都是正弦波,可以看出经过PCM译码后的重建信号与原始信号相比没有失真,译码正确。
图4 A律PCM编码与均匀量化编码的量化信噪比的比较
从上图可以看出:
(1)对均匀编码和非均匀编码,量化信噪比随着输入信号幅度的变化而变化;
(2)在输入正弦信号幅度相同的情况下,经过A律13折线近似的PCM非均匀量化编码后的信号量化信噪比要比均匀量化编码后的信噪比小,因此,可以得出结论:非均匀量化可以有效地改善量化信噪比。
4.3 Matlab源程序程序代码
%均匀量化编码:
function[sqnr,a_quan,code]=upcm(a,n)
amax=max(abs(a));
a_quan=a/amax; %抽样值归一化
b_quan=a_quan;
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))))
end
a_quan=a_quan*amax;
nu=ceil(log2(n));
code=zeros(length(a),nu);
for i=1:length(a)
for j=nu:-1:0
if(fix(b_quan(i)/(2^j))==1)
code(i,nu-j)=1;
b_quan(i)=b_quan(i)-2^j;
end
end
end
sqnr=20*log10(norm(a)./norm(a-a_quan));
%PCM编码:
function[out]=pcm_encode(x)
for i=1:n
if x(i)0
out(i,1)=1;
else
out(i,1)=0
end
if abs(x(i))0 abs(x(i))32
out(i,2)=0;out(i,3)=0;out(i,4)=0;step=2;st=0;
e
您可能关注的文档
- '大润发'超市的采购与配送指导老师梁锷.doc
- ABB励磁系统相关知识讲解.doc
- A+K平衡流量计安装维护.ppt
- abb变频恒压供水控制柜一拖三原理图及参数设置调试说明.doc
- ACEI在慢性心力衰竭治疗中的临床应用.ppt
- AG玻璃样品承认书.doc
- AFC市场分析.docx
- ANDERSON-GREENWOOD安德森伍德阀门.doc
- ACS和PCI术后患者教育讲座之一.ppt
- ansys 计算应力强度因子.docx
- 教科版(2017秋)科学二年级上册2.6 做一顶帽子 教学设计.docx
- 河北高频考点专训四 质量守恒定律的应用教学设计---2024-2025学年九年级化学人教版(2024)上册.docx
- 大单元教学【核心素养目标】6.3 24时计时法教学设计 人教版三年级下册.docx
- 河南省商城县李集中学2023-2024学年下学期九年级历史中考模拟八(讲评教学设计).docx
- 第18章 第25课时 正方形的性质2023-2024学年八年级下册数学课时分层作业教学设计( 人教版).docx
- Module 8 模块测试 教学设计 2024-2025学年英语外研版八年级上册.docx
- 2024-2025学年小学数学五年级下册浙教版教学设计合集.docx
- 2024-2025学年小学劳动四年级下册人民版《劳动》(2022)教学设计合集.docx
- 2024-2025学年小学数学三年级上册冀教版(2024)教学设计合集.docx
- 2024-2025学年高中生物学必修1《分子与细胞》人教版教学设计合集.docx
文档评论(0)