diff --git a/tb/shinTest/ShinTopSpiTb.v b/tb/shinTest/ShinTopSpiTb.v index 3dccd9b..61aa2dc 100644 --- a/tb/shinTest/ShinTopSpiTb.v +++ b/tb/shinTest/ShinTopSpiTb.v @@ -1339,7 +1339,20 @@ initial begin `ifdef ENABLE_EBMMU_TC3_TEST + begin:EBMMU_TC3_TEST + _t_start = $realtime; + #1000 + $fdisplay(spidata_file, "\n\n测试用例:EBMMU测试 3"); + + `include "ebmmu_tc3_settings.vh" + + `include "ebmmu_tc3_read.vh" + + + _t_end = $realtime; + $fdisplay(spidata_file, "该测试用例运行时间:%t\n", _t_end - _t_start); + end `endif #1000000 diff --git a/tb/shinTest/gen_pkt.py b/tb/shinTest/gen_pkt.py index 0992fca..d760a63 100755 --- a/tb/shinTest/gen_pkt.py +++ b/tb/shinTest/gen_pkt.py @@ -991,7 +991,7 @@ if __name__ == '__main__': data[4] = 0x00 data[5] = 0x00 - data[6] = 0x0f + data[6] = 0x10 data[7] = 0x00 data[8] = 0x01 @@ -1009,7 +1009,7 @@ if __name__ == '__main__': data[4] = 0x00 data[5] = 0x00 - data[6] = 0x0f + data[6] = 0x10 data[7] = 0x00 data[8] = 0x01 @@ -1027,7 +1027,7 @@ if __name__ == '__main__': data[4] = 0x00 data[5] = 0x00 - data[6] = 0x0f + data[6] = 0x10 data[7] = 0x00 data[8] = 0x01 @@ -1044,7 +1044,7 @@ if __name__ == '__main__': data[4] = 0x00 data[5] = 0x00 - data[6] = 0x0f + data[6] = 0x10 data[7] = 0x00 data[8] = 0x01 @@ -1106,3 +1106,112 @@ if __name__ == '__main__': genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) + + + #------------------------------------------------------------------------- + #>>>>>>设置EB-MMU + genPkt.clean() + genPkt.setPktType(0) + + #subPkt参数:索引、索引类型、地址、命令、长度、数据 + data = [0,] * 30 + + data[0] = 0x1e + 0xa + data[1] = 0x00 + data[2] = 0x00 + data[3] = 0x10 + + data[4] = 0x00 + data[5] = 0x00 + + data[6] = 0x10 + data[7] = 0x00 + + data[8] = 0x01 + data[9] = 0x01 + + genPkt.addSubPkt(0x1, 0, 0x0214, 0x1, 10, data) + + + data = [0,] * 30 + data[0] = 0x1e + 0xa + 0x10 + data[1] = 0x00 + data[2] = 0x00 + data[3] = 0x10 + + data[4] = 0x00 + data[5] = 0x00 + + data[6] = 0x10 + data[7] = 0x00 + + data[8] = 0x01 + data[9] = 0x01 + genPkt.addSubPkt(0x2, 0, 0x0214, 0x1, 10, data) + + + data = [0,] * 30 + + data[0] = 0x1e + 0xa + 0x10 + 0x10 + data[1] = 0x00 + data[2] = 0x00 + data[3] = 0x10 + + data[4] = 0x00 + data[5] = 0x00 + + data[6] = 0x10 + data[7] = 0x00 + + data[8] = 0x01 + data[9] = 0x01 + genPkt.addSubPkt(0x3, 0, 0x0214, 0x1, 10, data) + + data = [0,] * 30 + + data[0] = 0x1e + 0xa + 0x10 + 0x10 + 0x10 + data[1] = 0x00 + data[2] = 0x00 + data[3] = 0x10 + + data[4] = 0x00 + data[5] = 0x00 + + data[6] = 0x10 + data[7] = 0x00 + + data[8] = 0x01 + data[9] = 0x01 + genPkt.addSubPkt(0x4, 0, 0x0214, 0x1, 10, data) + + + gen_file_def = "ebmmu_tc3_settings" + 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) + + + #------------------------------------------------------------------------- + #>>>>>>用EB-MMU方式读取EB-MMU设置 + genPkt.clean() + genPkt.setPktType(0) + + #subPkt参数:索引、索引类型、地址、命令、长度、数据 + data = [0,] * 150 + + genPkt.addSubPkt(0x1000, 2, 0x0000, 0x0, 0x40 + 0x28, data) + + gen_file_def = "ebmmu_tc3_read" + 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)