Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Kapitel 3 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining.

Ähnliche Präsentationen


Präsentation zum Thema: "Kapitel 3 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining."—  Präsentation transkript:

1 Kapitel 3 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining

2 5.1 Leistung Wiederholung und Diskussion

3 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!

4 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 1.Zahl der ausgeführten Befehle 2.Zahl der Zyklen pro Befehl 3.Zykluszeit

5 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.

6 Adressierungsmodi im MC 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(A n, I x ) scaled Address register indirect with Index and Address distance: St(cont(A n ) + cont(I x ) + d) mit A n benutzt als Basis Register, I x Index Register, 8-Bit-Versatz d.

7 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

8 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

9 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. kritischer Pfad: der Pfad, dessen Länge die Gesamtdauer bestimmt Multi- Cycle- Daten- pfad Quelle: K. Diepold

10 RW-SystemarchitekturKap 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?

11 RW-SystemarchitekturKap 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!

12 Dauer der Arbeiten: 8 Stunden Dauer der Arbeiten: 3 1/2 Stunden Das Prinzip an einem Beispiel Time 76 PM AM A B C D Time 76 PM AM A B C D Task order Task order mit Pipelining

13 RW-SystemarchitekturKap 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)

14 Aufteilung des Datenpfades in 5 Phasen xecute/ address calculation MEM: Memory accessWB: Write back

15 RW-SystemarchitekturKap. 5 Aufteilung des Datenpfades in 5 Phasen xecute/ address calculation MEM: Memory accessWB: Write back

16 RW-SystemarchitekturKap 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: = (7-4) + 2 (5-1) Zyklen


Herunterladen ppt "Kapitel 3 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining."

Ähnliche Präsentationen


Google-Anzeigen