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

Subversion Repositories pcie_ds_dma

[/] [pcie_ds_dma/] [trunk/] [projects/] [sp605_lx45t_wishbone/] [src/] [top/] [sp605_lx45t_wishbone_sopc_wb.vhd] - Blame information for rev 38

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dsmv
----------------------------------------------------------------------------------
2
-- Company:         ;)
3
-- Engineer:        Kuzmi4
4
-- 
5
-- Create Date:     17:40:25 05/21/2010 
6
-- Design Name:     
7
-- Module Name:     pcie_core64_sopc_wb - rtl 
8
-- Project Name:    DS_DMA
9
-- Target Devices:  any
10
-- Tool versions:   any
11
-- Description:     
12
--                  
13
--                  Top-level module for PCIE_CORE64 WB SoPC
14
--                      (System have 32Bit ADDR BUS and 64bit DATA BUS)
15
--                  
16
--                  
17
--                  Memory Map for SoPC (based on WB_CROSS setup):
18
--                      1) TEST_CHECK.WB_CFG_SLAVE:
19
--                          ADDR Range ==> 0x0000_0000 : 0x0000_0FFF ( Valid 1st 256B only, detailed MM at test_check_wb_config_slave.vhd)
20
--                      
21
--                      2) TEST_CHECK.WB_BURST_SLAVE
22
--                          ADDR Range ==> 0x0000_1000 : 0x0000_1FFF (support only Constant-Addr-Burst for 512x64bit cell (full 4KB range), Input ONLY)
23
--                      
24
--                      3) TEST_GEN.WB_CFG_SLAVE
25
--                          ADDR Range ==> 0x0000_2000 : 0x0000_2FFF ( Valid 1st 256B only, detailed MM at test_generate_wb_config_slave.vhd)
26
--                      
27
--                      4) TEST_GEN.WB_BURST_SLAVE
28
--                          ADDR Range ==> 0x0000_3000 : 0x0000_3FFF (support only Constant-Addr-Burst for 512x64bit cell (full 4KB range), Output ONLY)
29
--                  
30
--
31
-- Revision: 
32
-- Revision 0.01 - File Created 
33
--
34
----------------------------------------------------------------------------------
35
library IEEE;
36
use IEEE.STD_LOGIC_1164.ALL;
37
 
38
package sp605_lx45t_wishbone_sopc_wb_pkg is
39
 
40
component sp605_lx45t_wishbone_sopc_wb is
41
generic
42
(
43
 
44
    is_simulation   :   integer     --! 0 - ñèíòåç, 1 - ìîäåëèðîâàíèå 
45
);
46
port
47
(
48
    -- 
49
    -- PCIE x1 bus:
50
    --  data
51
    ov_pci_exp_txp  : out std_logic_vector(0 downto 0);
52
    ov_pci_exp_txn  : out std_logic_vector(0 downto 0);
53
    iv_pci_exp_rxp  : in std_logic_vector(0 downto 0);
54
    iv_pci_exp_rxn  : in std_logic_vector(0 downto 0);
55
    --  sys_con
56
    i_sys_clk       : in std_logic;
57
    i_sys_reset_n   : in std_logic;
58
    --
59
    -- GPIO_LED outputs:
60
    ov_gpio_led     : out std_logic_vector(3 downto 0)
61
 
62
);
63
end component sp605_lx45t_wishbone_sopc_wb;
64
 
65
end package sp605_lx45t_wishbone_sopc_wb_pkg;
66
----------------------------------------------------------------------------------
67
library IEEE;
68
use IEEE.STD_LOGIC_1164.ALL;
69
use IEEE.STD_LOGIC_ARITH.ALL;
70
use IEEE.STD_LOGIC_UNSIGNED.ALL;
71
 
72
library work;
73
use work.wb_conmax_top_pkg.all;
74
use work.pcie_core64_wishbone_pkg.all;
75
use work.block_test_check_wb_pkg.all;
76
use work.block_test_generate_wb_pkg.all;
77
 
78
 
79
entity sp605_lx45t_wishbone_sopc_wb is
80
generic
81
(
82
 
83
    is_simulation   :   integer     --! 0 - ñèíòåç, 1 - ìîäåëèðîâàíèå 
84
);
85
port
86
(
87
    -- 
88
    -- PCIE x1 bus:
89
    --  data
90
    ov_pci_exp_txp  : out std_logic_vector(0 downto 0);
91
    ov_pci_exp_txn  : out std_logic_vector(0 downto 0);
92
    iv_pci_exp_rxp  : in std_logic_vector(0 downto 0);
93
    iv_pci_exp_rxn  : in std_logic_vector(0 downto 0);
94
    --  sys_con
95
    i_sys_clk       : in std_logic;
96
    i_sys_reset_n   : in std_logic;
97
    --
98
    -- GPIO_LED outputs:
99
    ov_gpio_led     : out std_logic_vector(3 downto 0)
100
 
101
);
102
end sp605_lx45t_wishbone_sopc_wb;
103
 
104
architecture rtl of sp605_lx45t_wishbone_sopc_wb is
105
----------------------------------------------------------------------------------
106
--
107
-- Declare PCIE_CORE64_WB stuff:
108
signal  sv_control_points   :   std_logic_vector( 7 downto 0 );
109
signal  sv_pcie_lstatus     :   std_logic_vector( 15 downto 0 );
110
signal  s_pcie_link_up_n    :   std_logic;
111
-------------------------------------------------------------------------------
112
--
113
-- Declare WB_CROSS stuff:
114
signal  st_master_port_data_in  :   wb_master_port_data;
115
signal  st_master_port_data_out :   wb_master_port_data;
116
signal  st_master_port_addr     :   wb_master_port_addr;
117
signal  st_master_port_sel      :   wb_master_port_sel;
118
signal  st_master_port_we       :   wb_master_port_we;
119
signal  st_master_port_cyc      :   wb_master_port_cyc;
120
signal  st_master_port_stb      :   wb_master_port_stb;
121
signal  st_master_port_ack      :   wb_master_port_ack;
122
signal  st_master_port_err      :   wb_master_port_err;
123
signal  st_master_port_rty      :   wb_master_port_rty;
124
signal  st_master_port_cti      :   wb_master_port_cti;
125
signal  st_master_port_bte      :   wb_master_port_bte;
126
 
127
signal  st_slave_port_data_in   :   wb_slave_port_data;
128
signal  st_slave_port_data_out  :   wb_slave_port_data;
129
signal  st_slave_port_addr      :   wb_slave_port_addr;
130
signal  st_slave_port_sel       :   wb_slave_port_sel;
131
signal  st_slave_port_we        :   wb_slave_port_we;
132
signal  st_slave_port_cyc       :   wb_slave_port_cyc;
133
signal  st_slave_port_stb       :   wb_slave_port_stb;
134
signal  st_slave_port_ack       :   wb_slave_port_ack;
135
signal  st_slave_port_err       :   wb_slave_port_err;
136
signal  st_slave_port_rty       :   wb_slave_port_rty;
137
signal  st_slave_port_cti       :   wb_slave_port_cti;
138
signal  st_slave_port_bte       :   wb_slave_port_bte;
139
-------------------------------------------------------------------------------
140
--
141
-- Declare Module Output Req stuff:
142
signal  sv_pcie_line_num        :   std_logic_vector(2 downto 0);
143
-------------------------------------------------------------------------------
144
--
145
-- Declare WB stuff 
146
--  SYS_CON
147
signal  s_wb_clk                :   std_logic;
148
signal  s_wb_rst                :   std_logic;
149
--  PCIE_CORE64 wb 
150
signal  sv_wbm_addr_pcie_core64_wb      :   std_logic_vector(p_WB_CROSS_ADDR_W-1 downto 0);
151
signal  sv_wbm_data_out_pcie_core64_wb  :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
152
signal  sv_wbm_sel_pcie_core64_wb       :   std_logic_vector(p_WB_CROSS_DATA_W/8-1 downto 0);
153
signal  s_wbm_we_pcie_core64_wb         :   std_logic;
154
signal  s_wbm_cyc_pcie_core64_wb        :   std_logic;
155
signal  s_wbm_stb_pcie_core64_wb        :   std_logic;
156
signal  sv_wbm_cti_pcie_core64_wb       :   std_logic_vector(2 downto 0);
157
signal  sv_wbm_bte_pcie_core64_wb       :   std_logic_vector(1 downto 0);
158
signal  sv_wbm_data_in_pcie_core64_wb   :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
159
signal  s_wbm_ack_pcie_core64_wb        :   std_logic;
160
signal  s_wbm_err_pcie_core64_wb        :   std_logic;
161
signal  s_wbm_rty_pcie_core64_wb        :   std_logic;
162
signal  sv_wbm_dmar_irq_pcie_core64_wb  :   std_logic_vector(1 downto 0);
163
--  TEST_CHECK.WB_CFG_SLAVE
164
signal  sv_wbs_cfg_addr_test_check      :   std_logic_vector(p_WB_CROSS_ADDR_W-1 downto 0);
165
signal  sv_wbs_cfg_data_in_test_check   :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
166
signal  sv_wbs_cfg_sel_test_check       :   std_logic_vector(p_WB_CROSS_DATA_W/8-1 downto 0);
167
signal  s_wbs_cfg_we_test_check         :   std_logic;
168
signal  s_wbs_cfg_cyc_test_check        :   std_logic;
169
signal  s_wbs_cfg_stb_test_check        :   std_logic;
170
signal  sv_wbs_cfg_cti_test_check       :   std_logic_vector(2 downto 0);
171
signal  sv_wbs_cfg_bte_test_check       :   std_logic_vector(1 downto 0);
172
signal  sv_wbs_cfg_data_out_test_check  :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
173
signal  s_wbs_cfg_ack_test_check        :   std_logic;
174
signal  s_wbs_cfg_err_test_check        :   std_logic;
175
signal  s_wbs_cfg_rty_test_check        :   std_logic;
176
signal  s_wbs_irq_dmar_test_check       :   std_logic;  -- TEST_CHECK WB DMAR IRQ
177
--  TEST_CHECK.WB_BURST_SLAVE
178
signal  sv_wbs_burst_addr_test_check    :   std_logic_vector(p_WB_CROSS_ADDR_W-1 downto 0);
179
signal  sv_wbs_burst_data_in_test_check :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
180
signal  sv_wbs_burst_sel_test_check     :   std_logic_vector(p_WB_CROSS_DATA_W/8-1 downto 0);
181
signal  s_wbs_burst_we_test_check       :   std_logic;
182
signal  s_wbs_burst_cyc_test_check      :   std_logic;
183
signal  s_wbs_burst_stb_test_check      :   std_logic;
184
signal  sv_wbs_burst_cti_test_check     :   std_logic_vector(2 downto 0);
185
signal  sv_wbs_burst_bte_test_check     :   std_logic_vector(1 downto 0);
186
signal  s_wbs_burst_ack_test_check      :   std_logic;
187
signal  s_wbs_burst_err_test_check      :   std_logic;
188
signal  s_wbs_burst_rty_test_check      :   std_logic;
189
--  TEST_GEN.WB_CFG_SLAVE
190
signal  sv_wbs_cfg_addr_test_gen        :   std_logic_vector(p_WB_CROSS_ADDR_W-1 downto 0);
191
signal  sv_wbs_cfg_data_in_test_gen     :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
192
signal  sv_wbs_cfg_sel_test_gen         :   std_logic_vector(p_WB_CROSS_DATA_W/8-1 downto 0);
193
signal  s_wbs_cfg_we_test_gen           :   std_logic;
194
signal  s_wbs_cfg_cyc_test_gen          :   std_logic;
195
signal  s_wbs_cfg_stb_test_gen          :   std_logic;
196
signal  sv_wbs_cfg_cti_test_gen         :   std_logic_vector(2 downto 0);
197
signal  sv_wbs_cfg_bte_test_gen         :   std_logic_vector(1 downto 0);
198
signal  sv_wbs_cfg_data_out_test_gen    :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
199
signal  s_wbs_cfg_ack_test_gen          :   std_logic;
200
signal  s_wbs_cfg_err_test_gen          :   std_logic;
201
signal  s_wbs_cfg_rty_test_gen          :   std_logic;
202
signal  s_wbs_irq_dmar_test_gen         :   std_logic;  -- TEST_GEN WB DMAR IRQ
203
--  TEST_GEN.WB_BURST_SLAVE
204
signal  sv_wbs_burst_addr_test_gen      :   std_logic_vector(p_WB_CROSS_ADDR_W-1 downto 0);
205
signal  sv_wbs_burst_data_out_test_gen  :   std_logic_vector(p_WB_CROSS_DATA_W-1 downto 0);
206
signal  sv_wbs_burst_sel_test_gen       :   std_logic_vector(p_WB_CROSS_DATA_W/8-1 downto 0);
207
signal  s_wbs_burst_we_test_gen         :   std_logic;
208
signal  s_wbs_burst_cyc_test_gen        :   std_logic;
209
signal  s_wbs_burst_stb_test_gen        :   std_logic;
210
signal  sv_wbs_burst_cti_test_gen       :   std_logic_vector(2 downto 0);
211
signal  sv_wbs_burst_bte_test_gen       :   std_logic_vector(1 downto 0);
212
signal  s_wbs_burst_ack_test_gen        :   std_logic;
213
signal  s_wbs_burst_err_test_gen        :   std_logic;
214
signal  s_wbs_burst_rty_test_gen        :   std_logic;
215
----------------------------------------------------------------------------------
216
begin
217
-------------------------------------------------------------------------------
218
-- 
219
-- Instantiate PCIE_CORE64_WB module (provide main PCIE finctionality):
220
-- 
221
PCIE_CORE64_WB  :   pcie_core64_wishbone
222
generic map
223
(
224
    Device_ID       => x"0000",         -- èäåíòèôèêàòîð ìîäóëÿ
225
    Revision        => x"0000",         -- âåðñèÿ ìîäóëÿ
226
    PLD_VER         => x"0000",         -- âåðñèÿ ÏËÈÑ
227
 
228
    is_simulation   => is_simulation    --! 0 - ñèíòåç, 1 - ìîäåëèðîâàíèå 
229
)
230
port map
231
(
232
    ---- PCI-Express ----
233
    txp             => ov_pci_exp_txp,
234
    txn             => ov_pci_exp_txn,
235
 
236
    rxp             => iv_pci_exp_rxp,
237
    rxn             => iv_pci_exp_rxn,
238
 
239
    mgt125          => i_sys_clk,           -- òàêòîâàÿ ÷àñòîòà 125 MHz îò PCI_Express
240
 
241
    perst           => i_sys_reset_n,       -- 0 - ñáðîñ 
242
 
243
    px              => sv_control_points,   --! êîíòðîëüíûå òî÷êè 
244
 
245
    pcie_lstatus    => sv_pcie_lstatus,     -- ðåãèñòð LSTATUS
246
    pcie_link_up    => s_pcie_link_up_n,    -- 0 - çàâåðøåíà èíèöèàëèçàöèÿ PCI-Express
247
 
248
    ---- Wishbone SYS_CON -----
249
    o_wb_clk        => s_wb_clk,
250
    o_wb_rst        => s_wb_rst,
251
    ---- Wishbone BUS -----
252
    ov_wbm_addr     => sv_wbm_addr_pcie_core64_wb,
253
    ov_wbm_data     => sv_wbm_data_out_pcie_core64_wb,
254
    ov_wbm_sel      => sv_wbm_sel_pcie_core64_wb,
255
    o_wbm_we        => s_wbm_we_pcie_core64_wb,
256
    o_wbm_cyc       => s_wbm_cyc_pcie_core64_wb,
257
    o_wbm_stb       => s_wbm_stb_pcie_core64_wb,
258
    ov_wbm_cti      => sv_wbm_cti_pcie_core64_wb,       -- Cycle Type Identifier Address Tag
259
    ov_wbm_bte      => sv_wbm_bte_pcie_core64_wb,       -- Burst Type Extension Address Tag
260
 
261
    iv_wbm_data     => sv_wbm_data_in_pcie_core64_wb,
262
    i_wbm_ack       => s_wbm_ack_pcie_core64_wb,
263
    i_wbm_err       => s_wbm_err_pcie_core64_wb,        -- error input - abnormal cycle termination
264
    i_wbm_rty       => s_wbm_rty_pcie_core64_wb,        -- retry input - interface is not ready
265
 
266
    i_wdm_irq_0     => '0',                             -- NC for now
267
    iv_wbm_irq_dmar =>  sv_wbm_dmar_irq_pcie_core64_wb  -- 
268
 
269
);
270
--  Construct DMAR WB IR Input:
271 38 dsmv
sv_wbm_dmar_irq_pcie_core64_wb <= s_wbs_irq_dmar_test_gen & s_wbs_irq_dmar_test_check; -- Bit#1 - TEST_GEN, Bit#0 - TEST_CHECK
272 2 dsmv
-------------------------------------------------------------------------------
273
--
274
-- Instantiate TEST_CHECK (provide check of input data):
275
--
276
TEST_CHECK  :   block_test_check_wb
277
port map
278
(
279
    --
280
    -- SYS_CON
281
    i_clk => s_wb_clk,
282
    i_rst => s_wb_rst,
283
    --
284
    -- WB CFG SLAVE IF
285
    iv_wbs_cfg_addr     => sv_wbs_cfg_addr_test_check( 7 downto 0), -- Route only req addr wires: 256B ADDR Range
286
    iv_wbs_cfg_data     => sv_wbs_cfg_data_in_test_check,
287
    iv_wbs_cfg_sel      => sv_wbs_cfg_sel_test_check,
288
    i_wbs_cfg_we        => s_wbs_cfg_we_test_check,
289
    i_wbs_cfg_cyc       => s_wbs_cfg_cyc_test_check,
290
    i_wbs_cfg_stb       => s_wbs_cfg_stb_test_check,
291
    iv_wbs_cfg_cti      => sv_wbs_cfg_cti_test_check,
292
    iv_wbs_cfg_bte      => sv_wbs_cfg_bte_test_check,
293
 
294
    ov_wbs_cfg_data     => sv_wbs_cfg_data_out_test_check,
295
    o_wbs_cfg_ack       => s_wbs_cfg_ack_test_check,
296
    o_wbs_cfg_err       => s_wbs_cfg_err_test_check,
297
    o_wbs_cfg_rty       => s_wbs_cfg_rty_test_check,
298
    --
299
    -- WB BURST SLAVE IF (WRITE-ONLY IF)
300
    iv_wbs_burst_addr   => sv_wbs_burst_addr_test_check( 11 downto 0),  -- Route only req addr wires: 4KB ADDR Range
301
    iv_wbs_burst_data   => sv_wbs_burst_data_in_test_check,
302
    iv_wbs_burst_sel    => sv_wbs_burst_sel_test_check,
303
    i_wbs_burst_we      => s_wbs_burst_we_test_check,
304
    i_wbs_burst_cyc     => s_wbs_burst_cyc_test_check,
305
    i_wbs_burst_stb     => s_wbs_burst_stb_test_check,
306
    iv_wbs_burst_cti    => sv_wbs_burst_cti_test_check,
307
    iv_wbs_burst_bte    => sv_wbs_burst_bte_test_check,
308
 
309
    o_wbs_burst_ack     => s_wbs_burst_ack_test_check,
310
    o_wbs_burst_err     => s_wbs_burst_err_test_check,
311
    o_wbs_burst_rty     => s_wbs_burst_rty_test_check,
312
    --
313
    -- WB IRQ lines
314
    o_wbs_irq_0         => OPEN,                        -- NC for now
315
    o_wbs_irq_dmar      => s_wbs_irq_dmar_test_check    -- 
316
);
317
-------------------------------------------------------------------------------
318
--
319
-- Instantiate TEST_GEN (provide generation of test data):
320
--
321
TEST_GEN    :   block_test_generate_wb
322
port map
323
(
324
    --
325
    -- SYS_CON
326
    i_clk => s_wb_clk,
327
    i_rst => s_wb_rst,
328
    --
329
    -- WB CFG SLAVE IF
330
    iv_wbs_cfg_addr     => sv_wbs_cfg_addr_test_gen( 7 downto 0), -- Route only req addr wires: 256B ADDR Range
331
    iv_wbs_cfg_data     => sv_wbs_cfg_data_in_test_gen,
332
    iv_wbs_cfg_sel      => sv_wbs_cfg_sel_test_gen,
333
    i_wbs_cfg_we        => s_wbs_cfg_we_test_gen,
334
    i_wbs_cfg_cyc       => s_wbs_cfg_cyc_test_gen,
335
    i_wbs_cfg_stb       => s_wbs_cfg_stb_test_gen,
336
    iv_wbs_cfg_cti      => sv_wbs_cfg_cti_test_gen,
337
    iv_wbs_cfg_bte      => sv_wbs_cfg_bte_test_gen,
338
 
339
    ov_wbs_cfg_data     => sv_wbs_cfg_data_out_test_gen,
340
    o_wbs_cfg_ack       => s_wbs_cfg_ack_test_gen,
341
    o_wbs_cfg_err       => s_wbs_cfg_err_test_gen,
342
    o_wbs_cfg_rty       => s_wbs_cfg_rty_test_gen,
343
    --
344
    -- WB BURST SLAVE IF (READ-ONLY IF)
345
    iv_wbs_burst_addr   => sv_wbs_burst_addr_test_gen( 11 downto 0),  -- Route only req addr wires: 4KB ADDR Range
346
    iv_wbs_burst_sel    => sv_wbs_burst_sel_test_gen,
347
    i_wbs_burst_we      => s_wbs_burst_we_test_gen,
348
    i_wbs_burst_cyc     => s_wbs_burst_cyc_test_gen,
349
    i_wbs_burst_stb     => s_wbs_burst_stb_test_gen,
350
    iv_wbs_burst_cti    => sv_wbs_burst_cti_test_gen,
351
    iv_wbs_burst_bte    => sv_wbs_burst_bte_test_gen,
352
 
353
    ov_wbs_burst_data   => sv_wbs_burst_data_out_test_gen,
354
    o_wbs_burst_ack     => s_wbs_burst_ack_test_gen,
355
    o_wbs_burst_err     => s_wbs_burst_err_test_gen,
356
    o_wbs_burst_rty     => s_wbs_burst_rty_test_gen,
357
    --
358
    -- WB IRQ lines
359
    o_wbs_irq_0         => OPEN,                    -- NC for now
360
    o_wbs_irq_dmar      => s_wbs_irq_dmar_test_gen  -- 
361
);
362
-------------------------------------------------------------------------------
363
--
364
-- Instantiate WB_CROSS
365
--  ==> MOST HEAVY PART of DESIGN (from port-quantity point of view)
366
--
367
WB_CROSS    :   wb_conmax_top
368
generic map
369
(
370
    dw  =>  p_WB_CROSS_DATA_W, -- WB_DATA_WIDTH==64bit (defined at wb_conmax_top_pkg.vhd)
371
    aw  =>  p_WB_CROSS_ADDR_W  -- WB_ADDR_WIDTH==32bit (defined at wb_conmax_top_pkg.vhd)
372
)
373
port map
374
(
375
    --
376
    -- SYS_CON
377
    clk_i => s_wb_clk,
378
    rst_i => s_wb_rst,
379
    --
380
    -- Master 0 Interface
381
    m0_data_i   => st_master_port_data_in(0),
382
    m0_data_o   => st_master_port_data_out(0),
383
    m0_addr_i   => st_master_port_addr(0),
384
    m0_sel_i    => st_master_port_sel(0),
385
    m0_we_i     => st_master_port_we(0),
386
    m0_cyc_i    => st_master_port_cyc(0),
387
    m0_stb_i    => st_master_port_stb(0),
388
    m0_ack_o    => st_master_port_ack(0),
389
    m0_err_o    => st_master_port_err(0),
390
    m0_rty_o    => st_master_port_rty(0),
391
    m0_cti_i    => st_master_port_cti(0),
392
    m0_bte_i    => st_master_port_bte(0),
393
    --
394
    -- Master 1 Interface
395
    m1_data_i   => st_master_port_data_in(1),
396
    m1_data_o   => st_master_port_data_out(1),
397
    m1_addr_i   => st_master_port_addr(1),
398
    m1_sel_i    => st_master_port_sel(1),
399
    m1_we_i     => st_master_port_we(1),
400
    m1_cyc_i    => st_master_port_cyc(1),
401
    m1_stb_i    => st_master_port_stb(1),
402
    m1_ack_o    => st_master_port_ack(1),
403
    m1_err_o    => st_master_port_err(1),
404
    m1_rty_o    => st_master_port_rty(1),
405
    m1_cti_i    => st_master_port_cti(1),
406
    m1_bte_i    => st_master_port_bte(1),
407
    --
408
    -- Master 2 Interface
409
    m2_data_i   => st_master_port_data_in(2),
410
    m2_data_o   => st_master_port_data_out(2),
411
    m2_addr_i   => st_master_port_addr(2),
412
    m2_sel_i    => st_master_port_sel(2),
413
    m2_we_i     => st_master_port_we(2),
414
    m2_cyc_i    => st_master_port_cyc(2),
415
    m2_stb_i    => st_master_port_stb(2),
416
    m2_ack_o    => st_master_port_ack(2),
417
    m2_err_o    => st_master_port_err(2),
418
    m2_rty_o    => st_master_port_rty(2),
419
    m2_cti_i    => st_master_port_cti(2),
420
    m2_bte_i    => st_master_port_bte(2),
421
    --
422
    -- Master 3 Interface
423
    m3_data_i   => st_master_port_data_in(3),
424
    m3_data_o   => st_master_port_data_out(3),
425
    m3_addr_i   => st_master_port_addr(3),
426
    m3_sel_i    => st_master_port_sel(3),
427
    m3_we_i     => st_master_port_we(3),
428
    m3_cyc_i    => st_master_port_cyc(3),
429
    m3_stb_i    => st_master_port_stb(3),
430
    m3_ack_o    => st_master_port_ack(3),
431
    m3_err_o    => st_master_port_err(3),
432
    m3_rty_o    => st_master_port_rty(3),
433
    m3_cti_i    => st_master_port_cti(3),
434
    m3_bte_i    => st_master_port_bte(3),
435
    --
436
    -- Master 4 Interface
437
    m4_data_i   => st_master_port_data_in(4),
438
    m4_data_o   => st_master_port_data_out(4),
439
    m4_addr_i   => st_master_port_addr(4),
440
    m4_sel_i    => st_master_port_sel(4),
441
    m4_we_i     => st_master_port_we(4),
442
    m4_cyc_i    => st_master_port_cyc(4),
443
    m4_stb_i    => st_master_port_stb(4),
444
    m4_ack_o    => st_master_port_ack(4),
445
    m4_err_o    => st_master_port_err(4),
446
    m4_rty_o    => st_master_port_rty(4),
447
    m4_cti_i    => st_master_port_cti(4),
448
    m4_bte_i    => st_master_port_bte(4),
449
    --
450
    -- Master 5 Interface
451
    m5_data_i   => st_master_port_data_in(5),
452
    m5_data_o   => st_master_port_data_out(5),
453
    m5_addr_i   => st_master_port_addr(5),
454
    m5_sel_i    => st_master_port_sel(5),
455
    m5_we_i     => st_master_port_we(5),
456
    m5_cyc_i    => st_master_port_cyc(5),
457
    m5_stb_i    => st_master_port_stb(5),
458
    m5_ack_o    => st_master_port_ack(5),
459
    m5_err_o    => st_master_port_err(5),
460
    m5_rty_o    => st_master_port_rty(5),
461
    m5_cti_i    => st_master_port_cti(5),
462
    m5_bte_i    => st_master_port_bte(5),
463
    --
464
    -- Master 6 Interface
465
    m6_data_i   => st_master_port_data_in(6),
466
    m6_data_o   => st_master_port_data_out(6),
467
    m6_addr_i   => st_master_port_addr(6),
468
    m6_sel_i    => st_master_port_sel(6),
469
    m6_we_i     => st_master_port_we(6),
470
    m6_cyc_i    => st_master_port_cyc(6),
471
    m6_stb_i    => st_master_port_stb(6),
472
    m6_ack_o    => st_master_port_ack(6),
473
    m6_err_o    => st_master_port_err(6),
474
    m6_rty_o    => st_master_port_rty(6),
475
    m6_cti_i    => st_master_port_cti(6),
476
    m6_bte_i    => st_master_port_bte(6),
477
    --
478
    -- Master 7 Interface
479
    m7_data_i   => st_master_port_data_in(7),
480
    m7_data_o   => st_master_port_data_out(7),
481
    m7_addr_i   => st_master_port_addr(7),
482
    m7_sel_i    => st_master_port_sel(7),
483
    m7_we_i     => st_master_port_we(7),
484
    m7_cyc_i    => st_master_port_cyc(7),
485
    m7_stb_i    => st_master_port_stb(7),
486
    m7_ack_o    => st_master_port_ack(7),
487
    m7_err_o    => st_master_port_err(7),
488
    m7_rty_o    => st_master_port_rty(7),
489
    m7_cti_i    => st_master_port_cti(7),
490
    m7_bte_i    => st_master_port_bte(7),
491
    --
492
    --
493
    -- Slave 0 Interface
494
    s0_data_i   => st_slave_port_data_in(0),
495
    s0_data_o   => st_slave_port_data_out(0),
496
    s0_addr_o   => st_slave_port_addr(0),
497
    s0_sel_o    => st_slave_port_sel(0),
498
    s0_we_o     => st_slave_port_we(0),
499
    s0_cyc_o    => st_slave_port_cyc(0),
500
    s0_stb_o    => st_slave_port_stb(0),
501
    s0_ack_i    => st_slave_port_ack(0),
502
    s0_err_i    => st_slave_port_err(0),
503
    s0_rty_i    => st_slave_port_rty(0),
504
    s0_cti_o    => st_slave_port_cti(0),
505
    s0_bte_o    => st_slave_port_bte(0),
506
    --
507
    -- Slave 1 Interface
508
    s1_data_i   => st_slave_port_data_in(1),
509
    s1_data_o   => st_slave_port_data_out(1),
510
    s1_addr_o   => st_slave_port_addr(1),
511
    s1_sel_o    => st_slave_port_sel(1),
512
    s1_we_o     => st_slave_port_we(1),
513
    s1_cyc_o    => st_slave_port_cyc(1),
514
    s1_stb_o    => st_slave_port_stb(1),
515
    s1_ack_i    => st_slave_port_ack(1),
516
    s1_err_i    => st_slave_port_err(1),
517
    s1_rty_i    => st_slave_port_rty(1),
518
    s1_cti_o    => st_slave_port_cti(1),
519
    s1_bte_o    => st_slave_port_bte(1),
520
    --
521
    -- Slave 2 Interface
522
    s2_data_i   => st_slave_port_data_in(2),
523
    s2_data_o   => st_slave_port_data_out(2),
524
    s2_addr_o   => st_slave_port_addr(2),
525
    s2_sel_o    => st_slave_port_sel(2),
526
    s2_we_o     => st_slave_port_we(2),
527
    s2_cyc_o    => st_slave_port_cyc(2),
528
    s2_stb_o    => st_slave_port_stb(2),
529
    s2_ack_i    => st_slave_port_ack(2),
530
    s2_err_i    => st_slave_port_err(2),
531
    s2_rty_i    => st_slave_port_rty(2),
532
    s2_cti_o    => st_slave_port_cti(2),
533
    s2_bte_o    => st_slave_port_bte(2),
534
    --
535
    -- Slave 3 Interface
536
    s3_data_i   => st_slave_port_data_in(3),
537
    s3_data_o   => st_slave_port_data_out(3),
538
    s3_addr_o   => st_slave_port_addr(3),
539
    s3_sel_o    => st_slave_port_sel(3),
540
    s3_we_o     => st_slave_port_we(3),
541
    s3_cyc_o    => st_slave_port_cyc(3),
542
    s3_stb_o    => st_slave_port_stb(3),
543
    s3_ack_i    => st_slave_port_ack(3),
544
    s3_err_i    => st_slave_port_err(3),
545
    s3_rty_i    => st_slave_port_rty(3),
546
    s3_cti_o    => st_slave_port_cti(3),
547
    s3_bte_o    => st_slave_port_bte(3),
548
    -- 
549
    -- Slave 4 Interface
550
    s4_data_i   => st_slave_port_data_in(4),
551
    s4_data_o   => st_slave_port_data_out(4),
552
    s4_addr_o   => st_slave_port_addr(4),
553
    s4_sel_o    => st_slave_port_sel(4),
554
    s4_we_o     => st_slave_port_we(4),
555
    s4_cyc_o    => st_slave_port_cyc(4),
556
    s4_stb_o    => st_slave_port_stb(4),
557
    s4_ack_i    => st_slave_port_ack(4),
558
    s4_err_i    => st_slave_port_err(4),
559
    s4_rty_i    => st_slave_port_rty(4),
560
    s4_cti_o    => st_slave_port_cti(4),
561
    s4_bte_o    => st_slave_port_bte(4),
562
    -- 
563
    -- Slave 5 Interface
564
    s5_data_i   => st_slave_port_data_in(5),
565
    s5_data_o   => st_slave_port_data_out(5),
566
    s5_addr_o   => st_slave_port_addr(5),
567
    s5_sel_o    => st_slave_port_sel(5),
568
    s5_we_o     => st_slave_port_we(5),
569
    s5_cyc_o    => st_slave_port_cyc(5),
570
    s5_stb_o    => st_slave_port_stb(5),
571
    s5_ack_i    => st_slave_port_ack(5),
572
    s5_err_i    => st_slave_port_err(5),
573
    s5_rty_i    => st_slave_port_rty(5),
574
    s5_cti_o    => st_slave_port_cti(5),
575
    s5_bte_o    => st_slave_port_bte(5),
576
    --
577
    -- Slave 6 Interface
578
    s6_data_i   => st_slave_port_data_in(6),
579
    s6_data_o   => st_slave_port_data_out(6),
580
    s6_addr_o   => st_slave_port_addr(6),
581
    s6_sel_o    => st_slave_port_sel(6),
582
    s6_we_o     => st_slave_port_we(6),
583
    s6_cyc_o    => st_slave_port_cyc(6),
584
    s6_stb_o    => st_slave_port_stb(6),
585
    s6_ack_i    => st_slave_port_ack(6),
586
    s6_err_i    => st_slave_port_err(6),
587
    s6_rty_i    => st_slave_port_rty(6),
588
    s6_cti_o    => st_slave_port_cti(6),
589
    s6_bte_o    => st_slave_port_bte(6),
590
    --
591
    -- Slave 7 Interface
592
    s7_data_i   => st_slave_port_data_in(7),
593
    s7_data_o   => st_slave_port_data_out(7),
594
    s7_addr_o   => st_slave_port_addr(7),
595
    s7_sel_o    => st_slave_port_sel(7),
596
    s7_we_o     => st_slave_port_we(7),
597
    s7_cyc_o    => st_slave_port_cyc(7),
598
    s7_stb_o    => st_slave_port_stb(7),
599
    s7_ack_i    => st_slave_port_ack(7),
600
    s7_err_i    => st_slave_port_err(7),
601
    s7_rty_i    => st_slave_port_rty(7),
602
    s7_cti_o    => st_slave_port_cti(7),
603
    s7_bte_o    => st_slave_port_bte(7),
604
    --
605
    -- Slave 8 Interface
606
    s8_data_i   => st_slave_port_data_in(8),
607
    s8_data_o   => st_slave_port_data_out(8),
608
    s8_addr_o   => st_slave_port_addr(8),
609
    s8_sel_o    => st_slave_port_sel(8),
610
    s8_we_o     => st_slave_port_we(8),
611
    s8_cyc_o    => st_slave_port_cyc(8),
612
    s8_stb_o    => st_slave_port_stb(8),
613
    s8_ack_i    => st_slave_port_ack(8),
614
    s8_err_i    => st_slave_port_err(8),
615
    s8_rty_i    => st_slave_port_rty(8),
616
    s8_cti_o    => st_slave_port_cti(8),
617
    s8_bte_o    => st_slave_port_bte(8),
618
    -- 
619
    -- Slave 9 Interface
620
    s9_data_i   => st_slave_port_data_in(9),
621
    s9_data_o   => st_slave_port_data_out(9),
622
    s9_addr_o   => st_slave_port_addr(9),
623
    s9_sel_o    => st_slave_port_sel(9),
624
    s9_we_o     => st_slave_port_we(9),
625
    s9_cyc_o    => st_slave_port_cyc(9),
626
    s9_stb_o    => st_slave_port_stb(9),
627
    s9_ack_i    => st_slave_port_ack(9),
628
    s9_err_i    => st_slave_port_err(9),
629
    s9_rty_i    => st_slave_port_rty(9),
630
    s9_cti_o    => st_slave_port_cti(9),
631
    s9_bte_o    => st_slave_port_bte(9),
632
    -- 
633
    -- Slave 10 Interface
634
    s10_data_i  => st_slave_port_data_in(10),
635
    s10_data_o  => st_slave_port_data_out(10),
636
    s10_addr_o  => st_slave_port_addr(10),
637
    s10_sel_o   => st_slave_port_sel(10),
638
    s10_we_o    => st_slave_port_we(10),
639
    s10_cyc_o   => st_slave_port_cyc(10),
640
    s10_stb_o   => st_slave_port_stb(10),
641
    s10_ack_i   => st_slave_port_ack(10),
642
    s10_err_i   => st_slave_port_err(10),
643
    s10_rty_i   => st_slave_port_rty(10),
644
    s10_cti_o   => st_slave_port_cti(10),
645
    s10_bte_o   => st_slave_port_bte(10),
646
    -- 
647
    -- Slave 11 Interface
648
    s11_data_i  => st_slave_port_data_in(11),
649
    s11_data_o  => st_slave_port_data_out(11),
650
    s11_addr_o  => st_slave_port_addr(11),
651
    s11_sel_o   => st_slave_port_sel(11),
652
    s11_we_o    => st_slave_port_we(11),
653
    s11_cyc_o   => st_slave_port_cyc(11),
654
    s11_stb_o   => st_slave_port_stb(11),
655
    s11_ack_i   => st_slave_port_ack(11),
656
    s11_err_i   => st_slave_port_err(11),
657
    s11_rty_i   => st_slave_port_rty(11),
658
    s11_cti_o   => st_slave_port_cti(11),
659
    s11_bte_o   => st_slave_port_bte(11),
660
    -- 
661
    -- Slave 12 Interface
662
    s12_data_i  => st_slave_port_data_in(12),
663
    s12_data_o  => st_slave_port_data_out(12),
664
    s12_addr_o  => st_slave_port_addr(12),
665
    s12_sel_o   => st_slave_port_sel(12),
666
    s12_we_o    => st_slave_port_we(12),
667
    s12_cyc_o   => st_slave_port_cyc(12),
668
    s12_stb_o   => st_slave_port_stb(12),
669
    s12_ack_i   => st_slave_port_ack(12),
670
    s12_err_i   => st_slave_port_err(12),
671
    s12_rty_i   => st_slave_port_rty(12),
672
    s12_cti_o   => st_slave_port_cti(12),
673
    s12_bte_o   => st_slave_port_bte(12),
674
    -- 
675
    -- Slave 13 Interface
676
    s13_data_i  => st_slave_port_data_in(13),
677
    s13_data_o  => st_slave_port_data_out(13),
678
    s13_addr_o  => st_slave_port_addr(13),
679
    s13_sel_o   => st_slave_port_sel(13),
680
    s13_we_o    => st_slave_port_we(13),
681
    s13_cyc_o   => st_slave_port_cyc(13),
682
    s13_stb_o   => st_slave_port_stb(13),
683
    s13_ack_i   => st_slave_port_ack(13),
684
    s13_err_i   => st_slave_port_err(13),
685
    s13_rty_i   => st_slave_port_rty(13),
686
    s13_cti_o   => st_slave_port_cti(13),
687
    s13_bte_o   => st_slave_port_bte(13),
688
    -- 
689
    -- Slave 14 Interface
690
    s14_data_i  => st_slave_port_data_in(14),
691
    s14_data_o  => st_slave_port_data_out(14),
692
    s14_addr_o  => st_slave_port_addr(14),
693
    s14_sel_o   => st_slave_port_sel(14),
694
    s14_we_o    => st_slave_port_we(14),
695
    s14_cyc_o   => st_slave_port_cyc(14),
696
    s14_stb_o   => st_slave_port_stb(14),
697
    s14_ack_i   => st_slave_port_ack(14),
698
    s14_err_i   => st_slave_port_err(14),
699
    s14_rty_i   => st_slave_port_rty(14),
700
    s14_cti_o   => st_slave_port_cti(14),
701
    s14_bte_o   => st_slave_port_bte(14),
702
    --
703
    -- Slave 15 Interface
704
    s15_data_i  => st_slave_port_data_in(15),
705
    s15_data_o  => st_slave_port_data_out(15),
706
    s15_addr_o  => st_slave_port_addr(15),
707
    s15_sel_o   => st_slave_port_sel(15),
708
    s15_we_o    => st_slave_port_we(15),
709
    s15_cyc_o   => st_slave_port_cyc(15),
710
    s15_stb_o   => st_slave_port_stb(15),
711
    s15_ack_i   => st_slave_port_ack(15),
712
    s15_err_i   => st_slave_port_err(15),
713
    s15_rty_i   => st_slave_port_rty(15),
714
    s15_cti_o   => st_slave_port_cti(15),
715
    s15_bte_o   => st_slave_port_bte(15)
716
);
717
-------------------------------------------------------------------------------
718
--
719
-- Module Inner route:
720
--
721
--  1st route WB_CROSS MASTER signals:
722
--      ==> Deal with PCIE_CORE64_WB Ports:
723
st_master_port_data_in(0)   <= sv_wbm_data_out_pcie_core64_wb;  -- from WBM to WB_CROSS
724
st_master_port_addr(0)      <= sv_wbm_addr_pcie_core64_wb;      -- ...
725
st_master_port_sel(0)       <= sv_wbm_sel_pcie_core64_wb;       -- ...
726
st_master_port_we(0)        <= s_wbm_we_pcie_core64_wb;         -- ...
727
st_master_port_cyc(0)       <= s_wbm_cyc_pcie_core64_wb;        -- ...
728
st_master_port_stb(0)       <= s_wbm_stb_pcie_core64_wb;        -- ...
729
st_master_port_cti(0)       <= sv_wbm_cti_pcie_core64_wb;       -- ...
730
st_master_port_bte(0)       <= sv_wbm_bte_pcie_core64_wb;       -- ...
731
 
732
sv_wbm_data_in_pcie_core64_wb   <= st_master_port_data_out(0);  -- from WB_CROSS to WBM
733
s_wbm_ack_pcie_core64_wb        <= st_master_port_ack(0);       -- ...
734
s_wbm_err_pcie_core64_wb        <= st_master_port_err(0);       -- ...
735
s_wbm_rty_pcie_core64_wb        <= st_master_port_rty(0);       -- ...
736
--      ==> Deal with Unused Ports:
737
gen_conn_to_unused_mports   : for i in (0+1) to p_WB_CROSS_MASTER_Q-1 generate
738
    st_master_port_data_in(i)   <= (others => '0');
739
    st_master_port_addr(i)      <= (others => '0');
740
    st_master_port_sel(i)       <= (others => '0');
741
    st_master_port_we(i)        <= '0';
742
    st_master_port_cyc(i)       <= '0';
743
    st_master_port_stb(i)       <= '0';
744
    st_master_port_cti(i)       <= (others => '0');
745
    st_master_port_bte(i)       <= (others => '0');
746
    --st_master_port_data_out(i)    <= ;
747
    --st_master_port_ack(i)         <= ;
748
    --st_master_port_err(i)         <= ;
749
    --st_master_port_rty(i)         <= ;
750
end generate gen_conn_to_unused_mports;
751
--
752
-- 2nd route WB_CROSS SLAVE signals:
753
--      Deal with TEST_CHECK.WB_CFG_SLAVE
754
sv_wbs_cfg_data_in_test_check   <= st_slave_port_data_out(0);   -- from WB_CROSS to WBS
755
sv_wbs_cfg_addr_test_check      <= st_slave_port_addr(0);       -- ...
756
sv_wbs_cfg_sel_test_check       <= st_slave_port_sel(0);        -- ...
757
s_wbs_cfg_we_test_check         <= st_slave_port_we(0);         -- ...
758
s_wbs_cfg_cyc_test_check        <= st_slave_port_cyc(0);        -- ...
759
s_wbs_cfg_stb_test_check        <= st_slave_port_stb(0);        -- ...
760
sv_wbs_cfg_cti_test_check       <= st_slave_port_cti(0);        -- ...
761
sv_wbs_cfg_bte_test_check       <= st_slave_port_bte(0);        -- ...
762
 
763
st_slave_port_data_in(0)    <= sv_wbs_cfg_data_out_test_check;  -- from WBS to WB_CROSS
764
st_slave_port_ack(0)        <= s_wbs_cfg_ack_test_check;        -- ...
765
st_slave_port_err(0)        <= s_wbs_cfg_err_test_check;        -- ...
766
st_slave_port_rty(0)        <= s_wbs_cfg_rty_test_check;        -- ...
767
--      Deal with TEST_CHECK.WB_BURST_SLAVE
768
sv_wbs_burst_data_in_test_check <= st_slave_port_data_out(1);   -- from WB_CROSS to WBS
769
sv_wbs_burst_addr_test_check    <= st_slave_port_addr(1);       -- ...
770
sv_wbs_burst_sel_test_check     <= st_slave_port_sel(1);        -- ...
771
s_wbs_burst_we_test_check       <= st_slave_port_we(1);         -- ...
772
s_wbs_burst_cyc_test_check      <= st_slave_port_cyc(1);        -- ...
773
s_wbs_burst_stb_test_check      <= st_slave_port_stb(1);        -- ...
774
sv_wbs_burst_cti_test_check     <= st_slave_port_cti(1);
775
sv_wbs_burst_bte_test_check     <= st_slave_port_bte(1);
776
 
777
st_slave_port_data_in(1)    <= (others => '0');                 -- from WBS to WB_CROSS
778
st_slave_port_ack(1)        <= s_wbs_burst_ack_test_check;      -- ...
779
st_slave_port_err(1)        <= s_wbs_burst_err_test_check;      -- ...
780
st_slave_port_rty(1)        <= s_wbs_burst_rty_test_check;      -- ...
781
--      Deal with TEST_GEN.WB_CFG_SLAVE
782
sv_wbs_cfg_data_in_test_gen <= st_slave_port_data_out(2);       -- from WB_CROSS to WBS
783
sv_wbs_cfg_addr_test_gen    <= st_slave_port_addr(2);           -- ...
784
sv_wbs_cfg_sel_test_gen     <= st_slave_port_sel(2);            -- ...
785
s_wbs_cfg_we_test_gen       <= st_slave_port_we(2);             -- ...
786
s_wbs_cfg_cyc_test_gen      <= st_slave_port_cyc(2);            -- ...
787
s_wbs_cfg_stb_test_gen      <= st_slave_port_stb(2);            -- ...
788
sv_wbs_cfg_cti_test_gen     <= st_slave_port_cti(2);            -- ...
789
sv_wbs_cfg_bte_test_gen     <= st_slave_port_bte(2);            -- ...
790
 
791
st_slave_port_data_in(2)    <= sv_wbs_cfg_data_out_test_gen;    -- from WBS to WB_CROSS
792
st_slave_port_ack(2)        <= s_wbs_cfg_ack_test_gen;          -- ...
793
st_slave_port_err(2)        <= s_wbs_cfg_err_test_gen;          -- ...
794
st_slave_port_rty(2)        <= s_wbs_cfg_rty_test_gen;          -- ...
795
--      Deal with TEST_GEN.WB_BURST_SLAVE
796
--st_slave_port_data_out(3)
797
sv_wbs_burst_addr_test_gen  <= st_slave_port_addr(3);
798
sv_wbs_burst_sel_test_gen   <= st_slave_port_sel(3);
799
s_wbs_burst_we_test_gen     <= st_slave_port_we(3);
800
s_wbs_burst_cyc_test_gen    <= st_slave_port_cyc(3);
801
s_wbs_burst_stb_test_gen    <= st_slave_port_stb(3);
802
sv_wbs_burst_cti_test_gen   <= st_slave_port_cti(3);
803
sv_wbs_burst_bte_test_gen   <= st_slave_port_bte(3);
804
 
805
st_slave_port_data_in(3)    <= sv_wbs_burst_data_out_test_gen;
806
st_slave_port_ack(3)        <= s_wbs_burst_ack_test_gen;
807
st_slave_port_err(3)        <= s_wbs_burst_err_test_gen;
808
st_slave_port_rty(3)        <= s_wbs_burst_rty_test_gen;
809
--      Deal with Unused SALVE Ports
810
gen_conn_to_unused_sports   : for i in (3+1) to p_WB_CROSS_SLAVE_Q-1 generate
811
    --st_slave_port_data_out(i)     <= ;
812
    --st_slave_port_addr(i)         <= ;
813
    --st_slave_port_sel(i)          <= ;
814
    --st_slave_port_we(i)           <= ;
815
    --st_slave_port_cyc(i)          <= ;
816
    --st_slave_port_stb(i)          <= ;
817
    --st_slave_port_cti(i)          <= ;
818
    --st_slave_port_bte(i)          <= ;
819
    st_slave_port_data_in(i)    <= p_TEST_DATA_64BIT;
820
    st_slave_port_ack(i)        <= '1'; -- ALWAYS READY (always answer to MASTER with "p_TEST_DATA_64BIT" value)
821
    st_slave_port_err(i)        <= '0';
822
    st_slave_port_rty(i)        <= '0';
823
 
824
end generate gen_conn_to_unused_sports;
825
--
826
-- Construct PCIE Line-width value:
827
sv_pcie_line_num    <= sv_pcie_lstatus(6 downto 4) when s_pcie_link_up_n='0'
828
                        else "000";
829
 
830
-------------------------------------------------------------------------------
831
--
832
-- Module Outputs deal:
833
--
834
ov_gpio_led(0)  <= s_pcie_link_up_n after 1ns when rising_edge(s_wb_clk);           -- LED#0 - PCIE_LINK_UP
835
--
836
ov_gpio_led(3 downto 1) <=  sv_pcie_line_num after 1ns when rising_edge(s_wb_clk);  -- LED#1 - show PCIE line-width: x1->1, x2->2, etc...
837
 
838
-------------------------------------------------------------------------------
839
end rtl;

powered by: WebSVN 2.1.0

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