循环码matlab实验报告.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
循环码matlab实验报告

信道编码仿真作业 关于(15,7) 循环码实验 实验原理 (15,7)循环码 码长 n=15 ,信息位 k=7 的循环码。 生成多项式 生成多项式: 对于(15,7)循环码,可用的码多项式共有3个: 编写的matlab程序子函数 g=gx(n,k) 可以生成任意 (n,k) 循环码的所有生成多项式。 程序核心算法是 遍历查找符合的,其中二元域的除法用的是通信工具箱中的 gfdeconv() 函数。 本实验最后用的是。 生成矩阵与校验矩阵 程序用到的标准生成矩阵原理与方法如下: 其中。 则校验矩阵为: 求余同样用到了gfdeconv() 函数。 最小距离与纠错能力 通过校验矩阵H分析最小距离d,程序的算法是: 取遍H的任意2列相加,若结果为0,则d=2; 否则取遍H的任意3列相加,若结果为0,则d=3; 以此类推,直到找到最小的d,使存在H的某d列相加结果为0。 编码器 r级编码器采用g(x) k级编码器采用h(x). 具体算法见之后的程序说明 译码器 译码器为能纠正两个错误的梅吉特电路。 我分别编写了了2n拍和3n拍的译码电路,具体验证了修正线的作用。 调制 本实验所谓的调制只是将 1 变换为 -1,将 0 变换为 1。 高斯白噪声 归一化信噪比,由能量守恒定律可得,(取),解得:。程序中调用函数。 最大似然译码 对于本实验来说,最大似然译码和最小距离译码是一样的。 具体方法是: (1) 将所有128个调制好的码字制成表存储起来; (2) 把接收到的码字(未判决前的)与这128个码字相乘一遍; (3) 找到积最大的那个码字就是译成的码字。 梅吉特译码 先把收到的码字判决,再送入梅吉特译码器。 误码率 信号加入噪声会导致误码,信噪比越高,相应的误码率也就越低。 误码率的计算只考虑前7位信息位,不考虑校验位。 二、程序说明 程序功能与入口出口参数说明: function g = gx(n, k) % n码长,k信息位长,g生成多项式(升序) 用于生成(n,k)循环码的生成多项式。 function [H,G] = H_G(n, g) % n码长,g生成多项式,H校验矩阵,G生成矩阵 产生校验矩阵和生成矩阵。 function v=r_coder(mm,g) % mm信息多项式,g生成多项式(升序) (n-k)级编码器。 function v=k_coder(mm,g) % mm信息多项式,g生成多项式(升序) K级编码器。 function [t,d]=capability(H) % H校验矩阵,t纠错能力,d最小距离 分析最小距离和纠错能力。 function out=modulate(v) % v 信息, out 调制后的信息 调制,1转换为-1,0转换为1. function y=noise(sn,n) % sn信噪比(DB为单位),n信号,y 加上高斯白噪声的信号 实现对信号加高斯白噪声。 function vs=mjt_2n(rr,g,H) % r接收到的码字,g生成多项式,H校验矩阵,vs译码结果 2n拍梅吉特译码器,纠两个错,需要的典型错样为15个。 function vs=mjt_3n(r,g,H) % r接收到的码字,g生成多项式,校验矩阵,vs译码结果 3n拍梅吉特译码器,纠两个错,需要的典型错样为8个。 function vs=min_decoder(rr) %rr接收到的码字,vs译码结果 最小距离译码器,即最大似然译码器。 data 实验要用到的数据,如所有128个调制前和调制后的码字。 m_all 主程序,调用前面的函数,实现编码、加噪声、译码、画误码率曲线。 三、实验结果及验证 产生生成多项式 在命令窗口输入gx(15,7),程序返回结果为: ans = 1 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 (15,7)码的生成多项式有3个,本实验选用,是上述结果中的第一个。 生成矩阵和校验矩阵 接下来在命令窗口输入 [H,G]=H_G(15,ans(1,:)),程序返回结果为: H = 1 0 0 0 1 0 1 1 0 0 0 0 0 0 0 1 1 0 0 1 1 1 0 1 0

您可能关注的文档

文档评论(0)

weizhent2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档