Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / l2sat / l2_inv_vector_sample.vrhpal
// ========== Copyright Header Begin ==========================================
//
// OpenSPARC T2 Processor File: l2_inv_vector_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 ============================================
.for $sparc (0..7) {
. for $way (0..7) {
. for $id (0..1) {
. if ($way >= 4) {
. $newway = $way - 4;
. }
. else{
. $newway = $way;
. }
. if ($newway == 0) { $vld = "00"; }
. elsif ($newway == 1) { $vld = "01"; }
. elsif ($newway == 2) { $vld = "10"; }
. elsif ($newway == 3) { $vld = "11"; }
. if ($id == 0) {
. if ($way < 4) {
. $vld = "0" . $vld . "1";
. } else {
. $vld = "1" . $vld . "1";
. }
. $type = "_I";
. } else {
. $vld = $vld . "10";
. $type = "_D";
. }
. $x32 = "";
. for $i (0..7) {
. if ($i == $sparc) { $x32 = $vld . $x32; }
. else { $x32 = "xxxx" . $x32; }
. }
. if (($way < 4) || ($id == 0)) {
wildcard state EVICT_a00_s${sparc}_w${way}${type}( {1'b1, EVICT_REQ, 24'bx, 32'bx, 24'bx, 32'b${x32}} );
. } ## if ($way < 4) || ($id == 0)
. } ## for id
. } ## for way
.} ## for sparc
// EVICT_REQ addr=01
.for $sparc (0..7) {
. for $way (0..3) {
. if ($way == 0) { $vld = "00"; }
. elsif ($way == 1) { $vld = "01"; }
. elsif ($way == 2) { $vld = "10"; }
. elsif ($way == 3) { $vld = "11"; }
. $vld = $vld . "1";
. $x24 = "";
. for $i (0..7) {
. if ($i == $sparc) { $x24 = $vld . $x24; }
. else { $x24 = "xxx" . $x24; }
. }
wildcard state EVICT_a01_s${sparc}_w${way}_D( {1'b1, EVICT_REQ, 24'bx, 32'bx, 24'b${x24}, 32'bx} );
. } ## for way
.} ## for sparc
// EVICT_REQ addr=10
.for $sparc (0..7) {
. for $way (0..7) {
. for $id (0..1) {
. if ($way >= 4) {
. $newway = $way - 4;
. }
. else{
. $newway = $way;
. }
.
. if ($newway == 0) { $vld = "00"; }
. elsif ($newway == 1) { $vld = "01"; }
. elsif ($newway == 2) { $vld = "10"; }
. elsif ($newway == 3) { $vld = "11"; }
. if ($id == 0) {
. if ($way < 4) {
. $vld = "0" . $vld . "1";
. } else {
. $vld = "1" . $vld . "1";
. }
. $type = "_I";
. } else {
. $vld = $vld . "10";
. $type = "_D";
. }
. $x32 = "";
. for $i (0..7) {
. if ($i == $sparc) { $x32 = $vld . $x32; }
. else { $x32 = "xxxx" . $x32; }
. }
. if (($way < 4) || ($id == 0)) {
wildcard state EVICT_a10_s${sparc}_w${way}${type}( {1'b1, EVICT_REQ, 24'bx, 32'b${x32}, 24'bx, 32'bx} );
. } ## if ($way < 4) || ($id == 0)
. } ## for id
. } ## for way
.} ## for sparc
// EVICT_REQ addr=11
.for $sparc (0..7) {
. for $way (0..3) {
. if ($way == 0) { $vld = "00"; }
. elsif ($way == 1) { $vld = "01"; }
. elsif ($way == 2) { $vld = "10"; }
. elsif ($way == 3) { $vld = "11"; }
. $vld = $vld . "1";
. $x24 = "";
. for $i (0..7) {
. if ($i == $sparc) { $x24 = $vld . $x24; }
. else { $x24 = "xxx" . $x24; }
. }
wildcard state EVICT_a11_s${sparc}_w${way}_D( {1'b1, EVICT_REQ, 24'b${x24}, 32'bx, 24'bx, 32'bx} );
. } ## for way
.} ## for sparc