当前位置: 首页 > news >正文

#SVA语法滴水穿石# (007)关于 $past 的用法

今天,我们要学习比较重要的一个关键字。$past 的用法,今天系统学习。

1. $past 函数的核心作用

$past 用于 获取某个信号在过去指定时钟周期前的值,通常用于检查历史状态是否符合预期。
其语法如下:

$past(signal, [num_cycles], [gating_condition], [clock], [reset]);
  • 必选参数

    • signal:需要检查的历史信号或表达式。

    • num_cycles:回溯的时钟周期数(默认为 1)。

  • 可选参数

    • gating_condition(门控条件):仅当条件为真时,才记录历史值。

    • clock:指定时钟(默认为断言所在时钟域)。

    • reset:复位信号(复位时忽略历史值)。

2. 基本用法示例

场景 1:检查信号过去的值

设计规则:当 valid 为高时,当前数据 data 必须等于 2 个周期前的 data

property check_data_stable;
    @(posedge clk) 
    valid |-> (data == $past(data, 2)); // 检查当前 data 是否等于 2 周期前的值
endproperty

assert property (check_data_stable);

波形分析

周期:
http://www.dtcms.com/a/113384.html

相关文章:

  • P10587 「ALFR Round 2」C 小 Y 的数 Solution
  • Python 如何高效实现 PDF 内容差异对比
  • 房地产之后:探寻可持续扩张的产业与 GDP 新思
  • 在线编辑数学公式
  • NDK开发:音视频处理基础
  • 解释观察者模式,如何实现观察者模式?
  • 单域名 vs 通配符:如何选择最适合你的 SSL 证书?
  • API 类别 - 方法重载
  • JVM虚拟机篇(五):深入理解Java类加载器与类加载机制
  • 纯css实现环形进度条
  • React 零基础学习计划(10节课小项目)
  • STM32定时器通道1-4(CH1-CH4)的引脚映射关系
  • 信创国产化项目验收的标准与流程
  • HBase的安装与简单操作
  • 14.1linux中platform设备驱动实验(知识点)_csdn
  • 关于Linux系统安装和优化的教程
  • Three.js 系列专题 1:入门与基础
  • JetBrains插件市场(附官网地址)
  • [巴黎高师课程] 同步反应式系统第二课 - 同步数据流语言 Lustre v4, Lustre v6, Scade 6, Heptagon
  • Centos7 上 卸载 docker
  • 强化学习课程:stanford_cs234 学习笔记(3)introduction to RL
  • 经典算法 约数之和
  • 发布的React 19.1提供了什么新能力?
  • getpagesize
  • PyTorch 中的一个函数 —— torch.argmax
  • # 深入了解fasttext
  • 2025/4/2 心得
  • 嗅觉莫名减退、长期失眠,帕金森已潜伏?
  • 【玩泰山派】0、mac utm安装windows10
  • JVM 内存区域详解