稀疏激励的重要性

在构造芯片验证的激励时,通常DUT接口的激励产生agent会持续发多个请求给DUT,有时候可能是连续不断,没有bubble的,有时候可能会插几个bubble。但总得来说,一般发请求的数量不会少,而且bubble也不会插得特别多个。如果DUT存在多个接口,那么对于很多人来说可能就是在testcase启动后,每个接口都开始发激励,直到testcase结束。

这两种情况看似挺合理正常的,但有时候会遗漏潜在的bug。比如一个接口持续发送请求,那么门控可能会被迫一直打开,无法充分验证门控的正确性。

还有就是当一个口发送的请求数目特别大时,可能会掩盖一些统计类特性的bug,因为数目太大,倒是有些偏差无法看出来。以PMU事件举例来说,假如A事件是B事件的子集,如果TB中检查A的数值一定小于B的数值,在B的值很大情况下,就算A的计数值偏离了,也可能仍然小于B的值,那么TB就无法检查出问题了。

多个激励口同时发激励固然重要,可以使得激励压力更大些。但是芯片在使用过程中,可能只会有其中某些口有激励,因此,随机选择一些口发激励的testcase也必不可少。

稀疏激励的难点在于选择对哪些维度进行稀疏。像请求的个数、请求之间的延迟、参与发送激励的接口数目、请求的属性、错误响应的分布、响应之间的延迟,以及这些维度的交叉等,都是可以细细琢磨的。

相关推荐
CinzWS16 小时前
A53 FPGA原型验证:从RTL到可运行系统的挑战
arm开发·嵌入式·芯片验证·原型验证·a53
CinzWS1 天前
A53性能验证:从微架构到系统级——芯片性能的“全息检测“
架构·芯片验证·原型验证·a53
CinzWS3 天前
A53低功耗验证:状态机验证与唤醒时序检查——芯片的“睡眠科学“
嵌入式·芯片验证·原型验证·a53
CinzWS7 天前
A53指令级验证策略:从随机测试到定向场景——ARM CPU验证的“炼金术“
arm开发·嵌入式·芯片验证·原型验证·a53
CinzWS9 天前
UVM验证环境构建:CPU验证的方法论——从零构建ARM A53验证帝国的艺术
arm开发·架构·芯片验证·原型验证·a53
CinzWS9 天前
A53多核协同(上):核间通信与缓存一致性协议——ARM多核的“心灵感应“
arm开发·嵌入式·芯片验证·原型验证·a53
CinzWS12 天前
A53电源管理(下):DVFS与热管理的硬件实现——ARM芯片的“冷静艺术“
arm开发·嵌入式·芯片验证·原型验证·a53
CinzWS12 天前
QSPI协议 - 超越XIP:在内存映射、四线模式与DMA协同中压榨极致性能
嵌入式·qspi·芯片验证
CinzWS14 天前
电源管理(上):动态功耗管理与时钟门控——ARMv8的“省电魔法“
嵌入式·芯片验证·原型验证·a53
CinzWS14 天前
A53调试体系(下):断点、观察点与交叉触发——ARMv8调试的终极武器库
嵌入式·芯片验证·原型验证·a53