马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
MCDF有三个发送数据包通道,chnl0,chnl1和chnl2】chnl_trans
foreach(data) data == 'hC000_0000 + (this.ch_id<<24) + (this.pkt_id<<8) + i;
chnl_data_sequence
rand int pkt_id = 0;
chnl_trans req, rsp;
`uvm_do_with(req, {local::ch_id >= 0 -> ch_id == local::ch_id;
local::pkt_id >= 0 -> pkt_id == local::pkt_id;
local::data_nidles >= 0 -> data_nidles == local::data_nidles;
local::pkt_nidles >= 0 -> pkt_nidles == local::pkt_nidles;
local::data_size >0 -> data.size() == local::data_size;
})
this.pkt_id++;
结果出错
ncsim: *W,SVRNDF (../tb/chnl/chnl_data_sequence.sv,39|26): The randomize method call failed.
Observed simulation time : 1145 NS + 4
ncsim: *W,RNDOCS: These constraints contribute to the set of conflicting constraints:
foreach(data) data == 'hC000_0000 + (this.ch_id<<24) + (this.pkt_id<<8) + i; (../tb/chnl/chnl_trans.sv,17)
}) (../tb/chnl/chnl_data_sequence.sv,39)
ncsim: *W,RNDOCS: These variables contribute to the set of conflicting constraints:
state variables:
ch_id (2) [../tb/chnl/chnl_data_sequence.sv, 5]
data_size (32) [../tb/chnl/chnl_data_sequence.sv, 8]
pkt_id (2) [../tb/chnl/chnl_data_sequence.sv, 4]
rand variables:
ch_id [../tb/chnl/chnl_trans.sv, 5]
data[0] [../tb/chnl/chnl_trans.sv, 4]
pkt_id [../tb/chnl/chnl_trans.sv, 6]
UVM_WARNING ../tb/./chnl/chnl_data_sequence.sv(39) @ 1145: uvm_test_top.env.chnl_agts[2].sequencer@@mcdf_data_consistence_basic_virtual_sequence.chnl_data_seq [RNDFLD] Randomization failed in uvm_do_with action
UVM_INFO ../tb/./chnl/chnl_data_sequence.sv(41) @ 1145: uvm_test_top.env.chnl_agts[2].sequencer@@mcdf_data_consistence_basic_virtual_sequence.chnl_data_seq [chnl_data_sequence] pkt_id data is 'h00000003
UVM_INFO ../tb/./chnl/chnl_data_sequence.sv(42) @ 1145: uvm_test_top.env.chnl_agts[2].sequencer@@mcdf_data_consistence_basic_virtual_sequence.chnl_data_seq [chnl_data_sequence] ---------------------------------------------------------------------------------------------------------------------------------------
|