My title page contents

基于FPGA的LFSR伪随机数生成器的设计VHDL代码Xilinx ISE仿真

 

名称:基于FPGA的LFSR伪随机数生成器的设计VHDL代码Xilinx ISE仿真

软件:Xilinx ISE

语言:VHDL

 

代码功能:

本项目实现了两种不同位宽的线性反馈移位寄存器(LFSR):

- 8位LFSR:采用多项式x^8 + x^6 + x^5 + x^4 + 1

- 5位LFSR:采用多项式x^5 + x^3 + 1

主要功能包括伪随机数生成、序列加密、测试模式验证等。

 

代码实现思路:

LFSR通过特定的反馈多项式实现循环移位,产生伪随机序列。核心原理是:

1. 初始化寄存器为特定值

2. 每个时钟周期进行移位操作

3. 通过异或门实现反馈逻辑

4. 输出寄存器最高位作为随机数

 

系统工作流程:

时钟信号 → 移位寄存器 → 反馈计算 → 输出随机数 → 循环重复

 

代码结构:

项目包含两个主要模块:

- Hardware_model_a:8位LFSR实现

- Hardware_model_b:5位LFSR实现

每个模块包含实体声明、架构实现和测试向量。

 

演示视频:

设计文档:

设计文档_part2.doc


方法1

程序文件

 

Testbench文件

 

综合结果

 

资源占用

 

仿真图

 

 

方法2

程序文件

 

Testbench文件

 

综合结果

 

资源占用

 

仿真图



部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
ENTITY ALU_1 IS
   PORT (
      M     : IN STD_LOGIC;
      S0    : IN STD_LOGIC;
      S1    : IN STD_LOGIC;
      A     : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
      B     : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
      Co    : IN STD_LOGIC;
      
      Cout  : OUT STD_LOGIC;
      Z     : OUT STD_LOGIC;
      F     : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)
   );
END ALU_1;
ARCHITECTURE behave OF ALU_1 IS
   
   SIGNAL S1S0  : STD_LOGIC_VECTOR(1 DOWNTO 0);
   SIGNAL A_ex  : STD_LOGIC_VECTOR(4 DOWNTO 0);
   SIGNAL B_ex  : STD_LOGIC_VECTOR(4 DOWNTO 0);
   SIGNAL Co_ex : STD_LOGIC_VECTOR(4 DOWNTO 0);
   
   SIGNAL F_ex  : STD_LOGIC_VECTOR(4 DOWNTO 0);
BEGIN
   S1S0 <= (S1 & S0);
   A_ex <= ('0' & A);
   B_ex <= ('0' & B);
   Co_ex <= ('0' & ("000" & Co));

代码文件(付费下载):

icon_rar.gif







1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 基于FPGA的LFSR伪随机数生成器的设计VHDL代码Xilinx ISE仿真

发表评论

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

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

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