axi_monitor_transaction

AXI Monitor Transaction class. It is an extension of axi_transaction with more APIs added for monitor purpose.

Functions
new
function new(
input string name "unnamed_axi_monitor_transaction",
xil_axi_uint protocol0,
xil_axi_uint addrw32,
xil_axi_uint dataw32,
xil_axi_uint idw0,
xil_axi_uint awusrw0,
xil_axi_uint wusrw0,
xil_axi_uint busrw0,
xil_axi_uint arusrw0,
xil_axi_uint rusrw0,
xil_axi_uint supports_narrow 1,
xil_axi_uint has_burst 1,
xil_axi_uint has_lock 1,
xil_axi_uint has_cache 1,
xil_axi_uint has_region 1,
xil_axi_uint has_prot 1,
xil_axi_uint has_qos 1,
xil_axi_uint has_wstrb 1,
xil_axi_uint has_bresp 1,
xil_axi_uint has_rresp 1
);

Constructor to create a new axi_monitor_transaction, pass the name as the instance name.

get_addr_phase_start
virtual function xil_axi_ulong get_addr_phase_start();

Returns addr_phase_start of the axi monitor transaction

set_monitor_print_times
virtual function void set_monitor_print_times();

Sets monitor_print_times to be TRUE of axi monitor transaction

clr_monitor_print_times
virtual function void clr_monitor_print_times();

Sets monitor_print_times to be FALSE of axi monitor transaction

get_monitor_print_times
virtual function xil_axi_boolean_t get_monitor_print_times();

Returns monitor_print_times of the axi_monitor_transaction

trigger_addr_phase_end
virtual function void trigger_addr_phase_end(
input time ready_time,
input time valid_time,
input xil_axi_ulong ready_cycle,
input xil_axi_ulong valid_cycle,
input xil_axi_ulong now 
);

Sets addr_phase_end,addr_phase_end_cycle,addr_ready_assert_time,addr_valid_assert_time,addr_ready_assert_cycle, addr_valid_assert_cycle,addr_phase_start,addr_accepted_cycles of axi monitor transaction.

get_addr_phase_end
virtual function time get_addr_phase_end();

Returns addr_phase_end of the axi_monitor_transaction

trigger_data_phase_start
virtual function void trigger_data_phase_start();

Sets data_phase_start of the axi_monitor_transaction to be current time

get_data_phase_start
virtual function time get_data_phase_start();

Returns data_phase_start of the axi_monitor_transaction

trigger_data_phase_end
virtual function void trigger_data_phase_end(
input xil_axi_ulong now 
);

Sets data_phase_end of the axi_monitor_transaction to be current time

get_data_phase_end
virtual function time get_data_phase_end();

Returns data_phase_end of the axi_monitor_transaction

get_bresp_phase_start
virtual function time get_bresp_phase_start();

Returns bresp_phase_start of the axi_monitor_transaction

trigger_bresp_phase_end
virtual function void trigger_bresp_phase_end(
input time ready_time,
input time valid_time,
input xil_axi_ulong ready_cycle,
input xil_axi_ulong valid_cycle,
input xil_axi_ulong now 
);

Sets bresp_phase_end,resp_ready_assert_time,resp_valid_assert_time,resp_ready_assert_cycle, resp_ready_assert_cycle,resp_valid_assert_cycle,bresp_phase_start,resp_accepted_cycles, bresp_phase_start,resp_accepted_cycles of axi monitor transaction.

get_bresp_phase_end
virtual function time get_bresp_phase_end();

Returns bresp_phase_end of the axi_monitor_transaction

trigger_transaction_phase_start
virtual function void trigger_transaction_phase_start();

Sets transaction_phase_start of the axi_monitor_transaction to current time

get_transaction_phase_start
virtual function time get_transaction_phase_start();

Returns transaction_phase_start of the axi_monitor_transaction

trigger_transaction_phase_end
virtual function void trigger_transaction_phase_end(
input xil_axi_ulong now 
);

Sets transaction_phase_end of the axi_monitor_transaction to current time

get_transaction_phase_end
virtual function time get_transaction_phase_end();

Returns transaction_phase_end of the axi_monitor_transaction

set_data_beat_time_fields
virtual function void set_data_beat_time_fields(
input xil_axi_ulong data_ready_assert_time,
input xil_axi_ulong data_valid_assert_time,
input xil_axi_ulong data_beat_accepted,
input xil_axi_int data_beat_accepted_cycles,
input xil_axi_ulong now 0
);

Sets data_ready_assert_time,data_valid_assert_time,data_beat_accepted,data_beat_accepted_cycles of axi monitor transaction.

import_data_beat_fields
virtual function void import_data_beat_fields(
inout xil_axi_write_beat write_beat 
);

Sets transaction_phase_start,data_phase_end,data_ready_assert_time, data_valid_assert_time,data_beat_accepted,data_beat_accepted_cycles, data, stobe, wuser(if WUSER_WIDTH>0)

trigger_data_beat_accepted
virtual function void trigger_data_beat_accepted(
input time ready_time,
input time valid_time,
input xil_axi_ulong ready_cycle,
input xil_axi_ulong valid_cycle 
);

Sets data beat monitor characterics of data_beat_accepted,data_ready_assert_time, data_valid_assert_time,data_ready_assert_cycle,data_valid_assert_cycle,data_beat_accepted_cycles, data_beat_accepted  of axi monitor transaction.

get_data_beat_accepted
virtual function xil_axi_ulong get_data_beat_accepted();

Returns data_beat_accepted of current beat in axi monitor transaction.

get_data_ready_assert_time
virtual function xil_axi_ulong get_data_ready_assert_time();

Returns data_ready_assert_time of current beat  of axi monitor transaction.

get_data_valid_assert_time
virtual function xil_axi_ulong get_data_valid_assert_time();

Returns data_valid_assert_time of current beat  of axi monitor transaction.

copy
function void copy(
axi_monitor_transaction rhs
);

Copies the contents of the input monitor transaction to the current monitor transaction

my_clone
virtual function axi_monitor_transaction my_clone ();

Clones the current monitor transaction and returns a handle to the new monitor transaction.

convert2string
virtual function string convert2string();

Returns a format string for AXI monitor transaction of axi_monitor_transaction