User guide

E-14
PLI Access Routines
testbench.U1.slave_addr[0],
testbench.U1.slave_addr[1],
testbench.U1.slave_addr[2],
testbench.U1.load,
testbench.U2.cmd_array[0],
testbench.U2.cmd_array[1],
testbench.U2.cmd_array[2] );
#10;
$pli();
end
endmodule
module master;
reg[31:0] cmd_array [0:2];
integer i;
initial begin //setup some default values
for (i=0; i<3; i=i+1)
cmd_array[i] = 32’h0000_0000;
end
endmodule
module monitor;
reg load;
reg[63:0] slave_addr [0:2];
integer i;
initial begin //setup some default values
for (i=0; i<3; i=i+1)
slave_addr[i] = 64’h0000_0000_0000_0000;
load = 1’b0;
end
endmodule
In Example D-7 module testbench calls the application using the
$pli user-defined system task for the application. The display string
in the $monitor system task is on two lines to enhance readability.