测试点拆分(2)
1、拆分思路和测试点介绍:
(1)由于counter是32位的,可以为Reload设置初始值,让counter减到想要的值后,在重新加载reload,新加载的reload就是设定的边界值;
(2)设定Reload value,重复等待interrupt,然后clear清除interrupt,重复等待,通过在monitor中监测TIMINT这根线,统计等待到中断的次数,与理论值做对比;
2、时序分析
(1)为RELOAD VALUE配置初始值32'h8000_0000,设定边界值随机化为[1000: 1200],可以看到,如果在counter工作过程中(并没有减到0),如果此时加载reload是无法写入的,只有当counter减到0时,才能重新加载reload。减到想要的边界值的时候,counter重新加载RELOAD VALUE,重新开始计数;
(2)reload value没有计到0的话,他不会重新加载value;信号当counter计数到0的时候,中断timint刚好拉高;随后在加载value(边界值),重新计数;
(3)counter反复计数到0,反复recount统计interrupt拉高的次数,验证boundary和recount总共次数;