User guide
9-19
Using the Old Command Line Interface (CLI)
} // end of program memsys_test
// Don’t allow inputs to dut to float
task init_ports () {
printf(“Task init_ports\n”);
@(posedge memsys.clk);
memsys.request = 2’b00;
memsys.busRdWr_N = 1’b1;
memsys.adxStrb = 1’b0;
memsys.reset = 1’b0;
}
task reset_sequence () {
printf(“Task reset_sequence\n”);
memsys.reset = 0;
@1 memsys.reset = 1;
@10 memsys.reset = 0;
@1 memsys.grant == 2’b00; //check if grants are 0’s
}
task check_all () {
integer semaphoreId, randflag;
event CPU1done;
bit[7:0] mem_add0[], mem_add1[];
printf(“Task check_all:\n”);
semaphoreId = alloc(SEMAPHORE, 0, 1, 1);
fork
{// fork process for CPU 0
repeat(256) {
randflag = cpu0.randomize();
printf(“\n THE RAND MEM0 ADD IS %b \n\n”, cpu0.address);
if (mem_add0[cpu0.address] !== cpu0.address)
{
mem_add0[cpu0.address] = cpu0.address;
printf(“\n mem_add0[%b] is %b \n\n”, cpu0.address,
mem_add0[cpu0.address]);
}
else
{