How to identify type of a sequence in driver?

In reply to Varunshivashankar:

1.) I haven’t done it, but you can get the sequence name from the sequence item (see uvm_sequence_item.get_parent_sequence() and .get_full_name() in Class Ref Manual). I think you are taking the wrong approach. It is not good to make the sequences complex, let the driver handle it (it’s only one component compared to many sequences). You can put anything (i.e. including switches to control the driver) in the uvm_sequence_item. Give the driver all the data and control that it needs to manage interaction with DUT. Every testbench is different and it is impossible (based on the info that you have provided) to say what is the best approach (i.e. how many agents you should have and what each agent is responsible for).

2.) Reset sequence could indicate to the ‘driver’ that it should assert reset for N cycles, where N could be randomized in the sequence. You may consider a separate reset agent if that makes it easier to control (e.g. asserting reset why other drivers are active).