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/eth/Attic/ddr_chksum_adder.vhd,v $
00015 --* $Revision: 1.1.2.4 $ *
00016 --* $Name: dev $ *
00017 --* $Author: mniegl $ *
00018 --* $Date: 2008/11/03 17:57:46 $ *
00019
00020
00021
00022 --* *
00023 --**************************************************************
00024 --------------------------------------------------------------------------------
00025 -- Copyright (c) 1995-2007 Xilinx, Inc. All rights reserved.
00026 --------------------------------------------------------------------------------
00027 -- ____ ____
00028 -- / /\/ /
00029 -- /___/ \ / Vendor: Xilinx
00030 -- \ \ \/ Version : 9.2.04i
00031 -- \ \ Application : xaw2vhdl
00032 -- / / Filename : ddr_chksum_adder.vhd
00033 -- /___/ /\ Timestamp : 10/17/2008 12:19:24
00034 -- \ \ / \
00035 -- \___\/\___\
00036 --
00037 --Command: xaw2vhdl-st C:\FPGA\coregen\dsp_chksum\\ddr_chksum_adder.xaw C:\FPGA\coregen\dsp_chksum\\ddr_chksum_adder
00038 --Design Name: ddr_chksum_adder
00039 --Device: xc4vfx60-ff1152-11
00040 --
00041 -- Module ddr_chksum_adder
00042 -- Generated by Xilinx Architecture Wizard
00043 -- Written for synthesis tool: XST
00044
00045
00046 library ieee;
00047
00048 use ieee.std_logic_1164.all;
00049
00050 use ieee.numeric_std.all;
00051
00052 library unisim;
00053 use unisim.Vcomponents.all;
00054
00055
00056 entity ddr_chksum_adder is
00057 port
00058 (
00059 AB_IN : in (31 downto 0);
00060 CARRYIN_IN : in ;
00061 CEA_IN : in ;
00062 CEB_IN : in ;
00063 CECINSUB_IN : in ;
00064 CEC_IN : in ;
00065 CEM_IN : in ;
00066 CEP_IN : in ;
00067 CLK_IN : in ;
00068 C_IN : in (31 downto 0);
00069 RSTA_IN : in ;
00070 RSTB_IN : in ;
00071 RSTCARRYIN_IN : in ;
00072 RSTC_IN : in ;
00073 RSTM_IN : in ;
00074 RSTP_IN : in ;
00075 BCOUT_OUT : out (17 downto 0);
00076 PCOUT_OUT : out (47 downto 0);
00077 P_OUT : out (47 downto 0)
00078 );
00079 end ddr_chksum_adder;
00080
00081
00082 architecture BEHAVIORAL of ddr_chksum_adder is
00083 signal GND_BUS_2 : (1 downto 0);
00084 signal GND_BUS_18 : (17 downto 0);
00085 signal GND_BUS_48 : (47 downto 0);
00086 signal GND_OPMODE : ;
00087 signal VCC_OPMODE : ;
00088 begin
00089 GND_BUS_2(1 downto 0) <= "00";
00090 GND_BUS_18(17 downto 0) <= "000000000000000000";
00091 GND_BUS_48(47 downto 0) <=
00092 "000000000000000000000000000000000000000000000000";
00093 GND_OPMODE <= '0';
00094 VCC_OPMODE <= '1';
00095 DSP48_ADD : DSP48
00096 generic map
00097 (
00098 AREG => 1,
00099 BREG => 1,
00100 CREG => 1,
00101 PREG => 1,
00102 MREG => 1,
00103 OPMODEREG => 0,
00104 SUBTRACTREG => 0,
00105 CARRYINSELREG => 0,
00106 CARRYINREG => 1,
00107 B_INPUT => "DIRECT",
00108 LEGACY_MODE => "NONE"
00109 )
00110 port map
00111 (
00112 A(17) => AB_IN(31),
00113 A(16) => AB_IN(31),
00114 A(15) => AB_IN(31),
00115 A(14) => AB_IN(31),
00116 A(13 downto 0) => AB_IN (31 downto 18),
00117 B(17 downto 0) => AB_IN (17 downto 0),
00118 BCIN(17 downto 0) => GND_BUS_18(17 downto 0),
00119 C(47) => C_IN(31),
00120 C(46) => C_IN(31),
00121 C(45) => C_IN(31),
00122 C(44) => C_IN(31),
00123 C(43) => C_IN(31),
00124 C(42) => C_IN(31),
00125 C(41) => C_IN(31),
00126 C(40) => C_IN(31),
00127 C(39) => C_IN(31),
00128 C(38) => C_IN(31),
00129 C(37) => C_IN(31),
00130 C(36) => C_IN(31),
00131 C(35) => C_IN(31),
00132 C(34) => C_IN(31),
00133 C(33) => C_IN(31),
00134 C(32) => C_IN(31),
00135 C(31 downto 0) => C_IN (31 downto 0),
00136 CARRYIN => CARRYIN_IN,
00137 CARRYINSEL(1 downto 0) => GND_BUS_2(1 downto 0),
00138 CEA => CEA_IN,
00139 CEB => CEB_IN,
00140 CEC => CEC_IN ,
00141 CECARRYIN => GND_OPMODE,
00142 CECINSUB => CECINSUB_IN,
00143 CECTRL => VCC_OPMODE,
00144 CEM => CEM_IN,
00145 CEP => CEP_IN,
00146 CLK => CLK_IN,
00147 OPMODE(6) => GND_OPMODE ,
00148 OPMODE(5) => VCC_OPMODE ,
00149 OPMODE(4) => VCC_OPMODE ,
00150 OPMODE(3) => GND_OPMODE ,
00151 OPMODE(2) => GND_OPMODE ,
00152 OPMODE(1) => VCC_OPMODE ,
00153 OPMODE(0) => VCC_OPMODE ,
00154 PCIN(47 downto 0) => GND_BUS_48(47 downto 0),
00155 RSTA => RSTA_IN,
00156 RSTB => RSTB_IN,
00157 RSTC => RSTC_IN,
00158 RSTCARRYIN => RSTCARRYIN_IN,
00159 RSTCTRL => GND_OPMODE,
00160 RSTM => RSTM_IN,
00161 RSTP => RSTP_IN,
00162 SUBTRACT => GND_OPMODE,
00163 BCOUT(17 downto 0) => BCOUT_OUT(17 downto 0),
00164 P(47 downto 0) => P_OUT (47 downto 0),
00165 PCOUT(47 downto 0) => PCOUT_OUT(47 downto 0)
00166 );
00167
00168 end BEHAVIORAL;
00169
00170