数字ic验证工程师在找工作时,刷笔试面试题必不可少,在面试前做好充足的准备才能抓住更多的机会,今天小编为大家准备了数字ic验证工程师大厂面试常用笔试面试题。
- 下列关于代码覆盖率描述错误的是:CD
A.代码覆盖率包括语句覆盖率
B.代码覆盖率包括条件覆盖率
C.代码覆盖率包括功能覆盖率
D.代码覆盖率到达百分百说明代码 bug 已消除
解析:代码覆盖率和功能覆盖率是独立的两种覆盖率,代码覆盖率100%只能表 明代码经过了充分的执行,但是代码中是否有 bug 以及 bug 是否会被发现,取决于验证环境中的监测点是否监测了关键信号以及对这些信号的判断是否正确。
- 关于亚稳态的描述错误的是:A
A.多用几级寄存器打拍可以消除亚稳态。
B.亚稳态是极不稳定的,理论上来讲处在亚稳态的时间可以无限长。
C.亚稳态稳定到 0 或者 1,是随机的,与输入没有必然的关系。
D.如果数据传输中不满足触发器的建文时间Tsu和保持时间Th,可能产生亚稳态。
解析:亚稳态不能被消除,只能降低其对后级电路的影响。
- Verilog 语言中,下面哪些语句不可被综合:A
A.#delay 语句
B.initial 语句
C.always 语句
D.用 generate 语句
解析:产生的代码所有综合工具都不支持的结构 time,defparam,$finish,fork,join,initial,delays,UDP,wait
- 下列关于 verilog 的描述正确的是:ABCD
A.Y=a+b; 属于阻塞赋值语句,执行该语句时,先计算 a+b 的值,然后更新 y 值,在此过程中,不能运行其他语句
B.Generate, for, function 语句可综合
C.如果 A=1‘b1,B=1`b0,F=A&B|B&A||B,则 F=1’b1
D.如果 A=4‘hb,则^A=1’b1
- 判断电路是否存在竞争冒险的方法有哪些呢?A
A.代数法
B.卡诺图法
C.实验法
D.观察法
- 简述 UVM 的工厂机制
Factory 机制也叫工厂机制,其存在的意义就是为了能够方便的替换 TB 中的实例 或者已注册的类型。一般而言,在搭建完 TB 后,我们如果需要对 TB 进行更改配 置或者相关的类信息,我们可以通过使用 factory 机制进行覆盖,达到替换的效果,从而大大提高 TB 的可重用性和灵活性。
要使用 factory 机制先要进行:
将类注册到 factory 表中
创建对象,使用对应的语句 (type_id::create)
编写相应的类对基类进行覆盖。
- OPP(面向对象)的特性?
封装:通过将一些数据和使用这些数据的方法封装在一个集合里,成为一个类。
继承:允许通过现有类去得到一个新的类,且其可以共享现有类的属性和方法。 现有类叫做基类,新类叫做派生类或扩展类。
多态:得到扩展类后,有时我们会使用基类句柄去调用扩展类对象,这时候调用 的方法如何准确去判断是想要调用的方法呢?通过对类中方法进行 virtual 声明, 这样当