Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / siu / siu_niu_dmu_cmd_sample.vrhpal
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: siu_niu_dmu_cmd_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 ============================================
35#inc "siu_cov_inc.pal";
36
37#ifndef SIU_INTF_COV
38. for ($i=0; $i<5; $i++)
39. {
40sample arb_niu_cmd_sample_${i}_clk_this (this_niu_cmd)
41{
42 state RDD_ord ( 7'b0010_100 ) if (niu_dmu_back_to_back==$i);
43 state RDD_byp ( 7'b0010_101 ) if (niu_dmu_back_to_back==$i);
44 state WRI_npt_ord ( 7'b0000_100 ) if (niu_dmu_back_to_back==$i);
45 state WRI_npt_byp ( 7'b0000_101 ) if (niu_dmu_back_to_back==$i);
46 state WRI_pst_ord ( 7'b0100_100 ) if (niu_dmu_back_to_back==$i);
47 state WRI_pst_byp ( 7'b0100_101 ) if (niu_dmu_back_to_back==$i);
48
49 cov_weight = 0;
50}
51. }
52
53sample arb_dmu_cmd_sample_this (this_dmu_cmd)
54{
55 state RDD_ord ( 7'b0010_100 );
56 state WRI_pstd_ord ( 7'b0100_100 );
57 state WRM_pstd_ord ( 7'b0101_100 );
58 state PIO_RD_RET ( 7'b1010_011 );
59 state INT ( 7'b0000_010 );
60
61 cov_weight = 0;
62}
63
64
65. for ($i=0; $i<5; $i++)
66. {
67 cross siu_arb_niu_dmu_${i}_clk_cross (arb_niu_cmd_sample_${i}_clk_this, arb_dmu_cmd_sample_this);
68. }
69
70
71#else
72// FC
73. for ($i=0; $i<3; $i++)
74. {
75sample arb_niu_cmd_sample_${i}_clk_this (this_niu_cmd)
76{
77 state RDD_byp ( 7'b0010_101 ) if (niu_dmu_back_to_back==$i);
78 state WRI_npt_ord ( 7'b0000_100 ) if (niu_dmu_back_to_back==$i);
79 state WRI_pst_byp ( 7'b0100_101 ) if (niu_dmu_back_to_back==$i);
80
81 cov_weight = 0;
82}
83. }
84
85sample arb_dmu_cmd_sample_this (this_dmu_cmd)
86{
87 state RDD_ord ( 7'b0010_100 );
88 state WRI_pstd_ord ( 7'b0100_100 );
89 state WRM_pstd_ord ( 7'b0101_100 );
90 state PIO_RD_RET ( 7'b1010_011 );
91 state INT ( 7'b0000_010 );
92
93 cov_weight = 0;
94}
95
96. for ($i=0; $i<3; $i++)
97. {
98 cross siu_arb_niu_dmu_${i}_clk_cross (arb_niu_cmd_sample_${i}_clk_this, arb_dmu_cmd_sample_this);
99. }
100#endif
101
102
103//FC: another Flexible version
104sample arb_niu_cmd_sample_this_fc (this_niu_cmd)
105{
106 state RDD_byp ( 7'b0010_101 ) if ((niu_dmu_back_to_back==0) || (niu_dmu_back_to_back==1) || (niu_dmu_back_to_back==2) || (niu_dmu_back_to_back==3));
107 state WRI_npt_ord ( 7'b0000_100 ) if ((niu_dmu_back_to_back==0) || (niu_dmu_back_to_back==1) || (niu_dmu_back_to_back==2) || (niu_dmu_back_to_back==3));
108 state WRI_pst_byp ( 7'b0100_101 ) if ((niu_dmu_back_to_back==0) || (niu_dmu_back_to_back==1) || (niu_dmu_back_to_back==2) || (niu_dmu_back_to_back==3));
109
110 cov_weight = 0;
111}
112
113sample arb_dmu_cmd_sample_this_fc (this_dmu_cmd)
114{
115 state RDD_ord ( 7'b0010_100 );
116 state WRI_pstd_ord ( 7'b0100_100 );
117 state WRM_pstd_ord ( 7'b0101_100 );
118 state PIO_RD_RET ( 7'b1010_011 );
119 state INT ( 7'b0000_010 );
120
121 cov_weight = 0;
122}
123
124cross siu_arb_niu_dmu_fc_cross (arb_niu_cmd_sample_this_fc, arb_dmu_cmd_sample_this_fc);
125