⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tap_dly.vhd

📁 XILINX memory interface generator. XILINX的外部存储器接口。
💻 VHD
📖 第 1 页 / 共 2 页
字号:
--#############################################################################//
--         Internal dqs delay structure for ddr sdram controller               //                          
--#############################################################################//

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;


-- pragma translate_off     
library UNISIM;             
use UNISIM.VCOMPONENTS.ALL; 
-- pragma translate_on      

entity tap_dly is 
              port (
		    clk    : in std_logic;
		    reset  : in std_logic; 	
		    tapIn : in std_logic;
		    flop2  : out std_logic_vector(31 downto 0)
		  );
end tap_dly;

architecture arc_tap_dly of tap_dly is

-------------------------------------------------------------------------------------------------------------------------------
attribute syn_keep : boolean;
-------------------------------------------------------------------------------------------------------------------------------

component LUT4
   generic(
      INIT                           :  bit_vector(15 downto 0) := x"0000" );
   port(
      O                              :	out   STD_ULOGIC;
      I0                             :	in    STD_ULOGIC;
      I1                             :	in    STD_ULOGIC;
      I2                             :	in    STD_ULOGIC;
      I3                             :	in    STD_ULOGIC
      );
end component;	

component FDR
    port(
      Q                              : out STD_LOGIC;
      C                              : in STD_LOGIC;
      D                              : in STD_LOGIC;
	R					 : in STD_LOGIC 	
      );
  end component;


  
signal tap        : std_logic_vector(31 downto 0);
signal flop1      : std_logic_vector(31 downto 0);



signal flop2n_0 :  std_logic;
signal flop2n_2 :  std_logic;
signal flop2n_4 :  std_logic;
signal flop2n_6 :  std_logic;
signal flop2n_8 :  std_logic;
signal flop2n_10:  std_logic;
signal flop2n_12:  std_logic;
signal flop2n_14:  std_logic;
signal flop2n_16:  std_logic;
signal flop2n_18:  std_logic;
signal flop2n_20:  std_logic;
signal flop2n_22:  std_logic;
signal flop2n_24:  std_logic;
signal flop2n_26:  std_logic;
signal flop2n_28:  std_logic;
signal flop2n_30:  std_logic;

signal high       : std_logic;
signal low        : std_logic;

----------------------------------------------------------------------------------------------------------------------
attribute syn_keep of flop1       :  signal is true;
attribute syn_keep of flop2n_0  :  signal is true;
attribute syn_keep of flop2n_2  :  signal is true;
attribute syn_keep of flop2n_4  :  signal is true;
attribute syn_keep of flop2n_6  :  signal is true;
attribute syn_keep of flop2n_8  :  signal is true;
attribute syn_keep of flop2n_10 :  signal is true;
attribute syn_keep of flop2n_12 :  signal is true;
attribute syn_keep of flop2n_14 :  signal is true;
attribute syn_keep of flop2n_16 :  signal is true;
attribute syn_keep of flop2n_18 :  signal is true;
attribute syn_keep of flop2n_20 :  signal is true;
attribute syn_keep of flop2n_22 :  signal is true;
attribute syn_keep of flop2n_24 :  signal is true;
attribute syn_keep of flop2n_26 :  signal is true;
attribute syn_keep of flop2n_28 :  signal is true;
attribute syn_keep of flop2n_30 :  signal is true;

attribute syn_keep of tap      : signal is true;
----------------------------------------------------------------------------------------------------------------------

begin

flop2(0) <= not flop2n_0;
flop2(2) <= not flop2n_2;
flop2(4) <= not flop2n_4;
flop2(6) <= not flop2n_6;
flop2(8) <= not flop2n_8;
flop2(10) <= not flop2n_10;
flop2(12) <= not flop2n_12;
flop2(14) <= not flop2n_14;
flop2(16) <= not flop2n_16;
flop2(18) <= not flop2n_18;
flop2(20) <= not flop2n_20;
flop2(22) <= not flop2n_22;
flop2(24) <= not flop2n_24;
flop2(26) <= not flop2n_26;
flop2(28) <= not flop2n_28;
flop2(30) <= not flop2n_30;

high <= '1';   
low  <= '0';

l0 :  LUT4  generic map (INIT => x"e2e2")  
port map   ( I0 => high, 
             I1 => tapIn, 
             I2 => low, 
             I3 => high, 
             O  => tap(0)
            );

l1 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(0), 
              I2 => low, 
              I3 => high, 
              O  => tap(1) 
             );
l2 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(1), 
              I2 => low, 
              I3 => high, 
              O  => tap(2) 
             );
l3 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(2), 
              I2 => low, 
              I3 => high, 
              O  => tap(3) 
             );
l4 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(3), 
              I2 => low, 
              I3 => high, 
              O  => tap(4) 
             );
l5 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(4), 
              I2 => low, 
              I3 => high, 
              O  => tap(5) 
             );
l6 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(5), 
              I2 => low, 
              I3 => high, 
              O  => tap(6) 
             );
l7 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(6), 
              I2 => low, 
              I3 => high, 
              O  => tap(7) 
             );
l8 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(7), 
              I2 => low, 
              I3 => high, 
              O  => tap(8) 
             );
l9 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(8), 
              I2 => low, 
              I3 => high, 
              O  => tap(9) 
             );
l10 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(9), 
              I2 => low, 
              I3 => high, 
              O  => tap(10) 
             );
l11 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(10), 
              I2 => low, 
              I3 => high, 
              O  => tap(11) 
             );
l12 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(11), 
              I2 => low, 
              I3 => high, 
              O  => tap(12) 
             );
l13 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(12), 
              I2 => low, 
              I3 => high, 
              O  => tap(13) 
             );
l14 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(13), 
              I2 => low, 
              I3 => high, 
              O  => tap(14) 
             );
l15 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(14), 
              I2 => low, 
              I3 => high, 
              O  => tap(15) 
             );
l16 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(15), 
              I2 => low, 
              I3 => high, 
              O  => tap(16) 
             );
l17 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(16), 
              I2 => low, 
              I3 => high, 
              O  => tap(17) 
             );
l18 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(17), 
              I2 => low, 
              I3 => high, 
              O  => tap(18) 
             );
l19 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(18), 
              I2 => low, 
              I3 => high, 
              O  => tap(19) 
             );
l20 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(19), 
              I2 => low, 
              I3 => high, 
              O  => tap(20) 
             );
l21 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(20), 
              I2 => low, 
              I3 => high, 
              O  => tap(21) 
             );
l22 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(21), 
              I2 => low, 
              I3 => high, 
              O  => tap(22) 
             );
l23 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(22), 
              I2 => low, 
              I3 => high, 
              O  => tap(23) 
             );
l24 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(23), 
              I2 => low, 
              I3 => high, 
              O  => tap(24) 
             );
l25 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(24), 
              I2 => low, 
              I3 => high, 
              O  => tap(25) 
             );
l26 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(25), 
              I2 => low, 
              I3 => high, 
              O  => tap(26) 
             );
l27 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(26), 
              I2 => low, 
              I3 => high, 
              O  => tap(27) 
             );
l28 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(27), 
              I2 => low, 
              I3 => high, 
              O  => tap(28) 
             );
l29 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(28), 
              I2 => low, 
              I3 => high, 
              O  => tap(29) 
             );
l30 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(29), 
              I2 => low, 
              I3 => high, 
              O  => tap(30) 
             );
l31 :  LUT4  generic map (INIT => x"e2e2")    
port map     ( 
              I0 => high, 
              I1 => tap(30), 
              I2 => low, 
              I3 => high, 
              O  => tap(31) 
             );
  

r0  : FDR port map  (
			   Q => flop1(0),
			   C => clk,
			   D => tap(0),
			   R => reset 	
			  );

r1  : FDR port map  (
			   Q => flop1(1),
			   C => clk,
			   D => tap(1),
			   R => reset 	
			  );

r2  : FDR port map  (
			   Q => flop1(2),
			   C => clk,
			   D => tap(2),
			   R => reset 	
			  );

r3  : FDR port map  (
			   Q => flop1(3),
			   C => clk,
			   D => tap(3),
			   R => reset 	
			  );

r4  : FDR port map  (
			   Q => flop1(4),
			   C => clk,
			   D => tap(4),
			   R => reset 	
			  );

r5  : FDR port map  (

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -