线性反馈移位寄存器(LFSR)设计Verilog代码VIVADO仿真

名称:线性反馈移位寄存器(LFSR)设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:

线性反馈移位寄存器(LFSR)

1、设计线性反馈移位寄存器

2、使用状态机的方式设计,使用2种不同的写法


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


演示视频:

设计文档:

设计文档A.doc

设计文档B.doc

1. 工程文件


2. 程序文件


3. 程序编译


4. RTL图


5. Testebnch


6. 仿真图






1. 工程文件


2. 程序文件


3. 程序编译


4. RTL图


5. Testebnch


6. 仿真图










部分代码展示:

`timescale 1ns / 1ps
//3,12,14,15,21,28,31
module data(
   input clk,
   input rstn,//0x02468ACD
   input [2:0] state,
   output reg [7:0] data_out  
    );
reg [31:0]  LFSR_reg=32'd0; 
parameter s_idle=3'd0;
parameter s_shift=3'd1;
parameter s_data_1=3'd2;
parameter s_data_2=3'd3;
parameter s_data_3=3'd4;
parameter s_data_4=3'd5;
always@(posedge clk or negedge rstn)
if(rstn==0)
LFSR_reg<=32'h02468ACD;
else//3,12,14,15,21,28,31
if(state==s_shift)begin
LFSR_reg[0]<=(((((LFSR_reg[31] ^ LFSR_reg[28])^LFSR_reg[21])^LFSR_reg[15])^LFSR_reg[14])^LFSR_reg[12])^LFSR_reg[3];
LFSR_reg[31:1]<=LFSR_reg[30:0];
end
else
LFSR_reg<=LFSR_reg;
always@(posedge clk or negedge rstn)
if(rstn==0)
data_out<=8'd0;
else
case(state)
s_data_1:data_out<=LFSR_reg[7:0];
s_data_2:data_out<=LFSR_reg[15:8];
s_data_3:data_out<=LFSR_reg[23:16];
s_data_4:data_out<=LFSR_reg[31:24];
default:data_out<=8'd0;
endcase
endmodule

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 线性反馈移位寄存器(LFSR)设计Verilog代码VIVADO仿真

发表评论

模板文件不存在: ./template/plugins/comment/pc/index.htm

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员