00001 --**************************************************************
00002 --* *
00003 --* The source code for the ATLAS BCM "AAA" FPGA is made *
00004 --* available via the GNU General Public License (GPL) *
00005 --* unless otherwise stated below. *
00006 --* *
00007 --* In case of problems/questions/bug reports etc. please *
00008 --* contact michael.niegl@cern.ch *
00009 --* *
00010 --**************************************************************
00011
00012 --**************************************************************
00013 --* *
00014 --* $Source: /local/reps/bcmfpga/bcm_aaa/bcm_aaa/ddr2/ddr2_mem_infrastructure_iobs_0.vhd,v $
00015 --* $Revision: 1.3.2.4 $ *
00016 --* $Name: dev $ *
00017 --* $Author: mniegl $ *
00018 --* $Date: 2008/11/03 17:57:44 $ *
00019
00020
00021 --* *
00022 --**************************************************************
00023
00024 library ieee;
00025
00026 use ieee.std_logic_1164.all;
00027
00028 use ieee.std_logic_unsigned.all;
00029
00030 use ieee.numeric_std.all;
00031 use work.ddr2_mem_parameters_0.all;
00032 -- pragma translate_off
00033
00034 library unisim;
00035
00036 use unisim.vcomponents.all;
00037 -- pragma translate_on
00038
00039
00040
00041
00042 entity ddr2_mem_infrastructure_iobs_0 is
00043 port (
00044 CLK : in ;
00045 DDR_CK : out ;
00046 DDR_CK_N : out
00047 );
00048 end entity;
00049
00050
00051 architecture arc_infrastructure_iobs of ddr2_mem_infrastructure_iobs_0 is
00052
00053
00054 component OBUFDS
00055 port (
00056 I : in ;
00057 O : out ;
00058 OB : out
00059 );
00060 end component;
00061
00062
00063 component ODDR
00064 generic(
00065 DDR_CLK_EDGE : := "OPPOSITE_EDGE";
00066 SRTYPE : := "SYNC"
00067 );
00068 port(
00069 Q : out ;
00070 C : in ;
00071 CE : in ;
00072 D1 : in ;
00073 D2 : in ;
00074 R : in ;
00075 S : in
00076 );
00077 end component;
00078
00079 signal DDR_CK_q : ;
00080 signal DDR_CK_N_q : ((clk_width-1) downto 0);
00081 signal vcc : ;
00082 signal gnd : ;
00083
00084 begin
00085
00086 vcc <= '1';
00087 gnd <= '0';
00088
00089 oddr_clk0 : ODDR
00090 generic map(
00091 DDR_CLK_EDGE => "OPPOSITE_EDGE",
00092 SRTYPE => "SYNC"
00093 )
00094 port map(
00095 Q => DDR_CK_q,
00096 C => CLK ,
00097 CE => vcc ,
00098 D1 => gnd ,
00099 D2 => vcc ,
00100 R => gnd ,
00101 S => gnd
00102 );
00103
00104 OBUFDS0 : OBUFDS
00105 port map (
00106 I => DDR_CK_q,
00107 O => DDR_CK ,
00108 OB => DDR_CK_N
00109 );
00110
00111 end arc_infrastructure_iobs;