Monitor bfm configuration, Example 5-1. monitor bfm configuration – Altera Mentor Verification IP Altera Edition AMBA AXI4-Stream User Manual

Page 56

Advertising
background image

Mentor Verification IP AE AMBA AXI4-Stream User Guide, V10.3

56

SystemVerilog Monitor BFM
Monitor BFM Configuration

April 2014

contain any timescale, timeunit, or timeprecision declarations with the signal setup and hold
times specified in units of simulator time-steps.

The simulator time-step resolves to the smallest of all the time-precision declarations in the test
bench and design IP as a result of these directives, declarations, options, or initialization files:

` timescale directives in design elements

Timeprecision declarations in design elements

Compiler command-line options

Simulation command-line options

Local, or site-wide, simulator initialization files

If there is no timescale directive, the default time unit and time precision are tool specific. The
recommended practice is to use timeunit and timeprecision declarations. Refer to the IEEE
Standard for SystemVerilog
, Section 3.14, for details.

Monitor BFM Configuration

The monitor BFM supports the full range of signals defined for the AMBA AXI4-Stream
Protocol Specification. It has parameters that you use to configure the widths of the data and ID
signals, and transaction fields to configure timeout factors, setup and hold times, and so on.

You can change the data and ID signals widths from their default settings by assigning them
with new values, usually in the top-level module of the test bench. These new values are then
passed into the monitor BFM using a parameter port list of the monitor BFM module.

Example 5-1

shows the monitor BFM with the data and ID signal widths defined in module

top() and passed in to the monitor BFM mgc_axi4stream_monitor parameter port list.

Example 5-1. Monitor BFM Configuration

module top ();

parameter AXI4STREAM_ID_WIDTH = 18;
parameter AXI4STREAM_USER_WIDTH = 4;
parameter AXI4STREAM_DEST_WIDTH = 4;
parameter AXI4STREAM_DATA_WIDTH = 32;

mgc_axi4stream_monitor #(AXI4STREAM_ID_WIDTH, AXI4STREAM_USER_WIDTH,

AXI4STREAM_DEST_WIDTH, AXI4STREAM_DATA_WIDTH) bfm_monitor(....);

Note

In the above code extract, the mgc_axi4stream_monitor is the monitor BFM interface.

Advertising