diff --git a/tb/shinTest/ShinTopSpiTb.v b/tb/shinTest/ShinTopSpiTb.v index 39f0dae..b902a34 100644 --- a/tb/shinTest/ShinTopSpiTb.v +++ b/tb/shinTest/ShinTopSpiTb.v @@ -532,10 +532,6 @@ endtask `define MST_RX_LEN_ADDR (`MST_RX0_LEN_ADDR) `define MST_TX_LEN_ADDR (`MST_TX0_LEN_ADDR) - -/*--------------------------------------------------------------------------------------------------------- -测试用例1 ----------------------------------------------------------------------------------------------------------*/ initial begin #1000 @@ -612,6 +608,35 @@ initial begin spi_trans( (16'h00), (`SPI_READ), (1), (`IF_IDX(4)) ); end + begin:CHECK_INTERRUPT_SIG + $fdisplay(spidata_file, "\n\n测试用例:检查设备的INTERRUPT信号"); + + $fdisplay(spidata_file, "--->>>检查中断"); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(0)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(1)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(2)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(3)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(4)) ); + + $fdisplay(spidata_file, "--->>>清中断"); + txBuf[0+3] = 8'h00; + txBuf[1+3] = 8'h00; + txBuf[2+3] = 8'h00; + txBuf[3+3] = 8'h80; + spi_trans( (16'h78), (`SPI_WRITE), (4), (`IF_IDX(0)) ); + spi_trans( (16'h78), (`SPI_WRITE), (4), (`IF_IDX(1)) ); + spi_trans( (16'h78), (`SPI_WRITE), (4), (`IF_IDX(2)) ); + spi_trans( (16'h78), (`SPI_WRITE), (4), (`IF_IDX(3)) ); + spi_trans( (16'h78), (`SPI_WRITE), (4), (`IF_IDX(4)) ); + + $fdisplay(spidata_file, "--->>>检查中断"); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(0)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(1)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(2)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(3)) ); + spi_trans( (16'h70), (`SPI_READ), (14), (`IF_IDX(4)) ); + end + `ifdef ENABLE_DET_TEST /*--------------------------------------------------------------------------------------------------------- 测试用例3