Rechnerarchitektur (RA)
|
|
- Martina Böhler
- vor 5 Jahren
- Abrufe
Transkript
1 2 Rechnerarchitektur (RA) Sommersemester 26 Pipelines Jian-Jia Chen Informatik /5/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt.
2 Mikroprogrammierung Fließbandverarbeitung fetch decode RRR rr branch jump mar mar' lw load store rr2 branch2 2,
3 Mikroprogrammierung Fließbandverarbeitung fetch decode RRR rr branch jump mar mar' lw load store rr2 branch2 2,
4 Mikroprogrammierung Fließbandverarbeitung fetch decode RRR rr branch jump mar mar' lw load store rr2 branch2 2,
5 Mikroprogrammierung Fließbandverarbeitung fetch decode RRR rr branch jump mar mar' lw load store rr2 branch2 2,
6 Mikroprogrammierung Fließbandverarbeitung fetch decode RRR rr branch jump mar mar' lw load store rr2 branch2 2, 25 Flash-Animation - 6 -
7 2.3.2 Fließbandverarbeitung Fließband-Architektur (engl. pipeline architecture): Bearbeitung mehrerer Befehle gleichzeitig, analog zu Fertigungsfließbändern. Beispiel MIPS: instruction fetch instruction decode/ register read instruction execution/ address calculation Memory access (register) writeback 25:2 2:6 5: Speicher Speicher 5: 2,
8 Änderungen gegenüber der Struktur ohne Fließband Separater Addierer für Programm-Folgeadressen. Konzeptuelle Aufteilung des Speichers in Daten- und Befehlsspeicher. Aufteilung des Rechenwerks in Fließbandstufen, Trennung durch Pufferregister, T und Befehlsregister werden Pufferregistern. 25:2 2:6 5: Speicher Speicher Steuerwerk nicht dargestellt 5: 2,
9 Aufgaben der einzelnen Phasen bzw. Stufen Befehlsholphase (IF) Lesen des aktuellen Befehls; separater Speicher, zur Vermeidung von Konflikten mit Datenzugriffen (F Cache). Dekodier- und ister-lese-phase (ID) Lesen der ister möglich wegen fester Plätze für Nr. Ausführungs- und Adressberechungsphase (EX) Berechnung arithmetischer Funktion bzw. Adresse für Speicherzugriff. Speicherzugriffsphase (MEM) Wird nur bei Lade- und Speicherbefehlen benötigt. Abspeicherungsphase (WB) Speichern in ister, bei Speicherbefehlen nicht benötigt. 2,
10 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus Befehl 2,
11 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus 2 Befehl 2 Befehl 2,
12 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus 3 Befehl 3 Befehl 2 Befehl 2,
13 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus Befehl Befehl 3 Befehl 2 Befehl 2,
14 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus 5 Befehl 5 Befehl Befehl 3 Befehl 2 Befehl 2,
15 Idealer Fließbanddurchlauf 25:2 2:6 5: 5: Zyklus 6 Befehl 6 Befehl 5 Befehl Befehl 3 Befehl 2 2,
16 Pipeline-Hazards Structural hazards (deutsch: strukturelle Abhängigkeiten oder Gefährdungen). Verschiedene Fließbandstufen müssen auf dieselbe Hardware-Komponente zugreifen, weil diese nur sehr aufwändig oder überhaupt nicht zu duplizieren ist. Beispiele: Speicherzugriffe, sofern für Daten und Befehle nicht über separate Pufferspeicher (caches) eine weitgehende Unabhängigkeit erreicht wird. Bei Gleitkommaeinheiten lässt sich häufig nicht mit jedem Takt eine neue Operation starten (zu teuer). F Eventuell Anhalten des Fließbandes (pipeline stall) nötig. 2,
17 Datenabhängigkeiten () Gegeben sei eine Folge von Maschinen-Befehlen. Def.: Ein Befehl j heißt von einem vorausgehenden Befehl i datenabhängig, wenn i Daten bereitstellt, die j benötigt. Beispiel: add $2,$2,$3 sub $,$5,$2 and $6,$2,$7 or $8,$2,$9 xor $,$2,$ Diese Befehle sind vom add-befehl wegen $2 datenabhängig Diese Art der Abhängigkeit heißt (bei Hennessy und anderen) read after write- (oder RAW-) Abhängigkeit. 2,
18 Datenabhängigkeiten (2) Gegeben sei wieder eine Folge von Maschinen-Befehlen. Def.: Ein Befehl i heißt von einem nachfolgenden Befehl j antidatenabhängig, falls j eine Speicherzelle beschreibt, die von i noch gelesen werden müsste. Beispiel: add $2,$2,$3 sub $,$5,$2 Diese 2 Befehle sind vom or-befehl and $6,$2,$7 wegen $2 antidatenabhängig or $2,$2,$9 xor $,$2,$ Diese Art der Abhängigkeit heißt (bei Hennessy und anderen) write after read - (oder WAR-) Abhängigkeit. 2,
19 Datenabhängigkeiten (3) Gegeben sei (wieder) eine Folge von Maschinen-Befehlen. Def.: Zwei Befehle i und j heißen voneinander Ausgabe-abhängig, falls i und j dieselbe Speicherzelle beschreiben. Beispiel: add $2,$2,$3 sub $,$5,$2 and $6,$2,$7 or $2,$2,$9 xor $,$2,$ Voneinander ausgabeabhängig. Diese Art der Abhängigkeit heißt (bei Hennessy und anderen) write after write - (oder WAW-) Abhängigkeit. 2, 25 ravi/pipeline - 9 -
20 Quiz Data Hazard Does WAR an issue in the previous pipeline structure? Does WAW an issue in the previous pipeline structure? Why do we need and separately? 2,
21 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: Zyklus add $,$2,$3 2,
22 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: sub $,$5,$ add $,$2,$3 Zyklus 2 2,
23 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: Zyklus 3 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
24 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: Zyklus or $8,$,$9 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
25 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: Zyklus 5 xor $,$,$ or $8,$,$9 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
26 Bypässe, forwarding: Behandlung des data hazards bei and und sub 25:2 2:6 5: 5: Zyklus 6? xor $,$,$ or $8,$,$9 and $6,$,$7 sub $,$5,$ 2,
27 Taktung zur Behandlung des data hazards bei or 25:2 Takt 2:6 5: 5: add $,$2,$3 Zyklus Übernahme in die Pipeline-ister 2,
28 Taktung zur Behandlung des data hazards bei or 25:2 Takt 2:6 5: 5: sub $,$5,$ add $,$2,$3 Zyklus 2 Übernahme in die Pipeline-ister 2,
29 Taktung zur Behandlung des data hazards bei or 25:2 Takt 2:6 5: 5: Zyklus 3 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
30 Taktung zur Behandlung des data hazards bei or 25:2 2:6 5: Takt 5: Zyklus or $8,$,$9 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
31 Taktung zur Behandlung des data hazards bei or 25:2 Takt 2:6 5: 5: Zyklus xor $,$,$ or $8,$,$9 Übernahme in die Pipeline-ister Zyklus 5 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
32 Taktung zur Behandlung des data hazards bei or 25:2 Takt 2:6 5: 5: Zyklus xor $,$,$ or $8,$,$9 Übernahme in die Pipeline-ister Zyklus 5 and $6,$,$7 sub $,$5,$ add $,$2,$3 2,
33 Taktung zur Behandlung des data hazards bei or Übernahme in, Dmem und? 5: 25:2 2:6 5: xor $,$,$ Zyklus 6 or $8,$,$9 Übernahme in die Pipeline-ister and $6,$,$7 Takt sub $,$5,$ 2, 25 pipeline2-33 -
34 Alle data hazards durch Bypässe behandelbar? 25:2 2:6 5: 5: Zyklus xor lw? sub and $8,$,$9 $,($2) $,$,$ $,$5,$ $6,$,$7 xor and lw sub $8,$,$9 $,($2) $,$,$ $6,$,$7 $,$5,$ and or sub lw $8,$,$9 $,($2) $6,$,$7 $,$5,$ sub and lw $,($2) $,$5,$ $6,$,$7 lw sub $,($2) $,$5,$ Speicherwort wird am Ende des Zyklus gespeichert, steht für Differenz noch nicht bereit. 2,
35 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus lw $,($2) 2,
36 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus 2 sub $,$5,$ lw $,($2) 2,
37 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus 3 and $6,$,$7 sub $,$5,$ lw $,($2) 2,
38 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus or NOOP $8,$,$9 and NOOP $6,$,$7 sub NOOP $,$5,$ lw $,($2) 2,
39 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus 5 or $8,$,$9 and $6,$,$7 sub $,$5,$ NOOP lw $,($2) 2,
40 Lösung durch Anhalten des Fließbandes (pipeline stall, hardware interlocking, bubbles) 25:2 2:6 5: 5: Zyklus 6 bubble, durch intelligente Compiler vermeiden! xor $,$,$ or $8,$,$9 and $6,$,$7 sub $,$5,$ NOOP 2, 25 ravi/pipeline2 - -
41 Kontrollfluss-Abhängigkeiten oder - Gefährdungen, control hazards () Beispielprogramm: beq $2,$2,t -- springe zur Marke t, falls [2]=[2] sub t:add.. Wir versuchen zunächst, durch Einfügen von NOOPs, die intuitive Bedeutung des Programms zu realisieren... 2,
42 Kontrollfluss-Abhängigkeiten oder - Gefährdungen, control hazards (2) 25:2 2:6 5: 5: Takt 2: Sprung wird erkannt, deshalb werden zwei NOOP-Befehle eingefügt. Takt : Mit fallender Flanke wird getaktet, mit steigender IF/ID-ister. Takt 3: müsste sowohl Vergleich wie auch das Sprungziel ausrechnen können Zyklus beq NOOP sub... oder $,$2,t add beq NOOP sub... oder $,$2,t add beq NOOP sub oder $,$2,t add beq NOOP $,$2,t beq NOOP $,$2,t 2,
43 Kontrollfluss-Abhängigkeiten oder - Gefährdungen, control hazards (3) Probleme beim gezeigten Ansatz: Leistungsverlust durch 2 NOOPs (branch delay penalty). /Multiplexer in der gezeigten Form nicht ausreichend, um Test und Sprungzielberechnung in einem Takt auszuführen. Lösungsansatz: Gleichheit der ister wird schon in der instruction decode-stufe geprüft. Sprungziel wird in separatem Adressaddierer ebenfalls bereits in der instruction decode-stufe berechnet. Sofern weiterhin noch Verzögerungen auftreten: nächsten Befehl einfach ausführen (delayed branch). oder weiterhin NOOP(s) einfügen (stall). 2,
44 Reduktion der branch delay penalty; delayed branch IF/ID = * 25:2 ID/EX Am Ende des Zyklus 2 gültig EX/MEM MEM/WB Folgeadresse bei fallender Flanke übernommen. 2:6 5: 5: * Zyklus beq sub add... $,$2,t beq sub add... $,$2,t beq sub add $,$2,t beq sub add $,$2,t beq sub $,$2,t 2,
45 Delayed Branches, verzögerte Sprünge Beim gezeigten Beispiel wird der auf den Sprungbefehl folgende Befehl immer noch ausgeführt. beq $2,$2,t sub... # wird immer noch ausgeführt... t: add.. It s not a bug, it s a feature Einen Platz für die Aufnahme eines solchen Befehls nennt man delay slot, die Sprünge delayed branches. Manche Maschinen haben mehrere delay slots. Delay slots sollten von Übersetzern mit nützlichen Befehlen gefüllt werden. Nur notfalls sollte es ein NOOP sein. Die MIPS-Maschine hat ein delay slot, welches aber vom Assembler verdeckt wird. 2, 25 ravi/pipeline3-5 -
46 Typen von Fließband-Gefährdungen (hazards) Strukturelle Abhängigkeiten/Gefährdungen (structural hazards) Datenfluß- Abhängigkeiten/Gefährdungen (data hazards) aufgrund von Datenabhängigkeiten (RAW) F forwarding, pipeline stalls aufgrund von Antidatenabhängigkeiten (WAR) (erst bei komplizierteren Systemen wichtig) aufgrund von Ausgabeabhängigkeiten (WAW) (erst bei komplizierteren Systemen wichtig) Kontrollfluß-Abhängigkeiten/Gefährdungen (control hazards) F delayed branches, pipeline stalls, spekulative Ausführung, Sprungvorhersage 2,
CPU. 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
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
MehrWas ist die Performance Ratio?
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
MehrPipelining. 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:
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
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
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:
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)
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:
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
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
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
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
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
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
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
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
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
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
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
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
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
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
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
Mehr, WS2013 Übungsgruppen: Di., Fr.,
VU Technische Grundlagen der Informatik Übung : Stack, Pipelining., WS20 Übungsgruppen: Di., 0.01. Fr.,.01.201 Aufgabe 1: Stack - Funktionsweise Erläutern Sie die Funktionsweise eines Stacks bzw. Kellerspeichers
MehrBesprechung des 5. Übungsblattes Parallelität innerhalb der CPU Pipelining
Themen heute Besprechung des 5. Übungsblattes Parallelität innerhalb der CPU Pipelining Organisatorisches Wie schon in den vorhergehenden Tutorien erwähnt, ist Mehrfachabgabe, außer bei Programmieraufgaben,
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.
MehrDer von Neumann Computer
Der von Neumann Computer Grundlagen moderner Computer Technologie 1 Der moderne Computer ein weites Spektrum Typ Preis Anwendungsbeispiel embeded Computer 10-20 $ in Autos, Uhren,... Spielcomputer 100-200$
MehrInformatik 12 Kapitel 3 - Funktionsweise eines Rechners
Fachschaft Informatik Informatik 12 Kapitel 3 - Funktionsweise eines Rechners Michael Steinhuber König-Karlmann-Gymnasium Altötting 9. Februar 2017 Folie 1/36 Inhaltsverzeichnis I 1 Komponenten eines PCs
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)
Mehr9.1. Aufbau einer Befehlspipeline
Kapitel 9 - Befehlspipelining Seite 191 Kapitel 9 Befehlspipelining 9.1. Aufbau einer Befehlspipeline Ein typischer Befehl in einer Maschine mit einem RISC-artigen Befehlssatz besteht aus den Operationen:
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
MehrLösungsvorschlag 10. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag. Übung Technische Grundlagen der Informatik II Sommersemester 29 Aufgabe.: MIPS-Kontrollsignale Für die 5 Befehlstypen a) R-Format
MehrDynamisches Scheduling
12 Dynamisches Scheduling Peter Marwedel Informatik 12 TU Dortmund 2012/05/07 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt.
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
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
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
MehrH E F B G D. C. DLX Rechnerkern
C. DLX Rechnerkern C.1. Einordnung DLX Architektur und Konzepte: Einfache "Gesamtzyklus"-DLX Maschine (non-pipelined), Verarbeitungsschritte einer Instruktion, Taktverhalten im Rechner, RISC & CISC...
Mehr2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 14. Okt. 2015 Computeraufbau: nur ein Überblick Genauer: Modul Digitale Systeme (2. Semester) Jetzt: Grundverständnis
MehrTeil VIII Von Neumann Rechner 1
Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 5 am 25.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrRechnerstrukturen 1: Der Sehr Einfache Computer
Inhaltsverzeichnis 1: Der Sehr Einfache Computer 1 Komponenten.................................... 1 Arbeitsweise..................................... 1 Instruktionen....................................
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
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
Mehrnutzt heute Diese Prinzipien werden wir im Kapitel 3 behandelt Lehrstuhl für Informatik 3 - D. Fey Vorlesung GRa - SS
3.1 Einführung (1) Nahezu jeder Prozessor in einem Desktop-Rechner (der auf oder unter dem Tisch steht) und in einem Server- Rechner (auf dem man sich von der Ferne einloggt und dort rechnet) nutzt heute
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur [CS3100.010] Wintersemester 2014/15 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 6 Grundlagen
MehrRechnernetze und Organisation
RISC 1 Übersicht Motivation RISC-Merkmale RISC-Instruktionsformat Pipelining Sparc, MIPS, Arm, PowerPC 2 Motivation Warum RISC Compiler nutzen komplexe CISC-Instruktionen kaum Nur 80% der Instruktionen
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
Mehr1 Rechnerstrukturen 1: Der Sehr Einfache Computer
David Neugebauer, Informationsverarbeitung - Universität zu Köln, Seminar BIT I Inhaltsverzeichnis 1 Rechnerstrukturen 1: Der Sehr Einfache Computer 1 1.1 Komponenten................................. 1
MehrInstitut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04.
Kontrollstrukturen Informatik II SS 2004 Teil 4: Assembler Programmierung Sprünge (bedingte und unbedingte) If-then-else, Case Loop (n Durchläufe) While (Abbruchbedingung) Institut für Informatik Prof.
MehrProzessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
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
MehrGrundbegriffe der Informatik Tutorium 5
Grundbegriffe der Informatik Tutorium 5 Tutorium Nr. 16 Philipp Oppermann 2. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrParallele Rechnerarchitekturen. Bisher behandelte: Vorlesung 7 (theoretische Grundkonzepte) Nun konkrete Ausprägungen
Parallele Rechnerarchitekturen Bisher behandelte: Vorlesung 7 (theoretische Grundkonzepte) Nun konkrete Ausprägungen Pipelining Beispiel aus dem realen Leben (;-)) Wäschewaschen in WG Füllen der Waschmaschine
Mehr, SS2012 Übungsgruppen: Do., Mi.,
VU Technische Grundlagen der Informatik Übung : Mikroprozessoren, Pipelining, Cache 183.579, SS01 Übungsgruppen: Do., 10.05. Mi., 1.05.01 Aufgabe 1: Stack Funktionsweise eines Stacks Erläutern Sie die
MehrMikroprozessortechnik Grundlagen 1
Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega28 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes
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
MehrInstruktionen pro Takt
(c) Peter Sturm, Universität Trier (u.a.) 1 Instruktionen pro Takt 500 MIPS (Dhrystone) Taktfrequenz 450 400 350 300 250 200 150 100 50 0 8086 80286 80386 80486 Pentium Pentium Pro Die-Größen: Intel Vorlesung
MehrSysteme I: Betriebssysteme Kapitel 8 Speicherverwaltung
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
MehrMikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005
Mikroprozessoren Aufbau und Funktionsweise Christian Richter Ausgewählte Themen der Multimediakommunikation SS 2005 Christian Richter (TU-Berlin) Mikroprozessoren AT MMK 2005 1 / 22 Gliederung Was ist
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrGrundlagen der Rechnerarchitektur. Speicher
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrPhilipp Grasl PROZESSOREN
1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION
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
MehrHeute nur MIPS-Praxis (4 Aufgaben)
Themen heute Heute nur MIPS-Praxis (4 Aufgaben) Hinweis: Diese Aufgaben findet ihr auf den Übungsblättern zu den Tutorien (bei Aufgabe 4 wurde eine Teilaufgabe und im Tutorium #6 bereits geklärte Wissensfragen
MehrNeue Prozessor-Architekturen für Desktop-PC
Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/
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
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
MehrTechnische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1
E-1 Technische Grundlagen der Informatik 2 SS 2009 Einleitung R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt Lernziel E-2 Verstehen lernen, wie ein Rechner auf der Mikroarchitektur-Ebene
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
MehrVon-Neumann-Architektur
Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..
MehrSysteme 1: Architektur
slide 1 Vorlesung Systeme 1: Architektur Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Prüfung 18. Februar 2004 8h00-11h40 13h00-18h20 20 Minuten
Mehrfrüher: CISC ( Complex Instruction Set Computer )
Hochleistungs-CPUs früher: CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do
MehrLeistung und Pipelining. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Leistung und Pipelining Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Leistung Leistungsmessung Leistungssteigerung Pipelining Einführung in die
Mehr1 Random Access Maschine
1 RANDOM ACCESS MASCHINE 1 1 Random Access Maschine Neue Hardware: Random Access Maschine = RAM. Der Name hat nichts mit Zufall zu tun, sondern mit wahlfreiem Zugriff. Die RAM besteht aus einem Eingabeband,
MehrMikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)
MehrJohann Wolfgang Goethe-Universität
Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory
MehrCompilerbau + Virtuelle Maschinen
Helmut Seidl Compilerbau + Virtuelle Maschinen München Sommersemester 2009 1 Organisatorisches Der erste Abschnitt Die Übersetzung von C ist den Vorlesungen Compilerbau und Virtuelle Maschinen gemeinsam
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrRISC-Prozessoren (1)
RISC-Prozessoren (1) 1) 8 Befehlsklassen und ihre mittlere Ausführungshäufigkeit (Fairclough): Zuweisung bzw. Datenbewegung 45,28% Programmablauf 28,73% Arithmetik 10,75% Vergleich 5,92% Logik 3,91% Shift
MehrTechnische Informatik 1
Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache
MehrAssembler Kontrollstrukturen
Assembler Kontrollstrukturen Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Kontrollstrukturen 1/21 2008-04-03 Kontrollstrukturen
MehrImplementierung: Direkt abgebildeter Cache
Implementierung: Direkt abgebildeter Cache Direkt-abgebildeter Cache von 64 KB mit 16-Byte-Linien (Adress- und Wortlänge 32 Bit, Byteadressierung) Address (showing bit positions) 31 30 29 28..... 19 18
MehrVorlesung: Technische Informatik 3
Rechnerarchitektur und Betriebssysteme zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme zhang@informatik.uni-hamburg.de Inhaltsverzeichnis 4. Computerarchitektur........................235
MehrRechnerarchitektur (RA)
12 Rechnerarchitektur (RA) Sommersemester 2016 Instruction Level Parallelism (ILP) Jian-Jia Chen Informatik 12 http://ls12-www.cs.tu-.de/daes/ 2016/05/31, 2016/06/01 Diese Folien enthalten Graphiken mit
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
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.
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
MehrRechner Architektur. Martin Gülck
Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard
MehrTechnische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer
Technische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer Ziele der Übung Aufgabe 1 Ein lauffähiges Assembler-Programm Umgang mit dem Debugger Aufgabe 2 (Zusatzaufgabe) Lesen und Analysieren
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 22: Mima-X Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik
Mehrjedoch sicherlich nicht höher sein, als die Hälfte der maximal erreichbaren Punkte.
Hinweise zur Klausur des Kurses 1709 am 02.08.2003 - Klausurdauer: drei Stunden (10:OO bis 13:OO Uhr) - Überprüfen Sie die Vollständigkeit der Aufgabenstellungen! Die Klausur umfaßt insgesamt 10 Seiten
MehrFachbereich Medienproduktion
Fachbereich Medienproduktion Herzlich willkommen zur Vorlesung im Studienfach: Grundlagen der Informatik Themenübersicht Rechnertechnik und IT Sicherheit Grundlagen der Rechnertechnik Prozessorarchitekturen
MehrArchitektur von Parallelrechnern 50
Architektur von Parallelrechnern 50 Rechenintensive parallele Anwendungen können nicht sinnvoll ohne Kenntnis der zugrundeliegenden Architektur erstellt werden. Deswegen ist die Wahl einer geeigneten Architektur
Mehr