一、主要组件的功能:
1、uvm_base_test extends uvm_test;
接收TB传来的接口,并将接口传递至底层;
声明并例化env;
声明并例化config类,底层环境中的cfg句柄指向该类中的cfg实例;
声明并例化virtual_sequence,并v_seq.start(env.v_sqr);
控制仿真环境参数;
仿真case均继承于该类;
2、config类中放全局变量,各组件均可通过句柄指向后访问;
3、virtual sequence
声明所有底层sequence,并实例seq;
实例seq 挂在到v_sqr中对应的句柄上;
在body中仿真挂起或者在底层body中挂起;
4、env 相当于一个容器;
例化底层各agent、refmod、checker、virtual sequencer;
sqr中的句柄指向各自底层agent中的sqr实例;
通信管道连接;
5、agent 相当于一个小容器;
例化driver、monitor,sequencer;
driver与sequencer接口传递链接:
drv.uvm_seq_port.connect(sqr.uvm_seq_export);
其中uvm_seq_port为driver中的内建端口;uvm_seq_export为sequencer中的内建端口;