• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的m序列(线性反馈移位寄存器)发生器Verilog代码Quartus仿真

07/15 14:01
364
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240131142UQ08.doc

共1个文件

名称:基于FPGA的m序列(线性反馈移位寄存器)发生器Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

m序列(线性反馈移位寄存器)发生器

线性反馈移位寄存器设计(m序列)

本源多项式为1+x2+x3+x4+x8

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. Testbench

5. 仿真图

部分代码展示:

//伪随机序列发生器
module M_code(
    input clk,//时钟
    input RESET,//复位
    output random_out//输出伪随机信号
    );
reg [7:0] shift_data=8'h12;//移位寄存器
parameter polynomial=8'b10001110;//多项式1+x2+x3+x4+x8
//移位
always @(posedge clk or negedge RESET)
   if (RESET==0) begin
      shift_data <= 8'h12;//复位,获取初始值(可自定义,但不可为0)
   end 
   else begin//移位
     shift_data[0] <=shift_data[1];//移位
     shift_data[1] <=shift_data[2];//移位
     shift_data[2] <=shift_data[3];//移位
     shift_data[3] <=shift_data[4];//移位
     shift_data[4] <=shift_data[5];//移位
     shift_data[5] <=shift_data[6];//移位
     shift_data[6] <=shift_data[7];//移位
 
 //反馈多项式
     shift_data[7] <=(shift_data[0] & polynomial[7]) ^ //异或
  (shift_data[1] & polynomial[6]) ^ //异或
  (shift_data[2] & polynomial[5]) ^ //异或
  (shift_data[3] & polynomial[4]) ^ //异或
  (shift_data[4] & polynomial[3]) ^ //异或
  (shift_data[5] & polynomial[2]) ^ //异或
  (shift_data[6] & polynomial[1]) ^ //异或
  (shift_data[7] & polynomial[0]) ; //异或   
  end

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=650

  • 2-240131142UQ08.doc
    下载

相关推荐