How to "start" the sequence/s?

In reply to dave_59:

Dave,

I aware that seq_lib is not mandatory for this test. I have another seq_lib_test, which is using seq_lib (randomly selecting sequences in different order).

Yes, I agree “global_stop_request()” added for no reason. I was explaining that to my peer, but forgot to comment it out here.

But I did not understand “no reason” for raise/drop objection. I have added raise/drop objection in pre/post body of each sequences, to hole the control from the sequences.

Here I have cases as below…
Case 1:

  1. raise objection from uvm_test run_phase
  2. raise objection from seq1
  3. raise objection from seq2
  4. drop objection from seq2
  5. drop objection from seq1
  6. drop objection from uvm_test run_phase

Case 2:

  1. raise objection from uvm_test run_phase
  2. raise objection from seq1
  3. drop objection from seq1
  4. some delay
  5. raise objection from seq2
  6. drop objection from seq2
  7. drop objection from uvm_test run_phase

Case 3:

  1. raise objection from uvm_test run_phase
  2. raise objection from seq1
  3. raise objection from seq2
  4. drop objection from seq1
  5. drop objection from uvm_test run_phase
  6. drop objection from seq2

Case 4:

  1. raise objection from uvm_test run_phase
  2. raise objection from seq1
  3. drop objection from seq1
  4. drop objection from uvm_test run_phase
  5. <seq2 did not started yet, but test done>

How to achieve above scenarios??

At present, I’m using random delay (#1000;) from the test.

sometimes, sequence/s did not start, till end of delay, and test ends.

John