| # Copyright lowRISC contributors. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| # Makefile option groups that can be enabled by test Makefile / command line. |
| # These are generic set of option groups that apply to all testbenches. |
| # These are meant to be simulator agnostic |
| # Please add tool specific options with appropriate ifeq's |
| |
| # Distinguish UVM TB and the other environments for Verilator, FPGA etc |
| BUILD_OPTS += +define+UVM |
| # uvm specific - set default widths |
| BUILD_OPTS += +define+UVM_NO_DEPRECATED |
| BUILD_OPTS += +define+UVM_REGEX_NO_DPI |
| BUILD_OPTS += +define+UVM_REG_ADDR_WIDTH=${TL_AW} |
| BUILD_OPTS += +define+UVM_REG_DATA_WIDTH=${TL_DW} |
| BUILD_OPTS += +define+UVM_REG_BYTENABLE_WIDTH=${TL_DBW} |
| |
| # Enable UVM trace options |
| UVM_TRACE ?= 0 |
| ifeq (${UVM_TRACE},1) |
| RUN_OPTS += +UVM_PHASE_TRACE |
| RUN_OPTS += +UVM_CONFIG_DB_TRACE |
| RUN_OPTS += +UVM_OBJECTION_TRACE |
| endif |
| |
| # Options for generating waves / debugging. |
| WAVES ?= 0 |
| DUMP ?= fsdb |
| DUMP_FILE ?= waves.${DUMP} |
| export WAVES |
| export DUMP |
| export DUMP_FILE |
| |
| ifeq (${WAVES},1) |
| ifeq (${SIMULATOR},vcs) |
| VCS_WAVES = 1 |
| endif |
| endif |
| |
| # Enable simulation profiling |
| SIMPROFILE ?= 0 |
| ifeq (${SIMPROFILE},1) |
| ifeq (${SIMULATOR},vcs) |
| VCS_SIMPROFILE = 1 |
| else ifeq (${SIMULATOR},xcelium) |
| XCELIUM_SIMPROFILE = 1 |
| endif |
| endif |
| |
| # Enable coverage |
| COV ?= 0 |
| ifeq (${COV},1) |
| ifeq (${SIMULATOR},vcs) |
| VCS_COV = 1 |
| else ifeq (${SIMULATOR},xcelium) |
| XCELIUM_COV = 1 |
| endif |
| endif |