Line 69... |
Line 69... |
|
|
//Now write the output log
|
//Now write the output log
|
OMEM_LOG = $fopen(OMEMLogFileName);
|
OMEM_LOG = $fopen(OMEMLogFileName);
|
for (i = 0; i < `MAX_OMEM_DUMP_SIZE; i = i +1)
|
for (i = 0; i < `MAX_OMEM_DUMP_SIZE; i = i +1)
|
begin
|
begin
|
$fwrite(OMEM_LOG,"@%d\t%h\n",i,`THEIA_TOP.VPX[ CVPID ].OMEM.Ram[i]);
|
$fwrite(OMEM_LOG,"@%02d\t%h\n",i,`THEIA_TOP.VPX[ CVPID ].OMEM.Ram[i]);
|
end
|
end
|
$fclose(OMEM_LOG);
|
$fclose(OMEM_LOG);
|
|
|
VP_REG_LOG = $fopen(RegLogFileName);
|
VP_REG_LOG = $fopen(RegLogFileName);
|
for (i = 0; i < `MAX_RF_MEM_DUMP_SIZE; i = i +1)
|
for (i = 0; i < `MAX_RF_MEM_DUMP_SIZE; i = i +1)
|
Line 119... |
Line 119... |
default:
|
default:
|
`DWRITE"UNKNOWN");
|
`DWRITE"UNKNOWN");
|
endcase
|
endcase
|
`DWRITE") ");
|
`DWRITE") ");
|
end
|
end
|
`RS_IO:`DWRITE" IO ");
|
`RS_IO:
|
|
begin
|
|
`DWRITE" IO ");
|
|
case (`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SCALE_RNG])
|
|
0: `DWRITE" OMWRITE ");
|
|
1: `DWRITE" TMREAD ");
|
|
default:
|
|
`DWRITE" UNKNOWN");
|
|
endcase
|
|
end
|
default:
|
default:
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_RSID_RNG]);
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_RSID_RNG]);
|
endcase
|
endcase
|
|
|
if ( `VP_TOP.EXE.II0.iInstruction0[`INST_IMM] == 0)
|
if ( `VP_TOP.EXE.II0.iInstruction0[`INST_IMM] == 0)
|
Line 191... |
Line 200... |
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_IO: `DWRITE" IO ");
|
`RS_IO:
|
|
begin
|
|
`DWRITE" IO ");
|
|
case (`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SCALE_RNG])
|
|
0: `DWRITE" OMWRITE ");
|
|
1: `DWRITE" TMREAD ");
|
|
default:
|
|
`DWRITE" UNKNOWN");
|
|
endcase
|
|
end
|
default:
|
default:
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SRC1RS_RNG]);
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SRC1RS_RNG]);
|
endcase
|
endcase
|
`DWRITE" | ");
|
`DWRITE" | ");
|
|
|
Line 203... |
Line 221... |
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_IO: `DWRITE" IO ");
|
`RS_IO:
|
|
begin
|
|
`DWRITE" IO ");
|
|
case (`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SCALE_RNG])
|
|
0: `DWRITE" OMWRITE ");
|
|
1: `DWRITE" TMREAD ");
|
|
default:
|
|
`DWRITE" UNKNOWN");
|
|
endcase
|
|
end
|
default:
|
default:
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SRC0RS_RNG]);
|
`DWRITE" %b ",`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SRC0RS_RNG]);
|
endcase
|
endcase
|
`DWRITE" | ");
|
`DWRITE" | ");
|
|
|
Line 325... |
Line 352... |
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD0: `DWRITE" ADD_0 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_ADD1: `DWRITE" ADD_1 ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_DIV: `DWRITE" DIV ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_MUL: `DWRITE" MUL ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_SQRT: `DWRITE" SQRT ");
|
`RS_IO: `DWRITE" IO ");
|
`RS_IO:
|
|
begin
|
|
`DWRITE" IO ");
|
|
case (`VP_TOP.EXE.II0.oIssueBcast[`ISSUE_SCALE_RNG])
|
|
0: `DWRITE" OMWRITE ");
|
|
1: `DWRITE" TMREAD ");
|
|
default:
|
|
`DWRITE" UNKNOWN");
|
|
endcase
|
|
end
|
default:
|
default:
|
`DWRITE" %b ",`VP_TOP.EXE.II1.oIssueBcast[`ISSUE_SRC1RS_RNG]);
|
`DWRITE" %b ",`VP_TOP.EXE.II1.oIssueBcast[`ISSUE_SRC1RS_RNG]);
|
endcase
|
endcase
|
`DWRITE" | ");
|
`DWRITE" | ");
|
|
|
Line 479... |
Line 515... |
`DWRITE" %b ",`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_WE_RNG]);
|
`DWRITE" %b ",`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_WE_RNG]);
|
endcase
|
endcase
|
`DWRITE" %h %h %h \n",`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_X_RNG],`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_Y_RNG], `VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_Z_RNG]);
|
`DWRITE" %h %h %h \n",`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_X_RNG],`VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_Y_RNG], `VP_TOP.EXE.SQRT_STA.oCommitData[`COMMIT_Z_RNG]);
|
end
|
end
|
//-----------------------------------------------------------------
|
//-----------------------------------------------------------------
|
|
if (`VP_TOP.EXE.IO_STA.iCommitGranted)
|
|
begin
|
|
`DWRITE"\n%dns\t VP[%d] COMMIT IO TMREAD R[%d]",$time,`VP_TOP.iVPID-1,`VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_DST_RNG]);
|
|
|
|
case ( `VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_WE_RNG] )
|
|
3'b000: `DWRITE".nowrite ");
|
|
3'b001: `DWRITE".z ");
|
|
3'b010: `DWRITE".y ");
|
|
3'b100: `DWRITE".x ");
|
|
3'b111: `DWRITE".xyz ");
|
|
default:
|
|
`DWRITE" %b ",`VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_WE_RNG]);
|
|
endcase
|
|
`DWRITE" %h %h %h \n",`VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_X_RNG],`VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_Y_RNG], `VP_TOP.EXE.IO_STA.oCommitData[`COMMIT_Z_RNG]);
|
|
end
|
|
//-----------------------------------------------------------------
|
|
|
end //always
|
end //always
|
|
|
|
|
endmodule
|
endmodule
|