|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
有没有放假依然坚持在一线的大佬,能不能解释下,下面这段宏定义什么意思,把这个宏定义去掉应该怎么写呢
`DV_CHECK_RANDOMIZE_WITH_FATAL(instr_list[i],
// The last instruction cannot be branch instruction as there's no forward branch target.
if((i == instr_list.size() - 1) || no_branch) {
category != BRANCH ;
}
if(no_load_store) {
!(category inside {LOAD, STORE});
})
// Shorthand for common foo.randomize() with { } + fatal check
`ifndef DV_CHECK_RANDOMIZE_WITH_FATAL
`define DV_CHECK_RANDOMIZE_WITH_FATAL(VAR_, WITH_C_, MSG_="Randomization failed!", ID_=`gfn) \
`DV_CHECK_FATAL(VAR_.randomize(), MSG_, ID_, with { WITH_C_ })
`endif
`ifndef DV_CHECK_FATAL
`define DV_CHECK_FATAL(T_, MSG_="", ID_=`gfn, WITH_C_=) \
`DV_CHECK(T_, MSG_,fatal, ID_, WITH_C_)
`endif
`ifndef DV_CHECK
`define DV_CHECK(T_, MSG_="", SEV_=error, ID_=`gfn, WITH_C_=) \
if (!(T_ WITH_C_)) begin \
`uvm_``SEV_(ID_, $sformatf("Check failed (%s) %s ", `"T_`", MSG_)); \
end
`endif
看了好久都没能搞出来,哪位大佬能解释解释,感谢。
|
|