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

📄 qdr2_clocks.vhd

📁 XILINX memory interface generator. XILINX的外部存储器接口。
💻 VHD
字号:
--*****************************************************************************************
--**
--**  www.xilinx.com                   Copyright (C) 2003 Xilinx, Inc.  All rights reserved
--**  
--**  QDR(tm) SRAM Virtex(tm)-II Interface                               VHDL instanciation
--**
--*****************************************************************************************
--**
--**  Disclaimer: LIMITED WARRANTY AND DISCLAMER. These designs are 
--**              provided to you "as is". Xilinx and its licensors make and you 
--**              receive no warranties or conditions, express, implied, statutory 
--**              or otherwise, and Xilinx specifically disclaims any implied 
--**              warranties of merchantability, non-infringement, or fitness for a 
--**              particular purpose. Xilinx does not warrant that the functions 
--**              contained in these designs will meet your requirements, or that the
--**              operation of these designs will be uninterrupted or error free, or 
--**              that defects in the Designs will be corrected. Furthermore, Xilinx 
--**              does not warrant or make any representations regarding use or the 
--**              results of the use of the designs in terms of correctness, accuracy, 
--**              reliability, or otherwise. 
--**
--**              LIMITATION OF LIABILITY. In no event will Xilinx or its licensors be 
--**              liable for any loss of data, lost profits, cost or procurement of 
--**              substitute goods or services, or for any special, incidental, 
--**              consequential, or indirect damages arising from the use or operation 
--**              of the designs or accompanying documentation, however caused and on 
--**              any theory of liability. This limitation will apply even if Xilinx 
--**              has been advised of the possibility of such damage. This limitation 
--**              shall apply not-withstanding the failure of the essential purpose of 
--**              any limited remedies herein. 
--**
--*****************************************************************************************

--***********************************************
--* Library declaration
--***********************************************
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

--pragma translate_off
--synopsys translate_off
 LIBRARY UNISIM;
 use UNISIM.VCOMPONENTS.ALL;
--synopsys translate_on
--pragma translate_on



entity qdr2_clocks is
 port ( 		USER_CLK 		: in std_logic;
		USER_CLK_N 		: in std_logic;
		RESET 		: in std_logic;
        		CLK_BUF 		: out std_logic;
		GCLK0 		: out std_logic;
        		GCLK90 		: out std_logic;
		GCLK180 		: out std_logic;
        		GCLK270 		: out std_logic;
            		CLKDIV2		: out std_logic;
            		LOCKED_DCM 		: out std_logic
        
        );

end qdr2_clocks;

architecture qdr2_clocks_arch of qdr2_clocks is

--***********************************************
--* Components declaration
--***********************************************
 component DCM
  port ( CLKIN : in std_logic;
         CLKFB : in std_logic;
         DSSEN : in std_logic;
         PSINCDEC : in std_logic;
         PSEN : in std_logic;
         PSCLK : in std_logic;
         RST : in std_logic;
         CLK0 : out std_logic;
         CLK90 : out std_logic;
         CLK180 : out std_logic;
         CLK270 : out std_logic;
         CLK2X : out std_logic;
         CLK2X180 : out std_logic;
         CLKDV : out std_logic;
         CLKFX : out std_logic;
         CLKFX180 : out std_logic;
         LOCKED : out std_logic;
         PSDONE : out std_logic;
         STATUS : out std_logic_vector(7 downto 0));
 end component;

 component BUFG
  port ( I : in std_logic;
         O : out std_logic);
 end component;

component IBUFGDS_LVDS_25
port (O : out std_logic;
      I : in std_logic; 
      IB : in std_logic);
end component;

--***********************************************
--* Signals and constants declaration
--***********************************************

 signal GND : std_logic := '0';
 signal LOCKED_DCM_PRI : std_logic;
 signal LOCKED_DCM_SEC : std_logic;
 signal CLK0E : std_logic;
 signal CLK90E : std_logic;
 signal CLK180E : std_logic;
 signal CLK270E : std_logic;

 signal CLK0E_BUF : std_logic;
 signal CLK90E_BUF : std_logic;
 signal CLK270E_BUF : std_logic;
 signal CLK180E_BUF : std_logic;	
 signal CLK_DV_BUF : std_logic;
 signal CLK_BUF_val : std_logic;
 
	
begin
 
CLK_BUF <= CLK_BUF_val; 
GCLK0 	<= CLK0E;
GCLK90 	<= CLK90E;
GCLK180 <= CLK180E;
GCLK270 <= CLK270E;

LOCKED_DCM <= LOCKED_DCM_PRI;

 INST_DCM_TOMEMORY : DCM port map (
                             CLKIN => CLK_BUF_val,
                             CLKFB => CLK0E,
                             DSSEN => GND,
                             PSINCDEC => GND,
                             PSEN => GND,
                             PSCLK => GND,
                             RST => RESET,
                             CLK0 => CLK0E_BUF,
                             CLK90 => CLK90E_BUF,
                             CLK180 => CLK180E_BUF,
                             CLK270 => CLK270E_BUF,
                             CLK2X180 => open,
                             CLK2X => open,
                             CLKDV => open,
                             CLKFX => open,
                             CLKFX180 => open,
                             LOCKED => LOCKED_DCM_PRI,
                             PSDONE => open,
                             STATUS => open);


-- The test design requires CLK0 /2. The number of direct clock interconnect per DCM is 4,
-- and CLK0 through 270 are using these clocks. 
-- An addition DCM is used to generate CLK0/2 in order to maintain low clock tree skew.                                                                                          



 BUFG_Sec_0  : BUFG port map ( I => CLK0E_BUF,
                               O => CLK0E);

 BUFG_Sec_90 : BUFG port map ( I => CLK90E_BUF,
                               O => CLK90E);

 BUFG_Sec_180  : BUFG port map ( I => CLK180E_BUF,
                               O => CLK180E);

 BUFG_Sec_270 : BUFG port map ( I => CLK270E_BUF,
                               O => CLK270E);


 --BUFG_CLKDIV2 : BUFG port map ( I => CLK_DV_BUF,
--                               O => CLKDIV2);

IBUFG_GENE : IBUFGDS_LVDS_25 port map  ( O => CLK_BUF_val , I => USER_CLK , IB => USER_CLK_N);




end qdr2_clocks_arch;

⌨️ 快捷键说明

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