Академический Документы
Профессиональный Документы
Культура Документы
Introduction to Verification
Fall 2011
Meeta Yadav
Cost
Verification
Systems
Test
Time
Customer
45 nm ASIC
Error occurred due to omission of entries and was hard to detect since
only 1 in 9 billion calculations were affected
* http://www.maa.org/mathland/mathland_5_12.html
** http://www.cnn.com/WORLD/9606/04/rocket.explode/
Verification Trends
Principle contributors:
- Functional bugs
- Clocking related bugs
IC/ASIC Designs Requiring Re-Spins by Type of Flaw
Logic/Functional
Clocking
Tuning Analog Circuit
Fast Path
Yield/Reliability
Delays/Glitches
Slow Path
Mixed-Signal Interface
Power Consumption
IR Drops
Firmware
Other
0%
20%
40%
60%
80%
100%
Verification
Verification
6
2011, Meeta Yadav
Design
Gap
Ability to Fabricate
Ability to Design
7
2011, Meeta Yadav
Traffic Controller
Design description
Main Street
Elm Street
Traffic Controller
Algorithm Implemented
Wait 60
seconds
no
no
Is there a problem
with the design?
yes
yes
Main St.
turns green
Elm St.
turns green
Functional Verification
Customer
requirements
General
specification
and architecture
High level
chip design
HDL
implementation
at RTL level
Physical circuit
design via
synthesis
Functional
verification
Fixes to
HDL
Fabricated Chip
10
Functional Verification
A well-verified chip reduces cost by
avoiding:
Re-fabrication
Re-calls
Customer
requirements
Customer
General
specification
and architecture
High level
chip design
Manufacturing
HDL
implementation
at RTL level
Timing Analysis
Physical circuit
design via
synthesis
Fixes to
HDL
Functional
verification
Fabricated Chip
System Testing
Source: Will, Goss, Roesner:
Comprehensive Functional
Verification: Elsevier
2011, Meeta Yadav
Design Process
11
Cost
Cost of Bugs
Verification
Systems
Test
Customer
Time
12
Verification Productivity
Number of Bugs
Productivity improvements
drive early problem discovery
Verification
Systems Test
Time
13
Generate stimulus
Apply stimulus to the Design Under Test (DUT)
Capture the response
Check for correctness
Measure the progress against the overall verification goals
Correctness Check
Design
Under
Test
Response
Capture
Golden Model
Stimulus
Application
Stimulus Generation
14
Coverage
100%
Directed
Test
Time
Directed Test Progress
15
Covered
Features
Uncovered
Features
Bug
Directed Test Coverage
16
Randomization
Why Randomize?
interface)
Recovery from errors in system states
17
Coverage
100%
Random
Test
Directed
Test
Time
More time to write
Constrained random tests
18
New Area
?
Test Overlap
Directed
testcase
? ?
19
Coverage Convergence
How do we achieve coverage convergence?
Finally:
Constrained Random
Tests
Add
constraints
Directed
Tests
Minimal Code
Modifications
Many runs
different seeds
Functional
Coverage
Identify
holes
20
Coverage Feedback
For a large verification space consider coverage feedback
Directed tests
21
Assertions:
Captures Designer Intent
2. Allows protocols to be defined and verified
3. Reduces time to market
4. Greatly simplifies the verification of reusable IP
5. Facilitates functional coverage metrics
1.
22
System Integration
Bugs
Block Design
Ship
Ship much
earlier with less
risk and cost
Upfront Cost
Time to Market
Time
23
Testbench:
24
Enables reuse
25
Levels of Verification
System
System
level
Board
Board
level
Peripheral
Backplane
Processor
Local
memory
Bus
arbiter
Memory
Node
PCI
controller
South
bridge
Peripheral
Chip
level
DMA
Cache
ALU
FPU
Unit
level
Designer
level
Memory
Access unit
Memory
Bus Snoop
Unit
26
Bugs
Time
Designer
Unit
Chip
System
Lower levels of verification tend to uncover more bugs since they occur earlier
in the design cycle and because verification of each designer or unit level occurs in
parallel with the others. It is a good practice to wait until the bug rate begins to drop
in the low levels before moving to the next level
27
Thank You
28