Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

Ähnliche Präsentationen


Präsentation zum Thema: "Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer."—  Präsentation transkript:

1 Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS

2 Folie 2 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Wo stehen wir? Embedded Systems: Definition, Märkte, Programmierung, Softwareprozesse Anforderungserhebung und -analyse Modellierung  Systemmodellierung (SysML)  Kontinuierliche Modellierung (Simulink / Scilab)  Diskrete Modellierung (UML) Codegenerierung und Modelltransformation  Hardware für eingebettete Systeme Sicherheit  Funktionale Sicherheit  Fehlertoleranzkonzepte  Werkzeugqualifikation Validierung  Modellbasierter Test  Verifikation und statische Analyse Spezielle Domänen  Automotive Software Engineering  Medizintechnik  Automatisierungstechnik, Robotik

3 Folie 3 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Embedded Platforms Wie realisiert man elektrische / elektronische / elektronisch programmierbare Regler?  welche Hardware, Software?  welche Peripherie (Sensorik, Aktuatorik?)  wie kommt die SW auf die HW? Übung mit Evaluations-Boards  andere Eval-Boards auf Anfrage!

4 Folie 4 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Embedded Computing Paradigma (C) Marwedel

5 Folie 5 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Eingebettete Systeme: Aufbau Applikationsschicht SteuerungsalgorithmusBenutzungsschnittstelle Realzeit- Betriebssystem Hardware ProzessankopplungNetzverbindung Sensorik, Aktuatorik Middleware (Funk-) Netzwerk

6 Folie 6 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Eingebettete Systeme: Hardware Spezielle Prozessoren  8-bitter, minimale Kosten, energieoptimiert  keine MMU, Coprozessoren, FloatingPoint  Microcontroller mit zusätzlichen Steuerungsleitungen  Spezialprozessoren (DSP, SoC, Krypto)  Trend für Entwicklung: FPGAs Spezielle Speicher  meist bewegungslos (keine magnetischen/optischen Medien)  ROM, PROM, EEPROM; zunehmend: Flash Disks  minimaler RAM, auch; dual ported RAM Zusatzhardware  Spezielle Platinen, AD/DA-Wandler, ASICs  einsatzspezifische Sensoren und Aktuatoren Einfache Kommunikationsbusse und –netze  CAN, Feldbusse; zunehmend auch Ethernet, Bluetooth etc.

7 Folie 7 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Embedded Prozessoren Mikroprozessoren  Recheneinheit, separater Speicher & Peripherie Microcontroller  integrierte Rechen- und Speichereinheit System-on-Chip (SoC)  Peripherie & IPs integriert

8 Folie 8 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Recheneinheit (CPU) Characteristika von embedded-CPUs  einige wenige Register  wenig Befehle (oft ohne Gleitpunktarithmetik)  niedrige Taktraten (16Hz – 1GHz)  niedrige Energieaufnahme (2 – 100W)  hoher Temperaturbereich (-40° – +85°C)  lange Verfügbarkeit (5 – 20 Jahre)  niedriger Preis (0,1 – 10 $)

9 Folie 9 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Energieeffizienz “die wichtigste Eigenschaft eingebetteter Prozessoren” Verschiedene Methoden zum Energiesparen  Taktrate senken, dynamisch adaptive Taktraten  Betriebsspannung senken, dynamische Spannungsversorgung  Größenreduktion der Schaltelemente  Reduktion der Anzahl der Schaltelemente  Bereiche abschalten  Kommunikation reduzieren  energiebewusste Software Multi- und Many-Core-Prozessoren Energieverbrauch = ∫ Leistungsaufnahme  Kühlung, Gehäuse,...  Batterielebensdauer

10 Folie 10 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme “Application specific integrated circuit” Custom-designed Chip für  spezielle Geschwindigkeitsanforderungen, oder  maximale Energieeffizienz Nachteile  Hohe Kosten (Maskenkosten $)  geringe Flexibilität (Technologie- und Standard-Anderungen)  Entwicklungszeit und –aufwand Nur bei sehr hohen Stückzahlen akzeptabel ASICs

11 Folie 11 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme FPGAs “Field programmable gate array” “Programmierbare Hardware” Gatter aus Logikblöcken Programmierung durch Setzen der elementaren Funktionen Sehr schnelle Berechnungen möglich Hohe Tool- und Stückkosten Quelle: Wikipedia

12 Folie 12 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Speicher sowohl von-Neumann– als auch Harvard-Architektur Speichermanagement durch das Betriebssystem  Security! üblicherweise nicht erweiterbar  (aber: Flash-Cards als Ersatz) RAM (typischerweise kB) ROM (nichtvolatiler Programmspeicher) EEPROM (für Settings / Bootloader) Cache: 32 B – 320 kB; üblich: 32 kB oder 64 kB  L1 / L2 Caches  maximale Programmgröße ist limitiert!

13 Folie 13 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Peripherie Analog-Digital /Digital-Analog Wandler (ADC / DAC) Discrete IO, General Purpose Input/Output (GPIO) Serielle Schnittstellen, z.B. RS232, USB, I 2 C Netzwerkschnittstellen: z.B. Ethernet, WLAN, PCI Feldbusse: z.B. CAN, LIN, MOST, PROFIBUS, usw. Echtzeituhr und Timer Speicherkartenleser (SD Cards, Compact Flash usw) Debuggingschnittstellen: JTAG, ISP

14 Folie 14 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Beispiel: ARM Familie (Advanced RISC Machines Ltd.) “IP” (Intellectual Property); Fertigung durch Lizenznehmer (AMD, Apple, IBM, 3Com, Infineon, Freescale, HTC, Intel, Samsung, Qualcomm, Atmel, Toshiba, Renesas, NXP, Nvidia, Texas Instruments,...) Marktführer im Embedded- und Smartphone-Bereich Prozessorfamilie: ARM1 – ARM11, StrongARM, XScale, Cortex-XX,...  32- und 64-Bit, SIMD, Crypto-IP,... Befehlssatz “Thumb” bzw. “Thumb2”  16- oder 32-Bit breite 3-Register-Befehle (z.B. ADD r0, r1, r2)  üblicherweise Integer-Arithmetik, ggf. ohne Division  zirkuläre Register-Bitshifts  Conditional execution (4 Bedingungsbits, vermeidet Sprünge)  Barrel-Shifter (zweiter Operand kann verschoben werden) Code-Größe versus Ausführungseffizienz

15 Folie 15 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Beispiel: TI MSP430 Familie 16-Bit RISC-Mikrocontrollerfamilie von Texas Instruments  optimiert für niedrigen Stromverbrauch - Active Mode: 230 µA at 1 MHz, 2.2 V - Standby Mode: 0.5 µA - Off Mode (RAM Retention): 0.1 µA  Prozessorkosten ab 25 ct 4-25 MHz (ab 40ns Zykluszeit); MSP430G2553: 16 MHz 27 Grundinstruktionen, je 1-6 Takte Adressierbarer Speicher 16KB Flash, 512B RAM  20-Bit Adressbus  Feste Speicheraufteilung 16 Interrupts, verschiedene Schlafmodi 16 Register, verschiedene Adressierungsarten Peripherie: 8ch 10-bit ADC, 2 16-bit Timers, I2C, 2 SPI, 1 UART “MSP430G2553 qualified for high-reliability automotive applications targeting zero defects”

16 Folie 16 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

17 Folie 17 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

18 Folie 18 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Atmel RN-mega 2560 ATmega AVR® 8-Bit Microcontroller  RISC Architecture, up to 16 MIPS Throughput at 16 MHz, On-Chip 2-cycle Multiplier  100 pin  256 K Flash 8K RAM, 4K EEPROM  Timer, PWM-Kanäle  16 analoge Eingänge, 86 programmierbare I/O Leitungen  vier TTL UARTS (RX/TX)  RS232, USB, I2C, SPI-Bus  …

19 Folie 19 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Beispiel: Lego RCX Robotic Command Explorer (1998)  „Programmable Brick“  ursprüngliches Design: S. Papert, MIT Media Lab Vorläufer: Code Pilot, Cybermaster, Scout  wie programmieren? Nachfolger: NXT (2006), EV3 (2013) Hitachi Single-Chip-Mikrocontroller Display, 4 Knöpfe, Batteriefach 3 analoge Eingänge, 3 analoge Ausgänge IR-Kommunikation (seriell)

20 Folie 20 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Sensoren Verarbeitung analoger Signale beginnt mit der Erfassung Fast alle physikalischen und/oder chemisch erfassbaren Messgrößen wurden / werden zur Konstruktion von Sensoren genutzt  Gewicht, Beschleunigung, Strom, Spannung, Temperatur, Helligkeit,…  Chemische Stoffe, z.B. Methangas Oft werden auch Sekundäreffekte genutzt  Ausdehnung des Batteriegehäuses bei Vollladung  Auslenkung der Motorspindel im Herzunterstützungssystem  Dämpfung des Schalls durch Fettpartikel in der Milch Passive und aktive Sensoren “Smarte” Sensoren: mit integrierter Signalaufbereitung

21 Folie 21 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Analoge und digitale Sensoren Analoge Sensoren werden direkt an den Controller angeschlossen (GPIO); AD- Wandlung im Chip Digitale Sensoren besitzen eigenen Prozessor und kommunizieren über ein Protokoll mit der CPU (CAN, I2C, …) z.B. Lego Mindstorms EV3: analoge Sensoren  Spannungsmessung, 100=Kurzschluss, 0=kein Kontakt  Über U=R*I lässt sich Widerstand messen  Schalter, Temperatursensor (passiv)  Lichtsensor, Drehsensor (aktiv) - 3 ms Batteriespannung, 0.1 ms Sensorwert digitale Sensoren  z.B. Ultraschall-Abstandsmessung  z.B. Schallsensor  z.B. Gyroskop  z.B. Kamera mit Bildverarbeitungssoftware

22 Folie 22 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Beispiel: CMOS Bildsensor Based on standard production process for CMOS chips, allows integration with other components.

23 Folie 23 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Andere Sensoren Sehr viele sehr unterschiedliche Sensoren verfügbar  Wiki listet über 100 Sensortypen - Pressure sensors - Proximity sensors - Engine control sensors - Hall effect sensors  Kosten: 0.01€ € Spezialsensoren Fingerabdruck-Leser Barometer GPS-Empfänger Regensensor für Scheibenwischer Milchfettgehaltssensor für Tankwagen

24 Folie 24 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Aktuatoren Displays, LEDs, Lämpchen Elektromagnete Motorausgänge  Leistungssteuerung über Pulsweitenmodulation (PWM)  meist separate Motorcontroller

25 Folie 25 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Zusatzfolien

26 Folie 26 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Discretization of time V x is a sequence of values or a mapping ℤ  ℝ In this course: restriction to digital information processing; Known digital computers can only process discrete time series.  Discrete time; sample and hold-devices. Ideally: width of clock pulse -> 0 In this course: restriction to digital information processing; Known digital computers can only process discrete time series.  Discrete time; sample and hold-devices. Ideally: width of clock pulse -> 0 V e is a mapping ℝ  ℝ (C) Marwedel

27 Folie 27 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Aliasing Impossible to reconstruct fast signals after slow sampling: multiple fast signals share same sampled sequence; Example: Signal: 5.6 Hz; Sampling: 9 Hz [http://www.cise.ufl.edu/~prabhat/Teaching/cis6930-f04/comp1.ppt] ~1 s

28 Folie 28 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Quantization Noise N = (approximated - real signal) called quantization noise. Example: quantization noise for sine wave * [http://www.beis.de/Elektronik/DeltaSigma/DeltaSigma.html]

29 Folie 29 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Discretization of values: A/D-converters 1. Flash A/D converter (1) Digital computers require digital form of physical values  A/D-conversion; many methods with different speeds. Example: 1. Flash A/D converter: Digital computers require digital form of physical values  A/D-conversion; many methods with different speeds. Example: 1. Flash A/D converter: Encodes input number of most significant ‘1’ as an unsigned number, e.g. “1111” -> “100”, “0111” -> “011”, “0011” -> “010”, “0001” -> “001”, “0000” -> “000” (Priority encoder). (C) Marwedel

30 Folie 30 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Discretization of values: A/D-converters 1. Flash A/D converter (2) Parallel comparison with reference voltage Speed: O(1) Hardware complexity: O(n) with n= # of distinguished voltage levels Applications: e.g. in video processing (C) Marwedel

31 Folie 31 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Discretization of values 2. Successive approximation Key idea: binary search: Set MSB='1' if too large: reset MSB Set MSB-1='1' if too large: reset MSB-1 Speed: O(ld(n)) Hardware complexity: O(ld(n)) with n= # of distinguished voltage levels; slow, but high precision possible. (C) Marwedel

32 Folie 32 H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme Successive approximation (2) t V VxVx V-V- (C) Marwedel


Herunterladen ppt "Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer."

Ähnliche Präsentationen


Google-Anzeigen