增加代码,规避在复位时刻,错误输出int信号的状态
This commit is contained in:
@@ -49,6 +49,7 @@ module ShinTopSpiTb(
|
|||||||
integer _t_start;
|
integer _t_start;
|
||||||
integer _t_end;
|
integer _t_end;
|
||||||
reg [63:0] _temp_time;
|
reg [63:0] _temp_time;
|
||||||
|
reg _reset_deactive;
|
||||||
|
|
||||||
wire [4:0] isSoftReset;
|
wire [4:0] isSoftReset;
|
||||||
|
|
||||||
@@ -233,6 +234,8 @@ initial begin
|
|||||||
clk8x = 0;
|
clk8x = 0;
|
||||||
reset = 0;
|
reset = 0;
|
||||||
|
|
||||||
|
_reset_deactive = 1'b0;
|
||||||
|
|
||||||
spi_csn = ~15'b0;
|
spi_csn = ~15'b0;
|
||||||
|
|
||||||
#100
|
#100
|
||||||
@@ -267,8 +270,13 @@ begin
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
always @(posedge reset) begin
|
||||||
|
_reset_deactive <= 1'b0;
|
||||||
|
end
|
||||||
|
|
||||||
|
always @(negedge reset) begin
|
||||||
|
_reset_deactive <= 1'b1;
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -501,45 +509,53 @@ 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
|
always @(posedge io_int_sig[0]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "MST INT SETUP: %tns", $time / 1000);
|
$fdisplay(spidata_file, "MST INT SETUP: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(posedge io_int_sig[1]) begin
|
always @(posedge io_int_sig[1]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV0 INT SETUP: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV0 INT SETUP: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(posedge io_int_sig[2]) begin
|
always @(posedge io_int_sig[2]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV1 INT SETUP: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV1 INT SETUP: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(posedge io_int_sig[3]) begin
|
always @(posedge io_int_sig[3]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV2 INT SETUP: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV2 INT SETUP: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(posedge io_int_sig[4]) begin
|
always @(posedge io_int_sig[4]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV3 INT SETUP: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV3 INT SETUP: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
always @(negedge io_int_sig[0]) begin
|
always @(negedge io_int_sig[0]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "MST INT CLEAR: %tns", $time / 1000);
|
$fdisplay(spidata_file, "MST INT CLEAR: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(negedge io_int_sig[1]) begin
|
always @(negedge io_int_sig[1]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV0 INT CLEAR: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV0 INT CLEAR: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(negedge io_int_sig[2]) begin
|
always @(negedge io_int_sig[2]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV1 INT CLEAR: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV1 INT CLEAR: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(negedge io_int_sig[3]) begin
|
always @(negedge io_int_sig[3]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV2 INT CLEAR: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV2 INT CLEAR: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
always @(negedge io_int_sig[4]) begin
|
always @(negedge io_int_sig[4]) begin
|
||||||
|
if (_reset_deactive == 1'b1)
|
||||||
$fdisplay(spidata_file, "SLV3 INT CLEAR: %tns", $time / 1000);
|
$fdisplay(spidata_file, "SLV3 INT CLEAR: %tns", $time / 1000);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user