Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual

Page 736

Advertising
background image

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

716

SystemVerilog AXI3 and AXI4 Test Programs
SystemVerilog AXI4 Master BFM Test Program

September 2013

bfm.execute_transaction(trans6);
if (trans6.get_data_words(0) == 'hACE0ACE1)
$display ( "@ %t, master_test_program: Read correct data (hACE0ACE1)
at address (16)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE0ACE1) at address (16), but got %h", $time,
trans6.get_data_words(0));

if (trans6.get_data_words(1) == 'hACE2ACE3)
$display ( "@ %t, master_test_program: Read correct data (hACE2ACE3)
at address (20)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE2ACE3) at address (20), but got %h", $time,
trans6.get_data_words(1));

if (trans6.get_data_words(2) == 'hACE4ACE5)
$display ( "@ %t, master_test_program: Read correct data (hACE4ACE5)
at address (24)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE4ACE5) at address (24), but got %h", $time,
trans6.get_data_words(2));

// Read data from address 32.
trans7 = bfm.create_read_transaction(32,4);
trans7.set_id(3);

bfm.execute_transaction(trans7);
if (trans7.get_data_words(0) == 'hACE0ACE1)
$display ( "@ %t, master_test_program: Read correct data (hACE0ACE1)
at address (32)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE0ACE1) at address (32), but got %h", $time,
trans7.get_data_words(0));

if (trans7.get_data_words(1) == 'hACE2ACE3)
$display ( "@ %t, master_test_program: Read correct data (hACE2ACE3)
at address (36)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE2ACE3) at address (36), but got %h", $time,
trans7.get_data_words(1));

if (trans7.get_data_words(2) == 'hACE4ACE5)
$display ( "@ %t, master_test_program: Read correct data (hACE4ACE5)
at address (40)", $time);
else
$display ( "@ %t, master_test_program: Error: Expected data
(hACE4ACE5) at address (40), but got %h", $time,
trans7.get_data_words(2));

// Read data from address 64.
trans8 = bfm.create_read_transaction(64,5);
trans8.set_id(4);

Advertising