基于GUI的数字基带传输码型仿真—采用Miller码CMI码双极性归零码 双极性不归零码

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

《通信原理》

CDIO项目设计总结报告

项目名称:基于GUI的数字基带传输码型仿真—采用

Miller码、CMI码、双极性归零码、双极性不归

零码

班级:班

学号:

姓名:

年月日

目录目录

1.1项目目的

2.2.1 数字基带系统的实现

1.项目目的与要求

1.1项目目的

1.对数字基带传输系统主要原理和技术进行研究,包括基带传输的常用码型Miller码、CMI码、双极性归零码、双极性不归零码。

2.建立数字基带传输系统数学模型。

3.利用Matlab编写基于GUI的数字基带传输码型程序。

4.对系统进行仿真、分析。

5.观察并记录信息码波形和传输码的波形,并进行分析。

1.2项目要求

1.建立数字基带传输系统数学模型。

2.利用Matlab编写基于GUI的数字基带传输码型程序。

3.对通信系统进行时间流上的仿真,得到仿真结果。

4.将仿真结果与理论结果进行比较、分析。

2.项目设计

2.1项目分析

2.1.1 数字基带传输系统

基带传输系统的基本组成如下图所示,它主要由信道信号形成器、信道、接受滤波器和抽样判决器。

其中各部分的作用如下:

脉冲形成器:基带传输系统的输入是由终端设备或编码器产生的脉冲序列,脉冲形成器的作用就是形成适合信道传输的基带信号,主要是通过码型变换和波形变换来实现的,其目的是与信道匹配,便于传输,减小码间串扰,利于同步提取和抽样判决。

信道:它是允许基带信号通过的煤质。信道的传输特性通常不满足无失真传输条件,另外信道还会进入噪声。

接受滤波器:它的主要作用是滤除带外噪声,对信道特性均衡,使输出的基带波形有利于抽样判决。

抽样判决器:它是在传输特性不理想及噪声背景下,在规定时刻(由位定时脉冲控制)对接受滤波器的输出波形进行抽样判决,以恢复或再生基带信号。

2.1.2 miller码

密勒码又称为延迟调制码,是双相码的一种变形。编码规则如下:“1”码用码元间隔中心点出现越变来表示,即用10或01表示。“0”码有两种情况:对原始符号“0”则分成单个“0”还是连续“0”予以不同处理,单个“0”时,在码元边界处电平不跃变,在码元中间点电平也不跃变;对于连续“0”,则使连续两个“0”的边界处发生电平跃变,即“00”与“11”交替。

2.1.3 CMI码

CMI(Coded Mark Inversion)码是传号反转码的简称,与双相码类似,

它也是一种双极性二电平码。其编码规则是“1”码交替用“11”和“00”两位码表示;“0”码固定地用“01”表示。

CMI码易于实现,含有丰富的定时信息。此外,由于10为禁用码组,不会出现三个以上的连码,这个规律可以用来宏观检错。该码已被ITU-T 推荐为PCM四次群的接口码型,有时也用在速率低于8.44Mb/s的光缆传输系统中。

2.1.4 双极性归零码

双极性归零码是二进制码0 和1 分别对应于正和负电平的波形的编码,在每个码之间都有间隙产生.这种码既具有双极性特性,又具有归零的特性.双极性归零码的特点是:接收端根据接收波形归于零电平就可以判决1 比特的信息已接收完毕,然后准备下一比特信息的接收,因此发送端不必按一定的周期发送信息.可以认为正负脉冲的前沿起了起动信号的作用,后沿起了终止信号的作用.因此可以经常保持正确的比特同步.即收发之间元需特别的定时,且各符号独立地构成起止方式,此方式也叫做自同步方式.由于这一特性,双极性归零码的应用十分广泛

2.1.5 双极性不归零码

在双极性不归零波形中。脉冲的正、负电平分别对应于二进制代码1、0,如图5—3(b)所示,由于它是幅度相等极性相反波形,故当0、1符号等可能出现时无直流分量。这样,恢复信号的判决电平为0,因而不受信道特性变化的影响,抗干扰能力也较强。故双极性波形有利于在信道中

传输。

2.2 设计实现过程

在设计实现数字基带传输传输码型仿真—采用Miller码、CMI码、双极性归零码、双极性不归零码的过程中,我充分利用了课堂上所学到的编码的知识,在熟悉掌握matlab的前提下,通过查阅相关资料和网络搜索,我充分了解了利用matlab的GUI仿真所需的函数,通过不断地试验和完善,将数字基带传输信号和它的四种编码的码型显示在了GUI界面上,对这四种编码的特性有了一个清晰的认知。以下是我的具体的设计实现过程:2.2.1 数字基带系统的实现

在设计数字基带系统的过程中,我使用了rand函数,随机产生以N为时间间隔的N=20个数字基带信号(N为时间间隔,在这里,为了使图形效果更佳,我设定为1000),x=ceil(rand(1,N)-0.8);

x_t=zeros(1,N*fs);

for i=1:N*fs

x_t(i)=x(ceil(i/fs));

使用这四段代码实现基带信号的产生。再通过plot函数将该序列显示在GUI界面上。

2.2.2 miller码的实现

在利用matlab的语言编写miller码的过程中,我使用了一个function 模块专门用来处理基带信号,使之变为miller码,再通过函数的调用,调用该模块产生miller码,该模块的核心代码如下所示:

if x(i)==1 %若原码为1,则交替为10或01

Miller(2*i-1)=f;

Miller(2*i)=not(f);

f=not(f);

d=1;

else %若原码为0

if d==1 %前一个码为1

Miller(2*i-1)=f;

Miller(2*i)=f;

d=0;

else %前一个码为0

f=not(f);

Miller(2*i-1)=f;

Miller(2*i)=f;

d=0;

end

end

2.2.3 CMI码的实现

CMI码的设计,与miller码的设计基本一致,只是CMI码的编码规则是是“1”码交替用“11”和“00”两位码表示;“0”码固定地用“01”表示。核心代码变为了:

if x(i)==0 %若原码为0,则为01,

CMI(2*i-1)=0;

CMI(2*i)=1;

else %若原码为1.则交替为11和00

CMI(2*i-1)=f;

CMI(2*i)=f;

f=not(f);

end

2.2.4 双极性归零码的实现

双极性归零码的特殊性质在于其在每一个码型显示之后都会跳变为0,利用E和-E分别表示1和0,因此我在这里设计了一个判断函数,通过判断产生的数字基带信号是否为大于0.5来判断0、1信号,并给y(i)赋1或-1值,而且为了实现跳变为0的功能,另加了一个判断,使得输出函数

相关文档
最新文档