线性分组码的编码与译码_第1页
线性分组码的编码与译码_第2页
线性分组码的编码与译码_第3页
线性分组码的编码与译码_第4页
线性分组码的编码与译码_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实践教学大学计算机与通信学院2014年秋季学期计算机通信课程设计题目:线性分组码(9,4)码的编译码仿真设计专业班级:姓名:学号:指导教师:成绩:摘要该系统是(9,4)线性分组码的编码和译码的实现,它可以对输入的四位的信息码进行线性分组码编码,对于接收到的九位码字可以进行译码,从而译出四位信息码。当接收到的九位码字中有一位发生错误时,可以纠正这一位错码;当接收到的码字有两位发生错误时,只能纠正一位错误,但同时能检测出另一位错误不能纠正。只有特定位有两位错误时,才能纠正两位错误。这样就译出正确的信息码组,整个过程是用MATLAB语言实现的。关键词:编码;译码;纠错目录TOC\o"1-5"\h\z摘要1\o"CurrentDocument"目录2\o"CurrentDocument"信道编码概述2\o"CurrentDocument"1.1信道模型2\o"CurrentDocument"1.2抗干扰信道编码定理及逆定理3\o"CurrentDocument"1.3检错与纠错的基本原理4\o"CurrentDocument"1.4限失真编码定理5\o"CurrentDocument"线性分组码的编码6\o"CurrentDocument"2.1生成矩阵6\o"CurrentDocument"2.2校验矩阵9\o"CurrentDocument"2.3伴随式与译码10\o"CurrentDocument"线性分组码编码的Matlab仿真12\o"CurrentDocument"3.1程序流程图12\o"CurrentDocument"3.2程序执行结果12\o"CurrentDocument"3.2线性分组码译码的Matlab仿真13\o"CurrentDocument"3.3结果分析15\o"CurrentDocument"参考文献16\o"CurrentDocument"总结17\o"CurrentDocument"致谢18附录19前言由于计算机、卫星通信及高速数据网的飞速发展,数据的交换、处理和存储技术得到了广泛的应用,数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从而使接收端产生图象跳跃、不连续、出现马赛克等现象,人们对数据传输和存储系统的可靠性提出来了越来越高的要求,经过长时间的努力,通过编译码来控制差错、提高可靠性的方式在信道传输中得到了大量的使用和发展,并形成了一门新的技术叫做纠错编码技术,纠错编码按其码字结构形式和对信息序列处理方式的不同分为两大类:分组码和卷积码。目前,绝大多数的数字计算机和数字通信系统中广泛采用二进制形式的码。而线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术。对线性分组码的讨论都在有限域GF(2)上进行,域中元素为{0,1},域中元素计算为模二加法和模二乘法。分组码是一组固定长度的码组,可表示为(n,k),通常它用于前向纠错。在分组码中,监督位被加到信息位之后,形成新的码。在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。对于长度为n的二进制线性分组码,它有种2n可能的码组,从2n种码组中,可以选择M=2k个码组(k<n)组成一种码。这样,一个k比特信息的线性分组码可以映射到一个长度为n码组上,该码组是从M=2k个码组构成的码集中选出来的,这样剩下的码组就可以对这个分组码进行检错或纠错。信道编码概述1.1信道模型信息必须首先转换成能在信道中传输或存储的信息后才能通过信道传送给收信者。在信息传输过程中,噪声或干扰主要是从信道引入的,它使信息通过信道传输后产生错误和失真。因此信道的输入和输出之间一般不是确定的函数关系,而是统计依赖的关系。只要知道信道的输入信号、输出信号以及它们之间的统计依赖关系,就可以确定信道的全部特性。信道的种类很多,这里只研究无反馈、固定参数的单用户离散信道。离散信道的数学模型离散信道的数学模型一般如图6.1所示。图中输入和输出信号用随机矢量表示,输入信号为X=*X2,…,XN),输出信号为Y=(*,Y2,…,Yn);每个随机变量Xj和Yj又分别取值于符号集A={a1Za2,…,ar}和B={b1Zb2,…,bs},其中r不一定等于s;条件概率P(y|x)描述了输入信号和输出信号之间的统计依赖关系,反映了信道的统计特性。X信道kYX=(X,X,...,X)P(yIx)Y=(Y,Y,...,Y)12N12N£P(yIx)=1图1.1离散信道模型根据信道的统计特性即条件概率P(y|x)的不同,离散信道可以分为三种情况:(1)无干扰信道。信道中没有随机干扰或干扰很小,输出信号Y与输入信号X之间有确定的一一对应的关系。有干扰无记忆信道。实际信道中常有干扰,即输出符号与输入符号之间没有确定的对应关系。若信道任一时刻的输出符号只统计依赖于对应时刻的输入符号,而与非对应时刻的输入符号及其他任何时刻的输出符号无关,则这种信道称为无记忆信道。有干扰有记忆信道。这是更一般的情况,既有干扰又有记忆,实际信道往往是这种类型。在这一类信道中某一瞬间的输出符号不但与对应时刻的输入符号有关,而且与此前其他时刻信道的输入符号及输出符号有关,这样的信道称为有记忆信道。单符号离散信道的数学模型单符号离散信道的输入变量为x,取值于{a],a2,…,ar},输出变量为y,取值于他,

b2,…,bs},并有条件概率P(y|x)=P(y=b^|x=a.)=P(b.|a.)(i=12...,r;j=12...,s)这一组条件概率称为信道的传递概率或转移概率。因为信道中有干扰(噪声)存在,信道输入为x=a.时,输出是哪一个符号尸,事先无法确定。但信道输出一定是外,b2,…,bs中的一个,即有丈p(b,I气)=1(i=12...,r)(1-1)jT由于信道的干扰使输入符号x在传输中发生错误,所以可以用传递概率P(bj|ai)(i=1,2,A,r;]加以3f描述。另外,也可以用图来描述,如图1.2所示。M外j=1,2,A,s)来描述干扰影响的大小。因此,一般简单的单符号离散信道的数学模型可以用概率空间[x]加以3f描述。另外,也可以用图来描述,如图1.2所示。M外定义1.1已知发送符号为a.,通过信道传输接收到的符号为bj的概率P(bj|a.)称为航向概率。已知信道输出端接收到的符号为bj,而发送符号为^的概率P(ajbj),称为后向概率。有时,也把P(a.)称为输入符号的先验概率(即在接收到一个输出符号以前输入符号的概率),而对应地把P(ajbj)称为输入符号的后验概率(在接收到一个输出符号以后输入符号的概率)。为了讨论方便,下面列出本章讨论中常用的一些关于联合概率和条件概率的关系:(1)设输入和输出符号的联合概率为P(x=a.,y=bj)=P(aibj),则有P(ab)=P(a)P(bIa)=P(b)P(aIb)

ijijijijP(b.)=区P(a,)P(b,Ia,)(j=1,A,s)。根据贝叶斯定律,可得后验概率与先验概率之间的关系P(aIb)=P(aPj)(P(b)丰0)i'P".风)'(i=1,2,A,r;j=1,2,A,s)1.2抗干扰信道编码定Pja逆定理i=1定理1.1有噪信道编码定理设离散无记忆信道[X,P(y|x),Y],P(y|x)为信道传递概率,其信道容量为C。当信息传输率R<C时,只要码长n足够长,总可以在输入的符号集中找到2nR个码字组成的一组码和相应的译码规则,使译码的错误概率任意小(PET0)。在定理6.1中,信道容量C是平均互信息量的最大值C=maxI(X,Y)其单位是“bit/符号”。"⑴定理1.2有噪信道编码逆定理(定理6.1的逆定理)设离散无记忆信道[X,P(y|x),Y],其信道容量为C。当信息传输率R>C时,则无论码长n多长,均找不到一种编码2nR,使译码错误概率任意小。定理1.1和定理1.2统称为申农第二定理,它是一个关于有效编码的存在性定理,它具有根本性的重要意义,它说明错误概率趋于零的好码是存在的。它有助于指导各种通信系统的设计,有助于评价各种通信系统及编码的效率。申农1948年发表申农第二定理后,科学家就致力于研究信道中的各种易于实现的实际编码方法,赋予码以各种形式的代数结构,出现了各种形式的代数编码、卷积码、循环码等。1.3检错与纠错的基本原理在申农第二定理发表后,很长一段时间内人们都在探寻能够简单、有效地编码和译码的好码。由此形成了一整套纠错码理论。在此只简单地介绍检错和纠错的一些基本概念及基本原理。在信息处理过程中,为了保持数据的正确性应对信息进行编码使其具有检错纠错能力,这种编码称为语法信息编码。它的基本思想是引入剩余度,在传输的信息码元后增加一些多余的码元,以使信息损失或错误后仍能在接收端恢复。通常将要处理的信息称为原信息,将原信息转化为数字信息后再进行存储、传输等处理过程称为传送。工程上最容易实现的是二元数字信息(或二元码信息)的传送。所谓二元数字信息就是由二元数域F2={0,1}中的数字0与1组成的数组或向量。定义1.3设乂=*x2,...,xn),Y=(y1Zy2,...,yn),xieF2,yieF2,i=1,...,n,称X和Y对应分量不相等的分量个数为X和Y的汉明(Hamming)距离,记为d(X,Y)。记d(X,,)=]0丁吃则nm[a>0X丰yd(X,Y)=d(xpyj+d(x2,y2)+...+d(xn,yn)容易证明以下定理。定理1.4设X和Y是长为n的二元码字,则(1)0<d(X,Y)<n(非负且有界性)

(2)d(X,Y)=0当且仅当X=Y(自反性)d(X,Y)=d(Y,X)(对称性)d(X,Z)<d(X,Y)+d(Y,Z)(三角不等式)1.4限失真编码定理申农第一定理和申农第二定理指明:无论是无噪声信道还是有噪声信道,只要信道的信息传输率R小于信道容量C,总能找到一种编码,在信道上以任意小的错误概率和任意接近信道容量的信息传输率传输信息。反之,若信道信息传输率R大于信道容量C,一定不能使传输错误概率任意小,传输必然失真。实际上,人们并不需要完全无失真地恢复信息,只是要求在一定保真度下,近似恢复信源输出的信息。比如,人类主要是通过视觉和听觉获取信息,人的视觉大多数情况下对于25帧以上的图像就认为是连续的,通常人们只需传送每秒25帧的图像就能满足通过视觉感知信息的要求,而不必占用更大的信息传输率。而大多数人只能听到几千赫兹到十几千赫兹,即便是训练有素的音乐家,一般也不过能听到20千赫兹的声音。所以,在实际生活中,通常只是要求在保证一定质量的前提下在信宿近似地再现信源输出的信息,或者说在保真度准则下,允许信源输出的信息到达信宿时有一定的失真。对于给定的信源,在允许的失真条件下,信源熵所能压缩的极限理论值是多少?申农(Shannon)的重要论文〃保真度准则下的离散信源编码定理”论述了在限定范围内的信源编码定理。限失真信源编码的信息率失真理论是信号量化、模数转换、频带压缩和数据压缩的理论基础,在图像处理、数字通信等领域得到广泛的应用。所谓信道产生的失真d(xn,ym)是指:当信道输入为xn时,输出得到的是ym,其差异或损失,称为译码失真,可描述为而平均译码失真则是,y而平均译码失真则是,ym)=ymymMzp(xm=1d=£n=1如果要求平均译码失真小于某个给定值D,即d=习£p(x)p(yIx)d(xn=1m=1也就是对P(Y|X)施加一定的限制。把满足上式的那些P(Y|X)记为PD,在集合PD中寻找一个P(Y|X)使I(Y|X)极小,把这个极小值称为在d<d的条件下所必须传送的信息速率,并记为R(D),即R(D)=min(X;Y)RD称R(D)为信息率失真函数。它表示信息率与失真量之间的关系。上式表明,在集合PD中,任意一个I(Y|X)值所对应的平均失真都小于或等于D。也就是说,在集合PD内,只要I(Y|X)zR(D),就可以达到d<d;但是如果I(Y|X)<R(D),就意味着P(Y|X)不在集合PD内,因而不能满足d<DMzp(xm=1定理1.5(离散无记忆信源的限失真编码定理)设R(D)是某离散无记忆信源的信息率失真函数,只要满足信息率R>R(D),对于任意小的&>0,允许失真值D>0,以及任意足够长的码字长度n,则一定存在一种编码方法,使其平均译码失真d<d+£;反之,若R<R(D),则无论采用什么样的编码方法,都不可能使译码的失真小于或等于D+£。离散无记忆信源的限失真编码定理也称为申农第三编码定理,它表明:在允许失真值D给定后,总存在一种编码方法,使编码后的信源输出信息率R大于R(D),但可任意地接近于R(D),而平均失真d小于或无限接近于允许失真值d;反之,若R>R(D),则编码后的平均失真9将大于d。如果用二进制码符号来进行编码的话,那么在允许失真为D的情况下,平均每个信源符号所需二进制码符号数的下限值在数量上等于R(D)。在不允许失真的情况下,平均每个信源符号所需二进制码符号数的下限值在数量上等于H(S)。一般情况下,有R(D)<H(S),因此,在满足保真度准则d<d的条件下,信源所需输出数据就可以达到压缩。信息传输的目标是高效率、高质量地传输信息,而高效率和高质量又常常相矛盾。本章分析的几个编码定理表明:通过适当的编码可以把高效率(传输信息的速率无限接近于信道容量)和高质量(传输信息的差错无限接近于零或者失真低于规定的允许值)完美地结合起来。线性分组码的编码2.1生成矩阵线性分组码(n,k)中许用码字(组)为2k个。定义线性分组码的加法为模二加法,乘法为二进制乘法。即1+1=0、1+0=1、0+1=1、0+0=0;1x1=1、1x0=0、0x0=0、0x1=0。且码字%=…5与码字乌的运算在各个相应比特位上符合上述二进制加法运算规则。线性分组码具有如下性质(n,k)的性质:1、封闭性。任意两个码组的和还是许用的码组。2、码的最小距离等于非零码的最小码重。对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,常记作(门,k)码,如果满足2r-1>n,则有可能构造出纠正一位或一位以上错误的线性码。下面我们通过(9,4)分组码的例子来说明如何具体构造这种线性码。设分组码(n,k)中,k=4,为能纠正一位误码,要求r>5。现取r=5,则门*+「二9。该例子中,信息组为(C5c6c7c8),码字为(c8c7c6c5c4c3c2c1c0).当已知信息组时,按以下规则得到四个校验元,即_C4=c5+c6C3=c7+c8C2=c4+c6+c8(式2.1)C1=c5+c7C0=c5+c6+c7+c8这组方程称为校验方程。(9,4)线性分组码有24(16)个许用码字或合法码字,另有29-24个禁用码字。发送方发送的是许用码字,若接收方收到的是禁用码字,则说明传输中发生了错误。为了深化对线性分组码的理论分析,可将其与线性空间联系起来。由于每个码字都是一个二进制的n重及二进制n维线性空间Vn中的一个矢量,因此码字又称为码矢。线性分组码的一个重要参数是码率r=k/n,它说明在一个码字中信息位所占的比重,r越大,说明信息位所占比重越大,码的传输信息的有效性越高。由于(n,k)线性分组,线性分组码的2k个码字组成了n维线性空间Vn的一个K维子空间。因此这2k个码字完全可由k个线性无关的矢量所组成。设此k个矢量为c1/c2,^,ck/有生成矩阵形式为C1C2(3-2)ck(n,k)码字中的任一码字ci,均可由这组基底的线性组合生成,即ci=m.-G=[mn-1mn-2...mn_k]-G式中,mi=[mn-1mn-2.mn-k]是k个信息元组成的信息组。表3-1(9,4)线性分组码信息组0000000100100011010001010110011110001001101010111100110111101111码字0000000000001000110010101010011111000100010100101110101101000101110000110001001010010110111010010111101111100110001010110100011111011110111111111对于表3-1给出的(9,4)线性分组码,可将写成矩阵形式f001115[c8c7c6c5c4c3c2c1]=[c8c7c6c5]-01001111110110、111101故(9,4)码的生成矩阵为00厂1001G=01000011可以看到,从(9,4)码的码字中,挑选出k=4个线性无关的码字作为码的一组基底,用1110110、111101—个系统码的生成矩阵G,其左边k行k列应是一个k阶单位方阵Ik,因此生成矩阵G表示为G=[IkP](3-3)式中,P是一个kx(n-k)阶矩阵。2.2校验矩阵表3-1所示的(9,4)线性分组码的四个校验元由式(3-1)所示的线性方程组决定的。把(3-1)移相,有C4+c5+c6=0C3+c7+c8=0aC2+c4+c6+c8=0C1+c5+c7=0(C8C7C6C5C4C3C2C1C0J<C0+c5+c6+c7+c8=0[001110000「110001000010100010111100001J上式的矩阵形式为这里的四行七列矩阵称为(9,4)码的一致校验矩阵,用H表示,即(C8C7C6C5C4C3C2C1C0J10111100100°DH=1100011(3-5)0V11000由H矩阵得到(n,k)线性分组码的每一码字c.#=12...,2k),都必须满足由H矩阵各行所确定的线性方程组,即c*Ht0。(9,3」)码的生成矩阵G中每一行及其线性组合都是(n,k)码的码字,所以有G-Ht=0。由G和H构成的行生成的空间互为零空间,即G和H彼此正交。H=[PTlr]其右边r行r列组成一个单位方阵。2.3伴随式与译码2.3.1码的距离及纠检错能力1•码的距离两个码字之间,对应位取之不同的个数,称为汉明距离,用d表示。一个吗的最小距离dmin定义为dmin=min{d(ci/cj),i/j/cj/cje(n/k)},两个码字之间的距离表示了它们之间差别的大小。距离越大,两个码字的差别越大,则传送时从一个码字错成另一码字的可能性越小。码的最小距离愈大,其抗干扰能力愈强。2.线性码的纠检错能力对于任一个(n,k)线性分组码,(1)若要在码字内检测出e个错误,则要求码的最小距离d>e+1;(2)纠正t个错误,则要求码的最小距离d>2t+1;(3)纠正t个错误同时检测e(>t)个错误,则要求d>t+e+1;2.3.2伴随式与译码假设接收端收到的码字为B,那么它和原来发送端发送的码字A之间就有可能存在着误差。即在码组A={a6a5a4a3a2a1a。}中的任意一位就有可能出错。这样我们在接收端接收到一个码组是就有可能判断错发送端原来应该要表达的意思。为了描述数据在传输信道中出现错误的情况,引入了错误图样E,在错误图样中,0代表对应位没有传错,1代表传输错误。实际上错误图样E就是收序列与发送序列的差。所以在译码中用接收到的码字B模尔加错误图样E就可以得到发送端的正确码字A。因此译码的过程就是要找到错误图样E。定义:校正子SS=B*HT=(A+E)*HT=A*Ht+E*Ht=E*Ht因为A是编得的正确码字。根据前面所叙述,它和监督矩阵的转置相乘为0。显然,S仅与错误图样有关,它们之间是一一对应的关系。找到了校正子S,也就可以找到E。而与发送的码字无关。若E=0,则S=0;因此根据S是否为0可进行码字的检错。如果接收码字B中只有一位码元发生错误,又设错误在第i位即E._1=1,其他的弓均为0。在后面的译码程序中,建立了一个校正子S与错误图样E对应的表。也就是收到一个B序列,就可以通过计算得到一个校正子,而每一个校正子都对应着一个错误图样E,再通过B模尔加上E,就可以得到正确的码字A。因为在不同的错误序列B中,同一位码元错误时对应的E是一样的,所以可以利用0000000这个正确的码字让它每位依次错误,来求得它的八个校正子。而这时的矩阵B就是错误图样E。这样就算得了8个校正子S。而这时的错误序列B,就是错误图样E,所以有:E与S都已经得到,这时就可以建立一个表来将它们一一对应起来。3.线性分组码编码的Matlab仿真3.1程序流程图线性分组码编码的Matlab仿真程序流程图如下:[开始;初始化k,r,k=4,r=5得到生成矩阵Q,为4行5列I根据生成矩阵Q得到校验矩阵H计算所有的可用码组"结束J图5-1-1线性分组码编码的Matlab仿真程序流程图3.2程序执行结果形成Q矩阵的程序执行结果如下:线性:好组码信■忠码柱度女=己诚性分£且码监菁位长直L际足否自动]生感校正子?Y/M-N的人一个柱正子,EL检迎虻8位的锢码拓位)11001始入一吓校正子,以检S'JCTfc的锚冯E位.)11010桐i人一个柱正子,以检迎虻弓位的锢码拓位)01100短入一十校正子>以检珈UE位的锚袒E位】QQ1H校正子与错码位击的对应关系Q_char=TOC\o"1-5"\h\z11001>C0811010>CQ701100>C06□O111>C05loooo>cod0100Q>CQ300100>C02摆岩二二旗::图5-1-2形成Q矩阵的程序执行结果生成可用码组的程序执行结果如下:^Lid_cc-de5=00a0Daa0D0Q0L0(J]L1QQ]QDi]0Q0D]LD]aL101001i以L0010L1i]0101]0La]LD01jLLg001L0001]Q01L□aLL]]LDla]0La]CI.LQ]L100LQL1a0DaaL1L1aLDa]0DL1]00i]L1L1]LDi00Q量:小阳蝠」f=最小玛距N■21113—图3-1-3生成可用码组的程序执行结果3.2线性分组码译码的Matlab仿真3.2.1程序流程图线性分组码译码的Matlab仿真程序流程图如下:图3-2-1线性分组码译码的Matlab仿真程序流程图3.2.2程序执行结果是否自动生成要核验的码字?加:N清输A.要勉的码部位):ooooooooo做验子为:00000errors=无错图3-2-2输出无错时显示图有一位错误输入时的显示图如下:是否自就生应要咬温的四字?r/N:n语输,要桢验的禺宝厦位):00000000]得出校验子力:S=00001errors=铛日立置:CO,原■应为:modifyode=ooooooooo图3-2-3有一位错误输入时的显示图有两位错误输入时的显示图如下:是否自动生成要桢验的码字?请输入要校验的码字(9位);001000010得出校验子为:S二errors=校则不出错误r图3-2-4有两位错误输入时的显示图3.3结果分析.输入无错时的结果分析由图5-1输出编码结果和正确输入时显示图所示的结果可以看出编码的结果的八种情况和在推导过程中运算的结果是一致的,可以见得程序的编码过程是正确的。对于译码过程而言,当界面显示〃请输入要校验的码字(9位):”,然后从提示符后输入:000000000,由于输入的接收码组与编码后的码字一致,它提取了每个码组的前四位,即信息位,由结果看出译码过程是正确的,并没有出现错译的情况,可见程序的译码片段是正确的。.输入一位错误时的结果分析对于纠错过程而言,当界面显示〃请输入要校验的码字(9位):”。然后从提示符后输入:000000001,由图5-2有一位错误输入时的显示图所知,接收码组的第五位发生了错误,经程序纠检错误后改正了接收序列的错误,并且正确译出了信息位。可见程序的纠错功能也是可以实现的,以上结果进一步证实了,系统译码程序的正确性。.输入错误时的结果分析当输入B=001000010时,校正子是01110,检测不出错误。参考文献孙丽华编.信息论与纠错编码.电子工业出版社.2005,3郭文彬桑林编.通信原理-基于MATLAB的计算机仿真.北京邮电大学出版社.2006.2苏金明阮沈勇编.MATLAB实用教程(第二版).电子工业出版社.2008.2徐东艳孟晓刚编.MATLAB函数库查询词典.中国铁道出版社.2006.4潘新民编.计算机通信技术.电子工业出版社.2003.7吴玲达李国辉杨冰等编.计算机通信原理与技术.国防科技大学出版社.2003.3总结通过对线性分组码中的线性分组码的编译码编程实现,了解到线性分组码的构成方式是把信息序列分成每k个码元一段,并由这k个码元按一定规则产生r个校验位,组成长度为n=k+r的码字,用(n,k)表示。信息码元与校验位之间为线性关系。并且知道了线性分组码的编码过程信息码元与校验位之间的线性关系实现起来是十分简单的.对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,如果满足2r-1>n,则有可能构造出纠正一位或一位以上错误的线性码。就像本设计的(9,4)分组码的(n,k)中,n=9,k=4,r>4能纠正一位误码,检测到两位误码。运用MATLAB语言进行编程,可以较明显的知道编码的过程和译码时出现的错误,码字的最小距离是3时,可以纠正一位错误,当输入特定的两位错误时,该码字还可以纠正这两位错误,这种情况在编程结果的命令窗口中可以明显看到。线性分组码具有编译码简单,封闭性好等特点,采用差错控制编码技术是提高数字通信可靠性的有效方法,是目前较为流行的差错控制编码技术之一。致谢这里,我要郑重地感谢我们的课程设计指导老师。正是他的耐心指导才让我们能够顺利的完成此次课程设计,在此说声谢谢!在此,我也要感谢我们的小组成员,以及所有帮助我完成嵌入式程序设计论文的同学们。在这次的线性分组码课程设计中,老师和同学们在设计思路和设计步骤上给了我很大的帮助,帮我解答疑难问题,给我提供资料,给我提供查阅资料的信息,引导我该如何去思考问题,教会我解决问题的方法。同时又鼓励我自己学习,老师给我的不仅是知识,是帮助,更是学习的信心和智慧,在这里衷心感谢老师的耐心细心和一丝不苟的帮助。同时也感谢和我一起课设的同学,这是我们共同努力的结果,衷心的感谢大家对我的帮助和支持。希望在以后的学习中我们共同学习与成长。is%;_咨®、siia^H^弃—f_ag」nnl_%®>淤弃亦a、、illws>^wnwh=e(f-ag」n)kH4;rH5;K(2>TlvHk+r)f-ag」rl3endend次:■s§^、田济商皿岂时m煤4HS®>:■Q—yesorNOll.npuu福洲皿S时m^ZEW7Y、N;--s-);if(QlyesorNOHH-Y-)QlrandFU-Trandperm(2>r—l);QlrandcheckHzerospk)一苛&悬ffiBQQnzeros(kJ);eh-1;%济任田丑3)5爵^(十sf®l)wz-eTnk)flnfsss、淅涕漏*尚帛毋湖动4^苒勃港>=1悬滞1248:.forH0^^.if(QlrandFU=uTH2>n)endend51—*51)%—枣跚«-7|(缠Wf_ag—dal)、业炳MMSQ—randcheckQlrandcheck(TQlrandFU--u);H-j+lii]!.+l;e_se%洲匡、Hisses、ss—■>萍H-j+liendendQICharAndec2b5'(Qlrandcheck)_%恭+序萍皤斗旃海甘nsfSJ淅涕K斗fomkforH-llr%恭留旃有普黑罗ffiBQ(LjTsir2doub-e(QlcharA(cz:));endende-se%^®fNk苛rgusffiBQnzeros(kJ);Q、甘k苛r浬fomk%ffl好甘爵>出苒、iss?s^iQlcharAaTmpuKSPz.nss^—T^IE^、WB渲C%dKFsm®(%dKF)-、k+ms-);forH-llr%恭留旃有普黑罗ffiBQ(LjTsir2doub-e(QlcharA(cz:));endendend%%---生成完全的校正子与错码位置之间的对应关系---%生成单位矩阵(字符型),以补齐校正子fori=r-1:-1:0Qr(r-i)=2Ai;endQ_charB=dec2bin(Qr);%将十进数格式转换为二进制表示方式%生成校正子与错码位置的对应关系Q_charC(1:k,:)=Q_charA;Q_charC(k+1:k+r,:)=Q_charB;Q_charD=reshape(sprintf('——>C%02d',k+r-1:-1:0),8,k+r)';disp('校正子与错码位置的对应关系');Q_char=[Q_charCQ_charD]%%---线性分组码内部的函数关系及计算---Ik=eye(k);%生成k*k的单位矩阵,与Q合成为生成矩阵GG=[IkQ];%生成矩阵P=Q';Ir=eye(r);%生成r*r的单位矩阵,与P合成为监督矩阵HH=[PIr];%监督矩阵%%---计算所有的可用码组---valid_yesOrNo=input('是否要显示所有可用码组?Y/N:','s');if(valid_yesOrNo=='Y')%初始化2Ak行k+r列,与1行k列的矩阵valid_codes=zeros(2Ak,k+r);valid_buffer=zer

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论