移动通信课程设计.docx
- 文档编号:8389529
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:13
- 大小:774.49KB
移动通信课程设计.docx
《移动通信课程设计.docx》由会员分享,可在线阅读,更多相关《移动通信课程设计.docx(13页珍藏版)》请在冰豆网上搜索。
移动通信课程设计
《移动通信》课程设计报告
课题名称:
卷积码差错系统控制的仿真
年级:
通信
姓名:
学号:
指导老师:
日期:
2010年12月31日
卷积码差错控制系统的仿真
摘要本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出,并通过Matlab软件进行设计与仿真,并进行误码率分析。
关键词课程设计;卷积码译码器;Matlab;Simulink;设计与仿真
一、引言:
本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出,并通过Matlab软件进行设计与仿真。
卷积码的译码有两种方法——软判决和硬判决,此课程设计采用硬判决的维特比译码。
1.1、课程设计目的
卷积码是一种向前纠错控制编码。
它将连续的信息比特序列映射为连续的编码器输出符号。
这种映射是高度结构化的,使得卷积码的译码方法与分组码译码所采用的方法完全不同。
可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。
对于某个特定的应用,采用分组编码还是采用卷积编码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术[1]。
本课程设计便是通过Matlab设计一个硬判决维特比译码输出的完整电路,并进行误码率分析。
1.2、课程设计的原理
1.2.1卷积码
卷积码,又称连环码,是由伊莱亚斯(P.elias)于1955年提出来的一种非分组码。
卷积编码的最佳译码准则为:
在给定已知编码结构、信道特性和接收序列的情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估值。
对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的序列。
卷积码的译码方法有两大类:
一类是大数逻辑译码,又称门限译码(硬判决,编者注);另一种是概率译码(软判决,编者注),概率译码又分为维特比译码和序列译码两种。
门限译码方法是以分组码理论为基础的,其译码设备简单,速度快,但其误码性能要比概率译码法差[2]。
当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单,计算速度快。
维特比译码算法是1967年由Viterbi提出,近年来有大的发展。
目前在数字通信的前向纠错系统中用的较多,而且在卫星深空通信中应用更多,该算法在卫星通信中已被采用作为标准技术。
1.2.2维特比译码原理:
采用概率译码的基本思想是:
把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列作为发送序列。
如果发送L组信息比特,那么对于(n,k)卷积码来说,可能发送的序列有2kL个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。
当传信率和信息组数L较大时,使得译码器难以实现。
维特比算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法。
它并不是在网格图上一次比较所有可能的2kL条路径(序列),而是接收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个码序列是一个最大似然值得序列。
下面以图1.2.1的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。
为了能说明解码过程,这里给出该码的状态图,如图1.2.2所
图1.2.2(2,1,3)卷积码状态图
图1.2.1(2,1,3)卷积码编码器
示。
维特比译码需要利用图来说明移码过程。
根据卷积码画网格的方法,我们可以画出该码的网格图,如图1.2.3所示。
该图设输入信息数目L=5,所以画L+N=8个时间单位,图中分别标以0至7。
这里设编码器从a状态开始运作。
该网格图的每一条路径都对应着不同的输入信息序列。
由于所有可能输入信息序列共有2kL个,因而网格图中所有可能的路径也为2kL条。
这里节点a=00,b=01,c=10,d=11。
图1.2.3(2,1,3)卷积码网格图
设输入编码器的信息序列为(11011000),则由编码器对应输出的序列为Y=(1101010001011100),编码器的状态转移路线为abdcbdca。
若收到的序列R=(0101011001011100),对照网格图来说明维特比译码的方法。
由于该卷积码的约束长度为6位,因此先选择接收序列的前6位序列R1=(010101)同到达第3时刻的可能的8个码序列(即8条路径)进行比较,并计算出码距。
该例中到达第3时刻a点的路径序列是(000000)和(111011),他们与R1的距离分别为3和4;到达第3时刻b点的路径序列是(000011)和(111000),他们与R1的距离分别为3和4;到达第3时刻c点的路径序列是(001110)和(110101),他们与R1的距离分别为4和1;到达第3时刻d点的路径序列是(001101)和(110110),他们与R1的距离分别为2和3。
上述每个节点都保留码距较小的路径作为幸存路径,所以幸存路径码序列是(000000)、(000011)、(1101001)和(001101),如图1.2.4所示。
用于上面类似的方法可以得到第4、5、6、7时刻的幸存路径。
图1.2.4维特比译码第3时刻幸存路径
需要指出的是,对于某个节点,如果比较两条路径与接收序列的累计码距值相等时,则可以任意选者一条路径作为幸存路径,吃时不会影响最终的译码结果。
在码的终了时刻a状态,得到一条幸存路径。
如果1.2.5所示。
由此可看到译码器
图1.2.5第8时刻幸存路径
输出是R’=(1101010001011100),即可变换成序列(11011000),恢复了发端原始信息。
比较R’和R序列,可以看到在译码过程中已纠正了在码序列第1和第7位上的差错。
当然如果差错出现太频繁,以致超出卷积码的纠错能力,还是会发生纠误的。
二、课程设计的要求和思路
1、了解卷积码的基本原理。
2、掌握卷积码Viterbi译码的基本设计方法。
3、用子系统来实现系统。
系统包括信源部分、信道部分、信宿部分。
4、信源部分的数据源随机二进制序列,对其进行卷积解码调制。
5、信道:
对调制后的信号加译。
6、信宿:
对信号调制、解调、译码。
7、编程实现的波形,对不同编码方式下,波比特率输出;并画出波形。
三、设计过程
3.1、仿真框图模型
说明:
信源模块对随机二进制信号进行卷积码和二进制相位调制,输出基带调制信号;信道模块是一个有噪声信道;信宿模块对调制信号进行软判决译码,得到原始信息序列,并且计算调制信号的误码率。
3.1总电路图
3.2信源部分
3.3信道部分
说明:
信宿模块在接收到二进制相位调制信号后,首先由BPSKDemodulatorBaseband(二进制相位解调模块)对信号进行量化,得到硬判决量化信号,然后通过ViterbiDecoder(维特比译码器)对软判决信号译码。
译码输出信号和信源模块产生的原始信号输入到ErrorRateCalculator(误比特率统计模块)中,统计得到的数据一方面通过Display(显示模块)显示出来,另一方面通过一个Selector(选择器)把其中的第一个元素(编码信号的误比特率)保存到BitErrorRate中。
3.4信宿部分
3.2、各部分模块参数设置
1)BernoulliBinaryGenerator伯努利发生器(贝努利二进制序列产生器)的参数设置
2)ConvolutionalEncoder(卷积码编码器)的参数设置
3)1、BPSKModulatorBaseband(二进制相位调制模块)的参数设置
3)2、AWGNChannel(加性高斯白噪声模块)的参数设置
3)3、ViterbiDecoder(维特比译码器)的参数设置
4)1、ErrorRateCalculation(误码率发生器)的参数设置
4)2、Display(显示输出模块)的参数设置
5)Selector(选择模块)的参数设置
6)ToWorkspace(工作空间模块)的参数设置
四、卷积码译码器的误码率分析
文件代码如下[5]:
x=-10:
5;
%y表示信号的误比特率,它的长度与x相同
y=x;
%准备一空白图形
holdoff;
%定义不同卷及方式时的Trellis结构
A=[poly2trellis(9,[557663711]),poly2trellis(7,[171133])];
%不同卷积方式、信噪比情况下重复运行untitledl,检验不同条件下硬判决译码的性能
forj=1:
2
%卷积方式分别取1/3卷积和1/2卷积
STRUCTURE=A(j);
%新到的信噪比依次取x中的元素
fori=1:
length(x)
SNR=x(i);
%运行仿真程序,误比特率保持在工作区变量BitErrorRate中
sim('untitled2');
%计算BitErrorRate的均值作为本次仿真的误比特率
y(i)=mean(wk);
end
%绘制x和y的关系曲线图,纵坐标采用对数坐标
semilogy(x,y);
holdon;
end
gridon;
执行此文件,得到的关系曲线图,由图4见,随着信道信噪比的提升,维特比译码所得结果的误比特率越低,信道的可信度越高,信道的误码率开始明显降低
图4运行结果
五、心得体会
一个多星期的课程设计终于结束了,对于这个课题。
刚拿到手的时候觉得真是无从下手。
以前没有接触到,不知道从哪里开始。
好在老师给了我们些提示和资料,又让我们上网搜搜相关的一些东西。
我们才开始上手。
最起初,我按照实验册上的步骤先熟悉Simulink软件的使用和绘制电路图的基本使用。
等到能理解软件的一些东西了,开始绘制电路图。
老师讲过基本原理,我按照信号发生器发出一路直接生成,另一路经卷积编码,信号经调制加入高斯白噪声加入,编译,解调等一系列步骤得出波形。
这其中的很多东西我不会。
老师帮助了我很多。
感谢马老师在我没有头绪的时候提点了我。
在很多帮助下我终于绘制出电路图,然后调试模块和数据。
经过很多次的尝试我终于完成了这次课程设计。
这次课程设计我了解了很多课本中没有的东西。
包括一些软件的使用,运行,模块的数据调试。
我获益良多,我会继续努力,学习更多的知识。
六、参考文献
[1]RodgerE.Ziemer,RogerL.Peterson著.尹长川,郝建军,罗涛等译.数字通信基础(IntroductiontoDigitalCommunication).原书第2版.北京:
机械工业出版社,2005.1
[2]樊昌信,张甫翊,徐炳祥,吴成柯.通信原理.第5版.北京:
国防工业出版社,2007.1
[3]邓华.Matlab通信仿真及应用实例详解.北京:
人民邮电出版社,2003.9
[4]陈国通.数字通信.哈尔滨:
哈尔滨工业大学出版社,2002.4
[5]孙祥,徐流美,吴清.Matlab7.0基础教程.北京:
清华大学出版社,2005.5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动 通信 课程设计