修正测试用例的输出格式,同时检查打印的时间点与波形间的关系,确认没有误差
This commit is contained in:
@@ -24,6 +24,7 @@ module ShinTopSpiTb(
|
||||
wire isResp;
|
||||
|
||||
integer spidata_file;
|
||||
integer c_line;
|
||||
|
||||
ShinTop s_ShinTop_Mst(
|
||||
.clock(clock),
|
||||
@@ -353,16 +354,21 @@ task spi_trans( input [15:0] saddress, input [7:0] scmd, input [12:0] slength,in
|
||||
|
||||
@( negedge isBusy) #1000
|
||||
begin
|
||||
$fwrite(spidata_file, "------------%-5t------------\n", $time);
|
||||
$fwrite(spidata_file, "dev:%d, addr:0x%02h%02h, cmd:%d, len:%d\n", sidx, txBuf[1], txBuf[0], txBuf[2], slength);
|
||||
//$fwrite(spidata_file, "------------%5t------------\n", $time);
|
||||
$fwrite(spidata_file, "T:%2tns \tdev:%4d, addr:0x%02h%02h, cmd:%2d, len:%4d\n", $time/1000, sidx, txBuf[1], txBuf[0], txBuf[2], slength);
|
||||
for (integer i=0; i<slength; i++) begin
|
||||
$fwrite(spidata_file, "%02h ", txBuf[i + 3]);
|
||||
c_line = 0;
|
||||
if ((i+1)%16 == 0) begin
|
||||
$fwrite(spidata_file, "\n");
|
||||
c_line = 1;
|
||||
end
|
||||
end
|
||||
if (c_line == 0) begin
|
||||
$fwrite(spidata_file, "\n");
|
||||
end
|
||||
c_line = 0;
|
||||
end
|
||||
end
|
||||
|
||||
endtask
|
||||
@@ -417,14 +423,14 @@ initial begin
|
||||
#10000
|
||||
$fdisplay(spidata_file, "\n\n测试用例3-发送嗅探包,需要在波形文件里检查");
|
||||
begin
|
||||
$fdisplay(spidata_file, "\t>>>嗅探前,检查链路状态寄存器");
|
||||
$fdisplay(spidata_file, "--->>>嗅探前,检查链路状态寄存器");
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(0)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(1)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(2)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(3)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(4)) );
|
||||
|
||||
$fdisplay(spidata_file, "\t>>>嗅探");
|
||||
$fdisplay(spidata_file, "--->>>嗅探");
|
||||
//设置SM1在写入0x3地址触发enq
|
||||
txBuf[0+3] = 8'h03;
|
||||
txBuf[1+3] = 8'h00;
|
||||
@@ -460,7 +466,7 @@ initial begin
|
||||
#50000
|
||||
#50000
|
||||
#50000
|
||||
$fdisplay(spidata_file, "\t>>>嗅探后,检查链路状态寄存器");
|
||||
$fdisplay(spidata_file, "--->>>嗅探后,检查链路状态寄存器");
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(0)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(1)) );
|
||||
spi_trans( (16'h0140), (`SPI_READ), (5), (`IF_IDX(2)) );
|
||||
@@ -472,7 +478,7 @@ initial begin
|
||||
$display("index @ %d", s_ShinTop_Mst.interface__io_cReg_timeStamp);
|
||||
|
||||
begin
|
||||
$fdisplay(spidata_file, "\t>>>设置顺序地址前,检查顺序地址");
|
||||
$fdisplay(spidata_file, "--->>>设置顺序地址前,检查顺序地址");
|
||||
//spi_trans( (16'h0010), (`SPI_READ), (5), (`IF_IDX(0)) );
|
||||
spi_trans( (16'h0000), (`SPI_READ), (32), (`IF_IDX(1)) );
|
||||
spi_trans( (16'h0000), (`SPI_READ), (32), (`IF_IDX(2)) );
|
||||
@@ -480,7 +486,7 @@ initial begin
|
||||
spi_trans( (16'h0000), (`SPI_READ), (32), (`IF_IDX(4)) );
|
||||
|
||||
|
||||
$fdisplay(spidata_file, "\t>>>设置顺序地址");
|
||||
$fdisplay(spidata_file, "--->>>设置顺序地址");
|
||||
//设置SM1在写入0xd地址触发enq
|
||||
txBuf[0+3] = 8'h0d;
|
||||
txBuf[1+3] = 8'h00;
|
||||
@@ -524,7 +530,7 @@ initial begin
|
||||
#50000
|
||||
#50000
|
||||
#50000
|
||||
$fdisplay(spidata_file, "\t>>>设置顺序地址后,检查顺序地址");
|
||||
$fdisplay(spidata_file, "--->>>设置顺序地址后,检查顺序地址");
|
||||
//spi_trans( (16'h0010), (`SPI_READ), (5), (`IF_IDX(0)) );
|
||||
spi_trans( (16'h0000), (`SPI_READ), (32), (`IF_IDX(1)) );
|
||||
spi_trans( (16'h0000), (`SPI_READ), (32), (`IF_IDX(2)) );
|
||||
|
||||
Reference in New Issue
Block a user