UVM
文章平均质量分 78
keep_moving_2023
这个作者很懒,什么都没留下…
展开
-
Interface连接
interface例化连接;原创 2023-01-29 11:00:13 · 39 阅读 · 0 评论 -
XX-工程积累-SS
XSCH的sequence的实现架构:一共是2层;L1层seq的body:create或new L2层的seq; fork join里面调用2个task(get_tr_from_slave_port和send_rsp) get_tr_from_slave_port:主要是在while(1)线程里从slave_port获取DUT发出的req,push_back到一个队列xx_queue里(由L1seq声明的) send_rsp:基于for+fork;会产生多个线程根据req_tr让L2 ...原创 2022-04-10 15:56:27 · 326 阅读 · 0 评论 -
激励-sequence
模块A与模块B是有来有回的两个模块,典型的场景是调度场景,可能一个request需要多个rsp,可能还有不同通道之间的交织场景等;需要采样模块A的request,发送给与B_agent.seqr挂载的sequence,让它决定发生什么rsp给回模块A;所以需要在B_agent.seqr里面声明一个port,以便sequence能通过这个port得到采样道德request包;对于一些一拍req,一拍rsp,的类型,可以直接agent里面实现,不需要通过slave_sequence这种方式;对于原创 2022-02-23 21:06:21 · 202 阅读 · 0 评论 -
UVM降龙十八掌
第一手:sequence内的方法调用(sequence或item的启动或发送)下面的parent是指父节点。(以下内容参考uvm源码src/seq/uvm_sequence_base)pre_body/start和post_body/start是只用于sequence方面的任务采用start启动sequence会调用以下方法:(可以在test_case和sequence这两层使用start)//| sub_seq.randomize(...); // optional//| sub_原创 2022-01-11 19:21:38 · 685 阅读 · 0 评论 -
UVM工程杂记
1、对于一个定宽数组的注册采用下面这种即可:int mai_port[9] ;int mai_XX[] ;`uvm_field_sarray_int(mai_port, UVM_ALL_ON) // sarray for array.size is fixed`uvm_field_array_int(mai_port, UVM_ALL_ON) //2、针对多维度队列注册:int unsigned mqui_XX[4][$] ;foreach(mqui_XX原创 2021-12-24 11:16:26 · 1791 阅读 · 0 评论 -
uvm_config_db与uvm_resource_db的区别(转载)
1.uvm_config_db与uvm_resource_db的区别与联系(1)uvm_config_db是从uvm_resource_db派生而来的,它对uvm_resource_db的一些功能进行了扩展,这种扩展主要体现在对资源的写入和读取上.(1.1)在资源的写入操作上,它重载了uvm_resource_db的set函数;(1.2)在资源的读取操作上,它新建了一个称为get的函数;(2)uvm_resource_db虽然也是一种用来共享数据的类,但是层次关系在该类中没有作用;...转载 2021-12-12 13:07:53 · 2600 阅读 · 0 评论 -
ZTE期间-学习笔记
运行.sv文件:b_run xrun 文件.sv20201218:Linux pwd(英文全拼:print work directory) 命令用于显示工作目录。执行 pwd 指令可立刻得知您目前所在的工作目录的绝对路径名称。10个分支:NC/VCS(rtl,asic,xprop,dft,sdf)VCS® Xprop 旨在帮助寻找 RTL 中的 X 相关问题,减少对冗长的门级仿真的需求。(https://www.synopsys.com/zh-cn/verification/simulatio原创 2021-05-27 14:41:21 · 369 阅读 · 0 评论 -
UVM相关要点(摘抄于网络)
接口的作用对各个模块做清晰有序的连接,同时将DUT和testch隔离开来,提高环境的复用性。需要注意的是:接口中的信号应该定义为四值逻辑,这样是为了防止接口与DUT相连时,X与Z的信号丢失。接口还可以使用modport进一步确立不同对象对信号的连接方向。program的使用一般将设计部分放在module中,而将测试采样的部分放在program中。因此,program可以认为是软件的区域。所以always,module,interface等不应该出现在program中。2.program驱动外部的原创 2021-05-27 14:35:53 · 1279 阅读 · 0 评论