Using the multi-step xrun invocation method, you compile your modules using xrun -compile, then you elaborate using xrun -elaborate, which elaborates only newly-compiled modules: If you have not recompiled a module, the elaborator does not re-elaborate it. The third step is to simulate using xrun -R.
When you simulate using a previously-saved snapshot, the simulator (xrun -r) verifies that the snapshot depends on modules that have a time stamp that is earlier than the snapshot itself. You can run the simulator from a previously-saved snapshot as indicated by the following use models:
Use Model 1 (Warm Restart)
- Compile and elaborate to generate snapshot
A. - In SimVision, simulate using snapshot
Afor some time (such as 1000 ns). - Save snapshot
B(save :B). - Exit simulation.
- Re-elaborate the design to generate snapshot
A.
You can run xrun -R using snapshot B. If you run xrun -R using snapshot A at this point, you cannot use Tcl restart l restart to simulate using snapshot B because snapshot A now has a newer timestamp than snapshot B. You can simulate snapshot B only from the xrun -R command line.
Use Model 2 (Cold Restart)
- Compile and elaborate to generate snapshot
A. - In SimVision, simulate using snapshot
Afor some time (such as 1000 ns). - Save snapshot
B(save :B). - Exit simulation.
- Re-elaborate the design to generate snapshot
C.
You can run xrun -R using snapshot B. You can run xrun -R using snapshot A. You can also use Tcl restart to simulate using snapshot B. However, if you run xrun -R using snapshot C at this point, you cannot use Tcl restart to simulate using snapshot B because snapshot C now has a newer time stamp than snapshot B. You can simulate snapshot B only from the xrun -R command line.
