自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 问答 (1)
  • 收藏
  • 关注

原创 driver怎么将response返回给sequence

driver将数据包下发dut后,先构造一个rsp,再获取req的id信息,最后将rsp反馈给sequence1. 通过seq_item_port.item_done(rsp)返回response。当存在多个response时,将response作为item_done参数的方式就不适用了,由于一个transaction只能对应一个item_done,所以使用多次item_done(rsp)是会出错的。

2024-02-06 18:02:57 1184

原创 uvm中的analysis_port和port

...多种操作。

2024-01-16 18:22:55 473

原创 uvm driver的port为什么连接的是sequencer的export而不是imp

因为在uvm源码中,sequencer的export本质是imp。

2024-01-16 08:53:11 375

原创 sv中parameter和`define区别

parameter和`define区别

2024-01-10 17:39:58 598

原创 uvm_run_test()

验证平台的top层只是充当了一个容纳所有组件的容器,通过调用uvm库中的run_test函数启动环境,run_test函数内部会索引到顶层uvm_root,调用真正的run_test函数,所以在top层进行vif set的时候,用的路径是null,uvm_test_top.env,用的都是uvm自身的树形结构。uvm有自己的顶层uvm_root,是一个componet,提供了一些像run_test()这样的方法,它在uvm_pkg中例化,uvm_root例化的uvm_top,是唯一一个顶层类。

2024-01-05 08:30:56 651

原创 uvm_objection机制

验证平台一般会在test层通过config_db的方式指定要执行的default_seq,在启动seq的时候,会执行start函数,uvm_sequence_base中的虚函数start()调用了pre_start()→pre_body()→body()→post_body()→post_start() 函数。其中用得最多的是第二种,这种方式是UVM提倡的方式。如果用的是UVM-1.2,则可以在new函数中打开objection的开关,UVM将会自动控制objection的raise和drop;

2024-01-04 15:00:19 596 3

原创 timescale用法

在verilog中是没有默认timescale的,一个没有指定timescale的verilog模块就有可能错误的继承了前面编译模块的无效timescale参数,在多个模块嵌套使用的时候,可能就会出现时间刻度被取代的情况,从而出现仿真结束时间与"设置值不符的现象"。时间精度:就是模块仿真时间和延时的精确程序,比如:定义时间精度为10ns,那么仿真就可以精确地模拟到10ns级别的时间与信号变化关系,而8ns或者18ns是不可能做到的, 时序中所有的延时至多也只能精确到10ns。timescale是。

2023-12-29 14:33:30 1312

原创 Linux配置

【代码】Linux配置。

2023-09-22 13:55:57 21

原创 gvim配置

【代码】gvim配置。

2023-09-19 10:11:29 52

原创 Linux环境设置

1. 在自己的home目录下创建.bashrc文件。

2023-08-17 19:41:28 20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除