embedded systems und statecharts · 2017-11-05 · embedded system: definition 2 • an embedded...
TRANSCRIPT
![Page 1: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/1.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems und Statecharts(im Rahmen der Lehrveranstaltung »Entwurf und Validierung paralleler Systeme«)
Wolfram Kattanek
Institut für Mikroelektronik- und Mechatronik-Systeme (IMMS) gGmbHLangewiesener Str. 22 (über »K+B«)
Email: [email protected]. 03677/6783-55
Inhalt:
• Motivation zur Thematik aus industrieller Sicht• Systemklassen, Modellierung und
Beschreibungsformalismen• Statecharts als erweiterte Automaten• Beispiele und Übungen zu Statecharts• Tool-Unterstützung und Anwendungen• Ausblick
![Page 2: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/2.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded System: Definition 1
• Device designed for dedicated purposes where the correctness of the system depends not only on the logical result of the computation but also on the time at which the results are produced.
Source: CURABA 2002
![Page 3: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/3.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded System: Definition 2
• An Embedded System» uses a computer to perform function, but
» is not used (nor perceived) as a computer
• Software is used for features and flexibility• Hardware is used for performance
• Typical characteristics:» it performs a single function
» it is part of a larger (controlled) system
» cost and reliability are often the most significant aspectsSource: LAVAGNO 2002
![Page 4: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/4.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded System: Definition 3Als eingebettete Systeme (embedded systems) werden im allgemeinen Elektronik-Systeme bezeichnet, die in größere Umgebungen integriert sind. Sie werden eigens für spezielle Anwendungen entworfen und führen dedizierte Funktionen innerhalb eines Gesamtsystems aus. Eingebettete Systeme können sowohl Standard-Mikroprozessoren und -Mikrocontroller, als auch an die jeweilige Anwendung angepaßte spezielle Hard- und Software enthalten.
Der Unterschied zu einer normalen Applikationserstellung aus dem Bereich des „klassischen“ Software Engineering besteht in den, teilweise sehr restriktiven, nichtfunktionalen Anforderungen dieser Domäne. Üblicherweise entstehen diese strikten Anforderungen aufgrund der zum Einsatz kommenden Hardware. Hier sind unter anderem Echtzeitanforderungen (ein Ergebnis muss zu einem bestimmten Zeitpunkt vorhanden sein, ansonsten ist das Ergebnis nutzlos) und häufig die Hardwareanforderungen (z.B. 8-Bit Prozessor mit 4MB Flash) dominant.
Source: www.visek.de
![Page 5: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/5.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems und parallele Systeme
Typische Embedded Systems sind parallele bzw. nebenläufige Systeme.
● parallel
gleichzeitige Ausführung auf physisch getrennten Verarbeitungseinheiten(z.B. verschiedene Funktionseinheiten eines ASICs)
● nebenläufig (concurrent)
"Running together"; keine Aussage über konkrete Ausführungsreihenfolge(z.B. mehrere Tasks in einem Multitasking-System)
![Page 6: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/6.jpg)
Wolfram.Kattanek @ IMMS.de
Bsp. für Embedded System: Kfz-Steuergerät
Außerdem: Diagnose-Interface, Wake-Up Management, Watchdogs, redundante HW-Funktionalität, ...
![Page 7: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/7.jpg)
Wolfram.Kattanek @ IMMS.de
Bsp. für Embedded System: System-on-a-Chip (SoC)
– MCU, VLIW, DSP– Memories– ASICs– Bus
– Application Software– RTOS (Real-time Operating System)– BSP (Board-Support Package)
Content elaboration(base band)
Storage
Power management
MMI
Security
Connectivity
Connectivity
Connectivity
Storage
Content elaboration(base band)
MMI
Power management
Security
Connectivity
![Page 8: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/8.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems als Teil größerer Systeme
Source: VILLAR 2002
![Page 9: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/9.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems: Technology Pressure
Embedded SW :doubles every 10 months
Moore’s law : IC complexitydoubles every 18 months
Nielsen’s law :bandwidth
doubles every 12months
2000 2010 time
complexity
Source: CURABA 2002
![Page 10: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/10.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems: Design Productivity Gap
ITRS’99
Tran
sist
ors/
Chi
p (M
)
Tran
sist
or/P
M (K
)
![Page 11: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/11.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems: Some resulting Gaps...• Design & Verification Gap
• Software Gap:“The complexity of a System-on-Chip design is not only in the million transistors packed in a square millimetre. The major challenge for technical success of a SoC is to make sure that millions lines of software fit in with millions gates.”
11982 1986 1990 1994 1998 2002
10
100
1000
10000
100000
Ability to fabricate
Kgates/chip
DesignGap
2006
Ability to design
Ability to verifyVerification
Gap
Source: MARICHAL 2002
![Page 12: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/12.jpg)
Wolfram.Kattanek @ IMMS.de
Embedded Systems im Bereich Automobilelektronik
· Kfz-Elektronik liegt in Deutschland wertmäßig vor Telekommunikation, Datentechnik und Industrieelektronik.
· Bis zu 90% aller Neuheiten-Merkmale beruhen bei Neuwagen auf Elektronik.· Ca. 80% der Elektronikfunktionalität ist SW-basiert.
Oberklasse-PKW:
• 70+ ECUs(Electronic Control Units)
• 5+ Bussysteme• bis zu 512 kByte
SW je ECU• 4 - 32 Bit C/P
![Page 13: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/13.jpg)
Wolfram.Kattanek @ IMMS.de
Automobilelektronik: morgen (heute?)
• Telematik und Integration von Konsumelektronik (Multimedia)• X-by-Wire• Internet Vehicle• Autonome Fahrzeuge ...
IVHS InfrastructureIVHS Infrastructure
Wireless Communications/DataWireless Communications/DataGlobal PositioningGlobal Positioning
Info/Comms/Info/Comms/AV BusAV Bus
CellularCellularPhonePhone
GPSGPS DisplayDisplay
NavigationNavigation Stereo/CDStereo/CD
Electronic Toll CollectionElectronic Toll CollectionCollision AvoidanceCollision AvoidanceVehicle ID TrackingVehicle ID Tracking
Multiplexed SystemsMultiplexed Systems
VehicleVehicleCAN BusCAN Bus
BodyBodyControlControl
ECUECU ABSABS
SuspensionSuspension TransmissionTransmission
![Page 14: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/14.jpg)
Wolfram.Kattanek @ IMMS.de
Entwurfsziele und -probleme
• Ziele:» Funktionalität (Alleinstellungsmerkmale gegenüber Konkurrenz)» Time-to-Market (Kürzere Entwicklungszyklen)» Kosten (Geringe Stückkosten, Vermeidung von Iterationszyklen)» Qualität (Erhöhte Zuverlässigkeit und Lebensdauer)
• Probleme:» Komplexität (Steuergerätestruktur, Vernetzung, Funktionalität)» Gesetzliche Rahmenbedingungen (national / international)» Variantenvielfalt (Typ, Modell, Ländervariante, Personalisierung)
![Page 15: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/15.jpg)
Wolfram.Kattanek @ IMMS.de
Vorteile von SW im Automobil
• Fertigungskosten:hohe Stückzahlen rechtfertigen höhere Entwicklungskosten
• Flexibilität bei der Entwicklung:Bandendeprogrammierung, Änderungsmöglichkeiten
• Gewichtsreduktion:direkt und durch verringerten Kabelaufwand
• Zuverlässigkeit:keine Alterung
• Servicemöglichkeiten:verbesserte Diagnose
• Innovation:Realisierung der meisten neuen Alleinstellungsmerkmale
![Page 16: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/16.jpg)
Wolfram.Kattanek @ IMMS.de
SW-Entwurf für eingebettete Systeme
Bisher relativ geringe Größe des SW-Anteils und eine eingeschränkte funktionale Systemvernetzung.
Der Entwurf ist hauptsächlich dokumentenbasiert!
Phasenübergänge sind durch Medienübergänge gekennzeichnet!
Starke Orientierung am Wasserfall-Entwicklungsprozeßmodell!
![Page 17: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/17.jpg)
Wolfram.Kattanek @ IMMS.de
Nachteile bisheriger SW-Entwicklungsmethoden
• Werkzeug- und Phasentrennung (Medienbrüche)• Schlechtes Feedback in frühen Phasen• Fehlerträchtigkeit durch mangelnde Formalisierung• Späte und mangelhafte Fehlererkennung
• Software ist extrem »unstetig«!(Man verändere nur 1 Zeichen in einem beliebig großem Programm...)Herkömmliche Test- und Simulationsmethoden versagen zunehmend!
![Page 18: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/18.jpg)
Wolfram.Kattanek @ IMMS.de
Ausweg: modellbasierter Entwurf
• Def. (Wymore93):
»To design a system is to develop a model on the basis of which a real system can be built, developed, or deployed that will satisfy all its requirements.«
• Der Entwurfsprozeß läßt sich allgemein als eine (nach vorgegebenen Kriterien erfolgende) Erstellung und Manipulation von Modellen charakterisieren!
• Das Ergebnis von Ingenieurstätigkeit sind Modelle (physische Modelle, Zeichnungen, Konstruktionsunterlagen, mathematische Modelle, system-theoretische Modelle).
• Software Engineering erfordert Ingenieurstätigkeit!
![Page 19: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/19.jpg)
Wolfram.Kattanek @ IMMS.de
Modellbasierter SW-Entwurf
• Modelle als Grundlage jedes ingenieursmäßigen Vorgehens• Formale Methoden zur Erstellung und Manipulation der Modelle
(Einführung einer formalen Ebene innerhalb des Entwurfsprozesses)
![Page 20: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/20.jpg)
Wolfram.Kattanek @ IMMS.de
Modellbasierte Spezifikation
• Deskriptive Spezifikation
• Äußere, Beschreibungssicht
• Operationale Spezifikation
• Innere, Realisierungssicht
Die dabei zum Einsatz kommenden Modelle und Formalismen müssen die Spezifika der jeweiligen Systemklasse berücksichtigen (z.B. reaktive Systeme aus dem Bereich der Komfort- und Karosserieelektronik)!
![Page 21: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/21.jpg)
Wolfram.Kattanek @ IMMS.de
Systemklasse Karosserie- und Komfortelektronik• Zustands-basiertes Verhalten (Modes)• Komplexe Interaktionsszenarien (großer Zustandsraum)• Verteilte Systeme• Reaktives Verhalten
• A: 1-10 kbps, B: 10-125kbps, C: 125 kbps-1 Mbps
![Page 22: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/22.jpg)
Wolfram.Kattanek @ IMMS.de
Reaktive Systeme
Bei den meisten(?) existierenden Embedded Systems handelt es sichum reaktive Systeme.
● Reaktives SystemSystem-Umgebung gibt die Geschwindigkeit vor(z.B. Tür-Steuergerät im Kfz)
● Interaktives SystemSystem gibt die Geschwindigkeit vor(z.B. grafische Benutzeroberfläche)
● Transformatorisches Systemzur Laufzeit (bzgl. Ein-/ Ausgaben) von der Umgebung entkoppelt(z.B. numerisches Berechnungsprogramm)
Umgebung Steuerung
Sensoren
Aktoren
REAKTIVESSYSTEM
![Page 23: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/23.jpg)
Wolfram.Kattanek @ IMMS.de
Eigenschaften reaktiver (eingebetteter) Systeme
● Concurrency(cooperating concurrent components)
● Real-time(response time, availability)
● Determinism(reaction is determined by environment)
● Heterogenity(implemented in different technologies)
● Reliability(correctness, robustness, fault tolerance)
![Page 24: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/24.jpg)
Wolfram.Kattanek @ IMMS.de
FRAGE:
Mit welchen Modellen und Formalismen/Sprachen lassen sich Embedded Systems bzw. reaktive Systeme unter Einbeziehung zusätzlicher Forderungen (Komplexität, Korrektheit, Entwurfszeit) am effektivsten entwerfen???
![Page 25: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/25.jpg)
Wolfram.Kattanek @ IMMS.de
Zusammenhang zwischen Modellen und Formalismen
Modell
● Abstraktion von physikalischen Gegebenheiten● Implementierungsunabhängig● mathematische/systemtheoretische Grundlagen
Formalismus/Sprache = Spezifikation eines Modells
● Praktische und effiziente Entwurfsdarstellung● Genaue Umsetzung des Modells● Automatische Verarbeitbarkeit
![Page 26: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/26.jpg)
Wolfram.Kattanek @ IMMS.de
Statecharts zugrundeliegendes Modell
Physikalisches System(kontinuierliche Wertänderungen, unendlicher Zustandsraum)
Transition System(schrittweise Wertänderungen)
Finite State System(endlicher Zustandsraum)
Finite Transition Systemdigitaler Automat
Finite State Machine (FSM) / State Transition Diagram (STD)Automatengraph
Grafische Notation (bzw. Sprache)
![Page 27: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/27.jpg)
Wolfram.Kattanek @ IMMS.de
Statecharts
"The language of Statecharts has been proposed by David Harel as a visual language for the specification and modeling of reactive systems."
Statecharts wurden Mitte der 80er Jahre von Prof. David Harel am Weizmann Institute in Israel entwickelt. Sie wurden 1987 im Rahmen eines Zeitschriftenartikels umfassend vorgestellt.
Als Sprache verfügen Statecharts über eine (grafische) Syntax und eine Semantik. Die Semantik von Statecharts basiert hauptsächlich auf einer operationalen Definition (d.h. mittels einem abstrakten Statecharts-“Interpreter“).
![Page 28: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/28.jpg)
Wolfram.Kattanek @ IMMS.de
Bedeutung von Statecharts
Statecharts stellen einen möglichen Lösungsansatz dar,wobei jedoch damit nur bestimmte Teilaspekte und nurbestimmte Applikationsdomänen abgedeckt werden können!
![Page 29: Embedded Systems und Statecharts · 2017-11-05 · Embedded System: Definition 2 • An Embedded System » uses a computer to perform function, but » is not used (nor perceived)](https://reader034.vdocuments.net/reader034/viewer/2022050413/5f8a0b463360db55da4ae224/html5/thumbnails/29.jpg)
Wolfram.Kattanek @ IMMS.de
„Lastenheft“ bzw. Spezifikation: Remote Control
• Eine Steuerung für einen Fernsehapparat mit Fernbedienung ist zu entwerfen.
• Die Fernbedienung soll über folgende Tasten verfügen:POWERON, POWEROFF, TXT, SOUND, MUTE, P1, P2
• Mittels POWERON wird der Fernseher eingeschaltet.• Mittels POWEROFF kann er jederzeit ausgeschaltet werden.• 2 Fernsehprogramme können ausgewählt werden.• SOUND und MUTE schalten den Ton an bzw. aus.• TXT wechselt zwischen Fernseh- und Videotextmodus.• Nach Einschalten ist der Fernsehmodus aktiv und der Ton ist an.• Beim Einschalten und beim Umschalten zwischen den
Fernsehprogrammen soll der Ton für 1s stummgeschaltet werden.