22
Seite 1 Informatik Hardware Th Letschert

Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Embed Size (px)

Citation preview

Page 1: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 1

Informatik

Hardware

Th Letschert

Page 2: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 2

Aufbau von Computersystemen

Zentraleinheit und Peripherie

– ZentraleinheitZur Zentraleinheit zählen

der Prozessor, der Arbeitsspeicher (RAM), die verschiedenen Bus- und Anschluss-Systeme sowie das Ein-/Ausgabesystem.

– PeripherieZur Peripherie gehören die Komponenten, die an die Zentraleinheit angeschlossen werden, nämlich:

Ausgabegeräte wie Bildschirme, Beamer, Drucker, Plotter

Eingabegeräte wie Tastatur, Maus, Scanner, Mikrofon Ein- und Ausgabegeräte wie Festplatten-Laufwerke,

CD-ROM- bzw. DVD-Laufwerke, Modems, Netzwerkkarten

Th Letschert

Page 3: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 3

Aufbau von Computersystemen

Das EVA-Prinzip und der von-Neumann-Rechner

EingabeZuerst gelangen über eine Eingabeeinheit wie z.B. eine Tastatur, eine Maus, einen Memorystick usw. Daten in den Computer.

Verarbeitung

Die Verarbeitung dieser Daten findet dann in der Zentraleinheit statt.

Ausgabe Schließlich erfolgt die Ausgabe über ein Ausgabegerät wie Bildschirm, Drucker, Festplatte usw. erfolgt.

Th Letschert

Page 4: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 4

Aufbau von Computersystemen

Komponenten eines von-Neumann-Rechners

Prozessor (CPU) Der Prozessor besteht aus

Steuerwerk Das Steuerwerk liest die Befehle und deren Operanden nacheinander ein und interpretiert diese anhand seiner Befehlstabelle. RechenwerkDas Rechenwerk führt die entsprechenden arithmetischen und logischen Operationen durch.

ArbeitsspeicherDer Arbeitsspeicher enthält die Befehle von ablaufenden Programmen und die zugehörigen Daten.

BussystemDas Bussystem ist für den Transport von Daten zwischen den Einheiten wie dem Prozessor, dem Arbeitsspeicher und den Ein-/Ausgabeeinheiten zuständig.

Ein- / AusgabeeinheitenDie Ein-/Ausgabeeinheiten nehmen neue Programme und Daten entgegen und geben fertig verarbeitete Daten aus.

Th Letschert

CPUSteuerwerk Rechenwerk

Bussystem

Speicher E/A-System

Page 5: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 5

Aufbau von Computersystemen

Aufbau heutiger Rechner

– Der heutige Aufbau von Rechnern folgt weitgehend dieser klassischen von-Neumann-Architektur.

– Bei heutigen PCs befinden sich diese Grundeinheiten physikalisch auf der so genannten Hauptplatine (Mainboard) und sind dort elektrisch verschaltet.

– Die Funktionsweise des von-Neumann-Rechners beruht auf folgendem sehr einfachen Prinzip:

Auf den Inhalt der in einem Programmbefehl angegebenen Speicherzelle wird die im Befehl angegebene Operation angewendet

Th Letschert

CPU Speicher

Befehl

Daten

Daten

Befehl

Befehl

Befehl

Daten

Dasten

Daten. . . . . .

1

23

4

1. Befehl laden2. Daten laden3. Befehl ausführen4. Daten speichern

Page 6: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 6

Aufbau von Computersystemen

Mainboard (auch Motherboard)

(Mikro-) Prozessor (CPU = Central Processing Unit)führt die Programme aus (Anwender und Systemprogramme)

RAM-Arbeitsspeicher (RAM = Random Access Memory) (Haupt-) Speicher enthält die Programme, die gerade ausgeführt werden sowie die dabei benötigten Daten.

ROM-Speicher (ROM = Read-only-Memory) enthält meist ein Programm (BIOS bei IBM-PCs), das beim Einschalten die wichtigsten Hardwarekomponenten überprüft und dann das Booten des Betriebssystems von einem Speichermedium wie einer Festplatte oder einer CD veranlasst.

Busse und Schnittstellen

Kommunikation zwischen den Bestandteilen des Mainboards und Anschluss von Peripheriegeräten

Chipsatzfest auf dem Mainboard untergebrachte Schaltkreise für die Steuerung für der Anschlüsse des Mainboards

Th Letschert

Page 7: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 7

Zentraleinheit: Prozessor / Bus

Prozessor

Ein Prozessor besteht aus:ALU (Arithmetic Logical Unit)Rechenwerk für mathematische / logische Operationen

(Arbeits-) Register Speicherplätze für Daten innerhalb des Prozessors. Die ALU rechnet mit den Werten, die sich in den (Arbeits-) Registern befinden.

Steuerwerk Kontrolle der Ausführung, nutzt dabei spezielle Register

Befehlszählerregister Befehlsregister …

Bus / DatenleitungBusse verbinden die CPU mit anderen Komponenten auf dem Mainboard

– Datenbus: Austausch von Daten mit dem Arbeitsspeicher

– Adressbus: Übertragen der Speicheradressen.

– Steuerbus: Ansteuerung der Peripherie-Anschlüsse

Th Letschert

Steuerwerk ALU

RAM E/A-System

Register

Bus

Page 8: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 8

Zentraleinheit: Prozessor

Register

Prozessor-interne Speicherplätzefür binäres Datum bestimmter Länge (z. B. 32-Bit)Arbeitsregister werden

vom Speicher geladenmit arithm. / logischen Operationen manipuliertin den Speicher geschrieben

SteuerregisterBefehlszähler: Adresse des nächsten BefehlsBefehlsregister: Befehl der gerade ausgeführt wird· · ·

Registergröße (z.B. 32, 64 Bit)beeinflusst Leistungsfähigkeit des Prozessors

Pro Befehl manipulierbare Datenmenge Größe des adressierbaren Speichers

Th Letschert

Page 9: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 9

Zentraleinheit: Prozessor

Funktionsweise Prozessor 1.Das Befehlszählerregister des Steuerwerks enthält die Adresse des

nächsten Maschinenbefehls. Die Adresse des Befehls wird über den Adressbus an den Arbeitsspeicher übermittelt.

2.Der Befehl wird aus dem Arbeitsspeicher über den Datenbus in das Befehlsregister geladen. Mittels Dekodierlogik wird der Befehl analysiert und die Ausführung angestoßen.

3.Der Befehl wird ausgeführt; abhängig vom jeweiligen Befehl wird dabei zusätzlich das Lesen von Daten aus dem Arbeitsspeicher, die Ansteuerung von Peripherieschnittstellen, das Rechnen in der ALU oder die Durchführung eines Sprungs im Programm erforderlich. Der Status der jeweiligen Operation wird im Statusregister (Flagregister) angezeigt.

4.Falls ein Sprung stattfand, wird das Befehlszählerregister auf die entsprechende neue Adresse gesetzt, ansonsten wird das Befehlszählerregister um 1 erhöht.

5.Der Prozessor fährt wieder mit dem 1. Schritt fort.

Th Letschert

Page 10: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 10

Zentraleinheit: Prozessor

Maschinencode / Assemblercode

Maschinenbefehle:

Bit-Folgen mit festgelegter Bedeutung (für Menschen unles- / unschreibbar)Spezifisch für jeden Prozessortyp

Assembler (symbolischer Maschinencode)les- / schreibbare Darstellung der Maschinen-Befehle

Th Letschert

100000111100001000001111 Maschinenbefehl : addiere 0F zu Register EDX

83C20F Maschinenbefehl in Hex

add edx,0Fh entsprechender Assemblerbefehl

Beispiel (Intel 80x86)

Page 11: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 11

Zentraleinheit: Prozessor

Leistungsmerkmale eines Prozessors

Wortbreite Datenregister

Größe / Genauigkeit von Werten Datenbus

wie viele Bits können gleichzeitig gelesen / geschrieben werden Adressregister / Adressbus

maximale Größe von Speicheradressen, addressierbarer Speicherbereich Steuerbus

Art der möglichen Peripherieanschlüsse

Taktfrequenz Frequenz des Taktsignals das die CPU steuert IPC-Rate (Instructions per Cycle): Befehle pro Takt: <=1,

durch Parallelverarbeitung: > 1

Leistungsaufnahme zunehmend wichtig (green IT)

Th Letschert

Page 12: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 12

Zentraleinheit: Prozessor

Leistungsmerkmale eines Prozessors

Leistungsbewertung MIPS – Million Instructions per Second

Anzahl der Befehle, die ein Prozessor in einer Sekunde ausführen kann. Dieser Wert wird durch so genannte Benchmark-Tests gemessen. Benchmarks sind Programmpakete, die Befehlsfolgen enthalten, die reale Anwendungen widerspiegeln.

FLOPS – Floating Point Operations Per SecondAnzahl der Gleitpunktoperationen, die ein Prozessor in einer Sekunde ausführen kann. Dieser Wert lässt sich ebenfalls Benchmark-Tests ermitteln.

Th Letschert

Page 13: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 13

Zentraleinheit: Prozessor

Einsatzbereiche von Prozessoren

PC / kleine Server: X86-Architektur Intel / AMD 32 / 64 Bit

Großrechner (Mainframe): Spezial-Architektur IBM / Sun >= 64 Bit enthalten viele (vielkernige) Prozessoren und Spezialprozessoren

in Form von vielen Prozessor-Einheiten : CPUs+Speicher besonders hohe Zuverlässigkeit

eingebettete Systeme: X86-Architektur / Spezial-Architektur unüberschaubare Vielfalt an Spezial- und Standardprozessoren 4 – 128 Bit

Einsatz weniger als 5% direkt in PCs, Workstations und Servern über 95% werden in Geräten, d.h. in so genannten Embedded Systemen

eingesetzt. Hiervon sind etwa 90% der Prozessoren so genannte Mikrocontroller, die neben dem Prozessor zusätzliche weitere HW „on Chip“ enthalten, wie z.B. Speicher (ROM, RAM), Timer, I/O-Ports, ADCs usw..

Th Letschert

Z10 Prozessor(IBM)

Z80 Prozessor(Zilog)

Page 14: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 14

Zentraleinheit: Prozessor

Cache

Zwischenspeicher zwischen CPU und (Haupt-) Speicher (RAM)

enthält zuletzt verwendete Daten und Befehle

Level-1-Cache direkt im Prozessorkern untergebracht wird mit derselben Taktrate betrieben wie der Prozessor selbst. Klein

Level-2-Cache Entweder auf dem Mainboard untergebracht oder im Prozessor,

aber nicht im Prozessorkern. Der Level-2-Cache ist schneller als der normale Arbeitsspeicher,

jedoch langsamer als der Level-1-Cache, dafür größer

Th Letschert

CPU

Cache

RAM

Page 15: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 15

Zentraleinheit: Prozessor

Speicherhierarchie

CPU: Zugriff nur auf Haupt-Speicher

Hauptspeicher alle Daten und Befehle eines Programms in Ausführung

Th Letschert

CPU

Cache

RAM

Festplatte

Nutzung beschleunigt Programmausführung

Nutzung verlangsamt Programmausführung

cachen

swappen

Speicherhierarchie - Register - Level-1 Cche - Level-2 Cache - RAM (Speicher) - Platte - andere Datenträger

CD ···lesen/schreiben

Swapping / Paging

Reicht der Haupt-Speicher nicht aus, dann muss ein Teil der Daten temporär auf die Festplatte ausgelagert werden.System wird sehr stark verlangsamt

Programm inAusführung

Page 16: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 16

Zentraleinheit: Arbeits- (Haupt-) Speicher

Arbeitsspeicher

Enthält alle Daten und Befehle eines Programms in Ausführung

Direkter Zugriff auf Byte-AdressenCPU greift direkt auf einzelne Speicherstellen zuByte-, Wort-/ Doppelwort lesen / schreiben(Von Platte kann nur in großen Blöcken gelesen werden)

RAMDer Arbeitsspeicher besteht im Wesentlichen aus Speicherbausteinen, die man als RAM (Random Access Memory = Speicher mit wahlfreiem Zugriff ) bezeichnet.Bei allen RAM-Bausteinen gilt, dass ihr Inhalt „flüchtig“ ist, d.h. dass sie nur so lange den gespeicherten Wert behalten, wie sie mit Strom versorgt werden. Nach Abschalten des Rechners sind Daten im Arbeitsspeicher verloren.

Zwei Arten von RAM:DRAM (Dynamic RAM) langsam, kostengünstigSRAM (Static RAM) schnell, teurer (meist für Register und Cache-Speicher)

Th Letschert

Page 17: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 17

Zentraleinheit: ROM

ROM : Read only Memory

Nicht-flüchtiger SpeicherAblage konstanter Daten Inhalt geht nicht verloren, wenn Strom abgeschaltet wird.

Direkt ZugreifbarWie RAM-Bausteine von der CPU direkt Byte-addressbar lesbar

Code im ROM: Sofort ausführbarCPU kann nur Daten und Befehle von RAM/ROM lesen:

ROM enthält Betriebssystem (Handy, etc., PCs der frühen 1980er) ROM enthält Code der Betriebssystem von Platte in RAM läd BIOS: ROM + (RAM mit Batterie): HW testen, Betriebssystem laden

Eingebettete SystemeEingebettete müssen oft ganz ohne Festplatte auskommen: Alle Daten im ROM

Th Letschert

Page 18: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 18

Zentraleinheit: Busse und Schnittstellen

Busse und Schnittstellen

Bus-SystemDatentransport auf dem Mainboard

Systembus: CPU <~> Speicher

<~> Ein-/Ausgabe-Einheiten Erweiterungsbus:

Anschluss von Ergänzungs- / Erweiterungskarten

SchnittstelleAnschlusspunkt für Karten / Geräte

PCI-Anschluss (Peripheral Component Interface)Standard-Kartenanschluss für PCs

AGP-Anschluss (Accelerated Graphics Port) spezieller Anschluss für Grafikkarten

IDE / EIDE (Enhanced Integrated Device Electronics) SCSI (Small Computer System Interface) S-ATA (Serial-Advanced Technology Attachment) Nachfolgetechnolgie zu IDE /

EIDE USB / Firewire Hot-Plug Schnittstellen Bluetooth: Funkanschluss

Th Letschert

CPU

North-Bridge

South-Bridge

AGP

RAM

LAN

USBISA IDE

Prozessorbus

PCI-Bus

AGP-Bus

Speicher-Bus

Bridge: Verbindung von Bus-Systemen

Page 19: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 19

Peripherie

Peripherie

alle Geräte, die an den Rechner angeschlossen sind Eingabe: Maus, Tastatur, Scanner, ···

Ausgabe: Drucker, Graphikkarte / Bildschirm, ···

Ein- und Ausgabegeräte: Netzkarte, ···

MassespeicherGerät, das zur Speicherung von Daten dient

Magnetische SpeicherFestplatten, floppy-disc

Optische SpeicherCD, DVD

Halbleiter-Speicher USB-Stick SSD (solid state drive) Platte

„Festplatte“ in Halbleiterbausteinen

Th Letschert

Inneres einer Festplatte(aus Herold, et al. GdI)

Page 20: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 20

Modell eines einfachen Prozessorsystems

Registermaschine– Modell eines Rechners

entspricht dem Arbeitsprinzip eines Prozessors (von-Neumann-Rechner)Basis von Maschinen- / Assemblerprogrammen

– Komponenten Prozessor Speicher E/A-Einheiten

– Prozessor Akkumulator:

Vor der Ausführung einer zweistelligen Operation befindet sich der eine Operand im Datenspeicher und der andere im Akkumulator. Danach befindet sich das Ergebnis im Akkumulator.

Befehlsregister: Enthält immer den momentan auszuführenden Befehl.

Befehlszähler:Enthält den momentan auszuführenden Befehl.

– Befehl Befehlsadresse, auszuführenden Operation der Operandenadresse

Th Letschert

Page 21: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 21

Modell eines einfachen Prozessorsystems

Registermaschine– Arbeitsweise

Die Registermaschine durchläuft für jeden Befehl denBefehlszyklus:

1. Befehl holen 2. Operand holen3. Befehl dekodieren 4. Operation ausführen 5. Befehlszähler ändern

Th Letschert

Beispiel Assemblerprogramm (aus Herold, et al. GdI)

Page 22: Informatik - homepages.thm.dehg51/Veranstaltungen/Informatik-11-12/... · Zentraleinheit und Peripherie ... (Mikro-) Prozessor (CPU = Central Processing Unit) führt die Programme

Seite 22

Modell eines einfachen Prozessorsystems

Programmausführungprinzipielle Vorgehensweise

– Eingabe: Der Programmtext wird mit Hilfe eines Editor-Programms vom Entwickler eingetippt und in einer Datei abgespeichert

– Übersetzen: Der Compiler (ein Programm) übersetzt den Text in Maschinencode und speichert ihn in einer Datei

– Binden: Der Binder (engl. Linker, ein Programm) kombiniert (verbindet) das Maschinenprogramm mit dem Maschinencode aus Bibliotheken für Standardkomponenten zu einem ausführbaren Programm (eine Datei).

– Laden: Das Betriebssystem lädt das Maschinenprogramm aus der Datei (Festplatte) in den Hauptspeicher

– Starten: Die erste Adresse des Programms wird vom Betriebssystem in das Programmregister (= Befehlszähler) der CPU geladen

– Ausführen: Die CPU lädt einen Befehl des Programms nach dem anderen und führt ihn aus.

Th Letschert