LFSR,m序列 一、线性反馈移位寄存器(Linear Feedbakc Shift Register,LFSR) 1、LFSR工作原理 在移位寄存器向右shift一位后,最左边就会空出1位,此时如果采用一个反馈函数,将寄存器中已有的序列作为反馈函数的输入,然后将反馈函数的输出填充到移位寄存器的最左端,此时移位寄存器就会有源源不断的输出。 如果反馈函数为线性函数,则这种寄存器称为线性反馈移位寄存器(LFSR)。
一个4级的LFSRLFSR的级数:LFSR中移位寄存器的个数称为LFSR的级数。 LFSR有以下的性质: · 如果初始状态相同,则输出结果始终不变; · 输出序列是一个伪随机序列(PN序列) · 经过一定次数的迭代,最终得到的状态值将与最初的状态值相同
级的LFSR最多只能遍历
种状态,即一个
级的LFSR的最大周期为
。 2、伪随机序列的特性 ① 平衡特性:序列的每个周期内的”0″和”1″的个数至多相差1个;② 游程分布特性:序列中取值相同的相连的素的个数合称为游程长度,长度为
的游程占游程总数的
;③ 相关特性:将PN序列的一个周期与其任意次的循环移位额序列逐位相比,相同的位数和不同的位数至多相差1个。 3、用LFSR生成PN序列 LFSR可以用于生成伪随机序列 上例中,假设初始状态为
,每次迭代后状态转移的结果如下所示:
LFSR的状态解雇 用多项式表示LFSR连接图:
LFSR的多项式表达 其中,LFSR的向量表达中的“1”表示与加法器相连,“0”表达不与加法器相连。 4、用matlab实现LFSR 二、m序列 m序列是一种特殊的LFSR。 对于LFSR,输出的序列最终会重复。 周期为
的LFSR所生成的序列称为m序列,即对于n级的LFSR可生成的m序列的长度为
。 上例即为一个m序列。 m序列有很好的自相关性,可以用来实现同步。什么叫有很好的自相关性?解释如下:自相关运算过程如下所示:① 本地产生一个m序列;② 移动1位,与接收到的m序列逐位相乘再求和;③ 移动2位,与接收到的m序列逐位相乘再求和;④ 以此类推,即可得到自相关运算结果。
m序列的自相关性 从上图,可以看出只有当本地序列与接收到的序列刚好对齐时,即移位长度等于序列长度时才能实现自相关性最大。 根据m序列的自相关性,很容易实现m序列的同步。本文使用 Zhihu On VSCode 创作并发布
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/69101.html