Upload
karlene-zelt
View
138
Download
7
Embed Size (px)
Citation preview
Moderne Rechner-Architekturen
Referenten: Albert Maas
Peter Oberhofer
Moderne Rechner-Architekturen
Präsentationsfahrplan:
- Von-Neumann-Konzept
- RISC-Architektur
- Fließbandverarbeitung
- CISC-Architektur
- Kombination von RISC und CISC
- Zukünftige Entwicklungen
Moderne Rechner-Architekturen
Von-Neumann-Konzept
Moderne Prozessoren folgen grundsätzlich dem
RW
- Rechenwerk
- HauptspeicherHS
- Ein-/Ausgabewerk
E/A
- Leitwerk
Leitwerk
Moderne Rechner-Architekturen
Anpassungen:
- ErweiterungE/ARWHS
Leitwerk
z. B. Rechenwerk und Ein-/Ausgabewerk
- Vervielfachung RW...
E/A...
• Busse
Bus
• Caches
Cache
• Spezialspeicher
SS
Moderne Rechner-Architekturen
Im Wesentlichen kann man alle gängigen Prozessorarchitekturen in zwei Klassen
unterteilen:
RiscCisc Risc= Reduced Instruction Set Computer
Moderne Rechner-Architekturen
Eigenschaften:
- elementare, kleine Befehlssätze
- Load-/Store-Architektur
• Operanden holen und Operation ausführen in einem Takt• große Registersätze
• Compiler nur einen kleinen Teil nützen• weniger Fallunterscheidungen beim Decodieren => kürzere Taktzyklen• Synergie Compilerbau-Rechnerarchitektur
, da
- einheitliches Befehlsformat
- Fließbandtechnik• redundante Informationen: hoher Speicherverbrauch aber schnellere Decodierung• festverdrahtete Leitwerke
Moderne Rechner-Architekturen
Registerorganisation
Stanford
...
Physische Registersätze
global
logische Registersätze
lokal1
lokal2
Berkeley
...
2.Schritt3.Schritt4.Schritt5.Schritt1.Schritt
Moderne Rechner-Architekturen
Fließbandverarbeitung (Pipelining)
- die einzelnen Fasen des Maschinenbefehlszyklus werden von verschiedenen Teilwerken ausgeführt
1.TW 2.TW 3.TW 4.TW 5.TW
BH BD OH BA ES Fasen eines Befehls
54321
Moderne Rechner-Architekturen
1.TW
2.TW
3.TW
4.TW
5.TW
Leistungssteigerung erst durch gleichzeitiges Arbeiten der einzelnen Teilwerke
... Schritte
BH BD OH BA ES
BH BD OH BA ES
BH BD OH BA ES
BH BD OH BA ES
...
BH BD OH BA ES
1.Befehl
2.Befehl
3.Befehl
4.Befehl
5.Befehl
Problem: Fließbandhemmnisse
Moderne Rechner-Architekturen
- jeder Unterprozessor bearbeitet einen Befehl der Gruppe
BH BD OH BA ESBH BD OH BA ES
BH BD OH BA ES
1.Befehl2.Befehl3.Befehl
} 1.Gruppe
Superskalare Mikrochips:
- Befehlsgruppierer gruppiert Befehle
- mehrere Unterprozessoren
}BH BD OH BA ESBH BD OH BA ES
BH BD OH BA ES
4.Befehl5.Befehl6.Befehl
2.Gruppe
...
Moderne Rechner-Architekturen
Beschleunigung der einzelnen Fasen des Maschinenbefehlszyklus
Befehlsholfase
- Verwendung von Caches
Zugriffszeiten:
1-5 Takte für interneMehrere Dutzend für externe
- Fifo-Befehlspuffer, um Befehle in einem Takt zu holen
Problem: Sprünge
Moderne Rechner-Architekturen
Lösungsansätze:
- Sprungzielspeicher
- Verzögerter Sprung bzw. Aufruf
- Spekulative Ausführung
- Bedingte Ausführung
Moderne Rechner-Architekturen
Decodierfase
- Vereinfachter Befehlssatz und Art der Speicherung => keine µ-Programmierung
- Vereinfachte Befehle, wenn möglich in einem Takt ausführbar
- Load-/Store-Architektur: Nur Register als Operanden
- vereinfachtes Befehlsformat
Moderne Rechner-Architekturen
Operandenholfase
- Load-/Store-Architektur: Speicher-zugriffe mittels expliziten Befehlen
- Redundante Speicherung von Daten
- Drei-Adress-Prinzip: Wiederverwendung von Ergebnissen
Moderne Rechner-Architekturen
Problem: Fließbandhemmnisse durch Datenabhängigkeit
- expliziter Speicherzugriff
- Ergebnis des vorhergehenden Befehls wird benötigt
Lösung: Abkürzende Datenpfade
Moderne Rechner-Architekturen
Ausführungsfase
- Die verschiedenen Alus dürfen gleichzeitig mehrere Befehle ausführen (superskalare Rechenwerke)
- Befehle dürfen heute bei Risc-Prozessoren mehr als einen Takt benötigen
=> mehr Verwaltungsaufwand für das Leitwerk, aber clocks per instruction (CPI) < 1
Moderne Rechner-Architekturen
Rückschreibfase
- Beschleunigt durch Load-/Store-Prinzip
- Bei expliziten Speicherzugriffen:Caches und Schreibpuffer
Moderne Rechner-Architekturen
Adressierungsfase
- aufgrund der Fließbandverarbeitung sind mehrere Befehlszähler nötig
- bei sequentieller Fortschaltung nur Erhöhung um einheitliches Befehlsformat notwendig
Moderne Rechner-Architekturen
CISC -Architektur
CISC bedeutet: Complex Instruction Set Computer
Überersetzt heißt das: Computer (Prozessor) mit komplexem Befehlssatz
Moderne Rechner-Architekturen
Arbeitsweise eines CISC-Prozessors
CISC-BefehleDekoder-Einheit
Mikrocode
Nanoprozessor
Moderne Rechner-Architekturen
Eigenschaften:
- umfangreiche Maschinenbefehlssätze
- viele Adressierungsarten
- Familienkonzept (Abwärtskompatibilität)
- Leitwerk ist mikroprogrammiert
- Trennung von Befehlssatz, Implementierung und Realisierung
- uneinheitliches Befehlsformat
Moderne Rechner-Architekturen
Kompatibilität und Familienbildung
- Kompatibilität zu Vorgängern
-Unterschiede nur in der Implementierung und in der Realisierung
CISC-Prozessoren:
- 808x und 80x86 von Intel
- 680x0 von Motorola
- Macintosh, Amiga und Atari
Moderne Rechner-Architekturen
Komplexbefehle und Mikroprogrammierung
- M.V.Wilkes im Jahr 1953
- die Mikroprogrammierung ist die Brücke zwischen Hardware und Software
Moderne Rechner-Architekturen
Kombination von RISC und CISC
- RISC -> hohe Leistung, allerdings keine Familienbildung
- CISC -> trotz geringerer Leistung Marktführer
- allerdings wurden RISC-Techniken mit einbezogen
Moderne Rechner-Architekturen
Zukünftige Entwicklungen
- VLIW
- Vielfädigkeit
- Netzwerkprozessor
- Multiprozessortechnik
Moderne Rechner-Architekturen
VLIW – VERY LONG INSTRUCTION WORD
- optimale Ausnutzung der parallelen Einheiten
- Ansteuerung der Einheiten erfolgt statisch und direkt
- bis zu 1000Bit langer Opcode
Moderne Rechner-Architekturen
VLIW – Zusammensetzung
Unterbefehl/Operation 1
Unterbefehl/Operation 2
...Unterbefehl/Operation n
Moderne Rechner-Architekturen
VLIW – VerarbeitungsstufenV
LIW
-Hole
n
Deco
die
ren
RegisterLesen
RegisterLesen
RegisterLesen
...
Operation 1
Operation 2
Operation n
RegisterSchreiben
RegisterSchreiben
RegisterSchreiben
...
...
Moderne Rechner-Architekturen
VLIW – Vorteile
- Parallelisierung erfolgt beim Kompilieren
- auf ganzes Programm anwendbar
- theoretisch n-fache Leistungssteigerung
Moderne Rechner-Architekturen
VLIW – Nachteile
- hochredundanter Code
- Anzahl der Rechenwerke
- Applikationen nicht voll Parallelisierbar
- Nicht-VLIW nicht lauffähig oder langsam
Moderne Rechner-Architekturen
VLIW – Beispiel Pentium 4
Vielfädigkeit
- Programm wird in Teilprogramme Zerlegt
- Teilprogramme -> Fäden
- jeder Teilprozessor kann einen dieser Fäden abarbeiten
Moderne Rechner-Architekturen
Netzwerkprozessor
- World Wide Web optimiert
- Rechnerressourcen werden vom WWW geholt
- Beispiel ist die JVM
Moderne Rechner-Architekturen
Multiprozessortechnik
- Großrechnerbetrieb
- mehrprozessorfähiges Betriebsystem
- spezielle Anwendungen nötig
Moderne Rechner-Architekturen
- Leistungssteigerung von 30% bis 95%
Danke für ihre Aufmerksamkeit