文章目录
-
- 1、对UVM验证方法学的理解?
- 2、UVM的验证环境结构,各个组件间的功能?
- 3、uvm_component类型组件相比于uvm_object类型组件有什么特有的属性?
- 4、如何开始(启动)UVM仿真?(仿真流程,或者说UVM如何实现一个环境多个用例)uvm_component_utils有什么作用?
- 5、如何结束UVM仿真?
- 6、举例说明UVM组件中的一些常用方法?
- 7、UVM中对于打印信息的分级与控制?
- 8、sequence是怎样执行的(如何生产数据)?
- 9、在sequence(object类型)中使用uvm_config_db配置变量时,路径索引参数如何设置?
- 10、与sequence相关的`uvm_do系列宏及其实现
- 11、sequence机制的好处?
- 12、写过assertion吗?assertion分为哪几种?简单描述下assertion的用法?断言 and 和 和 intersect 区别?
- 13、为什么要使用工厂机制?使用方法?如何调试?覆盖要求?
- 14、如何使用配置机制uvm_config_db,set/get()方法的各个参数有什么含义?
- 15、uvm_config_db在配置变量时,优先级的问题?
- 16、UVM中的interface是怎么连接Testbench和DUT的?(如何在driver中使用interface?为什么?)
- 17、介绍UVM的phase机制,build_phase 和connect phase的执行顺序
- 18、objection机制的作用?
- 19、callback机制的作用?
- 20、UVM中的通信端口连接方式(TLM机制)及通信方式有哪些?
- 21、说明TLM中的analysis_port和analysis_fifo之间的不同之处,给出二者各自的使用场景?
- 22、UVM中的同步处理方式,相比于SV有什么优势?
- 23、event与uvm_event有什么区别?
- 24、m_sequencer与p_sequencer的区别?
- 25、virtual sequencer与sequencer的区别,以及为什么要用virtual sequencer?
- 26、在同一个testcase里面需要启动多个sequence(有数据的),应该怎样做?
- 27、你了解UVM的factory和callback机制吗?
- 28、请简述一下UVM RAL model的使用机制,解释一下adapter具体做了哪些操作,简述对predictor的理解。
- 29、寄存器模型(RAL model)的前门访问与后门访问的区别。
- 30、OVM和UVM有什么区别?
- 31、仿真过程中遇到问题,如何定位 ?
- 32、UVM各component之间是如何组织运行的,是串行的还是并行的?如果串行的,请问是通过什么机制实现各组件之间的运行调度的?
- 33、VIP怎么写?
- 34、UVM优缺点?
- 35、寄存器怎么配置,adapter怎么集成?
- 36、Prediction的分类(自动预测和显式预测)
- 37、寄存器模型的常规方法(期望值desired、镜像值mirror、真实值actual )
- 38、如果寄存器的地址不匹配,这样的错误怎么测试出来
- 39、后门访问的路径怎么配置
- 40、前门访问和后门访问的区别
- 41、你所搭建的验证平台为什么要用RAL(寄存器)
- 42、UVM如何启动一个sequence?
- 43、UVM中各个component之间是如何组织运行的,串行还是并行,通过什么机制进行调度的
- 44、Config_db的作用,以及传递其使用时的参数含义
- 43、field_automation机制和objection机制
- 42、你了解uvm的factory机制和callback机制嘛
- 43、如何在driver中使用interface,为什么?
- 44、为什么会有sequence、sequencer以及driver,为什么要分开实现,这样做的好处是什么?
- 45、 Virtual sequence和virtual sequencer中virtual含义
- 44、Sequencer的仲裁特性(set_arbitration)及锁定机制(lock和grab)
- 45、 Sequence和sequencer的关系
- 46、 Sequence和item(uvm_sequece,uvm_sequence_item)以及sequence的分类
- 47、Analysis port是否可以不连或者连多个impport
- 48、UVM组件的通信方式TLM的接口分类和用法,peek和get的差异
- 49、main_phase要如何跳转到reset_phase;
- 50、run_phase和main_phase之间的关系;
- 51、phase中的domain概念
- 52、举例说明UVM组件中常用的方法,各种phase关系,phase机制作用
- 53、请谈一下UVM的验证环境结构,各个组件间的关系
- 54、对UVM验证方法学的理解
- 55、 类的public、protected和local的区别
- 56、简述深拷贝和浅拷贝
- 57、组件之间的通信机制,analysis port和其它的区别
- 58、get_next_item()和try_next_item()有什么区别
- 59、哪些继承于component,哪些继承于object
- 60、约束的几种形式
- 61、事件的触发
- 62、平台往里边输入数据的话怎么输入sequence, sequence,sequencer,driver之间的通信?
- 63、说一下component和object的区别,item是component还是object
- 64、说一下ref类型,你用到过嘛
- 65、接口怎么传递到验证环境中(uvm_config_db)
- 66、UVM的启动 总结:
1、对UVM验证方法学的理解?
- UVM验证方法学是基于 SystemVerilog 语言形成的一个高效的验证方法。它的主要特点是提高了代码的复用性,使得验证人员能通过代码移植复用修改快速搭建验证平台,从而将主要精力放在具体测试用例的编写上。另一方面,UVM封装了很多好用的方法,这使得验证人员不必过多关注底层实现,而且减少了验证平台的调试时间。
2、UVM的验证环境结构,各个组件间的功能?
验证平台的作用就是确定待测设计(DUT)完全符合设计规格,通常将DUT放到一个验证平台中来实现,其经典架构如下:(Master agent为ACTIVE模式,Slave agent为PASSIVE模式)