m序列产生器(FPGA学习)

本文介绍了m序列产生器的设计,基于《Altera FPGA 系统设计实用教程》中的内容,探讨了线性反馈移位寄存器LFSR的工作原理和设计方法,包括行为设计和结构描述。LFSR的最大周期为2^n-1,用于生成m序列。举例说明了如何设计一个5级m序列,并提供了Altera库中DFF元件的定义。
摘要由CSDN通过智能技术生成

m序列产生器

摘自《Altera FPGA 系统设计实用教程》清华大学出版社

伪随机数在密码邻域的应用无处不在,是很多密码算法和密码协议的基础,常见伪随机数发生器基于线性反馈移位寄存器的伪随机数发生器,简称LFSR(linear feedback shift register)
一个反馈移位寄存器FSR由移位寄存器和反馈函数组成。其中,反馈函数由移位寄存器某些位的组合逻辑构成。
关于移位寄存器的设计方法:
1.基于行为的设计方法:由相应个数的D触发器首位连接而成
2.基于结构的描述方法:通过元件例化语句循环调用触发器
LFSR工作原理:移位寄存器所有位的值右移一位,最右边的寄存器移出的值作为输出,最左边的寄存器输入的值由反馈值填充,此过程称为进动一拍。
进动m拍就产生m个输出。
LFSR的周期定义:输出序列从开始到重复所经历的长度,n级最大周期为2*n-1,此时输出最长周期序列成为m序列,即m序列是最长线性反馈移位寄存器序列。
f(x)=CnXn+C(n-1)X(n-1)… …C2X2+C1X+1 (n阶本原多项式)
Xn第n个触发器
Cn反馈系数,其值为1时表示反馈支路连接

寄存器级数和m序列长反馈系数(八进制)
2/37
3/713
4/1523
5/3145
6/63103
7/127211
8/255435
9/5111021
10/10232011

例:设计一个5级m序列,反馈为45,即100101
此时C5,C2,C0=1; C4,C3,C1=0
图中非门为避免输出全0 信号。

Altera库中的DFF元件定义如下

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

供自己fpga学习,如有错误,欢迎指出

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值