已经到了LAB4将加入类的概念。
相比于之前,这个开始 task gen() 中生成随机数的任务放到类里面完成。
一、验证框架

二、测试代码 test.sv
2.1 定义发送变量
这里引入一个“Packet.sv”,这个代码在后面解释。
`include "Packet.sv"
int run_for_n_packets; // number of packets to test
bit[3:0] sa; // source address
bit[3:0] da; // destination address
logic[7:0] payload[$]; // expected packet data array
logic[7:0] pkt2cmp_payload[$]; // actual packet data array
Packet pkt2send = new();
Packet pkt2cmp = new();
2.2 驱动代码
这里没啥变化,变化的在于函数里面。
initial begin
$vcdpluson;
run_for_n_packets = 2000;
reset();
repeat(run_for_n_packets) begin
gen();
fork

这篇博客介绍了在SV_LAB4中如何使用类来实现验证框架。主要内容包括测试代码test.sv中的包生成、发送、接收和比较任务,以及包裹类Packet.sv的成员和方法实现,如随机化生成包、比较函数和参数打印功能。
最低0.47元/天 解锁文章
1798

被折叠的 条评论
为什么被折叠?



