Axi4 bfm slave test program, Axi4 basic slave api definition – Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual

Page 186

Advertising
background image

Mentor VIP AE AXI3/4 User Guide, V10.2b

168

SystemVerilog Tutorials
Verifying a Master DUT

September 2013

AXI4 BFM Slave Test Program

The Slave Test Program is a memory model that contains two APIs: a

AXI4 Basic Slave API

Definition

and an

AXI4 Advanced Slave API Definition

.

The

AXI4 Basic Slave API Definition

allows you to create a wide range of stimulus scenarios to

test a master DUT. This API definition simplifies the creation of slave stimulus based on the
default response of OKAY to master read and write transactions.

The

AXI4 Advanced Slave API Definition

allows you to create additional response scenarios to

transactions. For example, a successful exclusive transaction requires an EXOKAY response.

For a complete code listing of the slave test program, refer to

“SystemVerilog AXI4 Slave BFM

Test Program”

on page 720.

AXI4 Basic Slave API Definition

The Basic Slave Test Program API contains:

Functions that read and write a byte of data to

Internal Memory

include

do_byte_read()

and

do_byte_write()

, respectively.

Functions

set_read_data_valid_delay() and set_wr_resp_valid_delay()

to configure the

delay of the read data channel RVALID, and write response channel BVALID signals,
respectively.

Variables

m_rd_addr_phase_ready_delay

and

m_wr_addr_phase_ready_delay

to

configure the delay of the read/write address channel ARVALID/AWVALID signals, and

m_wr_data_phase_ready_delay

to configure the delay of the write response channel

BVALID signal.

A

slave_mode

variable to configure the behavior of reading and writing to the internal

memory.

A

slave_ready_delay_mode

variable to configure the behavior of the handshake signals

*VALID to *READY delay.

Configuration variables m_max_outstanding_read_trans and
m_max_outstanding_write_trans back-pressure a master from transmitting additional
read and write transactions when the configured value has been reached.

Advertising