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

Subversion Repositories funbase_ip_library

[/] [funbase_ip_library/] [trunk/] [TUT/] [ip.hwp.communication/] [hibi/] [3.0/] [vhd/] [hibi_segment_6p.vhd] - Blame information for rev 158

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 158 lanttu
-- ***************************************************
2
-- File: hibi_segment_6p.vhd
3
-- Creation date: 12.02.2013
4
-- Creation time: 10:29:59
5
-- Description: 
6
-- Created by: matilail
7
-- This file was generated with Kactus2 vhdl generator.
8
-- ***************************************************
9
library IEEE;
10
library hibi;
11
library work;
12
use hibi.all;
13
use work.all;
14
use IEEE.std_logic_1164.all;
15
 
16
entity hibi_segment_6p is
17
 
18
        generic (
19
                ip_mslave_0_addr_end : integer := 2; -- HIBI end address for interface 0
20
                ip_mslave_0_addr_start : integer := 1; -- HIBI address for interface 0
21
                ip_mslave_1_addr_end : integer := 4; -- HIBI end address for interface 1
22
                ip_mslave_1_addr_start : integer := 3; -- HIBI address for interface 1
23
                ip_mslave_2_addr_end : integer := 6; -- HIBI end address for interface 2
24
                ip_mslave_2_addr_start : integer := 5; -- HIBI address for interface 2
25
                ip_mslave_3_addr_end : integer := 8; -- HIBI end address for interface 3
26
                ip_mslave_3_addr_start : integer := 7 -- HIBI address for interface 3
27
        );
28
 
29
        port (
30
 
31
                -- Interface: clocks_0
32
                -- Clock inputs  interface for hibi wrapper_3
33
                agent_clk : in std_logic;
34
                agent_sync_clk : in std_logic;
35
                bus_clk : in std_logic;
36
                bus_sync_clk : in std_logic;
37
 
38
                -- Interface: clocks_1
39
                -- Clock inputs  interface for hibi wrapper_3
40
                agent_clk_1 : in std_logic;
41
                agent_sync_clk_1 : in std_logic;
42
                bus_clk_1 : in std_logic;
43
                bus_sync_clk_1 : in std_logic;
44
 
45
                -- Interface: clocks_2
46
                -- Clock inputs  interface for hibi wrapper_3
47
                agent_clk_2 : in std_logic;
48
                agent_sync_clk_2 : in std_logic;
49
                bus_clk_2 : in std_logic;
50
                bus_sync_clk_2 : in std_logic;
51
 
52
                -- Interface: clocks_3
53
                -- Clock inputs  interface for hibi wrapper_3
54
                agent_clk_3 : in std_logic;
55
                agent_sync_clk_3 : in std_logic;
56
                bus_clk_3 : in std_logic;
57
                bus_sync_clk_3 : in std_logic;
58
 
59
                -- Interface: clocks_4
60
                agent_clk_4 : in std_logic;
61
                agent_sync_clk_4 : in std_logic;
62
                bus_clk_4 : in std_logic;
63
                bus_sync_clk_4 : in std_logic;
64
 
65
                -- Interface: clocks_5
66
                agent_clk_5 : in std_logic;
67
                agent_sync_clk_5 : in std_logic;
68
                bus_clk_5 : in std_logic;
69
                bus_sync_clk_5 : in std_logic;
70
 
71
                -- Interface: ip_mMaster_0
72
                -- HIBI ip mirrored master agent interface 0 (r4 wrapper)
73
                agent_av_in : in std_logic;
74
                agent_comm_in : in std_logic_vector(4 downto 0);
75
                agent_data_in : in std_logic_vector(31 downto 0);
76
                agent_re_in : in std_logic;
77
                agent_we_in : in std_logic;
78
 
79
                -- Interface: ip_mMaster_1
80
                -- HIBI ip mirrored master agent interface 1 (r4 wrapper)
81
                agent_av_in_1 : in std_logic;
82
                agent_comm_in_1 : in std_logic_vector(4 downto 0);
83
                agent_data_in_1 : in std_logic_vector(31 downto 0);
84
                agent_re_in_1 : in std_logic;
85
                agent_we_in_1 : in std_logic;
86
 
87
                -- Interface: ip_mMaster_2
88
                -- HIBI ip mirrored master agent interface 2 (r4 wrapper)
89
                agent_av_in_2 : in std_logic;
90
                agent_comm_in_2 : in std_logic_vector(4 downto 0);
91
                agent_data_in_2 : in std_logic_vector(31 downto 0);
92
                agent_re_in_2 : in std_logic;
93
                agent_we_in_2 : in std_logic;
94
 
95
                -- Interface: ip_mMaster_3
96
                -- HIBI ip mirrored master agent interface 3 (r4 wrapper)
97
                agent_av_in_3 : in std_logic;
98
                agent_comm_in_3 : in std_logic_vector(4 downto 0);
99
                agent_data_in_3 : in std_logic_vector(31 downto 0);
100
                agent_re_in_3 : in std_logic;
101
                agent_we_in_3 : in std_logic;
102
 
103
                -- Interface: ip_mMaster_4
104
                agent_av_in_4 : in std_logic;
105
                agent_comm_in_4 : in std_logic_vector(4 downto 0);
106
                agent_data_in_4 : in std_logic_vector(31 downto 0);
107
                agent_re_in_4 : in std_logic;
108
                agent_we_in_4 : in std_logic;
109
 
110
                -- Interface: ip_mMaster_5
111
                agent_av_in_5 : in std_logic;
112
                agent_comm_in_5 : in std_logic_vector(4 downto 0);
113
                agent_data_in_5 : in std_logic_vector(31 downto 0);
114
                agent_re_in_5 : in std_logic;
115
                agent_we_in_5 : in std_logic;
116
 
117
                -- Interface: ip_mSlave_0
118
                -- HIBI ip mirrored slave agent interface 0 (r4 wrapper)
119
                agent_av_out : out std_logic;
120
                agent_comm_out : out std_logic_vector(4 downto 0);
121
                agent_data_out : out std_logic_vector(31 downto 0);
122
                agent_empty_out : out std_logic;
123
                agent_full_out : out std_logic;
124
                agent_one_d_out : out std_logic;
125
                agent_one_p_out : out std_logic;
126
 
127
                -- Interface: ip_mSlave_1
128
                -- HIBI ip mirrored slave agent interface 1  (r4 wrapper)
129
                agent_av_out_1 : out std_logic;
130
                agent_comm_out_1 : out std_logic_vector(4 downto 0);
131
                agent_data_out_1 : out std_logic_vector(31 downto 0);
132
                agent_empty_out_1 : out std_logic;
133
                agent_full_out_1 : out std_logic;
134
                agent_one_d_out_1 : out std_logic;
135
                agent_one_p_out_1 : out std_logic;
136
 
137
                -- Interface: ip_mSlave_2
138
                -- HIBI ip mirrored slave agent interface 2 (r4 wrapper)
139
                agent_av_out_2 : out std_logic;
140
                agent_comm_out_2 : out std_logic_vector(4 downto 0);
141
                agent_data_out_2 : out std_logic_vector(31 downto 0);
142
                agent_empty_out_2 : out std_logic;
143
                agent_full_out_2 : out std_logic;
144
                agent_one_d_out_2 : out std_logic;
145
                agent_one_p_out_2 : out std_logic;
146
 
147
                -- Interface: ip_mSlave_3
148
                -- HIBI ip mirrored slave agent interface_3 (r4 wrapper)
149
                agent_av_out_3 : out std_logic;
150
                agent_comm_out_3 : out std_logic_vector(4 downto 0);
151
                agent_data_out_3 : out std_logic_vector(31 downto 0);
152
                agent_empty_out_3 : out std_logic;
153
                agent_full_out_3 : out std_logic;
154
                agent_one_d_out_3 : out std_logic;
155
                agent_one_p_out_3 : out std_logic;
156
 
157
                -- Interface: ip_mSlave_4
158
                agent_av_out_4 : out std_logic;
159
                agent_comm_out_4 : out std_logic_vector(4 downto 0);
160
                agent_data_out_4 : out std_logic_vector(31 downto 0);
161
                agent_empty_out_4 : out std_logic;
162
                agent_full_out_4 : out std_logic;
163
                agent_one_d_out_4 : out std_logic;
164
                agent_one_p_out_4 : out std_logic;
165
 
166
                -- Interface: ip_mSlave_5
167
                agent_av_out_5 : out std_logic;
168
                agent_comm_out_5 : out std_logic_vector(4 downto 0);
169
                agent_data_out_5 : out std_logic_vector(31 downto 0);
170
                agent_empty_out_5 : out std_logic;
171
                agent_full_out_5 : out std_logic;
172
                agent_one_d_out_5 : out std_logic;
173
                agent_one_p_out_5 : out std_logic;
174
 
175
                -- Interface: rst_n
176
                -- Active low reset interface.
177
                rst_n : in std_logic
178
        );
179
 
180
end hibi_segment_6p;
181
 
182
 
183
architecture structural of hibi_segment_6p is
184
 
185
        signal hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveAV : std_logic;
186
        signal hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveAV : std_logic;
187
        signal hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveAV : std_logic;
188
        signal hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveAV : std_logic;
189
        signal hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV : std_logic;
190
        signal hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveCOMM : std_logic_vector(4 downto 0);
191
        signal hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveCOMM : std_logic_vector(4 downto 0);
192
        signal hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveCOMM : std_logic_vector(4 downto 0);
193
        signal hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveCOMM : std_logic_vector(4 downto 0);
194
        signal hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM : std_logic_vector(4 downto 0);
195
        signal hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveDATA : std_logic_vector(31 downto 0);
196
        signal hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveDATA : std_logic_vector(31 downto 0);
197
        signal hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveDATA : std_logic_vector(31 downto 0);
198
        signal hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveDATA : std_logic_vector(31 downto 0);
199
        signal hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA : std_logic_vector(31 downto 0);
200
        signal hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveFULL : std_logic;
201
        signal hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveFULL : std_logic;
202
        signal hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveFULL : std_logic;
203
        signal hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveFULL : std_logic;
204
        signal hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL : std_logic;
205
        signal hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveLOCK : std_logic;
206
        signal hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveLOCK : std_logic;
207
        signal hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveLOCK : std_logic;
208
        signal hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveLOCK : std_logic;
209
        signal hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK : std_logic;
210
 
211
        component hibi_orbus_6p
212
                generic (
213
                        comm_width_g : integer := 5; -- HIBI command width
214
                        data_width_g : integer := 32 -- HIBI data width
215
 
216
                );
217
                port (
218
 
219
                        -- Interface: master
220
                        -- HIBI bus <---> wrapper master interface
221
                        bus_av_out : out std_logic;
222
                        bus_comm_out : out std_logic_vector(4 downto 0);
223
                        bus_data_out : out std_logic_vector(31 downto 0);
224
                        bus_full_out : out std_logic;
225
                        bus_lock_out : out std_logic;
226
 
227
                        -- Interface: slave_0
228
                        -- HIBI bus <---> wrapper slave interface
229
                        bus_av_0_in : in std_logic;
230
                        bus_comm_0_in : in std_logic_vector(4 downto 0);
231
                        bus_data_0_in : in std_logic_vector(31 downto 0);
232
                        bus_full_0_in : in std_logic;
233
                        bus_lock_0_in : in std_logic;
234
 
235
                        -- Interface: slave_1
236
                        -- HIBI bus <---> wrapper slave interface
237
                        bus_av_1_in : in std_logic;
238
                        bus_comm_1_in : in std_logic_vector(4 downto 0);
239
                        bus_data_1_in : in std_logic_vector(31 downto 0);
240
                        bus_full_1_in : in std_logic;
241
                        bus_lock_1_in : in std_logic;
242
 
243
                        -- Interface: slave_2
244
                        -- HIBI bus <---> wrapper slave interface
245
                        bus_av_2_in : in std_logic;
246
                        bus_comm_2_in : in std_logic_vector(4 downto 0);
247
                        bus_data_2_in : in std_logic_vector(31 downto 0);
248
                        bus_full_2_in : in std_logic;
249
                        bus_lock_2_in : in std_logic;
250
 
251
                        -- Interface: slave_3
252
                        -- HIBI bus <---> wrapper slave interface
253
                        bus_av_3_in : in std_logic;
254
                        bus_comm_3_in : in std_logic_vector(4 downto 0);
255
                        bus_data_3_in : in std_logic_vector(31 downto 0);
256
                        bus_full_3_in : in std_logic;
257
                        bus_lock_3_in : in std_logic
258
 
259
                );
260
        end component;
261
 
262
        -- HIBI bus wrapper, interface revision 4 
263
        component hibi_wrapper_r4
264
                generic (
265
                        addr_g : integer := 46; -- addressing settings: unique for each wrapper
266
                        addr_limit_g : integer := 0; -- Upper address boundary
267
                        addr_width_g : integer := 32; -- HIBI address width
268
                        arb_type_g : integer := 0; -- Arbitration type 0 round-robin, 1 priority, 2 combined, 3 DAA. Ensure that all wrappers in a segment agree on arb_type
269
                        cfg_re_g : integer := 0; --  enable reading config
270
                        cfg_we_g : integer := 0; -- enable writing config
271
                        comm_width_g : integer := 5; -- HIBI communication width (HIBI v.2=3, v.3 = 5 bits)
272
                        counter_width_g : integer := 7; -- greater than or equal (n_agents, max_send...) 
273
                        data_width_g : integer := 32; -- HIBI data width (less than or equal)
274
                        debug_width_g : integer := 2; -- For special monitors
275
                        fifo_sel_g : integer := 0; -- fifo_sel: 0 synch multiclk, 1 basic GALS,  2 Gray FIFO (depth=2^n!), 3 mixed clock pausible ( use 0 for synchronous systems)
276
                        id_g : integer := 5; --  used instead of addr in recfg
277
                        id_max_g : integer := 0; -- Only for bridges+cfg, zero for others!
278
                        id_min_g : integer := 0; -- Only for bridges+cfg, zero for others!
279
                        id_width_g : integer := 4; -- gte(log2(id_g))
280
                        inv_addr_en_g : integer := 0; -- Only for bridges
281
                        keep_slot_g : integer := 0; -- for TDMA
282
                        max_send_g : integer := 50; -- in words. Max_send can be wrapper-specific.
283
                        n_agents_g : integer := 4; -- Number of agents within one segment. Ensure that all wrappers in a segment agree on n_agents
284
                        n_cfg_pages_g : integer := 1; -- Having multiple pages allows fast reconfig. Note that cfg memory initialization is done with separate package if you have many time slots or configuration pages
285
                        n_extra_params_g : integer := 0; -- app-specific registers
286
                        n_time_slots_g : integer := 0; -- TDMA is enabled by setting n_time_slots > 0
287
                        prior_g : integer := 2; -- lte n_agents
288
                        rel_agent_freq_g : integer := 1; -- Synch_multiclk FIFOs must know the ratio of frequencies
289
                        rel_bus_freq_g : integer := 1; -- Synch_multiclk FIFOs must know the ratio of frequencies
290
                        rx_fifo_depth_g : integer := 5; -- All FIFO depths are given in words. Allowed values 0,2,3... words.
291
                        rx_msg_fifo_depth_g : integer := 5; -- All FIFO depths are given in words. Allowed values 0,2,3... words.Prefix msg refers to hi-prior data
292
                        separate_addr_g : integer := 0; -- Transmits addr in parallel with data
293
                        tx_fifo_depth_g : integer := 5; -- All FIFO depths are given in words. Allowed values 0,2,3... words.
294
                        tx_msg_fifo_depth_g : integer := 5 -- All FIFO depths are given in words. Allowed values 0,2,3... words.Prefix msg refers to hi-prior data
295
 
296
                );
297
                port (
298
 
299
                        -- Interface: bus_mMaster
300
                        -- HIBI bus interface
301
                        bus_av_in : in std_logic;
302
                        bus_comm_in : in std_logic_vector(4 downto 0);
303
                        bus_data_in : in std_logic_vector(31 downto 0);
304
                        bus_full_in : in std_logic;
305
                        bus_lock_in : in std_logic;
306
 
307
                        -- Interface: bus_mSlave
308
                        bus_av_out : out std_logic;
309
                        bus_comm_out : out std_logic_vector(4 downto 0);
310
                        bus_data_out : out std_logic_vector(31 downto 0);
311
                        bus_full_out : out std_logic;
312
                        bus_lock_out : out std_logic;
313
 
314
                        -- Interface: clocks
315
                        -- HIBI clock input
316
                        agent_clk : in std_logic;
317
                        agent_sync_clk : in std_logic;
318
                        bus_clk : in std_logic;
319
                        bus_sync_clk : in std_logic;
320
 
321
                        -- Interface: ip_mMaster
322
                        -- HIBI IP  mirrored master interface revision 4.
323
                        agent_av_in : in std_logic;
324
                        agent_comm_in : in std_logic_vector(4 downto 0);
325
                        agent_data_in : in std_logic_vector(31 downto 0);
326
                        agent_re_in : in std_logic;
327
                        agent_we_in : in std_logic;
328
 
329
                        -- Interface: ip_mSlave
330
                        -- HIBI IP  mirrored slave interface revision 4.
331
                        agent_av_out : out std_logic;
332
                        agent_comm_out : out std_logic_vector(4 downto 0);
333
                        agent_data_out : out std_logic_vector(31 downto 0);
334
                        agent_empty_out : out std_logic;
335
                        agent_full_out : out std_logic;
336
                        agent_one_d_out : out std_logic;
337
                        agent_one_p_out : out std_logic;
338
 
339
                        -- These ports are not in any interface
340
                        -- debug_out : out std_logic_vector(0 downto 0);
341
 
342
                        -- Interface: rst_n
343
                        rst_n : in std_logic
344
 
345
                );
346
        end component;
347
 
348
        -- You can write vhdl code after this tag and it is saved through the generator.
349
        -- ##KACTUS2_BLACK_BOX_DECLARATIONS_BEGIN##
350
        -- ##KACTUS2_BLACK_BOX_DECLARATIONS_END##
351
        -- Stop writing your code after this tag.
352
 
353
 
354
begin
355
 
356
        -- You can write vhdl code after this tag and it is saved through the generator.
357
        -- ##KACTUS2_BLACK_BOX_ASSIGNMENTS_BEGIN##
358
        -- ##KACTUS2_BLACK_BOX_ASSIGNMENTS_END##
359
        -- Stop writing your code after this tag.
360
 
361
        hibi_orbus_6p_0 : hibi_orbus_6p
362
                port map (
363
                        bus_av_0_in => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveAV,
364
                        bus_av_1_in => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveAV,
365
                        bus_av_2_in => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveAV,
366
                        bus_av_3_in => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveAV,
367
                        bus_av_out => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
368
                        bus_comm_0_in(4 downto 0) => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveCOMM(4 downto 0),
369
                        bus_comm_1_in(4 downto 0) => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveCOMM(4 downto 0),
370
                        bus_comm_2_in(4 downto 0) => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveCOMM(4 downto 0),
371
                        bus_comm_3_in(4 downto 0) => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveCOMM(4 downto 0),
372
                        bus_comm_out(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
373
                        bus_data_0_in(31 downto 0) => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveDATA(31 downto 0),
374
                        bus_data_1_in(31 downto 0) => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveDATA(31 downto 0),
375
                        bus_data_2_in(31 downto 0) => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveDATA(31 downto 0),
376
                        bus_data_3_in(31 downto 0) => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveDATA(31 downto 0),
377
                        bus_data_out(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
378
                        bus_full_0_in => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveFULL,
379
                        bus_full_1_in => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveFULL,
380
                        bus_full_2_in => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveFULL,
381
                        bus_full_3_in => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveFULL,
382
                        bus_full_out => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
383
                        bus_lock_0_in => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveLOCK,
384
                        bus_lock_1_in => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveLOCK,
385
                        bus_lock_2_in => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveLOCK,
386
                        bus_lock_3_in => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveLOCK,
387
                        bus_lock_out => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK
388
                );
389
 
390
        hibi_wrapper_r4_0 : hibi_wrapper_r4
391
                generic map (
392
                        addr_g => ip_mSlave_0_addr_start,
393
                        addr_limit_g => ip_mSlave_0_addr_end
394
                )
395
                port map (
396
                        agent_av_in => agent_av_in,
397
                        agent_av_out => agent_av_out,
398
                        agent_clk => agent_clk,
399
                        agent_comm_in(4 downto 0) => agent_comm_in(4 downto 0),
400
                        agent_comm_out(4 downto 0) => agent_comm_out(4 downto 0),
401
                        agent_data_in(31 downto 0) => agent_data_in(31 downto 0),
402
                        agent_data_out(31 downto 0) => agent_data_out(31 downto 0),
403
                        agent_empty_out => agent_empty_out,
404
                        agent_full_out => agent_full_out,
405
                        agent_one_d_out => agent_one_d_out,
406
                        agent_one_p_out => agent_one_p_out,
407
                        agent_re_in => agent_re_in,
408
                        agent_sync_clk => agent_sync_clk,
409
                        agent_we_in => agent_we_in,
410
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
411
                        bus_av_out => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveAV,
412
                        bus_clk => bus_clk,
413
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
414
                        bus_comm_out(4 downto 0) => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveCOMM(4 downto 0),
415
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
416
                        bus_data_out(31 downto 0) => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveDATA(31 downto 0),
417
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
418
                        bus_full_out => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveFULL,
419
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
420
                        bus_lock_out => hibi_orbus_6p_0_slave_0_to_hibi_wrapper_r4_0_bus_mSlaveLOCK,
421
                        bus_sync_clk => bus_sync_clk,
422
                        rst_n => rst_n
423
                );
424
 
425
        hibi_wrapper_r4_1 : hibi_wrapper_r4
426
                generic map (
427
                        addr_g => ip_mSlave_1_addr_start,
428
                        addr_limit_g => ip_mSlave_1_addr_end
429
                )
430
                port map (
431
                        agent_av_in => agent_av_in_1,
432
                        agent_av_out => agent_av_out_1,
433
                        agent_clk => agent_clk_1,
434
                        agent_comm_in(4 downto 0) => agent_comm_in_1(4 downto 0),
435
                        agent_comm_out(4 downto 0) => agent_comm_out_1(4 downto 0),
436
                        agent_data_in(31 downto 0) => agent_data_in_1(31 downto 0),
437
                        agent_data_out(31 downto 0) => agent_data_out_1(31 downto 0),
438
                        agent_empty_out => agent_empty_out_1,
439
                        agent_full_out => agent_full_out_1,
440
                        agent_one_d_out => agent_one_d_out_1,
441
                        agent_one_p_out => agent_one_p_out_1,
442
                        agent_re_in => agent_re_in_1,
443
                        agent_sync_clk => agent_sync_clk_1,
444
                        agent_we_in => agent_we_in_1,
445
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
446
                        bus_av_out => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveAV,
447
                        bus_clk => bus_clk_1,
448
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
449
                        bus_comm_out(4 downto 0) => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveCOMM(4 downto 0),
450
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
451
                        bus_data_out(31 downto 0) => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveDATA(31 downto 0),
452
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
453
                        bus_full_out => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveFULL,
454
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
455
                        bus_lock_out => hibi_orbus_6p_0_slave_1_to_hibi_wrapper_r4_1_bus_mSlaveLOCK,
456
                        bus_sync_clk => bus_sync_clk_1,
457
                        rst_n => rst_n
458
                );
459
 
460
        hibi_wrapper_r4_2 : hibi_wrapper_r4
461
                generic map (
462
                        addr_g => ip_mSlave_2_addr_start,
463
                        addr_limit_g => ip_mSlave_2_addr_end
464
                )
465
                port map (
466
                        agent_av_in => agent_av_in_2,
467
                        agent_av_out => agent_av_out_2,
468
                        agent_clk => agent_clk_2,
469
                        agent_comm_in(4 downto 0) => agent_comm_in_2(4 downto 0),
470
                        agent_comm_out(4 downto 0) => agent_comm_out_2(4 downto 0),
471
                        agent_data_in(31 downto 0) => agent_data_in_2(31 downto 0),
472
                        agent_data_out(31 downto 0) => agent_data_out_2(31 downto 0),
473
                        agent_empty_out => agent_empty_out_2,
474
                        agent_full_out => agent_full_out_2,
475
                        agent_one_d_out => agent_one_d_out_2,
476
                        agent_one_p_out => agent_one_p_out_2,
477
                        agent_re_in => agent_re_in_2,
478
                        agent_sync_clk => agent_sync_clk_2,
479
                        agent_we_in => agent_we_in_2,
480
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
481
                        bus_av_out => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveAV,
482
                        bus_clk => bus_clk_2,
483
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
484
                        bus_comm_out(4 downto 0) => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveCOMM(4 downto 0),
485
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
486
                        bus_data_out(31 downto 0) => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveDATA(31 downto 0),
487
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
488
                        bus_full_out => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveFULL,
489
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
490
                        bus_lock_out => hibi_orbus_6p_0_slave_2_to_hibi_wrapper_r4_2_bus_mSlaveLOCK,
491
                        bus_sync_clk => bus_sync_clk_2,
492
                        rst_n => rst_n
493
                );
494
 
495
        hibi_wrapper_r4_3 : hibi_wrapper_r4
496
                generic map (
497
                        addr_g => ip_mSlave_3_addr_start,
498
                        addr_limit_g => ip_mSlave_3_addr_end
499
                )
500
                port map (
501
                        agent_av_in => agent_av_in_3,
502
                        agent_av_out => agent_av_out_3,
503
                        agent_clk => agent_clk_3,
504
                        agent_comm_in(4 downto 0) => agent_comm_in_3(4 downto 0),
505
                        agent_comm_out(4 downto 0) => agent_comm_out_3(4 downto 0),
506
                        agent_data_in(31 downto 0) => agent_data_in_3(31 downto 0),
507
                        agent_data_out(31 downto 0) => agent_data_out_3(31 downto 0),
508
                        agent_empty_out => agent_empty_out_3,
509
                        agent_full_out => agent_full_out_3,
510
                        agent_one_d_out => agent_one_d_out_3,
511
                        agent_one_p_out => agent_one_p_out_3,
512
                        agent_re_in => agent_re_in_3,
513
                        agent_sync_clk => agent_sync_clk_3,
514
                        agent_we_in => agent_we_in_3,
515
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
516
                        bus_av_out => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveAV,
517
                        bus_clk => bus_clk_3,
518
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
519
                        bus_comm_out(4 downto 0) => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveCOMM(4 downto 0),
520
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
521
                        bus_data_out(31 downto 0) => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveDATA(31 downto 0),
522
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
523
                        bus_full_out => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveFULL,
524
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
525
                        bus_lock_out => hibi_orbus_6p_0_slave_3_to_hibi_wrapper_r4_3_bus_mSlaveLOCK,
526
                        bus_sync_clk => bus_sync_clk_3,
527
                        rst_n => rst_n
528
                );
529
 
530
        hibi_wrapper_r4_4 : hibi_wrapper_r4
531
                port map (
532
                        agent_av_in => agent_av_in_4,
533
                        agent_av_out => agent_av_out_4,
534
                        agent_clk => agent_clk_4,
535
                        agent_comm_in(4 downto 0) => agent_comm_in_4(4 downto 0),
536
                        agent_comm_out(4 downto 0) => agent_comm_out_4(4 downto 0),
537
                        agent_data_in(31 downto 0) => agent_data_in_4(31 downto 0),
538
                        agent_data_out(31 downto 0) => agent_data_out_4(31 downto 0),
539
                        agent_empty_out => agent_empty_out_4,
540
                        agent_full_out => agent_full_out_4,
541
                        agent_one_d_out => agent_one_d_out_4,
542
                        agent_one_p_out => agent_one_p_out_4,
543
                        agent_re_in => agent_re_in_4,
544
                        agent_sync_clk => agent_sync_clk_4,
545
                        agent_we_in => agent_we_in_4,
546
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
547
                        bus_clk => bus_clk_4,
548
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
549
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
550
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
551
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
552
                        bus_sync_clk => bus_sync_clk_4,
553
                        rst_n => rst_n
554
                );
555
 
556
        hibi_wrapper_r4_5 : hibi_wrapper_r4
557
                port map (
558
                        agent_av_in => agent_av_in_5,
559
                        agent_av_out => agent_av_out_5,
560
                        agent_clk => agent_clk_5,
561
                        agent_comm_in(4 downto 0) => agent_comm_in_5(4 downto 0),
562
                        agent_comm_out(4 downto 0) => agent_comm_out_5(4 downto 0),
563
                        agent_data_in(31 downto 0) => agent_data_in_5(31 downto 0),
564
                        agent_data_out(31 downto 0) => agent_data_out_5(31 downto 0),
565
                        agent_empty_out => agent_empty_out_5,
566
                        agent_full_out => agent_full_out_5,
567
                        agent_one_d_out => agent_one_d_out_5,
568
                        agent_one_p_out => agent_one_p_out_5,
569
                        agent_re_in => agent_re_in_5,
570
                        agent_sync_clk => agent_sync_clk_5,
571
                        agent_we_in => agent_we_in_5,
572
                        bus_av_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterAV,
573
                        bus_clk => bus_clk_5,
574
                        bus_comm_in(4 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterCOMM(4 downto 0),
575
                        bus_data_in(31 downto 0) => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterDATA(31 downto 0),
576
                        bus_full_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterFULL,
577
                        bus_lock_in => hibi_orbus_6p_0_master_to_hibi_wrapper_r4_5_bus_mMasterLOCK,
578
                        bus_sync_clk => bus_sync_clk_5,
579
                        rst_n => rst_n
580
                );
581
 
582
end structural;
583
 

powered by: WebSVN 2.1.0

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