我有一个测试台,其中有两个序列:sequenceA 和 sequenceB 及其对应的序列项(sqitemA 和 sqitemB)。sequenceA 被输入到我的 DUT 并随机生成 sqitemA 的值。
现在,我需要在 sqItemA 中访问其中一些生成的随机字段,以便为我的 sequenceB 创建相关的 sqItemB。
UVM 是否提供了一种机制来做到这一点?
例如:
class sequenceA extends uvm_sequence;
rand logic[31:0] address;
rand bit enable;
// skipping constructor
task body;
this.randomize();
// do body stuff
endtask
endclass
class sequenceB extends uvm_sequence;
rand logic[31:0] address;
rand bit enable;
// skipping constructor
task body;
// here I want this.address to match the address randomly generated in sequenceA
// wait_till_sequenceA randomization is complete
// this.address = sequenceA.address (??);
// do body stuff
endtask
endclass
关于最好的方法的任何线索?