Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/263134734

Safety Evaluation of Automotive Electronics Using Virtual Prototypes: State of


the Art and Research Challenges

Conference Paper · June 2014


DOI: 10.1145/2593069.2602976

CITATIONS READS

35 420

25 authors, including:

Nico Bannow Oliver Bringmann


Bosch University of Tuebingen
18 PUBLICATIONS   74 CITATIONS    242 PUBLICATIONS   1,648 CITATIONS   

SEE PROFILE SEE PROFILE

Andreas Burger Moomen Chaari


ABB Infineon Technologies
28 PUBLICATIONS   126 CITATIONS    12 PUBLICATIONS   61 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Matrix-Shaped mLSI View project

autoSWIFT View project

All content following this page was uploaded by Andreas Burger on 10 March 2018.

The user has requested enhancement of the downloaded file.


Safety Evaluation of Automotive Electronics Using Virtual
Prototypes: State of the Art and Research Challenges

J.-H. Oetjens1 , N. Bannow1 , M. Becker2 , O. Bringmann3,4 , A. Burger4 , M. Chaari7 ,


S. Chakraborty5 , R. Drechsler6 , W. Ecker7 , K. Grüttner8 , Th. Kruse7 , C. Kuznik2 ,
H. M. Le6 , A. Mauderer1 , W. Müller2 , D. Müller-Gritschneder5 , F. Poppen8 , H. Post1 ,
S. Reiter4 , W. Rosenstiel3,4 , S. Roth1 , U. Schlichtmann5 , A. von Schwerin9 ,
B.-A. Tabacaru7 , A. Viehl4
1
Robert Bosch GmbH, 2 Universität Paderborn, 3 Universität Tübingen,
4
FZI Forschungszentrum Informatik, 5 Technische Universität München,6 University of Bremen,
7
Infineon Technologies AG, 8 OFFIS – Institute for Information Technology, 9 Siemens AG
Paper contact: Jan-Hendrik.Oetjens@de.bosch.com, wolfgang.ecker@infineon.com

ABSTRACT
Intelligent automotive electronics significantly improved driv-
ing safety in the last decades. With the increasing complexity
of automotive systems, dependability of the electronic com-
ponents themselves and of their interaction must be assured
to avoid any risk to driving safety due to unexpected failures
caused by internal or external faults.
Additionally, Virtual Prototypes (VPs) have been accepted
in many areas of system development processes in the automo-
tive industry as platforms for SW development, verification,
and design space exploration. We believe that VPs will sig-
nificantly contribute to the analysis of safety conditions for
automotive electronics. This paper shows the advantages
of such a methodology based on today’s industrial needs,
presents the current state of the art in this field, and outlines
upcoming research challenges that need to be addressed to
make this vision a reality.

Figure 1: Combined Active and Passive Safety (CAPS)


Categories and Subject Descriptors Photo: Bosch
B.8 [Performance and Reliability]: Reliability, Testing,
and Fault Tolerance; C.4 [Performance of Systems]: Re-
liability, availability and serviceability medical aids, industrial production and cars, their risk of
failure increases, which may threaten human lives or physical
conditions. Therefore, the evaluation of safety is a crucial
General Terms topic in several areas, especially for automotive electronics.
Verification, Reliability Of course, several functions could be implemented without
electronic components however they help to increase energy
efficiency (e.g. highly sophisticated motor control), com-
Keywords fort (e.g. adaptive cruise control), and safety (e.g. airbags).
Safety, Reliability, Virtual Prototypes, Embedded Systems, So, year after year, more and more sophisticated electronic
Automotive, Robustness components based on semiconductors make their way into
cars making them even more efficient and safer. In so doing,
new functions are often realized by the interaction of several
1. INTRODUCTION electronic components, e.g., in systems such as Combined
With the increasing number and acceptance of complex Active and Passive Safety (CAPS), which is illustrated in
electronic-based embedded systems in daily life, e.g. in Fig. 1. CAPS links the data from environment sensors with
Permission to make digital or hard copies of all or part of this work for the airbag control to better protect the passengers by esti-
personal or classroom use is granted without fee provided that copies are not mating direction and strength of a collision. As such it must
made or distributed for profit or commercial advantage and that copies bear be, for instance, absolutely guaranteed that the failure of
this notice and the full citation on the first page. Copyrights for components any system component does not trigger the airbag in normal
of this work owned by others than ACM must be honored. Abstracting with operation.
credit is permitted. To copy otherwise, or republish, to post on servers or to In recent years, virtual prototypes (VPs) have been ac-
redistribute to lists, requires prior specific permission and/or a fee. Request
cepted in many areas of system development processes in
permissions from Permissions@acm.org.
DAC ’14, June 01 - 05 2014, San Francisco, CA, USA the automotive industry and other industrial sectors. In the
Copyright 2014 ACM 978-1-4503-2730-5/14/06 ...$15.00 automotive industry, VPs are most frequently applied as plat-
http://dx.doi.org/10.1145/2593069.2602976. forms for software development, in design space exploration
and system verification. Meanwhile, we can find dedicated the failure propagation of system components, especially in
frameworks for Virtual ECU (Electronic Control Unit) design combination with failure tolerance.
and testing based on the automotive standard AUTOSAR In the area of system verification, simulation runs have been
(AUTomotive Open System ARchitecture) [1]. Moreover, established for the validation of functional and non-functional
we are expecting that VPs will become more important for requirements. System-level simulations are used to verify
safety analysis and safety assurance of future automotive functional, timing or power requirements like [7]. Executable
systems as a result of the wide spectrum of dependability models of the system under test promise a huge potential
challenges [2]. for safety evaluations. They cover inherently the internal
In this paper, we present an overview on how the correct component dependencies and the provided error tolerance.
and safe functionality of complex systems can already be When using system simulation runs to overcome the chal-
examined in an early design phase using Virtual Prototypes. lenges of traditional safety evaluation methods, new chal-
A major challenge is to ensure the consistency between the lenges emerge as well. In [8] an approach to implicitly support
VP and the real system. Here, the worst case for an incon- the FTA with an error effect simulation is shown. To provide
sistency between both is that a fault is not modeled in the a generalized and comprehensive methodology, additional
VP, but impacts the real system. challenges have to be solved, which are beyond the scope of
On the other hand, there are many scenarios that can the presented framework. Failure behavioral patterns, which
be hard to apply to real physical systems. Erroneous data are currently mostly informally specified, have to be trans-
in arbitrary components, such as registers or memory cells, ferred into an executable format that can be used during
and errors in hardware components, such as stuck-at errors simulation to stimulate errors. Both the simulation and the
or disconnected wires between two subcomponents of an failure specification have to fit in system models at different
ASIC are difficult to insert into a real hardware prototype. levels of abstraction, particularly with the abstract system
Also, insertion of faults into physical HW may destroy the level. Additionally, methods for creating FTs from the simu-
prototype or lead to a system state that may cause safety lation results or for guiding the error simulation to handle
issues for the operator. Additionally, in a VP it is much easier analysis work have to be developed.
to observe the impact of the error on the system and track
the error propagation. Even more importantly, VPs can help 2.2 RTL and Gate-Level Analysis
find unexpected error effects early in the design process. So, Intensive research was conducted to analyze the reliability
measures to keep the overall system safe can be included of integrated circuits (ICs). Errors can be injected as bit value
at an early phase therefore avoiding costly redesigns. As flips in memory cells or registers during logic simulation at the
a consequence, VPs have many advantages when analyzing gate or register transfer level (RTL) [9]. Monte-Carlo-based
safety. The current state of the art in this field is outlined techniques can be used to model different fault scenarios.
in Section 2. A large research effort is required to make Based on the fault model, statistically varying error locations
the vision of early safety assurance based on VPs a reality. and occurrence times - as well as stimulus [10–12] - are
The related, unresolved research challenges for applying the generated.
methodology on future complex automotive electronics are These RTL and gate level analysis methods require fin-
discussed in Section 3, before we close the paper with a ished RTL implementation of the investigated IC, which
conclusion. may result in expensive redesigns if weaknesses are found at
this late design phase. Additionally, simulation at the gate
2. STATE OF THE ART and RTL is usually too slow, so that acceleration techniques
Safety and reliability of automotive and embedded systems are required. A prototype of the IC can be emulated on
in general have been the focus of many research activities. an FPGA, for instance. The code can be instrumented by
This section outlines some important work in these and error injection capabilities [9, 11, 13] or the bit-stream can
related areas. be adapted [14, 15] to inject errors in the IC during FPGA
emulation. Simulation-based error injection can accelerate
2.1 System-Level Safety Evaluation the evaluation by using higher levels of abstraction, e.g.,
There are several established methods for evaluating sys- micro-architectural level [12].
tem safety. Fault Tree Analysis (FTA) and Failure Mode
Effects & Diagnostic Analysis (FMEDA) are two examples 2.3 System-Level Testbenches
for well known dependability analysis methods. Tradition- As stated in Section 2.1, simulations promise a huge po-
ally, these methods have to be executed by system experts, tential for safety evaluations. A complete simulation envi-
as the identification of failures, their logical interaction and ronment consists of an executable model of the DUT and a
the estimation of failure rates are based on the engineer’s tesbench for stimulation. Design reuse and interoperability
experience and knowledge. To reduce the complexity of these became mandatory in system design to keep design produc-
evaluations as well as the strong reliance on the engineer’s tivity in pace with Moore’s law. Consequently, reuse and
system knowledge, different approaches were developed to interoperability had to become available for system-level
automate various steps [3–6]. Pinello et al. [3] propose an testbenches alike and resulted into concepts such as TLM
approach based on Fault Tolerant Data Flow (FTDF) graphs (Transaction Level Modeling) for modeling communications
to create Fault Trees (FT). The Fault Propagation and Trans- [16] and UVM (Universal Verification Methodology) for test-
formation Calculus (FPTC) [4] allows the determination of bench infrastructures [17]. TLM imitates communication
the system failure behavior based on information about the apart from specific hardware implementations across a va-
failure behavior of components and their interconnections. riety of abstraction levels: cycle-accurate, approximately
All approaches require that the engineer has to specify an timed, loosely-timed, untimed, and token-level. The commu-
intermediate model that contains crucial information, e.g. nication architecture is kept undefined and remains open for
the dependency between system components, such as data design space exploration experiments, usually an application
flow or control flow dependency. area of VPs. Moreover, the different communication abstrac-
Another very challenging task for system experts, which tion levels allow significant speed-up for system-level models
is necessary for the intermediate format, is the estimation of simulation, a crucial advantage on early safety assurance of
large VPs. Meanwhile, TLM-2.0 is widely accepted as an dependability assessment of AUTOSAR [1] models. How-
industry standard and part of the SystemC standard IEEE ever, they do not investigate fault injection for testbench
1666-2011 [18]. Nevertheless, the concept of TLM is generic qualification.
and can be found as part of the UVM, a methodology and As the number of mutants to cover can be very large,
library for system level testbenches based on SystemVerilog. current research mainly addresses techniques to improve
UVM separates IP design from IP verification, and makes mutation-based testing efficiency in order to keep up with
testbenches and test cases reusable by employing standard- the ever-increasing system complexity. To achieve this, sev-
ized components, such as agents, sequencers, drivers, and eral approaches have been recently investigated, such as
monitors. In fact, UVM components utilize TLM interfaces mutation schema [21], model abstraction [28], hardware ac-
for communication and make use of UVM agents to interact celeration [29], software emulation [30], and directed test
with the DUT by translating sequences of TLM messages generation [20, 22].
to wire toggles by means of a translating driver, which acts
as a transactor. UVM monitors are responsible for the op- 3. RESEARCH CHALLENGES
posite direction of communication, as they interpret wire
toggles to create TLM messages. Together with the UVM 3.1 Overview
environment and a concept called UVM factory, these give While using Virtual Prototypes for early safety evaluation
UVM testbenches high reconfiguration and reuse potential is a very promising approach, major challenges still must be
for system-level safety evaluation. resolved to make it a reality. The first obstacle is to bridge
the big gap of abstraction levels between errors injected in
2.4 Testbench Qualification VPs and real-world faults, which are mostly of a physical
Testbenches and virtual experimentation environments are nature. The next obstacle is the complexity of simulating
fundamental tools for early safety evaluations of automo- stress tests on VPs to analyze the impact of faults on sys-
tive systems. For instance, virtual ECU frameworks are tem safety. Functional verification using VPs is relatively
frequently applied to provide early integration and testing of well-understood today and has become a mature technology.
AUTOSAR software stacks according to automotive software Still, managing the complexity of functional verification for
design processes, such as the V-Model flow. However, the increasingly complex systems is a formidable task. On the
significance of the results obtained depends on the pertinence other hand, safety evaluation requires comparing the system
of test cases being stimulated by the verification environ- functionality in the presence of faults to the correct one.
ment. Mutation analysis utilizes fault injection to qualify a Given the seemingly endless possibilities of fault manifesta-
testbench with respect to its ability to reveal faults in terms tion, safety evaluation clearly adds another dimension to the
of fault activation, error propagation, and failure detection. complexity problem.
For this, artificial faults, referred to as mutations, are deliber- In the following, we envision a potential safety evaluation
ately seeded into the DUT (Design Under Test), i.e., models approach to tackle these challenges. The approach combines
of HW/SW components. A mutant is generated by applying two well-established methods with a novel approach: (i)
one mutation operator to a single place of the DUT. Mission Profiles from the automotive domain, (ii) UVM-
Such mutation operators were originally1 introduced to based testbenches from the hardware domain and (iii) error
represent typical programmer failures [19]. These failures effect simulation. The following sections discuss each of these
are modeled as simple syntactic program faults due to the three pillars in more detail and outline concrete research
Competent Programmer Hypothesis [19], which assumes that questions.
programmers are competent and write programs that are
nearly correct. Further, another hypothesis called Coupling 3.2 Mission Profile-Compliant Verification
Effect [19] attempts to establish the effectiveness of mutation Early system verification and validation is a mandatory
testing. It states that if a set of test data is able to kill (i.e., necessity in order to efficiently guarantee reliability and
to monitor/detect) most of the mutants that are generated robustness of a system. Especially in the automotive industry,
with simple fault seeding, then they will also be capable a high degree of reliability and robustness has to be ensured.
of revealing the real, more complex bugs in the program. Therefore, novel methods have to be employed to recognize
Thus, the mutation score, i.e. the fraction of killed mutants as early as possible any malfunctions of the system and its
with respect to the overall number of mutants, provides an components due to faults. Consequently, these methods must
advanced metric to assess a testbench’s quality compared use parts of the system specification or design experiences
with coverage based metrics. Mutation testing results can in order to define and simulate errors efficiently at an early
be applied for automatic test pattern generation in case the stage of development. As such, a novel approach to specify
mutation score turns out to be insufficient [20]. requirements and scenarios, known as Mission Profiles [31,32],
The application of mutation analysis for testbench qualifi- has been developed in the automotive sector.
cation has been investigated for various domains, abstractions A Mission Profile (MP) defines the application-specific
and languages [21], such as software (Fortran, C/C++, Java, context refined for a system or a component to ensure robust-
bytecode, assembler/binary [22], Simulink [23]) and hardware ness and reliability. The Mission Profile requirements are
(VHDL [24], SystemC/TLM [25], IP-XACT [26]). As such, expressed as a set of relevant environmental stresses, func-
various fault models are considered that cover faults related tional loads and operating conditions regarding a component.
to specification/integration, programmer failures, and design After a formalization process, the Mission Profiles are passed
tool failures. In [27] the authors consider fault injection for down from the OEM to the semiconductor manufacturer.
1 Therefore, Mission Profiles are a promising approach for rec-
Mutation analysis originally addresses testbench qualifica- ognizing malfunction of a system or its components as they
tion with respect to design faults. However, testbenches can
be also qualified in order to reveal software errors/failures be- consider all system components along the entire supply chain
ing caused by runtime faults in the digital/analog hardware and are available in an early stage of the design flow.
and the physical environment. As such, mutation analysis The different requirements and relevant environmental
can be also investigated for qualifying stress test environ- stresses within the Mission Profiles can be used to derive
ments. targeted functional fault/error descriptions. Additionally,
ment hosting a UVM-SystemVerilog testbench, instantiating
a UVM-SystemC agent to stimulate a VHDL DUT. System
emulation platforms, like Zebu, Palladium, and Veloce, can
be seen as a special case for this. Like simulated components,
emulated system parts should fit under the umbrella of multi-
language based design and verification reuse. It should be
of no relevance for analysis if a part of a DUT is executed
by simulation or emulation. Zebu, e.g., offers transactors for
simulation to emulate TLM communication. Digital based
methodologies have to be extended towards AMS (Analogue
Mixed Signal) designs. Li et al. [37] target this by including
SystemC-AMS in their work.
Correctness analysis (verification, validation) focuses on
bug detection in specifications and designs of systems. How-
ever, there is a need for extending the methodologies for
fault/error analysis of automotive and other systems. Veri-
Figure 2: System Validation with Mission Profiles fied by design, a deployed system in the field is, nevertheless,
vulnerable to external and internal defects. Fault models for
the Mission Profile specifies the normal operating states of ASIC fabrication tests are available (stuck-at, short, open,
the system as well as operating states that describe a possible ...), but comparable fault/error models are missing at higher
malfunction or a special use case, for instance the high load levels of abstraction.
for the servo motor when steering against a curbstone. Nev- In Section 3.2 it was described, how mission profiles can
ertheless the derivation of functional fault/error descriptions be used to derive formal fault/error descriptions. These
from Mission Profiles is a very challenging task and currently fault/error descriptions are included into the stressor, that
not yet solved. will become an additional component of the testbench for
Hence, it is necessary to thoroughly analyze the different fault/error evaluation.
environmental stresses and functional loads to derive feasible One of the main challenges is how to inject the faults/errors.
application- and system-specific fault/error descriptions. An For external faults, the stimuli, which are provided to the
environmental stress, e.g., could describe vibration loads DUT by the testbench, need to be modified. For internal
for components according to their specific mounting point. faults, errors need to be injected into the DUT, but the
Based on this vibration load, a probability of errors due design should not be changed. For this, we propose to add
to wiring, such as open load or short to ground, should be injectors into the DUT and testbench. These provide an
derived. interface to change the stimuli in the testbench or modify
Based on this functional fault/error description, a stressor the state or state transitions at different positions in the
should be generated, which stimulates fault/errors in the DUT. The stressor uses these injectors to inject faults/errors
error effect simulation. The error effect simulation is pre- according to its formal fault/error description. Additional
sented in Section 2.1 more closely. How the stressor can be to this, methodologies for fault/error classification and fault-
integrated in the testbench is outlined in the next section. error-failure analysis are required at the monitoring side of
As shown in Fig. 2 Mission Profiles are early available the testbench.
in the design flow. Therefore, the derivation of functional
fault/error descriptions and the resulting stressors can be 3.4 Stress Tests and Error Effect Simulation
done at every system level - from the OEM down to the Analyzing the impact of errors on system safety in the
semiconductor manufacturer. automotive domain poses major challenges, which can be
addressed by simulating stress tests using VPs. VPs cover
3.3 UVM Testbenches for Fault Analysis the system with ECUs with the integrated software, digital
UVM, as it was introduced in Section 2.3, is a well estab- and analog hardware components and the interconnection
lished standard for testbenches in electronic systems design. network. Stress tests based on VPs allow error effects to
However, not all of the requirements are addressed: already be investigated in an early design phase, by enabling
Currently, standard UVM is implemented in SystemVer- what-if analysis of the system when errors are present. Re-
ilog. However, many other languages are applied for elec- peated stress tests enable a quantitative evaluation, e.g. to
tronic systems design such as MATLAB/Simulink, VHDL determine the safety integrity level. A stress test runs the
and SystemC, to name just a few. Ideally, when choosing one error effect simulation in a closed loop, as shown in Fig. 3.
language best suited for an individual application, it is prefer- The stressor introduces different errors according to its error
able to always adhere to the same verification methodology scenarios via the injectors for each simulation as was outlined
and testbench library, for instance with C-based implementa- in Sec. 3.3.
tions. As such, the works still under development in [33, 34] Specific characteristics of automotive systems pose some
introduce a SystemC UVM implementation which is an initial major challenges that must be resolved when applying such
language reference definition and associated proof-of-concept stress tests on VPs to assure automotive safety. Mission
implementation to the Accellera Systems Initiative. Alterna- Profiles in the automotive domain may require investigating
tively, SVM (System Verification Methodology) [35, 36] has many seconds of real time. This directly translates to the
been introduced as a SystemC implementation of a significant simulation of a vast amount of instructions of the embed-
UVM subset. Creating a unique verification methodology for ded cores to emulate the application software. Additionally,
all design languages is not sufficient to be able to integrate ver- automotive applications typically require the execution of
ification environments from a mix of components. Therefore, several concurrent tasks that exhibit hard and soft real-time
the Accellera Multi-Language (ML) working group is heading constraints. To evaluate the effect of errors, the paradigm
for testbench and test case reuse across multi-language veri- ”The right value at the wrong time can still be an error.”
fication platforms, e.g. a UVM-MATLAB/Simulink environ- holds. Thus, it must not only be investigated whether an
specification.
While approaches such as temporal decoupling reduce the
overhead of single simulation runs, the number of simulation
runs has to be optimized as well. Given the huge number of
possible locations of errors, system states and alternatives of
a complex automotive system, it is not feasible to simulate all
the possibilities in the available time. Therefore, intelligent
coverage models are required to measure the completeness
of the error effect simulation as shown in Fig. 3. It has to
be investigated how coverage models can be systematically
derived from safety requirements and Mission Profiles. Then,
the strategy of error injection and stimuli generation should
be geared towards coverage closure. Maximal reuse of exist-
ing functional verification tests should be one of the main
targets in the design process. This is very challenging in
automotive systems design. Stress tests need to be executed
for highly protected systems, which feature a range of failsafe
measures and redundancy at several levels to assure driving
Figure 3: Error Effect Simulation applying Stress Tests safety. Standard Monte-Carlo techniques may fail to identify
the critical error effects leading to system failure because
failure probabilities are extremely low. Thus, the probability
of exposing a weakness of the system not covered by the
error may lead to a wrong value, but also if the error may
safety and protection measures in a ”lucky guess scenario” is
induce additional delay, e.g., by applying some error correc-
extremely low, or may require a vast amount of simulation.
tion that may cause deadline violations. The verification of
Thus, a systematic approach is required that stresses the sys-
real-time requirements requires simulating time and concur-
tem at its possible weak spots to find error scenarios that lead
rency. Usually, current reliability-aware emulators such as
to safety-critical failures. Identifying the weak spots has to
VarEMU [38, 39] only take time in number of instructions
be conducted by analysis of error propagation, error masking,
into account. In contrast, SystemC includes a simulation
and error recovery by protection mechanisms in all system
kernel for event-driven simulation. It enables the evaluation
domains (e.g. digital HW, analog HW, SW) with respect to
of the system under development, which becomes the DUT,
the system structure. For errors that are hard to propagate,
along the design process using abstract models in early de-
formal approaches such as symbolic execution [41, 42] might
sign phases to evaluate and to verify coarse system aspects.
be necessary to generate stimuli to bypass the protection
The model is refined as the design process progresses, get-
mechanisms.
ting more accurate in mirroring the behavior of the physical
system. When software prototypes become available, they
can be integrated and tested in combination with the simu- 4. CONCLUSION AND OUTLOOK
lated system parts. With this simulation platform, the error Progress in the application of Virtual Prototypes for safety
effect simulation can easily evaluate a huge set of system assurance in the automotive and other domains with safety-
alternatives, allowing a quantitative safety assessment. Still, critical applications is mainly driven by the needs of industry.
synchronization poses an extreme overhead in SystemC and In combination with other standards, such as SystemC and
approaches are required that increase simulation performance UVM, VPs can provide an ideal platform for error effect
of the simulation of concurrent processes, e.g., by temporal simulation, for the identification of weak spots of a system in
decoupling or by raising the abstraction level with the guar- an early design phase. In this paper, the state of the art and
antee that the error effect is simulated correctly in terms of most recent research challenges, which need to be resolved
functionality and time. to efficiently apply this methodology on automotive systems,
Raising the abstraction level creates another major chal- have been outlined. In the upcoming years, we expect that
lenge, as faults that lead to possible errors are usually low the research community wil invest a huge amount of effort
level technology-based effects. In [40], it was shown that error to overcome these challenges. Brought to the industrial
injection at high level of abstraction may result in different level, this methodology will certainly increase the safety of
results than injecting errors at the gate level, but simulation ever increasingly complex automotive systems. This level of
at low level is too time consuming, especially if many error security is certainly required to address future verification
scenarios are to be investigated. Information on the fault challenges for automotive systems designs such as those
must be propagated to higher levels of abstraction, requiring required for autonomous driving.
cross-layer analysis. The purpose of such analysis is to derive
the fault models for the high-level stressors, which should
ideally capture the effects resulting from low-level faults to ACKNOWLEDGMENT
the full extent, or at least provide adequate approximations. This work has been partially supported by the German Fed-
Furthermore, efficient error effect simulation requires avoid- eral Ministry of Education and Research (BMBF) in the
ing the error-prone process of manual error injection. Thus, project EffektiV under grant 01IS13022.
these fault models should be available in a formalized form
to enable automatic configuration/generation of the error
injectors inside the UVM-based testbenches as mentioned 5. REFERENCES
[1] AUtomotive Open System ARchitecture (AUTOSAR)
in Section 3.3. Considering that errors affect various differ- Development Partnership Website. http://www.autosar.org/.
ent domains, e.g., digital hardware, analog hardware and [2] Georg Georgakos, Ulf Schlichtmann, Reinhard Schneider, and
software, deriving a unified formalism is a very challeng- Samarjit Chakraborty. Reliability challenges for electric
vehicles: from devices to architecture and systems software. In
ing task. One of the promising directions is to adopt UML 50th Annual Design Automation Conference (DAC), page 98,
and the Object Constraint Language (OCL) for error model 2013.
[3] C. Pinello, L.P. Carloni, and A.L. Sangiovanni-Vincentelli. H. Hantson, J. Raik, M. Jenihhin, and R. Ubar. Mutation
Fault-tolerant deployment of embedded software for analysis for systemc designs at tlm. In 12th Latin American
cost-sensitive real-time feedback-control applications. In Test Workshop (LATW), pages 1 –6, 2011.
Design, Automation and Test in Europe Conference (DATE), [26] Tao Xie, W. Mueller, and F. Letombe. IP-XACT based system
pages 1164–1169 Vol.2, 2004. level mutation testing. In IEEE International High Level
[4] Malcolm Wallace. Modular architectural representation and Design Validation and Test Workshop (HLDVT), nov. 2011.
analysis of fault propagation and transformation. Electron. [27] Thorsten Piper, Stefan Winter, Paul Manns, and Neeraj Suri.
Notes Theor. Comput. Sci., 141(3):53–71, December 2005. Instrumenting autosar for dependability assessment: A
[5] Xiaocheng Ge, Richard F. Paige, and John A. Mcdermid. guidance framework. 43rd Annual IEEE/IFIP International
Probabilistic failure propagation and transformation analysis. Conference on Dependable Systems and Networks (DSN),
In 28th International Conference on Computer Safety, 0:1–12, 2012.
Reliability, and Security (SAFECOMP), pages 215–228, 2009. [28] Nicola Bombieri, Franco Fummi, and Valerio Guarnieri.
[6] Bernhard Kaiser, Peter Liggesmeyer, and Oliver Mäckel. A new Accelerating RTL Fault Simulation through RTL-to-TLM
component concept for fault trees. In 8th Australian Workshop Abstraction. In European Test Symposium, pages 117–122,
on Safety Critical Systems and Software (SCS) - Volume 33, 2011.
pages 37–46, 2003. [29] Nicola Bombieri, Franco Fummi, and Valerio Guarnieri.
[7] J. Zimmermann, S. Stattelmann, A. Viehl, O. Bringmann, and Fast-gp: An rtl functional verification framework based on fault
W. Rosenstiel. Model-driven virtual prototyping for real-time simulation on gp-gpus. In Conference on Design, Automation
simulation of distributed embedded systems. In 7th IEEE and Test in Europe (DATE), pages 562–565, 2012.
International Symposium on Industrial Embedded Systems [30] Markus Becker, Christoph Kuznik, Mabel Mary Joy, Tao Xie,
(SIES), pages 201–210, 2012. and Wolfgang Mueller. Binary mutation testing through
[8] S. Reiter, M. Pressler, A. Viehl, O. Bringmann, and dynamic translation. In 42nd Annual IEEE/IFIP
W. Rosenstiel. Reliability assessment of safety-relevant International Conference on Dependable Systems and
automotive systems in a model-based design flow. In 18th Asia Networks (DSN), pages 1–12, 2012.
and South Pacific Design Automation Conference [31] T. Nirmaier, A. Burger, M. Harrant, A. Viehl, O. Bringmann,
(ASP-DAC), pages 417–422, 2013. W. Rosenstiel, and G. Pelz. Mission profile aware robustness
[9] Ningfang Song, Jiaomei Qin, Xiong Pan, and Yan Deng. Fault assessment of automotive power devices. In Conference on
injection methodology and tools. In International Conference Design, Automation and Test in Europe (DATE), 2014.
on Electronics and Optoelectronics (ICEOE), volume 1, pages [32] ZVEI. Handbook for Robustness Validation of Automotive
V1–47–V1–50, 2011. Electrical/Electronic Modules. ZVEI - Zentralverband
[10] Giacinto P. Saggese, Nicholas J. Wang, Zbigniew T. Elektrotechnik- und Elektronikindustrie e. V., June 2013.
Kalbarczyk, Sanjay J. Patel, and Ravishankar K. Iyer. An [33] Y. Li, M.-M. Louërat, F. Pêcheux, R. Iskander, P. Cuenot, M.
experimental study of soft errors in microprocessors. IEEE Barnasconi, T. Vörtler, K. Einwich. Virtual Prototyping,
Micro, 25(6):30–39, November 2005. Verification and Validation Framework for Automotive Using
[11] M. Rebaudengo, M. Sonza Reorda, and M. Violante. An SystemC, SystemC-AMS and SystemC-UVM. Embedded Real
accurate analysis of the effects of soft errors in the instruction Time Software and Systems (ERTS2), 2014.
and data caches of a pipelined microprocessor. In Conference [34] M. Barnasconi, F. Pêcheux, T. Vörtler, K. Einwich. Advancing
on Design, Automation and Test in Europe (DATE), 2003. system-level verification using UVM in SystemC. Design and
[12] M.L. Li, P. Ramachandran, U.R. Karpuzcu, S. Hari, and S.V. Verification Conference (DVCon), 2014.
Adve. Accurate microarchitecture-level fault modeling for [35] Marcio F.S. Oliveira, Christoph Kuznik, Hoang M. Le, Daniel
studying hardware faults. In IEEE 15th International Große, Finn Haedicke, Wolfgang Mueller, Rolf Drechsler,
Symposium on High Performance Computer Architecture Wolfgang Ecker, and Volkan Esen. The System Verification
(HPCA), pages 105–116, 2009. Methodology for Advanced TLM Verification. In International
[13] D. May and W. Stechele. An fpga-based probability-aware fault Conference on Hardware/Software Codesign and System
simulator. In International Conference on Embedded Synthesis (CODES+ISSS), 2012.
Computer Systems (SAMOS), pages 302–309, 2012. [36] Marcio F. S. Oliveira, Christoph Kuznik, Wolfgang Mueller,
[14] T. Schweizer, D. Peterson, J.M. Kuhn, T. Kuhn, and Wolfgang Ecker, and Volkan Esen. A SystemC Library for
W. Rosenstiel. A fast and accurate fpga-based fault injection Advanced TLM Verification. In Design and Verification
system. In IEEE 21st Annual International Symposium on Conference (DVCON), 2012.
Field-Programmable Custom Computing Machines (FCCM), [37] Yao Li, Ramy Iskander, Farakh Javid, and Marie-Minerve
pages 236–236, 2013. Louërat. A Design and Verification Methodology for
[15] D. Peterson, O. Bringmann, T Schweizer, and W. Rosenstiel. Mixed-Signal Systems Using SystemC-AMS. In Jan Haase,
Stml: Bridging the gap between fpga design and hdl circuit editor, Models, Methods, and Tools for Complex Chip Design,
description. In International Conference on volume 265 of Lecture Notes in Electrical Engineering, pages
Field-Programmable Technology (ICFPT), 2013. 89–108. Springer International Publishing, 2014.
[16] Lukai Cai and Daniel Gajski. Transaction level modeling: An [38] Ankur Sharma, Joseph Sloan, Lucas F Wanner, Salma H
overview. In 1st IEEE/ACM/IFIP International Conference Elmalaki, Mani B Srivastava, and Puneet Gupta. Towards
on Hardware/Software Codesign and System Synthesisv analyzing and improving robustness of software applications to
(CODES+ISSS), pages 19–24, 2003. intermittent and permanent faults in hardware. In IEEE 31st
[17] Accellera Systems Initiative. Universal Verification International Conference on Computer Design (ICCD), pages
Methodology (UVM), May 2012. 435–438, 2013.
[18] IEEE Computer Society. IEEE 1666-2011 Standard SystemC [39] Lucas Wanner, Salma Elmalaki, Liangzhen Lai, Puneet Gupta,
Language Reference Manual, 2011. and Mani Srivastava. Varemu: An emulation testbed for
[19] R. A. DeMillo, R. J. Lipton, and F. G. Sayward. Hints on test variability-aware software. In IEEE International Conference
data selection: Help for the practicing programmer. Computer, on Hardware/Software Codesign and System Synthesis
11:34–41, April 1978. (CODES+ ISSS), pages 1–10, 2013.
[20] Richard A. DeMillo and A. Jefferson Offutt. Constraint-based [40] Hyungmin Cho, Shahrzad Mirkhani, Chen-Yong Cher, Jacob A
automatic test data generation. IEEE Transactions on Abraham, and Subhasish Mitra. Quantitative evaluation of soft
Software Engineering, 17(9):900–910, September 1991. error injection techniques for robust system design. In 50th
[21] Yue Jia and Mark Harman. An analysis and survey of the Annual Design Automation Conference (DAC), page 101,
development of mutation testing. IEEE Transactions on 2013.
Software Engineering, 2010. [41] Cristian Cadar, Daniel Dunbar, and Dawson Engler. Klee:
[22] Markus Becker, Daniel Baldin, Christoph Kuznik, Mabel Mary Unassisted and automatic generation of high-coverage tests for
Joy, Tao Xie, and Wolfgang Mueller. Xemu: An efficient qemu complex systems programs. In 8th USENIX Conference on
based binary mutation testing framework for embedded Operating Systems Design and Implementation (OSDI), pages
software. In Tenth ACM International Conference on 209–224, 2008.
Embedded Software (EMSOFT), pages 33–42, 2012. [42] H. M. Le, D. Große, V. Herdt, and R. Drechsler. Verifying
[23] C. Berger R. Rana, M. Staron and F. Törner J. Hansson, SystemC using an intermediate verification language and
M. Nilsson. Increasing efficiency of iso 26262 verification and symbolic simulation. In Design Automation Conference
validation by combining fault injection and mutation testing (DAC), page 116, 2013.
with model based development. 8th International Joint
Conference on Software Technologies (ICSOFT-EA), July
2013.
[24] Synopsys. CERTITUDE Functional Qualification System.
[25] V. Guarnieri, N. Bombieri, G. Pravadelli, F. Fummi,

View publication stats

You might also like