OpenCores
URL https://opencores.org/ocsvn/xmatchpro/xmatchpro/trunk

Subversion Repositories xmatchpro

[/] [xmatchpro/] [trunk/] [xmw4-comdec/] [xmatch_sim7/] [coregen/] [DP_RAM_XILINX_512/] [example_design/] [DP_RAM_XILINX_512_prod.vhd] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 9 eejlny
 
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
 
10
--------------------------------------------------------------------------------
11
--
12
-- BLK MEM GEN v7.1 Core - Top-level wrapper
13
--
14
--------------------------------------------------------------------------------
15
--
16
-- (c) Copyright 2006-2011 Xilinx, Inc. All rights reserved.
17
--
18
-- This file contains confidential and proprietary information
19
-- of Xilinx, Inc. and is protected under U.S. and
20
-- international copyright and other intellectual property
21
-- laws.
22
--
23
-- DISCLAIMER
24
-- This disclaimer is not a license and does not grant any
25
-- rights to the materials distributed herewith. Except as
26
-- otherwise provided in a valid license issued to you by
27
-- Xilinx, and to the maximum extent permitted by applicable
28
-- law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND
29
-- WITH ALL FAULTS, AND XILINX HEREBY DISCLAIMS ALL WARRANTIES
30
-- AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
31
-- BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-
32
-- INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and
33
-- (2) Xilinx shall not be liable (whether in contract or tort,
34
-- including negligence, or under any other theory of
35
-- liability) for any loss or damage of any kind or nature
36
-- related to, arising under or in connection with these
37
-- materials, including for any direct, or any indirect,
38
-- special, incidental, or consequential loss or damage
39
-- (including loss of data, profits, goodwill, or any type of
40
-- loss or damage suffered as a result of any action brought
41
-- by a third party) even if such damage or loss was
42
-- reasonably foreseeable or Xilinx had been advised of the
43
-- possibility of the same.
44
--
45
-- CRITICAL APPLICATIONS
46
-- Xilinx products are not designed or intended to be fail-
47
-- safe, or for use in any application requiring fail-safe
48
-- performance, such as life-support or safety devices or
49
-- systems, Class III medical devices, nuclear facilities,
50
-- applications related to the deployment of airbags, or any
51
-- other applications that could lead to death, personal
52
-- injury, or severe property or environmental damage
53
-- (individually and collectively, "Critical
54
-- Applications"). Customer assumes the sole risk and
55
-- liability of any use of Xilinx products in Critical
56
-- Applications, subject only to applicable laws and
57
-- regulations governing limitations on product liability.
58
--
59
-- THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS
60
-- PART OF THIS FILE AT ALL TIMES.
61
--
62
--------------------------------------------------------------------------------
63
--
64
-- Filename: DP_RAM_XILINX_512_prod.vhd
65
--
66
-- Description:
67
--   This is the top-level BMG wrapper (over BMG core).
68
--
69
--------------------------------------------------------------------------------
70
-- Author: IP Solutions Division
71
--
72
-- History: August 31, 2005 - First Release
73
--------------------------------------------------------------------------------
74
--
75
-- Configured Core Parameter Values:
76
-- (Refer to the SIM Parameters table in the datasheet for more information on
77
-- the these parameters.)
78
--    C_FAMILY                    :  virtex7 
79
--    C_XDEVICEFAMILY             :  virtex7 
80
--    C_INTERFACE_TYPE            :  0 
81
--    C_ENABLE_32BIT_ADDRESS      :  0 
82
--    C_AXI_TYPE                  :  1 
83
--    C_AXI_SLAVE_TYPE            :  0 
84
--    C_AXI_ID_WIDTH              :  4 
85
--    C_MEM_TYPE                  :  1 
86
--    C_BYTE_SIZE                 :  9 
87
--    C_ALGORITHM                 :  1 
88
--    C_PRIM_TYPE                 :  1 
89
--    C_LOAD_INIT_FILE            :  0 
90
--    C_INIT_FILE_NAME            :  no_coe_file_loaded 
91
--    C_USE_DEFAULT_DATA          :  0 
92
--    C_DEFAULT_DATA              :  0 
93
--    C_RST_TYPE                  :  SYNC 
94
--    C_HAS_RSTA                  :  0 
95
--    C_RST_PRIORITY_A            :  CE 
96
--    C_RSTRAM_A                  :  0 
97
--    C_INITA_VAL                 :  0 
98
--    C_HAS_ENA                   :  0 
99
--    C_HAS_REGCEA                :  0 
100
--    C_USE_BYTE_WEA              :  0 
101
--    C_WEA_WIDTH                 :  1 
102
--    C_WRITE_MODE_A              :  WRITE_FIRST 
103
--    C_WRITE_WIDTH_A             :  32 
104
--    C_READ_WIDTH_A              :  32 
105
--    C_WRITE_DEPTH_A             :  512 
106
--    C_READ_DEPTH_A              :  512 
107
--    C_ADDRA_WIDTH               :  9 
108
--    C_HAS_RSTB                  :  0 
109
--    C_RST_PRIORITY_B            :  CE 
110
--    C_RSTRAM_B                  :  0 
111
--    C_INITB_VAL                 :  0 
112
--    C_HAS_ENB                   :  1 
113
--    C_HAS_REGCEB                :  0 
114
--    C_USE_BYTE_WEB              :  0 
115
--    C_WEB_WIDTH                 :  1 
116
--    C_WRITE_MODE_B              :  WRITE_FIRST 
117
--    C_WRITE_WIDTH_B             :  32 
118
--    C_READ_WIDTH_B              :  32 
119
--    C_WRITE_DEPTH_B             :  512 
120
--    C_READ_DEPTH_B              :  512 
121
--    C_ADDRB_WIDTH               :  9 
122
--    C_HAS_MEM_OUTPUT_REGS_A     :  0 
123
--    C_HAS_MEM_OUTPUT_REGS_B     :  0 
124
--    C_HAS_MUX_OUTPUT_REGS_A     :  0 
125
--    C_HAS_MUX_OUTPUT_REGS_B     :  0 
126
--    C_HAS_SOFTECC_INPUT_REGS_A  :  0 
127
--    C_HAS_SOFTECC_OUTPUT_REGS_B :  0 
128
--    C_MUX_PIPELINE_STAGES       :  0 
129
--    C_USE_ECC                   :  0 
130
--    C_USE_SOFTECC               :  0 
131
--    C_HAS_INJECTERR             :  0 
132
--    C_SIM_COLLISION_CHECK       :  ALL 
133
--    C_COMMON_CLK                :  0 
134
--    C_DISABLE_WARN_BHV_COLL     :  0 
135
--    C_DISABLE_WARN_BHV_RANGE    :  0 
136
 
137
--------------------------------------------------------------------------------
138
-- Library Declarations
139
--------------------------------------------------------------------------------
140
 
141
LIBRARY IEEE;
142
USE IEEE.STD_LOGIC_1164.ALL;
143
USE IEEE.STD_LOGIC_ARITH.ALL;
144
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
145
 
146
LIBRARY UNISIM;
147
USE UNISIM.VCOMPONENTS.ALL;
148
 
149
--------------------------------------------------------------------------------
150
-- Entity Declaration
151
--------------------------------------------------------------------------------
152
ENTITY DP_RAM_XILINX_512_prod IS
153
  PORT (
154
    --Port A
155
    CLKA       : IN STD_LOGIC;
156
    RSTA       : IN STD_LOGIC;  --opt port
157
    ENA        : IN STD_LOGIC;  --optional port
158
    REGCEA     : IN STD_LOGIC;  --optional port
159
    WEA        : IN STD_LOGIC_VECTOR(0 DOWNTO 0);
160
    ADDRA      : IN STD_LOGIC_VECTOR(8 DOWNTO 0);
161
    DINA       : IN STD_LOGIC_VECTOR(31 DOWNTO 0);
162
    DOUTA      : OUT STD_LOGIC_VECTOR(31 DOWNTO 0);
163
 
164
    --Port B
165
    CLKB       : IN STD_LOGIC;
166
    RSTB       : IN STD_LOGIC;  --opt port
167
    ENB        : IN STD_LOGIC;  --optional port
168
    REGCEB     : IN STD_LOGIC;  --optional port
169
    WEB        : IN STD_LOGIC_VECTOR(0 DOWNTO 0);
170
    ADDRB      : IN STD_LOGIC_VECTOR(8 DOWNTO 0);
171
    DINB       : IN STD_LOGIC_VECTOR(31 DOWNTO 0);
172
    DOUTB      : OUT STD_LOGIC_VECTOR(31 DOWNTO 0);
173
 
174
    --ECC
175
    INJECTSBITERR  : IN STD_LOGIC; --optional port
176
    INJECTDBITERR  : IN STD_LOGIC; --optional port
177
    SBITERR        : OUT STD_LOGIC; --optional port
178
    DBITERR        : OUT STD_LOGIC; --optional port
179
    RDADDRECC      : OUT STD_LOGIC_VECTOR(8 DOWNTO 0); --optional port
180
 -- AXI BMG Input and Output Port Declarations
181
 
182
    -- AXI Global Signals
183
    S_ACLK                         : IN  STD_LOGIC;
184
    S_AXI_AWID                     : IN  STD_LOGIC_VECTOR(3 DOWNTO 0);
185
    S_AXI_AWADDR                   : IN  STD_LOGIC_VECTOR(31 DOWNTO 0);
186
    S_AXI_AWLEN                    : IN  STD_LOGIC_VECTOR(7 DOWNTO 0);
187
    S_AXI_AWSIZE                   : IN  STD_LOGIC_VECTOR(2 DOWNTO 0);
188
    S_AXI_AWBURST                  : IN  STD_LOGIC_VECTOR(1 DOWNTO 0);
189
    S_AXI_AWVALID                  : IN  STD_LOGIC;
190
    S_AXI_AWREADY                  : OUT STD_LOGIC;
191
    S_AXI_WDATA                    : IN  STD_LOGIC_VECTOR(31  DOWNTO 0);
192
    S_AXI_WSTRB                    : IN  STD_LOGIC_VECTOR(0  DOWNTO 0);
193
    S_AXI_WLAST                    : IN  STD_LOGIC;
194
    S_AXI_WVALID                   : IN  STD_LOGIC;
195
    S_AXI_WREADY                   : OUT STD_LOGIC;
196
    S_AXI_BID                      : OUT STD_LOGIC_VECTOR(3  DOWNTO 0):= (OTHERS => '0');
197
    S_AXI_BRESP                    : OUT STD_LOGIC_VECTOR(1 DOWNTO 0);
198
    S_AXI_BVALID                   : OUT STD_LOGIC;
199
    S_AXI_BREADY                   : IN  STD_LOGIC;
200
 
201
    -- AXI Full/Lite Slave Read (Write side)
202
    S_AXI_ARID                     : IN  STD_LOGIC_VECTOR(3  DOWNTO 0);
203
    S_AXI_ARADDR                   : IN  STD_LOGIC_VECTOR(31 DOWNTO 0);
204
    S_AXI_ARLEN                    : IN  STD_LOGIC_VECTOR(7 DOWNTO 0);
205
    S_AXI_ARSIZE                   : IN  STD_LOGIC_VECTOR(2 DOWNTO 0);
206
    S_AXI_ARBURST                  : IN  STD_LOGIC_VECTOR(1 DOWNTO 0);
207
    S_AXI_ARVALID                  : IN  STD_LOGIC;
208
    S_AXI_ARREADY                  : OUT STD_LOGIC;
209
    S_AXI_RID                      : OUT STD_LOGIC_VECTOR(3  DOWNTO 0):= (OTHERS => '0');
210
    S_AXI_RDATA                    : OUT STD_LOGIC_VECTOR(31  DOWNTO 0);
211
    S_AXI_RRESP                    : OUT STD_LOGIC_VECTOR(1 DOWNTO 0);
212
    S_AXI_RLAST                    : OUT STD_LOGIC;
213
    S_AXI_RVALID                   : OUT STD_LOGIC;
214
    S_AXI_RREADY                   : IN  STD_LOGIC;
215
 
216
    -- AXI Full/Lite Sideband Signals
217
    S_AXI_INJECTSBITERR            : IN  STD_LOGIC;
218
    S_AXI_INJECTDBITERR            : IN  STD_LOGIC;
219
    S_AXI_SBITERR                  : OUT STD_LOGIC;
220
    S_AXI_DBITERR                  : OUT STD_LOGIC;
221
    S_AXI_RDADDRECC                : OUT STD_LOGIC_VECTOR(8  DOWNTO 0);
222
    S_ARESETN                      : IN  STD_LOGIC
223
 
224
 
225
  );
226
 
227
END DP_RAM_XILINX_512_prod;
228
 
229
 
230
ARCHITECTURE xilinx OF DP_RAM_XILINX_512_prod IS
231
 
232
  COMPONENT DP_RAM_XILINX_512_exdes IS
233
  PORT (
234
      --Port A
235
 
236
    WEA            : IN STD_LOGIC_VECTOR(0 DOWNTO 0);
237
    ADDRA          : IN STD_LOGIC_VECTOR(8 DOWNTO 0);
238
 
239
    DINA           : IN STD_LOGIC_VECTOR(31 DOWNTO 0);
240
 
241
 
242
    CLKA       : IN STD_LOGIC;
243
 
244
 
245
      --Port B
246
    ENB            : IN STD_LOGIC;  --opt port
247
    ADDRB          : IN STD_LOGIC_VECTOR(8 DOWNTO 0);
248
    DOUTB          : OUT STD_LOGIC_VECTOR(31 DOWNTO 0);
249
    CLKB           : IN STD_LOGIC
250
 
251
 
252
 
253
  );
254
  END COMPONENT;
255
 
256
BEGIN
257
 
258
  bmg0 : DP_RAM_XILINX_512_exdes
259
    PORT MAP (
260
      --Port A
261
 
262
      WEA        => WEA,
263
      ADDRA      => ADDRA,
264
 
265
      DINA       => DINA,
266
 
267
      CLKA       => CLKA,
268
 
269
      --Port B
270
      ENB        => ENB,
271
      ADDRB      => ADDRB,
272
      DOUTB      => DOUTB,
273
      CLKB       => CLKB
274
 
275
 
276
 
277
      );
278
END xilinx;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.