![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
assertion断言
文章平均质量分 85
小小verifier
材料转IC验证,分享每天学习笔记和心得...Keep hungry!Keep foolish!
展开
-
Assertion断言入门(四)——断言覆盖率
以APB总线协议的断言检查和断言覆盖率为例,学习断言的基本使用和断言覆盖率覆盖。需要用到关键词cover来收集断言覆盖。APB总线协议时序图如下:(首图为读操作时序和后图为写操作时序)PS:关于APB协议的详细的描述可见AMBA总线协议中APB协议总结一文:APB总线协议断言检查一在PSEL为高时,PADDR总线不可以为x值;property p_addr_no_x; @(posedge clk) psel |-> !$isunknow(paddr); endpropert原创 2021-06-23 16:26:57 · 9718 阅读 · 1 评论 -
Asssertion断言入门(三)——property的使用及断言的绑定
时钟声明对于并行断言,其必须要具备时钟,property中可能具有单个时钟,也有可能是包括多个时钟。单时钟1.在sequence中独立指定时钟sequence s2; @(posedge clk) a ##2 b;endsequenceproperty p2; not s2;endpropertyassert property(p2);2.在property中独立指定时钟property p2; @(posedge clk) not (a ##2 b);end原创 2021-06-23 11:04:06 · 5423 阅读 · 1 评论 -
Asssertion断言入门(一)——简介
概要Assertion是用来与设计功能和时序作比较的属性描述。比如grant信号应该在request信号拉高后的第二个周期拉起,但是却在第三个周期才拉起,这就是时序的违例,不符合协议。assertion可以用来完成:检查设计的内容;提高设计的可视度和调试能力;检查设计特性在验证中是否被覆盖。可读性好,因此也可以用来服务于设计文档;用来检查算法模型的断言在形式验证中可以穷尽计算,找出可能的违例;可以自由地打开或者关闭一小部分子集甚至可以用来综合或者移植到emulation中,用来完成跨平台的移植原创 2021-06-22 22:18:39 · 3954 阅读 · 0 评论 -
Assertion断言入门(二)——操作符及系统函数
文章目录基本操作符蕴含操作符and操作符intersect操作符or操作符first_match操作符throughout操作符whitin操作符if操作符检测序列终点局部变量调用方法1.$display2.$isunknown3.$stable4.$past基本操作符操作符描述##周期延迟时间##[min:max]表示在一个范围内的时钟周期延迟,会从min到max时间窗口中最早的时间来匹配$表示无穷大的周期(在仿真结束前),不建议使用[*n]表示事件重复n原创 2021-06-22 22:14:11 · 6695 阅读 · 2 评论