(6,3)线性分组码编码分析与实现(2)

2020-04-03 12:26

设计的必要步骤,最原始的方法是逐一计算两两码字间距离,找到其中最小者。

kk22?1个距离后才能找出d,费时太多,实用中含2个码字的码集需计算min2k??还有一些更好更快的方法。

线性分组码的最小距离等于码集中时非零码字的最小重量,即 dmin?mi?nw?Ci?? Ci?C及Ci?0

这里利用了群的封闭性,由于分组码是群码,任意两码字之和仍是码字,即因此任意两码字间的汉明距离其实必是另一码字的重量,表示Cj?Ck?Ci?C。

为d?Ci,Ck??w?Cj?Ck??w?Ci?,min?于是可将最小距离问d?Cj,Ck???min?w?Ci??。题转化为寻找最轻码字问题,含2k个码字的码集仅需计算2k次。

码的检错能力取决于码的最小距离,但还需说明的另一点是码的总体检错能力不仅仅与dmin有关。检错能力t只是说明距离t的差错一定能纠,并非说距离大于t的差错一定不能纠。事实上,如果有2k个码子,就存在2k?2k?1?2 个距离,这并非相等的。比如最小距离dmin?3 ,检错力t?1 ,是由码C2C1的距离决定, 只要C2 朝C1 方向偏差大于1就会出现译码差错;然而若C2朝C3方向偏差3,译码时仍可正确地判断为C2而非C3。可见,总体的、平均的纠错能力不但与最小距离有关,而且与其余码距离或者说与码子的重量分布特性有关,把码距(码重)的分布特性称为距离(重量)谱,其中最小的重量就是dmin。正如信息论各符号等概时熵最大一样,从概念上可以想象到:当所有码距相等时是(重量谱为线谱)码的性能应该最好;或者退一步说,当各码距相当不大时(重量谱为窄谱)性能应该叫好。事实证明确实如此,在同样的dmin条件下,窄谱的码一般比宽谱的码更优。纠错重量谱的研究具有理论与现实意义,不仅仅是计算各种译码差错概率的主要依据,也是研究码的结构、改善码集内部关系从而发现新的好码的重要工具。但目前除了少数几类码如汉明码、极长码等的重量分布已知外,还有很多码的重量分布并不知道,距离分布与性能之间确切的定量关系对于大部分码而言尚在进一步研究当中,特别当n 和k 较大时,要得出码重分布是非常困难的。

5

重量谱可以如下多项式来表示,称为重量算子,即 A?x??A0?A1x?Ax2?Ax3?Ax4?234Anx??Aixn

ni?1n式中的含义:在码长n的码集里,包括重量为0的码子A0个(线性码一定包含一个重量为0的全0码),码重为1的码字A1个,(2)伴随式与译码

码字C??cn?1,,重量为n的码字An个。

,c?2,c1,c0在传输过程中受到各种干扰,接收端收码

R??rn?1,,r2,r1,r0?已不一定等于发码C,两者间的差异就是差错,差错是多样

化的,我们定义差错的式样为差错图样E,即

E??en?1,,e1,e0??R?C??rn?1?cn?1,,r1?c1,r0?c0?

对于二进制码,模2减等同模2加,因此有 E?R?C及R?C?Emod2

利用码字与校验矩阵的正交性CHT,可检验收码R是否错误,即

??0RHT??C?E?HT?CHT?EHT?0?EHT?EHT? ??0

定义RHT运算结果为伴随式S,即 S??sn?k?1,,s1,s0??RHT?EHT

可见,虽然R本身与发码有关,但乘以HT后的伴随式RHT?S?EHT 仅与差错图E有关,只反映信道对码字造成怎样的干扰而与发什么码C无关了。于是可以先利用收码R和已知的H算出的伴随式S;再利用S算出差错图样E。这种思路下的编译码过如图一框图所示。 R C E

编码mG 计算 RHT?S计算C=R+E

图一 编译码过程的框图

6

在此过程中,RHT和R?E的计算都是确定性的,而从S计算E却带有随机性。这是因为伴随式S是一个重失量,二进制时只有种肯那个的组合,而差错图样E是n重失量,有种可能的组合,因此S与E不存在一一对应关系。

假设接收端收到的码字为B,那么它和原来发送端发送的码字A之间就有可能存在着误差。即在码组A??a6a5a4a3a2a1a0?中的任意一位就有可

能出错。这样我们在接收端接收到一个码组是就有可能判断错发送端原来应该要表达的意思。为了描述数据在传输信道中出现错误的情况,引入了错误图样E,在错误图样中,0代表对应位没有传错,1代表传输错误。实际上错误图样E就是收序列与发送序列的差。所以在译码中用接收到的码字B模尔加错误图样E就可以得到发送端的正确码字A。因此译码的过程就是要找到错误图样E。

定义:校正子S

S?B*H?AT?E*HT ?A*HT?E*HT

???E*HT 因为A是编得的正确码字。根据前面所叙述,它和监督矩阵的转置相乘为0。显然,S仅与错误图样有关,它们之间是一一对应的关系。找到了校正子S,也就可以找到E。而与发送的码字无关。若E?0,则S?0;因此根据S是否为0可进行码字的检错。

如果接收码字B中只有一位码元发生错误,又设错误在第i位。即Ei?1?1,其他的Ei均为0。在后面的译码程序中,建立了一个校正子S与错误图样E对应的表。也就是收到一个B序列,就可以通过计算得到一个校正子,而每一个校正子都对应着一个错误图样E,再通过B模尔加上E,就可以得到正确的码字A。

因为在不同的错误序列B中,同一位码元错误时对应的E是一样的,所以可以利用0000000这个正确的码字让它每位依次错误,来求得它的八个校正子。而这时的矩阵B就是错误图样E。

7

2.2设计步骤 1. 编码过程

监督矩阵H和生成矩阵G的关系: 已知给出的(6,3)线性分组码的Q矩阵:

?011?? 101 Q??????110??则可以根据P?QT ,G??IkP?求出生成矩阵:

?0TP?Q???1??11011??1??0??1G???0??00100010111?10 ?? 11??0由H???HIk??可求出监督矩阵H为:

?011100?? H??101010????110001??有了生成矩阵后则可以根据输入的四位信息位和生成矩阵相乘得到编码矩阵,即MATLAB函数为:C?rem?I*G,2? ,其中C为编码后的结果,I为信息矩阵,G为生成矩阵。

则编码的所有情况为:

编码序列: 信息位 || 监督位

?0?0??0?0 C???1??1?1???1001100110101010101100110010110100?0??1??1? 1??1?0??0??

8

2. 译码过程

对于译码过程来说,同样由上知道监督矩阵:

?011100??H??101010??

??110001??H矩阵与?n,k?码的任何一个许用码字进行相乘的结果必等于0,即若

C?m?G是任一?n,k?码字,则必有C?HT?0。若不属于许用码字,或有传输

差错,且差错位数在?n,k?码纠错能力内,则运算结果将为非0值,此时,可以纠错或检错重发。

(1)当接受码字为?000000?时:

?0?1??1T伴随式S0?R?H??000000????1?0??011?01??10????000? 00?10??01?所以此时接受编码无错误。 (2)当接受码字为?000001? 时:

?0?1??1T伴随式S1?R?H??000001????1?0??011?01??10????001? 00?10??01?所以,此时接受编码第一位发生错误,纠错后的正确译码为?000000?。 (3)当接受码字为?000010?时:

9


(6,3)线性分组码编码分析与实现(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2014年二级建造师《建设工程施工管理》真题与答案解析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: