增加测试用例,将频率差改到120ppm,测试未通过
This commit is contained in:
@@ -384,17 +384,17 @@ initial begin
|
|||||||
|
|
||||||
spi_csn = {`SPI_CSN_NUM{1'b1}}; //~15'b0;
|
spi_csn = {`SPI_CSN_NUM{1'b1}}; //~15'b0;
|
||||||
|
|
||||||
#125000
|
//#125000
|
||||||
|
#250000
|
||||||
reset <= 1;
|
reset <= 1;
|
||||||
|
|
||||||
#300000
|
//#300000
|
||||||
|
#600000
|
||||||
reset <= 0;
|
reset <= 0;
|
||||||
|
|
||||||
//#20000000
|
#200000000000
|
||||||
#100000000000
|
#200000000000
|
||||||
#100000000000
|
#200000000000
|
||||||
#100000000000
|
|
||||||
//#5000000
|
|
||||||
|
|
||||||
$display("Time Out !!!");
|
$display("Time Out !!!");
|
||||||
$fclose(spidata_file);
|
$fclose(spidata_file);
|
||||||
@@ -402,7 +402,7 @@ initial begin
|
|||||||
end
|
end
|
||||||
|
|
||||||
initial begin
|
initial begin
|
||||||
forever begin #100000 clock <= ~clock; end
|
forever begin #200000 clock <= ~clock; end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@@ -414,14 +414,16 @@ generate
|
|||||||
#12500
|
#12500
|
||||||
;
|
;
|
||||||
end
|
end
|
||||||
forever begin #100000 multiCLK[i] <= ~multiCLK[i]; end
|
forever begin #200000 multiCLK[i] <= ~multiCLK[i]; end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
endgenerate
|
endgenerate
|
||||||
|
|
||||||
|
//如果频率差到 80ppm,参数是: 200016/25002/20016
|
||||||
|
//如果频率差到120ppm,参数是: 200024/25003/20024
|
||||||
|
//如果频率差到160ppm,参数是: 200032/25004/20032
|
||||||
initial begin
|
initial begin
|
||||||
forever begin #100008 clock2 <= ~clock2; end
|
forever begin #200024 clock2 <= ~clock2; end
|
||||||
end
|
end
|
||||||
|
|
||||||
generate
|
generate
|
||||||
@@ -429,10 +431,10 @@ generate
|
|||||||
initial begin
|
initial begin
|
||||||
multiCLK2[i] = 0;
|
multiCLK2[i] = 0;
|
||||||
for( integer j = 0; j < i; j = j + 1 ) begin
|
for( integer j = 0; j < i; j = j + 1 ) begin
|
||||||
#12501
|
#25003
|
||||||
;
|
;
|
||||||
end
|
end
|
||||||
forever begin #100008 multiCLK2[i] <= ~multiCLK2[i]; end
|
forever begin #200024 multiCLK2[i] <= ~multiCLK2[i]; end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
endgenerate
|
endgenerate
|
||||||
@@ -455,7 +457,7 @@ always @(negedge reset) begin
|
|||||||
_reset_deactive <= 1'b1;
|
_reset_deactive <= 1'b1;
|
||||||
end
|
end
|
||||||
|
|
||||||
`define SCKFRE #800000
|
`define SCKFRE #1600000
|
||||||
|
|
||||||
reg sck = 0;
|
reg sck = 0;
|
||||||
|
|
||||||
@@ -530,13 +532,13 @@ end
|
|||||||
|
|
||||||
always @(posedge clock) begin
|
always @(posedge clock) begin
|
||||||
if( isReq & sck == 0 ) begin
|
if( isReq & sck == 0 ) begin
|
||||||
isBusy <= #6250 1'b1;
|
isBusy <= #12500 1'b1;
|
||||||
transCnt <= #6250 0;
|
transCnt <= #12500 0;
|
||||||
|
|
||||||
byteCnt <= #6250 ~12'b0;
|
byteCnt <= #12500 ~12'b0;
|
||||||
bitCnt <= #6250 ~3'b0;
|
bitCnt <= #12500 ~3'b0;
|
||||||
|
|
||||||
spi_csn[idx] <= #6250 1'b0;
|
spi_csn[idx] <= #12500 1'b0;
|
||||||
exChangeRego <= txBuf[0];
|
exChangeRego <= txBuf[0];
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -583,8 +585,8 @@ always @(posedge sck) begin
|
|||||||
exChangeRegi <= isQspi ? {exChangeRegi[3:0], qspi_mux_miso} : {exChangeRegi[6:0], spi_mux_miso};
|
exChangeRegi <= isQspi ? {exChangeRegi[3:0], qspi_mux_miso} : {exChangeRegi[6:0], spi_mux_miso};
|
||||||
end
|
end
|
||||||
end else begin
|
end else begin
|
||||||
isBusy <= #6250 1'b0;
|
isBusy <= #12500 1'b0;
|
||||||
spi_csn[idx] <= #6250 1'b1;
|
spi_csn[idx] <= #12500 1'b1;
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -603,13 +605,13 @@ task spi_trans( input [15:0] saddress, input [7:0] scmd, input [12:0] slength,in
|
|||||||
length <= slength + 3;
|
length <= slength + 3;
|
||||||
idx <= sidx;
|
idx <= sidx;
|
||||||
|
|
||||||
#6250
|
#12500
|
||||||
@(negedge sck)
|
@(negedge sck)
|
||||||
isReq <= 1;
|
isReq <= 1;
|
||||||
@(posedge sck) #6250
|
@(posedge sck) #12500
|
||||||
isReq <= 0;
|
isReq <= 0;
|
||||||
|
|
||||||
@( negedge isBusy) #1250000
|
@( negedge isBusy) #2500000
|
||||||
begin
|
begin
|
||||||
//$fwrite(spidata_file, "------------%5t------------\n", $realtime);
|
//$fwrite(spidata_file, "------------%5t------------\n", $realtime);
|
||||||
$fwrite(spidata_file, "T:%t \tdev:%4d, addr:0x%02h%02h, %s, len:%4d\n",
|
$fwrite(spidata_file, "T:%t \tdev:%4d, addr:0x%02h%02h, %s, len:%4d\n",
|
||||||
@@ -887,13 +889,13 @@ task wait_comm_finished();
|
|||||||
length = 8'h07;
|
length = 8'h07;
|
||||||
idx = `IF_IQSPI(0);
|
idx = `IF_IQSPI(0);
|
||||||
|
|
||||||
#6250
|
#12500
|
||||||
@(negedge sck)
|
@(negedge sck)
|
||||||
isReq <= 1;
|
isReq <= 1;
|
||||||
@(posedge sck) #6250
|
@(posedge sck) #12500
|
||||||
isReq <= 0;
|
isReq <= 0;
|
||||||
|
|
||||||
@( negedge isBusy) #1250000
|
@( negedge isBusy) #2500000
|
||||||
begin
|
begin
|
||||||
|
|
||||||
end
|
end
|
||||||
@@ -907,13 +909,13 @@ task wait_comm_finished();
|
|||||||
length = 8'h07;
|
length = 8'h07;
|
||||||
idx = `IF_IQSPI(0);
|
idx = `IF_IQSPI(0);
|
||||||
|
|
||||||
#6250
|
#12500
|
||||||
@(negedge sck)
|
@(negedge sck)
|
||||||
isReq <= 1;
|
isReq <= 1;
|
||||||
@(posedge sck) #6250
|
@(posedge sck) #12500
|
||||||
isReq <= 0;
|
isReq <= 0;
|
||||||
|
|
||||||
@( negedge isBusy) #1250000
|
@( negedge isBusy) #2500000
|
||||||
begin
|
begin
|
||||||
|
|
||||||
end
|
end
|
||||||
@@ -928,7 +930,7 @@ task wait_comm_finished();
|
|||||||
$display("error occur");
|
$display("error occur");
|
||||||
is_run = 0;
|
is_run = 0;
|
||||||
end
|
end
|
||||||
if (($realtime - st) >= 6250000000.0)
|
if (($realtime - st) >= 12500000000.0)
|
||||||
begin
|
begin
|
||||||
$display("comm timeout.");
|
$display("comm timeout.");
|
||||||
is_run = 0;
|
is_run = 0;
|
||||||
@@ -1093,7 +1095,7 @@ initial begin
|
|||||||
|
|
||||||
`include "tc_runlist.vh"
|
`include "tc_runlist.vh"
|
||||||
|
|
||||||
#1250000000
|
#2500000000
|
||||||
$display("Testcase Finished! Time Out !!!");
|
$display("Testcase Finished! Time Out !!!");
|
||||||
$fclose(spidata_file);
|
$fclose(spidata_file);
|
||||||
$stop;
|
$stop;
|
||||||
|
|||||||
Reference in New Issue
Block a user