增加一个随机错误包的发送
This commit is contained in:
@@ -7,14 +7,15 @@
|
|||||||
`define ENABLE_DET_ERR_TEST
|
`define ENABLE_DET_ERR_TEST
|
||||||
`define ENABLE_SM1_SEND_TEST
|
`define ENABLE_SM1_SEND_TEST
|
||||||
//`define ENABLE_SMx_SEND_TEST
|
//`define ENABLE_SMx_SEND_TEST
|
||||||
|
`define ENABLE_ERR_PKT1_TEST
|
||||||
|
|
||||||
//`define ENABLE_EXCHG_DATA_SEQ0_TEST
|
//`define ENABLE_EXCHG_DATA_SEQ0_TEST
|
||||||
//`define ENABLE_EXCHG_DATA_SEQ1_TEST
|
//`define ENABLE_EXCHG_DATA_SEQ1_TEST
|
||||||
//`define ENABLE_EXCHG_DATA_SEQ2_TEST
|
//`define ENABLE_EXCHG_DATA_SEQ2_TEST
|
||||||
//`define ENABLE_EXCHG_DATA_SEQ3_TEST
|
//`define ENABLE_EXCHG_DATA_SEQ3_TEST
|
||||||
|
|
||||||
//`define ENABLE_BC_R_TEST
|
`define ENABLE_BC_R_TEST
|
||||||
//`define ENABLE_BC_W_TEST
|
`define ENABLE_BC_W_TEST
|
||||||
//`define ENABLE_BC_RW_TEST
|
//`define ENABLE_BC_RW_TEST
|
||||||
|
|
||||||
//`define ENABLE_SYNC_TEST
|
//`define ENABLE_SYNC_TEST
|
||||||
@@ -299,7 +300,7 @@ always @(posedge clock or posedge _reset_deadline_ind) begin
|
|||||||
else begin
|
else begin
|
||||||
_deadline_ind_ctr <= _deadline_ind_ctr + 1;
|
_deadline_ind_ctr <= _deadline_ind_ctr + 1;
|
||||||
end
|
end
|
||||||
if (_deadline_ind_ctr >= 10000) begin
|
if (_deadline_ind_ctr >= 20000) begin
|
||||||
_deadline_ind <= 1;
|
_deadline_ind <= 1;
|
||||||
end
|
end
|
||||||
else begin
|
else begin
|
||||||
@@ -956,7 +957,7 @@ initial begin
|
|||||||
//嗅探
|
//嗅探
|
||||||
_t_start = $realtime;
|
_t_start = $realtime;
|
||||||
#1000
|
#1000
|
||||||
$fdisplay(spidata_file, "\n\n测试用例:发送嗅探包,需要在波形文件里检查");
|
$fdisplay(spidata_file, "\n\n测试用例:发送错误嗅探包");
|
||||||
|
|
||||||
`include "detect_err_pkt.vh"
|
`include "detect_err_pkt.vh"
|
||||||
|
|
||||||
@@ -1043,6 +1044,46 @@ initial begin
|
|||||||
|
|
||||||
`endif
|
`endif
|
||||||
|
|
||||||
|
|
||||||
|
`ifdef ENABLE_ERR_PKT1_TEST
|
||||||
|
begin:ERR_PKT1_TESTCASE
|
||||||
|
//嗅探
|
||||||
|
_t_start = $realtime;
|
||||||
|
#1000
|
||||||
|
$fdisplay(spidata_file, "\n\n测试用例:发送错误数据包");
|
||||||
|
|
||||||
|
`include "err_pkt1.vh"
|
||||||
|
|
||||||
|
_t_end = $realtime;
|
||||||
|
$fdisplay(spidata_file, "该测试用例运行时间:%t\n", _t_end - _t_start);
|
||||||
|
|
||||||
|
$fdisplay(spidata_file, "-检查中断");
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(0)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(1)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(2)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(3)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(4)) );
|
||||||
|
|
||||||
|
|
||||||
|
$fdisplay(spidata_file, "-清除中断");
|
||||||
|
txBuf[3] = 8'h00;
|
||||||
|
txBuf[4] = 8'h00;
|
||||||
|
txBuf[5] = 8'h00;
|
||||||
|
txBuf[6] = 8'h60;
|
||||||
|
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'h74), (`SPI_READ), (4), (`IF_IDX(0)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(1)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(2)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(3)) );
|
||||||
|
spi_trans( (16'h74), (`SPI_READ), (4), (`IF_IDX(4)) );
|
||||||
|
end
|
||||||
|
`endif
|
||||||
/*---------------------------------------------------------------------------------------------------------
|
/*---------------------------------------------------------------------------------------------------------
|
||||||
测试用例
|
测试用例
|
||||||
1. 交换数据sm0~sm7
|
1. 交换数据sm0~sm7
|
||||||
|
|||||||
@@ -340,6 +340,52 @@ if __name__ == '__main__':
|
|||||||
+genReadAckPktCode(gen_file_def, sm_idx))
|
+genReadAckPktCode(gen_file_def, sm_idx))
|
||||||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
#>>>>>>错误的数据包1
|
||||||
|
genPkt.clean()
|
||||||
|
|
||||||
|
data = list()
|
||||||
|
'''
|
||||||
|
for i in range(128):
|
||||||
|
data.append(random.randint(0, 255))
|
||||||
|
'''
|
||||||
|
data = data + [0x57, 0x17, 0xfd, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x40]
|
||||||
|
for i in range(64):
|
||||||
|
data.append(random.randint(0, 255))
|
||||||
|
data = data + [0, 0, 0x00, 0x0c, 0x00, 0xc0, 0x00, 0x40]
|
||||||
|
for i in range(64):
|
||||||
|
data.append(random.randint(0, 255))
|
||||||
|
data = data + [0, 0]
|
||||||
|
|
||||||
|
genPkt.setPkt(2, data)
|
||||||
|
gen_file_def = "err_pkt1"
|
||||||
|
sm_idx = 0
|
||||||
|
|
||||||
|
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def, sm_idx)
|
||||||
|
+genWriteTransPktCode(gen_file_def, sm_idx)
|
||||||
|
+genTrgTransPktCode(gen_file_def, sm_idx)
|
||||||
|
+genReadAckPktCode(gen_file_def, sm_idx))
|
||||||
|
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||||||
|
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
#>>>>>>错误的数据包2
|
||||||
|
genPkt.clean()
|
||||||
|
|
||||||
|
data = list()
|
||||||
|
for i in range(256):
|
||||||
|
data.append(random.randint(0, 255))
|
||||||
|
|
||||||
|
genPkt.setPkt(2, data)
|
||||||
|
gen_file_def = "err_pkt2"
|
||||||
|
sm_idx = 0
|
||||||
|
|
||||||
|
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def, sm_idx)
|
||||||
|
+genWriteTransPktCode(gen_file_def, sm_idx)
|
||||||
|
+genTrgTransPktCode(gen_file_def, sm_idx)
|
||||||
|
+genReadAckPktCode(gen_file_def, sm_idx))
|
||||||
|
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#>>>>>>普通数据包 sm1
|
#>>>>>>普通数据包 sm1
|
||||||
genPkt.clean()
|
genPkt.clean()
|
||||||
|
|||||||
Reference in New Issue
Block a user