前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >m序列的verilog实现

m序列的verilog实现

作者头像
根究FPGA
发布2020-06-29 15:37:11
2.5K0
发布2020-06-29 15:37:11
举报
文章被收录于专栏:根究FPGA

念念不忘,必有回响,记得去年差不多这时候在大连,当时一个同学问我M序列的问题,后来一直没有去仔细地看,没想到今天又遇到了,今天就来个一刀两断!

一、介绍

m序列是一种伪随机序列。使用n级反馈移位寄存器实现,n级反馈移位寄存器的状态最多为2^n个,同时在线性的反馈移位寄存器中,全“0”状态永不改变,也就是说其最长的周期为2^n-1。

由于反馈的存在,若初始状态为0,则移位后得到的结果仍全为“0”,因此应该避免全“0”状态,除全“0”状态外,剩下2^n-1种状态可用,每移位一次,就出现一种状态,在移位若干次之后,一定重复出现前某一状态,其后的过程便周而复始。为了满足不同要求下的反馈线长度,可通过设置状态转移公式实现。(公式马上就来)。

二、m序列性质

1、随机性:在m序列的一个周期中,0和1出现的概率大致相同,0码只比1多一个。

2、移位可加性:某个周期为p的m序列与其经任意延迟移位后的序列模2相加后,其结果仍是周期为p的m序列,只是原序列某次延迟移位后的序列。

3、预先可知性:m序列是由移位寄存器的初始状态和反馈网络唯一确定的。也就是说,是假随机,其实状态可以根据公式算出,并非真随机。

4、游程特性:序列中取值相同的相继元素称为一个游程。游程长度指的是游程中元素的个数。在m序列中,一共有个游程。其中长度为1的游程占总游程数的一半;长度为2的游程占总游程的1/4;长度为k的游程占总游程数的,且在长度为k的游程中,连0与连1的游程数各占一半。另外,还有一个长度为n的1游程和一个长度为(n一1)的0游程。

三、结构图

关于结构图和特征方程的解释:

ak-1表示的是移位数据寄存器的最高位,c1表示的x的系数,c2表示的x^2的系数,因为是反馈实现的,所以c0和cn必为1,所以并没有写出。

ci的值决定了反馈线的连接状态,当ci为1时,该反馈线存在,else not。

特征方程f(x)决定了线性反馈的结构,从而决定了生成序列的构造和周期,其实这句话反过来说也行,具体为什么会举例说明。

四、本原多项式

是一个线性反馈移位寄存器产生最长周期序列的充分必要条件是特征方程为本原多项式,最长周期个数为2^n-1。

常用的本原多项式:

举个栗子!

观察上面的结构图,系数c0=1,c1=1,c4=1,其余系数为0.

本原多项式就是为:f(x)=x^4+x+1

五、工程演示

尝试将上面的本原多项式用verilog代码实现,就是4个寄存器,知道结构是什么样子,问题自然就好解决了!

主函数:

代码语言:javascript
复制
module m(
input clk,
input rst_n,
output reg [3:0]out
);
always@(posedge clk or negedge rst_n)
if(!rst_n)
 out<=4'd13; 
else begin
 out[0]<=out[1];
 out[1]<=out[2];
 out[2]<=out[3];
 out[3]<=out[0]^out[3];
end  
endmodule

仿真代码:

代码语言:javascript
复制
`timescale 1ns/1ns
module tb;
reg clk;
reg rst_n;
wire [3:0]out;

m u0(
clk,
rst_n,
out
);
initial clk=0;
always #5 clk=~clk;
initial begin
 rst_n=0;
 #100;
 rst_n=1;
 #2000;
 $stop;
end 
endmodule  

仿真波形:

六、总结

在上面的工程中,C4=C1=C0=1,也就是说m序列的反馈为19(8进制为23)。反过来说设计一个5级m序列,反馈为45,即100101,此时C5,C2,C0=1; C4,C3,C1=0。

bye~~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 根究FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 二、m序列性质
  • 三、结构图
  • 四、本原多项式
  • 五、工程演示
  • 六、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档