embedded testing - embedded testing ......simulationsbasiertes testen | prof. dr.-ing. p. fromm,...

28
Simulationsbasiertes Testen von sicherheitskritischer Software auf Multicore Controllern Prof. Dr.-Ing. Peter Fromm Shrikant Sagar Hochschule Darmstadt

Upload: others

Post on 26-Aug-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Simulationsbasiertes Testen von

sicherheitskritischer Software auf

Multicore Controllern

Prof. Dr.-Ing. Peter Fromm

Shrikant Sagar

Hochschule Darmstadt

Page 2: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2

Embedded Testing

Conference 2017

Inhalt

Functional Safety und

Simulationsbasiertes Testen

Das Werkzeug winAMS

System under Test

Evaluationsergebnisse

Erweiterung des Ansatzes

Zusammenfassung und Ausblick

Page 3: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Funktionale Sicherheit

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 3

Embedded Testing

Conference 2017

IEC 61508 ISO 26262

Automobil

ISO xyz

...

ISO 13849

Maschinen

Page 4: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Methodische Vorgaben am Beispiel ISO26262 - Auswahl

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 4

Embedded Testing

Conference 2017

Page 5: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Aurix

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 5

Embedded Testing

Conference 2017

Page 6: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Mögliche Testumgebungen

Vorteile

Kostengünstig

Zugriff auf alle Daten

Einfache Coverage Messung

Breite Toolauswahl

Nachteile

Erfüllt nicht die ISO26262

Es werden nur “logische Fehler”

gefunden

Beschränkung auf 100%

applikativen Code

Vorteile

Erfüllt die Vorgaben der

ISO26262

Echter “Objektcode” wird

getestet

Nachteile

Aufwändig

Nicht alle “Zustände” erreichbar

Coverage eingeschränkt

Targetspezifisch

Teure Hardware Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 6

Embedded Testing

Conference 2017

Page 7: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Das Werkzeug winAMS der Firma Gaio

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 7

Embedded Testing

Conference 2017

User IDE

Build

Environment

“.elf”

Build

Output

winAMS Environment

Caseplayer 2

(Static Code

Analyser)

Coverage

Reports

MPU Simulator ATDE Editor Testcases

OMF Converter Tool specific

executable

Stub creation

support

Hook up code

creation support

Einsatzgebiet

UnitTest

Page 8: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Das Werkzeug winAMS der Firma Gaio

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 8

Embedded Testing

Conference 2017

Page 9: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Code Execution im Simulator

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 9

Embedded Testing

Conference 2017

Page 10: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

System under Test

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 10

Embedded Testing

Conference 2017

Page 11: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Sicherheitsfunktionen (Auszug)

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 11

Embedded Testing

Conference 2017

Group Requirement Implementation Requested State

TargetSpeed The targetspeed has to be updated by the

control logic

• Check targetspeed age • Safe 2

TargetSpeed The targetspeed has to be in a valid range,

considering the Error State constraints

• Check Targetspeed value before

setting engine signal

• Correct

targetspeed value

LIDAR The car shall not drive against an obstacle • Check collision signal of LIDAR

• Use Watchdog / CRC to ensure

updated and correct LIDAR signal

• Safe 1 (d < x)

• Safe 2 (d < y)

• Safe 2 (no

signal)

EngineSpeed The enginespeed may only be set to a non-

zero value in the ISRUNNING state of the

car

• Check car state in event driven

Engine runnable (problem, if

event is not fired)

• And in addition in cyclic logic

runnable

• Safe 2

Page 12: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Input

System Output

Logic

Sicherheitskonzept

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 12

Embedded Testing

Conference 2017

Sicherheitsmonitorfunktionen überwachen die Applikation

Monitorfunktionen sind kritisch und müssen daher nach SIL

qualifiziert werden

Control Check_Joystick

Check_Lidar

...

Check_CAN

Check_TargetSpd

Check_setLidar

Check_WheelSpd

Position

Se

nso

rs

Acto

rs ...

Page 13: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Signallayer

Architekturkonzept

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 13

Embedded Testing

Conference 2017

SWC

Remote

SWC

Monitor_x

SWC

Control_n

SWC

Map

SWC

Control_1

SWC

Display

Signallayer

Core 0

Core 1

Core 2

Signal Signal Signal

CAN ... GPIO IPC

Sicherheitsfunktionen

Page 14: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Unittest von “reinem” Applikationscode

Schritt 1 – Projekt aufsetzen

C ist eine Standard Sprache, oder?

Compilerspezifische Anpassung und Projektkonfiguration sehr

aufwändig

Kein C++ Support

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 14

Embedded Testing

Conference 2017

Page 15: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Unittest von “reinem” Applikationscode

Testfälle generieren - Qualität der Testfälle (MC/DC)

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 15

Embedded Testing

Conference 2017

Gute Unterstützung z.B. mittels MC/DC.

Grenzen werden bei zu komplexen Datenstrukturen erreicht.

Page 16: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Unittest von “reinem” Applikationscode

Startup File

Sicherstellung von definiertem Systemkontext

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 16

Embedded Testing

Conference 2017

Page 17: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Testen von Code mit Hardwarezugriffen

winAMS bietet die Möglichkeit Hardwareaufrufe durch Stubs zu

ersetzen

Für Register - Schreiboperationen ist dieses eine akzeptable Lösung,

für Leseoperationen eher nicht

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 17

Embedded Testing

Conference 2017

//Clear NEWDAT flag

MODULE_CAN.MO[__MObj_i].CTR.U=BIT_1<<IFX_CAN_MO_

CTR_RESNEWDAT_OFF;

//check if a new frame has been received in the meantime and data might got corrupted

while(MODULE_CAN.MO[__MObj_i].STAT.B.NEWDAT==TRUE||MODULE_CAN.MO[__MObj_i].STAT.B.RXUPD==TRUE)

Kombinatorik

True / False Bedingungen

Zeitverhalten....

Page 18: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Testen von Code mit OS-Aufrufen

Betriebssysteminitialisierung lässt sich im Simulator nicht ausführen

Betriebssystemaufrufe können nicht getestet werden (Kontext kann

nicht ohne weiteres hergestellt werden)

Stubbing ist prinzipiell möglich aber mit viel Aufwand versehen

Messaging über Coregrenzen hinweg kann nicht simuliert werden

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 18

Embedded Testing

Conference 2017

Page 19: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Input und Output Parameter

Eine erweiterte Definition

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 19

Embedded Testing

Conference 2017

Unit under Test (C-Funktion)

Parameter Return

Globals Globals

Referenzen

HW-Regs HW-Regs

OS-Calls OS-Calls

Traps (ca.

300)

Interrupts Interrupts

Page 20: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Spannende Fragen...

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 20

Embedded Testing

Conference 2017

Reicht der Unittest aus?

Wie wirtschaftlich ist das Ganze?

Wie sieht eine optimale

Teststrategie aus?

Page 21: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Wieviele Funktionen können getestet werden?

Eine Aufwandsbetrachtung....

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 21

Embedded Testing

Conference 2017

Initiales Design

Verstärkte Abstraktion über Signallayer

Page 22: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Erweiterter Ansatz....

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 22

Embedded Testing

Conference 2017

Page 23: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Prototypische Implementierung

Implementierung für Aurix und dem PLS Debugger ist erfolgt

Testfälle werden von winAMS generiert

Auf dem Target läuft ein spezieller TestTask, der im Testmodus den

Aufruf der Runnables orchestriert

Unterstützung von

Hardware Aufrufen

OS Aufrufen

ISR Betrieb

Überwachung von Timing Anforderungen

Traps

Unit, Integrations und Systemtests

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 23

Embedded Testing

Conference 2017

Page 24: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Input/Output über einfache CSV Dateien

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 24

Embedded Testing

Conference 2017

Page 25: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Multicore Integrationstest

Testen von Signalflüssen

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 25

Embedded Testing

Conference 2017

sl_

sa

fety

sl_

ap

p

sig_target_speed

UART /

ZigBee

SWC_safety_input

sig_lidar_coll

CAN

sig_safe_state sig_target_check

CAN

sig_lidar sig_target_check sig_control_eng

SWC_control

sig_control_eng sig_control_check

SWC_safety_logic

CAN Timeline

Core 1

Core 0

Page 26: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Zusammenfassung und Ausblick

“There is no silver bullet”

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 26

Embedded Testing

Conference 2017

Page 27: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Zusammenfassung und Ausblick

Simulationsbasiertes Testen ist für reinen Applikationscode eine

interessante Testtechnologie

Im Gegensatz zu reinem PC-basierten Testen erfüllt es die

Anforderungen der ISO26262

Konfiguration des Systems sollte vereinfacht werden, neue Code

Standards und C++ sollten unterstützt werden

Test von hardwarenahen Modulen und OS-Aufrufen ist wirtschaftlich

nicht gut möglich

In der Architektur muss eine strenge Trennung zwischen

Applikationscode und Basissoftware realisiert sein

Eine Erweiterung mit Anbindung an Targethardware ist relativ einfach

möglich und bringt deutlichen Mehrwert

Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 27

Embedded Testing

Conference 2017

Page 28: Embedded Testing - Embedded Testing ......Simulationsbasiertes Testen | Prof. Dr.-Ing. P. Fromm, Shrikant Sagar | University of Applied Sciences Darmstadt 2 Embedded Testing Conference

Questions / Contact

Taming the Beast | Prof. Dr.-Ing. P. Fromm | University of Applied Sciences Darmstadt 28

Prof. Dr.-Ing. Peter Fromm

Microcontroller und Informationstechnik

Hochschule Darmstadt - University of Applied Sciences

FB Elektrotechnik und Informationstechnik (EIT)

Birkenweg 8

64295 Darmstadt

Tel.: +49 (6151) 16-38237

Email: [email protected]

Web: www.eit.h-da.de