axi_vif_mem_proxy

AXI VIF Proxy Class. It has virtual interface for AXI VIP interface.

Drivers of AXI VIP drive transaction/ready onto AXI VIP bus interface through APIs(such as  put_w/rdata) of this class,

monitor of AXI VIP collects AXI interface information and convert it into transaction through APIs(get_w/rdata) in this class.

Functions
wait_aclks
virtual task wait_aclks(
input xil_axi_uint cnt
);

Waits specified amount of posedge of aclk

wait_posedge_aclk
virtual task wait_posedge_aclk();

Waits posedge of ACLK of m_vif

wait_posedge_aclk_with_hold
virtual task wait_posedge_aclk_with_hold();

Waits posedge of ACLK of m_vif occurs,then wait hold_time

wait_negedge_aclk
virtual task wait_negedge_aclk();

Waits negedge of ACLK of m_vif

wait_areset_deassert
virtual task wait_areset_deassert();

Waits areset to be deasserted

is_aclk_high
virtual function xil_axi_boolean_t is_aclk_high();

Returns TRUE if the aclk is in the HIGH phase of the cycle.

is_aclk_low
virtual function xil_axi_boolean_t is_aclk_low();

Returns TRUE if the aclk is in the LOW phase of the cycle.

get_drive_x
virtual function xil_axi_boolean_t get_drive_x();

Returns TRUE if dummy_drive_type is XIL_AXI_VIF_DRIVE_X, else returns FALSE

get_dummy_drive_type
virtual function xil_axi_vif_dummy_drive_t get_dummy_drive_type(
input xil_axi_cmd_t d
);

Returns dummy_drive_type of m_vif. Refer xil_axi_vif_dummy_drive_t for dummy type.

put_rdata
virtual task put_rdata(
inout axi_transaction transfer,
input xil_axi_uint beat_num
);

Puts specified beat into READ data Channel of axi_vif_mem_proxy.

put_wdata
virtual task put_wdata(
inout axi_transaction transfer,
input xil_axi_uint beat_num
);

Puts specified beat into Write Data Channel of axi_vif_mem_proxy.

new
function new(
string name "unnamed_axi_vif_mem_proxy"
);

Constructor to create a new axi vif proxy and set protocol version, ~name~ is the instance name.

get_axi_version
virtual function xil_axi_vif_axi_version_t get_axi_version();

Returns axi_version of <axi_vif_mem_proxy>.refer xil_axi_vif_axi_version_t for axi_version information.

set_axi_version
virtual function void set_axi_version(
input xil_axi_vif_axi_version_t update
);

Sets axi_version of axi_vif_mem_proxy. refer xil_axi_vif_axi_version_t for axi_version information.

get_axi_version_name
virtual function string get_axi_version_name();

Returns axi_version's name. refer xil_axi_vif_axi_version_t for axi_version information.

set_drive_x
virtual function void set_drive_x();

Sets dummy_drive_type to be XIL_AXI_VIF_DRIVE_X of axi_vif_mem_proxy. Refer xil_axi_vif_dummy_drive_t for dummy drive type.

set_dummy_drive_type
virtual function void set_dummy_drive_type(
input xil_axi_vif_dummy_drive_t inp
);

Sets dummy_drive_type of axi_vif_mem_proxy. Refer xil_axi_vif_dummy_drive_t for dummy drive type.

assign_vi
function void assign_vi (
virtual interface axi_vip_if `AXI_PARAM_ORDER vif
) ;

Assigns m_vif of axi_vif_mem_proxy.

run_phase
task run_phase();

Start control processes for operation of axi_vif_mem_proxy.

get_current_clk_count
function xil_axi_uint get_current_clk_count();

Returns clk_edge_counter of axi_vif_mem_proxy. Increment the clock edge counter on clock negedges, to avoid race conditions with synchronous tasks, that could otherwise execute either before or after thie clock edge counter is incremented.

get_current_edge_time
function time get_current_edge_time();

Returns clk_edge_time of axi_vif_mem_proxy. clk_edge_time is the time of posedge aclk.

put_aw_noise
virtual function void put_aw_noise();

Puts noise on Write command channel of axi_vif_mem_proxy.

put_ar_noise
virtual function void put_ar_noise();

Puts noise on read command channel of axi_vif_mem_proxy.

put_w_noise
virtual function void put_w_noise();

Puts noise on write data channel of axi_vif_mem_proxy.

put_r_noise
virtual function void put_r_noise();

Puts noise on Read data channel of axi_vif_mem_proxy.

put_b_noise
virtual function void put_b_noise();

Puts noise on Bresp channel of axi_vif_mem_proxy.

reset_aw
virtual function void reset_aw();

Reset AW channel of <axi_vif_mem_proxy>.clear awvalid and put noise into write command channel.

reset_ar
virtual function void reset_ar();

Resets AR channel of axi_vif_mem_proxy. clear arvalid and put noise into read command channel.

reset_w
virtual function void reset_w();

Resets W channel of axi_vif_mem_proxy. clear wvalid and put noise into write data channel.

reset_r
virtual function void reset_r();

Resets R channel of axi_vif_mem_proxy. clear rvalid and put noise into read response channel.

reset_b
virtual function void reset_b();

Resets B channel of axi_vif_mem_proxy. clear bvalid and put noise into write response channel.

put_cmd
virtual function void put_cmd(
inout axi_transaction transfer
);

Puts write/read commands on Write/Read commands Channel of axi_vif_mem_proxy.

put_bresp
virtual function void put_bresp(
axi_transaction transfer
);

Puts transaction information onto BRESP channel of axi_vif_mem_proxy.

get_awcmd
virtual function xil_axi_cmd_beat get_awcmd();

Collects write command channel info from IF and returns it to write command beat of axi_vif_mem_proxy.

get_arcmd
virtual function xil_axi_cmd_beat get_arcmd();

Collects read command channel info from IF and returns it to read command beat of axi_vif_mem_proxy.

get_bresp
virtual function xil_axi_resp_beat get_bresp();

Collects bresp channel info from IF and returns it to bresp beat of axi_vif_mem_proxy.

get_rdata
virtual function xil_axi_read_beat get_rdata();

Collects read data channel info from IF and returns it to read data beat of axi_vif_mem_proxy.

get_wdata
virtual function xil_axi_write_beat get_wdata();

Collects write data channel info from IF and returns it to write data beat.

set_awvalid
virtual function void set_awvalid();

Sets awvalid of m_vif to be 1

set_arvalid
virtual function void set_arvalid();

Sets arvalid of m_vif to be 1

clr_awvalid
virtual function void clr_awvalid();

Sets awvalid of m_vif to be 0

clr_arvalid
virtual function void clr_arvalid();

Sets arvalid of m_vif to be 0

set_bvalid
virtual function void set_bvalid();

Sets bvalid of m_vif to be 1

clr_bvalid
virtual function void clr_bvalid();

Sets bvalid of m_vif to be 0

set_rvalid
virtual function void set_rvalid();

Sets rvalid of m_vif to be 1

clr_rvalid
virtual function void clr_rvalid();

Sets rvalid of m_vif to be 0

set_wvalid
virtual function void set_wvalid();

Sets wvalid of m_vif to be 1

clr_wvalid
virtual function void clr_wvalid();

Sets wvalid of m_vif to be 0

set_awready
virtual function void set_awready();

Sets awready of m_vif to be 1

set_arready
virtual function void set_arready();

Sets arready of m_vif to be 1

clr_awready
virtual function void clr_awready();

Sets awready of m_vif to be 0

clr_arready
virtual function void clr_arready();

Sets arready of m_vif to be 0

set_bready
virtual function void set_bready();

Sets bready of m_vif to be 1

clr_bready
virtual function void clr_bready();

Sets bready of m_vif to be 0

set_rready
virtual function void set_rready();

Sets rready of m_vif to be 1

clr_rready
virtual function void clr_rready();

Sets rready of m_vif to be 0

set_wready
virtual function void set_wready();

Sets wready of m_vif to be 1

clr_wready
virtual function void clr_wready();

Sets wready of m_vif to be 0

is_awready_asserted
virtual function bit is_awready_asserted();

Returns 1 if AWREADY of clock block in m_vif is 1, else returns 0

is_arready_asserted
virtual function bit is_arready_asserted();

Returns 1 if ARREADY of clock block in m_vif is 1, else returns 0

is_wready_asserted
virtual function bit is_wready_asserted();

Returns 1 if WREADY of clock block in m_vif is 1, else returns 0

is_rready_asserted
virtual function bit is_rready_asserted();

Returns 1 if RREADY of clock block in m_vif is 1, else returns 0

is_bready_asserted
virtual function bit is_bready_asserted();

Returns 1 if BREADY of clock block in m_vif is 1, else returns 0

is_awvalid_asserted
virtual function bit is_awvalid_asserted();

Returns 1 if AWVALID of clock block in m_vif is 1, else returns 0

is_arvalid_asserted
virtual function bit is_arvalid_asserted();

Returns 1 if ARVALID of clock block in m_vif is 1, else returns 0

is_wvalid_asserted
virtual function bit is_wvalid_asserted();

Returns 1 if WVALID of clock block in m_vif is 1, else returns 0

is_rvalid_asserted
virtual function bit is_rvalid_asserted();

Returns 1 if RVALID of clock block in m_vif is 1, else returns 0

is_bvalid_asserted
virtual function bit is_bvalid_asserted();

Returns 1 if BVALID of clock block in m_vif is 1, else returns 0

is_live_awvalid_asserted
virtual function bit is_live_awvalid_asserted();

Returns 1 if AWVALID of m_vif is 1, else returns 0

is_live_arvalid_asserted
virtual function bit is_live_arvalid_asserted();

Returns 1 if ARVALID of m_vif is 1, else returns 0

is_live_wvalid_asserted
virtual function bit is_live_wvalid_asserted();

Returns 1 if WVALID of m_vif is 1, else returns 0

is_live_rvalid_asserted
virtual function bit is_live_rvalid_asserted();

Returns 1 if RVALID of m_vif is 1, else returns 0

is_live_bvalid_asserted
virtual function bit is_live_bvalid_asserted();

Returns 1 if BVALID of m_vif is 1, else returns 0

wait_live_awvalid_asserted
virtual task wait_live_awvalid_asserted();

Wait AWVALID of m_vif is 1

wait_live_arvalid_asserted
virtual task wait_live_arvalid_asserted();

Wait ARVALID of m_vif is 1

wait_live_arvalid_asserted

Wait WALID of m_vif is 1

wait_live_rvalid_asserted
virtual task wait_live_rvalid_asserted();

Wait RVALID of m_vif is 1

wait_live_bvalid_asserted
virtual task wait_live_bvalid_asserted();

Wait BVALID of m_vif is 1

wait_areset_asserted
virtual task wait_areset_asserted();

Waits areset to be asserted

wait_wvalid_sampled
virtual task wait_wvalid_sampled();

Wait till WVALID is sampled

wait_aw_accepted
virtual task wait_aw_accepted();

Waits till AWREADY/AWVALID handshake occurs

wait_ar_accepted
virtual task wait_ar_accepted();

Waits till ARREADY/ARVALID handshake occurs

wait_r_accepted
virtual task wait_r_accepted();

Waits till RREADY/RVALID handshake occurs

wait_w_accepted
virtual task wait_w_accepted();

Waits till WREADY/WVALID handshake occurs

wait_b_accepted
virtual task wait_b_accepted();

Waits till BREADY/BVALID handshake occurs

is_aw_accepted
virtual function bit is_aw_accepted();

Returns 1 if AWREADY/AWVALID handshake occurs

is_ar_accepted
virtual function bit is_ar_accepted();

Returns 1 if ARREADY/ARVALID handshake occurs

is_r_accepted
virtual function bit is_r_accepted();

Returns 1 if RREADY/RVALID handshake occurs

is_w_accepted
virtual function bit is_w_accepted();

Returns 1 if WREADY/WVALID handshake occurs

is_b_accepted
virtual function bit is_b_accepted();

Returns 1 if BREADY/BVALID handshake occurs