// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0

// Include our common coverage CCF.
include_ccf ${dv_root}/tools/xcelium/common.ccf

// enable coverage on dut and below

select_coverage -befts -module ${DUT_TOP}...

// Black-box pre-verified IPs from coverage collection.
deselect_coverage -betfs -module pins_if
deselect_coverage -betfs -module clk_rst_if
deselect_coverage -betfs -module prim_alert_sender...
deselect_coverage -betfs -module prim_alert_receiver...
deselect_coverage -betfs -module prim_count...
deselect_coverage -betfs -module prim_esc_sender...
deselect_coverage -betfs -module prim_esc_receiver...
deselect_coverage -betfs -module prim_onehot_check...
deselect_coverage -betfs -module prim_prince...
deselect_coverage -betfs -module prim_lfsr...
deselect_coverage -betfs -module prim_secded_inv_64_57_dec...
deselect_coverage -betfs -module prim_secded_inv_39_32_dec...

// Black-box DV CDC module.
deselect_coverage -betfs -module prim_cdc_rand_delay

// csr_assert_fpv is an auto-generated csr read assertion module. So only assertion coverage is
// meaningful to collect.
deselect_coverage -betf -module *csr_assert_fpv...
select_coverage -assert -module *csr_assert_fpv

// Only enable assertion coverage
deselect_coverage -betf -module *tlul_assert...
select_coverage -assert -module *tlul_assert

// Only collect toggle coverage on the DUT and the black-boxed IP (above) ports.
deselect_coverage -toggle -module ${DUT_TOP}...
select_coverage -toggle -module ${DUT_TOP}

select_coverage -toggle -module prim_alert_sender
select_coverage -toggle -module prim_alert_receiver
select_coverage -toggle -module prim_count
select_coverage -toggle -module prim_esc_sender
select_coverage -toggle -module prim_esc_receiver
select_coverage -toggle -module prim_onehot_check
select_coverage -toggle -module prim_prince
select_coverage -toggle -module prim_lfsr
select_coverage -toggle -module prim_secded_inv_64_57_dec
select_coverage -toggle -module prim_secded_inv_39_32_dec
