technische informatik i (ss 2006) 1 teil 5: embedded systems
TRANSCRIPT
![Page 1: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/1.jpg)
Technische Informatik I (SS 2006) 1
Teil 5: Embedded Systems
![Page 2: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/2.jpg)
Technische Informatik I (SS 2006) 2
Definition „Embedded System“
Digitale Schaltung (ggfs. plus AD/DA-Wandler), die Teil einer größeren Einheit (evtl. mit mechanischen Elementen) ist.
Bsp: KFZ: Motorsteuerung, ABS, Klimaanlage Maschinenbau: Steuerung für Fräse Haushalt: Waschmaschine, Mikrowelle Bank: Geldautomat
oftmals „Echtzeit“-Anwendung(d.h. System muß in jedem Fall innerhalb von n sauf einen Interrupt reagieren,z.B. ABS beim Auto)
single-chip computer
![Page 3: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/3.jpg)
Technische Informatik I (SS 2006) 3
Anwendung von „Embedded Systems“
z.B. Fließbandsteuerungoder Steuerung von Prozessen in industrieller Fertigung
mußIn
Echtzeitarbeiten
![Page 4: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/4.jpg)
Technische Informatik I (SS 2006) 4
Anforderungen an Mikrocontroller
Kosten: möglichst gering (da oft hohe Stückzahlen benötigt)
Geschwindigkeit: eher langsam, Taktrate <20 MHz, weil:
Anforderung an Stromverbrauch: möglichst low power(z.B. im Auto notwendig)
8 oder 16-Bit-Prozessoren ausreichend für den Aufgabenbereich
Speicher: meist kein Bedarf für größeren Speicher, hilfreich: on-chip-Memory, um Platz zu sparen
I/O: dedizierte I/O-Pins, für Interrupt, Timer, serielle Ports, analoge Signale, etc. etc.
Beispiele: 8051, Transputer, DSPs
![Page 5: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/5.jpg)
Technische Informatik I (SS 2006) 5
Teil 5: Embedded Systems
5a: Mikrocontroller
![Page 6: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/6.jpg)
Technische Informatik I (SS 2006) 6
Intel 8051
4k ROM für Programmcode 128 Byte (!) RAM
mehr nicht 4 Ports IO mit 32 Pins Externer Speicher Harvard-Architektur ist Industriestandard geworden nicht nur gefertigt von Intel,
sondern auch von Analog Devices, Atmel, Maxim/Dallas, Oki, Philips, Texas Instruments
5 interrupts(mit 2 interrupt Prioritäten)
full duplex UART
![Page 7: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/7.jpg)
Technische Informatik I (SS 2006) 7
Intel 8051
mit 12 MHz Clock kann der 8051 immerhin1 million one-cycle instructions per second or 500,000 two-cycle instructions per second
![Page 8: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/8.jpg)
Technische Informatik I (SS 2006) 8
Intel 8051
„nur“ 256 RISC
![Page 9: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/9.jpg)
Technische Informatik I (SS 2006) 9
Wo kann man den 8051 kaufen ?
bei CONRAD bestellbar nur EURO 1,82 von Infineon
gibt es auch bereits als „cores“ für FPGAs !
![Page 10: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/10.jpg)
Technische Informatik I (SS 2006) 10
auch Intel 80x86 SISD = single instruction single data
> SIMD, MISD und MIMD sind nicht von-Neumann Typ Prinzip
Von-Neumann Architektur
![Page 11: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/11.jpg)
Technische Informatik I (SS 2006) 11
HARVARD-Architektur
Datenspeicher
Befehlsspeicher
Programm- und Datenspeicher werden getrennt
![Page 12: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/12.jpg)
Technische Informatik I (SS 2006) 12
8051 Anwendungen
in fast jedem Touchpad (!) Automatikgetriebe KFZ Fernbedienungen TV in Satelliten (z.B. EOS) Kleinroboter
(für z.B. Erkundung von Pyramiden oder Roboter-Wettkämpfen) Waschmaschinen
(Wassermenge abhängig von Wäschemenge) Kühlschrank
(Temperaturregelung) automatische Sonnenmarkisen
![Page 13: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/13.jpg)
Technische Informatik I (SS 2006) 13
8051: einer der ersten Chips mit Resetlogik
Bsp. Drucker Power-On-Self-Test
muß über den gesamten Chip synchronisiert werden (so daß der ganze Chip „weiß“, daß jetzt ein reset passiert ist)
z.B. schreibe Nullen überall ins Memory
oder:
clear alle interrupts !
![Page 14: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/14.jpg)
Technische Informatik I (SS 2006) 14
8051 Speicher
Externes RAM 80 Register !
(das ist möglich weilRISC !)
4 Bänke mit jeweils 8 Registern (R0-R7)
nur eine Bank jeweils aktiv 128 Bit-Variablen !
SETB 80h Achtung: nach Reset zeigt
Stackpointer immer auf 08h
![Page 15: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/15.jpg)
Technische Informatik I (SS 2006) 15
Programmierung des 8051
ROM wurde von Entwickler (Intel oder Drittentwickler)an Hersteller geschickt
Später: EEPROM Alternative für den Selbst-Programmierer
es gibt z.B. Assembler bereits unter MS-DOS 6.0,die 8051 binär-Code erzeugen
dann download via Pin I/O(Einschränkung: in diesem Falle nur externes RAM/ROM benutzbar)
![Page 16: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/16.jpg)
Technische Informatik I (SS 2006) 16
8051 Special Function Register (SFR)
SP: Stack Pointer
DPL/DPH:Data pointer low/high16 Bit Pointerauf 64k Adressraum
PCON=Power control (z.B. sleep-modus)
P[0-3]: Port Bits (P0, P2 nicht bei externem Speicher)
TCON, TMOD, TL, TH: Timer Control
PSW (Program Status Word): Status Bits (Carry, Overflow…)
![Page 17: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/17.jpg)
Technische Informatik I (SS 2006) 17
Teil 5: Embedded Systems
5b: Transputer
![Page 18: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/18.jpg)
Technische Informatik I (SS 2006) 18
Transputer
1983 inmos Ltd., später SGS Thomson der erste Chip, der remote gebootet werden konnte
(über ein Netzwerk, wie in diesem Fall Transputer Serial Links) T225 16-bit Transputer
T425 32-bit Transputer ST20450 32-bit Transputer T400 32-bit Low cost Transputer T805 32-bit Floating Point Transputer T9000 32-bit Floating Point Transputer
speziell designed für Chip-by-Chip Arrays
(verbunden durch Links) parallele Programmierung
(intern)
![Page 19: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/19.jpg)
Technische Informatik I (SS 2006) 19
Transputer Array
![Page 20: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/20.jpg)
Technische Informatik I (SS 2006) 20
Transputer T805
![Page 21: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/21.jpg)
Technische Informatik I (SS 2006) 21
Parallele Programmierung
Programmiersprache OCCAM Wilhelm von Occam
Franziskaner Mönch ~1290-1350(Oxford, Paris, München)Occams Rozor = „keine nicht-notwendigen Annahmen machen“
Sprache OCCAMbasierend auf CSP (communicating sequential processes)Hoare, 1978dann entwickelt von David May, INMOS, >1982
speziell für Transputer
![Page 22: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/22.jpg)
Technische Informatik I (SS 2006) 22
Parallele Programmierung
• SEQ PAR t1:=a –- Kommentar ist „--“ t2:=b t3:=c x:=t1 y:=t2 z:=t3
• PAR statements werden nicht zwangsläufig paralell ausgeführt, sondern nur bevorzugt
• Definition von PAR: „Reihenfolge egal“
![Page 23: Technische Informatik I (SS 2006) 1 Teil 5: Embedded Systems](https://reader031.vdocuments.pub/reader031/viewer/2022013011/55204d6549795902118baed3/html5/thumbnails/23.jpg)
Technische Informatik I (SS 2006) 23
Parallele Programmierung
Kommunikation über Kanäle Schreiben und Lesen in einen Kanal geht gleichzeitig
PAR SEQ ch1!a –- lese a aus Kanal ch1 ch2?b –- SEQ ch1?a –- schreibe a in Kanal ch1 ch2!c –-geht
PAR SEQ ch1!a –- lese a aus Kanal ch1 ch2?b –- SEQ ch1!a –- lese a aus Kanal ch1 ch2?c –-
geht nicht, sondern generiert einen Deadlock (!)