diff --git a/tb/shinTest/gen_pkt.py b/tb/shinTest/gen_pkt.py index 5820dc3..9c5b2a1 100755 --- a/tb/shinTest/gen_pkt.py +++ b/tb/shinTest/gen_pkt.py @@ -49,22 +49,22 @@ if __name__ == '__main__': - #add_tc_2_runlist(ebmmu.tc1()) - #add_tc_2_runlist(ebmmu.tc2()) - #add_tc_2_runlist(ebmmu.tc3()) - #add_tc_2_runlist(ebmmu.tc4()) - #add_tc_2_runlist(ebmmu.tc5()) - #add_tc_2_runlist(ebmmu.tc6()) - #add_tc_2_runlist(ebmmu.tc7()) - #add_tc_2_runlist(ebmmu.tc8()) - #add_tc_2_runlist(ebmmu.tc9()) - #add_tc_2_runlist(ebmmu.tc10()) - #add_tc_2_runlist(ebmmu.tc11()) - #add_tc_2_runlist(ebmmu.tc12()) - #add_tc_2_runlist(ebmmu.tc13()) - #add_tc_2_runlist(ebmmu.tc14()) + add_tc_2_runlist(ebmmu.tc1()) + add_tc_2_runlist(ebmmu.tc2()) + add_tc_2_runlist(ebmmu.tc3()) + add_tc_2_runlist(ebmmu.tc4()) + add_tc_2_runlist(ebmmu.tc5()) + add_tc_2_runlist(ebmmu.tc6()) + add_tc_2_runlist(ebmmu.tc7()) + add_tc_2_runlist(ebmmu.tc8()) + add_tc_2_runlist(ebmmu.tc9()) + add_tc_2_runlist(ebmmu.tc10()) + add_tc_2_runlist(ebmmu.tc11()) + add_tc_2_runlist(ebmmu.tc12()) + add_tc_2_runlist(ebmmu.tc13()) + add_tc_2_runlist(ebmmu.tc14()) add_tc_2_runlist(ebmmu.tc15()) - #add_tc_2_runlist(ebmmu.tc16()) + add_tc_2_runlist(ebmmu.tc16()) add_tc_2_runlist(watchdog.tc1()) diff --git a/tb/shinTest/testcase/ebmmu.py b/tb/shinTest/testcase/ebmmu.py index ccb848e..78320df 100644 --- a/tb/shinTest/testcase/ebmmu.py +++ b/tb/shinTest/testcase/ebmmu.py @@ -6,7 +6,7 @@ def tc1(): gen_file_def = "ebmmu_tc01" sm_idx = 0 tc_des = "每个从站都使用ebmmu[0],共4个mmu,从0x1000_0000位置向后对齐,每个设备占10个字节,\\n" \ - + "映射0x200~0x20a,中间无字节空洞。主站使用1包数据,将4个设备的数据一次性读上来。\\n"\ + + "映射0x200~0x20a,中间无字节空洞。主站使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #------------------------------------------------------------------------- @@ -38,7 +38,28 @@ def tc1(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -60,7 +81,29 @@ def tc1(): genPkt.addAfterExc(genWriteTransLenCode(gen_file_def_ap, sm_idx) +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) - +genReadAckPktCode(gen_file_def_ap, sm_idx)) + +genReadAckPktCode(gen_file_def_ap, sm_idx) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -80,6 +123,28 @@ def tc1(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + +genTcEndFrameCode(gen_file_def) ) @@ -94,7 +159,7 @@ def tc2(): gen_file_def = "ebmmu_tc02" sm_idx = 0 tc_des = "每个从站都使用ebmmu[1],共4个mmu,从0x2000_0000位置向后对齐,每个设备占16个字节,\\n" \ - + "映射0x00~0x10,中间无字节空洞。主站使用1包数据,将4个设备的数据一次性读上来。\\n"\ + + "映射0x00~0x10,中间无字节空洞。主站使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #------------------------------------------------------------------------- @@ -126,7 +191,28 @@ def tc2(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -148,7 +234,28 @@ def tc2(): genPkt.addAfterExc(genWriteTransLenCode(gen_file_def_ap, sm_idx) +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) - +genReadAckPktCode(gen_file_def_ap, sm_idx)) + +genReadAckPktCode(gen_file_def_ap, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -168,6 +275,28 @@ def tc2(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1,True, gen_file_def_ap) @@ -180,8 +309,8 @@ def tc3(): gen_file_def = "ebmmu_tc03" sm_idx = 0 - tc_des = "每个从站都使用ebmmu[2],共4个mmu,从0x1000_0028位置向后对齐,每个设备占12个字节,\\n" \ - + "映射0x00~0x0c, 中间无字节空洞。使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站都使用ebmmu[0]和ebmmu[2],共8个mmu,从0x1000_0000位置向后对齐,每个设备占22个字节,\\n" \ + + "先依次映射0x200~0x20a, 然后依次映射0x000~0x00c,中间无字节空洞。使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "注意:该测试用例读取时是从0x1000_0000开始读取的\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" @@ -233,7 +362,28 @@ def tc3(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -253,6 +403,28 @@ def tc3(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -264,8 +436,8 @@ def tc4(): gen_file_def = "ebmmu_tc04" sm_idx = 0 - tc_des = "每个从站使用ebmmu[3],共4个mmu,从0x1000_0058位置向后对齐,\\n" \ - + "分别占用不同大小的空间。使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站使用ebmmu[3],共4个mmu,从0x1000_0058位置向后对齐,映射设备1的SM1、设备2的SM3、\\n" \ + + "设备3的SM5、设备4的SM7,分别占用不同大小的空间。使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #------------------------------------------------------------------------- @@ -308,7 +480,28 @@ def tc4(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -328,6 +521,27 @@ def tc4(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + +genTcEndFrameCode(gen_file_def) ) @@ -341,20 +555,15 @@ def tc5(): gen_file_def = "ebmmu_tc05" sm_idx = 0 - tc_des = "每个从站使用ebmmu[3],共4个mmu,从0x1000_0058位置向后对齐,\\n" \ - + "分别占用不同大小的空间。使用1包数据,将4个设备的数据一次性读上来。由于从站没有数据,读上来全是随机数据。\\n" - - + tc_des = "每个从站使用ebmmu[3],共4个mmu,从0x1000_0058位置向后对齐,映射设备1的SM1、设备2的SM3、\\n" \ + + "设备3的SM5、设备4的SM7,分别占用不同大小的空间。使用1个子包,将4个设备的数据一次性读上来。\\n"\ + + "由于没有写入数据,读上来的数据全部是无效数据。\\n"\ + + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" + genPkt.clean() genPkt.setPktType(0) genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des)) - ''' - + genSlvSMWriteData(1, 1, 0x80) - + genSlvSMWriteData(2, 3, 0x98) - + genSlvSMWriteData(3, 5, 0x81) - + genSlvSMWriteData(4, 7, 0x8c)) - ''' #subPkt参数:索引、索引类型、地址、命令、长度、数据 data = [0,] * 30 @@ -385,7 +594,28 @@ def tc5(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -406,6 +636,26 @@ def tc5(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -417,8 +667,8 @@ def tc6(): gen_file_def = "ebmmu_tc06" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站测试1个ebmmu[4],共4个mmu,从0x1000_027d位置向后对齐,每个设备占128个字节。\\n" \ + + "主站使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -465,7 +715,28 @@ def tc6(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -498,6 +769,26 @@ def tc6(): +genSlvSMReadData(2, 0, 0x80) +genSlvSMReadData(3, 0, 0x80) +genSlvSMReadData(4, 0, 0x80) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -510,8 +801,8 @@ def tc7(): gen_file_def = "ebmmu_tc07" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站测试1个ebmmu[4],共4个mmu,从0x2000_027d位置向后对齐,映射每个设备的SM0,\\n" \ + + "每个设备占128个字节。主站使用1个子包,将4个设备的数据一次性写入。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" @@ -533,19 +824,21 @@ def tc7(): data = [0,] * 30 addr = addr + 0x80 #print(hex(addr)) - setting_ebmmu_regs(data, 0, 0x10000000+addr, 0x0800, 0x80, 0x3, 0x0) + setting_ebmmu_regs(data, 0, 0x10000000+addr, 0x0800, 0x80, 0x3, 0x1) genPkt.addSubPkt(0x2, 0, 0x0228, 0x1, 10, data) data = [0,] * 30 addr = addr + 0x80 + #print(hex(addr)) setting_ebmmu_regs(data, 0, 0x10000000+addr, 0x0800, 0x80, 0x3, 0x1) genPkt.addSubPkt(0x3, 0, 0x0228, 0x1, 10, data) data = [0,] * 30 addr = addr + 0x80 - setting_ebmmu_regs(data, 0, 0x10000000+addr, 0x0800, 0x80, 0x3, 0x0) + #print(hex(addr)) + setting_ebmmu_regs(data, 0, 0x10000000+addr, 0x0800, 0x80, 0x3, 0x1) genPkt.addSubPkt(0x4, 0, 0x0228, 0x1, 10, data) data = [0,] * 2 @@ -561,7 +854,28 @@ def tc7(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -594,6 +908,26 @@ def tc7(): +genSlvSMReadData(2, 0, 0x80) +genSlvSMReadData(3, 0, 0x80) +genSlvSMReadData(4, 0, 0x80) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -605,8 +939,8 @@ def tc8(): gen_file_def = "ebmmu_tc08" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站都使用ebmmu[0],共4个mmu,从0x1000_0000位置向后对齐,每个设备都映射0x800,每个设备占128个字节。\\n" \ + + "主站使用1个子包,将4个设备的数据一次性写下去。相当于使用单播命令模拟广播命令。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -628,7 +962,6 @@ def tc8(): data[1] = 0x00 genPkt.addSubPkt(0x0, 0, 0x302, 0xe, 2, data) - #gen_file_def = "ebmmu_tc8_settings" sm_idx = 0 genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des)) @@ -636,7 +969,28 @@ def tc8(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -664,6 +1018,26 @@ def tc8(): +genSlvSMReadData(2, 0, 0x80) +genSlvSMReadData(3, 0, 0x80) +genSlvSMReadData(4, 0, 0x80) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -676,8 +1050,8 @@ def tc9(): gen_file_def = "ebmmu_tc09" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站都使用ebmmu[0],共4个mmu,从0x1000_0000位置向后对齐,全部映射SM0,每个设备占256个字节。\\n" \ + + "主站使用1个子包,将4个设备的数据写下去,报文长度超过1KB,相当于使用单播变广播。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -706,7 +1080,28 @@ def tc9(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -735,6 +1130,26 @@ def tc9(): +genSlvSMReadData(2, 0, 0x100) +genSlvSMReadData(3, 0, 0x100) +genSlvSMReadData(4, 0, 0x100) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def) ) @@ -748,8 +1163,8 @@ def tc10(): gen_file_def = "ebmmu_tc10" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站都使用ebmmu[0],共4个mmu,从0x1000_0000位置向后对齐,映射SM0,每个设备占256个字节。\\n" \ + + "使用1包数据,将4个设备的数据一次性写下去;连续写2次。检查SM0的状态是否包含2包数据。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -778,7 +1193,28 @@ def tc10(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -799,6 +1235,26 @@ def tc10(): +genWriteTransPktCode(gen_file_def_ap, sm_idx) +genTrgTransPktCode(gen_file_def_ap, sm_idx) +genReadAckPktCode(gen_file_def_ap, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -835,6 +1291,26 @@ def tc10(): +genSlvSMReadData(4, 0, 0x100) +genIFRwDataCode(4, 0x300, False, 0x20) +genSlvSMReadData(4, 0, 0x100) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -847,8 +1323,8 @@ def tc11(): gen_file_def = "ebmmu_tc11" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站都使用ebmmu[0],共4个mmu,从0x1000_0000位置向后对齐,依次映射每个设备的SM1,占256个字节。\\n" \ + + "每个设备准备了2个元素的数据,使用1个子包,将4个设备的数据一次性读上来,数据超过1KB。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -908,7 +1384,28 @@ def tc11(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -936,6 +1433,26 @@ def tc11(): + genIFRwDataCode(2, 0x300, False, 0x20) + genIFRwDataCode(3, 0x300, False, 0x20) + genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) ) #subPkt参数:索引、索引类型、地址、命令、长度、数据 @@ -954,6 +1471,26 @@ def tc11(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap) @@ -977,6 +1514,26 @@ def tc11(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def) ) @@ -989,8 +1546,8 @@ def tc12(): gen_file_def = "ebmmu_tc12" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站使用ebmmu[0、1、2、3],从0x1000_0000位置向后对齐,分个MMU映射SM1、SM3、SM5、SM7,\\n" \ + + "每个SM占8个字节。设备侧准备好数据,使用1个子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" @@ -1132,7 +1689,28 @@ def tc12(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -1169,6 +1747,26 @@ def tc12(): + genIFRwDataCode(4, 0x2000, True, sm_size, data2) + genIFRwDataCode(4, 0x3000, True, sm_size, data1) + genIFRwDataCode(4, 0x4000, True, sm_size, data0) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) ) #subPkt参数:索引、索引类型、地址、命令、长度、数据 @@ -1187,6 +1785,26 @@ def tc12(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def) ) @@ -1200,8 +1818,8 @@ def tc13(): gen_file_def = "ebmmu_tc13" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站测使用前8个ebmmu,从0x1000_0000位置向后对齐,每两个ebmmu映射一个SM,每个设备占8个字节。\\n" \ + + "中间无字节空洞。如ebmmu[0]、ebmmu[1]分别映射SM1的前4个字节和后4个字节。使用1子包,将4个设备的数据一次性读上来。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" #-------------------------------------------------------------------------- @@ -1345,7 +1963,28 @@ def tc13(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -1400,6 +2039,26 @@ def tc13(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def) ) @@ -1413,8 +2072,8 @@ def tc14(): gen_file_def = "ebmmu_tc14" sm_idx = 0 - tc_des = "每个从站测试1个ebmmu[2],共4个mmu,从0x2000_0000位置向后对齐,每个设备占12个字节。\\n" \ - + "使用1包数据,将4个设备的数据一次性读上来。\\n"\ + tc_des = "每个从站使用4个ebmmu,从0x1000_0000位置向后对齐,分别映射SM0/2/4/6,每个设备占8个字节。\\n" \ + + "中间无字节空洞,使用1个子包,将4个设备的数据一次性写下去。\\n"\ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" @@ -1540,7 +2199,28 @@ def tc14(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -1584,6 +2264,26 @@ def tc14(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def) ) @@ -1596,7 +2296,8 @@ def tc15(): gen_file_def = "ebmmu_tc15" sm_idx = 0 - tc_des = "测试16个ebmmu全配置下运行,每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入,\\n" \ + tc_des = "测试16个ebmmu全配置下运行,每4个ebmmu对应一个SM,映射4个字节。分别映射SM0/2/4/6, \\n" \ + + "每个映射了16个字节。中间无字节空洞。使用1个子包,将数据写下去。每个ebmmu必须对齐、足长的写入,\\n" \ + "对应的sm才能正常工作。QSPI/SPI侧能正常的读到相关的数据。" #-------------------------------------------------------------------------- @@ -1883,7 +2584,28 @@ def tc15(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -1927,6 +2649,27 @@ def tc15(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + +genTcEndFrameCode(gen_file_def) ) @@ -1939,9 +2682,9 @@ def tc16(): gen_file_def = "ebmmu_tc16" sm_idx = 0 - tc_des = "测试16个ebmmu全配置下运行,每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入,\\n" \ - + "对应的sm才能正常工作。两次写入数据,复位设备1的SM1,SM1状态复原,不能读取到有效的数据。\\n"\ - + "测试用例能成功运行完毕,除设备1的SM1,其余的SMx都能获得正确的数据。\\n\\n" \ + tc_des = "测试16个ebmmu全配置下运行,每4个ebmmu对应一个sm,映射4个字节。映射了sm0/2/4/6,共16个字节。\\n" \ + + "每个ebmmu必须对齐、足长的写入,对应的sm才能正常工作。两次写入数据,复位设备1的SM1,SM1状态复原,\\n"\ + + "第二次设备1的SM0不能读取到有效的数据。测试用例能成功运行完毕,除设备1的SM0,其余的SMx都能获得正确的数据。\\n" \ + "检查内容:ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" genPkt.clean() @@ -2235,7 +2978,28 @@ def tc16(): 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)) + +genReadAckPktCode(gen_file_def, sm_idx) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + ) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1) @@ -2306,6 +3070,26 @@ def tc16(): +genIFRwDataCode(2, 0x300, False, 0x20) +genIFRwDataCode(3, 0x300, False, 0x20) +genIFRwDataCode(4, 0x300, False, 0x20) + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) + + +genMessageCode("--清除中断") + +genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + +genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff]) + + +genMessageCode("--读取中断") + +genIFRwDataCode(0, 0x74, False, 4) + +genIFRwDataCode(1, 0x74, False, 4) + +genIFRwDataCode(2, 0x74, False, 4) + +genIFRwDataCode(3, 0x74, False, 4) + +genIFRwDataCode(4, 0x74, False, 4) +genTcEndFrameCode(gen_file_def)) genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)