- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Matlab的纠错码性能测试仿真 林茂生,朱义胜 (大连海事大学信息
基于Matlab的纠错码性能测试仿真
林茂生,朱义胜
(大连海事大学 信息工程学院 辽宁 大连 116026)
摘 要:给出纠错码性能测试仿真的一般方法,重点研究其信道差错序列的产生,然后利用Matlab实现卷积码编码及其Viterbi译码的性能测试仿真。
关键词:纠错码;AWGN信道;移动信道;卷积码编码;Viterbi译码;差错序列
通信系统中使用纠错码的主要目的是提高传输的可靠性。为了了解某种纠错码的性能而将其运用于实际系统中进行测量,这可能会浪费大量的人力、物力,所以常用的方法是在计算机中进行系统性能测试仿真,仿真大多采用如图1所示的框图。
下面重点介绍信道的仿真,并举例说明将卷积码应用于所仿真的信道中进行性能测试,得到了测试结果。本文所介绍的仿真皆用Matlab来实现的。
1 信道仿真
在数字传输系统中,不管信道本身内外干扰实际形状如何,从效果上看可一律归结为数字的差错序列{ei}(对于二进制编码,ei=1表示第i位码元有错,否则无错)。由于集合{ei}序列的统计特性完全反映了编码信道的差错统计特性,如果能够产生符合某信道统计特性的{ei},就可以利用计算机仿真信道,确定在此信道条件下最佳的差错控制方案和编码参数。因此,研究某种实际信道{ei}的产生,具有很大的现实意义。下面介绍两种常见信道的仿真方法:
1.1 AWGN信道
本文提出了一种用分布概率模拟法来产生AWGN差错序列{ei}的新方法,其步骤是:
(1)产生(0,1)均匀分布的伪随机数可采用文献[5]所提到的混合同余法。
(2)产生N(0,σ2)分布的伪随机数
设X1,X2,…,Xn是[0,1]上均匀分布的互相独立的随机变量,已知其均值和方差分别为1/2和1/12,则根据中心极限定理:
当n较大时,其分布近似于N(0,1)分布。
一般取n=12,于是有:
他也近似于N(0,1)分布。
由于高斯白噪声幅度衰落符合均值为0,方差为σ2的高斯分布,所以高斯白噪声信道中伪随机数可表示为:
(3)门限电平的选择
由高斯分布的概率密度函数曲线可知,横坐标为高斯随机数的幅度,纵坐标为密度百分比,而整个曲线下的面积为1。因此若设某一幅度为门限值B,大于B的随机数记为“0”,小于B的记为“1”(或取相反的假设也可以)。这样,高斯分布随机数就变成由“0”,“1”组成的序列{ei}了,其中“1”表示有错。由Pe定义可得:
式(6)为概率积分函数,可以通过查标准正态分布表来得到不同B/σ时的近似值。由式(6)可知,门限电平B由σ和Pe确定。可以先给出一个适当的Pe值,通过查积分表得到B/σ值后,再由给定的σ得到相应的B值。
从图2可知,在Pe固定时,不同σ值的分布曲线交叠在一起。本模拟中所产生的差错序列数N=11 800,在所产生的差错序列数足够大的情况下,σ的改变对分布曲线应该没有任何影响,影响无误串分布曲线的只有Pe,这跟实际相符。
1.2 移动信道
移动信道是一种以突发错误为主的典型的混合信道,对于他的差错序列的产生,很多学者提出了许多不同的产生方法。其中,文献[5]中所用的算法简单易行,是由信道模型产生差错序列的较优秀方案。产生差错序列{ei}的状态转移规律:
(1)置i=0,任意指定一初状态s0(s0=1,2,3均可);
(2)产生在(0,1)区间呈均匀分布的伪随机数ri;
(3)确定本状态的ei值,同时对下一状态的转向做出判决:
根据此算法,并结合信道模型参数:
利用Matlab编程就能够产生任意长差错序列{ei}。
从图3可以看出,该算法所产生的差错序列{ei}的G(k)曲线与理论上所得到的相差不大。本例中N取了10 000个码,若N取得足够大,两者应基本重合。
2 基于Matlab的卷积码性能测试系统
正确仿真出实际信道后,将纠错码应用于仿真信道中进行测试,就可以了解该纠错码的性能以及影响性能的因素,以便能在实际中最优化地使用该码。
下面介绍用Matlab所实现的卷积码编译码仿真2系统,该系统设计中充分应用了Matlab编程技巧,并用GUI设计了直观、简明的界面,如图4所示。
在框图中,一个按钮对应一个模块,按下某个按钮就能弹出一个对话框,以便对某个模块的性能单独测试。在“信源所产生的信码数”栏中输入测试过程中的信码数,而在“测试项目”栏中选择所需测试的项目,并在下拉菜单中选择合适的信道,可选项为:AWGN信道和移动信道,按下“输出性能测试表格”按钮就能得到仿真系统某项参数改变时的卷积码编译码系统性能。卷积码性能的测试结果如表1,
文档评论(0)