FAQ

  1. What are SVAs?
  2. Does Zazz require a simulation license?
  3. What simulators are supported by Zazz?
  4. Does Zazz support Questa™ Assertion Thread Viewer (ATV)?
  5. Does Zazz Debug support immediate assertions?
  6. Does Zazz support SVAs with local variables?
  7. Does Zazz Debug support multiple clocks?
  8. How does Zazz Debug treat vacuously true assertions?
  9. Does Zazz Debug support “always” blocks?
  10. Does Zazz Debug support “initial” statements?
  11. Does Zazz Debug support user-defined function calls with non-constant arguments?
  12. Does Zazz Debug support weak/strong qualifiers in SVA operators?
  13. Does Zazz Debug support bi-directional property and sequences argument passing?
  14. Does Zazz Debug support propagation of local variable values through arguments?
  15. Does Zazz Debug support Boolean expressions, including “let” syntax?


What are SVAs?
SystemVerilog Assertions are a set of operators and language constructs for describing sequential behavior of a Verilog design. The assertions can be checked during logic simulation, or analyzed statically by formal verification tools.


Does Zazz require a simulation license?
Zazz Debug requires a SystemVerilog simulator in order to generate passing or failing waveforms. Zazz Visual SVA does not require a simulation license to graphically create assertions.


What simulators are supported by Zazz?
Zazz Debug supports Synopsys VCS™, Cadence Incisive™, and Mentor Graphics Questa™ simulators. Zazz can produce waveforms for each simulator’s associated waveform viewer, or it can set up the simulation to produce waveforms for the Springsoft Verdi™ waveform viewer.


Does Zazz support Questa™ Assertion Thread Viewer (ATV)?
Yes, Questa and ATV are supported.


Does Zazz Debug support immediate assertions?
Zazz supports both concurrent assertions, and immediate assertions inside always blocks.


Does Zazz support SVAs with local variables?
Zazz Debug and Zazz Visual SVA both support properties and sequences with local variables.


Does Zazz Debug support multiple clocks?
Yes and no. When producing waveforms for two properties with different clocks, Zazz Debug currently uses the same waveform for both properties. The reason is that for most cases the relationship between the clocks does not impact the passing or failing waveforms for either property, and using different clock periods makes it more difficult to read the waveforms.


How does Zazz Debug treat vacuously true assertions?
There are several settings to control the waveforms Zazz Debug will produce. You can exclude vacuously true sequences, though sometimes it is useful to know that an assertion can be satisfied vacuously.


Does Zazz Debug support “always” blocks?
Yes.


Does Zazz Debug support “initial” blocks?
No. Only concurrent assertions and immediate assertions inside always blocks are currently supported.


Does Zazz Debug support user-defined function calls with non-constant arguments?
Yes.


Does Zazz Debug support weak/strong qualifiers in SVA operators?
No.


Does Zazz Debug support bi-directional property and sequences argument passing?
Yes and no. Properties with arguments are supported, however any interaction of two properties through output arguments will not be reflected in the waveforms.


Does Zazz Debug support propagation of local variable values through arguments?
No (see above).


Does Zazz Debug support Boolean expressions, including “let” syntax?
No.
Back to Top