Is it possible to re-configure the uvm_env on the fly from test as we re-configure the DUT?

Hello All,

Scenario:

a. My DUT[IP] can work in two different mode, say X and Y but it can only work in one mode at a time.
b. So I configure the DUT in Mode X and I enable the block.
c. And If I want to switch to other mode, I disable the block and re-configure to mode Y and enable the block again.

Like wise, is there by any chance can I re-configure my TB environment ?

Bcoz for Mode X I choose to use one register model and for Mode Y I choose to use another register model and this is done during the environment building.

So, like I re-configure my DUT from the test on the fly, can I as well re-configure my TB on the fly ? So that I can switch b/w different uvm_env configuration from the test !!

Any Suggestion/ideas/experience is highly appreciated !!!

Thanks !!

Without knowing what your modes are, and we really don’t need to know what they are, this should be possible by constructing both register models, and selecting which ones you access dynamically, just as your DUT does.

In reply to dave_59:

Thanks a lot Dave !! Appreciate your comments !! Gonna try some tweaks & see how it goes !!

Regards,
Desperado

In reply to desperadorocks:

may be using the phase jump is a better idea, yes i am not sure what each modes does but seems doing a phase jump to say configure phase and making the changes according to new mode is better i guess.