基于MATLAB的信道编码分析

合集下载

信道编码实验报告

信道编码实验报告

信道编码实验报告引言:信道编码是一种常用的通信技术,用于增强数据传输的可靠性和效率。

通过在发送端对数据进行编码,并在接收端进行解码,可以有效地纠正或检测在信道传输过程中产生的错误。

本实验旨在研究不同的信道编码方法,并分析它们在不同信道条件下的性能。

一、实验目的:1.了解信道编码的概念和基本原理;2.掌握常用的信道编码方法和相关算法;3.通过实验验证不同信道编码方法的性能;4.分析信道编码在不同信道条件下的适用性。

二、实验原理:1.信道编码概述:信道编码主要分为前向纠错编码(Forward Error Correction, FEC)和自动重传请求(Automatic Repeat reQuest, ARQ)两类。

其中,FEC方法通过在数据流中引入冗余信息,使接收端能够检测和纠正一定数量的错误。

而ARQ方法则是通过接收端向发送端发送请求进行重传,从而实现数据的可靠传输。

2.常用的信道编码方法:在实验中,我们主要研究了以下几种常用的信道编码方法:(1)奇偶校验编码:奇偶校验编码是最简单的一种编码方式,它通过在数据末尾添加一个校验位来实现错误检测。

若校验位与数据位中的奇偶性不一致,则认为出现错误。

(2)海明码编码:海明码是一种通过添加冗余位来实现错误检测和纠正的编码方法。

通过在数据位中插入冗余位,接收端可以检测到并纠正一定数量的错误。

(3)卷积码编码:卷积码是一种递归线性均匀的编码方法,通过引入冗余信息来增强信号的可靠性。

它具有较好的纠错性能,广泛应用于无线通信领域。

三、实验过程:1.实验环境准备:在实验中,我们使用了Matlab软件进行信道编码的仿真实验。

通过编写相应的算法和程序,可以模拟不同的信道编码方法,并分析它们的性能。

2.编写奇偶校验编码程序:首先,我们编写了奇偶校验编码的程序,通过向数据流中添加校验位实现错误检测。

然后,对不同的信道条件进行仿真实验,并记录不同错误率下的传输性能。

3.编写海明码编码程序:接下来,我们编写了海明码编码的程序,通过插入冗余位实现错误检测和纠正。

基于matlab的信道编码仿真(可编辑)

基于matlab的信道编码仿真(可编辑)

基于matlab的信道编码仿真(可编辑)基于matlab的信道编码仿真海南大学毕业论文(设计)题目:基于matlab的信道编码仿真学号:姓名:年级:学院:信息科学技术学院系别:电子信息工程专业:电子信息工程指导教师: 完成日期:摘要通信技术的飞速发展,信道编码已经成功地应用于各种通信系统中。

以及各种传输方式对可靠性要求的不断提高,信道编码技术作为抗干扰技术的一种重要的手段,在数字通信技术领域和数字传输系统中显示出越来越重要的作用。

信道编码的目的是为了改善通信系统的传输质量。

由于实际信道存在噪声和干扰,使发送的码字与信道传输后所接收的码字之间存在差异,称这种差异为差错。

一般情况下,信道噪声、干扰越大,码字产生差错的概率也就越大。

本文利用matlab对二进制对称信道BSC,高斯白噪声信道AWGN两种信道的仿真,(7,4)Hamming码对信道的仿真,通过误码率的曲线图来了解信道的编码。

并利用matlab的simulink模块仿真,运用simulink里的卷积码viterbi译码器来对二进制对称信道和高斯白噪声信道的仿真,观察误码率的曲线图来了解2个信道的不同。

关键字:matlab,信道,编码,译码,Simulink。

AbstractWith the rapid development of communication technology, channelcoding has been successfully applied to various communications systems. And a variety of transmission of the continuous improvement ofreliability requirements, anti-jamming channel coding technology as an important means of technology in the field of digital communications technology and digital transmission systems in a more and more important role The purpose of channel coding is to improve the transmissionquality of communications systems. As the actual existence of thechannel noise and interference, the transmitted codewords and channel transmission received after the difference between code words, said this difference is wrong. Under normal circumstances, channel noise, the greater the interference, the code word generated the greater the probability of errorIn this paper, matlab binary symmetric channel BSC, Gaussian white noise channel AWGN two channel simulation, 7,4 Hamming code simulation of the channel, through the bit error rate curve to understand the channel coding. Using matlab to simulink block simulation, using simulink in the viterbi decoder to convolutional codes on the binary symmetric channel and Gaussian white noise channel simulation, observation error rategraphs to understand the two different channelsKeywords: matlab, channel, coding, decoding, Simulink.目录1引言 11.1选题的目的和意义 11.2本选题的理论依据、研究内容 12.信道编码以及其运行环境MATLAB的介绍 2 2.1 信道编码的概念及分类 22.2 信道编码定理及信道编码中所包含的各种码类的简介 22.2.1卷积码 22.2.2线性分组码 32.2.3循环码 32.3 MATLAB语言的简介 42.4 Simulink 53.信道 53.1二进制对称信道(BSC) 53.2二进制删除信道(BEC) 63.3高斯白噪声信道AWGN 64. Hamming码 74.1汉明码 74.2校验方法 74.3汉明码编码 94.3.1汉明码对高斯白噪声信道 94.3.2汉明码对二进制对称信道的仿真 115.卷积码 155.1卷积码定义与原理 155.2维特比译码原理 155.3卷积码译码器对高斯白噪声信道的设计与仿真 18 5.3.1卷积码译码器的设计与仿真 195.3.2简化维特比译码器的仿真 225.3.3卷积码译码器的误码率分析 245.4卷积编码器在二进制对称信道(BSC)中的性能 256.卷积码译码器对二进制对称信道和高斯白噪声信道仿真比较 307.总结 31致谢 32参考文献 33附录1: 34附录2: 37附录3: 40附录4: 411引言1.1选题的目的和意义数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从而使接收端产生图象跳跃、不连续、出现马赛克等现象。

基于MATLAB的信道编码教学实验软件设计与实现

基于MATLAB的信道编码教学实验软件设计与实现

第24卷第1期 2005年1月实验室研究与探索RESEARCH AND EXPLORATION IN LABORATORYVol.24No.1 Jan.2005基于MATLAB 的信道编码教学实验软件设计与实现张海涛, 王福昌(华中科技大学 电工电子教学基地湖北武汉430074)摘 要:介绍了基于MATLAB 的信道编码教学实验软件,主要包括实验操作界面制作以及循环码和卷积码编译码。

关键词: 矩阵实验室 软件包;循环码;卷积码;编译码;界面中图分类号:TN911.22文献标识码:B文章编号:1006 7167(2005)01 0046 04Design and Realization of the Teaching ExperimentalSoftware on Channel Coding with MATLABZ HANG Hai tao , WANG Fu chang(Instruction Base of Electrotechnics&Electtronics,Huazhong Univ.of Science and Technology,W uhan 430074,China)Abstract :This paper introduceds a teaching experimentel software based on channel coding with MATLAB,including the design of experiment interface ,the encode decode process of cyclic code and convolutional code.Key words :MATLAB (Matrix Laboratory);cyclic code;convolutional code;encode decode;interface收稿日期:2004 04 09作者简介:张海涛(1978-),男,汉族,湖北红安人,硕士研究生三年级,主要从事通信与信号处理方面的科研。

基于matlab的调制解调与信道编译码仿真

基于matlab的调制解调与信道编译码仿真

基于MATLAB 的调制解调与信道编译码仿真摘要:随着信息时代的步伐,通信技术得到了全面的发展,信息技术已成为了21世纪最强大的国际化动力。

在通信技术中,信息的调制、解调和误码纠错都占有重要的地位。

MATLAB 作为一款功能强大的数学工具软件,在通信领域中得到了很广泛的应用。

本文基于MATLAB 对信号进行模拟仿真设计,实现对二进制相移键控、循环码的纠错仿真、BPSK 的调制解调等进行仿真设计。

关键字:MATLAB 、调制解调、2PSK 、BPSK 、重复码。

一 、二进制和四进制相移键控调制仿真设计1.1 二进制相移键控(2PSK )原理相移键控是利用载波的相位变化来传递数字信息的,而振幅和频率保持不变。

在2PSK 中常用0和π分别表示二进制“0”和“1”,2PSK 的信号时域表达式为:2t )e c pskn w t ϕ+()=Acos( n ϕ表示为第n 个符号的绝对相位,因此上式可改写为:2Acosw t -Acosw t 1-P Pe {psk c c t ()=概为概率为率 由于表示信号的两种码形完全相同,极性相反,故2PSK 信号一般表示一个双极性全占空矩形脉冲序列与一个正弦载波相乘。

2p ()sk e t =s(t)cosw c t其中:s(t)=∑n a g(t-nTs);这里,g(t)为脉宽Ts 的单个矩形脉冲;n a 的统计特征为 n a =概率为 概率为即发送二进制“0”时(a 1n =+),2p ()sk t e 取0相位;发送二进制符号“1”时(a 1n =+),2p()sk t e 取π相位。

这种以载波的不同相位直接法去表示相应二进制数字信号的调制方式,称为二进制绝对相移方式。

2PSK信号时间波形2PSK信号的调制原理如下图所示,与2ASK的产生方法相比,只是对s(t)的要求不同,在2ASK中s(t)是单极性的,而在2PSK中s(t)是双极性的基带信号。

(a)模拟调制方法(b)键控法2PSK信号的解调通常采用相干解调法,解调原理如下原理框图所示,在相干解调中,如何得到与接受的2PSK信号同频同相的相干载是关键问题,后续进一步介绍。

基于MATLAB的通信系统信道编码的研究及其仿真

基于MATLAB的通信系统信道编码的研究及其仿真

本科毕业设计论文题目:基于MATLAB的通信系统信道编码的研究及其仿真所在系:电气与信息工程系专业:电子信息工程班级:学号学生姓名:指导老师:摘要论文题目:基于MATLAB的通信系统信道编码的研究及仿真学科专业:电子信息工程姓名:班级:电信学号:指导教师:摘要现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂:另一方面,要求通信系统技术研究和产品开发缩短周期,降低成本,提高水平。

这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术和工具才能实现。

现代计算机科学技术快速发展,已经研发出了新一代的可视化的仿真软件。

这些功能强大的仿真软件,使得通信系统仿真的设计和分析过程变得相对直观和便捷,由此也使得通信系统仿真技术得到了更快的发展。

通信系统仿真贯穿着通信系统工程设计的全过程. 对通信系统的发展起着举足轻重的作用。

通信系统仿真具有广泛的适应性和极好的灵活性,有助于我们更好地研究通信系统性能。

本文首先介绍了通信系统仿真的墓本内容,包括通信系统仿真的一般步骤MATLAB中的一种可视化仿真工具Simulink 以及S-函数的相关概念。

从理论上对通信系统进行深入细致的研究是非常必要的。

本文对通信系统中的一些重要环节,包括信道、噪声、模拟信号的数字化传输、信道编码以及信号调制的原理、方法和过程进行了详细的阐述。

理论知识是用来指导具体实践的。

本文在深刻理解通信系统理论的基础上利用MATLAB强大的仿真功能,设计了许多具体的通信系统仿真模型。

在仿真模型设计过程中,本文对模型设计的目的、具体的结构组成、仿真流程以及仿真结果都给出了具体详实的分析和说明。

最后,本文对所做的研究工作进行了总结,并且提出了今后的工作和研究方向。

关键词:通信系统,仿真,MATLAB. S-函数,系统设计西安交通大城市学院本科生毕业设计(论文)ABSTRACTTitle: The communications system based on MATLAB simulation research and channel codingApplicant: Li JieSpeciality: Electronic information projectABSTRACTModern social development requirements will increasingly communication system, performance and high, more and more complex, on the other hand, the requirement communication system technology research and product development and shorten the cycle, reduce cost, improve level. So sharp opposition in two aspects, only through the use of powerful computer aided analysis and design techniques and tools to achieve. The modern computer science and technology development, have developed a new generation of visual simulation software. These powerful simulation software, communication system design and analysis of the simulation process relatively intuitive and convenient, which also makes communication system simulation technology faster development. Communication system simulation through the communication system design process of the development of communication system. Plays an important role. Communication system Simulation has extensive adaptability and good flexibility and help us to better research communications system performance. This paper introduces the system simulation of the content, including the communication system of general steps of MATLAB simulation of a visualization simulation tools and Simulink related concepts - function. From the theory of communication system intensive study is very necessary. This paper is an important link of some of the communication system, including channel simulation signal and noise, the digital transmission, channel coding modulation signal and the principle, method and process in detail. Knowledge is used to guide practice. Based on the profound understanding of the communication system based on the theory of MATLAB simulation, the design of the function of many specific communication system simulation model. In the design process simulation model, this model is designed, specific structure, simulation process and the simulation results are given detailed analysis and explanation. Finally, this paper studies are summarized, and working for the future work and puts forward research direction.KEY WORDS: communication system, simulation of MATLAB. S - function, systemdesign西安交通大城市学院本科生毕业设计(论文)目录目录摘要 (I)ABSTRACT (III)1 绪论 (1)1.1选题意义 (1)1.2 选题目的 (2)1.3 国内外研究现状 (2)1.4 主要研究内容及技术方法 (2)1.5研究课题的方案设计 (3)2 通信原理及通信系统仿真简介 (5)2.1 通信发展及趋势 (5)2.1.1 通信发展史简介 (5)2.2 通信的基本概念 (6)2.3 通信系统仿真及其重要作用 (7)2.3.1 通信系统仿真的概念 (7)2.3.2 通信系统仿真的重要作用 (8)3 通信系统仿真相关内容概述 (11)3.1 通信系统仿真的一般步骤 (11)3.1.1 仿真建模 (11)3.1.2 仿真实验 (11)3.1.3 仿真分析 (12)3.2 用于仿真的软件 (12)3.2.1 MATLAB (12)3.2.2 MATLAB的发展及特点 (13)3.2.3 MATLAB在通信仿真中的应用 (14)3.3 SIMULINK (15)3.3.1 Simulink概述 (15)3.3.2 Simulink仿真过程 (19)3.4 S-函数 (20)4 通信系统信道编码的研究及仿真 (23)4.1 信道编码概念 (23)4.1.1 信道编码概念及任务 (23)4.2 信道编码的分类 (23)4.2.1分组编码 (23)4.2.2循环冗余码 (24)西安交通大城市学院本科生毕业设计(论文)4.2.3卷积编码 (24)4.3仿真系统设计 (25)4.3.1 RS编码纠错性能分析 (25)4.3.2 CRC-16编码检错性能分析 (32)4.3.3卷积编码软判决译码和硬判决译码性能分析 (40)5.1 总结 (49)5.2展望 (49)致谢 (51)参考文献 (53)1 绪论1 绪论1.1选题意义随着现代通信系统的飞速发展,计算机仿真已成为今天分析和设计通信系统的主要工具,在通信系统的研发和教学中具有越来越重要的意义。

信道编码-MATLAB仿真实验中的应用

信道编码-MATLAB仿真实验中的应用

⚫ 输入参数2——trellis,卷积码编码器的网格结构;
⚫ 输入参数3——tblen,a positive integer scalar,用于规定回溯深 度。If the code rate is 1/2, a typical value for tblen is about five times the constraint length of the code;
⚫ 输入参数1——msg,未编码的信息符号序列,二进制矢量形式; ⚫ 输入参数2——trellis,卷积码编码器的网格结构; ⚫ 输出参数——code,编码后的卷积码符号序列,二进制矢量形式。
⚫ 卷积码译码的MATLAB函数为:
⚫ vitdec
卷积码的维特比译码(二进制数据)
⚫ 最常用的函数格式为:
⚫ 输入参数5—— dectype,指示译码器的判决类型。其取值不同, 对应的输入参数1——code的数据类型也不同。其取值如下表:
Values of Meaning dectype Input
'unquant' 软判决,code的数据类型为实数(未量化),其中1表示逻 辑‘0’,-1表示逻辑‘1’ 。
decoded = vitdec(code,trellis,tblen,opmode,dectype);
decoded = vitdec(code,trellis,tblen,opmode,'soft',nsdec)
⚫ 输入参数1——code,维特比译码器的输入符号序列,矢量形式。以 前述2/3码率的编码器结构为例,每个符号代表编码器输出的3个bit;
一、信道编码概述 四、卷积码译码
二、卷积码的结构 描述
三、卷积码编码
⚫ 信道编码又称检纠错编码,通过增加一定的 冗余度以提高数字通信系统的可靠性。

基于MATLAB的信道编码仿真 毕设汇总

基于MATLAB的信道编码仿真 毕设汇总
4 卷积码 .......................................................... 17 4.1 卷积码基本理论 .............................................. 17 4.1.1 卷积码的基本概念......................................... 17
In this paper, the linear block codes and convolutional codes are compiled and analyzed, and the simulation is carried out with MATLAB. Linear block code to (7,4) Hamming code as an example, using MATLAB to the over a binary symmetric channel (BSC), additive white Gaussian noise (AWGN) simulation, the bit error rate curve to analyze performance of Hamming code. The convolutional code is verified by MATLAB for simulation and error correction, and the error rate is analyzed under different SNR and different decision modes.Simulation results show that the Hamming code with increase of the signal to noise ratio, bit error rate is getting smaller and smaller, and for convolutional codes, signal-to-noise ratios were slightly higher will greatly reduce the bit error rate (BER) and using a soft decision decoding error rate is lower, a better effect. Keywords: channel coding MATLAB bit error rate

基于matlab的信道编码仿真(可编辑)

基于matlab的信道编码仿真(可编辑)

基于matlab的信道编码仿真(可编辑)基于matlab的信道编码仿真海南大学毕业论文(设计)题目:基于matlab的信道编码仿真学号:姓名:年级:学院:信息科学技术学院系别:电子信息工程专业:电子信息工程指导教师: 完成日期:摘要通信技术的飞速发展,信道编码已经成功地应用于各种通信系统中。

以及各种传输方式对可靠性要求的不断提高,信道编码技术作为抗干扰技术的一种重要的手段,在数字通信技术领域和数字传输系统中显示出越来越重要的作用。

信道编码的目的是为了改善通信系统的传输质量。

由于实际信道存在噪声和干扰,使发送的码字与信道传输后所接收的码字之间存在差异,称这种差异为差错。

一般情况下,信道噪声、干扰越大,码字产生差错的概率也就越大。

本文利用matlab对二进制对称信道BSC,高斯白噪声信道AWGN两种信道的仿真,(7,4)Hamming码对信道的仿真,通过误码率的曲线图来了解信道的编码。

并利用matlab的simulink模块仿真,运用simulink里的卷积码viterbi译码器来对二进制对称信道和高斯白噪声信道的仿真,观察误码率的曲线图来了解2个信道的不同。

关键字:matlab,信道,编码,译码,Simulink。

AbstractWith the rapid development of communication technology, channelcoding has been successfully applied to various communications systems. And a variety of transmission of the continuous improvement ofreliability requirements, anti-jamming channel coding technology as an important means of technology in the field of digital communications technology and digital transmission systems in a more and more important role The purpose of channel coding is to improve the transmissionquality of communications systems. As the actual existence of thechannel noise and interference, the transmitted codewords and channel transmission received after the difference between code words, said this difference is wrong. Under normal circumstances, channel noise, the greater the interference, the code word generated the greater the probability of errorIn this paper, matlab binary symmetric channel BSC, Gaussian white noise channel AWGN two channel simulation, 7,4 Hamming code simulation of the channel, through the bit error rate curve to understand the channel coding. Using matlab to simulink block simulation, using simulink in the viterbi decoder to convolutional codes on the binary symmetric channel and Gaussian white noise channel simulation, observation error rategraphs to understand the two different channelsKeywords: matlab, channel, coding, decoding, Simulink.目录1引言 11.1选题的目的和意义 11.2本选题的理论依据、研究内容 12.信道编码以及其运行环境MATLAB的介绍 2 2.1 信道编码的概念及分类 22.2 信道编码定理及信道编码中所包含的各种码类的简介 22.2.1卷积码 22.2.2线性分组码 32.2.3循环码 32.3 MATLAB语言的简介 42.4 Simulink 53.信道 53.1二进制对称信道(BSC) 53.2二进制删除信道(BEC) 63.3高斯白噪声信道AWGN 64. Hamming码 74.1汉明码 74.2校验方法 74.3汉明码编码 94.3.1汉明码对高斯白噪声信道 94.3.2汉明码对二进制对称信道的仿真 115.卷积码 155.1卷积码定义与原理 155.2维特比译码原理 155.3卷积码译码器对高斯白噪声信道的设计与仿真 18 5.3.1卷积码译码器的设计与仿真 195.3.2简化维特比译码器的仿真 225.3.3卷积码译码器的误码率分析 245.4卷积编码器在二进制对称信道(BSC)中的性能 256.卷积码译码器对二进制对称信道和高斯白噪声信道仿真比较 307.总结 31致谢 32参考文献 33附录1: 34附录2: 37附录3: 40附录4: 411引言1.1选题的目的和意义数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从而使接收端产生图象跳跃、不连续、出现马赛克等现象。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目:基于MATLAB的通信系统仿真———信道编码对通信系统性能的影响专业:通信工程姓名:***学号:************日期: 2016.12.22目录一、引言 (2)二、信道编码理论 (2)2.1、信道编码的目的 (2)2.2、信道编码的实质 (3)2.3、信道编码公式 (3)三、线性分组码的编译码原理 (3)3.1、线性分组码的基本概念 (3)3.2、生成矩阵和校验矩阵 (4)四、MATLAB仿真 (5)4.1仿真 (5)4.1.1原理说明 (5)4.1.2各子函数说明 (5)4.2仿真源程序 (5)4.2.1信道编码 (5)4.2.2信道解码 (6)4.2.3交织 (6)4.2.4解交织 (7)4.2.5信道衰落 (7)六程序及仿真图 (8)1、file1:信道编码对通信系统性能的影响,有无信道编码的影响 (8)2、file2:在周期性深衰落的信道条件下,交织对通信系统性能的影响 (10)3、file3:在交织条件下,不同时长的周期性深衰落对系统性能影响的比较 (13)基于MATLAB的通信系统仿真———信道编码对通信系统性能的影响摘要:简述信道编码理论,详细说明分组码的编译原理、实现方法及检错纠错能力,用MATLAB仿真有无信道编码条件下对通信系统性能的影响及信道编码在不同信道下对通信系统性能的影响,如AWGN信道和深衰落信道。

关键词:信道编码、分组码、MATLAB仿真、性能一、引言提高信息传输的有效性和可靠性始终是通信技术所追求的目标,而信道编码能够显著的提升信息传输的可靠性。

1948年,信息论的奠基人C.E.Shannon在他的开创性论文“通信的数学理论”中,提出了著名的有噪信道编码定理.他指出:对任何信道,只要信息传输速率R不大于信道容量C, 就一定存在这样的编码方法:在采用最大似然译码时,其误码率可以任意小.该定理在理论上给出了对给定信道通过编码所能达到的编码增益的上限,并指出了为达到理论极限应采用的译码方法.在信道编码定理中,香农提出了实现最佳编码的三个基本条件:(1 )采用随机编译码方式; (2 )编码长度L→∞ , 即分组的码组长度无限; (3)译码采用最佳的最大似然译码算法。

二、信道编码理论2.1、信道编码的目的在数字通信系统中由于信道内存在加性噪声及信道传输特性不理想等容易造成码间串扰同时多用户干扰、多径传播和功率限制等也导致错误译码。

为了确保系统的误比特率指标通常采用信道编码。

信道编码是为了保证信息传输的可靠性、提高传输质量而设计的一种编码。

它是在信息码中增加一定数量的多余码元,使码字具有一定的抗干扰能力。

2.2、信道编码的实质信道编码的实质就是在信息码中增加一定数量的多余码元(称为监督码元),使它们满足一定的约束关系,这样由信息码元和监督码元共同组成一个由信道传输的码字。

举例而言,欲传输k 位信息,经过编码得到长为n(n>k)的码字,则增加了 n - k = r 位多余码元,我们定义 R = k / n 为编码效率。

【2】2.3、 信道编码公式令信息速率为f b ,经过编码以后的速率为f t ,定义:R =f b /f t 为编码率。

则对于任何一个信道,总存在一个截止速率R 0,只要R <R 0,总可以达到:BER <C R 2-nR0,其中C R 为某个常数,n 为编码的约束长度。

对于等概二进码、AWGN 信道,有:三、线性分组码的编译码原理3.1、 线性分组码的基本概念一个[n ,k ]线性分组码, 是把信息划成k 个码元为一段(称为信息组), 通过编码器变成长为n 个 码元的一组, 作为[n , k ]线性分组码的一个码字。

若每位码元的取值有q 种(q 为素数幂), 则共有q k 个码字。

n 长的数组共有q n 组, 在二进制情况下, 有2n 个数组。

显然, q n 个n 维数组(n 重)组成一个GF(q )上的n 维线性空间。

如果q k (或2k )个码字集合构成了一个k 维线性子空间, 则称它是一个[n ,k ]线性分组码。

即将k 维k 重信息空间的元素线性映射到n 维n 重矢量空间(接收矢量/收码) 的k 维n 重子空间(码空间)。

如下图为[7,3]码)1(log 100/20N E R b e R -+-=121ln 1)1(000-=-R b R N E3.2、生成矩阵和校验矩阵生成矩阵:[]⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡==0110001101001011001001111000 Q G k IG 称为生成矩阵,因为可以用它产生整个码组A ,即有[][]G34560123456a a a a a a a a a a a A ==生成矩阵的性质:具有[I k Q ]形式的生成矩阵称为典型生成矩阵。

由典型生成矩阵得出的码组A 中,信息位的位置不变,监督位附加于其后。

这种形式的码组称为系统码。

矩阵G 的各行也必须是线性无关的。

如果已有k 个线性无关的码组,则可以将其用来作为生成矩阵G ,并由它生成其余码组。

【3】 监督矩阵:[]r PI H =⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=001101101011011001110监督矩阵可用来校验和纠错。

四、MATLAB仿真4.1仿真4.1.1原理说明采用模块化编程,力求把每个功能独立成各个模块,让程序更清晰。

首先介绍各个子程序及其实现的基本功能。

此次还采用了交织与解交织,其主要作用是,一个实际上的突发信道,经过发送端交织和接收端解交织的信息处理后,就完全等效成一个随机独立差错信道,信道交织编码实际上就是一类信道改造技术,它将一个突发信道改造成一个随机独立差错信道。

它本身并不具备信道编码检、纠错功能,起到信号预处理的作用4.1.2各子函数说明运行环境为Matlab7.0版本通信过程的每个模块写成子程序函数:Channelcoding 为信道编码函数Channeldecoding 为信道解码纠错子函数Interwaving 为交织子函数Deinterwaving 为解交织子函数addfade为向信道加入衰落参数的子函数awgn 为库函数,向信源加高斯白噪声pskmod 为库函数,用于信号调制,输出为复数pskdemod 为库函数,用于信号解调4.2仿真源程序4.2.1信道编码%信道编码子函数,sym为编码码流,G为生成矩阵,k为编码方式的长度,如(7,4)码的4function bitcoded=channelcoding(sym,G,k)A=vec2mat(sym,k);U=A*G;U=mod(U,2);bitcoded=reshape(U',1,[]);4.2.2信道解码function bitdecoded=channeldecoding(recode,Etab,Smatrix,H,n,k) % 前向纠错函数,实现纠错功能% bidecoded为纠错后返回的比特流% recode为输入的比特流% E为错误图样表,S为对应的伴随式表% H为监督矩阵,n,k为码的类型,如(7,4)码,n=7,k=4 row=length(recode)/n; %行数E=zeros(row,n); %错误图样RM=zeros(row,n); %纠错之后的矩阵R=vec2mat(recode,n);S=R*H'; %伴随矩阵S=mod(S,2);for i=1:rowfor j=1:2^(n-k) %查表纠错if(S(i,:)==Smatrix(j,:))E(i,:)=Etab(j,:);RM(i,:)=R(i,:)+E(i,:);RM(i,:)=mod(RM(i,:),2);break;endendendbitdecoded=reshape(RM',1,[]); %转化为比特流4.2.3交织function retbit=interweaving(bitstream,row,col)%功能:实现对输入比特的交积% retbit为交积后返回的比特流向量% bitstream 为需要交积的比特流向量% row 和col为交积器的行和列,% 通过改变col就可以改变交积深度retbit=zeros(1,length(bitstream));bitarr=vec2mat(bitstream,row);bitarr=bitarr';for i=1:length(bitstream)/(row*col)temp=bitarr(:,((i-1)*col+1):i*col);retbit(1,((i-1)*(row*col)+1):(i*(row*col)))=reshape(temp',1,[]);end4.2.4解交织function retbits=deinterweaving(bitstream,row,col)%功能:实现对输入比特的解交积%rebits为解交积后返回的比特流% bitstream输入的比特流%row 和col为交积器的行和列,通过改变col就可以改变交积器的长度retbits=zeros(1,length(bitstream));bitarr=vec2mat(bitstream,col);for i=1:length(bitstream)/(row*col)temp=bitarr((i-1)*row+1:i*row,:);retbits(1,(i-1)*row*col+1:i*row*col)=reshape(temp,1,[]);end4.2.5信道衰落function code=addfade(modcode,Tf,isperiod,isfade)%功能:向传输序列modcode叠加衰落性信道的衰落参数k(t)%code为加入衰减参数之后返回的序列。

% modcode为调制之后的序列% Tf 为衰落时间,以ms为单位,小于10ms,% Tf=1,表示衰落1ms% isperiod 周期衰落和一次性衰落的标志,% isperiod=1表示周期性衰落,0表示一次性衰落% isfade表示是否存在衰落,1存在,0不存在衰落直接返回modcodeif(isfade==1)if(isperiod==1) %周期性衰落for k=1:length(modcode)/(100*Tf)a=(k-1)*100*Tf+31;b=(k-1)*100*Tf+30+10*Tf;modcode(1,a:b)=0.1*modcode(1,a:b);endelse %一次衰落a=31;b=30+10*Tf;modcode(1,a:b)=0.1*modcode(1,a:b);endcode=modcode;elsecode=modcode;end六程序及仿真图1、file1:信道编码对通信系统性能的影响,有无信道编码的影响执行时间:Elapsed time is 355.023518 seconds.ticclc%功能:有无信道编码性能比较M=2; %进制b=log2(M) ; %每符号比特数n=128*10000 ; %符号数G=[1 1 1 1 0 0 0;1 0 1 0 1 0 0;0 1 1 0 0 1 0;1 1 0 0 0 0 1] ; %生成矩阵H=[1 0 0 1 1 0 1;0 1 0 1 0 1 1;0 0 1 1 1 1 0] ; %监督矩阵Etab= [0 0 0 0 0 0 0;0 0 0 0 0 0 1; %错误图样0 0 0 0 0 1 0;0 0 0 0 1 0 0;0 0 0 1 0 0 0;0 0 1 0 0 0 0;0 1 0 0 0 0 0;1 0 0 0 0 0 0];Smatrix=Etab*H'; %对应的伴随式sym=randint(n,1,M);sym=de2bi(sym,'left-msb'); %模拟信源编码bitcoded=channelcoding(sym,G,4); %信道编码,(7,4)码modbit=pskmod(bitcoded,M);%在传输序列modbit加入AWGN噪声S nr=0:0.2:15; %噪声为0到15dL=length(snr)ser=zeros(1,L);ser2=zeros(1,L);for k=1:Ly=awgn(modbit,10*log10(b)+snr(k),'measured');zsym=pskdemod(y,M); %复数解调zbit=de2bi(zsym,'left-msb');recode=reshape(zbit',1,[]);Rstream=recode;err=(Rstream~=bitcoded);errnum=sum(err);ser(k)=log10(errnum/length(bitcoded));%纠错bitdecoded=channeldecoding(Rstream,Etab,Smatrix,H,7,4);err=(bitdecoded~=bitcoded);errbits=sum(err);ser2(k)=log10(errbits/(length(bitcoded)));endplot(snr,ser,'b-*')hold onplot(snr,ser2,'r-o')grid onlegend('没有信道编码','信道编码');xlabel('Eb/No(dB)');ylabel('SER');title('2PSK有无信道编码性能比较');toc %Elapsed time is 278.288819 seconds.程序运行时间结论:由上图在较高信噪比的时候编码增益很明显大大提高了误码性能,但是在低信噪被的时候编码增益较小甚至可能是负值,则是因为编码后信息比特能量扩散到多个编码比特上,每个编码比特能量有所降低,如果信噪比低的话,编码冗余带来的性能增益可能弥补不了编码比特的能量的降低,因此信道中信噪比的波动会显著降低编码性能2、file2:在周期性深衰落的信道条件下,交织对通信系统性能的影响ticclc%功能:有无信道编码性能比较M=2; %进制b=log2(M) ; %每符号比特数n=128*10000 ; %符号数interrow=8;intercol=10;%交积矩阵的行和列G=[1 1 1 1 0 0 0;1 0 1 0 1 0 0;0 1 1 0 0 1 0;1 1 0 0 0 0 1] ; %生成矩阵H=[1 0 0 1 1 0 1;0 1 0 1 0 1 1;0 0 1 1 1 1 0] ; %监督矩阵Etab= [0 0 0 0 0 0 0;0 0 0 0 0 0 1; %错误图样0 0 0 0 0 1 0;0 0 0 0 1 0 0;0 0 0 1 0 0 0;0 0 1 0 0 0 0;0 1 0 0 0 0 0;1 0 0 0 0 0 0];Smatrix=Etab*H'; %对应的伴随式sym=randint(n,1,M);sym=de2bi(sym,'left-msb'); %模拟信源编码bitcoded=channelcoding(sym,G,4); %信道编码,(7,4)码interv=interweaving(bitcoded,interrow,intercol); %交积向量modbit=pskmod(bitcoded,M);modbit2=pskmod(interv,M);%向传输序列modcode叠加衰落性信道的衰落参数k(t) modbitfade=addfade(modbit,1,1,1);modbitfade2=addfade(modbit2,1,1,1);%1ms周期性衰落modbitfade3=addfade(modbit2,2,1,1);%衰落时长2ms%在传输序列modbit加入AWGN噪声snr=0:0.2:25; %噪声为0到25dL=length(snr)ser=zeros(1,L);ser2=zeros(1,L);for k=1:Ly=awgn(modbitfade,10*log10(b)+snr(k),'measured');y2=awgn(modbitfade2,10*log10(b)+snr(k),'measured');y3=awgn(modbitfade3,10*log10(b)+snr(k),'measured');zsym=pskdemod(y,M); %复数解调zsym2=pskdemod(y2,M);zsym3=pskdemod(y3,M);zbit=de2bi(zsym,'left-msb');zbit2=de2bi(zsym2,'left-msb');zbit3=de2bi(zsym3,'left-msb');recode=reshape(zbit',1,[]);recode2=reshape(zbit2',1,[]);recode3=reshape(zbit3',1,[]);deinterv=deinterweaving(recode2,interrow,intercol);%解交积向量deinterv3=deinterweaving(recode3,interrow,intercol);Rstream=recode;Rstream2=deinterv;Rstream3=deinterv3;%纠错bitdecoded=channeldecoding(Rstream,Etab,Smatrix,H,7,4);bitdecoded2=channeldecoding(Rstream2,Etab,Smatrix,H,7,4);bitdecoded3=channeldecoding(Rstream3,Etab,Smatrix,H,7,4);err=(bitdecoded~=bitcoded);errbits=sum(err);ser(k)=log10(errbits/(length(bitcoded)));err2=(bitdecoded2~=bitcoded);errbits2=sum(err2);ser2(k)=log10(errbits2/(length(bitcoded)));err3=(bitdecoded3~=bitcoded);errbits3=sum(err3);ser3(k)=log10(errbits3/(length(bitcoded)));endplot(snr,ser,'b-*')hold onplot(snr,ser2,'r-o')hold onplot(snr,ser3,'k-+')grid onlegend('有信道编码没有交织1ms衰落','有信道编码有交织1ms衰落','有信道编码有交织2ms衰落');xlabel('Eb/No(dB)');ylabel('SER');title('2PSK衰落信道有无交织性能比较');toc %Elapsed time is 1504.524053 seconds.%该程序运行时间结论:衰落信道使系统的误码性能大大的降低,尤其是时延扩展远大于码元宽度的衰落,如瑞利衰落信道,此时信道属于慢深衰落,容易使得传输的信息出现连续的错误,当出现的错误大于信道编码的纠错能力时,就无法产生编码增益,甚至可能是性能恶化。

相关文档
最新文档