SystemVerilog Assertions应用指南 Chapter1.32 嵌套的蕴含

本文主要是介绍SystemVerilog Assertions应用指南 Chapter1.32 嵌套的蕴含,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        SVA允许使用嵌套的蕴含。当我们有多个门限条件指向一个最终的后续算子时,这种构造十分有用。
        属性 p_nest检验如果信号“a”有一个下降沿,则是一个有效开始,接着在一个周期后,信号“b”,“c”和“d”应该为低电平有效信号以保持这个有效开始。如果第二个条件匹配,那么在6到10个周期内期望“free”为真。注意,当且仅当信号“b”,“c”和“d”都匹配时,在后续状况( consequent condition)“fre”才会被检验是否为真。

`define free (a && b && c && d)property p_nest;@(posedge clk) $fell(a) |-> ##1 (!b && !c && !d ) |-> ##[6:10] `free;
endpropertya_nest :assert property(p_nest);

        同一个属性可以被重写成不使用嵌套蕴含的方式,如下所示。

property p_nest1;@(posedge clk) $fell(a) ##1 (!b && !c && !d)|-> ##[6:10] `free;
endpropertya_nest1 :assert property(p_nest1);


        注意:使用嵌套蕴含的属性 p nest中没有“else”情况,因此属性很容易就能重写成如 p_nesti所示的形式。
        图1-39显示了断言 a nest在模拟中的表现。标记1显示了检验器的第一次成功。当检测到信号“a”的下降沿时,出现一个有效开始。一个时钟周期后,信号“b”、“c”和“d”如预期地被检测为低。因此检验保持有效,后续算子被检验。在6个时钟周期后,检测到状况“free”为真,因此检验成功。
        第二个标记指出了下一个有效开始,在此检测到信号“a”的下降沿个周期后,检测到信号“c”和“b”为低,但是信号“b”不为低。因此检验没能保持有效,得到一个空成功。
        第三个标记也标出了一个有效开始,在此检测到信号“a”的下降沿。一个周期后,如期望的检测到信号“b”,“c”和“d”为低,因此检验保持有效,后续算子被检验。在6~10个时钟周期内,没有检验到状况“free”为真,因此检验失败。
 

这篇关于SystemVerilog Assertions应用指南 Chapter1.32 嵌套的蕴含的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/242804

相关文章

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

Python ORM神器之SQLAlchemy基本使用完全指南

《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)