匿名感谢一直默默提供各种素材和BUG的小伙伴!

刚开始入门的时候,有人和我讲宏、force和callback是验证环境的三个毒药 ,仿佛饮鸩止渴,虽然简洁快速,但是如果使用不当会使验证环境处于不可控的风险中。所以很长一段时间我都是避免使用force的,直到有一天我发现force是真的很爽\(^o^)/~不过呢还是得说,force确实有时会带来盲点,尤其是你忘了还有force这个事的时候。

force导致的问题通常都很隐蔽,比如我之前见到过得的封装uvm操作失误,在uvm_bd_read这类操作中误使用force,导致后门读取使得RTL挂死这种鬼神操作。通过verdi可以避免我们忘记force操作,目前我直到的有两种方式:在波形中显示force信息和打印所有force信息。

我在harness里加了这么一句:

initial begin#1000ns;force harness.u_mul.m_valid = 1;$display("force!!!");#10ns;release  harness.u_mul.m_valid;
end

在波形中显示force信息

在vcs run_option中添加:

RUN_OPTIONS += +fsdb+force

然后正常跑用力,看波形:

直接就一个无所遁形!

但是吧,如果跨逻辑的关联信号就看不出来了,比如这种代码下,tmp和被force的代码是完全等价的但是波形上看不出tmp的force状态:

wire tmp = m_valid;

那么这种时候怎么办呢?没啥太好的办法,第二种方式也不行。

打印所有force信息

here

继续

继续

OK

打开

就这样

【验证小bai】利用verdi让所有环境force现身相关推荐

  1. 【验证小bai】只有SV+modelsim学验证(5)——先将嗷嗷待验的DUT加入环境,至此就只遗留环境的灵魂RM了

    今天我们继续向前大步迈进,把待验证的DUT加入到环境中来!为此我写了一个非常复杂的模块~~主要的功能把输入的数据打两拍然后送出去....当然这只是level1.0版本,后续在添加reference m ...

  2. 小敏利用计算机设计,中考物理 专题 压强精品复习课件

    1.压强,考点知识梳理,中考典例精析,课堂达标训练,专题训练,知识结构,考点一 压强 1 _作用在物体表面上的力叫压力压力的方向总是_于物体表面,并指向被压物体压力的作用点在被压物体的表面压力的作用效 ...

  3. android内存修改 跳一跳,Android版微信跳一跳小游戏利用技术手段达到高分的操作方法...

    本文主要来讲个个好玩的东西,近来微信刚出的跳一跳微信小程序的游戏很火,看到很多人都达到了二三百分就各种刷朋友圈了. 甩手一个表情 最终我们达到的分数却是这样的: 羡慕吧 一定会有人拍手叫好," ...

  4. python画图代码-Python实战小程序利用matplotlib模块画图代码分享

    Python中的数据可视化 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件. 实战小程序: ...

  5. 用python画图代码-Python实战小程序利用matplotlib模块画图代码分享

    Python中的数据可视化 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件. 实战小程序: ...

  6. 小王利用计算机设计了一个计算程序,小王利用计算机设计了一个计算程序,输入和输出的数据如下表:那么,当输入数据是8时,输出的数据是[]A.B.C.D.-七年级数学...

    题文 小王利用计算机设计了一个计算程序,输入和输出的数据如下表: 那么,当输入数据是8时,输出的数据是 [     ] A. B. C. D. 题型:单选题  难度:中档 答案 C 据专家权威分析,试 ...

  7. 小程序利用canvas实现波浪动态图,原生canvas的部分限制

    小程序利用canvas实现波浪动态图 小程序的canvas与该动态图的问题 首先上效果图片 下面直接上代码 小程序的canvas与该动态图的问题 小程序的canvas与html的canvas实现是完全 ...

  8. 如何才能防止小程序在激烈的市场环境中不被出局

    微信小程序发布至今,已有接近两年.在这两年之中,微信小程序的数量呈爆发式增长,应用数已经过百万个,日活跃用户已经达到了惊人的两亿以上.微信小程序也已经由当初的"蓝海"转入" ...

  9. Android群英传神兵利器读书笔记——第一章:程序员小窝——搭建高效的开发环境

    Android群英传神兵利器读书笔记--第一章:程序员小窝--搭建高效的开发环境 目录 1.1 搭建高效的开发环境之操作系统 1.2 搭建开发环境之高效配置 基本环境配置 基本开发工具 1.3 搭建程 ...

最新文章

  1. Linux内核——进程管理与调度
  2. 皮一皮:原来网恋就是这个感觉...
  3. mysql更新后返回主键,我需要在MYSQL中更新表后返回的受影响行的主键。
  4. for循环 php 增加数组维数_PHP数组在循环中创建多维数组
  5. oracle函数 INITCAP(c1)
  6. drools 7.x 决策表转drl
  7. 011游移方位惯导系统的力学编排之指令角速度
  8. OLED取模-PS做图转字模提取软件
  9. 统计学和算法相关的基础知识(持续更新)
  10. 二等分计算机打印机尺寸,电脑打印纸三种等分是什么尺寸
  11. 三国史诗——三国官制(二)
  12. Redis学习总结(数据类型、持久化、事务、数据删除策略、主从复制、哨兵、缓存雪崩等)
  13. Unity3D网络游戏0.2
  14. 全新Funtool趣工具iApp软件库源码+工具箱源码
  15. 搜狗拼音Lunix系統-乱码及繁体解决
  16. 计算机键盘清洗怎么弄,笔记本电脑键盘怎么清洗干净(专业户教你清洗键盘简易方法)...
  17. 数据分析之R语言基础学习一
  18. 海航集团:曲折的发展历程
  19. 搭建LEON3研发环境(一)
  20. 双ISP出口网络组网

热门文章

  1. 办理劳务资质要多少钱?关键看办理方法
  2. Jetbrains推出新一代编辑器:Fleet,网友:VS Code迎来劲敌JB Code!
  3. ReSharper智能插件,ReSharper分析代码质量
  4. 天津发展php怎么样,为什么那么多人选择留在滨海新区?他们现在怎么样了 ?
  5. 三菱数据移位指令_三菱PLC移位指令
  6. 判断两数是否可以除尽
  7. 如何给U盘分区 如何显示U盘隐藏分区 U盘如何分区 U盘多分区
  8. 什么是白盒测试,和的黑盒测试有什么区别?
  9. Vue 数字千位分隔符
  10. 计算机软件模型改进,基于改进Kano模型的服务优化研究_樊根耀.docx 计算机软件及应用...