SystemVerilog Assertions应用指南 Chapter1.20“ $past”构造

news2024/11/16 23:45:19

 1.20“ $past”构造

        SVA提供了一个内嵌的系统任务“$past”,它可以得到信号在几个时钟周期之前的值。在默认情况下,它提供信号在前一个时钟周期的值。结构的基本语法如下

$past (signal_name ,number of clock cycles)

        这个任务能够有效地验证设计到达当前时钟周期的状态所采用的通路是正确的。属性p19检验的是在给定的时钟上升沿,如果表达式(c&&d)为真,那么两个周期前,表达式(a&&b)为真。

property p19;
	@(posedge clk) (c && d) |-> ($past ((a  && b),2)==1'b1);
endproperty

a19: assert property(p19);

        图1-22显示了属性p19在模拟中的响应。表1-12总结了断言a19的状态和相关信号的采样值。断言在时钟周期1失败。在时钟周期1,信号“c”和信号“d”都为高,断言有一个有效的开始。于是检验器的后续算子需要比较两个周期前的表达式(a&&b)的值。但是由于不可能得到两个信号在时钟周期1之前两个周期的历史,信号的值被当作“x”,因此检验器在时钟周期1失败。

        检验在时钟周期5有一个真正的成功。在时钟周期5,由于信号“a”和信号“b”都为高,断言有一个成功的开始。后续算子检查在时钟周期3时表达式(a&&b)是否为真。正如期望的那样,在时钟周期3,信号“a”和信号“b”都被检测为高,因此检验成功。
        检验在时钟周期16失败。在时钟周期16,由于信号“a”和信号“b”都为高,断言也有一个成功的开始。后续算子检查在时钟周期3时表达式(a&&b)是否为真。信号“a”如期望的那样为高,但是信号“b”为低。这使得表达式(a&&b)为假,检验失败。


带时钟门控的$past构造

        $past构造可以由一个门控信号 (gating singal)控制。比如,在个给定的时钟沿,只有当门控信号的值为真时才检查后续算子的状况。使用门控信号的$past构造的基本语法如下

$past (signal_name, number of clock cycles ,gating signal);

        属性p20与属性p19相似。但是只有当门控信号“e”在任意给定的时钟上升沿有效时检验才被激活。

property p20;
	@(posedge clk) (c && d) |-> ($past ((a && b ),2,e)==1'b1);
endproperty

a20: assert property(p20);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1116037.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据分析案例-基于snownlp模型的MatePad11产品用户评论情感分析

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

【配置本地仓库yum源的两种方式】

一、使用下载的rpm包搭建本地仓库yum源 ​  使用自己下载的rpm包搭建本地仓库,需要用createrepo去创建仓库元数据。 1、下载需要的软件包 在一台可以联网的服务器上下载。或者通过其他方式下载自己需要的软件包。 # 下载所需工具依赖包到 /mypath [roottest ~]…

深入理解TDD(测试驱动开发):提升代码质量的利器!

在日常的软件开发工作中,我们常常会遇到这样的问题:如何在繁忙的项目进度中,保证我们的代码质量?如何在不断的迭代更新中,避免引入新的错误?对此,有一种有效的开发方式能帮助我们解决这些问题&a…

redis哨兵机制

为什么要有哨兵机制? 在 Redis 的主从架构中,由于主从模式是读写分离的,如果主节点(master)挂了,那么将没有主节点来服务客户端的写操作请求,也没有主节点给从节点(slave&#xff0…

使用Matplotlib画多y轴图

使用Matplotlib画多y轴图 代码成品图 代码 import matplotlib.pyplot as plt import mpl_toolkits.axisartist as AA from mpl_toolkits.axes_grid1 import host_subplot%matplotlib inline config {"font.family": "serif","font.size": 14,&…

文件批量下载

网页可能暂时无法连接,或者它已永久性地移动到了新网址。 把uploads前面的 / 去掉 public function downFile(){// 网页可能暂时无法连接,或者它已永久性地移动到了新网址。 把uploads前面的/去掉$files ["uploads/20231018/868ac3fe78e40c67…

【React】高频面试题

1. 简述下 React 的事件代理机制? React使用了一种称为“事件代理”(Event Delegation)的机制来处理事件。事件代理是指将事件处理程序绑定到组件的父级元素上,然后在需要处理事件的子元素上触发事件时,事件将被委托给…

通过Django Admin+HttpRunner1.5.6实现简易接口测试平台

这篇文章主要介绍了通过Django AdminHttpRunner1.5.6实现简易接口测试平台,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 前言 这是一个使用HttpRunner开发接口平台的简单Demo。 新建Django项目 这是一个使…

lesson1-C++类和对象(上)

个人主页:Lei宝啊 愿所有美好如期而遇 目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 5.类的作用域 6.类的实例化 7.类的对象大小的计算 8.类成员函数的this指针 1.面向过程和面向对象初步认识 在C语言中&#xff0…

Python 框架学习 Django篇 (五) Session与Token认证

我们前面经过数据库的学习已经基本了解了怎么接受前端发过来的请求,并处理后返回数据实现了一个基本的登录登出效果,但是存在一个问题,我们是将所有的请求都直接处理了,并没有去检查是否为已经登录的管理员发送的,如果…

基于ssm网上鲜花店

功能如下图所示 摘要 基于SSM(Spring、Spring MVC、MyBatis)的网上鲜花店,是一款全面电子商务平台,为用户提供了多层次、多功能的鲜花购物体验。该系统的架构结构使得用户可以注册、浏览商品、购物车管理、下单和支付等一系列操作…

智慧园区内涝积水解决方案

在当今园区化快速发展的背景下,智慧园区已经成为园区可持续发展的重要组成部分。然而,智慧园区的规划和运营需要一个综合性的方法,以应对各种挑战,其中之一是积水管理。为了有效地解决这一问题,WITBEE万宾针对智慧园区…

Linux 僵尸进程处理

现象 查看: # 查看僵尸进程 ps -aux |grep Z## ps -aux |grep Z|wc -l 定位僵尸进程 ## ps -A -ostat,ppid,pid,cmd |grep -e ^[Zz] 杀死僵尸进程 使用Kill -HUP 僵尸进程ID来杀死僵尸进程,往往此种情况无法杀死僵尸进程,此时就需要杀死僵尸进程的父进程。 kill -HUP …

051校园短期闲置资源置换平台

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

【异步爬虫】requests和aiohttp中代理IP的使用

前言 在进行爬虫开发时,我们常常需要使用代理IP来隐藏自己的真实IP地址,以避免被一些网站限制或封禁。requests和aiohttp是两个非常常用的工具,本文将分别介绍如何在它们中使用代理IP,希望可以帮助大家更好地进行异步爬虫开发。 …

1024程序员节特辑 | 解密Spring Cloud Hystrix熔断提高系统的可用性和容错能力

目录 1、Spring Cloud Hystrix 的背景和意义2、Spring Cloud Hystrix 的架构设计3、Spring Cloud Hystrix 的主要组件4、Spring Cloud Hystrix 熔断器的底层原理和整体架构5、Spring Cloud Hystrix 命令6、Spring Cloud Hystrix 熔断器7、Spring Cloud Hystrix参数说明8、Sprin…

点云平面拟合新国标怎么应对?

文章目录 一、应用背景二、算法原理三、代码实现首先我们看一下平面度的概念: 平面度:测量点集合中,在平面上方且距离基准平面最远的点到平面的距离+在平面下方且距离基准平面最远的点到平面的距离。 一、应用背景 在旧标准中,使用最小二乘法去拟合全部点,以拟合平面作为…

Cesium 实战 - 调整饱和度、对比度等参数,加载渲染美化影像底图

Cesium 实战 - 调整饱和度、对比度等参数,加载渲染美化影像底图 渲染美化影像底图核心代码完整代码:在线示例 本文包括渲染美化影像底图核心代码、完整代码以及在线示例。 渲染美化影像底图核心代码 这里放上核心代码: /*** todo 开启美化底…

阿里云oss丨You have no right to access this object because of bucket acl.

错误:You have no right to access this object because of bucket acl. ​ ​ 今天折腾oss的时候遇到这个问题,我以为是我没加白名单,后来想了下应该是使用阿里云OSS上传文件服务时报的错,新建的子用户AccessKey没有配置相应的管…

2023年最佳项目管理软件排行榜揭晓!

根据网络数据调查结果显示,今年有77%的组织将效率列为优先事项,而82%的领导人确认投资于新的项目管理和工作管理方案以提高效能。然而随着对价值的重新关注,选择适合的工程项目管理软件变得比以往任何时候都更加重要。好消息是通过对39个主要…