SHIFTRNE.VHD
上传用户:dgjihui88
上传日期:2013-07-23
资源大小:43k
文件大小:1k
源码类别:

VHDL/FPGA/Verilog

开发平台:

MultiPlatform

  1. --shiftrne.vhd n-bit left-to-right shift register
  2. --with parallel load and enable
  3. library ieee ;
  4. use ieee.std_logic_1164.all ;
  5. entity shiftrne is
  6. generic ( n : integer := 7 ) ;
  7. port ( 
  8.   r : in std_logic_vector(n-1 downto 0) ;--register input
  9.   l : in std_logic ;--load
  10.   e : in std_logic ;--enable
  11.   w : in std_logic ;--series input
  12.   clock : in std_logic ;--clock
  13.   q : buffer std_logic_vector(n-1 downto 0) ) ;--register output
  14. end shiftrne ;
  15. architecture behavior of shiftrne is
  16. begin
  17.   process
  18.   begin
  19.     wait until clock'event and clock = '1' ;
  20.   if e = '1' then
  21. if l = '1' then
  22.   q <= r ;--parallel load
  23. else
  24.   genbits: for i in 0 to n-2 loop
  25.     q(i) <= q(i+1) ;--shift high bit to low bit 
  26.       end loop ;
  27.   q(n-1) <= w ;--series input to highest bit
  28. end if ;
  29.   end if ;
  30.   end process ;
  31. end behavior ;
  32.  ;