100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > LFSR线性反馈移位寄存器循环码编码原理

LFSR线性反馈移位寄存器循环码编码原理

时间:2023-11-01 17:05:32

相关推荐

LFSR线性反馈移位寄存器循环码编码原理

线性反馈移位寄存器(LFSR)循环码编码原理

   作为知识储备,近日在学习循环码编码的原理,教材为John G.Proakis和Masoud Salehi所著的《数字通信》第五版,循环码编码器对应于课本的第328页,对于利用LFSR实现模2除法书本只给出了大体框架,并没有详细阐述其具体的原理,通过查阅其他书籍和相关博客关于此方面的详细分析也十分少,最终经过一下午的苦思冥想,终于有了一些成果。

1.基本原理

   对于一个 (n,k)循环码可以用一个n-k次的生成多项式g(X)来生成,其消息多项式为u(X)。对于一个(n,k)循环码,n为码字的长度,k为编码的信息序列长度。

   系统循环码(前k个bit的码元为信息位)通过如下的方法产生:

1.将消息多项式u(X)乘以X^(n-k);

2.将X^(n-k)*u(X)除以g(X)得到余式r(X);

3.将r(X)加到X^(n-k)*u(X)。

   使用LFSR进行系统循环码编码的示意图如下所示:编码器的前k比特的输出直接就是k位信息比特,并且由于此时开关①处于闭合位置,这k比特在输出也按时钟频率同步的进入移位寄存器,在k位信息比特全部进入编码器后,两个开关均切换到相反的位置,此时移位寄存器的内容就是n-k位校验比特,它对应于余式的系数,这n-k位校验比特按时钟频率每节拍输出1个比特并送入调制器。

2.举例分析

一个生成多项式g(X)=X^3+X+1的(7,4)循环码,其移位寄存器结构如下图所示:

假设输入消息比特为0110,则移位寄存器的内容随着时钟频率节拍的变化如下表:

C3代表余数的高位,g(X)矢量表示为1011,u(X)矢量表示为0110,X^(n-k)*u(X)的矢量表示为0110000,

把0110000理解为0000000+100000+10000+0000,依次对应着线性移位寄存器的4次移位。

总结:可以看到,商的值取决于当前信息比特和上一级运算后余数的最高位C2,两者做异或运算,即两者不同时商为1,相同时商为0,以此来消掉当前输入比特,当商为0时,LFSR简化为单纯的移位寄存器,余数完成移位,当商为1时,LFSR完成g(X)与上一级余数的加运算并移位。在信息比特输入完毕之后,开关切换位置,此时C0C1C2存储的便是余数信息,经过三个时钟周期节拍,监督位跟随信息位输出,最终完成系统循环码的编码。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。