m-M文档
1 相关概念
伪随机序列:具有随机特性,貌似随机序列的确定序列。
n级线性移位寄存器,能产生的最大可能周期是的序列,这样的序列称为m序列。 n居民收入十年翻一番级非线性移位寄存器,能产生的最大周期是的序列,这样的序列称为M序列。
图1线性移位寄存器
线性移位寄存器递推公式
线性移位寄存器的特征方程式
,ci取值为0或1
定义 若一个n次多项式f(x)满足下列条件:
(1) f(x)为既约多项式(即不能分解因式的多项式);
(2) f(x)可整除(xp+1), p=2n-1;
(3) f(x)除不尽(xq+1), q<p。
英国的资产阶级革命定理 线性反馈移位寄存器能产生m序列的充要条件为:反馈移位寄存器的特征多项式为本原多项式。
2上本原多项式的实现算法
2.1二元域上的本原多项式
由于产生伪随机序列的反馈移位寄存器,其特征多项式系数Ci的取值为0或1湖南假烟团伙被端,因此所寻的本原多项式为上的多项式。
氰乙酸乙酯在二元域内不可以分解因式的多项式称为既约多项式,和普通代数一样,对于多项式,则称为多项式的根。
由抽象代数理论可以证明,若是n次本原多项式的根,则集合可构成一个有限的扩域。中的任一元素都可表示为,这样n个分量的有序序列就可表示中的任一元素。
若既约多项式的根能够形成扩域,则该多项式是本原多项式,否则不是本原多项式。
2.2 二元域上的本原多项式算法实现
上n次多项式的通式为
,系数是二元域上的元素(0,1)
既约多项式既不能整除,0和1不可能是的根,即=1,的项数一定为奇数。
另外,一个既约多项式是否能形成,从而判断它是否为本原多项式。N次多项式的扩域,其中,一定在扩域中,需要判断的是是否也在扩域中,从而形成全部扩域,若在,则该n次既约多项式是本原多项式,否则不是。
(1)给定二元多项式
,
设α是f(x)扩域中的一个元素,且f(α)=0则有:
(1)
(2)从开始,计算的连续幂。在计算过程中,当遇到的幂次为n时,将(1)代入,一直计算到(形成GF(2n)),再计算。若=1,则证明能被整除,而不能整除(),判定为本原多项式。在计算的连续幂过程中,若 =1(),则证明能被整除,判定为非本原多项式,停止计算。
在计算机实现时,n个分量的有序序列与的任一连续幂有着一一对应的关系,可以用有序序列来表示的任一连续幂。用来表示,用来表示,则可用左移一位来实现,若移位前最高位=1,表示出现了,则的有序序列表示为,加法为模2相加,这样可以得到的连续幂。
在计算过程中,若=1(),则判定为非本原多项式。若()都不为1,且为1,则判定为本原多项式。
图2寻本原多项式总流程图
图3判断当前多项式是否为本原多项式流程图
3 m序列实现
本原多项式系数可确定反馈逻辑
4 M序列实现
M序列是一种非线性的伪随机序列,是由非线性移位寄存器产生的码长为的周期序列。其构造方法,只要在m序列适当的位置插入一个0状态,即可完成码长为saxs-1的m 序列向码长为的M序列的转换。其反馈逻辑
,即