Kapitel 3 5 Rechnerorganisation

Slides:



Advertisements
Ähnliche Präsentationen
Vom HW-Automaten zum Prozessor
Advertisements

Einer der Dienste im Internet
Programmierung: Einführung
Bauteile des PC´c Werden vorgestellt: PC-Gehäuse Prozessor Tastatur
4.5 Virtueller Speicher Problemsituation: Programme und Daten sind zu groß für den verfügbaren Arbeitsspeicher Frühere Lösung Aufspaltung der Programme.
CPI Der einzelne Befehl braucht immer noch 5 Zyklen (stimmt nicht ganz, einige brauchen weniger!) Was verbessert wird, ist der Durchsatz = #Befehle /
Kapitel 5 5 Rechnerorganisation
Leistung.
Kapitel 11 Deadlocks RW-Systemarchitekur Kap. 11.
7.3 Scheduling Zur Erinnerung:
Wiederholung Betriebssystem bietet eine Abstraktion der Hardware an:
Technische Universität Dortmund
3. Kapitel: Komplexität und Komplexitätsklassen
Entwicklungstrends bei Mikroprozessoren
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Zentraleinheit CPU, Motherbord, RAM
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Agenda Die Hardwearkomponenten und ihre Funktionen - Mikroprozessor
Zentraleinheit CPU, Motherbord, RAM
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
WS 2009/10 1 Systeme 1 Kapitel 1 Aufbau von Rechnern.
Neumannrechner.
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
W. Oberschelp G. Vossen Kapitel 7.
Rechneraufbau & Rechnerstrukturen, Folie 10.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 10.
Aufbau und Funktionsweise von Prozessoren
2.5. Mikrocontroller-Komponenten
Vorlesung 4: Memory Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin Wintersemester.
Vorlesung 2 Rechnerarchitektur Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Rechnerarchitektur Vorlesung 2 Peter B. Ladkin
4. Mikrocontroller-Komponenten
2 Grundlegende Prozessortechniken
EPIC, IA-64 und Itanium Eine Kurzpräsentation von Jan Hübbers bei Prof. Dr.-Ing. Risse im Fach Labor Rechnerstrukturen an der Hochschule Bremen
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Der Simple As Possible Computer
EDO-RAM,SDRAM,RDRAM,DDR2-SDRAM.
Wichtige Fachausdrücke in C
Duo- und Quad Prozessor-Architektur
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Systeme 1 Kapitel 4 Prozesse WS 2009/10.
Aufbau eines von-Neumann- Rechners Marcel Waldvogel.
INTEL Pentium 4 Prozessor
Universelle Registermaschine
Kap. 2 - Aufbau von Prozessoren
3.4 CPU-Chips und Busse CPU-Chips
Gliederung 1) Begriffserklärung zur CPU 2) Geschichte der CPU
Interpreter & Compiler
Anwendung von Microcontollern
Programmieren in Assembler
Seite 1 Technische Informatik II (INF 1211) – Kurzfragenteil (Ohne Unterlagen) Am Prof. W. Adi Zeit: (20 Minuten) Bitte schreiben Sie die Lösung.
Rechnerarchitekturen
Komplexität von Algorithmen
Moderne Rechner-Architekturen
->Prinzip ->Systeme ->Peer – to – Peer
Aufbau, Funktion und Grundzusammenhänge
Der Prozessor Von Stephan Blum.
Funktionsweise und Aufbau einer CPU & der zeitliche Ablauf des x86
AGP – Accelerated Graphics Port A. Even, M. Colloseus, K. Müller, T. Kadziela, I. Schiffler 1 Warum braucht man AGP? Höhere Geschwindigkeiten Größere Bandbreite.

Rechneraufbau & Rechnerstrukturen, Folie 8.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 8.
Aktueller Stand der Technik. Auf dem Markt sind heute bereits 64-Bit Mikrocontroller. Die meiste Verwendung finden allerdings noch immer die 8-Bit Modelle.
Aufbau und Funktionsweise einer CPU
VHDL-Modellierung der Pipeline eines DLX-Prozessors
Vom HW-Automaten zum Prozessor
Aufbau und Anwendungen von Mikrokontrollern
Compiler für Eingebettete Systeme [CS7506]
מבוא למערכות מחשב ואסמבלי
CSL211 Computer Architecture
Shared Memory Programmierung: Grundlagen
 Präsentation transkript:

Kapitel 3 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining

Wiederholung und Diskussion 5.1 Leistung Wiederholung und Diskussion

Zyklen, Taktraten Zeit im Rechner schreitet in diskreten Schritten fort, gesteuert durch eine Uhr. Das Zeitintervall zwischen zwei Uhrticks ist ein Takt, ein Zyklus (cycle); seine Länge ist die Zykluszeit. Die Ausführung eines Maschinenbefehls braucht mehrere Zyklen. Dies ist bei vielen Architekturen verschieden für verschiedene Befehle und nicht mal konstant für einen individuellen Befehl. Für einen gegebenen Befehl hängt diese Zahl vom Zustand ab, in dem der Befehl ausgeführt wird. Man betrachtet wieder die durchschnittliche Zahl bei universellen Rechnern bei Echtzeitsystemen : die Zahl bei gegebenem Zustand die Zahl im schlechtest möglichen Fall die Zahl im schlechtesten Fall bei gegebener Menge von Zuständen CPI (cycles per instruction) wird i.A. für die durchschnittliche Zahl von Zyklen pro Befehl verwendet. Warnung: Name passt bei Fließbandverarbeitung nicht mehr!

Leistung auf der Befehlsebene Bisherige Leistungsmaße bezogen sich nicht auf die ausgeführten Befehle Anzahl CPU-Zyklen für die Ausführung eines Programms = Zahl der ausgeführten Befehle  Zahl der Zyklen pro Befehl Also insgesamt: CPU-Ausführungszeit = Zahl der ausgeführten Befehle  Zahl der Zyklen pro Befehl  Zykluszeit Einfluss des Rechnerarchitekten auf die drei Parameter Zahl der ausgeführten Befehle Zahl der Zyklen pro Befehl Zykluszeit

1. Zahl der ausgeführten Befehle Schleifengrenzen und Rekursionstiefe bleiben fest  Änderung in der Zahl der erzeugten Befehle führt zum Unterschied von Reduced Instruction Set Computer (RISC), z.B. MIPS, SPARC, PowerPC kleiner Befehlsvorrat, wenige Adressierungsarten einfache Logik zur Implementierung, viel Platz für Register Complex Instruction Set Computer (CISC); z.B. Pentium komplexe Instruktionen, viele Adressierungsarten Implementierung über Mikroprogramme wenig Platz für Register Für ein Quellprogramm und einen CISC-Zielrechner werden i.A. Maschinenprogramme mit weniger Befehlen erzeugt.

Adressierungsmodi im MC 68000 1. Data register direct 2. Address register direct 3. Register indirect 4. Register indirect with post-increment 5. Register indirect with pre-decrement 6. Register indirect with displacement 7. Register indirect with index 8. Absolute short 9. Absolute long 10. PC relative with displacement 11. PC relative with index 12. Immediate 13. Quick Immediate 14. Implied register Beispiel: d(An, Ix) scaled Address register indirect with Index and Address distance: St(cont(An) + cont(Ix) + d) mit An benutzt als Basis Register, Ix Index Register, 8-Bit-Versatz d.

Adressierungsmodi im MIPS Register Addressing in Sprungbefehlen PC-Relative Addressing in bedingten Sprüngen Pseudo-direct Addressing in Sprungbefehlen Base Addressing für Datenzugriff über Basisadresse und Versatz (Offset) Speicher Basisadresse Versatz effektive Adresse

2. Zahl der Zyklen pro Befehl und 3. Zykluszeit Single-Cycle Datenpfad führt jeden Befehl in einem Taktzyklus aus; Taktzyklus kann kann sehr lange dauern Multi-Cycle Datenpfad hat viel kürzeren Taktzyklus (höhere Taktrate) jeder Befehl benötigt mehrere Taktzyklen Single-Cycle Datenpfad Quelle: K. Diepold

Single-Cycle und Multi-Cycle-Datenpfad Single-Cycle Datenpfad Bearbeitungszeit für alle Befehle gleich lang, der langsamste bestimmt das Tempo, Zykluszeit durch “kritischen Pfad” bestimmt Multi-Cycle-Datenpfad Befehlsausführung in mehrere Phasen mit Zwischenspeicherung aufgeteilt, braucht mehrere Takte, kritischer Pfad und damit Takt verkürzt. Pro Phase nur ein Teil des Datenpfades aktiv. Multi- Cycle- Daten- pfad kritischer Pfad: der Pfad, dessen Länge die Gesamtdauer bestimmt Quelle: K. Diepold

Fließbandverarbeitung (Pipelining) Pipelining verbindet beide Konzepte Taktzyklus wird kurz gehalten  hohe Taktrate In jedem Taktzyklus kann ein Befehl abgearbeitet werden Vorsicht: der Übergang vom Single-Cycle Datenpfad zum Multi-Cycle Datenpfad erhöht den CPI! Er verkürzt aber die Zykluszeit! Produkt, also Ausführungszeit des Befehls evtl. leicht größer. Wodurch? N. R: läßt  lässt RW-Systemarchitektur Kap. 5 Kap. 5

Das Prinzip an einem alltäglichen Beispiel Personen A, B, C, D kommen aus dem Urlaub; es ist viel schmutzige Wäsche zu waschen! Zur Verfügung stehen: eine Waschmaschine (1/2 Stunde Laufzeit) ein Trockner (1/2 Stunde Laufzeit) eine Bügelmaschine (1/2 Stunde Arbeit zum Bügeln) ein Wäscheschrank (1/2 Stunde Arbeit zum Einräumen) jeder der Personen A, B, C, D aus dem Haushalt wäscht seine Wäsche selbst Es gibt zwei Möglichkeiten, die vier Waschvorgänge auszuführen! RW-Systemarchitektur Kap. 5 Kap. 5

Das Prinzip an einem Beispiel T i m e 7 6 P M 8 9 1 2 A B C D a s k o r d Dauer der Arbeiten: 8 Stunden T i m e 7 6 P M 8 9 1 2 A B C D a s k o r d mit Pipelining Dauer der Arbeiten: 3 1/2 Stunden

Aufteilung der Befehlsabarbeitung in Phasen Abarbeitung eines Maschinenbefehls in mehrere Phasen mit möglichst gleicher Dauer aufgeteilt. Eine sinnvolle Aufteilung ist abhängig vom Befehlssatz und der verwendeten Hardware. Beispiel: Abarbeitung in 5 Schritten: Befehls-Hole-Phase (instruction fetch) Dekodier-Phase / Lesen von Operanden aus Registern Ausführung / Adressberechnung (execute) Speicherzugriff (memory access) Abspeicher-Phase (result write back phase) N.R.:muß  muss RW-Systemarchitektur Kap. 5 Kap. 5

Aufteilung des Datenpfades in 5 Phasen r 1 R a d 2 6 S n x W A D m o y L U u l M Z I F : c f h / E X x e c u t e / M E M : M e m o r y a c c e s s W B : W r i t e b a c k a d d r e s s c a l c u l a t i o n I n s t r u c i o m e y A d 4 3 2 l S h f M x 1 P C W a R g

Aufteilung des Datenpfades in 5 Phasen r 1 R a d 2 6 S n x W A D m o y L U u l M Z I F : c f h / E X x e c u t e / M E M : M e m o r y a c c e s s W B : W r i t e b a c k a d d r e s s c a l c u l a t i o n I n s t r u c i o m e y A d 4 3 2 l S h f M x 1 P C W a R g RW-Systemarchitektur Kap. 5

Pipelining: Illustration Annahme: Aufteilung der Befehlsabarbeitung in 5 gleichlange Phasen Befehl 1: P1 P2 P3 P4 P5 Befehl 2: P1 P2 P3 P4 P5 Befehl 3: P1 P2 P3 P4 P5 Befehl 4: P1 P2 P3 P4 P5 Befehl 5: P1 P2 P3 P4 P5 Befehl 6: P1 P2 P3 P4 P5 Befehl 7: P1 P2 P3 P4 P5 Zeitschritt: 1 2 3 4 5 6 7 8 9 10 11 11 = (7-4) + 2 (5-1) Zyklen RW-Systemarchitektur Kap. 5 Kap. 5