1. 前言在硬件电路中,为了使系统在异常情况下能自动复位,一般都需要引入看门狗(watchdog)。看门狗其实就是一个定时器电路。当看门狗启动后,计数器开始自动计数,经过一定时间,如果没有被清零,计数器溢出就会对cpu产生一个复位信号使系统重启(俗称“被狗咬”)。系统正常运行时,需要在看门狗允许的时间间隔内对看门狗计数器清零(俗称“喂狗”),不让复位信号产生。如果系统不出问题,程序保证按时“喂狗”,一旦程序跑飞,没有“喂狗”,系统“被咬”复位。
2. heartbeat作用uvm heartbeat在uvm中充当类似看门狗定时器的角色,我们可以设定它的定时长度,也就是在这时间内必须要喂狗,还可以设定heartbeat要监控的组件。uvm_heartbeat 监视测试环境中组件的活动,如果发现在指定的时间间隔内没有活动,则 uvm_heratbeat 发出uvm_fatal消息,导致模拟结束,可以在早期阶段检测仿真挂住,而不是在全局仿真超时到期时检测:
这将有助于识别导致死锁的组件;通过提前终止仿真来节省仿真时间并释放资源;既然uvm_heartbeat类似于看门狗,那么在使用上,只需要关注以下三件事:
配置它的定时长度 (这段时间内没有喂狗就终止仿真)配置它需要监控的对象 (由哪些对象去喂狗)设置多长时间喂狗 (正常情况下这个时间要小于步骤1的定时长度,除非tb或rtl出问题了)3. heartbeat内置函数uvm_heartbeat 类派生自 uvm_object,它提供一组内置方法来方便用户使用。有如下:
注意:uvm_event e 必须定期触发,它会设置一个监视窗口。如果heartbeat监视器在该时间段内未发现任何活动,则会生成 hbfail uvm_fatal消息。一般来说,事件e可以在无限循环中触发,作为一个永远持续的过程。
4. heartbeat例子根据heartbeat的作用和内置函数,举个使用例子。
第一步创建喂狗的uvm_objection实例(假设为uvm_objection obj=new(“obj”)),这个objection需要传递给uvm_heartbeat和所有被监控组件,被监控组件需要定期去raise这个obj来达到喂狗的目的。
第二步创建触发监控窗口的uvm_event实例(假设为uvm_event hb_e=new(“hb_e”)),这个event决定了多长时间去检查下是否有组件喂狗了,也就是raise objection。
第三步就是创建uvm_heartbeat实例(假设为uvm_heartbeat hb=new(hb, this, obj)),在这里把obj传递进去了。
第四步设置uvm_heartbeat的工作模式,比如hb.set_mode(uvm_any_active)。
第五步设置uvm_heartbeat触发检查的event和检查对象,比如hb.set_heartbeat(hb_e,hb_comp)。这里面把event hb_e和监控组件列表comp传递给uvm_heartbeat了。
此时uvm_heartbeat就正式开始工作了,在hb_e每次被trigger()的时候,根据当前工作模式去检查各个被监控组件是否有调用过obj.raise_objection(this)。如果没有,就会停止仿真,表明验证环境有异常情况。另外一点大家主要注意的是,被监控的多个组件raise的objection是同一个,也就是obj这个实例,因此需要在上层创建好obj之后,把句柄传递给各个被监控组件去raise。
以下为uvm_heartbeat监控两个组件(compa和compb)的示意图,uvm_heartbeat模式为uvm_all_active。第一张图,在检查窗口内,compa和compb都有喂狗,检查通过。第二张图,在检查窗口内,只有compb喂狗,compa没有喂狗,因此检查失败,会报出uvm_fatal。
魅蓝5C和魅蓝5S哪个好?魅蓝5C和魅蓝5S区别对比分析
万字报告做空特斯拉:马斯克在操盘一场“庞氏骗局”
全球第一款智能车钥匙产品原型SmartMX P5CD081
未来不足1.5%的数据被存储!IPFS存储架构应用正在爆发
谷歌将研发名为WatchThru的智能手表 可让用户体验全息影像
UVM Heartbeat的作用有哪些呢?浅析UVM Heartbeat机制
PCB走线宽度变化产生的反射
Marvell与Cree公司联合推出消费级LED灯
怎么让单片机干活呢?答案就是配置寄存器
中国消费级3D传感器量产,3D立体成像产品将快速落地
汽车制造如何与移动运营整合5G车联网技术
高速高性能RS-485/422收发器系列
华为即将发布nova 8系列
门前异常主动提醒 萤石视频锁DL30VS 给家更主动的安全守护
科技与旅游完美结合,3D沉浸式景区游览突显文旅差异化
目前最好看的4部手机,均不输iPhone7!
FPC传压机和快压机的层压工艺
研究人员联合欧卡智舶公开了内陆水道中无人船的多传感器数据集USVInland
8米智慧太阳能路灯有哪些优点?
小米6将在2月发布 或有100%屏占比小米6 MIX