模拟信号的数字化及编码仿真-安建学20117000

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

通信原理课程设计报告书

课题名称

模拟信号的数字化及编码仿真——

PCM 系统仿真

姓 名 学 号 院、系、部 电气工程系 专 业 电子信息工程

指导教师

2014年6月22日

※※※※※※※※※ ※※

※※ ※※ ※

※※※※※※※※

2011级通信原理

课程设计

模拟信号的数字化及编码仿真——PCM 系统仿真

一、设计目的

熟练掌握PCM 编译码原理,理解模拟信号抽样、量化和基于13折线的PCM 编码过程。

二、设计要求

用MATLAB 编码实现模拟信号抽样、量化、编码的过程,画出PCM 编码和未编码波形。如:设输入信号为()sin 2c x t A t π=,对x(t)信号进行抽样、量化和PCM 编码和译码,画出经过PCM 编码与未编码波形。

三、设计原理

通信系统的信源有两大类:模拟信号和数字信号。若输入是模拟信号,则在数字通信系统的信源编码部分需对输入模拟信号进行数字化,或称为“摸/数”变换,将模拟输入信号变为数字信号。数字化过程包括三个步骤:抽样、量化和编码。

模拟信号首先被抽样。通常抽样是按照等时间间隔进行的,虽然在理论上不是必须如此。模拟信号被抽样后,成为抽样信号,它在时间上是离散的,但是其取值仍然是连续的,所以是离散模拟信号。第二步是量化。量化的结果使抽样信号变成量化信号,其取值是离散的。故量化信号已经是数字信号,它可以看成多进制的数字脉冲信号。第三步是编码。最基本和最常用的编码方法是,脉冲编码调制(Pulse Code Modulating ,PCM),它将量化后的信号变成二进制码元。由于编码方法直接和系统的传输效率有关,为了提高传输效率,常常将这种PCM 信号进一步做压缩编码,再在通信系统中传输。

接收端接收到信号后再对其进行译码,还原出原信号。译码就是把编码后的码流在通过信道传输后得到的码流译成离散时间连续幅度的信号。

图3-1 PCM 系统原理图

1.抽样:将模拟信号转换为时间离散的样本脉冲序列。模拟信号被抽样后,

成为抽样信号,它在时间上是离散的,但是其取值仍然是连续的,所以是离散模拟信号。

2.量化:将离散时间连续幅度的抽样信号转换成为离散时间离散幅度的数字信号。国际上通用的两种对数压缩特性:A 律和µ律 。本次设计采用的是A 律13折线。

A 律13折线的原理

归一化信号(x/V),过载电压为±1,A 律对数

(3.6)

其中A 为压缩系数,国际标准A=87.6。13折线如图3-2所示:

图3-2为13折线特性

表3-1 13折线时的x 值与计算x 值的比较。

表3-1中第二行的x 值是根据6.87=A 时计算得到的,第三行的x 值是13折线分段时的值。可见,13折线各段落的分界点与6.87=A 曲线十分逼近,同时x 按2的幂次分割有利于数字化

图中只有正幅度部分,共7折线,负幅度部分也有7折线。但正负部分第一段折线斜率相等,为同一折线,共13折线。

3.编码

所谓编码就是把量化后的信号变换成代码,其相反的过程称为译码。在现有的编码方法中,最基本和最常用的编码方法是,脉冲编码调制(Pulse Code Modulating ,PCM),它将量化后的信号变成二进制码元。编码器的种类大体上可以归结为三类:逐次比较型、折叠级联型、混合型。在逐次比较型编码方式中,无论采用几位码,一般均按极性码、段落码、段内码的顺序排列。下面结合13折线的量化来加以说明。在13折线法中,无论输入信号是正是负,均按8段折线(8个段落)进行编码。若用8位折叠二进制码来表示输入信号的抽样量化值,其中用第一位表示量化值的极性,其余七位(第二位至第八位)则表示抽样量化值的绝对大小。具体的做法是:用第二至第四位表示段落码,它的8种可能状态来分别代表8个段落的起点电平。其它四位表示段内码,它的16种可能状态来分别代表每一段落的16个均匀划分的量化级。这样处理的结果,8个段落被划分成27=128个量化级。

段落码和8个段落之间的关系如表3-2所示;段内码与16个量化级之间的关系见表3-3。

表3-2段落码 表3-3段内码

四、程序设计

1.PCM抽样的MATLAB实现

PCM抽样的MATLAB程序设计按如下步骤进行:

(1)确定输入的模拟信号为)

=;

sin(t

2

(2)根据输入的模拟信号,确定抽样频率,对输入信号进行抽样;

(3)编写程序,画出频域图形。

function sample()

t0=100; %定义时间长度ts=0.001; fs=1/ts;

t=[-t0/2:ts:t0/2]; %定义时间序列df=0.5; %定义频率分辨率x=sin(2*pi*t);

m=x;

w=t0/(2*ts)+1; %确定t=0的点

m(w)=1; %修正t=0点的信号值

[M,mn,dfy]=fft_seq(m,ts,df); %傅立叶变换

M=M/fs;

f=[0:dfy:dfy*length(mn)-dfy]-fs/2; %定义频率序列figure(1)

subplot(2,1,1);

plot(t,m);

xlabel('时间');ylabel('幅值');title('原始信号的波形');

axis([0,7,-1,1]);

subplot(2,1,2);

plot(f,abs(fftshift(M)));

xlabel('频率');ylabel('幅值');

axis([-100,100,0,10]);title('原始信号的频谱');

相关文档
最新文档