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

名称:线性反馈移位寄存器(LFSR)VHDL代码(代码在文末付费下载)

软件:ISE

语言:VHDL

代码功能:

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

演示视频:

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


部分代码展示


LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   USE ieee.std_logic_unsigned.all;
ENTITY H17000103 IS
   PORT (
      clock         : IN STD_LOGIC;--时钟
      reset     : IN STD_LOGIC;--低电平复位
      random_num  : OUT STD_LOGIC_VECTOR(2 DOWNTO 0)--输出
   );
END H17000103;
ARCHITECTURE behave OF H17000103 IS
   
   SIGNAL ran_num  : STD_LOGIC_VECTOR(2 DOWNTO 0) := "111";
   SIGNAL feedback : STD_LOGIC;
SIGNAL shtft_times  : STD_LOGIC_VECTOR(2 DOWNTO 0) := "000";--移位次数
BEGIN
   feedback <= ((ran_num(0) XOR ran_num(2)));--反馈信号,异或再取非
   
--移位
   PROCESS (clock, reset)
   BEGIN
      IF ((NOT(reset)) = '1') THEN--复位
         ran_num <= "111";--初值
      ELSIF (clock'EVENT AND clock = '1') THEN--时钟上升沿
         ran_num <= (ran_num(1) & ran_num(0) & feedback);--左移
      END IF;
   END PROCESS;
--移位次数计数
   PROCESS (clock, reset)
   BEGIN
      IF ((NOT(reset)) = '1') THEN--复位
shtft_times<= "000";--起始0次
      ELSIF (clock'EVENT AND clock = '1') THEN--时钟上升沿
         IF(shtft_times="111")THEN--移位7次循环

设计文档:

设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. Testbench

5. 仿真图

移位3次

移位5次

代码文件(付费下载):



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

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

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