In reply to ce_2015:
I don’t see the rror you quoted.
See Edit code - EDA Playground
The Ending Thread 1 does not occur
module top;
event an_event;
initial begin
myfunction();
#5ns;
->an_event;
$display("@ %t an_event", $realtime);
#100ns;
end
function void myfunction();
fork
begin : THREAD_1
$display("Thread_1 start");
#10ns;
$display("Ending Thread 1");
end : THREAD_1
begin : THREAD_2
wait(an_event.triggered);
$display("Thread_2 start");
// wait(an_event.triggered);
disable THREAD_1;
$display("End Thread_2 start");
end : THREAD_2
join_none
endfunction
endmodule
// ---------------------SIM results
Thread_1 start
@ 5 an_event
Thread_2 start
End Thread_2 start
Ben Cohen
http://www.systemverilog.us/ ben@systemverilog.us
For training, consulting, services: contact Home - My cvcblr
- SVA Handbook 4th Edition, 2016 ISBN 978-1518681448
- A Pragmatic Approach to VMM Adoption 2006 ISBN 0-9705394-9-5
- Using PSL/SUGAR for Formal and Dynamic Verification 2nd Edition, 2004, ISBN 0-9705394-6-0
- Real Chip Design and Verification Using Verilog and VHDL, 2002 isbn 978-1539769712
- Component Design by Example ", 2001 ISBN 0-9705394-0-1
- VHDL Coding Styles and Methodologies, 2nd Edition, 1999 ISBN 0-7923-8474-1
- VHDL Answers to Frequently Asked Questions, 2nd Edition ISBN 0-7923-8115