Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / mcusat / mcusat_err_sts_sample.vrhpal
// ========== Copyright Header Begin ==========================================
//
// OpenSPARC T2 Processor File: mcusat_err_sts_sample.vrhpal
// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
//
// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; version 2 of the License.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// For the avoidance of doubt, and except that if any non-GPL license
// choice is available it will apply instead, Sun elects to use only
// the General Public License version 2 (GPLv2) at this time for any
// software where a choice of GPL license versions is made
// available with the language indicating that GPLv2 or any later version
// may be used, or where a choice of which version of the GPL is applied is
// otherwise unspecified.
//
// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
// CA 95054 USA or visit www.sun.com if you need additional information or
// have any questions.
//
// ========== Copyright Header End ============================================
wildcard state s_secc_0 (21'b010x_x00x0xx_0010001_x_0_1); // first secc error, sync/loc
wildcard state s_secc_1 (21'bxxxx_x01x0xx_xx0xxx0_x_x_0); // after first secc
wildcard state s_secc_2 (21'b010x_x01x0xx_0100000_0_0_0); // second secc error,
wildcard state s_secc_3 (21'bxxxx_x11x0xx_x00xxx0_x_0_0); // after second secc error
wildcard state s_secc_4 (21'b010x_x11x0xx_0100000_0_0_0); // third+ secc error
//wildcard state s_secc_5 (21'bxxxx_x11x0xx_x00xxx0_x_0_0); // after third+ secc error (same as 2nd)
wildcard state s_scrb_secc_0 (21'b1x0x_x00x0xx_0000101_0_1_1); // first scrb secc error synd/addr/loc
wildcard state s_scrb_secc_1 (21'bxxxx_x00x1xx_xx0x0x0_x_0_x); // after first scrb secc error synd/addr
wildcard state s_scrb_secc_2 (21'b1x0x_x00x1xx_0100000_0_0_0); // second scrb secc error
wildcard state s_scrb_secc_3 (21'bxxxx_x10x1xx_xxxx0x0_x_0_x); // after second scrb secc error
wildcard state s_scrb_secc_4 (21'b1x0x_x10x1xx_0100000_0_0_0); // third+ scrb secc error
//wildcard state s_scrb_secc_5 (21'bxxxx_x10x1xx_xxxx0x0_x_0_x); // after third+ scrb secc error (same as 2nd)
wildcard state s_pa_err_0 (21'bxxx1_xxxxxx0_xxxxxx0_1_0_0); // pa_err case
wildcard state s_pa_err_1 (21'bxxx0_xxxxxx1_xxxxxx0_x_0_0); // pa_err case after first pa_err
wildcard state s_mecc_0 (21'b0010_0xx0x0x_0xx1x01_0_0_0); // first mecc error
wildcard state s_mecc_1 (21'bxxxx_0xx1x0x_0xx0x0x_x_x_x); // after first mecc
wildcard state s_mecc_2 (21'b0010_0xx1x0x_1xx0x00_0_0_0); // 2nd mecc error
wildcard state s_mecc_3 (21'bxxxx_1xx1x0x_0xx0x0x_x_x_x); // after 2nd mecc
wildcard state s_mecc_4 (21'b0010_1xx1x0x_1xx0x00_0_0_0); // 3rd mecc error
wildcard state s_scrb_mecc_0 (21'b10x0_0xx0x0x_0000011_0_1_0); // first scrb mecc error synd/addr
wildcard state s_scrb_mecc_1 (21'bxxxx_0xx0x1x_xxxxx0x_x_0_x); // after first scrb mecc error
wildcard state s_scrb_mecc_2 (21'b10x0_0xx0x1x_1000000_0_0_0); // 2nd scrb mecc error
wildcard state s_scrb_mecc_3 (21'bxxxx_1xx0x1x_0xxxxxx_x_x_x); // after 2nd scrb mecc error
wildcard state s_scrb_mecc_4 (21'b10x0_1xx0x1x_1000000_0_0_0); // 3rd scrb mecc error
// secc and scrb secc
wildcard state s_secc_5 (21'b110x_x01x0xx_x10x1x0_x_1_0); // secc -> scrb-secc
wildcard state s_secc_6 (21'bxxxx_x11x1xx_xx0xxx0_x_0_0); // after secc -> scrb-secc
wildcard state s_secc_7 (21'b110x_x11x1xx_x10xxx0_x_0_0); // secc -> scrb-secc -> scrb-secc
wildcard state s_secc_8 (21'b010x_x11x1xx_x10xxx0_x_0_0); // secc -> scrb-secc -> secc
// scrb secc and secc
wildcard state s_scrb_secc_5 (21'b0x0x_x00x1xx_x11x0x0_x_0_0); // scrb-secc -> secc
// mecc and scrb mecc
wildcard state s_mecc_5 (21'b1010_0xx1x0x_1xx0x10_x_1_0); // mecc -> scrb-mecc
wildcard state s_mecc_6 (21'bxxxx_1xx1x0x_xxx0x00_x_x_x); // after mecc -> scrb-mecc
wildcard state s_mecc_7 (21'b1010_1xx1x1x_1xx0x00_x_0_0); // mecc -> scrb-mecc -> scrb-mecc
wildcard state s_mecc_8 (21'b0010_1xx1x0x_1xx0x00_x_0_0); // mecc -> scrb-mecc -> mecc
wildcard state s_scrb_mecc_5 (21'b00x0_0xx0x1x_1001000_x_0_0); // scrb-mecc -> mecc
wildcard state s_scrb_mecc_0_not_bad_2 (21'b1010_0xx0x0x_xxxxxx1_x_1_x); // first scrb mecc error synd/addr
wildcard state s_mecc_0_not_bad_3 (21'b0010_0xx0x0x_xxxxxx1_x_x_x); // first mecc error, synd en