Professional Documents
Culture Documents
04 Verify PDF
04 Verify PDF
Outline
l
l
l
l
Verification Overview
Verification Strategies
Tools for Verification
SoC Verification Flow
What is Verification ?
l
Specification
Verification
Netlist
Source : Writing Test Benches Functional Verification of HDL Models by Janick Bergeron, KAP, 2000.
Verification Problems
l
l
l
l
HW Design
Specification
Verification
Manufacturing
Netlist
Testing
Silicon
Source : Writing Test Benches Functional Verification of HDL Models by Janick Bergeron, KAP, 2000.
An Industrial Example
Extended Simulation
System Simulation
Equivalence Checking
ASIC Testbenches
Emulation Support
Emulation Software
Verification
Design
BEH Model
Bottleneck !!
High Level Design
Timing
Analysis
DFT
Source : Functional Verification on Large ASICs by Adrian Evans, etc., 35th DAC, June 1998.
Verification Complexity
l
transitions
l
new bug
We have no idea!!
l
Functional
Purgatory
testing
Tapeout
p
e
r
w
e
e
k
Weeks
10
Error-Free Design ?
l
Reference Book
l
System-on-a-Chip Verification
Methodology and Techniques
by
Prakash Rashinkar
Peter Paterson
Leena Singh
Cadence Design Systems Inc., USA
published by
Kluwer Academic Publishers, 2001
12
Outline
l
l
l
l
Verification Overview
Verification Strategies
Tools for Verification
SoC Verification Flow
13
Verification Approaches
l
14
Locality
15
Verification Environment
Testbench
Input Pattern
(Stimulus)
Design
under
Verification
Output
(Response)
DUV
16
Terminology
l
Verification environment
Commonly referred as testbench (environment)
Definition of a testbench
A verification environment containing a set of
testbenches
17
Testbench Design
l
l
18
Random testing
Try to create scenarios that engineers do
not anticipate
l
Functional testing
User-provided functional patterns
l
l
l
Compliances testing
Corner case testing
Real code testing (application SW)
Avoid misunderstanding the spec.
19
Regression testing
Ensure that fixing a bug will not introduce
another bug(s)
Regression test system should be automated
Add new tests
Check results and generate report
Distribute simulation over multiple computer
Bug Tracking
l
21
22
# of bugs reported
10
12
Time
23
Adversarial Testing
l
methodologies
l
Verification Plan
l
l
is successfully complete
25
26
Outline
l
l
l
l
Verification Overview
Verification Strategies
Tools for Verification
SoC Verification Flow
27
Simulation
Event-driven:
Timing accurate
Cycle-based:
Faster simulation time (5x 100x)
Transaction-based:
Require bus functional model (BFM) of each
design
Only check the transactions between components
Have faster speed by raising the level of
abstraction
28
Event-Driven Simulation
l
l
l
Timing accurate
Good debugging environment
Simulation speed is slower
Schedule
New
Events
More events
for this time
Advance
Time
Get
Current
Event
Event
Evaluation
Propagate
Events
N
N
Time wheel
empty
Finish
29
Cycle-Based Simulation
l
Clock
Input
Output
Simulation-Based Verification
l
Test cases
User-provided (often)
Randomly generated
Near-term improvements
Faster simulators
Code coverage
Qualify a particular test suite when applied to a
specific design
Verification Navigator, CoverMeter,
l
simulation
Verilog-A, VHDL-A,
32
Coverage-Driven Verification
l
purgatory
release
Rateof
dugsfound
withcoverage
withoutcoverage
Time
source : Verification Methodology Manual For Code Coverage In HDL Designs by Dempster and Stuart
34
Coverage Analysis
l
Analysis Results
n
36
Testbench Automation
l
38
Available simulators:
Cadence
Antrim
Mentor
Synopsys
39
Static technologies
Lint checking:
HDL Linter
l
Inspection
l
What is STA ?
l
l
FF1
FF2
CLK
Reference :Synopsys
43
Formal Verification
l
Equivalence Checking
Synthesis
RTL or Netlist
RTL or Netlist
Equivalence
Checking
l
Gate-level to gate-level
Ensure that some netlist post-processing did not change the
RTL to gate-level
Verify that the netlist correctly implements the original RTL code
RTL to RTL
Verify that two RTL descriptions are logically identical
45
Equivalence Checking
l
Verysys,
l
Model Checking
RTL Coding
Specification
RTL
Interpretation
Assertions
Model
Checking
Model Checking
l
Verysys,
l
New Approaches
l
Hardware modeling
Pre-developed simulation models for other
hardware in a system
Smart Model (Synopsys)
l
Emulation
Test the system in a hardware-liked fashion
Rapid prototyping
FPGA
ASIC test chip
50
Assistant Hardware
l
Rule of thumb
10 cycles/s for software simulator
1K cycles/s for hardware accelerator
100K cycles/s for ASIC emulator
Hardware accelerator
To speed up logic simulation by mapping
51
Emulation
l
Emulation
Verify designs using real hardware (like FPGA?)
Better throughput in handling complex designs
Inputs should be the gate-level netlist
Synthesizable testbenches required
Require expensive emulators
Software-driven verification
Verify HW using SW
Verify SW using HW
Prototyping
l
FPGA
Performance degradation
Limited design capacity (utilization)
Partitioning and routing problems
Emulation system
FPGA + Logic modeler
Automatic partitioning and routing under
EDA SW control
More expensive
53
Limited Production
l
l
l
Source : System-on-a-chip Verification Methodology and Techniques by P. Rashinkar, etc., KAP, 2001.
55
Outline
l
l
l
l
Verification Overview
Verification Strategies
Tools for Verification
SoC Verification Flow
56
Source : System-on-a-chip Verification Methodology and Techniques by P. Rashinkar, etc., KAP, 2001.
57
58
Interesting Observations
l
software)
l
Interface Verification
l
Inter-block interfaces
Point-to-point
On-chip bus (OCB)
Simplified models are used
BFM, bus monitors, bus checkers
60
real world
l
61
Solutions
Move to a higher level of abstraction for
Hardware accelerator
ASIC emulator
Rapid-prototyping(FPGA)
Logic modeler
62
HW/SW Co-Simulation
l
Simulator (ISS)
A Bus Interface Model (BIM) converts software
operations into detailed pin operations
l
l
l
System-Level Testbench
l
Source : System-on-a-chip Verification Methodology and Techniques by P. Rashinkar, etc., KAP, 2001.
64
Timing Verification
l
65
Design Sign-off
l
Source : System-on-a-chip Verification Methodology and Techniques by P. Rashinkar, etc., KAP, 2001.
66
Traditional Sign-off
l
Problems
Infeasible for million gates design (take too much
simulation time)
Fault coverage is low (60% typically)
Critical timing paths may not be exercised
67
68