Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / common / coverage / ncu / ncu_cov_ports_binds.vrhpal
// ========== Copyright Header Begin ==========================================
//
// OpenSPARC T2 Processor File: ncu_cov_ports_binds.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 ============================================
#ifndef INC_NCU_COV_PORTS_BINDS_VRH
#define INC_NCU_COV_PORTS_BINDS_VRH
port ncu_cov_com_io_port {
clk;
stall;
valid;
data;
}
port ncu_cov_com_io_port1 {
clk;
stall;
stall_in;
valid;
data;
}
.for($b=0; $b<4; $b++) {
bind ncu_cov_com_io_port1 ncu_cov_mcu_dw_bind${b} {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.mcu${b}_ncu_stall;
stall_in ncu_cov_ios.mcu${b}_ncu_stall_in;
valid ncu_cov_ios.ncu_mcu${b}_vld;
data ncu_cov_ios.ncu_mcu${b}_data;
}
bind ncu_cov_com_io_port ncu_cov_mcu_exp_bind${b} {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_mcu${b}_stall;
valid ncu_cov_ios.mcu${b}_ncu_vld_in;
data ncu_cov_ios.mcu${b}_ncu_data_in;
}
.}
bind ncu_cov_com_io_port1 ncu_cov_dmu_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.dmu_ncu_stall;
stall_in ncu_cov_ios.dmu_ncu_stall_in;
valid ncu_cov_ios.ncu_dmu_vld;
data ncu_cov_ios.ncu_dmu_data;
}
bind ncu_cov_com_io_port ncu_cov_dmu_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_dmu_stall;
valid ncu_cov_ios.dmu_ncu_vld_in;
data ncu_cov_ios.dmu_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_tcu_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.tcu_ncu_stall;
stall_in ncu_cov_ios.tcu_ncu_stall_in;
valid ncu_cov_ios.ncu_tcu_vld;
data ncu_cov_ios.ncu_tcu_data;
}
bind ncu_cov_com_io_port ncu_cov_tcu_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_tcu_stall;
valid ncu_cov_ios.tcu_ncu_vld_in;
data ncu_cov_ios.tcu_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_dbg1_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.dbg1_ncu_stall;
stall_in ncu_cov_ios.dbg1_ncu_stall_in;
valid ncu_cov_ios.ncu_dbg1_vld;
data ncu_cov_ios.ncu_dbg1_data;
}
bind ncu_cov_com_io_port ncu_cov_dbg1_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_dbg1_stall;
valid ncu_cov_ios.dbg1_ncu_vld_in;
data ncu_cov_ios.dbg1_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_rst_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.rst_ncu_stall;
stall_in ncu_cov_ios.rst_ncu_stall_in;
valid ncu_cov_ios.ncu_rst_vld;
data ncu_cov_ios.ncu_rst_data;
}
bind ncu_cov_com_io_port ncu_cov_rst_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_rst_stall;
valid ncu_cov_ios.rst_ncu_vld_in;
data ncu_cov_ios.rst_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_ssi_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ssi_ncu_stall;
stall_in ncu_cov_ios.ssi_ncu_stall_in;
valid ncu_cov_ios.ncu_ssi_vld;
data ncu_cov_ios.ncu_ssi_data;
}
bind ncu_cov_com_io_port ncu_cov_ssi_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_ssi_stall;
valid ncu_cov_ios.ssi_ncu_vld_in;
data ncu_cov_ios.ssi_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_ccu_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ccu_ncu_stall;
stall_in ncu_cov_ios.ccu_ncu_stall_in;
valid ncu_cov_ios.ncu_ccu_vld;
data ncu_cov_ios.ncu_ccu_data;
}
bind ncu_cov_com_io_port ncu_cov_ccu_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_ccu_stall;
valid ncu_cov_ios.ccu_ncu_vld_in;
data ncu_cov_ios.ccu_ncu_data_in;
}
bind ncu_cov_com_io_port1 ncu_cov_niu_dw_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.niu_ncu_stall;
stall_in ncu_cov_ios.niu_ncu_stall_in;
valid ncu_cov_ios.ncu_niu_vld;
data ncu_cov_ios.ncu_niu_data;
}
bind ncu_cov_com_io_port ncu_cov_niu_up_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_niu_stall;
valid ncu_cov_ios.niu_ncu_vld;
data ncu_cov_ios.niu_ncu_data;
}
bind ncu_cov_com_io_port ncu_cov_niu_exp_bind {
clk ncu_cov_ios.clk;
stall ncu_cov_ios.ncu_niu_stall;
valid ncu_cov_ios.niu_ncu_vld_in;
data ncu_cov_ios.niu_ncu_data_in;
}
bind ncu_cov_com_io_port ncu_cov_ccx_dw_bind {
clk ncu_cov_ccx.clk;
stall ncu_cov_ccx.ncu_pcx_stall_pq;
valid ncu_cov_ccx.pcx_ncu_data_rdy_px1;
data ncu_cov_ccx.pcx_ncu_data_px2;
}
bind ncu_cov_com_io_port ncu_cov_ccx_exp_bind {
clk ncu_cov_ccx.clk;
stall ncu_cov_ccx.ncu_pcx_stall_pq1;
valid ncu_cov_ccx.pcx_ncu_data_rdy_px1_in;
data ncu_cov_ccx.pcx_ncu_data_px2_in;
}
port ncu_cov_cpx_port {
clk;
req;
gnt;
gnt_in;
data;
}
bind ncu_cov_cpx_port ncu_cov_ccx_up_bind {
clk ncu_cov_ccx.clk;
req ncu_cov_ccx.ncu_cpx_req_cq;
gnt ncu_cov_ccx.cpx_ncu_grant_cx;
gnt_in ncu_cov_ccx.cpx_ncu_grant_cx_in;
data ncu_cov_ccx.ncu_cpx_data_ca;
}
port ncu_cov_siu_port {
clk;
req;
gnt;
data;
mondo_id;
mondo_ack;
mondo_nack;
}
bind ncu_cov_siu_port ncu_cov_siu_up_bind {
clk ncu_cov_ios.clk;
req ncu_cov_ios.siu_ncu_req;
gnt ncu_cov_ios.ncu_siu_gnt;
data ncu_cov_ios.siu_ncu_data;
mondo_id ncu_cov_ios.ncu_dmu_mondo_id;
mondo_ack ncu_cov_ios.ncu_dmu_mondo_ack;
mondo_nack ncu_cov_ios.ncu_dmu_mondo_nack;
}
bind ncu_cov_siu_port ncu_cov_siu_exp_bind {
clk ncu_cov_ios.clk;
req ncu_cov_ios.siu_ncu_req;
gnt ncu_cov_ios.ncu_siu_gnt;
data ncu_cov_ios.siu_ncu_data_in;
mondo_id ncu_cov_ios.ncu_dmu_mondo_id;
mondo_ack ncu_cov_ios.ncu_dmu_mondo_ack;
mondo_nack ncu_cov_ios.ncu_dmu_mondo_nack;
}
port ncu_cov_pio_port {
clk;
hdr_vld;
mmu_vld;
data;
ack_vld;
ack_tag;
}
bind ncu_cov_pio_port ncu_cov_pio_dw_bind {
clk ncu_cov_ios.clk;
hdr_vld ncu_cov_ios.ncu_dmu_pio_hdr_vld;
mmu_vld ncu_cov_ios.ncu_dmu_mmu_addr_vld;
data ncu_cov_ios.ncu_dmu_pio_data;
ack_vld ncu_cov_ios.dmu_ncu_wrack_vld;
ack_tag ncu_cov_ios.dmu_ncu_wrack_tag;
}
port ncu_cov_efu_port {
clk;
data;
vld;
}
bind ncu_cov_efu_port ncu_cov_sernum_bind0 {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_srlnum0_xfer_en;
}
bind ncu_cov_efu_port ncu_cov_sernum_bind1 {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_srlnum1_xfer_en;
}
bind ncu_cov_efu_port ncu_cov_sernum_bind2 {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_srlnum2_xfer_en;
}
bind ncu_cov_efu_port ncu_cov_fuestat_bind {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_fusestat_xfer_en;
}
bind ncu_cov_efu_port ncu_cov_coreavail_bind {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_coreavl_xfer_en;
}
bind ncu_cov_efu_port ncu_cov_bankavail_bind {
clk ncu_cov_ios.clk;
data ncu_cov_ios.efu_ncu_fuse_data;
vld ncu_cov_ios.efu_ncu_bankavl_xfer_en;
}
port ncu_cov_rst_port {
clk;
bank_vld;
asi_vld;
unpark_thread;
.for($b=0; $b<8; $b++) {
spc${b}_core_en_stat;
spc${b}_core_run;
spc${b}_core_avail;
.}
}
port bank_cov_port {
clk;
pm;
ba01;
ba23;
ba45;
ba67;
hash_en;
}
bind bank_cov_port spc_bank_cov {
clk ncu_cov_ios.clk;
pm ncu_cov_ios.ncu_spc_pm;
ba01 ncu_cov_ios.ncu_spc_ba01;
ba23 ncu_cov_ios.ncu_spc_ba23;
ba45 ncu_cov_ios.ncu_spc_ba45;
ba67 ncu_cov_ios.ncu_spc_ba67;
hash_en ncu_cov_ios.ncu_spc_l2_idx_hash_en;
}
bind bank_cov_port sii_bank_cov {
clk ncu_cov_ios.clk;
pm ncu_cov_ios.ncu_sii_pm;
ba01 ncu_cov_ios.ncu_sii_ba01;
ba23 ncu_cov_ios.ncu_sii_ba23;
ba45 ncu_cov_ios.ncu_sii_ba45;
ba67 ncu_cov_ios.ncu_sii_ba67;
hash_en ncu_cov_ios.ncu_sii_l2_idx_hash_en;
}
bind bank_cov_port l2t_bank_cov {
clk ncu_cov_ios.clk;
pm ncu_cov_ios.ncu_l2t_pm;
ba01 ncu_cov_ios.ncu_l2t_ba01;
ba23 ncu_cov_ios.ncu_l2t_ba23;
ba45 ncu_cov_ios.ncu_l2t_ba45;
ba67 ncu_cov_ios.ncu_l2t_ba67;
hash_en ncu_cov_ios.ncu_sii_l2_idx_hash_en;
}
#endif