Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutRoadmapCareersInternshipsFAQContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Paths
  • Glossary
  • Metrics Reference
  • Formal Cheat Sheet
  • Formal Foundations19
    • Formal versus Simulation
    • Transition Systems, Invariants and the Three Property Roles
    • Reset, Initial State and the First Cycle
      • Free Initial State and the Reset Sequence
      • Past at the First Cycle
      • Asynchronous Reset and Disable Iff
    • Cone of Influence
    • The Formal Tool Flow, Vendor-Neutral
  • Properties and SVA16
  • Property Development and Constraints19
  • Proof Engines and Convergence23
  • Formal Applications20
  • Equivalence Checking14
  • Formal Coverage and Signoff15
  • Methodology and Debug13
  • Interview Prep15
  • Capstone: A Chip-Block Verification Lab24
Loading lesson

←Formal Foundations
  1. Topics
  2. Formal Verification
  3. Formal Foundations
  4. Reset, Initial State and the First Cycle

Part 1 of 10Part 1 of 10/Formal FoundationsAll levels

Reset, Initial State and the First Cycle

One reset sequence at the start, a guarded first cycle, and reset-aware properties that check the right edge.

  • 3topics
  • 3lessons

Proofs do not start where simulation starts. Unless told otherwise, every register begins in an arbitrary state, history from before cycle 0 does not exist, and reset is just another input. This topic builds the harness that tames the first cycles: one reset sequence at the start, a history gate for properties that look back, and reset-aware checks that catch wrong reset values instead of disabling through them.

Lesson

After it you can...

Free Initial State and the Reset Sequence

Write a harness with one reset sequence and read failures that start in impossible states.

Past at the First Cycle

Gate history reads so the first cycle and mid-run resets never lie.

Asynchronous Reset and Disable Iff

Use disable iff without masking reset-time bugs, and state the async modelling caveat.

Suggested order: top to bottom. The first lesson fixes the start of time, the second fixes the first history read, and the third fixes the reset-active window.

Step 0 is an arbitrary power-up state with reset asserted. Step 1 is the first state after the reset edge and the first step that assertions check. After that inputs, including reset, stay free for the whole run.
The harness timeline: an arbitrary power-up state with reset asserted, then the first state after reset, the first checked step and the free run.
Check yourself Why does the harness assert reset at step 0 instead of leaving the start free?

A free start includes states reset can never produce, so a good design fails on impossible traces; constraining step 0 to reset models power-up honestly.

Related topics

  • Earlier: State, Inputs and the Transition Relation

  • Later: K-Induction

PreviousNext: Free Initial State and the Reset Sequence

Up next

Up nextFree Initial State and the Reset Sequence

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • Formal versus Simulation
  • Transition Systems, Invariants and the Three Property Roles
  • Cone of Influence