SVA · Medium · SystemVerilog

One-Cycle Pulse Width

Assert that done is never high for two consecutive cycles.

Task

If done is high now, it must be low on the next sampled cycle.

Examples

Constraints

What this problem is testing

SVA questions test temporal reasoning: exactly when signals are sampled, overlapped versus non-overlapped implication, reset disabling, and whether an assertion can pass vacuously.

Interview habit: before coding, state reset behavior, the state that must be stored, and the conditions that update each output.

Verification plan

Common mistakes

Interview follow-up questions

Concepts to review

sva, pulse, temporal

Open One-Cycle Pulse Width in the HDLForge interactive editor.

Related problems

Explore the SystemVerilog Assertions (SVA) Practice hub.

Continue practising