sv中的std::都有哪些作用?
时间:10-02
整理:3721RD
点击:
assert ( std::randomize(read_tr_max_num) with {read_tr_max_num inside {[1:sequental_tr_max_num]};} );
我知道这句的意思是read_tr_max_num的取址范围是 [1:sequental_tr_max_num],想请教的是:
std::这个语法是怎么用的呢,sv的LRM里在多个章节中出现,有点理不清楚了。O(∩_∩)O谢谢~!
BTW: 请问这个约束是什么意思呢:
constraint select_tread { !(curr_tread_num inside {disable_tread_num}); }
constraint select_tread { !(curr_tread_num inside {disable_tread_num}); }
约束curr_tread_num为disable_tread_num指定列表之外的值,找本sv的书看看就有了
std::这个我猜是个类库引用,randomize是它提供的一个function
std是systemverilog的内建包,定义了一些class、task、function和变量
常用的有:
function int randomize(...);
class semaphore;
class mailbox;
class process;
多谢,看看
这约束很简单啊,
就是 括号里面的表达式为假,也就是说, curr_tread_num的值不等于disable_tread_num中的任何一个。
BTW: 请问这个约束是什么意思呢:
constraint select_tread { !(curr_tread_num inside {disable_tread_num}); }