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

VHDL/FPGA/Verilog

开发平台:

MultiPlatform

  1. --shiftlne.vhd n-bitright-to-left shift register
  2. --with parallel load and enable
  3. library ieee ;
  4. use ieee.std_logic_1164.all ;
  5. entity shiftlne 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 shiftlne ;
  15. architecture behavior of shiftlne 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.     q(0) <= w ;--series input to lowest bit
  25.     genbits: for i in 1 to n-1 loop
  26.   q(i) <= q(i-1) ;--shift low bit to high bit
  27.     end loop ;
  28.   end if ;
  29. end if ;
  30.   end process ;
  31. end behavior ;