MDY仿真中,出现如下错误:data number error, exp=2040,act=4080
面提示中测试文件为tb_mdyFifoAsy的模块u_mdyCheckPkt报错,时间点是在51000这个时刻。
exp表示预期的意思,act表示实际的意思。即预期收到2040个数据,实际为4080个数据。
思路:首先要检测一下UUT的输出,看输出是否正确,即2040个才是正确的,还是4080个才是正确的。
如果是前者,说明测试文件的预期是对的,那说明设计有错;如果是后者,说明测试文件有问题。
其次,测试文件中哪个地方跟预期数据个数有关?就是mdyCheckPkt中的cfg_len这个输入信号有关,
它表示了每个包文的长度,以16位为1组表示1个包文的长度。具体看mdyCheckPkt的说明。