1.topics
event:主要实现握手
semaphores:共享资源管理
mailboxes:类似FIFO,传输数据时可以作为缓存
event:用->触发事件,用@触发事件。
SV里面event主要用于同步,类似于用于传递的句柄,而不需要创建global的event。
->触发时不会阻塞其它线程,触发事件是一次性的。
@等待事件触发,会阻塞后续block执行。
wait(xx.triggered) 等待xx事件触发。
ev:类似事件的句柄
tr = new;产生实体
assert(tr.randomize);对object初始化
将输入mailboxes的实体generator和输出实体driver联系起来。
mbx = new;
gen = new(mbx);
drv = new(mbx);
设置Mailboxes的深度,默认是没有上限的。
非同步的线程,
用握手信号进行同步。
2.testtbenh 和testbench的通信
组件间的通信用IPC组件:event,semahpores,mailboxes。