We discussed the following types of simulation (from high level to low level):
Behavioral simulation includes no timing information and can tell you only if your design will not work.
Prelayout simulation of a structural model can give you estimates of performance, but finding a critical path is difficult because you need to construct input vectors to exercise the model.
Static timing analysis is the most widely used form of simulation. It is convenient because you do not need to create input vectors. Its limitations are that it can produce false paths—critical paths that may never be activated.
Formal verification is a powerful adjunct to simulation to compare two different representations and formally prove if they are equal. It cannot prove your design will work.
Switch-level simulation is required to check the behavior of circuits that may not always have nodes that are driven or that use logic that is not complementary.
Transistor-level simulation is used when you need to know the analog, rather than the digital, behavior of circuit voltages.
There is a trade-off in accuracy against run time. The high-level simulators are fast but are less accurate.
[ Chapter start ] [ Previous page ] [ Next page ]