Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / niu / rxc_sat / vera / include / dmc_zcp_drv_ports.vri
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: dmc_zcp_drv_ports.vri
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#include "rxc_defines.vri"
36//#dfine ZCP_PATH RXC_DUV_PATH.rxc_top
37#define RXC_CK_IN_TIMING PSAMPLE #-1
38#define RXC_CK_OUT_TIMING PHOLD #0
39#define RXC_CK_CLK_TIMING CLOCK
40
41#ifdef NIU_GATE
42
43interface dmc_zcp_port0_if{
44 input [129:0] zcp_dmc_pkt_data RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_dat0";
45 input zcp_dmc_ful_pkt RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_ful_pkt0";
46 input zcp_dmc_empty RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_emp0";
47 input zcp_dmc_err RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_dat_err0";
48 input zcp_dmc_ack RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_ack0";
49
50 output dmc_zcp_req RXC_CK_OUT_TIMING verilog_node TOP.cpu.rtx.dmc_zcp_req0";
51
52 input clk RXC_CK_CLK_TIMING verilog_node TOP.cpu.rtx.iol2clk";
53}
54
55#else
56
57interface dmc_zcp_port0_if{
58 input [129:0] zcp_dmc_pkt_data RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_dat0";
59 input zcp_dmc_ful_pkt RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_ful_pkt0";
60 input zcp_dmc_empty RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_emp0";
61 input zcp_dmc_err RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_dat_err0";
62 input zcp_dmc_ack RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_ack0";
63
64 output dmc_zcp_req RXC_CK_OUT_TIMING verilog_node RXC_DUV_PATH.dmc_zcp_req0";
65
66 input clk RXC_CK_CLK_TIMING verilog_node RXC_DUV_PATH.niu_clk";
67}
68#endif
69
70#ifdef NIU_GATE
71interface dmc_zcp_port1_if{
72 input [129:0] zcp_dmc_pkt_data RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_dat1";
73 input zcp_dmc_ful_pkt RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_ful_pkt1";
74 input zcp_dmc_empty RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_emp1";
75 input zcp_dmc_err RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_dat_err1";
76 input zcp_dmc_ack RXC_CK_IN_TIMING verilog_node TOP.cpu.rtx.zcp_dmc_ack1";
77
78 output dmc_zcp_req RXC_CK_OUT_TIMING verilog_node TOP.cpu.rtx.dmc_zcp_req1";
79
80 input clk RXC_CK_CLK_TIMING verilog_node TOP.cpu.rtx.iol2clk";
81}
82#else
83interface dmc_zcp_port1_if{
84 input [129:0] zcp_dmc_pkt_data RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_dat1";
85 input zcp_dmc_ful_pkt RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_ful_pkt1";
86 input zcp_dmc_empty RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_emp1";
87 input zcp_dmc_err RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_dat_err1";
88 input zcp_dmc_ack RXC_CK_IN_TIMING verilog_node RXC_DUV_PATH.zcp_dmc_ack1";
89
90 output dmc_zcp_req RXC_CK_OUT_TIMING verilog_node RXC_DUV_PATH.dmc_zcp_req1";
91
92 input clk RXC_CK_CLK_TIMING verilog_node RXC_DUV_PATH.niu_clk";
93}
94#endif
95
96port dmc_zcp_drv_port{
97 zcp_dmc_pkt_data;
98 zcp_dmc_ful_pkt;
99 zcp_dmc_empty;
100 zcp_dmc_err;
101 zcp_dmc_ack;
102 dmc_zcp_req;
103 clk;
104}
105
106bind dmc_zcp_drv_port dmc_zcp_drv0{
107 zcp_dmc_pkt_data dmc_zcp_port0_if.zcp_dmc_pkt_data;
108 zcp_dmc_ful_pkt dmc_zcp_port0_if.zcp_dmc_ful_pkt;
109 zcp_dmc_empty dmc_zcp_port0_if.zcp_dmc_empty;
110 zcp_dmc_err dmc_zcp_port0_if.zcp_dmc_err;
111 zcp_dmc_ack dmc_zcp_port0_if.zcp_dmc_ack;
112 dmc_zcp_req dmc_zcp_port0_if.dmc_zcp_req;
113 clk dmc_zcp_port0_if.clk;
114}
115
116bind dmc_zcp_drv_port dmc_zcp_drv1{
117 zcp_dmc_pkt_data dmc_zcp_port1_if.zcp_dmc_pkt_data;
118 zcp_dmc_ful_pkt dmc_zcp_port1_if.zcp_dmc_ful_pkt;
119 zcp_dmc_empty dmc_zcp_port1_if.zcp_dmc_empty;
120 zcp_dmc_err dmc_zcp_port1_if.zcp_dmc_err;
121 zcp_dmc_ack dmc_zcp_port1_if.zcp_dmc_ack;
122 dmc_zcp_req dmc_zcp_port1_if.dmc_zcp_req;
123 clk dmc_zcp_port1_if.clk;
124}