- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 UVM源码(9) —— uvm_printer
该class是一个虚类,虚类一般用来定义类的格式,、类的成员、类的参数等,虚类不能被,只能被扩展(重载)后实例化。UVM 中用于打印对象信息的基类,它定义了一些通用的打印方法和属性,例如设置打印的深度、打印的宽度等。通过这些方法和属性,可以灵活控制对象信息的输出格式和内容。其主要用途是将 UVM 对象的内部状态和数据以人类可读的形式输出,方便调试和验证。
2025-04-02 10:07:27
242
原创 UVM源码阅读(7)——uvm_resource_specializations+uvm_resource_db
uvm_resource 相关
2024-03-29 16:42:17
772
1
原创 UVM源码阅读(6)——uvm_resource
在uvm_resource中使用,返回this_type(静态变量),整个仿真过程仅此一个,如果this type = null > this_type new。更改资源搜索搜索的优先级,将q中的rsrc配置优先级,如果high,push到q front,如果low,push到q back。3.如果access(uvm_resource_types中的结构体)中不存在新的访问者记录,请创建该记录。根据rsrc 的type handle查找ttab的q,调用set_priority_queue排序。
2024-03-27 15:03:38
968
原创 UVM源码阅读(4.2)——uvm_registery
继续uvm factory机制。object和component类型使用轻量级的代表。
2024-03-07 17:51:14
381
1
原创 UVM源码阅读(5)——uvm_spell_chkr
改class用于uvm相关字符串拼写检查。该类中主要实现了两个方法:check和levenshtein_distance。
2023-12-26 18:22:24
442
1
原创 UVM源码阅读(4)——uvm_factory
factory机制,是uvm中最重要的机制之一。其存在的意义就是为了能够方便的替换环境中的实例或者已注册的类型。一般而言,在搭建完环境后,我们如果需要对环境进行更改配置或者相关的类信息,我们可以通过使用factory机制进行覆盖,达到替换的效果,从而大大提高环境的可重用性和灵活性factory机制的核心:通过类的字符串名创建该类的实例。
2023-12-19 17:45:17
1362
1
原创 UVM源码阅读(3)——uvm_pool/uvm_queue
Container类定义了参数化的数据结构,以实现比systemverilog更高效的数据共享:原因在于Container类之间的复制是基于reference的拷贝,而不是基于原始数据。uvm_queue #(T)和systemverilog中的queue类似;uvm_pool #(T)和systemverilog中的associative array类似预定义function1. static function this_type get_global_pool;获取全局唯一的p
2023-12-14 18:33:09
755
1
原创 芯片验证之covergroup/coverpoint
如果一个covergroup被例化多次,默认情况下SV会将所有的实例的覆盖率合并到一起吗,如果需要单独列出每个covergroup实例的覆盖率,需要设置覆盖选项(option.
2023-09-27 15:39:02
353
1
原创 git命令记录
git作为支持分布式版本管理的工具,它管理的库(repository)分为本地库、远程库。git commit是将本地修改过的文件提交到本地库中。git push是将本地库中的最新信息发送给远程库。操作的是本地库,git push操作的是远程库。1. commit 和 push 的区别。
2023-07-03 13:23:58
81
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人