Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / vera / niu_ippktgen / include / flow_vars_defines.vri
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: flow_vars_defines.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#define FRAME_TYPE_INDEX 0
36#define FRAME_TYPE_SIZE 1
37#define FRAME_CLASS_INDEX FRAME_TYPE_INDEX + FRAME_TYPE_SIZE
38#define FRAME_CLASS_SIZE 1
39#define L2_DA_SIZE 6
40#define L2_SA_INDEX FRAME_CLASS_INDEX + FRAME_CLASS_SIZE
41#define L2_SA_SIZE 6
42#define L2_DA_INDEX L2_SA_INDEX + L2_SA_SIZE
43#define TPID_SIZE 2
44#define TPID_INDEX L2_DA_INDEX + L2_DA_SIZE
45#define TCI_SIZE 2
46#define TCI_INDEX TPID_INDEX + TPID_SIZE
47#define IP_OPTION_SIZE 1
48#define IP_OPTION_INDEX TCI_INDEX + TCI_SIZE
49#define IPV4_SRC_ADDR_SIZE 4
50#define IPV4_SRC_ADDR_INDEX IP_OPTION_INDEX + IP_OPTION_SIZE
51#define IPV4_DST_ADDR_SIZE 4
52#define IPV4_DST_ADDR_INDEX IPV4_SRC_ADDR_INDEX + IPV4_DST_ADDR_SIZE
53#define IPV4_SRC_PRT_SIZE 2
54#define IPV4_SRC_PRT_INDEX IPV4_DST_ADDR_INDEX + IPV4_DST_ADDR_SIZE
55#define IPV4_DST_PRT_SIZE 2
56#define IPV4_DST_PRT_INDEX IPV4_SRC_PRT_INDEX + IPV4_SRC_PRT_SIZE
57#define TCP_FLAGS_SIZE 1
58#define TCP_FLAGS_INDEX IPV4_DST_PRT_INDEX + IPV4_DST_PRT_SIZE
59#define TCP_SEQ_NO_SIZE 4
60#define TCP_SEQ_NO_INDEX TCP_FLAGS_INDEX + TCP_FLAGS_SIZE
61
62#define SPI_SIZE 4
63#define SPI_INDEX TCP_SEQ_NO_INDEX + TCP_SEQ_NO_SIZE
64
65#define ESP_AH_SEQ_NO_INDEX SPI_INDEX + SPI_SIZE
66#define ESP_AH_SEQ_NO_SIZE 4
67
68#define IPV6_SRC_ADDR_INDEX ESP_AH_SEQ_NO_INDEX + ESP_AH_SEQ_NO_SIZE
69#define IPV6_SRC_ADDR_SIZE 16
70#define IPV6_DST_ADDR_INDEX IPV6_SRC_ADDR_SIZE + IPV6_SRC_ADDR_INDEX
71#define IPV6_DST_ADDR_SIZE 16
72#define IPV6_NXT_HDR IPV6_DST_ADDR_INDEX + IPV6_DST_ADDR_SIZE
73
74#define IPV6_NXT_HDR_SIZE 1
75#define TOS_INDEX IPV6_NXT_HDR + IPV6_NXT_HDR_SIZE
76#define TOS_SIZE 1
77
78#define IP_FRAG_INDEX TOS_INDEX + TOS_SIZE
79#define IP_FRAG_SIZE 2
80
81#define SCTP_SRC_PRT_SIZE 2
82#define SCTP_SRC_PRT_INDEX IP_FRAG_SIZE + IP_FRAG_INDEX
83#define SCTP_DST_PRT_SIZE 2
84
85#define SCTP_DST_PRT_INDEX SCTP_SRC_PRT_INDEX + SCTP_SRC_PRT_SIZE
86#define SCTP_VTAG_SIZE 4
87#define SCTP_VTAG_INDEX SCTP_DST_PRT_INDEX + SCTP_DST_PRT_SIZE
88
89#define ARP_HW_TYPE_INDEX SCTP_VTAG_INDEX + SCTP_VTAG_SIZE
90#define ARP_HW_TYPE_SIZE 2
91
92#define ARP_PROTO_TYPE_INDEX ARP_HW_TYPE_INDEX + ARP_HW_TYPE_SIZE
93#define ARP_PROTO_TYPE_SIZE 2
94
95#define ARP_HW_LEN_INDEX ARP_PROTO_TYPE_INDEX + ARP_PROTO_TYPE_SIZE
96#define ARP_HW_LEN_SIZE 1
97
98#define ARP_PROTO_LEN_INDEX ARP_HW_LEN_INDEX + ARP_HW_LEN_SIZE
99#define ARP_PROTO_LEN_SIZE 1
100
101#define ARP_OPCODE_INDEX ARP_PROTO_LEN_INDEX + ARP_PROTO_LEN_SIZE
102
103#define ARP_OPCODE_SIZE 2
104
105#define ARP_SRC_ADDR_INDEX ARP_OPCODE_INDEX + ARP_OPCODE_SIZE
106#define ARP_SRC_ADDR_SIZE 6
107
108#define ARP_TGT_ADDR_INDEX ARP_SRC_ADDR_INDEX + ARP_SRC_ADDR_SIZE
109#define ARP_TGT_ADDR_SIZE 6
110
111#define ARP_SRCIP_ADDR_INDEX ARP_TGT_ADDR_INDEX + ARP_TGT_ADDR_SIZE
112#define ARP_SRCIP_ADDR_SIZE 4
113
114#define ARP_TGTIP_ADDR_INDEX ARP_SRCIP_ADDR_INDEX + ARP_SRCIP_ADDR_SIZE
115#define ARP_TGTIP_ADDR_SIZE 4
116
117
118
119
120
121#define DATA_LENGTH_INDEX 142
122#define DATA_LENGTH_SIZE 2
123
124#define DATA_TYPE_INDEX DATA_LENGTH_INDEX + DATA_LENGTH_SIZE
125#define DATA_TYPE_SIZE 1
126
127#define DATA_SEED_INDEX DATA_TYPE_INDEX + DATA_TYPE_SIZE
128#define DATA_SEED_SIZE 4
129
130#define DATA_ERR_CODE_INDEX DATA_SEED_INDEX + DATA_SEED_SIZE
131#define DATA_ERR_CODE_SIZE 4
132
133#define DATA_ERR_DATA_INDEX DATA_ERR_CODE_INDEX + DATA_ERR_CODE_SIZE
134#define DATA_ERR_DATA_SIZE 4
135
136
137#define L2_PAD_LENGTH_INDEX DATA_ERR_DATA_INDEX + DATA_ERR_DATA_SIZE
138#define L2_PAD_LENGTH_SIZE 2
139
140#define L4_PROTO_ERR_INDEX L2_PAD_LENGTH_INDEX + L2_PAD_LENGTH_SIZE
141#define L4_PROTO_ERR_SIZE 1