For loop inside fork join does not finish full number of iterations

Hi

I have fork join processes as below :

fork
begin
   for loop_1; //finishes
end 

begin
   for loop_2; //does not finish
end 
join_none

The 2nd for-loop does not finish but simulation proceeds and exits simulation.

How can I make sure for loop 2 finishes before the statements after join_none are executed and simulation exits?

I tried wait fork, but that did not help.

Please help.
Thank you.

In reply to UVM_learner6:

wait fork should have worked. You could also try using a simple join instead of join_none. But those should have the exact same functionality given the code shown.

In reply to dave_59:

In reply to UVM_learner6:
wait fork should have worked. You could also try using a simple join instead of join_none. But those should have the exact same functionality given the code shown.

Hi Dave,

Could you please point me to comprehensive paper/link on “fork” in systemverilog? fork + all options?
(never feel confident enough that I know how it actually works).

Thanks.

In reply to UVM_learner6:

See section 9.3.2 Parallel blocks in the IEEE 1800-2017 SystemVerilog LRM.