附录

题库

这里是一些我亲身经历的IC验证岗位的笔试面试题,并附上了我的实际回答情况,可能有错误或不全面的地方,如果发现欢迎指正。

由于笔试题存在很多非验证题目,而且笔者没有怎么整理过笔试题,所以最终选择的合适的笔试题数量不多,更多的题目可以在牛客网搜索。面试题目也只是整理了一些适合读者借鉴的题目,并且进行了筛选,和我个人简历或者项目相关的题目我都省略了。

笔试题

  • SV中类默认的成员属性是

A. Local

B. Private

C. Public

D. Automatic

答案:C。声明成员时如果没有指明,则默认类型为Public,子类和外部都可以访问;如果是local,那么只有该类可以访问,子类和外部无法访问;如果是protected,那么该类和其子类可以访问,外部无法访问。

  • 一段程序如下,请问在45这个时刻上,A B的值各是多少

A. 1,1

B. 0,1

C. 0,0

D. 1,0

答案:C。begin end块里顺序执行,因此每个延迟都是叠加的,不是具体的时刻。fork join块里并行执行,因此这两个begin end块同时开始,并且没有握手通信,互不干扰。所以在45时刻,两个begin end块都执行了“#20 A/B = 0;”,直到50时刻才被赋1,所以结果都是0。

  • 在SV中,调用$write可以自动地在输出后进行换行

A. 正确

B. 错误

答案:B。$display打印会自动换行,$write不会。

  • 以下SV程序的运行结果为

A. 32’hFFFFFFFF

B. 32’h00000000

C. X

D. 32’h00000001

答案:B。该例中定义了一个Test类,并例化出句柄t,调用new函数创建对象,并传入了一个参数值“32'h1”,这个“32'h1”赋值给了new函数中的addr,将addr的值“32'h1”赋值给“另一个”addr,但这并不是另一个addr,不是Test类中定义的addr,而是new函数自己的参数。知识点:在函数中索引一个变量名,会优先“就近寻找”,比如该例中的new函数中的addr就是形式参数addr,想要指向类中的变量,是需要this关键词指示的,比如“this.addr”,因此t句柄指向对象中的addr仍然为初始值,bit是二值逻辑,因此addr的初始值为0。在打印消息时,调用了display_addr方法,该方法中的addr同样就近寻找,发现function中没有定义addr,则继续向上一层寻找,找到类中的addr,并进行打印。因此最终打印结果为0。

  • 关于uvm sequence常用宏,以下说法不正确的是

A. uvm_do_on_pri可指定transaction发送时采用的sequencer,同时指定优先级

B. uvm_do_on可指定transaction发送时采用的sequencer

C. uvm_do_with可添加激励约束

D. uvm_do可指定transaction发送时采用的sequencer,同时添加激励约束

答案:D。宏里有“on”表示可以选择采用的sequencer,有“with”表示可以添加约束,带“pri”表示可以指定该trans的优先级。

面试题

  • 模块级和系统级验证的关注点有什么不一样

模块级验证更加注重模块接口及内部的细节,包括接口时序、代码覆盖率、边界情况等,例如模块能否处理错误的接口时序、工作时复位状态机能否正常跳回、未执行的代码分支的原因等,并且测试用例多为SV或UVM用例;系统级验证关注整个SoC的场景以及各模块的协同工作,例如数据的吞吐率、中断信号是否正确交给CPU等,并且测试用例多为C测试。

  • UVM工厂机制的好处

使用工厂创建的类,成员可以使用UVM提供的高效方法,如克隆、打印,对象也可以在创建前被新的类型覆盖,保证环境的封闭性。

  • 如何划分验证功能点

可以根据接口、寄存器、中断以及配置流程划分。接口可以根据时序和协议划分一系列功能,如同时读写、连续读写、非法地址访问、不同时钟频率不同的工作状态等;寄存器可以根据每个寄存器域的功能划分各种工作场景,并将它们cross在一起;中断可以划分为触发中断、清除中断、屏蔽中断等;配置流程方面,比如连续配置寄存器使模块不断切换模式进行运作、复位后重新使能等。最后加上边界情况,大致功能点就划分好了。当然一个人的想法是有限的,划分出的功能点需要和设计人员以及leader进行多次review,不断补充。

  • 功能覆盖率怎么定义(手撕代码),采样的信号从哪里来

class my_coverage_model extends uvm_component;

`uvm_component_utils(

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

数字IC验证校招指南 文章被收录于专栏

《数字IC验证校招指南》,专刊共计两部分,分别介绍了数字IC验证岗位的工作内容和该岗位的校招流程,包括简历准备、投递流程、笔试面试、名企笔试面试真题以及个人经验总结。本专刊将全面介绍笔者在校招过程中的经验,通关大厂技巧,让你们的求职之路更加顺畅。

全部评论
有心了 感谢大佬
点赞 回复 分享
发布于 2022-05-30 11:05

相关推荐

11-27 12:43
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
offer多多的六边形战士很无语:看了你的博客,感觉挺不错的,可以把你的访问量和粉丝数在简历里提一下,闪光点(仅个人意见)
点赞 评论 收藏
分享
评论
1
2
分享
牛客网
牛客企业服务