搭建UVM环境时遇到一个语法错误的bug,找了一天的原因,结果是因为这么个不起眼的小细节。细节决定成败,以后多注意。
原来的代码:
virtual task run_phase(uvm_phase phase);
super.run_phase(phase);
2c_write_seq i2c_seq;
apb_slave_write_seq apb_seq;
phase.raise_objection(.obj(this));
......
修改办法:
将 super.run_phase(phase); 放到apb_slave_write_seq apb_seq;后面。