伪随机序列m和M的生成算法实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

m-M 文档

1 相关概念

随机序列:可以预先确定又不能重复实现的序列 伪随机序列:具有随机特性,貌似随机序列的确定序列。

n 级线性移位寄存器,能产生的最大可能周期是21n p =-的序列,这样的序列称为m 序列。 n 级非线性移位寄存器,能产生的最大周期是2n 的序列,这样的序列称为M 序列。

图1线性移位寄存器

线性移位寄存器递推公式

11221101

n

n n n n n i

n i

i a c a c a c a c a c a

----==++++=

线性移位寄存器的特征方程式

010

()n

n

i

n i

i f x c c x c x c x

==+++=

∑ ,ci 取值为0或1

定义 若一个n 次多项式f (x )满足下列条件:

(1) f (x )为既约多项式(即不能分解因式的多项式); (2) f (x )可整除(x p +1), p =2n -1; (3) f (x )除不尽(x q

+1), q

定理 线性反馈移位寄存器能产生m 序列的充要条件为:反馈移位寄存器的特征多项式为本原多项式。

2 (2)GF 上本原多项式的实现算法 2.1二元域(2)GF 上的本原多项式

由于产生伪随机序列的反馈移位寄存器,其特征多项式系数C i 的取值为0或1,因此所寻找的本原多项式为(2)GF 上的多项式。

在二元域内不可以分解因式的多项式称为既约多项式,和普通代数一样,对于多项式

()0f α=,则称α为多项式的根。

输出a k

由抽象代数理论可以证明,若α是n 次本原多项式()f x 的根,则集合2

2

{0,1,}n

F α-= 可

构成一个有限的扩域(2)n G F 。F 中的任一元素都可表示为1110n n a a a αα--+++ ,这样n 个分量的有序序列110(,,,)n a a a - 就可表示F 中的任一元素。

若既约多项式()f x 的根能够形成扩域(2)n G F ,则该多项式是本原多项式,否则不是本原多项式。

2.2 二元域(2)GF 上的本原多项式算法实现

(2)GF 上n 次多项式的通式为 1

2

1210()...n

n n n n f x x a x

a x

a x a ----=++++,系数是二元域上的元素(0,1)

既约多项式既不能整除,1x x +,0和1不可能是()f x 的根,即0a =1, ()f x 的项数一定为奇数。

另外,一个既约多项式是否能形成(2)n G F ,从而判断它是否为本原多项式。N 次多项式的扩域,其中,120,1,,,n ααα 一定在扩域中,需要判断的是12

2

,n

n αα+- 是否也在扩域

中,从而形成全部扩域(2)n G F ,若在,则该n 次既约多项式是本原多项式,否则不是。

(1)给定二元多项式

1

2

1210()...n

n n n n f x x a x

a x a x a ----=++++,01a =

设α是f(x)扩域中的一个元素,且f(α)=0则有: n

n-1

n-11=a ++a +1αα

α (1)

(2)从n

α开始,计算α的连续幂。在计算过程中,当遇到α的幂次为n 时,将(1)代入,一直计算到n

2

-2

α

(形成GF (2n )),再计算n

2

-1

α

。若n

2-1

α

=1,则证明()f x 能被n

21

x

1-+整

除,而不能整除1q

x +(21n

q <-),判定为本原多项式。在计算α的连续幂过程中,若

q

x =1(21n

q <-),则证明()f x 能被1q

x +整除,判定为非本原多项式,停止计算。

在计算机实现时,n 个分量的有序序列110(,,)n a αα- 与α的任一连续幂有着一一对应的

关系,可以用有序序列110(,,)n a αα- 来表示α的任一连续幂。q

α用110(,,)q q q n a αα- 来

表示,n α用110(,,)n n n n ααα- 来表示,则1q α+可用110(,,)q q q n ααα- 左移一位来实现,若移位前最高位1q n α-=1,表示出现了n α,则1q α+的有序序列表示为

1

1

1

1

11

10

0(,,)n q n q n

n n αααααα+++--+++ ,加法为模2相加,这样可以得到α的连续幂。

在计算过程中,若q α=1(21n q <-),则判定为非本原多项式。若q α(21n q <-)都不为1,且21

n

α-为1,则判定()f x 为本原多项式。

图2寻找本原多项式总流程图

图3判断当前多项式是否为本原多项式流程图

3 m 序列实现

本原多项式系数可确定反馈逻辑

11221101

n

n n n n n i

n i

i a c a c a c a c a c a

----==++++=

4 M 序列实现

M 序列是一种非线性的伪随机序列,是由非线性移位寄存器产生的码长为2n 的周期序列。其构造方法,只要在m 序列适当的位置插入一个0状态,即可完成码长为2n -1的m 序列向码长为2n 的M 序列的转换。其反馈逻辑

相关文档
最新文档