1.问题的引入
在UVM验证环境的项目中,经常需要使用内置的print()函数或sprint()函数打印
uvm_sequence_item类或者uvm_transaction类,这些transaction或sequence_item的class中通常会包含多个列表()数组(array)和/或队列(queue),这些数组和队列通常又包含很多个元素变量。默认情况下,系统只会打印数组和队列开始的5个元素和最后的5个元素,原因如下图所示(begin_elements= 5; end_elements = 5)。

如果我们想要打印数组和队列的所有元素内容或者如何灵活控制,有什么办法吗?答案是肯定的,请看后面的内容。
2.默认打印的数量和样式
默认情况下,系统只会打印数组和队列开始的5个元素和最后的5个元素,如下图所示:

3.打印所有数量和格式
3.1具体实现的方法
在test的build_phase中,添加如下code:
uvm_default_printer.knobs.begin_elements = -1;//print all elements of arrays and queues如下图所示:

3.2打印的数量和样式

4.如何灵活控制打印的数量和格式
下文的例子是,打印数组和队列开始的2个元素和最后的3个元素。
4.1 具体实现的方法
在test的build_phase中,添加如下code:
uvm_default_printer.knobs.begin_elements = 2; uvm_default_printer.knobs.end_elements=3;如下图所示:

4.2 打印的数量和样式

5.uvm_default_printer


6.uvm_table_printer

7.uvm_printer


审核编辑:汤梓红
-
函数
+关注
关注
3文章
4406浏览量
66837 -
UVM
+关注
关注
0文章
183浏览量
19942 -
队列
+关注
关注
1文章
46浏览量
11193 -
数组
+关注
关注
1文章
420浏览量
27114
原文标题:在UVM环境中,如何灵活地控制打印数组或队列元素的数据量
文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
ESP8266_RTOS3.0串口0传输大量数据丢包的原因?
删除或替换数组中某元素
为什么sprintf打印数据只能兼容8位的数据
使用STM32H743单片机如何判断何时可以向打印机发送打印数据?
谈谈UVM中的uvm_info打印
UART打印数据很慢是为什么?
如何用Verdi查看UVM环境中的变量?

在UVM环境中如何控制打印数组或队列元素的数据量
评论