Get_lock(), Axi3 example – Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual

Page 390

Advertising
background image

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

370

VHDL AXI3 and AXI4 Slave BFMs
get_lock()

September 2013

get_lock()

This nonblocking procedure gets the lock field for a transaction that is uniquely identified by the
transaction_id field previously created by the

create_slave_transaction()

procedure.

AXI3 Example

-- Create a slave transaction. Creation returns tr_id to identify
-- the transaction.
create_slave_transaction(tr_id, bfm_index, axi_tr_if_0(bfm_index));

....

-- Get the lock field of the tr_id transaction.
get_lock(lock, tr_id, bfm_index, axi_tr_if_0(bfm_index));

Prototype

-- * = axi| axi4
-- ** = AXI | AXI4
get_lock
(

lock : out integer;
transaction_id : in integer;
bfm_id : in integer;
path_id : in *_path_t; --optional
signal tr_if : inout *_vhd_if_struct_t

);

Arguments

lock

Burst lock:

**_NORMAL;
**_EXCLUSIVE;
(AXI3) AXI_LOCKED;
(AXI3) AXI_LOCK_RSVD;

transaction_id

Transaction identifier. Refer to

“Overloaded Procedure Common

Arguments”

on page 203 for more details.

bfm_id

BFM identifier. Refer to

“Overloaded Procedure Common Arguments”

on page 203 for more details.

path_id

(Optional) Parallel process path identifier:

**_PATH_0
**_PATH_1
**_PATH_2
**_PATH_3
**_PATH_4

Refer to

“Overloaded Procedure Common Arguments”

on page 203 for

more details.

tr_if

Transaction signal interface. Refer to

“Overloaded Procedure Common

Arguments”

on page 203 for more details.

Returns

lock

Advertising