本原多项式产生m序列的原理

今天下午花了半下午时间搞m序列产生的方法,遂趁热打火记录一下。

参考文献:

1.谢刚,GPS原理与接收机设计

以一个五级的m序列反馈器为例

假设初始寄存器的值都为1,如图可以看出特征多项式是F(x)=1+x^3+x^5,这个寄存器是一个右溢出寄存器,

第一个循环,把最高位第五位给到输出,同时也给到异或加法器的输入端,异或加法器的另外一个输入端接收的是第三位的数值,输出接到第一位寄存器,第五位和第三位数值异或输出给第一位。然后第一个循环中的第一位、第二位、第三位、第四位右移,进入第二个循环。

这是硬件上m序列产生的原理。

哪怎么和特征多项式对应起来呢?

我们和matlab中的primpoly函数对照起来看。

primpoly可以产生本原多项式的函数,我们还是让他产生5阶m序列,

然后把41化成二进制数值,

ans =

'101001'

这个数值就正好对应着我们举例的五级反馈移位寄存器的系数

相关推荐
VT.馒头3 分钟前
【力扣】2625. 扁平化嵌套数组
前端·javascript·算法·leetcode·职场和发展·typescript
wanghu20244 分钟前
AT_abc443_C~E题题解
c语言·算法
u01092727111 分钟前
模板元编程调试方法
开发语言·c++·算法
2401_8384725135 分钟前
C++图形编程(OpenGL)
开发语言·c++·算法
-dzk-39 分钟前
【代码随想录】LC 203.移除链表元素
c语言·数据结构·c++·算法·链表
进击的小头1 小时前
陷波器实现(针对性滤除特定频率噪声)
c语言·python·算法
知无不研1 小时前
冒泡排序算法
算法·冒泡排序·排序
毅炼1 小时前
hot100打卡——day17
java·数据结构·算法·leetcode·深度优先
Tisfy1 小时前
LeetCode 3010.将数组分成最小总代价的子数组 I:排序 OR 维护最小次小
算法·leetcode·题解·排序·最小次小值
Learn Beyond Limits1 小时前
文献阅读:A Probabilistic U-Net for Segmentation of Ambiguous Images
论文阅读·人工智能·深度学习·算法·机器学习·计算机视觉·ai