- 博客(7)
- 收藏
- 关注
原创 验证提高工作效率的方法
alias别名的方式。把各种复杂的命令都可以封装起来。如果cs时出现alias No match,那就是哪一行的alias出现问题了。例如“”的内部“”没有加转义字符。2、在用例编译过程中,看自己的用例写的有无问题,在仿真过程中,看自己用例写的是否正确。3、巧用各种脚本,可以把回归结果中的错误都给提取出来,在一个文档中去看。1、cshrc中去封装快捷键。
2024-06-25 08:14:44 85
原创 20240624验证笔记
需要一个累计计数器。需要一个if语句,在if语句中拉高信号,同时进行清零。3、重定向许多log中的某一行共同内容到一个新的文件中的方法有?但是reg类型变量最好初始化一下,初始化为0.1、.sv的用例文件中可以定义reg类型变量吗?4、在sv的task中可以使用always块吗?2、想构造x拍空1拍的周期信号的注意事项?
2024-06-25 08:06:10 83
原创 芯片验证实战总结——测试用例编写二
通过force,我们可以改变逻辑内部信号的值,当我们force完之后,在后续当我们不需要force值时,我们可以release该信号。用法为 force xxx=1;我们采用wait方法去等待该信号为1,当等到了wait会继续往下执行。用法如下 wait (xxx==1);因为我们不知道哪个时刻中断信号被拉高,所以通过if判断是不行的,或者说if判断这种方式工作量是比较高的。当构造测试用例,触发逻辑电路内部的信号中断时,当中断信号只拉高一个时钟周期,该如何测试?2、force与release的用法。
2024-01-11 22:58:21 480
原创 芯片验证实战总结——测试用例编写一
而fork join_any是并行执行,当fork join_any块中有一个执行完毕,则走到join_any。fork join的用法,在通过时间发包时,在用例中读取白盒测试点经常会用到。这里需要注意的是,当我们构造一个异常用例时,当异常出现时(符合预期),我们要让它不报error(采用uvm_info宏),而当异常没有出现时,我们需要让它上报error(采用uvm_error或者uvm_fatal)这种问题,我们需要分析问题,找到问题原因,修改后,重新用该种子执行该用例,如通过,说明这一问题已解决。
2024-01-10 22:47:50 652
原创 芯片验证学习笔记三
7、定在一个覆盖组,再对其覆盖点和仓进行完善,这是实现功能覆盖率的方法。interface,module,package中的变量与方法都是静态的,class中的变量与方法都是动态的。interface是连接硬件与软件的地方,module是例化硬件的地方,package里面可以写类。系统函数如:$finish,$display,内建函数如:size(),randomize。系统函数与内建函数:$为系统函数,size,delete为内建函数。parameter,localparam,const的区别。
2023-12-10 23:20:48 355
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人