77范文网 - 专业文章范例文档资料分享平台

基于matlab的信道编码仿真毕业论文(4)

来源:网络收集 时间:2020-06-03 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

基于matlab的信道编码仿真

w=w+1; end end n=n+1; end

BER=w/(N*k) %计算误码率 semilogy(SNR,BER); 仿真结果分析:

图4.3.1汉明码对AWGN信道仿真的误码率曲线图

对图4的观察,我们可以看到,在高斯白噪声信道里当信噪比越来越大时,误码率越来越低,到一定程度,信道的误码率会为0。仿真结果和理论结果基本一致。

4.3.2汉明码对二进制对称信道的仿真 % (7,4)汉明码仿真 %定义变量(7,4)汉明码模拟 k = 4; n = 7;

% %

p_vector = 0.1:0.01:1; % 向量P的值,误码率 N = length(p_vector); % p_vector的长度 RUNS = 5000; % 运行数 % 码字表

xtable = [0 0 0 0 0 0 0; ...

11

基于matlab的信道编码仿真

1 1 0 1 0 0 0; ... 0 1 1 0 1 0 0; ... 1 0 1 1 1 0 0; ... 1 1 1 0 0 1 0; ... 0 0 1 1 0 1 0; ... 1 0 0 0 1 1 0; ... 0 1 0 1 1 1 0; ... 1 0 1 0 0 0 1; ... 0 1 1 1 0 0 1; ... 1 1 0 0 1 0 1; ... 0 0 0 1 1 0 1; ... 0 1 0 0 0 1 1; ... 1 0 0 1 0 1 1; ... 0 0 1 0 1 1 1; ... 1 1 1 1 1 1 1;]; for (p_i=1:N)

error = 0; % 错误的数 p=p_vector(p_i);

for (r=1:RUNS) %生成4位的信息块 z = unifrnd(0, 1, 1, 4); %0和1的4位串 w = round(z); %圆的Z值 %找到行的索引,二进制转换:

m = w(1) + w(2)*2 + w(3)*4 + w(4)*8; x = xtable(m + 1, :);

z = unifrnd(0, 1, 1, 7); % 0和1的7位随机字符串 zi = find(z <= p); %错误的位置 % 误比特率

e = zeros(1,7); % 创建一个0的7位串 e(zi) = ones(size(zi)); % 创建一个字符串的大小Zi

12

基于matlab的信道编码仿真

y = xor(x,e); % 异或X和E %

for(q=1:16)

dH(q) = sum(xor(y, xtable(q,:))); % 比较接收到的码字矢量

if(dH(q)<=1) wh = xtable(q, 4:7); end end % 计算误码率

dHw = sum(xor(w,wh)); error = error + dHw; end

BER(p_i) = error/(RUNS*4); % 误码率计算 P(p_i)=p; % 存到p end

Ps=logspace(-4,0,200);

Pb_high = 1 - ((1-Ps).^7 + 7.*(1-Ps).^6.*Ps); Pb_low = (1 - ((1-Ps).^7 + 7.*(1-Ps).^6.*Ps))/k;

figure(1)

plot(P, BER, 'bx', Ps, Pb_high, 'k-', Ps, Pb_low, 'k-') legend('Simulated','Analytical')

xlabel('Probability of Error for BSC (p)') ylabel('BER')

title('Figure 1 - Bit Error Rate for Hamming code over BSC')

13

基于matlab的信道编码仿真

仿真出图4.3.2

图4.3.2 汉明码对BSC信道编码后误码率的曲线图

如上图4.3.2中,可以看到蓝色的曲线是模拟后的误码率曲线,黑色的曲线是分析的误码率曲线。上面黑色曲线是概率误差p最大值的误码率,下面黑色的曲线是概率误差p最小值的误码率。从图中可以看出概率误差最大,BSC信道的误码率就越高。

14

基于matlab的信道编码仿真

5.卷积码

5.1卷积码定义与原理

卷积码是一种向前纠错控制编码。它将连续的信息比特序列映射为连续的编码器输出符号。这种映射是高度结构化的,使得卷积码的译码方法与分组码译码所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。对于某个特定的应用,采用分组编码还是采用卷积编码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术。卷积编码的最佳译码准则为:在给定已知编码结构、信道特性和接收序列的情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估值。对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的序列。 卷积码的译码方法有两大类:一类是大数逻辑译码,又称门限译码(硬判决,编者注);另一种是概率译码(软判决,编者注),概率译码又分为维特比译码和序列译码两种。门限译码方法是以分组码理论为基础的,其译码设备简单,速度快,但其误码性能要比概率译码法差。

5.2维特比译码原理

采用概率译码的基本思想是:把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列作为发送序列。如果发送L组信息比特,那么对于(n,k)卷积码来说,可能发送的序列有2kL个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。当传信率和信息组数L较大时,使得译码器难以实现。维特比算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法。它并不是在网格图上一次比较所有可能的2kL条路径(序列),而是接收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个码序列是一个最大似然值得序列。

下面以图5.1的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。为了能说明解码过程,这里给出该码的状态图,如图5.2所示。

15

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库基于matlab的信道编码仿真毕业论文(4)在线全文阅读。

基于matlab的信道编码仿真毕业论文(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1086396.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: