Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / ncu / niu_ncu_sample.vrhpal
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: niu_ncu_sample.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 ============================================
35sample niu_ncu_intf_size (niu_ncu_size)
36{
37 wildcard state SIZE (3'b0xx);
38}
39
40sample niu_ncu_intf_bufid_sample (niu_ncu_bufid)
41{
42 m_state BUFFID (0:1);
43}
44
45sample niu_ncu_intf_type_sample (niu_ncu_type)
46{
47 state READ_NACK ( 4'b0000 );
48 state READ_ACK ( 4'b0001 );
49 // state INT ( 4'b1000 );
50}
51sample niu_ncu_intf_type_trans (niu_ncu_type)
52{
53
54 state READ_NACK ( 4'b0000 );
55 state READ_ACK ( 4'b0001 );
56 state INT ( 4'b1000 );
57
58
59
60 trans TYPE_TRAN30 ("READ_ACK" -> "READ_ACK");
61 trans TYPE_TRAN31 ("READ_ACK" -> "READ_NACK");
62 trans TYPE_TRAN32 ("READ_ACK" -> "INT");
63
64 trans TYPE_TRAN40 ("READ_NACK" -> "READ_ACK");
65 trans TYPE_TRAN41 ("READ_NACK" -> "READ_NACK");
66
67 trans TYPE_TRAN44 ("READ_NACK" -> "INT");
68
69 trans TYPE_TRAN70 ("INT" -> "READ_NACK");
70 trans TYPE_TRAN71 ("INT" -> "READ_ACK");
71 trans TYPE_TRAN72 ("INT" -> "INT");
72
73
74}
75
76sample niu_ncu_intf_cpuid_sample (niu_ncu_cpuid)
77{
78 m_state CPU_ID ( 0:63 );
79}
80
81sample niu_ncu_intf_deviceid_sample (niu_ncu_deviceid)
82{
83 m_state DEVICE_ID ( 64:127 ) if (niu_ncu_type== 4'b1000);
84}
85
86/*
87sample niu_ncu_intf_int_vec_sample (niu_ncu_int_vec)
88{
89 m_state INT_VEC ( 0:63 ) if (niu_ncu_type== 4'b1000);
90}
91*/
92sample niu_ncu_intf_b2b_sample (niu_ncu_b2b)
93{
94 m_state B2B ( 2:5 ) ;
95}
96
97sample niu_ncu_intf_stall_b2b_sample (ncu_niu_stall_b2b)
98{
99 m_state STALL ( 1:30 ) ;
100}
101
102
103sample niu_ncu_intf_pkt_gap(niu_ncu_pkt_gap)
104{
105 m_state PKT_GAP ( 1:10 ) ;
106}
107cross niu_ncu_id_type_cross (niu_ncu_intf_type_sample,niu_ncu_intf_cpuid_sample );