Advanced Verification Techniques For DO-254
Advanced Verification Techniques For DO-254
Agenda
Some background
Advanced Verification Techniques
Compliance
Hardware
(Software)
UK - 2008
France - 2012
China
South Korea
India - 2011
Consistent
revenue
growth
2011-12
1.5M
2013-14
3.5M
2014-15
4M+
Continuous
geographical
Singapore - 2014 expansion
2012-13
2.5M
Broadcom
2 years
Infineon
5 years
Intel
2 years
NVIDIA
4 years
NXP
2.5 years
ST
3 years
Constrained Random
Verification Functional Coverage
it's all about
confidence
Code Coverage
Mike Bartley,
Formal Verification
SNUG 2001
Regression results metrics
Bug rate analysis
Analysis of open issues
Code review completion
Which ones to adopt?
Mutation analysis
Software running
Independent verification team
Are all requirements verified?
Copyright TVS Limited | Private & Confidential | Page 6
Specification
RTL Coding
Interpretation
Interpretation
RTL
Verification
RTL Coding
Specification
Interpretation
RTL
Verification
Copyright TVS Limited | Private & Confidential | Page 7
37%
Assertions
69%
Constrained-Random
Simulation
41%
64%
2007
2010
48%
Code coverage
72%
Listen to the
2012 survey
Harry Foster at
DVClub April
8th
40%
Functional coverage
72%
0%
10%
20%
30%
40%
50%
60%
70%
80%
35%
29%
30%
2007
2010
25%
19%
The adoption of
formal property
checking has
grown by 53%
20%
15%
10%
5%
0%
2007
2010
Copyright TVS Limited | Private & Confidential | Page 8
Test
Coverage
Checker
Monitor
constraint
addr
Assertions
data
Stimulus
generator
Driver
Design
Under
Test
assert
Coverage
Active
Passive
Code Coverage
Checker
Coverage
Monitor
Assertions
Existing
Test
Bench
Design
Under
Test
Active
assert
Passive
Existing
Test
Bench
Coverage
Code
Coverage
Effort
Value
Code
Coverage
Functional
Coverage
Assertions
Checker
Constrained
random
Very high
Stimulate
Propagate
..01010101
01100101..
..01001101
11110101..
00010101..
..10011010
..01001101
Mutation testing
adds value in terms
of test suite
qualification.
Actual
Results
Expected
Results
Observe
Compare
Effort
Value
Code
Coverage
Functional
Coverage
Assertions
Checker
Constrained
random
Very high
Mutation
Analysis
FPGA
FPGA
PCIe
PCIe
Into
the
lab
Simulation
VIP
FPGA
PCIe
PCIe
hard
ware
FPGA
PCIe
VIP
Code
Analysis
Dynamic
Formal
Simulation Prototyping
Dynamic Formal
Linters
Equivalence
Checking
Silicon
FPGA
Model
Checking
Theorem
Proving
Emulation
A liveness
property
Copyright TVS Limited | Private & Confidential | Page 17
For example
Usually RTL
A property or set of
properties representing the
requirements
Failed(n)
there is at least one valid sequence of inputs of length n cycles, as
defined by the design clock, for which the property does not hold.
In this case, the tool gives a waveform demonstrating the failure.
Most algorithms ensure that n is as small as possible, but some more
advanced algorithms dont.
Explored(n)
there is no way to make the property fail with an input sequence of n
cycles or less
For large designs, the algorithm can be expensive in both time and
memory and may not terminate
Copyright TVS Limited | Private & Confidential | Page 19
Full proof
Of the properties under the given constraints
(Can also prove completeness of the properties)
Corner cases
Find any way in which a property can fail (under the constraints)
False proofs
Bugs may be missed in an over-constrained environment.
Safety-critical Systems
A safety critical system is a system where
human safety is dependent upon the correct
operation of the system
Elements of safety critical systems:
Computer hardware
Other electronic and electrical hardware
Mechanical hardware
Operators or users
Software
Safety Standards
IEC61508: Functional Safety of
Electrical/Electronic/Programmable Electronic Safety-related
Systems
IEC60880: Software aspects for computer-based systems
performing category A functions
DO178: Software considerations in airborne systems and
equipment certification
DO254: Design Assurance Guidelines for Airborne Electronic
Hardware
EN50128: Software for railway control and protection systems
IEC62304: Medical device software -- Software life cycle
processes
ISO26262: Road vehicles Functional safety
Copyright TVS Limited | Private & Confidential | Page 23
Safety Standards
A closer look
Hardware Verification Plan
The hardware verification plan describes the procedures,
methods and standards to be applied and the processes and
activities to be conducted for the verification of the
hardware items.
Requirements
Stakeholder Requirements
(Customers and internal)
Upstream
Downstream
Product Requirements
Safety Requirements
Intent to
implement
System and Module Specs
Intent to
verify
Proof of
implementation
Feature Level
Requirements
(Top-Level test Plan)
Refined
requirements
(sub-features)
Req1.1
Refined
requirements
(sub-features and
goals)
Req1.1.1
Measurable goals
Goal1.1.1.1
Goal1.1.1.2
Req1.1.2
Req1
Req1.2.1
Goal1.1.2.1
Req1.2
Goal1.2.2
Goal1.2.1.1
Coverage
Code, functional and assertion
Checkers
Dynamic and Static
Proofs
Need to automate
Test pass and fail
Coverage collection and reporting
Checker pass and fail
Require
ments
DB
UCIS API
Test
Plan
Doors
Require
ments
DB
UCIS API
Doors
Test
Plan
This is
VERY hard
(DXL?)
Can be done.
But hard to update
with results
Copyright TVS Limited | Private & Confidential | Page 33
Doors
Require
ments
UCIS API
DB
This is
Done
asureSIGN
Test
Plan
DB
Can be done
easily in
asureSIGN
Copyright TVS Limited | Private & Confidential | Page 34
Summary
Contact details
Mike Bartley
[email protected]
Mobile: +44 (0) 7796 307958
Fax: 0117 903 9001