otsdaq_prepmodernization  v2_05_02_indev
fadc_mem.vhd
1 --------------------------------------------------------------------------------
2 -- This file is owned and controlled by Xilinx and must be used solely --
3 -- for design, simulation, implementation and creation of design files --
4 -- limited to Xilinx devices or technologies. Use with non-Xilinx --
5 -- devices or technologies is expressly prohibited and immediately --
6 -- terminates your license. --
7 -- --
8 -- XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS" SOLELY --
9 -- FOR USE IN DEVELOPING PROGRAMS AND SOLUTIONS FOR XILINX DEVICES. BY --
10 -- PROVIDING THIS DESIGN, CODE, OR INFORMATION AS ONE POSSIBLE --
11 -- IMPLEMENTATION OF THIS FEATURE, APPLICATION OR STANDARD, XILINX IS --
12 -- MAKING NO REPRESENTATION THAT THIS IMPLEMENTATION IS FREE FROM ANY --
13 -- CLAIMS OF INFRINGEMENT, AND YOU ARE RESPONSIBLE FOR OBTAINING ANY --
14 -- RIGHTS YOU MAY REQUIRE FOR YOUR IMPLEMENTATION. XILINX EXPRESSLY --
15 -- DISCLAIMS ANY WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE --
16 -- IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR --
17 -- REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF --
18 -- INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A --
19 -- PARTICULAR PURPOSE. --
20 -- --
21 -- Xilinx products are not intended for use in life support appliances, --
22 -- devices, or systems. Use in such applications are expressly --
23 -- prohibited. --
24 -- --
25 -- (c) Copyright 1995-2011 Xilinx, Inc. --
26 -- All rights reserved. --
27 --------------------------------------------------------------------------------
28 --------------------------------------------------------------------------------
29 -- You must compile the wrapper file fadc_mem.vhd when simulating
30 -- the core, fadc_mem. When compiling the wrapper file, be sure to
31 -- reference the XilinxCoreLib VHDL simulation library. For detailed
32 -- instructions, please refer to the "CORE Generator Help".
33 
34 -- The synthesis directives "translate_off/translate_on" specified
35 -- below are supported by Xilinx, Mentor Graphics and Synplicity
36 -- synthesis tools. Ensure they are correct for your synthesis tool(s).
37 
38 LIBRARY ieee;
39 USE ieee.std_logic_1164.ALL;
40 -- synthesis translate_off
41 LIBRARY XilinxCoreLib;
42 -- synthesis translate_on
43 ENTITY fadc_mem IS
44  PORT (
45  clka : IN STD_LOGIC;
46  wea : IN STD_LOGIC_VECTOR(0 DOWNTO 0);
47  addra : IN STD_LOGIC_VECTOR(9 DOWNTO 0);
48  dina : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
49  clkb : IN STD_LOGIC;
50  addrb : IN STD_LOGIC_VECTOR(9 DOWNTO 0);
51  doutb : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
52  );
53 END fadc_mem;
54 
55 ARCHITECTURE fadc_mem_a OF fadc_mem IS
56 -- synthesis translate_off
57 COMPONENT wrapped_fadc_mem
58  PORT (
59  clka : IN STD_LOGIC;
60  wea : IN STD_LOGIC_VECTOR(0 DOWNTO 0);
61  addra : IN STD_LOGIC_VECTOR(9 DOWNTO 0);
62  dina : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
63  clkb : IN STD_LOGIC;
64  addrb : IN STD_LOGIC_VECTOR(9 DOWNTO 0);
65  doutb : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
66  );
67 END COMPONENT;
68 
69 -- Configuration specification
70  FOR ALL : wrapped_fadc_mem USE ENTITY XilinxCoreLib.blk_mem_gen_v6_2(behavioral)
71  GENERIC MAP (
72  c_addra_width => 10,
73  c_addrb_width => 10,
74  c_algorithm => 1,
75  c_axi_id_width => 4,
76  c_axi_slave_type => 0,
77  c_axi_type => 1,
78  c_byte_size => 9,
79  c_common_clk => 0,
80  c_default_data => "0",
81  c_disable_warn_bhv_coll => 0,
82  c_disable_warn_bhv_range => 0,
83  c_family => "virtex4",
84  c_has_axi_id => 0,
85  c_has_ena => 0,
86  c_has_enb => 0,
87  c_has_injecterr => 0,
88  c_has_mem_output_regs_a => 0,
89  c_has_mem_output_regs_b => 0,
90  c_has_mux_output_regs_a => 0,
91  c_has_mux_output_regs_b => 0,
92  c_has_regcea => 0,
93  c_has_regceb => 0,
94  c_has_rsta => 0,
95  c_has_rstb => 0,
96  c_has_softecc_input_regs_a => 0,
97  c_has_softecc_output_regs_b => 0,
98  c_init_file_name => "no_coe_file_loaded" ,
99  c_inita_val => "0",
100  c_initb_val => "0",
101  c_interface_type => 0,
102  c_load_init_file => 0,
103  c_mem_type => 1,
104  c_mux_pipeline_stages => 0,
105  c_prim_type => 1,
106  c_read_depth_a => 1024,
107  c_read_depth_b => 1024,
108  c_read_width_a => 8,
109  c_read_width_b => 8,
110  c_rst_priority_a => "CE",
111  c_rst_priority_b => "CE",
112  c_rst_type => "SYNC",
113  c_rstram_a => 0,
114  c_rstram_b => 0,
115  c_sim_collision_check => "ALL",
116  c_use_byte_wea => 0,
117  c_use_byte_web => 0,
118  c_use_default_data => 0,
119  c_use_ecc => 0,
120  c_use_softecc => 0,
121  c_wea_width => 1,
122  c_web_width => 1,
123  c_write_depth_a => 1024,
124  c_write_depth_b => 1024,
125  c_write_mode_a => "WRITE_FIRST",
126  c_write_mode_b => "READ_FIRST",
127  c_write_width_a => 8,
128  c_write_width_b => 8,
129  c_xdevicefamily => "virtex4"
130  );
131 -- synthesis translate_on
132 BEGIN
133 -- synthesis translate_off
134 U0 : wrapped_fadc_mem
135  PORT MAP (
136  clka => clka,
137  wea => wea,
138  addra => addra,
139  dina => dina,
140  clkb => clkb,
141  addrb => addrb,
142  doutb => doutb
143  );
144 -- synthesis translate_on
145 
146 END fadc_mem_a;