增加检测中断信号的建立和清除代码

This commit is contained in:
2025-06-04 09:50:36 +08:00
parent 1e04b9f8c7
commit ca37438abf

View File

@@ -3,6 +3,7 @@
`define ENABLE_REG_RW_TEST `define ENABLE_REG_RW_TEST
`define ENABLE_DET_TEST `define ENABLE_DET_TEST
`define ENABLE_SET_ADDR_TEST `define ENABLE_SET_ADDR_TEST
`define ENABLE_INT_INIT_TEST
//`define ENABLE_SM1_SEND_TEST //`define ENABLE_SM1_SEND_TEST
//`define ENABLE_SMx_SEND_TEST //`define ENABLE_SMx_SEND_TEST
@@ -501,6 +502,48 @@ task spi_trans( input [15:0] saddress, input [7:0] scmd, input [12:0] slength,in
endtask endtask
always @(posedge io_int_sig[0]) begin
$fdisplay(spidata_file, "MST INT SETUP: %tns", $time / 1000);
end
always @(posedge io_int_sig[1]) begin
$fdisplay(spidata_file, "SLV0 INT SETUP: %tns", $time / 1000);
end
always @(posedge io_int_sig[2]) begin
$fdisplay(spidata_file, "SLV1 INT SETUP: %tns", $time / 1000);
end
always @(posedge io_int_sig[3]) begin
$fdisplay(spidata_file, "SLV2 INT SETUP: %tns", $time / 1000);
end
always @(posedge io_int_sig[4]) begin
$fdisplay(spidata_file, "SLV3 INT SETUP: %tns", $time / 1000);
end
always @(negedge io_int_sig[0]) begin
$fdisplay(spidata_file, "MST INT CLEAR: %tns", $time / 1000);
end
always @(negedge io_int_sig[1]) begin
$fdisplay(spidata_file, "SLV0 INT CLEAR: %tns", $time / 1000);
end
always @(negedge io_int_sig[2]) begin
$fdisplay(spidata_file, "SLV1 INT CLEAR: %tns", $time / 1000);
end
always @(negedge io_int_sig[3]) begin
$fdisplay(spidata_file, "SLV2 INT CLEAR: %tns", $time / 1000);
end
always @(negedge io_int_sig[4]) begin
$fdisplay(spidata_file, "SLV3 INT CLEAR: %tns", $time / 1000);
end
`define INTERFACE_IDX 0 //internal spi `define INTERFACE_IDX 0 //internal spi
`define IF_IDX(idx) ((`INTERFACE_IDX)+(idx)) `define IF_IDX(idx) ((`INTERFACE_IDX)+(idx))
@@ -610,6 +653,7 @@ initial begin
spi_trans( (16'h00), (`SPI_READ), (1), (`IF_IDX(4)) ); spi_trans( (16'h00), (`SPI_READ), (1), (`IF_IDX(4)) );
end end
`ifdef ENABLE_INT_INIT_TEST
begin:CHECK_INTERRUPT_SIG begin:CHECK_INTERRUPT_SIG
$fdisplay(spidata_file, "\n\n测试用例检查设备的INTERRUPT信号"); $fdisplay(spidata_file, "\n\n测试用例检查设备的INTERRUPT信号");
@@ -693,6 +737,7 @@ initial begin
spi_trans( (16'h70), (`SPI_READ), (4), (`IF_IDX(3)) ); spi_trans( (16'h70), (`SPI_READ), (4), (`IF_IDX(3)) );
spi_trans( (16'h70), (`SPI_READ), (4), (`IF_IDX(4)) ); spi_trans( (16'h70), (`SPI_READ), (4), (`IF_IDX(4)) );
end end
`endif
`ifdef ENABLE_DET_TEST `ifdef ENABLE_DET_TEST
/*--------------------------------------------------------------------------------------------------------- /*---------------------------------------------------------------------------------------------------------