Handle_read_addr_ready, Handle_write_data_ready, Example 11-41. handle_write_addr_ready – Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual

Page 672: Processes to h, Example 11-41

Advertising
background image

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

652

VHDL Tutorials
Verifying a Master DUT

September 2013

Example 11-41. handle_write_addr_ready

-- handle_write_addr_ready : write address ready through path 5
-- This method assert/de-assert the write address channel ready signal.
-- Assertion and de-assertion is done based on m_wr_addr_phase_ready_delay
process

variable tmp_ready_delay : integer;

begin

wait_on(AXI4_RESET_POSEDGE, index, AXI4_PATH_5, axi4_tr_if_5(index));
wait_on(AXI4_CLOCK_POSEDGE, index, AXI4_PATH_5, axi4_tr_if_5(index));
loop

while (tmp_config_num_outstanding_wr_phase >=

m_max_outstanding_write_trans) loop

wait_on(AXI4_CLOCK_POSEDGE, index, AXI4_PATH_5,

axi4_tr_if_5(index));

end loop;
tmp_ready_delay := m_wr_addr_phase_ready_delay;
execute_write_addr_ready(0, 1, index, AXI4_PATH_5,

axi4_tr_if_5(index));

get_write_addr_cycle(index, AXI4_PATH_5, axi4_tr_if_5(index));
if(tmp_ready_delay > 1) then

for i in 0 to tmp_ready_delay-2 loop

wait_on(AXI4_CLOCK_POSEDGE, index, AXI4_PATH_5,

axi4_tr_if_5(index));

end loop;

end if;
execute_write_addr_ready(1, 1, index, AXI4_PATH_5,

axi4_tr_if_5(index));

end loop;
wait;

end process;

handle_read_addr_ready

The handle_read_addr_ready process handles the ARREADY signal for the read address
channel. It uses a unique path identifier to work concurrently with other processes. The
handle_read_addr_ready process code works in a similar way to that previously described for
the

handle_write_addr_ready

process. Refer to the

“VHDL AXI4 Slave BFM Test Program”

on page 748 for the complete handle_read_addr_ready code listing.

handle_write_data_ready

The handle_write_data_ready process handles the WREADY signal for the write data channel.
It uses a unique path identifier to work concurrently with other processes.

The handle_write_data_ready process code works in a similar way to that previously described
for the

handle_write_addr_ready

process. Refer to the

“VHDL AXI4 Slave BFM Test

Program”

on page 748 for the complete handle_write_data_ready code listing.

Advertising