增加代码,1.仿真了最多202个从站,功能正常;2.测试了读写\广播等操作

This commit is contained in:
2025-09-08 13:12:18 +08:00
parent 41d4805841
commit a63e14e6f6
6 changed files with 96 additions and 21 deletions

View File

@@ -1,7 +1,7 @@
from pyutils import *
global_dev_num = 4
def bringup():
gen_file_def = "sys_bringup"
@@ -296,7 +296,16 @@ def __gen_slv_dev_predef(num):
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
def get_slv_dev_num():
global global_dev_num
return global_dev_num
def gen_slv_dev_num(num):
global global_dev_num
global_dev_num = num
__gen_slv_dev_predef(num)
genPkt = GenPkt()

View File

@@ -1,10 +1,11 @@
from pyutils import *
from .environment import *
def tc1():
genPkt = GenPkt()
dev = 128
dev = get_slv_dev_num()
print("DEV:", dev)
gen_file_def = "manydev_tc01"
sm_idx = 0
@@ -73,7 +74,7 @@ def tc1():
+genWriteTransLenCode(gen_file_def_ap, sm_idx)
+genWriteTransPktCode(gen_file_def_ap, sm_idx)
+genTrgTransPktCode(gen_file_def_ap, sm_idx)
+ "#10000000"
#+ "#10000000"
+genReadAckPktCode(gen_file_def_ap, sm_idx)
@@ -120,14 +121,70 @@ 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)
+ "#10000000"
#+ "#10000000"
+genReadAckPktCode(gen_file_def_ap, sm_idx)
+clear_int_code
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def+"_step05"
sm_idx = 0
#for i in range(dev):
# genPkt.addSubPkt(i + 1, 0, 0x1000, 0x0, 2, [0, 0])
genPkt.addSubPkt(0, 0, 0x302, 0xe, 2, [8, 0])
genPkt.addSubPkt(0, 0, 0x800, 0xe, 8, list(range(8)))
read_data_code = ""
for i in range(dev):
read_data_code = read_data_code + genSlvSMReadData(i + 1, 0, 8)
#genPkt.addBeforeExc(prepare_data_code)
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)
+clear_int_code
+read_data_code
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def+"_step06"
sm_idx = 0
#for i in range(dev):
# genPkt.addSubPkt(i + 1, 0, 0x1000, 0x0, 2, [0, 0])
genPkt.addSubPkt(0, 0, 0x302, 0xe, 2, [2, 0])
for i in range(dev):
genPkt.addSubPkt(i + 1, 0, 0x0800, 0x1, 2, [i & 0xff, (i + 1) & 0xff])
read_data_code = ""
for i in range(dev):
read_data_code = read_data_code + genSlvSMReadData(i + 1, 0, 2)
#genPkt.addBeforeExc(prepare_data_code)
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)
+clear_int_code
+read_data_code
+genTcEndFrameCode(gen_file_def)
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
return gen_file_def