Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / siu / siu_cov.if.vrhpal
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: siu_cov.if.vrhpal
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 ============================================
35#ifndef __SIU_COV_IF_VRH__
36#define __SIU_COV_IF_VRH__
37
38#include <vera_defines.vrh>
39
40#define OUTPUT_EDGE PHOLD
41#define OUTPUT_SKEW #3
42#define INPUT_EDGE PSAMPLE
43#define INPUT_SKEW #-3
44
45#ifdef FC_COVERAGE
46#define SII `TOP.cpu.sii
47#define SIO `TOP.cpu.sio
48#else
49#define SII siu_top.cpu.sii
50#define SIO siu_top.cpu.sio
51#endif
52
53
54
55interface siu_coverage_ifc
56{
57// Common & Clock Signals
58input clk CLOCK verilog_node "`SII.iol2clk";
59
60input cmp_diag_done PSAMPLE;
61
62// dmu interface
63input dmureq INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_hdr_vld";
64input dmubypass INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_reqbypass";
65input dmudatareq INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_datareq";
66input dmudatareq16 INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_datareq16";
67input [127:0] dmudata INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_data";
68input [1:0] dmuparity INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_parity";
69input [15:0] dmube INPUT_EDGE INPUT_SKEW verilog_node "`SII.dmu_sii_be";
70input dmuwrack_vld INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_dmu_wrack_vld";
71input [3:0] dmuwrack_tag INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_dmu_wrack_tag";
72
73//sio-dmu
74input sio_dmu_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.sio_dmu_hdr_vld";
75input [127:0] sio_dmu_data INPUT_EDGE INPUT_SKEW verilog_node "`SIO.sio_dmu_data";
76
77// niu interface
78input niureq INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_hdr_vld";
79input niubypass INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_reqbypass";
80input niudatareq INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_datareq";
81input niudatareq16 INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_datareq16";
82input [127:0] niudata INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_data";
83input [1:0] niuparity INPUT_EDGE INPUT_SKEW verilog_node "`SII.niu_sii_parity";
84input niuoqdq INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_niu_oqdq";
85input niubqdq INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_niu_bqdq";
86
87//sio-niu
88input sio_niu_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.sio_niu_hdr_vld";
89input [127:0] sio_niu_data INPUT_EDGE INPUT_SKEW verilog_node "`SIO.sio_niu_data";
90input niu_sio_dq INPUT_EDGE INPUT_SKEW verilog_node "`SIO.niu_sio_dq";
91
92//ncu-sii
93input ncu_gnt INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_gnt";
94input ncu_req INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_ncu_req";
95input ncu_pm INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_pm";
96input ncu_ba01 INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_ba01";
97input ncu_ba23 INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_ba23";
98input ncu_ba45 INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_ba45";
99input ncu_ba67 INPUT_EDGE INPUT_SKEW verilog_node "`SII.ncu_sii_ba67";
100
101}
102
103interface siu_coverage_ifc_l2
104{
105input clk CLOCK verilog_node "`SII.l2clk";
106input cmp_diag_done PSAMPLE;
107
108// L2 interface
109. for ($bank=0; $bank<8; $bank++)
110.{
111 input l2t${bank}_iq_dq INPUT_EDGE INPUT_SKEW verilog_node "`SII.l2t${bank}_sii_iq_dequeue";
112 input l2t${bank}_wib_dq INPUT_EDGE INPUT_SKEW verilog_node "`SII.l2t${bank}_sii_wib_dequeue";
113 input sii_l2t${bank} INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_l2t${bank}_req_vld";
114 input [31:0] sii_l2t${bank}_data INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_l2t${bank}_req";
115
116input l2b${bank}_sio_ctag_vld INPUT_EDGE INPUT_SKEW verilog_node "`SIO.l2b${bank}_sio_ctag_vld";
117input [31:0] l2b${bank}_sio_data INPUT_EDGE INPUT_SKEW verilog_node "`SIO.l2b${bank}_sio_data";
118
119.}
120
121}
122
123// ipdohq ipodq
124.for ($q=0; $q<2; $q++)
125.{
126interface siu_coverage_ipdoq${q}_rd
127{
128input clk CLOCK verilog_node "`SII.ipdohq${q}.rdclk";
129input cmp_diag_done PSAMPLE;
130
131input h_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdohq${q}.rd_en";
132input [3:0] h_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdohq${q}.rd_adr";
133input d_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdodq${q}_l.rd_en";
134input [5:0] d_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdodq${q}_l.rd_adr";
135}
136
137interface siu_coverage_ipdoq${q}_wr
138{
139input clk CLOCK verilog_node "`SII.ipdohq${q}.wrclk";
140input cmp_diag_done PSAMPLE;
141
142input h_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdohq${q}.wr_en";
143input [3:0] h_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdohq${q}.wr_adr";
144input d_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdodq${q}_l.wr_en";
145input [5:0] d_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdodq${q}_l.wr_adr";
146
147}
148.}
149
150.for ($q=0; $q<2; $q++)
151.{
152interface siu_coverage_ipdbq${q}_rd
153{
154input clk CLOCK verilog_node "`SII.ipdbhq${q}.rdclk";
155input cmp_diag_done PSAMPLE;
156
157input h_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbhq${q}.rd_en";
158input [3:0] h_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbhq${q}.rd_adr";
159input d_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbdq${q}_l.rd_en";
160input [5:0] d_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbdq${q}_l.rd_adr";
161}
162
163interface siu_coverage_ipdbq${q}_wr
164{
165input clk CLOCK verilog_node "`SII.ipdbhq${q}.wrclk";
166input cmp_diag_done PSAMPLE;
167
168input h_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbhq${q}.wr_en";
169input [3:0] h_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbhq${q}.wr_adr";
170input d_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbdq${q}_l.wr_en";
171input [5:0] d_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipdbdq${q}_l.wr_adr";
172}
173.}
174
175.for ($q=0; $q<8; $q++)
176.{
177interface siu_coverage_ildq${q}
178{
179input clk CLOCK verilog_node "`SII.ildq${q}.rdclk";
180input cmp_diag_done PSAMPLE;
181
182input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.wr_en";
183input [4:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.wr_adr";
184input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.rd_en";
185input [4:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.rd_adr";
186}
187.}
188
189interface siu_coverage_indq
190{
191input clk CLOCK verilog_node "`SII.indq.rdclk";
192input cmp_diag_done PSAMPLE;
193
194input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.indq.wr_en";
195input [5:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.indq.wr_adr";
196input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.indq.rd_en";
197input [5:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.indq.rd_adr";
198}
199
200interface siu_coverage_ipcc_ipcs
201{
202input clk CLOCK verilog_node "`SII.ipcs0.iol2clk";
203input cmp_diag_done PSAMPLE;
204
205input by0_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.ipcc_ipcs_by_go";
206input [3:0] by0_raddr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.ipcc_ipcs_by_raddr";
207input or0_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.ipcc_ipcs_or_go";
208input [3:0] or0_raddr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.ipcc_ipcs_or_raddr";
209input by1_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.ipcc_ipcs_by_go";
210input [3:0] by1_raddr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.ipcc_ipcs_by_raddr";
211input or1_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.ipcc_ipcs_or_go";
212input [3:0] or1_raddr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.ipcc_ipcs_or_raddr";
213}
214
215interface siu_sii_check_cnt_dmu_or
216{
217input clk CLOCK verilog_node "`SII.ipcc.l2clk";
218input [4:0] dmu_or_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.dmu_or_cnt_r";
219}
220
221interface siu_sii_check_cnt_dmu_by
222{
223input clk CLOCK verilog_node "`SII.ipcc.l2clk";
224input [4:0] dmu_by_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.dmu_by_cnt_r";
225}
226
227interface siu_sii_check_cnt_niu_or
228{
229input clk CLOCK verilog_node "`SII.ipcc.l2clk";
230input [4:0] niu_or_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.niu_or_cnt_r";
231}
232
233interface siu_sii_check_cnt_niu_by
234{
235input clk CLOCK verilog_node "`SII.ipcc.l2clk";
236input [4:0] niu_by_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.niu_by_cnt_r";
237}
238
239interface siu_sio_commun_dmu_by
240{
241input clk CLOCK verilog_node "`SIO.opcc.l2clk";
242input [2:0] sio_sii_opcc_ipcc_dmu_by_cnt INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcc.sio_sii_opcc_ipcc_dmu_by_cnt";
243}
244
245interface siu_sio_commun_niu_by
246{
247input clk CLOCK verilog_node "`SIO.opcc.l2clk";
248input [2:0] sio_sii_opcc_ipcc_niu_by_cnt INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcc.sio_sii_opcc_ipcc_niu_by_cnt";
249}
250
251.for ($q=0; $q<8; $q++)
252.{
253interface siu_sio_buffer_cnt_ilc${q}
254{
255input clk CLOCK verilog_node "`SII.ipcc.l2clk";
256input [2:0] sio_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ilc${q}.sio_cnt_r";
257}
258.}
259
260interface siu_ipcc_wrm_cnt
261{
262input clk CLOCK verilog_node "`SII.ipcc.l2clk";
263input [3:0] dmu_wrm_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.dmu_wrm_cnt_r";
264}
265
266.for ($q=0; $q<8; $q++)
267.{
268interface siu_ilc${q}_wrm_cnt
269{
270input clk CLOCK verilog_node "`SII.ipcc.l2clk";
271input [2:0] wrm_cnt_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ilc${q}.wrm_cnt_r";
272}
273.}
274
275.for ($q=0; $q<8; $q++)
276.{
277interface siu_ilc${q}_state_machine
278{
279input clk CLOCK verilog_node "`SII.ilc${q}.l2clk";
280input [5:0] cstate INPUT_EDGE INPUT_SKEW verilog_node "`SII.ilc${q}.cstate";
281}
282.}
283
284interface siu_ipcc_state_machine
285{
286input clk CLOCK verilog_node "`SII.ipcc.l2clk";
287input [13:0] cstate INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.cstate";
288}
289
290interface siu_inc_state_machine
291{
292input clk CLOCK verilog_node "`SII.inc.l2clk";
293input [4:0] cstate INPUT_EDGE INPUT_SKEW verilog_node "`SII.inc.cstate";
294}
295
296.for ($q=0; $q<2; $q++)
297.{
298interface siu_ipcs${q}_state_machine
299{
300input clk CLOCK verilog_node "`SII.ipcs${q}.iol2clk";
301input [6:0] cstate INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs${q}.cstate";
302}
303.}
304
305.for ($q=0; $q<2; $q++)
306.{
307interface siu_opcs${q}_state_machine
308{
309input clk CLOCK verilog_node "`SIO.opcs${q}.iol2clk";
310input [7:0] cstate INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcs${q}.cstate";
311}
312.}
313
314interface siu_coverage_ipcs_order
315{
316input clk CLOCK verilog_node "`SII.ipcs0.iol2clk";
317input [3:0] young0_match INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.youngest_match";
318input [3:0] young0_dep INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs0.youngest_dep";
319input [3:0] young1_match INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.youngest_match";
320input [3:0] young1_dep INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcs1.youngest_dep";
321}
322
323
324interface siu_coverage_ipcc_arb
325{
326input clk CLOCK verilog_node "`SII.ipcc.l2clk";
327input niu_by_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.niu_by_go";
328input niu_or_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.niu_or_go";
329input dmu_by_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.dmu_by_go";
330input dmu_or_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.dmu_or_go";
331input tcu_go INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.tcu_go";
332}
333
334///
335/// SIO
336///
337.for ($q=0; $q<2; $q++)
338.{
339interface siu_coverage_opdhq${q}_rd
340{
341input clk CLOCK verilog_node "`SIO.opdhq${q}.rdclk";
342
343input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opdhq${q}.rd_en";
344input [3:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opdhq${q}.rd_adr";
345}
346
347interface siu_coverage_opdhq${q}_wr
348{
349input clk CLOCK verilog_node "`SIO.opdhq${q}.wrclk";
350
351input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opdhq${q}.wr_en";
352input [3:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opdhq${q}.wr_adr";
353}
354.}
355
356.for ($q=0; $q<2; $q++)
357.{
358.for ($p=0; $p<2; $p++)
359.{
360interface siu_coverage_opddq${q}${p}_rd
361{
362input clk CLOCK verilog_node "`SIO.opddq${q}${p}.rdclk";
363
364input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opddq${q}${p}.rd_en";
365input [5:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opddq${q}${p}.rd_adr";
366}
367
368interface siu_coverage_opddq${q}${p}_wr
369{
370input clk CLOCK verilog_node "`SIO.opddq${q}${p}.wrclk";
371
372input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opddq${q}${p}.wr_en";
373input [5:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opddq${q}${p}.wr_adr";
374}
375.}
376.}
377
378.for ($bank=0; $bank<8; $bank++)
379.{
380.for ($q=0; $q<2; $q++)
381.{
382interface siu_coverage_olddq${bank}${q}
383{
384input clk CLOCK verilog_node "`SIO.olddq${bank}${q}.rdclk";
385input cmp_diag_done PSAMPLE;
386
387input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.wr_en";
388input [4:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.wr_adr";
389input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.rd_en";
390input [4:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.rd_adr";
391}
392.}
393.}
394
395
396interface siu_coverage_opcc_arb
397{
398input clk CLOCK verilog_node "`SIO.l2clk";
399input olc0_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc0_opcc_req";
400input olc1_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc1_opcc_req";
401input olc2_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc2_opcc_req";
402input olc3_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc3_opcc_req";
403input olc4_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc4_opcc_req";
404input olc5_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc5_opcc_req";
405input olc6_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc6_opcc_req";
406input olc7_req INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olc7_opcc_req";
407}
408
409interface siu_coverage_tcu_pkt
410{
411input clk CLOCK verilog_node "`SII.l2clk";
412input jtag_cov INPUT_EDGE INPUT_SKEW verilog_node "`SII.newhdr_l2[63]";
413input[2:0] tcurdwr INPUT_EDGE INPUT_SKEW verilog_node "`SII.newhdr_l2[58:56]";
414input tcureq INPUT_EDGE INPUT_SKEW verilog_node "`SII.tcu_sii_vld";
415}
416
417interface siu_coverage_err_det
418{
419input clk CLOCK verilog_node "`SII.l2clk";
420input cp_err INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.cmd_parity_err";
421input ap_err INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.addr_parity_err";
422input dp_err INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.data_parity_err";
423input cecc_ue INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.ctag_ecc_ue";
424input cecc_ce INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.ctag_ecc_ce";
425input[15:0] id INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.id";
426input[5:0] c INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.c";
427input[5:0] e INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.e";
428input[3:0] ebits_piortn INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_ncu_data[31:28]";
429input[5:0] err_sig_l INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.err_sig_l";
430input sending_r INPUT_EDGE INPUT_SKEW verilog_node "`SII.ipcc.sending_r";
431}
432// *****************************************************************************************************
433// Interface for SIU internal coverage obj for FC
434// *****************************************************************************************************
435
436.for ($q=0; $q<2; $q++)
437.{
438interface siu_coverage_opcs${q}_err
439{
440input clk CLOCK verilog_node "`SIO.l2clk";
441input ctag_ue INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcs${q}.myctag_ue";
442input ctag_ce INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcs${q}.myctag_ce";
443input[5:0] e INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcs${q}.e";
444input[15:0] id INPUT_EDGE INPUT_SKEW verilog_node "`SIO.opcs${q}.id";
445}
446.}
447
448.for ($bank=0; $bank<8; $bank++)
449.{
450.for ($q=0; $q<2; $q++)
451.{
452interface sio_fifo_depth_olddq${bank}${q}
453{
454input clk CLOCK verilog_node "`SIO.olddq${bank}${q}.rdclk";
455input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.wr_en";
456input [4:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.wr_adr";
457input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.rd_en";
458input [4:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SIO.olddq${bank}${q}.rd_adr";
459}
460.}
461
462interface sii_fifo_depth_ildq${bank}
463{
464input clk CLOCK verilog_node "`SII.ildq${q}.rdclk";
465input wr_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.wr_en";
466input [4:0] wr_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.wr_adr";
467input rd_en INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.rd_en";
468input [4:0] rd_adr INPUT_EDGE INPUT_SKEW verilog_node "`SII.ildq${q}.rd_adr";
469}
470.}
471
472interface l2b_to_sio_UEs
473{
474input clk CLOCK verilog_node "`SII.l2clk";
475.for ($bank=0; $bank<8; $bank++)
476.{
477input l2b${bank}_to_sio_ue_err INPUT_EDGE INPUT_SKEW verilog_node "`SIO.l2b${bank}_sio_ue_err";
478input [31:0] l2b${bank}_to_sio_data INPUT_EDGE INPUT_SKEW verilog_node "`SIO.l2b${bank}_sio_data";
479input l2b${bank}_to_sio_ctag_vld INPUT_EDGE INPUT_SKEW verilog_node "`SIO.l2b${bank}_sio_ctag_vld";
480.}
481}
482
483interface siu_ncu_ctag_ce
484{
485input clk CLOCK verilog_node "`SII.iol2clk";
486input sii_ncu_niuctag_ce INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_ncu_niuctag_ce";
487input sii_ncu_dmuctag_ce INPUT_EDGE INPUT_SKEW verilog_node "`SII.sii_ncu_dmuctag_ce";
488input sio_ncu_ctag_ce INPUT_EDGE INPUT_SKEW verilog_node "`SIO.sio_ncu_ctag_ce";
489}
490
491#endif
492