Why is the @data not triggered on a value change?

In reply to rag123:

You have 2 forked tasks in parallel. The change in data is not detected in the begin-end task.
Try:


fork 
      my_first_task (addr,data);
 
      begin
        #1; 
        @ $changed(data);
        $display ("Read from bus %h \n",data);
      end join

Ben SystemVerilog.us