49
Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller und Mikroprozessoren Theo Ungerer Universität Augsburg Institut für Informatik

Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

Embed Size (px)

Citation preview

Page 1: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

Vorlesungen im WS 2002/2003

Mikrorechnertechnik I

Uwe Brinkschulte

Universität Karlsruhe

Institut für Prozessrechentechnik, Automation

Mikrocontroller und Mikroprozessoren

Theo Ungerer

Universität Augsburg

Institut für Informatik

Page 2: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

2Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Allgemeines

Gemeinsame Televorlesung Karlsruhe / Augsburg

Karlsruhe Augsburg

Prof. Dr. U. Brinkschulte Prof. Dr. Th. Ungerer

[email protected] [email protected]

Sprechstunde: Sprechstunde:

Donnerstag, 10:00 - 11:30 Dienstag, 10:30-11:30

Zi. 119, Gebäude 40.28 Zi. 403, Geb. Eichleitnerstr.30

Page 3: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

3Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Allgemeines

Buch zur Vorlesung:

Brinkschulte, Ungerer

Mikrocontroller und Mikroprozessoren

Springer Verlag, Heidelberg, 2002

Page 4: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

4Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Vorlesungsziele

Grundlagen der Mikrorechnertechnik

Aufbau und Funktionsweise von Mikroprozessoren

Aufbau und Funktionsweise von Mikrocontrollern

Beispiele heutiger industrieller Mikroprozessoren und -

controller

Stand der Forschung und Zukunftstechnolgien

Vermittelt werden sollen:

Page 5: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

5Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Vorlesungsziele

Zusammenspiel der Komponenten eines

Mikrorechnersystems

Bussysteme, Peripherie, modularere Systemaufbau

Signalprozessoren

Einsatz und Aufbau von Feldbussen

Dienstkonstruktion für mikrorechnergestützte

Automatisierungssysteme

Vorlesung Mikrorechnertechnik II (Sommersemester in Karlsruhe)

Page 6: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

6Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Vorlesungsinhalte und -strukturierung

1. Grundlagen

2. Grundlegende Prozessortechniken

3. Mikrocontroller

4. Mikrocontroller-Komponenten

5. Beispiele verschiedener Mikrocontroller

6. Hochperformante Mikroprozessoren

7. Die Superskalartechnik

8. Beispiele verschiedener Mikroprozessoren

9. Zukunftstechniken

Page 7: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

7Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

1.1Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC

Einige grundlegende Begriffe zu Mikroprozessoren

Mikroprozessor:

Zentraleinheit eines Datenverarbeitungssystems

heute meist mit weiteren Komponenten auf einem einzigen Chip untergebracht

Zentraleinheit = CPU, Central Processing Unit

Page 8: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

8Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Basiskomponenten eines Mikroprozessors

Rechenwerk

Steuerwerk

Schnittstelle zur Außenwelt

Weitere Komponenten (je nach Komplexität)

Cache

Virtuelle Speicherverwaltung

Prozessorkern

Ziel: möglichst effiziente Ausführung eines Programms

Page 9: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

9Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Weitere Begriffe:

Mikroprozessorsystem

Technisches System, welches einen Mikroprozessor enthält. Dies muss kein Rechner sein.

Mikrorechner (Mikrocomputer)

Rechner, der als Zentraleinheit einen oder mehrere Mikroprozessoren enthält.

Enthält weiterhin Speicher, Ein-/Ausgabeschnittstellen sowie ein Verbindungssystem.

Page 10: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

10Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Mikrorechnersystem (Mikrocomputersystem)

Mikrorechner mit an die Ein-/Ausgabeschnittstellen angeschlossenen Peripheriegeräten,

z.B. Maus, Tastatur, Bildschirm, Drucker, ...

Page 11: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

11Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Verbindungseinrichtung

Zentraleinheit

Steuerwerk Rechenwerk

Speicher(für Programme und

Daten)

Ein-/Ausgabe-

Schnittstellen

Peripherie-Geräte

Mikroprozessor

Mikrorechner

Mikrorechnersystem

Prozessorkern

Page 12: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

12Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Mikrocontroller

Mikrorechner auf einem Chip

Ziel: Steuerungs- oder Kommunikationsaufgabe mit möglichst wenigen Bausteinen lösen

Prozessorkern, Speicher und Ein-/Ausgabeschnittstellen sind auf die Lösung solcher Aufgaben zugeschnitten

es existiert eine Vielzahl verschiedener Mikrocontroller

Page 13: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

13Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Deshalb meist: Organisation in Mikrocontrollerfamilien

Die Mitglieder einer Familie besitzen

meist gleichen Prozessorkern

unterschiedlichen Speicher

unterschiedliche Ein-/Ausgabeschnittstellen

Page 14: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

14Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

SoC (Systems on Chip)

Konsequente Weiterentwicklung der Mikrocontrolleridee, Systeme mit möglichst wenigen Bausteinen zu realisieren

Mikrocontroller: standardisierter Rechnerbaustein, mit wenigen anderen Komponenten entsteht anwendungsspezifisches System

SoC: vollständiges anwendungsspezifisches System auf einem einzigen Chip

Page 15: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

15Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Realisierungsmöglichkeiten von SoC

Bereitstellung und Kombination von Hardwarebibliotheken => FPGA, ASIC

Rekonfigurierbare Hardware

- Fester Prozessorkern und Speicher

- Rekonfigurierbare Zellen

Weitere Herausforderung bei SoC: Kombination von analogen und digitalen Komponenten

Page 16: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

16Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Signalprozessoren

Spezielle Prozessorarchitekturen zur Verarbeitung analoger Signale

Hochleistungsarithmetik zur schnellen fortgesetzten Multiplikation und Addition (MAC, Multiply and Accumulate)

=> schnelle Berechnung von Polynomen

vom Anwender steuerbare Parallelität

spezielle Schnittstellen zur Ein- und Ausgabe von analogen Signalen

Werden in der Vorlesung MRT II näher behandelt

Page 17: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

17Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

1.2PC-Systeme

Heute verbreitetste Form von Mikrorechnern

1980 von IBM eingeführt

unter ständiger Weiterentwicklung zum Quasi-

Standard

geworden

Merkmale: zentrales Motherboard (Mainboard),

zusätzliche Komponenten in Form von

Steckkarten

Page 18: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

18Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Grundlegende Bestandteile eines PCs:

Mikroprozessor

Cache

Northbridge

Systembus und Hauptspeicher

verbindet

Southbridge

Ein-/Ausgabeeinheiten

verbindet

Page 19: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

1. Grundlagen

Beispiel:

K7M

Motherboard

von Asus

AMD AthlonTM

Microprocessor

AMD 751TM

System Controller

AMD 756TM

Peripheral Bus Controller

SDRAM

AGP Graphics

LAN

BIOS

Athlon System Bus

Memory Bus

AGP Bus

PCI Bus

ISA Bus

USB

UDMA/66

Page 20: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

20Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Bus Bandbreite in Bit Taktrate in MHz Datenrate in MByte/sAthlon System Bus 64 200 1.600Memory Bus 64 100 800AGP Bus 32 66 266PCI Bus 32 33 133ISA Bus 16 8,3 16,6USB 1 12 1,5UDMA/66 16 33 66,6

Eigenschaften der verschiedenen Busse:

Page 21: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

Layout:

Athlon Motherboard

K7M von Asus

Page 22: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

22Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

1.3 Eingebettete und ubiquitäre Systeme

Eingebettete Systeme

Datenverarbeitungssysteme, die in ein technisches Umfeld eingebettet sind

Steuern und Überwachen dieses Umfeld

Beispiel: Steuerung einer Kaffeemaschine: Koordination von Wasserbehälter,

Heizung und Ventilen zur Bereitung eines Kaffees

Ein wesentliches Anwendungsfeld von Mikrocontrollern und Mikroprozessoren

Page 23: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

23Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Weiteres Beispiel:

PC auf dem Schreibtisch zu Hause

kein eingebettetes System, stellt seine Datenverarbeitungsleistung dem

Menschen zur Verfügung

PC in der Fabrikhalle zur Steuerung einer Anlage

eingebettetes System

Page 24: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

24Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Gegenüber reinen Rechensystemen stellen eingebettete Systeme weitere Anforderungen:

Schnittstellenanforderungen

mehr und vielfältigere Schnittstellen als bei reinen Rechensystemen

Mechanische Anforderungen

robuster Aufbau, rauhe Umgebung, mechanische Belastung, begrenzter Raum, vorgegebene geometrische Form

Page 25: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

25Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Elektrische Anforderungen

vorgegebene Versorgungsspannung, limitierter Energieverbrauch, geringe Abwärme

Zuverlässigkeitsanforderungen

Ausfallsicherheit, Notbetrieb, z.B. bei Bremsen, der Steuerung eines Kernreaktors, einem Flugzeug, ...Zeitanforderungen

Ausführung von Tätigkeiten innerhalb einer vorgegebenen Zeit => Echtzeitsysteme

Page 26: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

26Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Einige zusätzliche Bemerkungen zu Echtzeitsystemen

Nicht-Echtzeitsystem: logische Korrektheit

Echtzeitsystem: logische Korrektheit + zeitliche Korrektheit

Ein Ergebnis ist nur korrekt, wenn es logisch korrekt ist und zur rechten Zeit zur Verfügung steht!

Page 27: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

27Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Klassen von Echtzeitsystemen:

Harte Echtzeitsysteme

Zeitbedingungen müssen unter allen Umständen eingehalten werden. Das Verpassen

einer Zeitschranke ist nicht tolerierbar

Beispiel: Kollisionserkennung in einem automatischen Fahrzeug

Page 28: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

28Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Klassen von Echtzeitsystemen:

Feste Echtzeitsysteme

Feste Zeitschranken

Ein Ergebnis ist nach Überschreiten der Zeitschranke wertlos (Verfallsdatum)

Die Folgen sind jedoch nicht unmittelbar katastrophal

Beispiel: Positionserkennung in einem automatischen Fahrzeug

Page 29: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

29Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Klassen von Echtzeitsystemen:

Weiche Echtzeitsysteme

Weiche Zeitschranken

Ein Überschreiten um einen gewissen Wert ist tolerierbar

Mehr Richtlinie denn harte Zeitschranke

Beispiel: Periodische Temperaturmessung für eine Anzeige

Page 30: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

30Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Wesentliche Anforderungen an Echtzeitsysteme

Zeitliche Vorhersagbarkeit

spielt die dominierende Rolle

eine hohe Verarbeitungsgeschwindigkeit ohne Vorhersagbarkeit ist wertlos

wichtige Größe: WCET (Worst Case Execution Time)

heutige Prozessoren mit Caches und spekulativer Programmausführung sind hier problematisch

Page 31: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

31Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

1. Grundlagen

Längerfristige Verfügbarkeit

Leistung muss über einen längeren Zeitraum erbracht werden

Betriebspausen, z.B. zur Reorganisation, sind nicht zulässig (Beispiel Garbage Collection)

Page 32: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

32Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Anwendung: Allgegenwärtige Computer - Ubiquitous Computing

allgegenwärtig = überall verbreitet = ubiquitär

Computer „unsichtbar“, hinter Alltags-

gegenständen verborgen

Neuer Begriff:

Ubiquitous Computing

Page 33: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

33Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Begriff Ubiquitous Computing

Anfang der 90er Jahre von Mark Weiser geprägt Zukunftsvision: Mit Mikroelektronik angereicherte Gegenstände

sollen so alltäglich werden, dass die enthaltenen Rechner als solche nicht mehr wahrgenommen werden.

Ubiquitäre Systeme sind eine Erweiterung der eingebetteten Systeme.

Zusätzlich zu einem eingebetteten System kommt noch Umgebungswissen hinzu, das es diesem System erlaubt, sich in hohem Maße auf den Menschen einzustellen.

Als ubiquitäre (allgegenwärtige) Systeme bezeichnet man eingebettete Rechnersysteme, die selbstständig auf ihre Umwelt reagieren.

Rechner in dienender und nicht beherrschender Rolle. Die Benutzer sollen nicht in eine virtuelle Welt gezogen werden,

sondern die gewohnte Umgebung soll mit Computerleistung angereichert werden.

Page 34: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

34Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Die dritte Ära der Rechnernutzung

Phase 1: Großrechner

Phase 2: Personal Computer

Phase 3: Ubiquitäre Systeme

Page 35: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

35Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Was kennzeichnet ubiquitäre Systeme?5 Merkmale

Ubiquitäre Systeme sind eine Erweiterung sogenannter „eingebetteter Systeme“Rechner, die in technische Systeme eingebettet sind, also z.B.

Waschmaschine, Fahrkartenautomaten, ABS im Auto etc.überall in hoher Zahl vorhanden - Allgegenwartubiquitäre Systeme nutzen drahtlose Vernetzung

Handytechnologien, Funk-LAN, Bluetooth, InfrarotUmgebungswissen, das es ubiquitären Systemen erlaubt, sich in

hohem Maße auf den Menschen einzustellenNeue Geräte wie z.B. Handhelds, tragbare Rechner

Page 36: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

36Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Technologien ubiquitärer Systeme

• Einbeziehung von Informationen aus der natürlichen Umgebung der Geräte• Umgebungswissen erstellt durch Erfassung, Interpretation, Speicherung,

Austausch und Verbindung von Sensorendaten• Umgebungswissen erlaubt ubiquitären Systemen sich in hohem Maße auf den

Menschen einzustellen

Gerät kann Informationen in Abhängigkeit vom jeweiligen Aufenthaltsort auswählen und anzeigen

Gerät passt sich in seinem Verhalten der jeweiligen Umgebung an

Page 37: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

37Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Anwendungsbeispiel: MediaCup (Teco Karlsruhe)

Page 38: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

38Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Wie funktioniert die Tasse?

Der Boden der MediaCup enthält die Elektronik in einem abnehmbaren Gummiüberzieher.

Kern ist ein kleiner Mikroocontroller Die Elektronik wird kabellos mit

Energie versorgt; ein 15 minütiger Aufladevorgang kann die Tasse etwa 10 Stunden mit Energie versorgen.

Sensoren erkennen Temperatur und Bewegungszustand der Tasse.

Diese Informationen wird von der Tasse in den Raum gesendet.

Page 39: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

39Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Leistungsmessung und Leistungsvergleich

Auswahl einer RechenanlageVeränderung der Konfiguration einer bestehenden Anlage (tuning) Entwurf von Rechenanlagen

Verfahren zur Bewertung der Leistungsfähigkeit:

(1) analytische Berechnungen

(2) Laufzeitmessungen bestehender Programme

Page 40: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

40Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Analytische Methoden

Maßzahlen für die Operationsgeschwindigkeit: (Hypothetische Maximalleistung !!) MIPS (Millions of Instructions per Second) MFLOPS (Millions of Floating Point Operations per Sec.)

Mixe: (ebenfalls theoretisch errechnet) Bei einem Mix wird für jeden einzelnen Befehl die mittlere Ausführungszeit bestimmt,

die zusätzlich durch charakteristische Gewichtungen bewertet wird.

Kernprogramme: typische Anwendungsprogramme, die für einen zu bewertenden Rechner geschrieben

werden keine Messungen am Rechner, sondern die Gesamtausführungszeit wird anhand der

Ausführungszeiten für die einzelnen benötigten Maschinenbefehle berechnet.

Page 41: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

41Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Benchmark-Programme

Ein Benchmark besteht aus einem oder mehreren Programmen im Quellcode.

Diese werden für die zu vergleichenden Rechner übersetzt, danach werden die Ausführungszeiten gemessen und verglichen.

Es geht immer auch der gesamte Rechneraufbau sowie die Güte des verwendeten Compilers und der Betriebssoftware mit ein.

Benchmarks können sein: Pakete von echten Benutzerprogrammen Standardisierte Benchmarks

SPEC-Benchmark Suite

Page 42: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

42Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

SPEC-Benchmarks

SPEC Standard Performance Evaluation Corporation(seit 1989, verschiedene Hersteller zusammengeschlossen)allgemeine Anwendungsaufgaben für Rechensysteme, vor allem Angabe von Geschwindigkeit und Durchsatz

Zahlreiche Benchmark suites, z.B. SPEC95, SPECweb96, SPEC JVM98 SPEC JBB2000 SPEC2000

Page 43: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

43Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

SPEC95

Gemessen wird CPU-Leistung inkl. Cache, Hauptspeicher und Compiler, kaum Betriebssystem und Ein-/Ausgabe

Referenzrechner der SPEC95-Benchmark-Suite: Sun SPARCstation 10/40-Rechner mit vier 40

MHz SuperSPARC-Prozessoren ohne Sekundär-Cache, Integer-Test-Programme (ANSI C) Gleitkomma-Programme (Fortran77) „SPECmark“: Kennzahl ist geometrische Mittel aller

Kennzahlen der Programmfolge

Page 44: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

44Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

SPECint95: 8 Integer-Test-Programme (ANSI C)

go: Go-Spiel, das drei Spiele gegen sich selbst spielt,m88ksim: ein Simulator für den 88110-Mikroprozessor,gcc: der GNU-C-Compiler,compress: Komprimierprogramm,li: LISP-Interpreter,ijpeg: JPEG-Komprimierprogramm,perl: PERL-Interpreter,vortex: Transaktions-Benchmark mit einer

objektorientierten Einbenutzer-Datenbank von 40 Mbyte Größe.

Page 45: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

45Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

SPECfp95: 10 Gleitkomma-Programme (Fortran77)

tomcatv: Netzgenerator mit doppelter Genauigkeit,swim: Berechnung eines Wasserwellenmodells in einfacher

Genauigkeit,su2cor: Monte-Carlo-Simulation aus dem Bereich der

Quantenphysik,hydro2d: Lösung einer hydrodynamischen Navier-Stokes-

Gleichung zur Berechnung galaktischer Strömungen,mgrid: Gleichungslöser nach dem Mehrgitter-Verfahren im

dreidim. Potentialfeld,

Page 46: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

46Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

SPECfp95: 10 Gleitkomma-Programme (Fortran77)

applu: Lösung einer parabolischen-elliptischen partiellen Differentialgleichung,

turb3d: Simulation isotropischer, homog. Turbulenzen (Würfel, Navier-Stokes-Gl.)

apsi: berechnet Temperatur, Wind, Ausbreitungsgeschw. und die Verteilung von Umweltverschmutzungen,

fppp: Quantenchemie,

wave5: zweidim. Simulation elektromagnetischer Partikel aus der Plasmaphysik.

Page 47: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

47Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Beispiel zu SPEC95

600 MHz Pentium III: SPEC-int95 = 24 SPECfp95 = 15.9

450 MHz Sun UltraSPARC-II: SPECint95 = 19.7 SPECfp95 = 27.9

Ziel: vergleichbare Angaben für unterschiedliche Systeme

Warnung: einzelne Werte geben nicht immer reale Verhältnisse wieder, daher nur erster Anhaltspunkt für eine Rechnerauswahl

Page 48: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

48Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Weitere Benchmark Suites

Basic Linear Algebra Subprograms (BLAS): für numerische Anwendungen Kern des LINPACK-Softwarepakets zur Lösung von Systemen linearer

Gleichungen TOP-500-Liste der größten Parallelrechner

Whetstone-Benchmark: in den siebziger Jahren entwickelt besteht aus einem einzigen Programm mit viel Gleitkommarechnungen

Dhrystone-Benchmark: weiteres synthetisches Benchmark-Programm Heute nur noch wenig aussagekräftig

Powerstone-Benchmark-Suite um den Energieverbrauch verschiedener Mikrocontroller zu vergleichen

Page 49: Vorlesungen im WS 2002/2003 Mikrorechnertechnik I Uwe Brinkschulte Universität Karlsruhe Institut für Prozessrechentechnik, Automation Mikrocontroller

49Universität Karlsruhe - Prof. Dr. U. Brinkschulte Universität Augsburg - Prof. Dr. Th. Ungerer

Powerstone-Benchmarkprogramme

Auto: Fahrzeugsteuerungen,

Bilv: logische Operationen und Schieben,

Bilt: grafische Anwendung,

Compress: UNIX-Kompressions-Programm,

Crc: CRC-Fehlererkennung,

Des: Datenverschlüsselung,

Dhry: Dhrystone,

Engine: Motor-Steuerung,

fir_int: ganzzahlige FIR-Filter,

G3fax: FAX Gruppe 3,

G721: Audio-Kompression,

Jpeg: JPEG-24-Bit-Kompression,

Pocsag: Kommunikationsprotokoll für Pager,

Servo: Festplattensteuerung,

Summin: Handschriftenerkennung,

Ucbqsort: Quick Sort,

V42bits: Modem-Betrieb,

Whet: Whetstone.