Part 4 answers: How do we drive the design into the states that matter?
Directed tests check the cases someone thought of. Random tests find the cases nobody thought of, but only the common ones; rare corners stay rare. Constrained random puts the randomness inside the legal space, and shaping the distribution pushes it towards corners without losing breadth.
This part builds the arithmetic behind stimulus choices (the coupon collector, the long tail of rare events), then covers layered scenarios, error injection, randomised timing and back-pressure, seeds and regressions, and when a directed test is still the right answer.
Explain when directed, random and constrained-random stimulus each win.
Estimate how long random stimulus takes to reach a rare corner.
Design constraints and distributions that reach corners without losing breadth.
Answer each in your head before opening it. If two or more feel shaky, revisit Part 3: Observability and Controllability first.
Activation (the stimulus triggers it), propagation (the wrong value reaches somewhere visible) and detection (a check notices).
They tie the testbench to one implementation and break on legal design changes.
It bypasses the real path, so bugs on that path go unexercised.
# | Lesson | Level | Status |
|---|---|---|---|
4.1 | F · Foundation | Ready | |
4.2 | W · Working | Ready | |
4.3 | W · Working | Ready | |
4.4 | S · Senior | Ready | |
4.5 | S · Senior | Ready | |
4.6 | S · Senior | Ready | |
4.7 | S · Senior | Ready | |
4.8 | S · Senior | Ready | |
4.9 | W · Working | Ready | |
4.10 | S · Senior | Ready | |
— | all levels | Ready |
Every lesson in this part is ready. Work through them in order: each one sets up the problem the next one solves.
This course teaches the decisions behind verification. These lessons teach the tools and syntax that carry them out, so this part links to them instead of repeating them.