组件树与实例路径
返回知识网络总入口 · 平台与对象
核心结论
UVM 路径由创建时的名字串与 parent 拼接,是配置定位、实例 override 和日志排查共同使用的地址。
关键机制
- uvm_root 是根,run_test 创建的 test 通常名为 uvm_test_top。
- create 的字符串参与路径,保存句柄的变量名不参与。
- get_full_name 查看完整路径,get_parent 查看直接父组件。
- build 自顶向下,父组件可先准备配置再创建子组件,不依赖兄弟组件先后。
小例子或流程
drv_handle = my_driver::type_id::create("driver", this);若 this 位于 uvm_test_top.env.agt,目标路径以 .driver 结尾,代码变量仍为 drv_handle。先打印拓扑,再核对配置路径。
易错点
- UVM 路径和 module 的 HDL 路径是不同体系。
- 修改实例字符串会影响配置与 instance override。
- sequence 对象层次不等于 component parent 层次。
关联知识
- object与component:component 以 parent/name 建立实例树。
- config_db:配置通过组件上下文和路径定位。
- phase:phase 按各自规则遍历组件树。
- factory注册_创建与override:instance override 匹配创建上下文路径。
- 后门与HDL路径:组件路径与后门 HDL 路径不能混用。