笔记
songshu_sky
这个作者很懒,什么都没留下…
展开
-
uvm_event的用法(DVCON论文学习)
在验证环境中,验证平台组件通常以同步的方式通信,以有效地实现时间精确检查,System Verilog event是专用的、广泛使用的数据类型,用于实现组件之间所需的同步通信。UVM有一个内置的专门的类围绕sv事件,这拓宽了基于事件通信的应用和使用,本文突出介绍uvm_event的使用和好处。翻译 2022-10-07 08:55:06 · 2694 阅读 · 2 评论 -
sv常用的系统function/task(二)
q_exam--根据stat_code,返回对应的统计。$q_remove--从队列中删除一个entry。$q_initialize--创建一个信队列。产生运行太的致命错误和仿真结束,4、$q_full---检查队列是否满。三、队列管理随机分析task。原创 2022-10-04 10:21:43 · 2712 阅读 · 0 评论 -
sv常用的系统function/task(一)
0:直接结束仿真,不打印任何信息1:打印结束行号,以及结束时间2:打印结束行号,以及结束时间,以及仿真的内存消耗 以及cpu运行时间等信息(vcs仿真器1和2参数打印一样,vsim有区别)原创 2022-09-26 20:49:47 · 1296 阅读 · 0 评论 -
寄存器验证策略
以RW寄存器为例,对此类寄存器测试项如下,尽量考虑完备性。 读测试(默认值测试):读出的值应该为默认值,否则为默认值设置错误,默认值错误有时会引起一些莫名其妙的错误,所以千万不要忽视了这一点。 读写测试 1.随机值测试,随机一个寄存器值然后读出进行比对2.位粘连测试,采用00….001和11..110进行移位操作写入读出对比测试防止寄存器某些bit位粘连3.位翻转测试,写0x55..555、0xaa..aaa,读出比较4.位边界测试,写00…00,fff…ff...原创 2022-05-07 10:15:09 · 4183 阅读 · 0 评论 -
【IC验证】
原创 2022-01-23 12:01:20 · 119 阅读 · 0 评论 -
vcs 如何 dump sva
问题:sva 如何dump到波形中?答案:使用系统函数$fsdbDumpSVA([level],[,scope|module] [,“file=”,“filename”]);e.g $fsdbDumpSVA(0,top)说明:如果需要使用该系统函数编译选项需要加-assert api -assert api_event...原创 2022-01-14 14:57:18 · 1076 阅读 · 0 评论 -
时序仿真波形看不到延时信息可能原因
时序仿真波形中看不到延时信息的原因或场景1、 sdf解析失败,报错,但simv文件正常创建了2、 sdf文件中的延时信息三组值不全,如(min::max)但仿真反标时选择了typical3、sdf包含了所有的延时信息,但由于仿真timescale的问题,被截取为0(module timescale 1ns/1n sdf的延时信息为0.148)4、编译选项中加了+nospecify选项...原创 2021-10-16 14:33:50 · 1127 阅读 · 0 评论 -
网表仿真常见问题及解决办法
1、网表顶层测试信号引起的问题 解决办法:可以通过规避手段,即屏蔽测试信号的有效性,对测试信号的初始化一个无效值,大多为0。2、寄存器初始值引起的不定态问题 解决办法: 一般情况下,不定态往往来自与没有初始化的寄存器或RAM,有些设计对这些初始化值为任何数都不影响使用时,但网表仿真会导致x传输,需要对无复位寄存器进行deposit初值3、RAM初始化问题如果RAM没有初始化或写操作,则RAM读数据是不定态。在RTL仿真时,不定态在逻辑上一般当作非0来处理,所以不会扩散。而在网表仿真原创 2021-08-15 22:07:39 · 3242 阅读 · 0 评论 -
VCS如何知道平台和仿真中做了哪些force操作
编译参数增加-force_list运行参数添加-force_list report.log仿真过程就会生成 report.log 记录仿真过程中的force操作原创 2021-08-14 22:39:31 · 1361 阅读 · 0 评论 -
vcs几个编译选项的含义
-diag timescale 诊断设计文件timescale的变化-design_stats 打印dut规模数据-reportstats 打印运行时间和内存消耗以及执行服务器信息原创 2021-08-07 23:13:43 · 818 阅读 · 2 评论 -
常用的linux命令
1、统计文件个数ls -l |grep “^-” |wc -l 统计当前文件夹下文件个数ls -l |grep “^d” |wc -l统计当前文件夹下目录个数ls -lR |grep “^-” |wc -l统计当前文件夹下文件个数,包括子文件夹2、sed命令使用修改指定的行:sed -i ‘10s/old/new/’ file提取文件中某些行:sed -n ‘m,np’ file3、 find命令的使用find ./ -name “zifu” 查找当前匹配的文件find ./ -na原创 2021-08-07 23:02:14 · 76 阅读 · 0 评论 -
vcs编译重复定义文件问题
一、问题描述:vcs编译重复定义文件可能出现下面的情况:1、编译报error [MPD]module previously declared2、编译报warning[OPD]override previous declaration二、原因:基于sv LRM 1800-2012, section 33.3.1.1多个相同名字的module被map在同一个lib中需要报告出来三、解决办法1、在允许覆盖的情况下,消除不报error,用-top指定顶层或加选项-error=noMPD2、需要消除原创 2021-08-03 12:00:45 · 10500 阅读 · 0 评论