数字验证23提前批蔚来面试

1.C语言还记得多少?

2.Verilog中有多少中数据类型?怎么定义一个深32,宽24的数组?

Verilog中主要有两种数据类型,寄存器类型和线网类型,寄存器类型最常用的是reg类型,其他的有integer、real和time类型。线网类型主要是用wire类型了,另外也有像trior之类的类型基本上没用过。

3.Vcs的步骤,运行的原理,中间会生成哪些文件?

Vcs主要包括两步,编译和仿真。其中编译步骤里虽然我们只是操作一步,但其实软件内部有几个过程,先是转化为.c文件,然后编译链接成可执行文件simv。执行这个simv文件进行仿真,使用./simv执行。

4.收集覆盖率的命令是什么?生成覆盖率报告的命令是什么?

urg命令产生覆盖率文件,在编译时使用-cm_dir改变不同覆盖率的存放路径或者用-o改变不同覆盖率的文件名,以防止多次仿真导致覆盖率文件被覆盖。使用merge命令可以将多个覆盖率文件进行合并生成一个覆盖率文件,并产生报告文件urgReport。

5.要看vcs仿真完之后的波形,应该怎么定义?

在tb中定义一个initial块,里面使用$vcdpluson就可以记录下仿真过程中的波形。具体如下:

initial
	begin
		$fsdbDumpfile("testname.fsdb");  //波形名字testname.fsdb
		$fsdbDumpvars("+all");  //+all参数,dump SV中的struct结构体
		$fsdbDumpSVA();   //将assertion的结果存在fsdb中
	end
end

6.Vcs如何导入库文件?Sv中如何自动运行testcase?用过$test$plusargs吗?

首先在top_test.sv中,加上两条语句:`include “uvm_macros.svh;”和import uvm_pkg::*;可以在sv中加入uvm库。此外,在vcs编译时使用命令-ntb_opts uvm导入uvm库文件。

【原创】关于$test$plusargs和$value$plusargs的小结【SystemVerilog/Verilog】 - nanoty - 博客园

7.Makefile脚本单独敲一个make会执行什么操作?

会执行文件里的第一条目标。

8.声明一个动态数组,并给1000个数,每三个数为一组,组内第一个数保持不变,但是将第二三个数的位置反过来如何实现?

9.APB中psel、pslverr信号是干嘛的,考虑一个master和一个slave,pready信号相对于master是输入还是输出?

10.Reference model是干嘛的,你怎么写的?

11.你有什么问题吗?

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值