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_v4_dm_iob.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
00032
00033 library unisim;
00034
00035 use unisim.vcomponents.all;
00036
00037
00038 entity ddr2_mem_v4_dm_iob is
00039 port (
00040 CLK90 : in ;
00041 MASK_DATA_RISE : in ;
00042 MASK_DATA_FALL : in ;
00043 DDR_DM : out
00044 );
00045 end entity;
00046
00047
00048 architecture arc_v4_dm_iob of ddr2_mem_v4_dm_iob is
00049
00050
00051 component ODDR
00052 generic(
00053 DDR_CLK_EDGE : := "SAME_EDGE";
00054 SRTYPE : := "SYNC"
00055 );
00056 port(
00057 Q : out ;
00058 C : in ;
00059 CE : in ;
00060 D1 : in ;
00061 D2 : in ;
00062 R : in ;
00063 S : in
00064 );
00065 end component;
00066
00067
00068 component OBUF
00069 port(
00070 I : in ;
00071 O : out
00072 );
00073
00074 end component;
00075
00076 signal dm_out : ;
00077 signal vcc : ;
00078 signal gnd : ;
00079
00080
00081
00082 begin
00083
00084 vcc <= '1';
00085 gnd <= '0';
00086
00087
00088 oddr_dm : ODDR
00089 generic map(
00090 DDR_CLK_EDGE => "SAME_EDGE",
00091 SRTYPE => "SYNC"
00092 )
00093 port map (
00094 Q => dm_out ,
00095 C => CLK90 ,
00096 CE => vcc ,
00097 D1 => MASK_DATA_RISE,
00098 D2 => MASK_DATA_Fall,
00099 R => gnd ,
00100 S => gnd
00101 );
00102
00103
00104 obuf_dm : OBUF
00105 port map (
00106 I => dm_out,
00107 O => DDR_DM
00108 );
00109
00110 end arc_v4_dm_iob;