Functional Verification
Functional Verification
Anantharaj TV
Staff ASIC Verification Engineer
SanDisk India
Bangalore
Disclaimer
JACK KILBY
Agenda
?
6 09/07/2013 Functional Verification
Architecture Design
Levels of Abstraction
What is Verification?
Agenda PART I
What do we verify?
Technology Cycle
Technology Cycle
Agenda PART I
Verification Complexity
Verification Gap
Effective Implementation
Visible Functionality
Parallelism
Higher Level of Abstraction
Automation
Types of Verification
Formal Verification
Logic or Functional Verification
Formal Verification
•Mathematically proves both the input & output are logically equivalent,
that the transformation preserved its functionality
•Compares Boolean & Sequential logic functions, without mapping any
technology specifications.
Model Checking
Is Testing a Verification?
Is Testing a Verification?
Verification Challenges
Bugs Rate
Any Q’s?
Verification Tools
Code Reviews
Simulators
01110101010100000000011101011011011110111
test as exhaustive
suite as possible
61 09/07/2013 Functional Verification
Types of Simulators
Event Driven
– Only executes a model when any of the input
changes (retains old state of response)
– Improved simulator efficiency
Cycle Based
Co-Simulators
Code Coverage
Path Coverage
Functional Coverage
Coverage Feedback
Coverage Comparison
Monitor progress.
More tests?
81 Direct simulation09/07/2013
towards unexplored areas.
Functional Verification
Agenda PART II
Verification Measurability
Verification as a Hypothetical Testing!
Verification Tools
– Linting
– Code Reviews
– Simulators
– Code Coverage
– Functional Coverage
– HVLs
82 09/07/2013 Functional Verification
Hardware Verification Languages
(HVLs)
Languages:
– System Verilog from Accellara IEEE
– e/Specman from Verisity
– Vera from Synopsys
Assertions:
– Property Specification Language (PSL)
– System Verilog Assertions (SVA)
Revision Control
Agenda PART II
Verification Measurability
Verification as a Hypothetical Testing!
Verification Tools
– Linting
– Code Reviews
– Simulators
– Code Coverage
– Functional Coverage
– HVLs
– Revision Control
– Issue tracking
– BFMs
Levels of Verification
90 09/07/2013 Functional Verification
Levels of Verification
Verification Strategy
Directed Verification
10
0 09/07/2013 Functional Verification
Test Bench
Module Instance:
Device
Under
Verification
(DUV)
10
2 09/07/2013 Functional Verification
Test Bench Approaches
10
3 09/07/2013 Functional Verification
Visual Inspection
Test bench
Device
Waveform Viewer
Stimulus under
OR
Generator Verification
Text Output
(DUV)
10
4 09/07/2013 Functional Verification
Output Comparison
Test bench
“Gold”
Vectors
Reference
Model
Output Error/Status
Comparator Messages
Device
Stimulus under
Generator Verification
(DUV)
10
5 09/07/2013 Functional Verification
Self-Checking
Test bench
Input Signals
Output
Signals
Device Error/Status
Stimulus under Output
Checker Messages
Generator Verification
(DUV)
10
6 09/07/2013 Functional Verification
Any Q’s?
10
7 09/07/2013 Functional Verification
E-Mail ID:
[email protected]
[email protected]
10
8 09/07/2013 Functional Verification