Was ist die Performance Ratio?
|
|
- Gerd Hafner
- vor 7 Jahren
- Abrufe
Transkript
1 Was ist die Performance Ratio? Wie eben gezeigt wäre für k Pipeline Stufen und eine große Zahl an ausgeführten Instruktionen die Performance Ratio gleich k, wenn jede Pipeline Stufe dieselbe Zeit beanspruchen würde. Allerdings brauchen die einzelnen Stufen s1,...,sk unterschiedliche Zeiteinheiten: t 1,..., t k. Somit ist die Performance Ratio für n Instruktionen: Mit den Zeiten aus dem vorigen Beispiel für n also: Die Performance Ratio wird durch die langsamste Stufe bestimmt. Grundlagen der Rechnerarchitektur Prozessor 51
2 Taktung Annahme die einzelnen Abschnitte des MIPS Instruktionszyklus benötigen die bisher betrachteten Ausführungszeiten: Instruction Fetch 200ps, Register Read 100ps, ALU Operation 200ps, Data Access 200ps, Register Write 100ps. Wie hoch dürfen wir unseren Prozessor (ungefähr) Takten? Die längste Stufe benötigt 200ps. Also gilt für den Clock Cycle c: Achtung: Maximal mögliche Taktung hängt aber auch von anderen Faktoren ab. (Erinnerung: Power Wall). Grundlagen der Rechnerarchitektur Prozessor 52
3 Quiz Welchen CPI Wert suggeriert das MIPS Pipelining Beispiel? Achtung: der CPI Wert ist in der Regel höher, wie wir noch sehen. Grundlagen der Rechnerarchitektur Prozessor 53
4 Der Ansatz ist noch zu naiv Beispiel: lw $5, 500($0) lw $4, 400($0) lw $3, 300($0) lw $2, 200($0) lw $1, 100($0) IF ID EX MEM WB Grundlagen der Rechnerarchitektur Prozessor 54
5 Pipelining Pipeline Register Grundlagen der Rechnerarchitektur Prozessor 55
6 Pipeline Stufen brauchen Pipeline Register Grundlagen der Rechnerarchitektur Prozessor 56
7 Pipeline Stufen brauchen Pipeline Register Control Write Register darf erst in der WB Stufe gesetzt werden. Änderung im Tafelbild Wird durchgereicht RegDst steht mit der Entscheidung von Control erst in der EX Stufe fest. Grundlagen der Rechnerarchitektur Prozessor 57
8 Was speichern die Pipeline Register? Wir schauen uns den Weg einer einzigen Instruktion durch die Pipeline an; und zwar den der Load Word Instruktion lw. Auf dem Weg durch die Pipeline überlegen wir, was alles in den Pipeline Registern IF/ID, ID/EX, EX/MEM und MEM/WB stehen muss. In der Darstellung verwenden wir folgende Konvention. Bedeutet: Register/Speicher wird gelesen Bedeutet: Register/Speicher wird beschrieben Grundlagen der Rechnerarchitektur Prozessor 58
9 Was speichern die Pipeline Register? IF/ID: Instruktion PC+4 (z.b. für beq) Grundlagen der Rechnerarchitektur Prozessor 59
10 Was speichern die Pipeline Register? ID/EX: PC+4 (z.b. für beq) Inhalt Register 1 Inhalt Register 2 Sign ext. Immediate (z.b. für beq) Das Write Register (wird im Letzten Zyklus von lw gebraucht) Generell: Alles was in einem späteren Clock Cycle noch verwendet werden könnte, muss durchgereicht werden. Grundlagen der Rechnerarchitektur Prozessor 60
11 Was speichern die Pipeline Register? EX/MEM: Ergebnis von PC+4+ Offset (z.b. für beq) Zero der ALU (z.b. für beq) Result der ALU Register 2 Daten (z.b. für sw) Das Write Register (wird im letzten Zyklus von lw gebraucht) Grundlagen der Rechnerarchitektur Prozessor 61
12 Was speichern die Pipeline Register? MEM/WB: Das gelesene Datum aus dem Speicher (wird dann von lw im nächsten Zyklus ins Write Register geschrieben) Das Ergebnis der ALU Operation (für die arithmetisch logischen Instruktionen) Grundlagen der Rechnerarchitektur Prozessor 62
13 Was speichern die Pipeline Register? Für die letzte Pipeline Stufe braucht man kein Pipeline Register. Grundlagen der Rechnerarchitektur Prozessor 63
14 Zusätzlich wird noch Control Info gespeichert Control Grundlagen der Rechnerarchitektur Prozessor 64
15 Zusätzlich wird noch Control Info gespeichert Werden durchgereicht. Control hängt von der Instruktion ab. Damit muss Control Info erst ab ID/EX Register gespeichert werden. Das ID/EX Register muss bereitstellen: RegDst ALUOp (2) ALUSrc Das EX/MEM Register muss bereit stellen: Branch MemRead MemWrite Das MEM/WB Register muss bereit stellen: MemtoReg RegWrite Grundlagen der Rechnerarchitektur Prozessor 65
16 Pipelining Pipelining Visualisierung Grundlagen der Rechnerarchitektur Prozessor 66
17 Pipelining Visualisierung Zusammenfassung der vorhin implizit eingeführten Visualisierungen und Einführung einer neuen Visualisierung. Wir betrachten folgenden Beispiel Code: lw $10, 20($1) sub $11, $2, $3 add $12, $3, $4 lw $13, 24($1) add $14, $5, $6 Wir unterscheiden generell zwischen zwei Visualisierungsarten: Single Clock Cylce Pipeline Diagramm und Multiple Clock Cycle Pipeline Diagramm Grundlagen der Rechnerarchitektur Prozessor 67
18 Single Clock Cycle Pipeline Diagramm Grundlagen der Rechnerarchitektur Prozessor 68
19 Einfaches Multiple Clock Cycle Pipeline Diagramm Grundlagen der Rechnerarchitektur Prozessor 69
20 Detaillierteres Multiple Clock Cycle Pipeline Diagramm IF ID EX MEM WB Grundlagen der Rechnerarchitektur Prozessor 70
21 Pipelining Komplexere Pipelines Grundlagen der Rechnerarchitektur Prozessor 71
22 Komplexere Piplelines Pipeline Stufen sind nicht auf 5 festgelegt! z.b. weitere Unterteilung von IF, ID, EX, MEM, WB Erlaubt höhere Taktung Kann aufgrund der Instruktions Komplexität erforderlich sein Kann aufgrund von Instruktionen mit zeitlich unbalancierten Stufen erforderlich sein Wie pipelined man x86 ISA mit Instruktionslängen zwischen 1 und 17 Bytes? Komplexe Instruktionen der x86 ISA werden in Folge von Mikroinstruktionen übersetzt Mikroinstruktionssatz ist vom Typ RISC Pipelining findet auf den Mikroinstruktionen statt Beispiel AMD Opteron X4: Was das ist sehen wir noch im Kapitel Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 72
23 Pipeline Stufen einiger ausgewählter Prozessoren Mikroprozesor Jahr Taktrate Pipeline Stufen Leistung Intel MHz 5 5 W Intel Pentium MHz 5 10 W Intel Pentium Pro MHz W Intel Pentium 4 Willamette MHz W Intel Pentium 4 Prescott MHz W Intel Core MHz W UltraSPARC IV MHz W Sun UltraSPARC T1 (Niagara) MHz 6 70 W Pipeline Stufen sinken wieder? Aggressives Pipelining ist sehr Leistungshungrig Aktueller Trend eher zu Multi Cores mit geringerer Leistungsaufnahme pro Core. Grundlagen der Rechnerarchitektur Prozessor 73
24 Data Hazards Grundlagen der Rechnerarchitektur Prozessor 74
25 Motivation Ist die Pipelined Ausführung immer ohne Probleme möglich? Beispiel: sub $2, $1, $3 and $12, $2, $5 or $13, $6, $2 add $14, $2, $2 sw $15, 100($2) Also, alle vier nachfolgenden Instruktionen hängen von der sub Instruktion ab. Annahme: $2 speichert 10 vor der sub Instruktion. $2 speichert 20 nach der sub Instruktion. Betrachten wir die Pipeline: Grundlagen der Rechnerarchitektur Prozessor 75
26 Problem Rückwärtsabhängigkeiten Instr. Zeile and or add sw Sollte aus $2 lesen Liest aus $2 Data Hazard Grundlagen der Rechnerarchitektur Prozessor 76
27 Behandeln von Data Hazards mittels Forwarding Grundlagen der Rechnerarchitektur Prozessor 77
28 Allgemeine Lösung mittels Forwarding Unit WB WB EX/MEM.Rd MEM/WB.Rd Grundlagen der Rechnerarchitektur Prozessor 78
29 Implementation der Forwarding Unit Grundlagen der Rechnerarchitektur Prozessor 79
30 Bemerkungen Die Bestimmung von ForwardB erfolgt analog. (Übung) Das Ganze muss noch als Wahrheitstabelle aufgeschrieben und dann als kombinatorische Schaltung realisiert werden. Wie sieht die Wahrheitstabelle von ForwardA nach voriger hergeleiteter Vorschrift aus? (Übung) [Tipp: um Platz zu sparen sollte man möglichst viele don t cares verwenden.] Auch mit der Erweiterung auf ForwardB ist die Implementation der Forwarding Unit noch unvollständig. Was passiert z.b. für: lw $2, 0($1) sw $2, 4($1) Erweiterung: Forwarding muss z.b. auch in die MEM Stufe eingebaut werden. (Übung) Grundlagen der Rechnerarchitektur Prozessor 80
31 Nicht auflösbare Data Hazards Nicht jeder Data Hazard lässt sich durch Forwarding auflösen. Beispiel: Zugriff auf vorher gelesenes Register. Grundlagen der Rechnerarchitektur Prozessor 81
32 Pipeline Stall als Lösung Grundlagen der Rechnerarchitektur Prozessor 82
33 Allgemeine Lösung mittels Hazard Detection Unit Grundlagen der Rechnerarchitektur Prozessor 83
34 Implementation der Hazard Detection Unit Grundlagen der Rechnerarchitektur Prozessor 84
35 Quiz: Vermeiden von Pipeline Stalls Wo findet ein Pipeline Stall statt? Bitte ankreuzen. lw lw $t1, 0($t0) $t2, 4($t0) add $t3, $t1, $t2 sw lw $t3, 12($t0) $t4, 8($t0) add $t5, $t1, $t4 sw $t5, 16($t0) Anzahl Taktzyklen mit Stalls? Anzahl Taktzyklen ohne Stalls? Bitte Befehle umorganisieren, sodass alle Stalls vermieden werden. Grundlagen der Rechnerarchitektur Prozessor 85
36 Control Hazards Grundlagen der Rechnerarchitektur Prozessor 86
37 Control Hazards Grundlagen der Rechnerarchitektur Prozessor 87
38 Branch Not Taken Strategie und Pipeline Flush Flush = Verwerfe Instruktionen in der Pipeline. Hier: Setze IF/ID, ID/EX und EX/MEM Register auf 0. Grundlagen der Rechnerarchitektur Prozessor 88
39 Reduktion des Branch Delays Adressberechnung kann schon in der ID Stufe stattfinden beq und bne erfordert lediglich ein 32 Bit XOR und ein 32 Bit OR Dazu braucht man keine ALU Also auch in der ID Stufe realisierbar Beispiel: für $1 und $3: Damit ist der Sprung schon in der ID Stufe entschieden Grundlagen der Rechnerarchitektur Prozessor 89
Pipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45
Pipelining Die Pipelining Idee Grundlagen der Rechnerarchitektur Prozessor 45 Single Cycle Performance Annahme die einzelnen Abschnitte des MIPS Instruktionszyklus benötigen folgende Ausführungszeiten:
MehrAuch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)
Auch hier wieder Aus voriger Wahrheitstabelle lässt sich mechanisch eine kombinatorische Schaltung generieren, die wir im Folgenden mit dem Control Symbol abstrakt darstellen. Instruction[31 26] (also:
MehrData Hazards. Grundlagen der Rechnerarchitektur Prozessor 74
Data Hazards Grundlagen der Rechnerarchitektur Prozessor 74 Motivation Ist die Pipelined Ausführung immer ohne Probleme möglich? Beispiel: sub $2, $1, $3 and $12, $2, $5 or $13, $6, $2 add $14, $2, $2
MehrGrundlagen der Rechnerarchitektur. Prozessor
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrGrundlagen der Rechnerarchitektur. Prozessor
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrAllgemeine Lösung mittels Hazard Detection Unit
Allgemeine Lösung mittels Hazard Detection Unit Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 83
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrTechnische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018
Technische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018 Aufgabe 1: Taktrate / Latenz Einzeltakt-Architektur Pipelining-Architektur Pipelining-Architektur 15 15 120 ps 15
MehrDatenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren
Datenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren der beiden Registerwerte $t1 und $t2 in einem Zielregister
MehrTechnische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016
Technische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016 Aufgabe 1: Taktrate / Latenz TI1 - Übung 6: Pipelining Einzeltakt-Architektur TI1 - Übung 6: Pipelining Pipelining-Architektur
MehrBeispiele von Branch Delay Slot Schedules
Beispiele von Branch Delay Slot Schedules Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 97 Weniger
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
MehrPipelining for DLX 560 Prozessor. Pipelining : implementation-technique. Pipelining makes CPUs fast. pipe stages
Pipelining for DLX 560 Prozessor Pipelining : implementation-technique Pipelining makes CPUs fast. pipe stages As many instructions as possible in one unit of time 1 Pipelining can - Reduce CPI - Reduce
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Übung 7 Datum : 22.-23. November 2018 Pipelining Aufgabe 1: Taktrate / Latenz In dieser Aufgabe
MehrRechnerarchitektur (RA)
2 Rechnerarchitektur (RA) Sommersemester 27 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 27/5/3 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken
MehrRechnerarchitektur (RA)
2 Rechnerarchitektur (RA) Sommersemester 26 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 26/5/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken
MehrBeispielhafte Prüfungsaufgaben zur Vorlesung TI I, gestellt im Frühjahr 2009
Beispielhafte Prüfungsaufgaben zur Vorlesung TI I, gestellt im Frühjahr 2009 Die beigefügte Lösung ist ein Vorschlag. Für Korrektheit, Vollständigkeit und Verständlichkeit wird keine Verantwortung übernommen.
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 6 Datum: 24. 25. 11. 2016 Pipelining 1 Taktrate / Latenz In dieser
MehrTechnische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen
Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember 2016 Bitte immer eine Reihe freilassen Ziele der Übung Verschiedene Arten von Instruktionsparallelität
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining Implementierung
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 8 Datum: 8. 9. 12. 2016 1 Instruktionsparallelität VLIW Gegeben
MehrArithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9
Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere
MehrRechnerstrukturen, Teil 2
2 Rechnerstrukturen, Teil 2 Vorlesung 4 SWS WS 7/8 2.3 Register-Transfer-Strukturen Prof. Dr. Jian-Jia Chen Fakultät für Informatik Technische Universität Dortmund jian-jia.chen@cs.uni-.de http://ls2-www.cs.tu-.de
MehrCPU. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
CPU Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU 1/62 2012-02-29 CPU Übersicht: Pipeline-Aufbau Pipeline- Hazards CPU
MehrLehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer
Aufgabe 8.1 Ausnahmen (Exceptions) a. Erklären Sie den Begriff Exception. b. Welche Arten von Exceptions kennen Sie? Wie werden sie ausgelöst und welche Auswirkungen auf den ablaufenden Code ergeben sich
MehrTechnische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 8 Datum: 30. 11. 1. 12. 2017 In dieser Übung soll mit Hilfe des Simulators WinMIPS64 die
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Rechnerarchitektur Aufgabe
MehrGrundlagen der Informationsverarbeitung:
Grundlagen der Informationsverarbeitung: Parallelität auf Instruktionsebene Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn
MehrAssembler am Beispiel der MIPS Architektur
Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.
Mehr2.3 Register-Transfer-Strukturen
2 2.3 Register-Transfer-Strukturen Kontext Die Wissenschaft Informatik befasst sich mit der Darstellung, Speicherung, Übertragung und Verarbeitung von Information [Gesellschaft für Informatik] 2, 24-2
MehrGrundlagen der Rechnerarchitektur. MIPS Assembler
Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32
MehrRechnerarchitektur. Marián Vajteršic und Helmut A. Mayer
Rechnerarchitektur Marián Vajteršic und Helmut A. Mayer Fachbereich Computerwissenschaften Universität Salzburg marian@cosy.sbg.ac.at und helmut@cosy.sbg.ac.at Tel.: 8044-6344 und 8044-6315 30. Mai 2017
MehrTechnische Informatik 1
Technische Informatik 1 5 Prozessor Pipelineimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Pipelining Definition 5 2 Definition Pipelining (Fliessbandverarbeitung) ist eine
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht 1 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining
MehrName: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.
Name: Vorname: Matr.-Nr.: 4 Aufgabe 1 (8 Punkte) Entscheiden Sie, welche der folgenden Aussagen zum Thema CISC/RISC-Prinzipien korrekt sind. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen
MehrCarry Lookahead Adder
Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:
MehrHier: Soviele Instruktionen wie möglich sollen in einer Zeiteinheit ausgeführt werden. Durchsatz.
Pipelining beim DLX 560 Prozessor Pipelining : Implementierungstechnik Vielfältig angewendet in der Rechnerarchitektur. Pipelining macht CPUs schnell. Pipelining ist wie Fließbandverarbeitung. Hintereinanderausführung
MehrDigitaltechnik und Rechnerstrukturen. 2. Entwurf eines einfachen Prozessors
Digitaltechnik und Rechnerstrukturen 2. Entwurf eines einfachen Prozessors 1 Rechnerorganisation Prozessor Speicher Eingabe Steuereinheit Instruktionen Cachespeicher Datenpfad Daten Hauptspeicher Ausgabe
MehrTechnische Informatik 1
Technische Informatik 1 4 Prozessor Einzeltaktimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Vorgehensweise 4 2 Prinzipieller Aufbau Datenpfad: Verarbeitung und Transport von
Mehr32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78
32 Bit Konstanten und Adressierung Grundlagen der Rechnerarchitektur Assembler 78 Immediate kann nur 16 Bit lang sein Erinnerung: Laden einer Konstante in ein Register addi $t0, $zero, 200 Als Maschinen
MehrAufgabe 1 : Assembler
Sommer 2016 Technische Informatik I Lösungsvorschlag Seite 2 Aufgabe 1 : Assembler (maximal 23 Punkte) Hinweis: Auf der letzten Seite des Prüfungsbogens finden Sie eine Übersicht von Assemblerbefehlen.
MehrTechnische Informatik 1
Technische Informatik 1 4 Prozessor Einzeltaktimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Vorgehensweise 4 2 Prinzipieller Aufbau Datenpfad: Verarbeitung und Transport von
MehrÜbungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch , 14:00 Uhr
Praktikum zur Vorlesung Prozessorarchitektur SS 2017 Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch 21.06.2017, 14:00 Uhr 1.1. Einführung Programmsteuerbefehle
MehrSpeichern von Zuständen
Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 R S C D altes Q neues Q 0 0 0 0 0 1 0 1 0 0 1
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 8 Musterlösung zu Übung 5 Datum : 8.-9. November 8 Aufgabe : MIPS Architektur Das auf der nächsten
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 20.03.09 4-1 Heutige große Übung Ankündigung
MehrKapitel 2. Pipeline-Verarbeitung. Technologie- Entwicklung. Strukturelle Maßnahmen. Leistungssteigerung in Rechnersystemen
Technologie- Entwicklung Kapitel 2 Pipeline-Verarbeitung SSI: Small Scale Integration MSI: Medium Scale Integration LSI: Large Scale Integration VLSI: Very Large Scale Integration ULSI: Ultra Large Scale
MehrHochschule Düsseldorf University of Applied Sciences HSD RISC &CISC
HSD RISC &CISC CISC - Complex Instruction Set Computer - Annahme: größerer Befehlssatz und komplexere Befehlen höhere Leistungsfähigkeit - Möglichst wenige Zeilen verwendet, um Aufgaben auszuführen - Großer
MehrDIGITALE SCHALTUNGEN II
DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop
MehrDatapath. Data Register# Register# PC Address instruction. Register#
Überblick über die Implementation Datapath Um verschiedene Instruktionen, wie MIPS instructions, interger arithmatic-logical instruction und memory-reference instructions zu implementieren muss man für
MehrMinimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle
Minimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle # A B C D OK m9 + m11 1 0 1 P1 m7 + m15 1 1 1 P2 m11 + m15 1 1 1 P3 m0 + m1 + m4 + m5 0 0 P4 m0 + m1 + m8 + m9 0 0 P5 m4 + m5 + m6 + m7 0
Mehr9. Fließbandverarbeitung
9. Fließbandverarbeitung Nachteile der Mikroprogrammierung Von CISC zu RISC Fließbandverarbeitung Pipeline-Hazards Behandlung von Daten- und Kontroll-Hazards 334 Nachteile mikroprogrammierter CPUs Zusätzliche
MehrÜbungsblatt 6. Implementierung einer Befehlspipeline
Praktikum zur Vorlesung Prozessorarchitektur SS 2016 Übungsblatt 6. Implementierung einer Befehlspipeline 1.1. Einführung Durch die Einteilung der Befehlsverarbeitung in mehrere Zyklen in dem vorangegangenen
MehrQuiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.
Quiz Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur
MehrMusterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller
SS 2004 VAK 18.004 Musterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller Aufgabenblatt 2.5 Lösung 2.5.1 Befehlszähler (Program Counter, PC) enthält Adresse des nächsten auszuführenden
MehrStruktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register
Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control
MehrRechnernetze und Organisation
Arithmetic Logic Unit ALU Professor Dr. Johannes Horst Wolkerstorfer Cerjak, 9.2.25 RNO VO4_alu Übersicht Motivation ALU Addition Subtraktion De Morgan Shift Multiplikation Gleitkommazahlen Professor Dr.
MehrN Bit Binärzahlen. Stelle: Binär-Digit:
N Bit Binärzahlen N Bit Binärzahlen, Beispiel 16 Bit: Stelle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binär-Digit: 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 Least Significant Bit (LSB) und Most Significant Bit (MSB)
MehrDas Prinzip an einem alltäglichen Beispiel
3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und
MehrTutorium Rechnerorganisation
Woche 8 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrVorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)
Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme
MehrSteuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung
Mehr2.3 Register-Transfer-Strukturen
2 2.3 Register-Transfer-Strukturen Kontext Die Wissenschaft Informatik befasst sich mit der Darstellung, Speicherung, Übertragung und Verarbeitung von Information [Gesellschaft für Informatik] 2, 24-2
MehrCache Blöcke und Offsets
Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich
MehrPrinzipieller Aufbau und Funktionsweise eines Prozessors
Prinzipieller Aufbau und Funktionsweise eines Prozessors [Technische Informatik Eine Einführung] Univ.- Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg
MehrVerteidigung der Studienarbeit ANALYSE DER BEOBACHTBARKEIT DER FEHLERFORTPFLANZUNG IN EINEM MIKROPROZESSOR ANHAND VERSCHIEDENER TRACE-KONFIGURATIONEN
Verteidigung der Studienarbeit ANALYSE DER BEOBACHTBARKEIT DER FEHLERFORTPFLANZUNG IN EINEM MIKROPROZESSOR ANHAND VERSCHIEDENER TRACE-KONFIGURATIONEN Dresden, 11.05.2017 Matthias Brinker Gliederung 1.
Mehr2.3 Register-Transfer-Strukturen
2 2.3 Register-Transfer-Strukturen Peter Marwedel Informatik 2 Otto-Hahn-Str. 6 Tel. 755 6 E-mail: peter.marwedel@tu-.de Sprechstunde: Mo 3:-4: 24/6/6 (xmas) Kontext Die Wissenschaft Informatik befasst
Mehr2.3 Register-Transfer-Strukturen
2 2.3 Register-Transfer-Strukturen Peter Marwedel Informatik 2 Otto-Hahn-Str. 6 Tel. 755 6 E-mail: peter.marwedel@tu-.de 25/2/6 (xmas) Kontext Die Wissenschaft Informatik befasst sich mit der Darstellung,
MehrOffenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab...
0 1 2 0 2 1 1 2 0 2 1 0 Offenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab... 0 1 2 0 1 2 1 1 3 2 2 3 212 Um solche Tabellen leicht implementieren zu können, stellt Java das switch-statement
MehrDarstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21
Darstellung von Instruktionen Grundlagen der Rechnerarchitektur Assembler 21 Übersetzung aus Assembler in Maschinensprache Assembler Instruktion add $t0, $s1, $s2 0 17 18 8 0 32 6 Bit Opcode Maschinen
MehrComputersysteme. Fragestunde
Computersysteme Fragestunde 1 Dr.-Ing. Christoph Starke Institut für Informatik Christian Albrechts Universität zu Kiel Tel.: 8805337 E-Mail: chst@informatik.uni-kiel.de 2 Kurze Besprechung von Serie 12,
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht Kapitel 3 Mikroarchitektur 3.1 elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung (zur Realisierung der Befehlsabarbeitung
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrARM: Befehlssatz (Forts.)
ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)
MehrARM: Befehlssatz (Forts.)
ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)
MehrJR - RA - SS02 Kap
3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining 3.5 Superskalare Befehlsausführung JR - RA - SS02 Kap.
MehrArbeitsfolien - Teil 4 CISC und RISC
Vorlesung Informationstechnische Systeme zur Signal- und Wissensverarbeitung PD Dr.-Ing. Gerhard Staude Arbeitsfolien - Teil 4 CISC und RISC Institut für Informationstechnik Fakultät für Elektrotechnik
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrUmstellung auf neue Pipeline
new_pipe Umstellung auf neue Pipeline»» Umstellung auf neue Pipeline Core mit 2 Port Registerfile In dieser Konfiguration wird am Registerfile ein Phasensplitting durchgeführt, um in jedem Takt 2 Register
MehrRechnerarchitektur SS TU Dortmund
Rechnerarchitektur SS 2016 Exercises: Scoreboarding and Tomasulo s Algorithm Jian-Jia Chen TU Dortmund to be discussed on June, 14, 2016 Jian-Jia Chen (TU Dortmund) 1 / 8 Scoreboardings Im nächste Folien
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrSchriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Rechnersysteme Studiengang: Bachelor (PF CSE / IF; WPF CV / WIF) am: 30. Juli 2008 Bearbeitungszeit: 120 Minuten
MehrAufgabenblatt 7. Es sind keine Abgaben mit mehreren Namen oder Kopien von Abgaben anderer erlaubt
Aufgabenblatt 7 Wichtige Hinweise: Bitte Namen und Gruppennummer deutlich lesbar rechts oben auf allen Blättern der Abgabe angeben und alle Blätter der Abgabe zusammenheften (1 Zusatzpunkt!) Es sind keine
MehrComputer-Architektur Ein Überblick
Computer-Architektur Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Computer-Architektur Ein Überblick p.1/27 Computer-Aufbau: Motherboard Computer-Architektur Ein Überblick p.2/27
MehrJR - RA - SS02 Kap
3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining 3.5 Superskalare Befehlsausführung JR - RA - SS02 Kap.
Mehr10 Pipelining. Computersysteme 10. Pipelining
10 Pipelining Durch Pipelining kann man viele Abläufe im Rechner beschleunigen Insbesondere ist es eine Implementierungstechnik, die CPUs schneller macht Die Idee ist die der Fließbandverarbeitung in Produktionsprozessen
MehrDIGITALE SCHALTUNGEN II
DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop
Mehr