Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / design / sys / iop / niu / rtl / niu_smx_resp_dmc.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: niu_smx_resp_dmc.v
4// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
5// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
6//
7// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8//
9// This program is free software; you can redistribute it and/or modify
10// it under the terms of the GNU General Public License as published by
11// the Free Software Foundation; version 2 of the License.
12//
13// This program is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17//
18// You should have received a copy of the GNU General Public License
19// along with this program; if not, write to the Free Software
20// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21//
22// For the avoidance of doubt, and except that if any non-GPL license
23// choice is available it will apply instead, Sun elects to use only
24// the General Public License version 2 (GPLv2) at this time for any
25// software where a choice of GPL license versions is made
26// available with the language indicating that GPLv2 or any later version
27// may be used, or where a choice of which version of the GPL is applied is
28// otherwise unspecified.
29//
30// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
31// CA 95054 USA or visit www.sun.com if you need additional information or
32// have any questions.
33//
34// ========== Copyright Header End ============================================
35module niu_smx_resp_dmc(
36/*AUTOARG*/
37 // Outputs
38 meta_dmc_resp_ready, meta_dmc_resp_cmd, meta_dmc_resp_cmd_status,
39 meta_dmc_resp_address, meta_dmc_resp_length,
40 meta_dmc_resp_transID, meta_dmc_resp_port_num,
41 meta_dmc_resp_dma_num, meta_dmc_resp_client, meta_dmc_data_valid,
42 meta_dmc_data, meta_dmc_resp_byteenable, meta_dmc_data_status,
43 meta_dmc_resp_complete, meta_dmc_resp_transfer_cmpl,
44 meta_dmc_ack_ready, meta_dmc_ack_cmd, meta_dmc_ack_cmd_status,
45 meta_dmc_ack_transID, meta_dmc_ack_dma_num, meta_dmc_ack_client,
46 meta_dmc_ack_complete, meta_dmc_ack_transfer_cmpl, niu_sio_dq,
47 xtb_rd, xtb_raddr, xtb_rcvfile_update, xtb_rcvfile_update_addr,
48 resp_cmdff_rd, resp_dataff_rd, tid_valid_rst0,
49 tid_valid_rst_addr0, tid_valid_rd, tid_valid_raddr, resp_rcv_set,
50 resp_rcv_set_addr, cmdl_tohdl_ack, cmdl_cs, dv_cs, proc_cs,
51 // Inputs
52 clk, reset_l, dmc_meta_resp_accept, dmc_meta_ack_accept,
53 xtb_rdata, xtb_rd_ack, xtb_rdata_err, resp_cmdff_empty,
54 resp_cmdff_rdata, resp_dataff_empty, resp_dataff_rdata,
55 tid_valid_rdata, tohdl_cmdl_req, tohdl_cmdl_cmd, tohdl_cmdl_addr,
56 tohdl_cmdl_len, tohdl_cmdl_xid, tohdl_cmdl_port, tohdl_cmdl_dma,
57 tohdl_cmdl_client, pio_resp_err_inject_cfg, tid_dirty_rdata_bus
58 );
59
60input clk;
61input reset_l;
62
63// dmc cmd if
64output meta_dmc_resp_ready;
65output [7:0] meta_dmc_resp_cmd;
66output [3:0] meta_dmc_resp_cmd_status;
67output [63:0] meta_dmc_resp_address;
68output [13:0] meta_dmc_resp_length;
69output [5:0] meta_dmc_resp_transID;
70output [1:0] meta_dmc_resp_port_num;
71output [4:0] meta_dmc_resp_dma_num;
72output [7:0] meta_dmc_resp_client;
73input [7:0] dmc_meta_resp_accept;
74
75// dmc data if
76output [7:0] meta_dmc_data_valid;
77output [127:0] meta_dmc_data;
78output [15:0] meta_dmc_resp_byteenable;
79output [3:0] meta_dmc_data_status;
80output [7:0] meta_dmc_resp_complete;
81output [7:0] meta_dmc_resp_transfer_cmpl;
82
83// dmc ack if
84output meta_dmc_ack_ready;
85output [7:0] meta_dmc_ack_cmd;
86output [3:0] meta_dmc_ack_cmd_status;
87// output [63:0] meta_dmc_ack_address;
88// output [13:0] meta_dmc_ack_length;
89output [5:0] meta_dmc_ack_transID;
90// output [1:0] meta_dmc_ack_port_num;
91output [4:0] meta_dmc_ack_dma_num;
92output [7:0] meta_dmc_ack_client;
93input [7:0] dmc_meta_ack_accept;
94// output [7:0] meta_dmc_ack_complete;
95output meta_dmc_ack_complete;
96output [7:0] meta_dmc_ack_transfer_cmpl;
97
98
99// sio if
100output niu_sio_dq;
101
102// xtb if
103output xtb_rd;
104output [5:0] xtb_raddr;
105input [128:0] xtb_rdata;
106input xtb_rd_ack; // rst client rd signal
107input xtb_rdata_err;
108
109output xtb_rcvfile_update;
110output [5:0] xtb_rcvfile_update_addr;
111
112// resp cmdff if
113input resp_cmdff_empty;
114input [21:0] resp_cmdff_rdata;
115output resp_cmdff_rd;
116
117// resp dataff if
118input resp_dataff_empty;
119input [143:0] resp_dataff_rdata;
120output resp_dataff_rd;
121
122// status if
123output tid_valid_rst0; // rst by resp_cmdproc
124output [5:0] tid_valid_rst_addr0;
125
126output tid_valid_rd; // rd by resp_cmdproc
127output [5:0] tid_valid_raddr;
128input tid_valid_rdata;
129
130output resp_rcv_set; // set by resp_cmdproc
131output [5:0] resp_rcv_set_addr;
132
133 // TO handler if
134input tohdl_cmdl_req;
135input [7:0] tohdl_cmdl_cmd;
136input [63:0] tohdl_cmdl_addr;
137input [13:0] tohdl_cmdl_len;
138input [5:0] tohdl_cmdl_xid;
139input [1:0] tohdl_cmdl_port;
140input [4:0] tohdl_cmdl_dma;
141input [7:0] tohdl_cmdl_client;
142output cmdl_tohdl_ack;
143
144// pio i/f
145input [2:0] pio_resp_err_inject_cfg; // [0] - one pkt
146 // [1] - alt pkt
147 // [2] - all pkt
148
149output [2:0] cmdl_cs;
150output [2:0] dv_cs;
151output [1:0] proc_cs;
152
153input [63:0] tid_dirty_rdata_bus;
154
155
156/*AUTOWIRE*/
157// Beginning of automatic wires (for undeclared instantiated-module outputs)
158wire dv_idle; // From resp_dv of niu_smx_sm_resp_dv.v
159wire dvflag; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
160wire [7:0] dvflag_client; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
161wire [15:0] dvflag_eop_byte_en; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
162wire [3:0] dvflag_eop_pos; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
163wire [3:0] dvflag_line_en; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
164wire [15:0] dvflag_sop_byte_en; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
165wire [3:0] dvflag_sop_pos; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
166wire [3:0] dvflag_status; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
167wire [1:0] dvflag_with_data; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
168wire [3:0] dvflag_xcomp; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
169wire early_dvflag; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
170wire [7:0] early_dvflag_client; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
171wire [15:0] early_dvflag_eop_byte_en;// From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
172wire [3:0] early_dvflag_eop_pos; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
173wire [3:0] early_dvflag_line_en; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
174wire [15:0] early_dvflag_sop_byte_en;// From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
175wire [3:0] early_dvflag_sop_pos; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
176wire [3:0] early_dvflag_status; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
177wire [1:0] early_dvflag_with_data; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
178wire [3:0] early_dvflag_xcomp; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
179wire procflag; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
180wire [63:0] procflag_addr; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
181wire [7:0] procflag_client; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
182wire [7:0] procflag_cmd; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
183wire [4:0] procflag_dma; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
184wire procflag_eop; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
185wire [3:0] procflag_eop_byte_en; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
186wire [3:0] procflag_eop_line_en; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
187wire [2:0] procflag_err; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
188wire [1:0] procflag_port; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
189wire procflag_rd; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
190wire procflag_sop; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
191wire [3:0] procflag_sop_byte_en; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
192wire [3:0] procflag_sop_line_en; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
193wire procflag_with_data; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
194wire procflag_xcomp; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
195wire [5:0] procflag_xid; // From resp_cmdproc of niu_smx_sm_resp_cmdproc.v
196wire rst_dvflag; // From resp_dv of niu_smx_sm_resp_dv.v
197wire rst_procflag; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
198wire [7:0] smx_dmc_ack_client; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
199wire [7:0] smx_dmc_ack_cmd; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
200wire [3:0] smx_dmc_ack_cmd_status; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
201wire [7:0] smx_dmc_ack_comp; // From resp_dv of niu_smx_sm_resp_dv.v
202wire [4:0] smx_dmc_ack_dma; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
203wire smx_dmc_ack_rdy; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
204wire [7:0] smx_dmc_ack_xcomp; // From resp_dv of niu_smx_sm_resp_dv.v
205wire [5:0] smx_dmc_ack_xid; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
206wire [63:0] smx_dmc_addr; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
207wire [15:0] smx_dmc_byte_en; // From resp_dv of niu_smx_sm_resp_dv.v
208wire [7:0] smx_dmc_client; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
209wire [7:0] smx_dmc_cmd; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
210wire [3:0] smx_dmc_cmd_status; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
211wire [127:0] smx_dmc_data; // From resp_dv of niu_smx_sm_resp_dv.v
212wire [4:0] smx_dmc_dma; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
213wire [7:0] smx_dmc_dv; // From resp_dv of niu_smx_sm_resp_dv.v
214wire [13:0] smx_dmc_len; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
215wire [1:0] smx_dmc_port; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
216wire smx_dmc_rdy; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
217wire [7:0] smx_dmc_resp_comp; // From resp_dv of niu_smx_sm_resp_dv.v
218wire [3:0] smx_dmc_status; // From resp_dv of niu_smx_sm_resp_dv.v
219wire [7:0] smx_dmc_xcomp; // From resp_dv of niu_smx_sm_resp_dv.v
220wire [5:0] smx_dmc_xid; // From resp_cmdlaunch of niu_smx_sm_resp_cmdlaunch.v
221// End of automatics
222
223
224wire meta_dmc_resp_ready= smx_dmc_rdy;
225wire [7:0] meta_dmc_resp_cmd= smx_dmc_cmd;
226wire [3:0] meta_dmc_resp_cmd_status= smx_dmc_cmd_status;
227wire [63:0] meta_dmc_resp_address= smx_dmc_addr;
228wire [13:0] meta_dmc_resp_length= smx_dmc_len;
229wire [5:0] meta_dmc_resp_transID= smx_dmc_xid;
230wire [1:0] meta_dmc_resp_port_num= smx_dmc_port;
231wire [4:0] meta_dmc_resp_dma_num= smx_dmc_dma;
232wire [7:0] meta_dmc_resp_client= smx_dmc_client;
233wire [7:0] dmc_smx_accept= dmc_meta_resp_accept;
234
235// dmc data if
236wire [7:0] meta_dmc_data_valid= smx_dmc_dv;
237wire [127:0] meta_dmc_data= smx_dmc_data;
238wire [15:0] meta_dmc_resp_byteenable= smx_dmc_byte_en;
239wire [3:0] meta_dmc_data_status= smx_dmc_status;
240wire [7:0] meta_dmc_resp_complete= smx_dmc_resp_comp;
241wire [7:0] meta_dmc_resp_transfer_cmpl= smx_dmc_xcomp;
242
243// dmc ack if
244wire meta_dmc_ack_ready= smx_dmc_ack_rdy;
245wire [7:0] meta_dmc_ack_cmd= smx_dmc_ack_cmd;
246wire [3:0] meta_dmc_ack_cmd_status= smx_dmc_ack_cmd_status;
247// wire [63:0] meta_dmc_ack_address= smx_dmc_ack_addr;
248// wire [13:0] meta_dmc_ack_length= smx_dmc_ack_len;
249wire [5:0] meta_dmc_ack_transID= smx_dmc_ack_xid;
250// wire [1:0] meta_dmc_ack_port_num= smx_dmc_ack_port;
251wire [4:0] meta_dmc_ack_dma_num= smx_dmc_ack_dma;
252wire [7:0] meta_dmc_ack_client= smx_dmc_ack_client;
253wire [7:0] dmc_smx_ack_accept= dmc_meta_ack_accept;
254// wire [7:0] meta_dmc_ack_complete= smx_dmc_ack_comp;
255wire meta_dmc_ack_complete= smx_dmc_ack_comp[2]; // only tdmc uses this
256 // do this for vlint
257wire [7:0] meta_dmc_ack_transfer_cmpl= smx_dmc_ack_xcomp;
258
259
260niu_smx_sm_resp_cmdproc resp_cmdproc( /*AUTOINST*/
261 // Outputs
262 .resp_cmdff_rd(resp_cmdff_rd),
263 .xtb_rd(xtb_rd),
264 .xtb_raddr(xtb_raddr[5:0]),
265 .xtb_rcvfile_update(xtb_rcvfile_update),
266 .xtb_rcvfile_update_addr(xtb_rcvfile_update_addr[5:0]),
267 .tid_valid_rst0(tid_valid_rst0),
268 .tid_valid_rst_addr0(tid_valid_rst_addr0[5:0]),
269 .tid_valid_rd(tid_valid_rd),
270 .tid_valid_raddr(tid_valid_raddr[5:0]),
271 .resp_rcv_set(resp_rcv_set),
272 .resp_rcv_set_addr(resp_rcv_set_addr[5:0]),
273 .procflag(procflag),
274 .procflag_cmd(procflag_cmd[7:0]),
275 .procflag_addr(procflag_addr[63:0]),
276 .procflag_xid(procflag_xid[5:0]),
277 .procflag_port(procflag_port[1:0]),
278 .procflag_dma(procflag_dma[4:0]),
279 .procflag_client(procflag_client[7:0]),
280 .procflag_sop_line_en(procflag_sop_line_en[3:0]),
281 .procflag_eop_line_en(procflag_eop_line_en[3:0]),
282 .procflag_sop_byte_en(procflag_sop_byte_en[3:0]),
283 .procflag_eop_byte_en(procflag_eop_byte_en[3:0]),
284 .procflag_err(procflag_err[2:0]),
285 .procflag_rd(procflag_rd),
286 .procflag_with_data(procflag_with_data),
287 .procflag_sop(procflag_sop),
288 .procflag_eop(procflag_eop),
289 .procflag_xcomp(procflag_xcomp),
290 .niu_sio_dq(niu_sio_dq),
291 .proc_cs(proc_cs[1:0]),
292 // Inputs
293 .clk(clk),
294 .reset_l(reset_l),
295 .resp_cmdff_empty(resp_cmdff_empty),
296 .resp_cmdff_rdata(resp_cmdff_rdata[21:0]),
297 .xtb_rdata(xtb_rdata[128:0]),
298 .xtb_rd_ack(xtb_rd_ack),
299 .xtb_rdata_err(xtb_rdata_err),
300 .tid_valid_rdata(tid_valid_rdata),
301 .rst_procflag(rst_procflag));
302/*
303 .resp_cmdff_empty (resp_cmdff_empty),
304 .resp_cmdff_rdata (resp_cmdff_rdata),
305 .resp_cmdff_rd (resp_cmdff_rd),
306 .xtb_rd (xtb_rd),
307 .xtb_raddr (xtb_raddr),
308 .xtb_rdata (xtb_rdata),
309 .procflag (procflag),
310 .procflag_cmd (procflag_cmd),
311 .procflag_addr (procflag_addr),
312 .procflag_len (procflag_len),
313 .procflag_xid (procflag_xid),
314 .procflag_port (procflag_port),
315 .procflag_dma (procflag_dma),
316 .procflag_client (procflag_client),
317 .procflag_sop_line_en (procflag_sop_line_en),
318 .procflag_eop_line_en (procflag_eop_line_en),
319 .procflag_sop_byte_en (procflag_sop_byte_en),
320 .procflag_eop_byte_en (procflag_eop_byte_en),
321 .procflag_err (procflag_err),
322 .procflag_rd (procflag_rd),
323 .procflag_with_data (procflag_with_data),
324 .procflag_sop (procflag_sop),
325 .procflag_eop (procflag_eop),
326 .procflag_xcomp (procflag_xcomp),
327 .rst_procflag (rst_procflag),
328 .cmdlaunch_idle (cmdlaunch_idle),
329 .early_procflag (early_procflag),
330 .early_procflag_data (early_procflag_data)
331*/
332
333// ??? instantiate
334niu_smx_sm_resp_cmdlaunch resp_cmdlaunch( /*AUTOINST*/
335 // Outputs
336 .smx_dmc_rdy(smx_dmc_rdy),
337 .smx_dmc_cmd(smx_dmc_cmd[7:0]),
338 .smx_dmc_cmd_status(smx_dmc_cmd_status[3:0]),
339 .smx_dmc_addr(smx_dmc_addr[63:0]),
340 .smx_dmc_len(smx_dmc_len[13:0]),
341 .smx_dmc_xid(smx_dmc_xid[5:0]),
342 .smx_dmc_port(smx_dmc_port[1:0]),
343 .smx_dmc_dma(smx_dmc_dma[4:0]),
344 .smx_dmc_client(smx_dmc_client[7:0]),
345 .smx_dmc_ack_rdy(smx_dmc_ack_rdy),
346 .smx_dmc_ack_cmd(smx_dmc_ack_cmd[7:0]),
347 .smx_dmc_ack_cmd_status(smx_dmc_ack_cmd_status[3:0]),
348 .smx_dmc_ack_xid(smx_dmc_ack_xid[5:0]),
349 .smx_dmc_ack_dma(smx_dmc_ack_dma[4:0]),
350 .smx_dmc_ack_client(smx_dmc_ack_client[7:0]),
351 .rst_procflag(rst_procflag),
352 .dvflag(dvflag),
353 .dvflag_with_data(dvflag_with_data[1:0]),
354 .dvflag_line_en(dvflag_line_en[3:0]),
355 .dvflag_sop_pos(dvflag_sop_pos[3:0]),
356 .dvflag_eop_pos(dvflag_eop_pos[3:0]),
357 .dvflag_sop_byte_en(dvflag_sop_byte_en[15:0]),
358 .dvflag_eop_byte_en(dvflag_eop_byte_en[15:0]),
359 .dvflag_client(dvflag_client[7:0]),
360 .dvflag_xcomp(dvflag_xcomp[3:0]),
361 .dvflag_status(dvflag_status[3:0]),
362 .early_dvflag(early_dvflag),
363 .early_dvflag_with_data(early_dvflag_with_data[1:0]),
364 .early_dvflag_line_en(early_dvflag_line_en[3:0]),
365 .early_dvflag_sop_pos(early_dvflag_sop_pos[3:0]),
366 .early_dvflag_eop_pos(early_dvflag_eop_pos[3:0]),
367 .early_dvflag_sop_byte_en(early_dvflag_sop_byte_en[15:0]),
368 .early_dvflag_eop_byte_en(early_dvflag_eop_byte_en[15:0]),
369 .early_dvflag_client(early_dvflag_client[7:0]),
370 .early_dvflag_xcomp(early_dvflag_xcomp[3:0]),
371 .early_dvflag_status(early_dvflag_status[3:0]),
372 .cmdl_tohdl_ack(cmdl_tohdl_ack),
373 .cmdl_cs(cmdl_cs[2:0]),
374 // Inputs
375 .clk(clk),
376 .reset_l(reset_l),
377 .dmc_smx_accept(dmc_smx_accept[7:0]),
378 .dmc_smx_ack_accept(dmc_smx_ack_accept[7:0]),
379 .procflag(procflag),
380 .procflag_cmd(procflag_cmd[7:0]),
381 .procflag_addr(procflag_addr[63:0]),
382 .procflag_xid(procflag_xid[5:0]),
383 .procflag_port(procflag_port[1:0]),
384 .procflag_dma(procflag_dma[4:0]),
385 .procflag_client(procflag_client[7:0]),
386 .procflag_sop_line_en(procflag_sop_line_en[3:0]),
387 .procflag_eop_line_en(procflag_eop_line_en[3:0]),
388 .procflag_sop_byte_en(procflag_sop_byte_en[3:0]),
389 .procflag_eop_byte_en(procflag_eop_byte_en[3:0]),
390 .procflag_err(procflag_err[2:0]),
391 .procflag_rd(procflag_rd),
392 .procflag_with_data(procflag_with_data),
393 .procflag_xcomp(procflag_xcomp),
394 .procflag_sop(procflag_sop),
395 .procflag_eop(procflag_eop),
396 .rst_dvflag(rst_dvflag),
397 .dv_idle(dv_idle),
398 .tohdl_cmdl_req(tohdl_cmdl_req),
399 .tohdl_cmdl_cmd(tohdl_cmdl_cmd[7:0]),
400 .tohdl_cmdl_addr(tohdl_cmdl_addr[63:0]),
401 .tohdl_cmdl_len(tohdl_cmdl_len[13:0]),
402 .tohdl_cmdl_xid(tohdl_cmdl_xid[5:0]),
403 .tohdl_cmdl_port(tohdl_cmdl_port[1:0]),
404 .tohdl_cmdl_dma(tohdl_cmdl_dma[4:0]),
405 .tohdl_cmdl_client(tohdl_cmdl_client[7:0]),
406 .tid_dirty_rdata_bus(tid_dirty_rdata_bus[63:0]));
407
408niu_smx_sm_resp_dv resp_dv( /*AUTOINST*/
409 // Outputs
410 .smx_dmc_dv (smx_dmc_dv[7:0]),
411 .smx_dmc_data(smx_dmc_data[127:0]),
412 .smx_dmc_byte_en(smx_dmc_byte_en[15:0]),
413 .smx_dmc_status(smx_dmc_status[3:0]),
414 .smx_dmc_resp_comp(smx_dmc_resp_comp[7:0]),
415 .smx_dmc_xcomp(smx_dmc_xcomp[7:0]),
416 .smx_dmc_ack_comp(smx_dmc_ack_comp[7:0]),
417 .smx_dmc_ack_xcomp(smx_dmc_ack_xcomp[7:0]),
418 .rst_dvflag (rst_dvflag),
419 .dv_idle (dv_idle),
420 .resp_dataff_rd(resp_dataff_rd),
421 .dv_cs (dv_cs[2:0]),
422 // Inputs
423 .clk (clk),
424 .reset_l (reset_l),
425 .dvflag (dvflag),
426 .dvflag_with_data(dvflag_with_data[1:0]),
427 .dvflag_line_en(dvflag_line_en[3:0]),
428 .dvflag_sop_pos(dvflag_sop_pos[3:0]),
429 .dvflag_eop_pos(dvflag_eop_pos[3:0]),
430 .dvflag_sop_byte_en(dvflag_sop_byte_en[15:0]),
431 .dvflag_eop_byte_en(dvflag_eop_byte_en[15:0]),
432 .dvflag_client(dvflag_client[7:0]),
433 .dvflag_xcomp(dvflag_xcomp[3:0]),
434 .dvflag_status(dvflag_status[3:0]),
435 .early_dvflag(early_dvflag),
436 .early_dvflag_with_data(early_dvflag_with_data[1:0]),
437 .early_dvflag_line_en(early_dvflag_line_en[3:0]),
438 .early_dvflag_sop_pos(early_dvflag_sop_pos[3:0]),
439 .early_dvflag_eop_pos(early_dvflag_eop_pos[3:0]),
440 .early_dvflag_sop_byte_en(early_dvflag_sop_byte_en[15:0]),
441 .early_dvflag_eop_byte_en(early_dvflag_eop_byte_en[15:0]),
442 .early_dvflag_client(early_dvflag_client[7:0]),
443 .early_dvflag_xcomp(early_dvflag_xcomp[3:0]),
444 .early_dvflag_status(early_dvflag_status[3:0]),
445 .resp_dataff_empty(resp_dataff_empty),
446 .resp_dataff_rdata(resp_dataff_rdata[143:0]),
447 .pio_resp_err_inject_cfg(pio_resp_err_inject_cfg[2:0]));
448
449endmodule