㈠ 纠错码的基本原理和性能参数
纠错码能够检错或纠错,主要是靠码字之间有较大的差别。这可用码字之间的汉明距离d(x,y)来衡量。它的定义为码字x与y之间的对应位取不同值的码元个数。一种纠错码的最小距离d定义为该种码中任两个码字之间的距离的最小值。一种码要能发现e个错误,它的最小距离d应不小于e+1。若要能纠正t个错误,则d应不小于2t+1。一个码字中非零码元的个数,称为此码字的汉明重量。一种码中非零码字的重量的最小值,称为该码的最小重量。对线性码来说,一种码的最小重量与其最小距离在数值上是相等的。
在构造线性码时,数字上是从n维空间中选一k维子空间,且使此子空间内各非零码字的重量尽可能大。当构造循环码时,可进一步将每一码字看成一多项式,将整个码看成是多项式环中的理想,这一理想是主理想,故可由生成多项式决定;而多项式完全可由它的根规定。这样,就容易对码进行构造和分析。这是BCH码等循环码构造的出发点。一般地说,构造一种码时,均设法将它与某种代数结构相联系,以便对它进行描述,进而推导它的性质,估计它的性能和给出它的译码方法。若一种码的码长为n,码字数为M,或信息位为h,以及最小距离为d,则可把此码记作【n,M,d】码。若此码为线性码,常简记作(n,k)或(n,k,d)码。人们还常用R=log2M/n表示码的信息率或简称码率,单位为比特/码元。R越大,则每个码元所携带的信息量越大,编码效率越高。 纠错码实现中最复杂的部分是译码。它是纠错码能否应用的关键。根据式(1),采用的码长n越大,则误码率越小。但n越大,编译码设备也越复杂,且延迟也越大。人们希望找到的译码方法是:误码率随码长n的增加按指数规律下降;译码的复杂程度随码长n的增加接近线性地增加;译码的计算量则与码长n基本无关。可惜,已经找到的码能满足这样要求的很少。不过由于大规模集成电路的发展,即使应用比较复杂的但性能良好的码,成本也并不太高。因此,纠错码的应用越来越广泛。
纠错码传输的都是数字信号。这既可用硬件实现,也可用软件实现。前者主要用各种数字电路,主要是采用大规模集成电路。软件实现特别适合计算机通信网等场合。因为这时可以直接利用网中的计算机进行编码和译码,不需要另加专用设备。硬件实现的速度较高,比软件可快几个数量级。
在传信率一定的情况下,如果采用纠错码提高可靠性,要求信道的传输率增加,带宽加大。因此,纠错码主要用于功率受限制而带宽较大的信道,如卫星、散射等系统中。纠错码还用在一些可靠性要求较高,但设备或器件的可靠性较差,而余量较大的场合,如磁带、磁盘和半导体存储器等。
在分组码的研究中,谱分析的方法受到人们的重视。纠同步错误码、算术码、不对称码、不等错误纠正码等,也得到较多的研究。 分组码是对信源待发的信息序列进行分组(每组K位)编码,它的校验位仅同本组的信息位有关。自20世纪50年代分组码的理论获得发展以来,分组码在数字通信和数据存储系统中已被广泛应用。
分组码的码长n和码字个数M是一个码的主要构造参数。码长为n的码中所有码字的位数均为n;若要用一个码传送k比特信息,则码字的个数M必须满足。典型的分组码是由k位信息位和r位监督位组成的,这样构成的码一般称为系统码。
分组码中应用最广的线性分组码。线性分组码中的M个码字之间具有一定线性约束关系,即这些码字总体构成了n维线性空间的一个k维子空间。称此k维子空间为(n,k)线性分组码。线性系统码的特点是每个码字的前k位均由这个码字所对应的信息位组成,并通过对这k位信息位的线性运算得到后面n—k是位监督位。
线性分组码中应用最广的是循环码,循环码的主要特征是任何码字在循环移位后个码字。循环码的优点在于其编码和解码手续比一般线性码简单,因而易于在设备上实现。在循环码中,码字可表示为多项式。循环码的码字多项式都可表示成为循环码的生成多项式与这个码字所代表的信息多项式的乘积,即,因此一个循环码可以通过给出其生成多项式来规定。常用的循环码有BCH码和RS码。
网格码有多种描述方法,网格图是常用方法之一,它能表示出编码过程。一个码率为1/2、包含四种状态的网格码的网格图如图所示。图1中00,01,10,11表示编码器所具有的四种状态,以“·”示出,从每一状态出发都存在两条支路,位于上面的一条支路对应于编码器输入为“0”的情况,位于下面的一条支路对应于编码器输入为“1”的情况,而每一支路上所列出的两个二进位码则表示相应的编码输出。因而可知,编码输出不仅决定于编码器的当前输入,还决定于编码器的状态,例如在图中从“00”状态出发;,若输入的二进制数据序列为1011,则编码器的状态转移过程为00→01→10→01→11,而相应的编码输出序列为11010010。在网格图中任意两条从同一状态出发;,经不同的状态转移过程后又归于另一相同状态(该状态也可与初始状态相同)的路径间的距离的最小值称为码的自由距离。如该图中的为5。对于卷积码来说,的计算可简化为始于且终于零状态的非全零路径与全零路径间距离的最小值。是表征网格码纠错能力的重要参数。维特比算法是广泛采用的网格码的译码方法。由于网格码的状态越多,译码越复杂,所以状态个数是度量网格码译码复杂性的重要参数。一般说来可以通过增大译码复杂性来增加,从而提高码的纠错能力。
BCH码、网格码已被广泛地应用于移动通信、卫星通信和频带数据传输中。RS码也被广泛应用于光盘的存储中。
大多数纠错码是设计来纠随机误码的,可以通过交织的方法使它适用于对突发误码的纠错。交织是一种使得集中出现的突发误码在解码时进行分散化的措施,从而使其不超出纠错码的纠错能力范围。 卷积码不对信息序列进行分组编码,它的校验元不仅与当前的信息元有关,而且同以前有限时间段上的信息元有关。卷积码在编码方法上尚未找到像分组码那样有效的数学工具和系统的理论。但在译码方面,不论在理论上还是实用上都超过了分组码,因而在差错控制和数据压缩系统中得到广泛应用。
㈡ lte中信道编码的作用是什么 纠错
信道编码的作用:信道编码就是将信息序列变换成离散的编码序列,称之为码,是为了抵抗传输过程中出现的各种干扰,使得系统具有了检错或纠错的能力,由此可知,信道编码是用来控制因噪声在信息序列上引入的错误,所以也可以称为差错控制编码,简称纠错码。
㈢ 为什么用纠错码而不用检错码
纠错码是把你错误的改成正确的。这样就会方便程序员编写代码或者什么的。
而检错码是只检验对错,并不改正,这样就不得不重新寻找错误在那并且在改正,这样既浪费时间也不一定全改正。找的到。。
㈣ 纠错码的简介
纠错码(error correcting code) ,是在接收端能自动地纠正数据传输中所发生差错的码。纠错码的基本思路是在所有的由发送符号组成的序列中,仅挑出其中一部分做为信息的代表向信道发送,并使得所挑出的这些序列之间有尽可能多的差异。每个被挑出的允许发送的序列被称为一个码字,而码字的总合称为码。在发送端把信息变换成码字的过程称为编码;在接收端从接收到的信号判定所发码字、从而恢复信息的过程称为解码(或译码)。在解码时,若收到的信号不是码中的一个码字,则可以肯定在传输中出现了差错,从而着手对差错进行纠正。纠错的方法是找到与接收到的信号最接近的码字,并将其判定为发送信号。一般采用“距离”来度量信号间的接近程度,一种常用的“距离”称为汉明距离,它被定义为两码字间对应位不同的个数总和。一个给定码,其全部码字两两之间距离的最小值被称为这个码的码距。码距是一个码纠错能力的重要参数,例如在汉明距离下,若接收到的信号出错的位数不多于码距的一半,则接收端总能正确地恢复所发送的码字,从而正确地恢复所发送的信息。
纠错编码又称信道编码,它与信源编码是信息传输的两个方面。它们之间存在对偶的关系。应用信道译码直接对一些自然信息进行处理,可以去掉剩余度,以达到压缩数据的目的。
为了使一种码具有检错或纠错能力,必须对原码字增加多余的码元,以扩大码字之间的差别,使一个码字在一定数目内的码元上发生错误时,不致错成另一个码字。准确地说,即把原码字按某种规则变成有一定剩余度的码字,并使每个码字的码元间有一定的关系。关系的建立称为编码。码字到达收端后,用编码时所用的规则去检验。如果没有错误,则原规则一定满足,否则就不满足。由此可以根据编码规则是否满足以判定有无错误。当不能满足时,在可纠能力之内按一定的规则确定错误所在的位置,并予以纠正。纠错并恢复原码字的过程称为译码;码元间的关系为线性时,称为线性码;否则称为非线性码。检错码与其他手段结合使用,可以纠错。检错反馈重发系统(ARQ系统)就是一例。
在构造纠错码时,将输入信息分成k位一组以进行编码。若编出的校验位仅与本组的信息位有关,则称这样的码为分组码。若不仅与本组的k个信息位有关,而且与前若干组的信息位有关,则称为格码。这种码之所以称为格码,是因为用图形分析时它象篱笆或格架。线性格码在运算时为卷积运算,所以叫卷积码。 R.W.汉明于1950年首先给出可以纠正一个独立错误的线性分组码──汉明码。差不多与此同时E.戈雷给出一种可以纠正三个错误的完备码。完备码虽然十分罕见,但有较大实用意义。1954年D.E.莫勒提出一种能纠正多个错误的码;I.S.里德则立即给出它的译码方法,用的是择多判决法,这种码常称为RM码。1957年,E.普勒齐引入了循环码的概念。1959~1960年出现了BCH码,引进有限域的概念,解决了循环码的构造和性能估计等基本问题。后来成为线性分组码中最重要的一类码。它能纠正多个错误,且在实用范围内接近信道编码定理所指出的误码率值。但当n增大时,其误码率不能呈指数下降。BCH码的译码问题是W.W.彼得森解决的;钱天闻则提供了一种系统地搜索根的方法。1967年,E.R.伯利坎普提出一种迭代算法,大大简化了译码,使纠错码趋于实用。1970年В.Д.戈帕提出一种线性分组码的构造方法,原则上它可以达到吉尔伯特限,实现了理论上预期的目标。但至今仍未解决如何具体构造这种码的问题。
卷积码最早由P.伊莱亚斯于1955年提出。它的纠错能力较强,设备复杂程度与分组码大体相当。首先获得成功的译码方法是序列译码。1967年A.J.维特比提出的译码算法,能较好地按最大似然准则译码,且在许多领域中均可应用。卷积码还可用代数方法译码。它的设备虽较简单,但性能较差。卷积码在理论上不如分组码成熟,所用的工具也比较多样,尚缺乏系统的、统一的方法处理。
分组码和卷积码不但可以用来纠正独立错误,而且可以用来恢复删除错误和纠正突发错误。如分组码中有里德-索洛蒙码,法尔码等;卷积码中有岩垂码及扩散卷积码等。
为了实现低的误码率,根据式(1),要求码长n较大。但已知的大多数码,当n变大时不是性能欠佳或者难以构造,就是译码过分复杂,不容易实现。但是,可以利用好的码进行级连,以得到性能更好的码。级连码的内码和外码,用分组码和卷积码都可以。这在深空通信中应用较多。
㈤ 纠错码的介绍
纠错码(error correcting code),在传输过程中发生错误后能在收端自行发现或纠正的码。仅用来发现错误的码一般常称为检错码。为使一种码具有检错或纠错能力,须对原码字增加多余的码元,以扩大码字之间的差别 ,即把原码字按某种规则变成有一定剩余度(见信源编码)的码字,并使每个码字的码之间有一定的关系。关系的建立称为编码。码字到达收端后,可以根据编码规则是否满足以判定有无错误。当不能满足时,按一定规则确定错误所在位置并予以纠正。纠错并恢复原码字的过程称为译码。检错码与其他手段结合使用,可以纠错。
㈥ 循环码是一种重要的纠错码
循环码算是一种重要的纠错码,尤其是循环冗余校验码,即CRC校验码,在有线通讯中使用的非常广泛,缺点的纠错能力差,更多的时候是用于检错,特别是在无线通信中,基本都是检错用,纠错一般使用卷积码或RS码。
㈦ 差错控制的差错控制方式
1、前向纠错。实时性好,单工通信采用。
2、自动重发请求(ARQ)。强调检错能力,不要求有纠错能力,双向通道采用。
3、混合纠错。上述两种方式的综合,但传输设备相对复杂。
差错检测是差错控制的基础。能纠错的码首先应具有差错检测能力,而只有在能够判定接收到的信号是否出错才谈得上是否要求对方重发出错消息。具有差错检测能力的码不一定具有差错纠正能力。由于差错检测并不能提高信道利用率,所以主要应用于传输条件较好的信道上做为误码统计和质量控制的手段。
自动请示重发ARQ和前向纠错FEC是进行差错控制的两种方法。
在ARQ方式中,接收端检测出有差错时,就设法通知发送端重发,直到正确的码字收到为止。ARQ方式使用检错码,但必须有双向信道才可能将差错信息反馈到发送端。同时,发送方要设置数据缓冲区,用以存放已发出的数据以便于重发出错的数据。
在FEC方式中,接收端不但能发现差错,而且能确定二进制码元发生错误的位置,从而加以纠正。FEC方式使用纠错码,不需要反向信道来传递请示重发的信息,发送端也不需要存放以务重发的数据缓冲区。但编码效率低,纠错设备也比较复杂。
差错控制编码又可分为检错码和纠错码。
检错码只能检查出传输中出现的差错,发送方只有重传数据才能纠正差错;而纠错码不仅能检查出差错而且能自动纠正差错,避免了重传。
演播的检错码有:奇偶校验码、循环冗余码。
在实际通信网中,往往在不同的应用场合采用不同的差错控制技术。前向纠错主要用于信道质量较差、对传输时延要求较严格的有线和无线传输当中;差错检测往往用于传输质量较高或进行了前向纠错后的通路的监测管理之中>自动请求重发则多用于象计算机通信等对时延要求不高但对数据可靠性要求非常高的文件传输之中。
㈧ 求高人协同通信为什么用信道编码谢谢!
信道编码的目的是纠错。常用于数据通信,尤其在无线数据通信中广泛使用。当自然信道的误码率高时,使用信道编码技术后可明显降低误码率。以此技术来保证无线信道的数据通信。当然这种技术也可以用于有线通信。而不是楼上所说的使监听者难听到你信道中传输的数据。
㈨ 在对数字信号进行记录和重放的过程中,为什么要进行纠错
因为数字信号在传输的过程中(不论是有线还是无线)通常都是按照某种传输协议的规定以数据流形式或者包传输的模式进行发送和接收,在这个过程中,有可能因为传输介质,传输通道的网络状况(如阻塞,拥挤,干扰,噪声等等)会造成数据的的漏发,漏接,或者出错这三种情况。
以数字信号为例,假如出现了漏发,漏接或者出错这三种情况中的任何一种,那么会造成那一小段数据无法解码,即那段数据无法识别。如果是用于视频传输的数字信号(比如数字电视信号)则有可能造成画面破损,声音破损等现象出现,如过没有纠错处理甚至可能造成电视无法正常解码播放电视节目。
事实上在对数字型号进行记录和重放的时候也就是在计算机(或者其他相关设备)内部又进行了一次或数次传输,同样可能造成数字信号数据的损坏。
通常的纠错手段有2个方面
第一个方面是重发纠错,部分数据传输协议会对自己发送的数据包进行检测,如果出现丢失或者漏接或者出错的情况,发送方会重新发送这个数据包或者整个数据。
第二个方面是自纠错,在传输数据之前通常我们都会对这段数据进行编码,然后在接收到数据后进行解码,那么在发送方对数据进行编码的时候在数据的关键位置加入一些冗余信息,在接收方接收到数据后可以通过这些冗余信息来对数据的完整性进行检测,并找到且修正这些错误,不过编码纠错有一定局限性,由于受到冗余信息量的限制通常只能用在错误很少的情况下。比如Hamming Code(汉明码)支持一段数据中1bit的错误检测和自我修正。而Extended Hamming Code(扩展汉明码)和Modified Hamming Code(修正汉明码)则可以检测2bit错同时能纠正1bit错…………
==================================================
以上回答为原创