通信原理课程设计模拟信号数字化PCM编码设计.docx

上传人:b****5 文档编号:4574944 上传时间:2022-12-06 格式:DOCX 页数:26 大小:341.18KB
下载 相关 举报
通信原理课程设计模拟信号数字化PCM编码设计.docx_第1页
第1页 / 共26页
通信原理课程设计模拟信号数字化PCM编码设计.docx_第2页
第2页 / 共26页
通信原理课程设计模拟信号数字化PCM编码设计.docx_第3页
第3页 / 共26页
通信原理课程设计模拟信号数字化PCM编码设计.docx_第4页
第4页 / 共26页
通信原理课程设计模拟信号数字化PCM编码设计.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

通信原理课程设计模拟信号数字化PCM编码设计.docx

《通信原理课程设计模拟信号数字化PCM编码设计.docx》由会员分享,可在线阅读,更多相关《通信原理课程设计模拟信号数字化PCM编码设计.docx(26页珍藏版)》请在冰豆网上搜索。

通信原理课程设计模拟信号数字化PCM编码设计.docx

通信原理课程设计模拟信号数字化PCM编码设计

 

1.1基本原理……………………………………………………………………….......4

1.2对模拟信号抽样…………………………………………………………………….4

1.3对离散数字信号序列量化…………………………………………………………..6

1.4对量化后数字信号进行编码………………………………………………………10

2、仿真程序、程序编制、流程图、仿真结果……………………11

2.1抽样定理验证………………………………………………………………………11

2.2量化与编码…………………………………………………………………………15

2.3整个程序设计流程…………………………………………………………………20

3.PCM8位编码…………………………………………………….23

3.1误码率分析…………………………………………………………………………24

3.2A律和U律变换…………………………………………………………………...25

4.增量调制……………………………………………………………………………...27

4.1.增量调制源代码……………………………………………………………………27

4.2.增量调制原理图……………………………………………………………………28

5新的体会………………………………………………………….28

6.参考文献………………………………………………………….29

一、课程设计目的

本课程是为通信工程专业本科生开设的专业必修课,结合学生的专业方向的理论课程,充分发挥学生的主动性,使学生掌握应用MATLAB或者SYSTEMVIEW等仿真软件建立通信系统,巩固理论课程内容,规X文档的建立,培养学生的创新能力,并能够运用其所学知识进行综合的设计。

通信系统原理的课程设计是对通信系统仿真软件、课程学习的综合检验,配合理论课的教学,让学生亲自参加设计、仿真、验证通信系统的一般原理、调制解调原理、信号传输及受噪声影响等方面的知识点。

二、设计任务书

设计选题:

模拟信号数字化PCM编码设计

主要内容:

1.模拟信号数字化的处理步骤:

抽样、量化、编码

2.模拟信号的抽样过程,理解抽样频率的变化对抽样信号的影响;

3.用MATLAB对PCM编码进行使用A律和μ律的压缩和扩X进行软件仿真;

4.PCM的8位编码C1C2C3C4C5C6C7C8

5.仿真实现增量调制的过程和并理解噪声产生的原理。

三、进度安排

星期一:

讲课程设计的内容,安排每一天的具体任务,熟悉软件的编程环境MATLAB/SIMULINK;

星期二:

查资料,确定课程设计的题目;

星期三:

确定设计方案,写出设计思想;

星期四:

编写修改程序,必须有详细的程序注释,得出结果;

星期五:

写总结报告,检查各位的做的情况,考评设计成绩。

上交的材料:

包含三样:

(课程设计的电子稿、打印稿、程序)

四、具体要求

1.课程设计的内容独立自主完成,课程设计报告内容完整、格式规X、排版整洁美观;

2.设计选用的语言不限,推荐使用MATLAB、C均可,编写出的程序,必须有详细的注释说明;

五、成绩评定

考核方法:

现场验收(占50%),课程设计报告(占50%)。

考核内容:

学习态度(出勤情况,平时表现等)、方案合理性、程序编制质量、演示效果、设计报告质量。

成绩评定:

优,良,中,及格,不及格。

特别说明:

(1)如发现抄袭,按照不及格处理。

(2)材料不齐的,考核等级降一级。

电子稿件以文件夹的形式上交的文件的命名为:

(学号的最后两位+XX)

 

六、课程设计内容

1、模拟信号数字化的处理

1.1基本原理

通信系统可以分为模拟和数字通信系统两大类。

数字通信系统有很多的优点,应用非常广泛,已经成为现代通信的主要发展趋势。

自然界中很多信号都是模拟量,我们要进行数字传输就要将模拟量进行数字化,将模拟信号数字化,处理可以分为抽样,量化,编码,这三个步骤。

(1)、下图是模拟信号数字传输的过程原理图:

 

(2)、下图是模拟信号数字化过程:

 

1.2对模拟信号进行抽样

抽样是把时间上连续的模拟信号变成一系列时间上离散的抽样值的过程。

抽样定理:

设一个频带限制的(0,fH)Hz内的时间连续信号m(t)如果它不少于2fH次/s的速率进行抽样,则m(t)可以由抽样值完全确定。

抽样定理指出,由样值序列无失真恢复原信号的条件是fs≥2fH,为了满足抽样定理,要求模拟信号的频谱限制在0~fH之内(fH为模拟信号的最高频率)。

为此,在抽样之前,先设置一个前置低通滤波器,将模拟信号的带宽限制在fH以下,如果前置低通滤波器特性不良或者抽样频率过低都会产生折叠噪声。

抽样频率小于2倍频谱最高频率时,信号的频谱有混叠。

抽样频率大于2倍频谱最高频率时,信号的频谱无混叠。

取样分为冲激取样和矩形脉冲取样,这里只详细介绍冲激取样的原理和过程,矩形脉冲取样的原理和冲激取样的是一样的,只不过取样函数变成了矩形脉冲序列。

数学运算与冲激取样是一样的。

冲激取样就是通过冲激函数进行取样。

上图左边就是简化的模拟信号转换离散的数字信号的抽样过程,其中f(t)是连续的时间信号,也就是模拟信号,在送到乘法器上与s(t)取样脉冲序列进行乘法运算,事实上取样脉冲序列就是离散的一个个冲激函数(冲激函数如上图右边的图),右边部分的fs(t)就是变成了一个个离散的函数点了。

下面给出抽样的数学运算过程。

 

抽样过程的冲激抽样的函数过程:

因此:

fs(t)

另外要注意的是,采样间隔的周期要足够的小,采样率要做够的大,要不然会出现如下图所示的混叠现象,一帮情况下TsWs=2π,Wn>2Wm。

1.3对离散数字信号序列量化

量化就是利用预先规定的有限个电平来表示模拟信号抽样值的过程。

时间连续的模拟信号经过抽样后的样值序列虽然在时间上离散,但是在幅度上仍然是连续的,也就是说,抽样值m(kT)可以取到无穷多个值,这个很容易理解的,因为在一个区间里面可以取出无数的不同的数值,这就可以看成是连续的信号,所有这样的信号仍然属于模拟信号X围。

因此这就有了对信号进行量化的概念。

在通信系统中已经有很多的量化方法了,最常见的就是均匀量化与非均匀量化。

均匀量化概念比较早出来。

因其有很多的不足之处,很少被使用,这就有了非均匀量化的概念。

均匀量化就是把信号的取值X围按照等距离分割,每个量化电平都取中间值(也就是平均值),落在这个区间的所有值都用这个值代替。

当信号的变化X围和量化电平被确定后,量化间隔也就被确定。

在语言信号数字化通信中,均匀量化有个明显不足之处:

量化信噪比随信号的电平的减小而下降。

为了克服这个缺点,实际中往往采用非均匀量化。

非均匀量化是一种在整个动态X围内量化间隔不相等的量化。

它是根据输入信号的概率密度函数来分布量化电平的,以改善量化性能,它的特点是输入小时量阶也小,输入大时,量阶也大。

整个X围内信噪比几乎是一样的,缩短了码字长度,提高了编码效率。

实际中非均匀量化的方法之一是把输入量化器的信号x先进行压塑处理,再把压缩的信号y进行非均匀量化。

压缩器其实就是一个非线性电路,微弱的信号被放大,强的信号被压缩,压缩器的输入输出关系可以这样表示:

y=f(x)

接受端采用一个与压缩特性相反的扩X器来恢复x。

下图就是压缩与扩X的示意图:

 

通常使用的压缩器中,大多数采用对数压缩,即y=lnx。

广泛采用这两种对数压扩特性的是u/A率压扩。

μ律压缩特性

压缩规律:

μ压缩特性近似满足下对数规律

μ律压缩定性分析

μ=0时:

无压缩作用(直线)

μ>0时:

μ↑→压缩明显

压缩作用---y是均匀的,而x是非均匀的→信号越小△x也越小

 

A压缩率

所谓的A压缩率就是压缩器具有如下特性:

 

 

上式中:

x为归一化的压缩器输入电压;归一化的压缩器输出电压;A为压扩参数,表示压缩程度。

下图是由抽样后的离散信号量化的过程

量化过程如下如所示:

量化器,其输出信号xq(t)=xq(kT)=qi,qi为M个量化电平q1、q2⋯qM之一。

m1、m2⋯mM-1为量化区间的端点。

在量化时候会产生量化误差,这里不作详细介绍,其量化误差计算公式如下:

量化后量化输出为:

我们衡量一个量化器的性能好坏用信噪比来表示:

信噪比定义如下:

 

其中:

xq(t)与x(t)近似程度的好坏用Sq/Nq衡量。

Sq/Nq越大,说明近似程度越好。

非均匀量化中有如下的压扩特性:

 

在实用中需按照不同情况对理想压缩特性作适当修正。

压扩特性数学分析:

当量化区间划分很多时,在每一量化区间内压缩特性曲线可以近似看作为一段直线,其斜率为:

对此压缩器的输入和输出电压X围均作归一化,且纵坐标y在0和1之间均匀划分成N个量化区间,则每个量化区间的间隔应该等于:

为了对不同的信号强度保持信号量噪比恒定,当输入电压x减小时,应当使量化间隔∆x按比例地减小,即:

∆x∝x。

将边界条件(当x=1时,y=1),代入可得:

k+c=0→c=-k

1.4对量化后的数字信号进行编码

所谓编码就是把量化后的信号变换成代码,其相反的过程称为译码。

当然,这里的编码和译码与差错控制编码和译码是完全不同的,前者是属于信源编码的X畴。

在现有的编码方法中,若按编码的速度来分,大致可分为两大类:

低速编码和高速编码。

通信中一般都采用第二类。

编码器的种类大体上可以归结为三类:

逐次比较型、折叠级联型、混合型。

在逐次比较型编码方式中,无论采用几位码,一般均按极性码、段落码、段内码的顺序排列。

下面结合13折线的量化来加以说明。

在13折线法中,无论输入信号是正是负,均按8段折线(8个段落)进行编码。

若用8位折叠二进制码来表示输入信号的抽样量化值,其中用第一位表示量化值的极性,其余七位(第二位至第八位)则表示抽样量化值的绝对大小。

具体的做法是:

用第二至第四位表示段落码,它的8种可能状态来分别代表8个段落的起点电平。

其它四位表示段内码,它的16种可能状态来分别代表每一段落的16个均匀划分的量化级。

这样处理的结果,8个段落被划分成27=128个量化级。

13折线编码特点:

基本上保持压缩特性,又便于数字实现。

折线的各段斜率:

线段8斜率:

1/8÷1/2=1/4线段7斜率:

1/8÷1/4=1/2

线段6斜率:

1/8÷1/8=1线段5斜率:

1/8÷1/16=2

线段4斜率:

1/8÷1/32=4线段3斜率:

1/8÷1/64=8

线段2斜率:

1/8÷1/128=16线段1斜率:

1/8÷1/128=16

13折线图:

 

完整13折线的图的特性:

(1)负向8段斜线按同样方法得到;

(2)第Ⅲ象限的折线与第Ⅰ象限呈奇对称;

(3)斜率相同的段合为一段,共13段,称为13折线法。

13折线的绘制方法:

(1)将输入输出的电压归一。

(2)将x轴的区间(0,1)不均匀的划分为8段,划分的规律是:

每一次以二分之一取段。

(3)将x轴上分好的8段,在段内分成均匀的16段,每一等份作为一个量化层。

(4)将y轴的区间(0,1)均匀的划分为8段,在段内分成均匀的16段,每一等份作为一个量化层。

(5)将相应的交点连接起来得到8个折线段。

(6)因为还包括小于0的电平,所以在第三象限也有8个折线段,但是在第一象限中第一,二段的折线的斜率和第三象限第一,二段相同,所以四条连成一条,这样整个平面有13条线,所以也称为13折线.

段落序号

段落码

量化级

段内码

8

111

15

1111

14

1110

7

110

13

1101

12

1100

6

101

11

1011

10

1010

5

100

9

1001

8

1000

4

011

7

0111

6

0110

3

010

5

0101

4

0100

2

001

3

0011

2

0010

1

000

1

0001

0

0000

段落码和段落间关系段内码16个量化级间关系

脉冲编码调制-PCM系统的量化噪声:

对于PCM系统,这相当于要求传输速率≥2NfHb/s,故要求系统带宽B=NfH,即要求:

N=B/fH,代入S/Nq=22N,得到

上式表明,PCM系统的输出信号量噪比随系统的带宽B按指数规律增长。

误码率:

对于误码率的计算,我们一般都是对信号的噪声功率和信噪比来进行讨论的。

误码率是衡量数据在规定时间内数据传输精确性的指标。

如果有误码就有误码率。

简单的说,误码率就是在数字传输过程中,在发送到接收端,发送错误的码元个数占总的码元个数的比例。

误码率的计算公式如下:

2、仿真程序、程序编制、流程图、仿真结果

2.1抽样定理的验证

首先我们先要通过matlab软件产生一个模拟信号,然后才能对模拟信号进行抽样等等一系列的操作,下面先给出matlab软件建立m文件产生一个比较熟悉的时域连续的周期函数,f(t)=cos(2*pi*60*t),可以看出这个信号就是由两个最常用的函数复合而成。

(1)、产生原始连续信号的matlab源代码:

%该程序用于画出原信号的图形

clearall;

closeall;

%建立原信号

T=0.002;%取时间间隔为0.01

t=-0.1:

T:

0.1;%时域间隔dt为间隔从0到10画图

xt=cos(2*pi*60*t);%xt方程

(2)、对原始信号进行抽样源代码

%该函数用于画出原始波形和抽样后离散的采样波形图

%绘制离散的采样波形图

%采样:

时间连续信号变为时间离散模拟信号

fs=500;%抽样fs>=2fc,抽样点数目将等于或大于2fc个

sdt=1/fs;%频域采样间隔0.002

t1=-0.1:

sdt:

0.1;%以sdt为间隔从-0.1到0.1画图

st=cos(2*pi*60*t1);%离散的抽样函数

figure

(1);

subplot(3,1,1);

plot(t,xt);title('原始信号');%画出原始的信号图,以好对比

gridon

subplot(3,1,2);%画背景

stem(t1,st,'.');%这里画出来的是抽样后的离散图

title('抽样信号');

gridon%画背景

(3)、抽样结果图

1、抽样频率500HZ

2、抽样频率1000HZ

3、抽样频率100

(4)、实验结果分析

抽样结果与抽样频率有关,抽样频率越高则抽样间隔越小,抽样的点数越多;相反,当抽样频率越低,则抽样间隔越大,抽样的点数越少。

当抽样频率满足fs大于等于2f,则抽样得到的信号没有失真;否则将产生失真。

综上所述,验证了抽样定理。

2.2量化与编码

在抽样以后我们得到了一个个的离散的数字信号序列,但是这个序列并不是我们想要的数字信号序列,因为前面已经说过,这个不是真正的离散数字信号,它只是在时间上是离散的,在幅度上仍然是连续的。

所以就要进行下一步操作—量化。

 

(1)、量化编码的matlab源代码:

%量化过程

n=length(st);%取st的长度为n

M=max(st);

A=(st/M)*2048;%a1(极性码)a2a3a4(段落码)a5a6a7a8

code=zeros(i,8);%产生i*8的零矩阵

fori=1:

n%if循环语句

ifA(i)>=0

code(i,1)=1;%代表正值

else

code(i,1)=0;%代表负值

end

(2)、编码过程源代码

ifabs(A(i))>=0&&abs(A(i))<16

code(i,2)=0;code(i,3)=0;code(i,4)=0;step=1;start=0;

elseif16<=abs(A(i))&&abs(A(i))<32

code(i,2)=0;code(i,3)=0;code(i,4)=1;step=1;start=16;

elseif32<=abs(A(i))&&abs(A(i))<64

code(i,2)=0;code(i,3)=1;code(i,4)=0;step=2;start=32;

elseif64<=abs(A(i))&&abs(A(i))<128

code(i,2)=0;code(i,3)=1;code(i,4)=1;step=4;start=64;

elseif128<=abs(A(i))&&abs(A(i))<256

code(i,2)=1;code(i,3)=0;code(i,4)=0;step=8;start=128;

elseif256<=abs(A(i))&&abs(A(i))<512

code(i,2)=1;code(i,3)=0;code(i,4)=1;step=16;start=256;

elseif512<=abs(A(i))&&abs(A(i))<1024

code(i,2)=1;code(i,3)=1;code(i,4)=0;step=32;start=512;

elseif1024<=abs(A(i))&&abs(A(i))<2048

code(i,2)=1;code(i,3)=1;code(i,4)=1;step=64;start=1024;

end

B=floor((abs(A(i))-start)/step);%段内码编码floor取整(四舍五入)

t=dec2bin(B,4)-48;%dec2bin定义将B变为4位2进制码,-48改变格式

code(i,5:

8)=t(1:

4);%输出段内码

end

code=reshape(code',1,8*n);%reshape代表从新塑形

code

subplot(3,1,3);

stem(code,'.');axis([16401]);

title('编码信号');

gridon

(3)、量化编码结果图

以下为前十个编码

code=

Columns1through13

1111011011111

Columns14through26

1011000100011

Columns27through39

1111101111100

Columns40through52

0111011011100

Columns53through65

1000011000010

Columns66through78

1110011011110

Columns79through91

1101111111011

Columns92through104

1111101111010

Columns105through117

0111000101011

Columns118through130

0111101010011

 

2.3整个程序设计流程

图1-4程序设计大致流程

(1)、A律13折线和U律变换

%a律13折线u律15折线

%uandAlawforquantize,filename:

a_u_law.m

%u=255y=ln(1+ux)/ln(1+u)

%A=87.6y=Ax/(1+lnA)(0

clearall;

closeall;

dx=0.01;

x=0:

dx:

1;

u=255;

%uLaw

yu=log(1+u*x)/log(1+u);

%ALaw

A=87.6;

fori=1:

length(x)

ifx(i)<1/A

ya(i)=A*x(i)/(1+log(A));

else

ya(i)=(1+log(A*x(i)))/(1+log(A));

end

end

figure

(1)

subplot(2,1,1);

plot(x,yu,'k.:

');title('uLaw')

xlabel('x');

ylabel('y');

gridon

holdon

xxu=[0,1/255,3/255,7/255,15/255,31/255,63/255,127/255,1];

yyu=[0,1/8,2/8,3/8,4/8,5/8,6/8,7/8,1];

plot(xxu,yyu,'r');

stem(xxu,yyu,'b-');

legend('u律压缩特性','折线近似u律');

subplot(2,1,2);

plot(x,ya,'k.:

');title('ALaw')

xlabel('x');

ylabel('y');

gridon

holdon

xxa=[0,1/128,1/64,1/32,1/16,1/8,1/4,1/2,1];

yya=[0,1/8,2/8,3/8,4/8,5/8,6/8,7/8,1];

plot(xxa,yya);

plot(xxa,yya,'r');

stem(xxa,yya,'o:

');

legend('A律压缩特性','折线近似A律');

 

(2)、A律13折线和U律变换结果图

(3)、图为simulink搭建的PCM编码器框图:

图1-5所示

测试模型和仿真结果如图所示,其中以Saturation作为限幅器,,将输入信号幅度值限制在PCM编码的定义X围内,Relay模块的门限设置为0,其输出既可作为PCM编码出去的最高位——极性码。

阳值取绝对值后,以Look-UpTable模块进行13折线压缩,并用增益模块将样值X围放大到0~127,然后用间距为1的Quantizer进行四舍五入的取整,最后将整数编码为7位二进制序列,作为PCM编码的低7位。

3PCM8位编码

下面给出由量化编码程序输出的编码序列(由于数据较多,这里只显示前80位数据):

code=

Columns1through16

1111000011001010

Columns17through32

0101000101001011

Columns33through48

1100100011100000

Columns49through64

1101011001010110

Columns65through80

0111010001111110

3.1误码率分析

误码率与信号的信噪比有关,当信噪比很小时,误码率相对来说比较高,不管是通过什么解调,其误码率都是处在一个相同或者相近的位置;当信噪比较高时,误码率就比较小了,而且,不同的解调,所产生的信噪比都是相差比较大的。

我们还可以看出非相干解调相同的信

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

当前位置:首页 > 医药卫生 > 预防医学

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

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