systemverilog fork join入坑问题1

Posted DreamCll

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了systemverilog fork join入坑问题1相关的知识,希望对你有一定的参考价值。

  error code
fork 
    ...
join_any
disable fork;

  如果需要在fork-join_any后使用disbale fork,为了防止误杀线程,需要添加fork begin - join将原代码保住

  right code
fork begin
    fork 
      ...
    join_any
    disable fork;
  end
join

比如在task中存在disable fork,且tash_inst被并行执行两次

fork
  task_inst(0);
  task_inst(1);
join

其中task_int(0)早于task_inst(1)完成,那么当调用task_inst(0)完成时,会将task_inst(1)误杀

以上是关于systemverilog fork join入坑问题1的主要内容,如果未能解决你的问题,请参考以下文章

验证&system verilog笔试题

浅谈 Fork/Join

多线程 fork/join 并行计算

线程基础:多任务处理(13)——Fork/Join框架(解决排序问题)

JUC系列Fork/Join框架之概览

fork/join框架