09/14/17 1 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
High-Level Synthesis
High-Level Synthesis
for On-line Testability
for On-line Testability
P. Oikonomakos and M. Zwolinski
P. Oikonomakos and M. Zwolinski
Department of Electronics and
Department of Electronics and
Computer Science,
Computer Science,
University of Southampton
University of Southampton
Hampshire SO17 1BJ
Hampshire SO17 1BJ
UK
09/14/17 2 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
On-line testing
On-line testing
• flight/space electronicsflight/space electronics
• industrial/automotive electronicsindustrial/automotive electronics • medical electronicsmedical electronics
• deep submicron technologiesdeep submicron technologies
 targets physical system failurestargets physical system failures  detects them while system is detects them while system is
operating
operating
 increases reliability in several increases reliability in several safety-critical applications,
safety-critical applications,
especially in hostile environments,
especially in hostile environments,
e.g.
09/14/17 3 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
High-level synthesis
High-level synthesis
 the designer provides an abstract the designer provides an abstract specification of the
specification of the behaviour of his behaviour of his
conceptual design along with his
conceptual design along with his
constraints and requirements
constraints and requirements
 the synthesis tool is responsible for the synthesis tool is responsible for producing an equivalent
producing an equivalent structural structural description
description
 high-level synthesis offers :high-level synthesis offers :
• fast time-to-marketfast time-to-market
• fast and efficient design space fast and efficient design space
exploration
exploration
• efficient design optimisation at the efficient design optimisation at the
highest level of abstraction
09/14/17 4 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
On-line
testing
High-level
synthesis
High-level
synthesis for
on-line testability
 On-line testing resources will be On-line testing resources will be inserted
inserted automatically automatically by the tool by the tool when the designer requires them
when the designer requires them
 Comparing alternative testing Comparing alternative testing
techniques and choosing the most
techniques and choosing the most
appropriate in each particular case
appropriate in each particular case
will be facilitated.
09/14/17 5 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
On-line testing techniques
On-line testing techniques
 self-checking designself-checking design
 on-line built-in self-test (BIST)on-line built-in self-test (BIST)
 monitoring analogue characteristicsmonitoring analogue characteristics
 In this work, we focus on In this work, we focus on self- self-checking design.
09/14/17 6 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Self-checking design
Self-checking design
 CUT = Circuit Under CUT = Circuit Under Test
Test
 The CUT is augmented The CUT is augmented according to some
according to some error error detecting code
detecting code..
 Error detecting codes Error detecting codes include :
include :
• parity codesparity codes
• duplication codesduplication codes
• several othersseveral others
Augmented CUT
Checker
Error
 Duplication codes Duplication codes form the basis of form the basis of our technique.
09/14/17 7 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Duplication testing
Duplication testing
 CUT* is functionally equivalent to CUT.CUT* is functionally equivalent to CUT.  Fault-secure by nature.Fault-secure by nature.
CUT CUT*
Comparator
Error
09/14/17 8 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Physical vs. Algorithmic
Physical vs. Algorithmic
Duplication
Duplication
Physical duplication Physical duplication
 OperaOperatorstors (hardware modules) are (hardware modules) are physically duplicated
physically duplicated
 Results in more than 100% hardware Results in more than 100% hardware overhead
overhead
Algorithmic duplication Algorithmic duplication
 OperaOperations tions (functions) are (functions) are behaviouraly
behaviouraly duplicated duplicated
 Depending on circumstances, can Depending on circumstances, can result in significant hardware savings
result in significant hardware savings
09/14/17 9 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Inversion Testing
Inversion Testing
 INV(CUT) is the functional “inverse” INV(CUT) is the functional “inverse” of CUT.
of CUT.
Comparator
Error CUT
INV(CUT)
09/14/17 10 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Physical vs. Algorithmic
Physical vs. Algorithmic
Inversion
Inversion
Physical Inversion Physical Inversion
 Allied to physical duplication, has no Allied to physical duplication, has no advantage over it, therefore it is of no
advantage over it, therefore it is of no
interest
interest
Algorithmic Inversion Algorithmic Inversion
 Allied to algorithmic duplicationAllied to algorithmic duplication  Depending on circumstances, can Depending on circumstances, can
result in more hardware savings than
result in more hardware savings than
the algorithmic duplication technique
the algorithmic duplication technique
09/14/17 11 Electronic Systems Design
Department of Electronics and Computer Science
University of Southampton,
UK
Conclusions
Conclusions
and future work
and future work
 Our first experiments (using the Our first experiments (using the
MOODS
MOODS High-Level Synthesis Suite) High-Level Synthesis Suite)
have been encouraging.
have been encouraging.
 We are working towards automating We are working towards automating
the on-line test resource insertion
the on-line test resource insertion
process, so that
process, so that no modification of no modification of
VHDL code will be required!!!
VHDL code will be required!!!
 Our system should be versatile Our system should be versatile
enough to recognise and apply the
enough to recognise and apply the
most beneficial (duplication or
most beneficial (duplication or
inversion) technique for each module
inversion) technique for each module
in a given design.
in a given design.
 Future steps include fault simulation Future steps include fault simulation
and investigating methods to test the
and investigating methods to test the
control path of our designs.
control path of our designs.