Date post: | 05-Apr-2015 |
Category: |
Documents |
Upload: | melusina-hentschel |
View: | 104 times |
Download: | 0 times |
Technische Informatik I (SS 2006) 1
Teil 5: Embedded Systems
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
Technische Informatik I (SS 2006) 3
Anwendung von „Embedded Systems“
z.B. Fließbandsteuerungoder Steuerung von Prozessen in industrieller Fertigung
mußIn
Echtzeitarbeiten
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
Technische Informatik I (SS 2006) 5
Teil 5: Embedded Systems
5a: Mikrocontroller
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
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
Technische Informatik I (SS 2006) 8
Intel 8051
„nur“ 256 RISC
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 !
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
Technische Informatik I (SS 2006) 11
HARVARD-Architektur
Datenspeicher
Befehlsspeicher
Programm- und Datenspeicher werden getrennt
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
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 !
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
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)
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…)
Technische Informatik I (SS 2006) 17
Teil 5: Embedded Systems
5b: Transputer
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)
Technische Informatik I (SS 2006) 19
Transputer Array
Technische Informatik I (SS 2006) 20
Transputer T805
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
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“
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 (!)