matlab信道编码程序,信道编码作业matlab.doc
信道编码作业matlab.doc
信道编码 MATLAB 仿真作业 09274070 王若闻 思源 0903 1 现给出循环码及卷积码的编解码程序,理解各程序,完成以下习题。将程序运行结果及各 目 的解答写入 word 中: 运行结果如下 1.用 matlab 运行书上习题中的“clockcode.m”(a)说明(7,4)码的纠错检错方法 答:接收码字与伴随矩阵相乘,计算得伴随矢量,伴随矢量不为 0 说明发生错误,为 0 说明无单个或两个错((7,4)码最多可检测两个错误) 。 伴随式不为 0 时,通过查表法进行译码,对于 Hamming 码,伴随式组成的二进制数即 为错码的位数。(b)在程序中标注“注释”处加上注释(英文或中文) Encode: temp=data1(4*i-3:4*i); %注释:将原始数据分成四个一组,每次循环调用其中一组cyctemp=temp*G; %注释:将原码与生成矩阵 G 相乘cyctemp=mod(cyctemp,2); %注释:每个数据模 2 encode(7*i-6:7*i)=cyctemp; %注释:7 位一组,进行编码 Decode: temp = x(7*j-6:7*j); % 注释:将分组码数据分成七个一组,每次循环调用其中一组 s=temp*Ht; % 注释:将分组码与伴随矩阵相乘生成伴随矢量 if(s == Ht(k,:)) % 注释:如果伴随矢量与伴随矩阵中的某一列相等 temp(k)=mod(temp(k)+1,2);%注释:分组数据纠错:分组数据中第 k 个数据加 1(模 2 加) decode(1,4*i-3:4*i)=decode1(1,7*i-6:7*i-3);%注释:分组码每组前 4 位写入解码输出数 据 Clockcode: data1=rand(1,nd)>0.5; %注释:生成 1000 个随机数数组,以 0.5 作为门限取 0 或 1 x=encode(data1); % 注释:对 data1 进行编码 data1=rand(1,nd)>0.5; % 注释:生成 1000 个随机数数组,以 0.5 作为门限取 0 或 1 x=encode(data1); % 注释:用之前声称的随机逻辑数组进行编码 sigma=E/sqrt(2*SNR); % 注释:计算未编码时高斯分布随机变量标准差,2 SNR 未信噪比 sigma1=E/sqrt(2*SNR*code_rate); % 注释: 计算编码后高斯分布随机变量标准差 if (data1(i)==0), data2(i)=-E+Gngauss(sigma); % 注释:传 0 码时加入高斯分布白噪声干扰,双极性码 else data2(i)=E+Gngauss(sigma); % 注释:传 1 码时加入高斯分布白噪声干扰,双极性码 if (x(i)==0), data3(i)=-E+Gngauss(sigma1); % 注释:编码后数据在双极性传输时加入高斯分布白噪 声干扰(空号) else data3(i)=E+Gngauss(sigma1); % 注释:编码后数据在双极性传输时加入高斯分布白噪 声干扰(传号) demodata1=data2 > 0; % 注释:双极性码硬判决 noe2=sum(abs(data1-demodata1)); % 错误的比特数 nod2=length(data1); % 注释:总码元数 ber(snr_num) = noe/nod; %注释:计算误比特率(c )对于编码和未编码的情况,误比特率为 1e-2 、1e-3 及 1e-4 时的 Eb/N0 分别是多少? BER 未编码 Eb/N0 编码后 Eb/N0 1e-2 4.28dB 4.53dB 1e-3 6.63dB 6.61dB 1e-4 8.17dB 7.94dB(d)从物理意义上说明编码增益问题 答:编码增益是编码信号相对于未编码信号效率的提高。单位为分贝。在编码理论和 相关的工程问题里,编码增益是一种度量,用来区别 SNR(信噪比)级别在未编码的 系统和编码的系统来达到相同的比特率( BER) ,应用在错误纠正编码( ECC) 。 编 码增益越高,纠错能力越强。 (e)当采用(15,11)码时,观察与(7,4)码相比编码增益的变化。(7,4)码 (15,11) 码 相同信噪比下, (15,11)码误比特率比(7,4)码低,编码增益增大3 2.针对题目 1 中的 clockcode.m(a)若信道使信号幅度呈瑞利衰落,画出编码与未编码的 Eb/N0--- 误比特率曲线,说明 与题目 1 观察结果的异同,并说明原因。未编码时信号幅度若成瑞利衰落,则误比特率会提高; 编码后则差别不大。(b)若信道使信号幅度呈莱斯衰落,画出编码与未编码的 Eb/N0--- 误比特率曲线,更改 K 值的大小,观察曲线的现象,能得出什么结论。K=0.3dB K=10dBK=30dB K=100dB 随着 K 值的增加,误比特率不断地提高,交点不断左移,说明在 K 值大的情况下,编 码的可靠性要比未编码的可靠性高的多。4 3.bpskh.m 为(2,1,7)卷积码采用硬判决译码时在 AWGN 中的误比特性能的仿真主程 序,用 matlab 运行主程序 bpskh.m ,将运行结果写入 word 文档中,并回答以下问题(tblen 为回溯长度): 运行结果为第一个图 (a)在标识注释处注释(中文或英文) trellis = poly2trellis(constlen, codegen); % 注释:卷积码多项式转换到网格形式 dspec = distspec(trellis, 7); % 注释:计算卷积码的距谱 expVitBER = bercoding(EbNo, conv , soft , codeRate, dspec); %注释:生成已编码的 AWGN 信道的误码率 rand( state , seed(1)); randn( state , seed(2)); %注释:将随机数生成器 rand 指定在 seed1 状态,randn 指定在 seed2 状态,这样每次生成的随机值都是一样的 msg_orig = randi([0 1], numSymb, 1); % 注释:生成 1e6 个二进制原始信息序 列 msg_enc = convenc(msg_orig, trellis); % 注释:对其进行卷积编码 hMod = modem.pskmod( M , M, PhaseOffset , 0, . SymbolOrder , Gray , Type , Bit ); % 注释:建立 PSK 调制模型 msg_tx = modulate(hMod, msg_enc); % 注释:发送端调制信号 msg_rx = awgn(msg_tx, EsN0-10*log10(1/codeRate)); % 注释:接收端在信号中添加高斯 白噪声 hDemod = modem.pskdemod( M , M, PhaseOffset , 0, .
matlab信道编码程序,信道编码作业matlab.doc相关推荐
- matlab选修结课作业,matlab结课作业
文档来源为:从网络收集整理.word 版本可编辑.欢迎下载支持. 山西大同大学 matlab 课程结课作业 MATLAB 程序应用 姓名: 课程序号: 2 班级: 学号: 2013 ...... 山西 ...
- matlab选修结课作业,MATLAB结课大作业.doc
雏蓄列旧愤环员凉箕毫陆一拥梧犯圆缴战倍奇濒倔晒窿必峙蚜逢骋斩吴郭潍韵巩恭烈甲政售翔少灰浸巩感焕拙嗜匆菌王爵挚辟血铱窿曹啥析躬斟烯琵砸噎猴版骨脾州棘甥育海熙问梯周打膝司规槽捉糠疏仲响愁刚条吸款得乌烩滚筑 ...
- matlab仿真技术大作业,matlab仿真技术大作业.docx
matlab仿真技术大作业.docx 直流调速系统仿真MATLAB仿真技术大作业1.电机开环特性电机电枢联接500V直流电源.画出转速N的波形,根据仿真结果求出空载和负载时的转速N以及静差率S.空载转 ...
- matlab选修结课作业,matlab在高等数学中的应用结课作业
matlab在高等数学中的应用结课作业 MatLab软件在作图中的应用 1.描点作图(MatLab及在电子信息课程中的应用131页) a=0:0.01:3; >> y=a: plot(y) ...
- 基于matlab信道均衡仿真,基于MATLAB的数字自适应信道均衡器仿真研究.doc
摘要:科技的迅速发展带动了我们生活中各个领域的进步,通信领域也不例外.在基带传输的通信系统中,实际波形不可避免的会发生失真,因为时变通信质量与传输速度的主要干扰因素是码间串扰ISI.信道均衡技术[2] ...
- MATLAB第2次作业,matlab作业二
1.在同一平面中的两个窗口分别画出心形线和马鞍面. 要求: 1.在图形上加格栅.图例和标注 2.定制坐标 3.以不同角度观察马鞍面 2.以不同的视角观察球面 和 圆柱面 所围区域. subplot(2 ...
- 北科大matlab,北科大matlab第五次作业多项式及其相关计算.doc
北科大matlab第五次作业多项式及其相关计算.doc <数学实验>报告实验名称多项式及其相关计算学院计算机与通信工程学院专业班级姓名学号2015年5月2一.[实验目的]1.学习多项式的拟 ...
- 数值分析matlab实验报告,数值分析第一次作业matlab实验报告.doc
数值分析第一次作业matlab实验报告.doc 几种线性方程组迭代算法的MATLAB实现和性能比较用有限差分方法(五点差分格式)求解正方形域上的Poisson方程边值问题用MATLAB语言编写算法程序 ...
- matlab电机外特性曲线,电机大作业(MATLAB仿真,电机特性曲线).doc
电机大作业(MATLAB仿真,电机特性曲线).doc 电机电机大作业大作业 专业班级电气 XXXX 姓 名XXX 学 号XXX 指导老师张 威 一.研究课题(来源教材习题一.研究课题(来源教材习题 4 ...
- matlab计算应力位移,2012年-有限元作业-matlab编程实现有限元求解简单结构位移及应力.doc...
<2012年-有限元作业-matlab编程实现有限元求解简单结构位移及应力.doc>由会员分享,可在线阅读,更多相关<2012年-有限元作业-matlab编程实现有限元求解简单结构位 ...
最新文章
- [转载] 什么是istio 官网内容
- oracle的除,Oracle数据库如何去除别名 - daiyan0526的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
- shiro 认证思路
- h5 fieldset
- 新服务器配置 显示,新服务器配置纪录
- thread类_Python线程:thread对象
- 三次hermite插值多项式例题_hermite插值例题
- ESD静电二极管封装规格,详细介绍
- ActivityManager 管理Activity
- Unknown custom element: <xxx> - did you register the component correctly? For recursive components
- 通过修改环境变量修改当前进程使用的系统 Temp 文件夹的路径
- win10系统声音很大,微信等应用声音很小的问题
- 上学期间你收到最感动的小纸条是什么?
- vue前端(element-ui),express后端实现上传图片到七牛云
- ffmpeg实现flv至mp4格式转换的bat脚本
- 使用Pr CS6剪视频导入的视频中音频一直出现“在试图写入下列文件时发生了错误…”提示在右下角。?
- 再读《架构即未来》有感
- 关于Wasserstein GAN的理解
- Nand Flash管理算法介绍之FTL简介
- Zynq笔记(一) —PL端(FPGA部分)的设计流程