验证关注点

分解测试点后,跟设计要芯片IDLE状态需要关注那些信息,列个表(仿真结束检查)?包括状态机,计数器,fifo等

是否考量反压测试,长反压(内部buffer满或者调度压满)、短反压、长短交替反压。

clock gating,分为两类,1.关闭部分时钟,不影响业务正常执行,我们验证下发关闭时钟的激励,验证环境无感,无其他特殊处理,仍正常产生期望数据包进行比对;2.关闭部分时钟,部分功能关闭,通常此时仍能下发配置,配置时钟保持常开,要做相关检查。

时钟:是否产生正确频率的时钟;是否覆盖初始时刻0-》1开始翻转,从1-》0开始翻转。

复位:是否可以在任意时刻进入复位,同步撤离;复位翻转是否覆盖0-》1,1–》0-》1.;复位过后芯片是否可以正常执行,不挂死;拥有多复位时,是否做过复位粘连性测试,明确复位信号的独立性以及复位范围的正确性。确认哪些ram复位哪些ram不复位(一些ram是用寄存器搭的);复位检查寄存器复位值,是否存在不被复位影响的寄存器,这些寄存器值是否保持。

对所有输出信号进行X态检测,部分无复位端的reg型变量,可能会将X态传播给下游模块,验证环境需要检测

排查是否有未驱动的信号

随机约束是否合理,随机是否充分,可以覆盖所有场景

排查接的固定值信号

考虑驱动无效数据覆盖全0,全1,随机值,保持值,x态

valid/ready握手机制,valid拉高不能依赖ready,环境构造ready时,依赖valid产生,如果DUT设计有问题,会死锁,环境会报超时错误。

排查双向接口0,1,z是否都覆盖。

存在的边界场景是否都覆盖。

所有输出都要有checker或者sva检查

fifo覆盖fifo空和满的场景;覆盖空-》满-》空;覆盖同时读写;验证fifo空后读;验证fifo满后写

vcs+initreg+0/1/random回归

双口ram是否覆盖同时读写。

reserved空间读写访问是否验证,不能挂死

易错点:正常地址和异常地址交替访问,第二次异常访问返回值容易和上一次正确访问返回值保持一致。

dfx是否验证充分。

计数器要验计满场景,确认计满是什么状态,然后清楚,再看能否重新计数

是否覆盖清理和计数器+1脉冲同时到达的场景。

中断正确上报,且能清除,清除后能再次上报

检查中断上报的伴随信息

覆盖中断触发和清除同时到达的场景

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇