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

Subversion Repositories pci

[/] [pci/] [tags/] [rel_3/] [rtl/] [verilog/] [pci_target_unit.v] - Blame information for rev 2

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

Line No. Rev Author Line
1 2 mihad
//////////////////////////////////////////////////////////////////////
2
////                                                              ////
3
////  File name: pci_target_unit.v                                ////
4
////                                                              ////
5
////  This file is part of the "PCI bridge" project               ////
6
////  http://www.opencores.org/cores/pci/                         ////
7
////                                                              ////
8
////  Author(s):                                                  ////
9
////      - Tadej Markovic, tadej@opencores.org                   ////
10
////                                                              ////
11
////  All additional information is avaliable in the README.txt   ////
12
////  file.                                                       ////
13
////                                                              ////
14
////                                                              ////
15
//////////////////////////////////////////////////////////////////////
16
////                                                              ////
17
//// Copyright (C) 2000 Tadej Markovic, tadej@opencores.org       ////
18
////                                                              ////
19
//// This source file may be used and distributed without         ////
20
//// restriction provided that this copyright statement is not    ////
21
//// removed from the file and that any derivative work contains  ////
22
//// the original copyright notice and the associated disclaimer. ////
23
////                                                              ////
24
//// This source file is free software; you can redistribute it   ////
25
//// and/or modify it under the terms of the GNU Lesser General   ////
26
//// Public License as published by the Free Software Foundation; ////
27
//// either version 2.1 of the License, or (at your option) any   ////
28
//// later version.                                               ////
29
////                                                              ////
30
//// This source is distributed in the hope that it will be       ////
31
//// useful, but WITHOUT ANY WARRANTY; without even the implied   ////
32
//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      ////
33
//// PURPOSE.  See the GNU Lesser General Public License for more ////
34
//// details.                                                     ////
35
////                                                              ////
36
//// You should have received a copy of the GNU Lesser General    ////
37
//// Public License along with this source; if not, download it   ////
38
//// from http://www.opencores.org/lgpl.shtml                     ////
39
////                                                              ////
40
//////////////////////////////////////////////////////////////////////
41
//
42
// CVS Revision History
43
//
44
// $Log: not supported by cvs2svn $
45
//
46
 
47
// Module instantiates and connects other modules lower in hierarcy
48
// PCI target unit consists of modules that together form datapath
49
// between external WISHBONE slaves and external PCI initiators
50
`include "constants.v"
51
 
52
module PCI_TARGET_UNIT
53
(
54
    reset_in,
55
    wb_clock_in,
56
    pci_clock_in,
57
    ADR_O,
58
    MDATA_O,
59
    MDATA_I,
60
    CYC_O,
61
    STB_O,
62
    WE_O,
63
    SEL_O,
64
    ACK_I,
65
    RTY_I,
66
    ERR_I,
67
    CAB_O,
68
        pciu_mem_enable_in,
69
        pciu_io_enable_in,
70
    pciu_map_in,
71
    pciu_pref_en_in,
72
    pciu_conf_data_in,
73
    pciu_wbw_fifo_empty_in,
74
    pciu_wbu_frame_en_in,
75
        pciu_bar0_in,
76
        pciu_bar1_in,
77
        pciu_bar2_in,
78
        pciu_bar3_in,
79
        pciu_bar4_in,
80
        pciu_bar5_in,
81
        pciu_am0_in,
82
        pciu_am1_in,
83
        pciu_am2_in,
84
        pciu_am3_in,
85
        pciu_am4_in,
86
        pciu_am5_in,
87
        pciu_ta0_in,
88
        pciu_ta1_in,
89
        pciu_ta2_in,
90
        pciu_ta3_in,
91
        pciu_ta4_in,
92
        pciu_ta5_in,
93
        pciu_at_en_in,
94
        pciu_cache_line_size_in,
95
        pciu_pciif_frame_in,
96
        pciu_pciif_irdy_in,
97
        pciu_pciif_idsel_in,
98
        pciu_pciif_frame_reg_in,
99
        pciu_pciif_irdy_reg_in,
100
        pciu_pciif_idsel_reg_in,
101
        pciu_pciif_ad_reg_in,
102
        pciu_pciif_cbe_reg_in,
103
        pciu_pciif_bckp_trdy_en_in,
104
        pciu_pciif_bckp_devsel_in,
105
        pciu_pciif_bckp_trdy_in,
106
        pciu_pciif_bckp_stop_in,
107
        pciu_pciif_trdy_out,
108
        pciu_pciif_stop_out,
109
        pciu_pciif_devsel_out,
110
        pciu_pciif_trdy_en_out,
111
        pciu_pciif_stop_en_out,
112
        pciu_pciif_devsel_en_out,
113
        pciu_pciif_target_load_out,
114
        pciu_pciif_ad_out,
115
        pciu_pciif_ad_en_out,
116
        pciu_pciif_tabort_set_out,
117
    pciu_err_addr_out,
118
    pciu_err_bc_out,
119
    pciu_err_data_out,
120
        pciu_err_be_out,
121
    pciu_err_signal_out,
122
    pciu_err_source_out,
123
    pciu_err_rty_exp_out,
124
    pciu_err_pending_in,
125
    pciu_conf_offset_out,
126
    pciu_conf_renable_out,
127
    pciu_conf_wenable_out,
128
    pciu_conf_be_out,
129
    pciu_conf_data_out,
130
    pciu_conf_select_out,
131
    pciu_pci_drcomp_pending_out,
132
    pciu_pciw_fifo_empty_out
133
);
134
 
135
input reset_in,
136
      wb_clock_in,
137
      pci_clock_in ;
138
 
139
output  [31:0]  ADR_O   ;
140
output  [31:0]  MDATA_O ;
141
input   [31:0]  MDATA_I ;
142
output          CYC_O   ;
143
output          STB_O   ;
144
output          WE_O    ;
145
output  [3:0]   SEL_O   ;
146
input           ACK_I   ;
147
input           RTY_I   ;
148
input           ERR_I   ;
149
output          CAB_O   ;
150
 
151
input           pciu_wbw_fifo_empty_in ;
152
input                   pciu_wbu_frame_en_in ;
153
 
154
input           pciu_mem_enable_in ;
155
input           pciu_io_enable_in ;
156
input   [5:0]   pciu_map_in ;
157
input   [5:0]   pciu_pref_en_in ;
158
input   [31:0]  pciu_conf_data_in ;
159
 
160
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar0_in ;
161
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar1_in ;
162
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar2_in ;
163
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar3_in ;
164
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar4_in ;
165
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_bar5_in ;
166
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am0_in ;
167
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am1_in ;
168
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am2_in ;
169
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am3_in ;
170
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am4_in ;
171
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_am5_in ;
172
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta0_in ;
173
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta1_in ;
174
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta2_in ;
175
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta3_in ;
176
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta4_in ;
177
input   [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pciu_ta5_in ;
178
input   [5:0]                               pciu_at_en_in ;
179
 
180
input   [7:0]   pciu_cache_line_size_in ;
181
 
182
input           pciu_pciif_frame_in     ;
183
input           pciu_pciif_irdy_in ;
184
input           pciu_pciif_idsel_in ;
185
input           pciu_pciif_frame_reg_in ;
186
input           pciu_pciif_irdy_reg_in ;
187
input           pciu_pciif_idsel_reg_in ;
188
input  [31:0]   pciu_pciif_ad_reg_in ;
189
input   [3:0]   pciu_pciif_cbe_reg_in ;
190
input                   pciu_pciif_bckp_trdy_en_in ;
191
input                   pciu_pciif_bckp_devsel_in ;
192
input                   pciu_pciif_bckp_trdy_in ;
193
input                   pciu_pciif_bckp_stop_in ;
194
 
195
 
196
output          pciu_pciif_trdy_out ;
197
output          pciu_pciif_stop_out ;
198
output          pciu_pciif_devsel_out ;
199
output          pciu_pciif_trdy_en_out ;
200
output          pciu_pciif_stop_en_out ;
201
output          pciu_pciif_devsel_en_out ;
202
output                  pciu_pciif_target_load_out ;
203
output [31:0]   pciu_pciif_ad_out ;
204
output          pciu_pciif_ad_en_out ;
205
output                  pciu_pciif_tabort_set_out ;
206
 
207
output  [31:0]  pciu_err_addr_out ;
208
output  [3:0]   pciu_err_bc_out ;
209
output  [31:0]  pciu_err_data_out ;
210
output  [3:0]   pciu_err_be_out  ;
211
output          pciu_err_signal_out ;
212
output          pciu_err_source_out ;
213
output          pciu_err_rty_exp_out ;
214
input           pciu_err_pending_in ;
215
 
216
output                  pciu_conf_select_out ;
217
output  [11:0]  pciu_conf_offset_out ;
218
output          pciu_conf_renable_out ;
219
output          pciu_conf_wenable_out ;
220
output  [3:0]   pciu_conf_be_out ;
221
output  [31:0]  pciu_conf_data_out ;
222
 
223
output                  pciu_pci_drcomp_pending_out ;
224
output                  pciu_pciw_fifo_empty_out ;
225
 
226
 
227
// pci target state machine and interface outputs
228
wire        pcit_sm_trdy_out ;
229
wire        pcit_sm_stop_out ;
230
wire        pcit_sm_devsel_out ;
231
wire        pcit_sm_trdy_en_out ;
232
wire        pcit_sm_stop_en_out ;
233
wire        pcit_sm_devsel_en_out ;
234
wire            pcit_sm_target_load_out ;
235
wire [31:0] pcit_sm_ad_out ;
236
wire        pcit_sm_ad_en_out ;
237
wire [31:0] pcit_sm_address_out ;
238
wire  [3:0] pcit_sm_bc_out ;
239
wire            pcit_sm_bc0_out ;
240
wire [31:0] pcit_sm_data_out ;
241
wire  [3:0] pcit_sm_be_out ;
242
wire        pcit_sm_req_out ;
243
wire        pcit_sm_rdy_out ;
244
wire            pcit_sm_addr_phase_out ;
245
wire            pcit_sm_bckp_trdy_out ;
246
wire            pcit_sm_last_reg_out ;
247
wire            pcit_sm_frame_reg_out ;
248
wire            pcit_sm_fetch_pcir_fifo_out ;
249
wire            pcit_sm_load_medium_reg_out ;
250
wire            pcit_sm_sel_fifo_mreg_out ;
251
wire            pcit_sm_sel_conf_fifo_out ;
252
wire            pcit_sm_fetch_conf_out ;
253
wire            pcit_sm_load_to_pciw_fifo_out ;
254
wire            pcit_sm_load_to_conf_out ;
255
 
256
wire            pcit_sm_target_abort_set_out ; // to conf space
257
 
258
assign  pciu_pciif_trdy_out             =       pcit_sm_trdy_out ;
259
assign  pciu_pciif_stop_out             =       pcit_sm_stop_out ;
260
assign  pciu_pciif_devsel_out           =       pcit_sm_devsel_out ;
261
assign  pciu_pciif_trdy_en_out          =       pcit_sm_trdy_en_out ;
262
assign  pciu_pciif_stop_en_out          =       pcit_sm_stop_en_out ;
263
assign  pciu_pciif_devsel_en_out        =       pcit_sm_devsel_en_out ;
264
assign  pciu_pciif_target_load_out              =       pcit_sm_target_load_out ;
265
assign  pciu_pciif_ad_out               =       pcit_sm_ad_out ;
266
assign  pciu_pciif_ad_en_out            =       pcit_sm_ad_en_out ;
267
assign  pciu_pciif_tabort_set_out               =       pcit_sm_target_abort_set_out ;
268
 
269
wire        pcit_if_addr_claim_out ;
270
wire [31:0] pcit_if_data_out ;
271
wire        pcit_if_same_read_out ;
272
wire        pcit_if_norm_access_to_config_out ;
273
wire        pcit_if_read_completed_out ;
274
wire        pcit_if_read_processing_out ;
275
wire        pcit_if_target_abort_out ;
276
wire        pcit_if_disconect_wo_data_out ;
277
wire        pcit_if_pciw_fifo_full_out ;
278
wire        pcit_if_pcir_fifo_data_err_out ;
279
wire        pcit_if_wbw_fifo_empty_out ;
280
wire        pcit_if_req_out ;
281
wire        pcit_if_done_out ;
282
wire        pcit_if_in_progress_out ;
283
wire [31:0] pcit_if_addr_out ;
284
wire  [3:0] pcit_if_be_out ;
285
wire        pcit_if_we_out ;
286
wire  [3:0] pcit_if_bc_out ;
287
wire        pcit_if_burst_out ;
288
wire        pcit_if_pcir_fifo_renable_out ;
289
wire        pcit_if_pcir_fifo_flush_out ;
290
wire        pcit_if_pciw_fifo_wenable_out ;
291
wire [31:0] pcit_if_pciw_fifo_addr_data_out ;
292
wire  [3:0] pcit_if_pciw_fifo_cbe_out ;
293
wire  [3:0] pcit_if_pciw_fifo_control_out ;
294
wire        pcit_if_conf_hit_out ;
295
wire [11:0] pcit_if_conf_addr_out ;
296
wire [31:0] pcit_if_conf_data_out ;
297
wire  [3:0] pcit_if_conf_be_out ;
298
wire        pcit_if_conf_we_out ;
299
wire        pcit_if_conf_re_out ;
300
 
301
// pci target state machine outputs
302
// pci interface signals
303
assign  pciu_conf_select_out    =       pcit_if_conf_hit_out ;
304
assign  pciu_conf_offset_out    =       pcit_if_conf_addr_out ;
305
assign  pciu_conf_renable_out   =       pcit_if_conf_re_out ;
306
assign  pciu_conf_wenable_out   =       pcit_if_conf_we_out ;
307
assign  pciu_conf_be_out                =       pcit_if_conf_be_out ;
308
assign  pciu_conf_data_out              =       pcit_if_conf_data_out ;
309
 
310
// wishbone master state machine outputs
311
wire        wbm_sm_wb_read_done ;
312
wire        wbm_sm_pcir_fifo_wenable_out ;
313
wire [31:0] wbm_sm_pcir_fifo_data_out ;
314
wire  [3:0] wbm_sm_pcir_fifo_be_out ;
315
wire  [3:0] wbm_sm_pcir_fifo_control_out ;
316
wire        wbm_sm_pciw_fifo_renable_out ;
317
wire        wbm_sm_pci_error_sig_out ;
318
wire  [3:0] wbm_sm_pci_error_bc ;
319
wire        wbm_sm_write_rty_cnt_exp_out ;
320
wire        wbm_sm_read_rty_cnt_exp_out ;
321
wire        wbm_sm_cyc_out ;
322
wire        wbm_sm_stb_out ;
323
wire        wbm_sm_we_out ;
324
wire  [3:0] wbm_sm_sel_out ;
325
wire [31:0] wbm_sm_adr_out ;
326
wire [31:0] wbm_sm_mdata_out ;
327
wire        wbm_sm_cab_out ;
328
 
329
assign  pciu_err_addr_out               =       wbm_sm_adr_out ;
330
assign  pciu_err_bc_out                 =       wbm_sm_pci_error_bc ;
331
assign  pciu_err_data_out               =       wbm_sm_mdata_out ;
332
assign  pciu_err_be_out                 =       ~wbm_sm_sel_out ;
333
assign  pciu_err_signal_out             =       wbm_sm_pci_error_sig_out ;
334
assign  pciu_err_source_out             =       wbm_sm_write_rty_cnt_exp_out ; // only for writing to WB !
335
assign  pciu_err_rty_exp_out    =       wbm_sm_write_rty_cnt_exp_out ;
336
 
337
assign  ADR_O           =       wbm_sm_adr_out ;
338
assign  MDATA_O         =       wbm_sm_mdata_out ;
339
assign  CYC_O           =       wbm_sm_cyc_out ;
340
assign  STB_O           =       wbm_sm_stb_out ;
341
assign  WE_O            =       wbm_sm_we_out ;
342
assign  SEL_O           =       wbm_sm_sel_out ;
343
assign  CAB_O           =       wbm_sm_cab_out ;
344
 
345
// pciw_pcir fifo outputs
346
 
347
// pciw_fifo_outputs:
348
wire [31:0] fifos_pciw_addr_data_out ;
349
wire [3:0]  fifos_pciw_cbe_out ;
350
wire [3:0]  fifos_pciw_control_out ;
351
wire            fifos_pciw_two_left_out ;
352
wire        fifos_pciw_almost_full_out ;
353
wire        fifos_pciw_full_out ;
354
wire            fifos_pciw_almost_empty_out ;
355
wire        fifos_pciw_empty_out ;
356
wire        fifos_pciw_transaction_ready_out ;
357
 
358
assign  pciu_pciw_fifo_empty_out = fifos_pciw_empty_out ;
359
 
360
// pcir_fifo_outputs
361
wire [31:0] fifos_pcir_data_out ;
362
wire [3:0]  fifos_pcir_be_out ;
363
wire [3:0]  fifos_pcir_control_out ;
364
wire        fifos_pcir_almost_full_out ;
365
wire        fifos_pcir_full_out ;
366
wire        fifos_pcir_almost_empty_out ;
367
wire            fifos_pcir_empty_out ;
368
 
369
// delayed transaction logic outputs
370
wire [31:0] del_sync_addr_out ;
371
wire [3:0]  del_sync_be_out ;
372
wire        del_sync_we_out ;
373
wire        del_sync_comp_req_pending_out ;
374
wire        del_sync_comp_comp_pending_out ;
375
wire        del_sync_req_req_pending_out ;
376
wire        del_sync_req_comp_pending_out ;
377
wire [3:0]  del_sync_bc_out ;
378
wire        del_sync_status_out ;
379
wire        del_sync_comp_flush_out ;
380
wire        del_sync_burst_out ;
381
 
382
assign  pciu_pci_drcomp_pending_out = del_sync_comp_comp_pending_out ;
383
 
384
// WISHBONE master interface inputs            
385
wire            wbm_sm_pci_tar_read_request                             =       del_sync_comp_req_pending_out ;
386
wire [31:0] wbm_sm_pci_tar_address                  =    del_sync_addr_out ;
387
wire  [3:0] wbm_sm_pci_tar_cmd                      =    del_sync_bc_out ;
388
wire  [3:0] wbm_sm_pci_tar_be                       =    del_sync_be_out ;
389
wire            wbm_sm_pci_tar_prefetch_en              =       del_sync_burst_out ;
390
wire  [7:0] wbm_sm_pci_cache_line_size              =    pciu_cache_line_size_in ;
391
wire            wbm_sm_pcir_fifo_almost_full_in         =       fifos_pcir_almost_full_out ;
392
wire            wbm_sm_pcir_fifo_full_in                =       fifos_pcir_full_out ;
393
wire [31:0] wbm_sm_pciw_fifo_addr_data_in           =    fifos_pciw_addr_data_out ;
394
wire  [3:0] wbm_sm_pciw_fifo_cbe_in                 =    fifos_pciw_cbe_out ;
395
wire  [3:0] wbm_sm_pciw_fifo_control_in             =    fifos_pciw_control_out ;
396
wire            wbm_sm_pciw_fifo_almost_empty_in        =       fifos_pciw_almost_empty_out ;
397
wire            wbm_sm_pciw_fifo_empty_in               =       fifos_pciw_empty_out ;
398
wire            wbm_sm_pciw_fifo_transaction_ready_in   =       fifos_pciw_transaction_ready_out ;
399
wire            wbm_sm_pci_error_sig_set_in             =       pciu_err_pending_in ;
400
wire [31:0] wbm_sm_mdata_in                         =    MDATA_I ;
401
wire            wbm_sm_ack_in                           =       ACK_I ;
402
wire            wbm_sm_rty_in                           =       RTY_I ;
403
wire            wbm_sm_err_in                           =       ERR_I ;
404
 
405
// WISHBONE master interface instantiation
406
WB_MASTER wishbone_master
407
(
408
        .wb_clock_in                                    (wb_clock_in),
409
        .reset_in                                               (reset_in),
410
        .pci_tar_read_request                   (wbm_sm_pci_tar_read_request),  //in
411
        .pci_tar_address                                (wbm_sm_pci_tar_address),               //in
412
        .pci_tar_cmd                                    (wbm_sm_pci_tar_cmd),                   //in
413
        .pci_tar_be                                             (wbm_sm_pci_tar_be),                    //in
414
        .pci_tar_prefetch_en                    (wbm_sm_pci_tar_prefetch_en),   //in
415
        .pci_cache_line_size                    (wbm_sm_pci_cache_line_size),   //in
416
        .wb_read_done                                   (wbm_sm_wb_read_done),                  //out
417
        .pcir_fifo_wenable_out                  (wbm_sm_pcir_fifo_wenable_out),
418
        .pcir_fifo_data_out                             (wbm_sm_pcir_fifo_data_out),
419
        .pcir_fifo_be_out                               (wbm_sm_pcir_fifo_be_out),
420
        .pcir_fifo_control_out                  (wbm_sm_pcir_fifo_control_out),
421
        .pcir_fifo_almost_full_in               (wbm_sm_pcir_fifo_almost_full_in),
422
        .pcir_fifo_full_in                              (wbm_sm_pcir_fifo_full_in),
423
        .pciw_fifo_renable_out                  (wbm_sm_pciw_fifo_renable_out),
424
        .pciw_fifo_addr_data_in                 (wbm_sm_pciw_fifo_addr_data_in),
425
        .pciw_fifo_cbe_in                               (wbm_sm_pciw_fifo_cbe_in),
426
        .pciw_fifo_control_in                   (wbm_sm_pciw_fifo_control_in),
427
        .pciw_fifo_almost_empty_in              (wbm_sm_pciw_fifo_almost_empty_in),
428
        .pciw_fifo_empty_in                             (wbm_sm_pciw_fifo_empty_in),
429
        .pciw_fifo_transaction_ready_in (wbm_sm_pciw_fifo_transaction_ready_in),
430
        .pci_error_sig_set_in                   (wbm_sm_pci_error_sig_set_in),
431
        .pci_error_sig_out                              (wbm_sm_pci_error_sig_out),
432
        .pci_error_bc                                   (wbm_sm_pci_error_bc),
433
        .write_rty_cnt_exp_out                  (wbm_sm_write_rty_cnt_exp_out),
434
        .read_rty_cnt_exp_out                   (wbm_sm_read_rty_cnt_exp_out),
435
        .CYC_O                                                  (wbm_sm_cyc_out),
436
        .STB_O                                                  (wbm_sm_stb_out),
437
        .WE_O                                                   (wbm_sm_we_out),
438
        .SEL_O                                                  (wbm_sm_sel_out),
439
        .ADR_O                                                  (wbm_sm_adr_out),
440
        .MDATA_I                                                (wbm_sm_mdata_in),
441
        .MDATA_O                                                (wbm_sm_mdata_out),
442
        .ACK_I                                                  (wbm_sm_ack_in),
443
        .RTY_I                                                  (wbm_sm_rty_in),
444
        .ERR_I                                                  (wbm_sm_err_in),
445
        .CAB_O                                  (wbm_sm_cab_out)
446
);
447
 
448
// pciw_pcir_fifos inputs
449
// PCIW_FIFO inputs
450
wire        fifos_pciw_wenable_in       =       pcit_if_pciw_fifo_wenable_out ;
451
wire [31:0] fifos_pciw_addr_data_in     =        pcit_if_pciw_fifo_addr_data_out ;
452
wire [3:0]  fifos_pciw_cbe_in           =        pcit_if_pciw_fifo_cbe_out ;
453
wire [3:0]  fifos_pciw_control_in       =        pcit_if_pciw_fifo_control_out ;
454
wire        fifos_pciw_renable_in       =       wbm_sm_pciw_fifo_renable_out ;
455
wire        fifos_pciw_flush_in         =       1'b0 ;
456
 
457
// PCIR_FIFO inputs
458
wire        fifos_pcir_wenable_in       =       wbm_sm_pcir_fifo_wenable_out ;
459
wire [31:0] fifos_pcir_data_in          =        wbm_sm_pcir_fifo_data_out ;
460
wire [3:0]  fifos_pcir_be_in            =        wbm_sm_pcir_fifo_be_out ;
461
wire [3:0]  fifos_pcir_control_in       =        wbm_sm_pcir_fifo_control_out ;
462
wire        fifos_pcir_renable_in       =       pcit_if_pcir_fifo_renable_out ;
463
wire        fifos_pcir_flush_in         =       pcit_if_pcir_fifo_flush_out ;
464
 
465
// PCIW_FIFO and PCIR_FIFO instantiation
466
PCIW_PCIR_FIFOS fifos
467
(
468
        .wb_clock_in                (wb_clock_in),
469
        .pci_clock_in               (pci_clock_in),
470
        .reset_in                   (reset_in),
471
        .pciw_wenable_in            (fifos_pciw_wenable_in),      //for PCI Target !!!
472
        .pciw_addr_data_in          (fifos_pciw_addr_data_in),    //for PCI Target !!!
473
        .pciw_cbe_in                (fifos_pciw_cbe_in),          //for PCI Target !!!
474
        .pciw_control_in            (fifos_pciw_control_in),      //for PCI Target !!!
475
        .pciw_renable_in            (fifos_pciw_renable_in),
476
        .pciw_addr_data_out         (fifos_pciw_addr_data_out),
477
        .pciw_cbe_out               (fifos_pciw_cbe_out),
478
        .pciw_control_out           (fifos_pciw_control_out),
479
        .pciw_flush_in                          (fifos_pciw_flush_in),
480
        .pciw_two_left_out                      (fifos_pciw_two_left_out),        //for PCI Target !!!
481
        .pciw_almost_full_out       (fifos_pciw_almost_full_out), //for PCI Target !!!
482
        .pciw_full_out              (fifos_pciw_full_out),        //for PCI Target !!!
483
        .pciw_almost_empty_out      (fifos_pciw_almost_empty_out),
484
        .pciw_empty_out             (fifos_pciw_empty_out),
485
        .pciw_transaction_ready_out (fifos_pciw_transaction_ready_out),
486
        .pcir_wenable_in            (fifos_pcir_wenable_in),
487
        .pcir_data_in               (fifos_pcir_data_in),
488
        .pcir_be_in                 (fifos_pcir_be_in),
489
        .pcir_control_in            (fifos_pcir_control_in),
490
        .pcir_renable_in            (fifos_pcir_renable_in),      //for PCI Target !!!
491
        .pcir_data_out              (fifos_pcir_data_out),        //for PCI Target !!!
492
        .pcir_be_out                (fifos_pcir_be_out),          //for PCI Target !!!
493
        .pcir_control_out           (fifos_pcir_control_out),     //for PCI Target !!!
494
        .pcir_flush_in              (fifos_pcir_flush_in),        //for PCI Target !!!
495
        .pcir_almost_full_out           (fifos_pcir_almost_full_out),
496
        .pcir_full_out                          (fifos_pcir_full_out),
497
        .pcir_almost_empty_out          (fifos_pcir_almost_empty_out), //for PCI Target !!!
498
        .pcir_empty_out                         (fifos_pcir_empty_out),            //for PCI Target !!!
499
        .pcir_transaction_ready_out     ()
500
) ;
501
 
502
// delayed transaction logic inputs
503
wire        del_sync_req_in             =       pcit_if_req_out ;
504
wire        del_sync_comp_in            =       wbm_sm_wb_read_done ;
505
wire        del_sync_done_in            =       pcit_if_done_out ;
506
wire        del_sync_in_progress_in     =       pcit_if_in_progress_out ;
507
wire [31:0] del_sync_addr_in            =        pcit_if_addr_out ;
508
wire  [3:0] del_sync_be_in              =        pcit_if_be_out ;
509
wire        del_sync_we_in              =       pcit_if_we_out ;
510
wire  [3:0] del_sync_bc_in              =        pcit_if_bc_out ;
511
wire        del_sync_status_in          =       1'b0 ;
512
wire        del_sync_burst_in           =       pcit_if_burst_out ;
513
wire        del_sync_retry_expired_in   =       wbm_sm_read_rty_cnt_exp_out ;
514
 
515
// delayed transaction logic instantiation
516
DELAYED_SYNC                            del_sync
517
(
518
        .reset_in               (reset_in),
519
        .req_clk_in             (pci_clock_in),
520
        .comp_clk_in            (wb_clock_in),
521
        .req_in                 (del_sync_req_in),
522
        .comp_in                (del_sync_comp_in),
523
        .done_in                (del_sync_done_in),
524
        .in_progress_in         (del_sync_in_progress_in),
525
        .comp_req_pending_out   (del_sync_comp_req_pending_out),
526
        .comp_comp_pending_out  (del_sync_comp_comp_pending_out),
527
        .req_req_pending_out    (del_sync_req_req_pending_out),
528
        .req_comp_pending_out   (del_sync_req_comp_pending_out),
529
        .addr_in                (del_sync_addr_in),
530
        .be_in                  (del_sync_be_in),
531
        .addr_out               (del_sync_addr_out),
532
        .be_out                 (del_sync_be_out),
533
        .we_in                  (del_sync_we_in),
534
        .we_out                 (del_sync_we_out),
535
        .bc_in                  (del_sync_bc_in),
536
        .bc_out                 (del_sync_bc_out),
537
        .status_in              (del_sync_status_in),
538
        .status_out             (del_sync_status_out),
539
        .comp_flush_out         (del_sync_comp_flush_out),
540
        .burst_in               (del_sync_burst_in),
541
        .burst_out              (del_sync_burst_out),
542
        .retry_expired_in       (del_sync_retry_expired_in)
543
);
544
 
545
// pci target interface inputs
546
wire [31:0] pcit_if_address_in                                           =       pcit_sm_address_out ;
547
wire  [3:0] pcit_if_bc_in                                                        =       pcit_sm_bc_out ;
548
wire            pcit_if_bc0_in                                                  =       pcit_sm_bc0_out ;
549
wire [31:0] pcit_if_data_in                                                      =       pcit_sm_data_out ;
550
wire  [3:0] pcit_if_be_in                                                        =       pcit_sm_be_out ;
551
wire            pcit_if_req_in                                                  =       pcit_sm_req_out ;
552
wire            pcit_if_rdy_in                                                  =       pcit_sm_rdy_out ;
553
wire            pcit_if_addr_phase_in                                   =       pcit_sm_addr_phase_out ;
554
wire            pcit_if_bckp_trdy_in                                    =       pcit_sm_bckp_trdy_out ;
555
wire            pcit_if_last_reg_in                                             =       pcit_sm_last_reg_out ;
556
wire            pcit_if_frame_reg_in                                    =       pcit_sm_frame_reg_out ;
557
wire            pcit_if_fetch_pcir_fifo_in                              =       pcit_sm_fetch_pcir_fifo_out ;
558
wire            pcit_if_load_medium_reg_in                              =       pcit_sm_load_medium_reg_out ;
559
wire            pcit_if_sel_fifo_mreg_in                                =       pcit_sm_sel_fifo_mreg_out ;
560
wire            pcit_if_sel_conf_fifo_in                                =       pcit_sm_sel_conf_fifo_out ;
561
wire            pcit_if_fetch_conf_in                                   =       pcit_sm_fetch_conf_out ;
562
wire            pcit_if_load_to_pciw_fifo_in                    =       pcit_sm_load_to_pciw_fifo_out ;
563
wire            pcit_if_load_to_conf_in                                 =       pcit_sm_load_to_conf_out ;
564
wire            pcit_if_req_req_pending_in                              =       del_sync_req_req_pending_out ;
565
wire            pcit_if_req_comp_pending_in                             =       del_sync_req_comp_pending_out ;
566
wire        pcit_if_status_in                                           =       del_sync_status_out ;
567
wire [31:0]      pcit_if_strd_addr_in                                    =       del_sync_addr_out ;
568
wire  [3:0]      pcit_if_strd_bc_in                                              =       del_sync_bc_out ;
569
wire            pcit_if_comp_flush_in                                   =       del_sync_comp_flush_out ;
570
wire [31:0] pcit_if_pcir_fifo_data_in                            =       fifos_pcir_data_out ;
571
wire  [3:0] pcit_if_pcir_fifo_be_in                                      =       fifos_pcir_be_out ;
572
wire  [3:0] pcit_if_pcir_fifo_control_in                 =       fifos_pcir_control_out ;
573
wire            pcit_if_pcir_fifo_almost_empty_in               =       fifos_pcir_almost_empty_out ;
574
wire            pcit_if_pcir_fifo_empty_in                              =       fifos_pcir_empty_out ;
575
wire            pcit_if_pciw_fifo_two_left_in                   =       fifos_pciw_two_left_out ;
576
wire            pcit_if_pciw_fifo_almost_full_in                =       fifos_pciw_almost_full_out ;
577
wire            pcit_if_pciw_fifo_full_in                               =       fifos_pciw_full_out ;
578
wire            pcit_if_wbw_fifo_empty_in                               =       pciu_wbw_fifo_empty_in ;
579
wire [31:0] pcit_if_conf_data_in                                 =       pciu_conf_data_in ;
580
wire            pcit_if_mem_enable_in                                   =       pciu_mem_enable_in ;
581
wire            pcit_if_io_enable_in                                    =       pciu_io_enable_in ;
582
wire            pcit_if_mem_io_addr_space0_in                   =       pciu_map_in[0] ;
583
wire            pcit_if_mem_io_addr_space1_in                   =       pciu_map_in[1] ;
584
wire            pcit_if_mem_io_addr_space2_in                   =       pciu_map_in[2] ;
585
wire            pcit_if_mem_io_addr_space3_in                   =       pciu_map_in[3] ;
586
wire            pcit_if_mem_io_addr_space4_in                   =       pciu_map_in[4] ;
587
wire            pcit_if_mem_io_addr_space5_in                   =       pciu_map_in[5] ;
588
wire            pcit_if_pre_fetch_en0_in                                =       pciu_pref_en_in[0] ;
589
wire            pcit_if_pre_fetch_en1_in                                =       pciu_pref_en_in[1] ;
590
wire            pcit_if_pre_fetch_en2_in                                =       pciu_pref_en_in[2] ;
591
wire            pcit_if_pre_fetch_en3_in                                =       pciu_pref_en_in[3] ;
592
wire            pcit_if_pre_fetch_en4_in                                =       pciu_pref_en_in[4] ;
593
wire            pcit_if_pre_fetch_en5_in                                =       pciu_pref_en_in[5] ;
594
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr0_in       =       pciu_bar0_in ;
595
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr1_in       =       pciu_bar1_in ;
596
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr2_in       =       pciu_bar2_in ;
597
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr3_in       =       pciu_bar3_in ;
598
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr4_in       =       pciu_bar4_in ;
599
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_base_addr5_in       =       pciu_bar5_in ;
600
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask0_in       =       pciu_am0_in ;
601
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask1_in       =       pciu_am1_in ;
602
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask2_in       =       pciu_am2_in ;
603
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask3_in       =       pciu_am3_in ;
604
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask4_in       =       pciu_am4_in ;
605
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_addr_mask5_in       =       pciu_am5_in ;
606
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr0_in       =       pciu_ta0_in ;
607
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr1_in       =       pciu_ta1_in ;
608
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr2_in       =       pciu_ta2_in ;
609
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr3_in       =       pciu_ta3_in ;
610
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr4_in       =       pciu_ta4_in ;
611
wire [(`WB_NUM_OF_DEC_ADDR_LINES - 1):0] pcit_if_pci_tran_addr5_in       =       pciu_ta5_in ;
612
wire            pcit_if_addr_tran_en0_in                                =       pciu_at_en_in[0] ;
613
wire            pcit_if_addr_tran_en1_in                                =       pciu_at_en_in[1] ;
614
wire            pcit_if_addr_tran_en2_in                                =       pciu_at_en_in[2] ;
615
wire            pcit_if_addr_tran_en3_in                                =       pciu_at_en_in[3] ;
616
wire            pcit_if_addr_tran_en4_in                                =       pciu_at_en_in[4] ;
617
wire            pcit_if_addr_tran_en5_in                                =       pciu_at_en_in[5] ;
618
 
619
PCI_TARGET32_INTERFACE                          pci_target_if
620
(
621
    .clk_in                                                     (pci_clock_in),
622
    .reset_in                                           (reset_in),
623
    .address_in                                         (pcit_if_address_in),
624
    .addr_claim_out                                     (pcit_if_addr_claim_out),
625
    .bc_in                                                      (pcit_if_bc_in),
626
    .bc0_in                                                     (pcit_if_bc0_in),
627
    .data_in                                            (pcit_if_data_in),
628
    .data_out                                           (pcit_if_data_out),
629
    .be_in                                                      (pcit_if_be_in),
630
    .req_in                                                     (pcit_if_req_in),
631
    .rdy_in                                                     (pcit_if_rdy_in),
632
    .addr_phase_in                                      (pcit_if_addr_phase_in),
633
    .bckp_trdy_in                                       (pcit_if_bckp_trdy_in),
634
    .last_reg_in                                        (pcit_if_last_reg_in),
635
    .frame_reg_in                                       (pcit_if_frame_reg_in),
636
    .fetch_pcir_fifo_in                         (pcit_if_fetch_pcir_fifo_in),
637
    .load_medium_reg_in                         (pcit_if_load_medium_reg_in),
638
    .sel_fifo_mreg_in                           (pcit_if_sel_fifo_mreg_in),
639
    .sel_conf_fifo_in                           (pcit_if_sel_conf_fifo_in),
640
    .fetch_conf_in                              (pcit_if_fetch_conf_in),
641
    .load_to_pciw_fifo_in                       (pcit_if_load_to_pciw_fifo_in),
642
    .load_to_conf_in                            (pcit_if_load_to_conf_in),
643
    .same_read_out                                      (pcit_if_same_read_out),
644
        .norm_access_to_config_out              (pcit_if_norm_access_to_config_out),
645
        .read_completed_out                             (pcit_if_read_completed_out),
646
        .read_processing_out                    (pcit_if_read_processing_out),
647
        .target_abort_out                               (pcit_if_target_abort_out),
648
        .disconect_wo_data_out                  (pcit_if_disconect_wo_data_out),
649
        .pciw_fifo_full_out                             (pcit_if_pciw_fifo_full_out),
650
        .pcir_fifo_data_err_out                 (pcit_if_pcir_fifo_data_err_out),
651
        .wbw_fifo_empty_out                             (pcit_if_wbw_fifo_empty_out),
652
        .req_out                                                (pcit_if_req_out),
653
    .done_out                                           (pcit_if_done_out),
654
    .in_progress_out                            (pcit_if_in_progress_out),
655
        .req_req_pending_in                             (pcit_if_req_req_pending_in),
656
    .req_comp_pending_in                        (pcit_if_req_comp_pending_in),
657
        .addr_out                                               (pcit_if_addr_out),
658
    .be_out                                                     (pcit_if_be_out),
659
    .we_out                                                     (pcit_if_we_out),
660
    .bc_out                                                     (pcit_if_bc_out),
661
    .burst_out                                          (pcit_if_burst_out),
662
    .strd_addr_in                                       (pcit_if_strd_addr_in),
663
    .strd_bc_in                                         (pcit_if_strd_bc_in),
664
    .status_in                                          (pcit_if_status_in),
665
    .comp_flush_in                                      (pcit_if_comp_flush_in),
666
        .pcir_fifo_renable_out                  (pcit_if_pcir_fifo_renable_out),
667
        .pcir_fifo_data_in                              (pcit_if_pcir_fifo_data_in),
668
        .pcir_fifo_be_in                                (pcit_if_pcir_fifo_be_in),
669
        .pcir_fifo_control_in                   (pcit_if_pcir_fifo_control_in),
670
        .pcir_fifo_flush_out                    (pcit_if_pcir_fifo_flush_out),
671
        .pcir_fifo_almost_empty_in              (pcit_if_pcir_fifo_almost_empty_in),
672
        .pcir_fifo_empty_in                             (pcit_if_pcir_fifo_empty_in),
673
        .pciw_fifo_wenable_out                  (pcit_if_pciw_fifo_wenable_out),
674
        .pciw_fifo_addr_data_out                (pcit_if_pciw_fifo_addr_data_out),
675
        .pciw_fifo_cbe_out                              (pcit_if_pciw_fifo_cbe_out),
676
        .pciw_fifo_control_out                  (pcit_if_pciw_fifo_control_out),
677
        .pciw_fifo_two_left_in                  (pcit_if_pciw_fifo_two_left_in),
678
        .pciw_fifo_almost_full_in               (pcit_if_pciw_fifo_almost_full_in),
679
        .pciw_fifo_full_in                              (pcit_if_pciw_fifo_full_in),
680
        .wbw_fifo_empty_in                              (pcit_if_wbw_fifo_empty_in),
681
        .conf_hit_out                                   (pcit_if_conf_hit_out),
682
        .conf_addr_out                                  (pcit_if_conf_addr_out),
683
        .conf_data_out                                  (pcit_if_conf_data_out),
684
        .conf_data_in                                   (pcit_if_conf_data_in),
685
        .conf_be_out                                    (pcit_if_conf_be_out),
686
        .conf_we_out                                    (pcit_if_conf_we_out),
687
        .conf_re_out                                    (pcit_if_conf_re_out),
688
        .mem_enable_in                                  (pcit_if_mem_enable_in),
689
        .io_enable_in                                   (pcit_if_io_enable_in),
690
        .mem_io_addr_space0_in                  (pcit_if_mem_io_addr_space0_in),
691
        .mem_io_addr_space1_in                  (pcit_if_mem_io_addr_space1_in),
692
        .mem_io_addr_space2_in                  (pcit_if_mem_io_addr_space2_in),
693
        .mem_io_addr_space3_in                  (pcit_if_mem_io_addr_space3_in),
694
        .mem_io_addr_space4_in                  (pcit_if_mem_io_addr_space4_in),
695
        .mem_io_addr_space5_in                  (pcit_if_mem_io_addr_space5_in),
696
        .pre_fetch_en0_in                               (pcit_if_pre_fetch_en0_in),
697
        .pre_fetch_en1_in                               (pcit_if_pre_fetch_en1_in),
698
        .pre_fetch_en2_in                               (pcit_if_pre_fetch_en2_in),
699
        .pre_fetch_en3_in                               (pcit_if_pre_fetch_en3_in),
700
        .pre_fetch_en4_in                               (pcit_if_pre_fetch_en4_in),
701
        .pre_fetch_en5_in                               (pcit_if_pre_fetch_en5_in),
702
        .pci_base_addr0_in                              (pcit_if_pci_base_addr0_in),
703
        .pci_base_addr1_in                              (pcit_if_pci_base_addr1_in),
704
        .pci_base_addr2_in                              (pcit_if_pci_base_addr2_in),
705
        .pci_base_addr3_in                              (pcit_if_pci_base_addr3_in),
706
        .pci_base_addr4_in                              (pcit_if_pci_base_addr4_in),
707
        .pci_base_addr5_in                              (pcit_if_pci_base_addr5_in),
708
        .pci_addr_mask0_in                              (pcit_if_pci_addr_mask0_in),
709
        .pci_addr_mask1_in                              (pcit_if_pci_addr_mask1_in),
710
        .pci_addr_mask2_in                              (pcit_if_pci_addr_mask2_in),
711
        .pci_addr_mask3_in                              (pcit_if_pci_addr_mask3_in),
712
        .pci_addr_mask4_in                              (pcit_if_pci_addr_mask4_in),
713
        .pci_addr_mask5_in                              (pcit_if_pci_addr_mask5_in),
714
        .pci_tran_addr0_in                              (pcit_if_pci_tran_addr0_in),
715
        .pci_tran_addr1_in                              (pcit_if_pci_tran_addr1_in),
716
        .pci_tran_addr2_in                              (pcit_if_pci_tran_addr2_in),
717
        .pci_tran_addr3_in                              (pcit_if_pci_tran_addr3_in),
718
        .pci_tran_addr4_in                              (pcit_if_pci_tran_addr4_in),
719
        .pci_tran_addr5_in                              (pcit_if_pci_tran_addr5_in),
720
        .addr_tran_en0_in                               (pcit_if_addr_tran_en0_in),
721
        .addr_tran_en1_in                               (pcit_if_addr_tran_en1_in),
722
        .addr_tran_en2_in                               (pcit_if_addr_tran_en2_in),
723
        .addr_tran_en3_in                               (pcit_if_addr_tran_en3_in),
724
        .addr_tran_en4_in                               (pcit_if_addr_tran_en4_in),
725
        .addr_tran_en5_in                               (pcit_if_addr_tran_en5_in)
726
) ;
727
 
728
// pci target state machine inputs
729
wire            pcit_sm_frame_in                                        =       pciu_pciif_frame_in ;
730
wire            pcit_sm_irdy_in                     =   pciu_pciif_irdy_in ;
731
wire            pcit_sm_idsel_in                    =   pciu_pciif_idsel_in ;
732
wire            pcit_sm_frame_reg_in                =   pciu_pciif_frame_reg_in ;
733
wire            pcit_sm_irdy_reg_in                 =   pciu_pciif_irdy_reg_in ;
734
wire            pcit_sm_idsel_reg_in                =   pciu_pciif_idsel_reg_in ;
735
wire [31:0] pcit_sm_ad_reg_in                   =        pciu_pciif_ad_reg_in ;
736
wire  [3:0] pcit_sm_cbe_reg_in                  =        pciu_pciif_cbe_reg_in ;
737
wire            pcit_sm_bckp_trdy_en_in                         =       pciu_pciif_bckp_trdy_en_in ;
738
wire            pcit_sm_bckp_devsel_in                          =       pciu_pciif_bckp_devsel_in ;
739
wire            pcit_sm_bckp_trdy_in                            =       pciu_pciif_bckp_trdy_in ;
740
wire            pcit_sm_bckp_stop_in                            =       pciu_pciif_bckp_stop_in ;
741
wire            pcit_sm_addr_claim_in               =   pcit_if_addr_claim_out ;
742
wire [31:0] pcit_sm_data_in                     =        pcit_if_data_out ;
743
wire            pcit_sm_same_read_in                =   pcit_if_same_read_out ;
744
wire            pcit_sm_norm_access_to_config_in    =   pcit_if_norm_access_to_config_out ;
745
wire            pcit_sm_read_completed_in           =   pcit_if_read_completed_out ;
746
wire            pcit_sm_read_processing_in          =   pcit_if_read_processing_out ;
747
wire            pcit_sm_target_abort_in             =   pcit_if_target_abort_out ;
748
wire            pcit_sm_disconect_wo_data_in        =   pcit_if_disconect_wo_data_out ;
749
wire            pcit_sm_pciw_fifo_full_in           =   pcit_if_pciw_fifo_full_out ;
750
wire            pcit_sm_pcir_fifo_data_err_in       =   pcit_if_pcir_fifo_data_err_out ;
751
wire            pcit_sm_wbw_fifo_empty_in           =   pcit_if_wbw_fifo_empty_out ;
752
wire            pcit_sm_wbu_frame_en_in                         =       pciu_wbu_frame_en_in ;
753
 
754
PCI_TARGET32_SM                                 pci_target_sm
755
(
756
    .clk_in                                             (pci_clock_in),
757
    .reset_in                                   (reset_in),
758
    .pci_frame_in                               (pcit_sm_frame_in),
759
    .pci_irdy_in                                (pcit_sm_irdy_in),
760
    .pci_idsel_in                               (pcit_sm_idsel_in),
761
    .pci_frame_reg_in                   (pcit_sm_frame_reg_in),
762
    .pci_irdy_reg_in                    (pcit_sm_irdy_reg_in),
763
    .pci_idsel_reg_in                   (pcit_sm_idsel_reg_in),
764
    .pci_trdy_out                               (pcit_sm_trdy_out),
765
    .pci_stop_out                               (pcit_sm_stop_out),
766
    .pci_devsel_out                             (pcit_sm_devsel_out),
767
    .pci_trdy_en_out                    (pcit_sm_trdy_en_out),
768
    .pci_stop_en_out                    (pcit_sm_stop_en_out),
769
    .pci_devsel_en_out                  (pcit_sm_devsel_en_out),
770
    .pci_target_load_out                (pcit_sm_target_load_out),
771
    .pci_ad_reg_in                              (pcit_sm_ad_reg_in),
772
    .pci_ad_out                                 (pcit_sm_ad_out),
773
    .pci_ad_en_out                              (pcit_sm_ad_en_out),
774
    .pci_cbe_reg_in                             (pcit_sm_cbe_reg_in),
775
    .bckp_trdy_en_in                    (pcit_sm_bckp_trdy_en_in),
776
    .bckp_devsel_in                             (pcit_sm_bckp_devsel_in),
777
    .bckp_trdy_in                               (pcit_sm_bckp_trdy_in),
778
    .bckp_stop_in                               (pcit_sm_bckp_stop_in),
779
    .address_out                                (pcit_sm_address_out),
780
    .addr_claim_in                              (pcit_sm_addr_claim_in),
781
    .bc_out                                             (pcit_sm_bc_out),
782
    .bc0_out                                    (pcit_sm_bc0_out),
783
    .data_out                                   (pcit_sm_data_out),
784
    .data_in                                    (pcit_sm_data_in),
785
    .be_out                                             (pcit_sm_be_out),
786
    .req_out                                    (pcit_sm_req_out),
787
    .rdy_out                                    (pcit_sm_rdy_out),
788
    .addr_phase_out                             (pcit_sm_addr_phase_out),
789
    .bckp_trdy_out                              (pcit_sm_bckp_trdy_out),
790
    .last_reg_out                               (pcit_sm_last_reg_out),
791
    .frame_reg_out                              (pcit_sm_frame_reg_out),
792
    .fetch_pcir_fifo_out                (pcit_sm_fetch_pcir_fifo_out),
793
    .load_medium_reg_out                (pcit_sm_load_medium_reg_out),
794
    .sel_fifo_mreg_out                  (pcit_sm_sel_fifo_mreg_out),
795
    .sel_conf_fifo_out                  (pcit_sm_sel_conf_fifo_out),
796
    .fetch_conf_out                             (pcit_sm_fetch_conf_out),
797
    .load_to_pciw_fifo_out              (pcit_sm_load_to_pciw_fifo_out),
798
    .load_to_conf_out                   (pcit_sm_load_to_conf_out),
799
        .same_read_in                           (pcit_sm_same_read_in),
800
        .norm_access_to_config_in       (pcit_sm_norm_access_to_config_in),
801
        .read_completed_in                      (pcit_sm_read_completed_in),
802
        .read_processing_in                     (pcit_sm_read_processing_in),
803
        .target_abort_in                        (pcit_sm_target_abort_in),
804
        .disconect_wo_data_in           (pcit_sm_disconect_wo_data_in),
805
        .target_abort_set_out           (pcit_sm_target_abort_set_out),
806
        .pciw_fifo_full_in                      (pcit_sm_pciw_fifo_full_in),
807
        .pcir_fifo_data_err_in          (pcit_sm_pcir_fifo_data_err_in),
808
        .wbw_fifo_empty_in          (pcit_sm_wbw_fifo_empty_in),
809
        .wbu_frame_en_in                        (pcit_sm_wbu_frame_en_in)
810
) ;
811
 
812
endmodule

powered by: WebSVN 2.1.0

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