24届数字IC验证——SV+UVM基础知识汇总(一)

文章目录


前言

汇总整理在面试过程中常见的问题,如果都能回答下来,那么面试肯定不成问题的


1、driver和sequencer之间的通信

(1)如何确保driver驱动多个sequence的时候,driver返回的响应会给正确的sequence

sequence ID用于区分不同的sequence,在driver返回响应的时候通过rsp.set_id_info(req).先拷贝id信息,再返回给sequencer,sequencer才知道返回给那个sequence。
driver中去seq_item_port.put_response(req); seq_item_port.item_done(); 等效于seq_item_port.item_done(req);
sequence中要去get_response

(2)get next item、try next item、get的区别

get next item:阻塞调用,会一直等待transaction,最后返回指向这个transaction的指针

try next item:非阻塞调用,如果没有transaction,会返回一个空指针
get:阻塞调用,隐式地完成了握手,不需要显示调用item_done()

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于 SystemVerilog (SV) 和 Universal Verification Methodology (UVM) 搭建 SoC/ASIC 验证平台是一种常见的做法,在这个过程中,我们可以利用这两种强大的验证工具来实现高效、可靠的验证流程。搭建这样的平台需要按照一定的设计原则和流程来进行,同时也需要一定的经验和技巧。 首先,我们需要明确验证平台的需求和目标,包括要验证的功能和模块,验证的覆盖率要求,以及验证的时间和资源限制等。然后,我们可以按照这些需求来进行验证环境的规划和设计,包括建立验证环境的分层结构,选择合适的模块和接口来搭建,以及定义好各个模块的功能和接口协议等。 在搭建的过程中,我们可以利用 UVM 的各种特性来实现验证环境的各个模块,包括利用 UVM 的 transaction、sequence、driver、monitor 等各种类别的基本组件来实现模块的功能,并利用 UVM 的配置、报告、分析等功能来实现验证环境的控制和管理。 最后,我们还需要对搭建的验证平台进行验证,包括对验证环境的功能、接口、交互等方面进行验证,并对验证结果进行分析和报告,以确保验证平台可以满足设计的需求和目标。 总的来说,基于 SVUVM 搭建 SoC/ASIC 验证平台需要遵循一定的设计原则和流程,而且也需要一定的经验和技巧来进行。通过这样的验证平台,我们可以实现高效、可靠的 SoC/ASIC 验证流程,从而提高验证的效率和质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值