specman - Specman e:同时发生的事件错误
问题描述
在我的环境中,我有一个信号不能在两个时间点之间改变。为了验证它,我使用expect
规则:
my_signal : uint;
event first_e; -- First time point
event second_e; -- Second time point
expect @first_e => {[0..]*(not {change(my_signal)}); @second_e} @clock;
问题是@second_e
并且change(my_signal)
发生在同一个周期(并且没关系)但expect
规则失败。
你知道如何解决它吗?也许有一些方法可以指定事件顺序或告诉在同一个周期发生是可以的?
谢谢您的帮助
解决方案
您的序列没有指定相同的周期是可以的。
尝试这个:
event my_sig_change is change(my_signal)@clock;
expect @first_e => {[0..]* not @my_sig_change; @second_e or (@second_e and @my_sig_change) } @clock;
推荐阅读
- android - 导航组件,控制何时显示汉堡包或返回图标
- mysql - Mirth 中的数据库到数据库复制
- android - 在 android studio 中构建 kotlin 项目时出错
- jquery - jQuery 获取值并在 id 中设置
- javascript - React Draft Wysiwyg:空验证器检查
- x86 - 如何区分细分类型?
- angular - 我们如何在 Angular 项目中使用外部样式表?
- java - 嵌套 if-object-null-return 方法提取或替代声纳认知复杂性
- android - 如何在我的 Android 应用中使用新的 Google 的 Sans 字体?
- c++ - SCTK 安装:全局命名空间中没有名为 uint16_t 的成员