Jump to content
Sign in to follow this  
SeanChou

[UVM Regression] How to assign different seed of each run? (single compile)

Recommended Posts

Hi all,

As title. Is assigning a seed something related to methodology or simulator? I did not find something related in the uvm user guide so I tried some simulation option, the results are as follows.

1. when irun, -seed $seed // works

2. when vcs, +ntb_random_seed=$seed // did not work

any good suggestion is welcome and thanks!

Share this post


Link to post
Share on other sites

1. vcs actually works fine with the switch after double check, please forget the previous wrong results.

2. it should be the correct way to assign initail seed with simulator options. this issue is nothing related to methodology.

sorry for the disturbance.

Share this post


Link to post
Share on other sites
Hi all,

As title. Is assigning a seed something related to methodology or simulator? I did not find something related in the uvm user guide so I tried some simulation option, the results are as follows.

1. when irun, -seed $seed // works

2. when vcs, +ntb_random_seed=$seed // did not work

any good suggestion is welcome and thanks!

choosing the simulator root seed is simulator specific and has nothing todo with methodology.

however your commandline suggests that you do choose the seed outside of the simulator call. normally i would use "-seed random" which picks a seed value automatically so you can use the very same command to create different scenarios. ONLY in case of a failing simulation i take the seed value and supply it to "recreate" that particular failing scenario "-seed <somefailingseed>".

it doesnt make sense to:

- choose a particular seed. its impossible to know the scenario created by a seed in advance. (it only makes sense to recreate a scenario using a known seed IF the context has not changed)

- to store/save seeds in order to create particular scenarios AND change the TB/design. The seed might not recreate the same scenario when parts of TB/ENV change. UVM tries to preserve the scenario as long as possible but there is no indication that a scenario is changing. normally you should create a cover point for the required scenario and monitor this as metric of completion.

- carry seeds from one simulator to another. a particular seed generates different scenarios on each simulator (due to different constraint solvers etc)

regards

/uwe

Edited by uwes

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×