FVO — Formal Verification Online
Lesson 1.4 · Welcome to Formal Verification

Where formal fits in a chip project

"Using formal" can mean several quite different activities. It helps to name them, because each has different goals, effort and exit criteria.

SpecRTLSynthesisNetlistSiliconFPV: explore & proveFormal appsEquivalence: RTL ↔ netlistPost-silicon FPV
Formal verification shows up at several points in the flow, not just one.

The main usage models

Usage modelGoalTypical effortCovered in
Design explorationHelp the designer understand and sanity-check fresh RTL using covers and a few assertionsHours to daysChapter 5
Bug huntingFind corner-case bugs in a block that simulation also verifiesDays to weeksChapter 6
Signoff (full proof)Formal is the primary verification of the block; proofs replace simulation testsWeeksChapters 6, 11
Formal appsPush-button flows for specific problems: connectivity, registers, X-propagation, unreachable coverageHours to daysChapter 7
Equivalence checking (FEV)Prove two models (e.g. RTL and netlist) behave identicallyMostly automatedChapter 8
Post-silicon debugReproduce a failure seen in the lab by searching for a trace that matches the symptomsDaysChapter 7

Formal equivalence checking between RTL and gate-level netlists is so mature that almost every chip uses it, often without the RTL team thinking of it as "formal". Property verification and formal apps are where most of the learning curve — and most of the value — lies, and they are the focus of this course.

Was this page helpful?

Tip: select any text on the page before clicking Report and it will be quoted in your report.