关键词不能为空

当前您在: 主页 > 英语 >

伪随机序列

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-09 08:18
tags:

-

2021年2月9日发(作者:explains)






伪随机序列


........................... .................................................. .................................................. ........


2



1


基本原理



.


.................................................. .................................................. ..........................


2



1.1


背景



.


..................................... .................................................. ...................................


2



1.2


实现原理



.


.................................................. .................................................. ..............


2



2


实现方式



.


..................................... .................................................. .......................................


3



3 FPGA


的实现



.

< br>............................................... .................................................. ........................


5



3.1


设计思路


< br>.


................................... .................................................. .............................


5



3.2


代码实现分析



.

................................................ .................................................. ........


5



3.2.1


斐波那契方式


< p>
.


................................ .................................................. .................


5



3.2.2


伽罗瓦方式



.


................................. .................................................. ....................


9



4


总结


............. .................................................. .................................................. ....................


1


2























伪随机序列



1


基本原理



1.1


背景



随着通信技术的发展,


在某些情况下,


为了实现最有效的通信 应采用具有白


噪声统计特性的信号;


为了实现高可靠的保密通信 ,


也希望利用随机噪声;


另外


在测试领 域,大量的需要使用随机噪声来作为检测系统性能的测试信号。然而,


利用随机噪声的最 大困难是它难以重复再生和处理。


伪随机序列的出现为人们解


决 了这一难题。


伪随机序列具有类似于随机噪声的一些统计特性,


同时又便于重


复产生和处理,有预先的可确定性和可重复性。由于它的这些优点,在通信 、雷


达、


导航以及密码学等重要的技术领域中伪随机序列获得了 广泛的应用。


而在近


年来的发展中,


它 的应用范围远远超出了上述的领域,


如计算机系统模拟、


数字< /p>


系统中的误码测试、


声学和光学测量、


数 值式跟踪和测距系统等也都有着广阔的


使用。







伪随机序列通常由反馈移位寄存器产生,


又可分为线性反馈移位寄存 器和非


线性反馈移位寄存器两类。


由线性反馈移位寄存器产生出 的周期最长的二进制数


字序列称为最大长度线性反馈移位寄存器,即为通常说的


m


序列,因其理论成


熟,实现简单,应用较为广 泛。



m


序列的特点:



1


)每个周期中,


“1”


码出现


2n-1


次,


“0”


码出现


2n-1


次,即


0



1


出现概率几


乎相等。




2< /p>


)序列中连


1


的数目是

< br>n


,连


0


的数目是


n-1





3


)分布无规律,具有与白噪声相似的伪随机特性。



1.2


实现原理


< br>在二进制多级移位寄存器中,若线性反馈移位寄存器(


LFSR

< br>)有


n


阶(即



n


级寄存器)


,则所能产生的最大长度的码序列为< /p>


2


n


-1


位。如 果数字信号直接


取自


LFSR


(非翻转 信号)的输出,那么最长的连


0


数为


n -1


。除了字符串的连


0


和连


1



伪随机序列在一个长度为

< br>n


的字符串中将包含任何可能的


0



1


的组合。


要使移位寄存器产生确 定的值,必须置其初值并允许时钟电路产生移位时钟。



一般的 线性反馈移存器组成如图


1


所示,图中一级移存器的状态用


ai


表示,


ai = 0



1, i =


整数。反馈线的连 接状态用


ci


表示,


ci = 1


表示此线接通,


0


表示

断开。反馈线的连接状态不同就能改变输出序列的周期。



+


C0 = 1


+

c


2


+


c


n-1


c


1


a


n-1


a


n-2


a

1


a


0




1


一般的线性反馈移存器框图



ci


的取值决定了移存器的反馈连接和序列的结构,也就是决定了序列的周


期。用特征多项式


f(x)


表示为:



f(x) = c


0


+ c


1


x+ c


2


x


2


+


·


·


·


+ c


n


x


n


=



c


i


x


i



当特征多项式符合某些条件时称为本原多项 式。在设计


m


序列产生器时,


移位寄存 器反馈线的结构直接决定于本原多项式的结构。


也就是只要找到本原多

< br>项式,就能由它构成


m


序列产生器。


不同周期的


m


序列所适用的环境 不同,


ITU-T


(国际电信联盟)对此提出了


一系列标准。如


ITU-T


建议用于数据传输设备测量 误码的周期是


511


,其特征多


项式建 议采用


x


9


+ x


5


+ 1



;以及建议用于数字传输系统(


1544/2048



6312/8448kb/s



测量的


m


序列周期是


2


15


-1 = 32767



其特征多项式 建议采用


x


15



+


x


14


+ 1


。在具体应用时,可参考


ITU-T

的标准进行选择。



2


实现方式



对于某种特定的本原多项式 ,有两种形式的


LFRS


结构来实现:


Fibonacci


(斐波纳契)


LFSR


Galois


(伽罗瓦)


LFS R



Fibonacci


(斐波纳契)


LFSR



门在移位寄存器外部使用或 (异或)门,而


Galois


LFSR


在移位寄存器链内部使


用专门的或门。两者的一般结构如图


2



3


所示:



n




n


n-1


n-2



................









3


2


1




















2



Fibonacci


(斐波纳契)< /p>


LFSR


从图


2


中可以看到,


该移位寄存器是将各寄存器的输出值抽出来,


在 外部进


行异或运算之后再将该值反馈到输入端。



n




n


n-1


.....


3


2


1



























3 Galois(


伽罗瓦


)


LFSR


从图


3


中明显看到,异或运算是在各寄存器之间进行的。


< p>
例如,一个本原多项式为


x


15

< br> + x


14


+ 1


,表示一 个


15


级的移位寄存器的输


出。如果用 斐波纳契


LFSR


实现,这个移位寄存器的第十四和第十五级被 加入到


异或门,结果反馈到第一级的输入端。而如果用伽罗瓦


L FSR


的方式实现,则当


前移位寄存器的输出被加入到内置的第 十四、十五级的异或门反馈实现。



在当前多项式的项数较少时 ,


用斐波那契方法实现比伽罗瓦方式更好,


可以


达到较高的时钟速率。


但是,


虽然斐波那契的速度更快 ,


但是它的实现方式在项


数增加的时候性能会下降,而伽罗瓦< /p>


LFSR


的实现方式在项数增加的时几乎没有

性能上的损失。



所以,在应用时可根据不同的系统需求进行选择。



3 FPGA


的实现



本设计分别用上述两种方式实现


7


阶的伪随机序列。< /p>



3.1


设计思路




m


序列的产生原理可知,


该发生器主要由移位寄存器和异或门的 反馈输入


实现。因此,将设计分为以下几个步骤:


< p>
1


)给移位寄存器赋初值,使其产生一个确定的序列;


2


)分别根据斐波那契方式和伽罗瓦方式的特点,得到下 一状态寄存器的输


入值;



3


)更新当前各寄存器的状态值,并且输出最高位的值。



3.2


代码实现分析



3.2.1


斐波那契方式


< p>
斐波那契


V


代码如下:



module wsj_1( data_out,



clock_in,



reset_in );





output



data_out;










//


输入输出声明











input




clock_in, reset_in;





//============= =


变量声明


======================= ======


wire




[06:00] exp_out;



//


下一状态各寄存器存储的值


,


其 最高位为



//


下一次触发时的输出值





reg





[06:00] exp_in;


reg





data_out;


parameter poly_in




= 07'h03;



//poly


为特征多项式转化而来 的


7


位值,



//


若为


?1?


,表示此处需要或门< /p>





























//Poly :



x^7 + x^6











//




: 000 0011





























//




:




0





3


parameter length_in = 1'b0;


//==================


得到 下一状态的输入值


=====================





assign exp_out[00] = (exp_in[00] & poly_in[06]) ^























(exp_in[01] & poly_in[05]) ^























(exp_in[02] & poly_in[04]) ^























(exp_in[03] & poly_in[03]) ^























(exp_in[04] & poly_in[02]) ^























(exp_in[05] & poly_in[01]) ^























(exp_in[06] & poly_in[00]) ^ length_in;


//


由特征多项式得到下一状态的输入值






assign exp_out[06:01] = exp_in[05:00];//


当前状态值移 位得到下一状态值



//=================


更新状态并将数据输出


================== =====





always @ (posedge clock_in) begin








if (reset_in) begin












exp_in




<= 7'b1111111;



//


给寄存器赋初值












data_out <= 1; end





else



begin











exp_in




<= exp_out;











data_out <= exp_out[06];



//


输出值









end





end


endmodule



在上述程序中,首先值得注意是


Po ly


这个参数定义,它根据特征多项式转


化而来,


这样定义可以更方便的得到下一状态的输出值。


系统将当前寄存器的状


态值与该参数相与,


并将各位异或,


实现的即 为寄存器外部的异或,


由此得到的


便是下一状态的输入值。将当 前状态值移位便得到下一状态各寄存器的值。



还有一点要注意 的是,


在系统进行复位之后,


必须给寄存器赋初值,

< p>
否则输


出序列是不定值。


-


-


-


-


-


-


-


-



本文更新与2021-02-09 08:18,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/619998.html

伪随机序列的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文