Der Intel Pentium 4. Architektur Teil 1. Fatih Gürsoy Betreuender. Datum: Januar 2003

Größe: px
Ab Seite anzeigen:

Download "Der Intel Pentium 4. Architektur Teil 1. Fatih Gürsoy Betreuender. Datum: Januar 2003"

Transkript

1 Architektur Teil 1 Von: Semester: Vorlesung: Betreuender Hochschulprofessor: I8I1x Rechnerstrukturen Prof. Dr. T. Risse Datum: Januar 2003

2 Inhaltsverzeichnis: 1 Einleitung Allgemeines zum Intel Pentium Architektur des Pentium Der neue Prozessorbus Advanced Transfer Cache Hardware Data Prefetch Das Frontend... 7 Instruction Translate Look-aside Buffer ITLB... 7 Dynamic Branch Predictor und Trace Cache Branch Prediction (BTB)... 8 Branch Target Buffer (BTB)... 9 Micro Code ROM... 9 Instruction Decoder Execution Trace Cache L1-Daten Cache Quellen: Seite 2 -

3 1 Einleitung Im Rahmen der Vorlesung Rechnerstrukturen wurden sog. Assignments erarbeitet. Dabei ging es in unserer Gruppe um den Intel Pentium 4. In der Folgevorlesung Rechnerstukturen-Labor soll nun im Wesentlichen die Speicheranbindung des Intel Pentium 4 genauer betrachtet werden. Vorab werden die wesentlichen Neuerungen des Pentium 4 kurz angerissen, aber nicht vertieft. Dieses ist nur um den Pentium 4 kurz vorzustellen. 2 Allgemeines zum Intel Pentium 4 Mit dem Pentium 4 führte Intel erstmals die NetBurst TM -Architektur[1] ein. Mit NetBurst stellt Intel ein ganz neues Prozessordesign vor. Taktfrequenzen ab 1,4 GHz und Skalierbarkeit für viele Jahre sollen als Erfolgsgarant dienen. NetBurst ist der Sammelbegriff für eine Vielzahl von Neuerungen, die erstmals beim Pentium 4 Einzug halten. NetBurst beinhaltet: 400 MHz Systembus Advanced Transfer Cache Trace Cache Hyper-Pipeline Rapid Execution Engine Advanced Dynamic Execution SSE2 - Seite 3 -

4 3 Architektur des Pentium 4 Bild 1: Architektur des P4 [2] Folgende Neuerungen erhalten Einzug in den Pentium 4: 400 MHz System-Bus: Der Pentium 4 erlaubt Datentransferraten von ~ 3 GByte/s und verfügt somit über die dreifache Bandbreite des Pentium III mit 133-MHz-FSB. Advanced Transfer Cache: Die Größe des Advanced Level 2 Transfer Cache beträgt 256 KB (Willamette) und liefert einen wesentlich höheren Datendurchsatz zwischen dem Level 2 Cache und dem Core. Der Advanced Transfer Cache besteht aus einem 256-Bit (32-Byte) Interface welches Daten zu jeder Core-Clock transferiert. Z.B. Ein Pentium 4 mit 1,5 GHz kann eine Transferrate von 48 GB/s (32 Bytes x 1 (Datentransfer pro Clock) x 1,5 GHz = 48 GB/s). Trace-Cache: Der Trace Cache ist ein erweiterter L1-Cache für Befehle. Er speichert bereits dekodierte x86-befehle (µops). Wartezeiten durch Befehlsdekodierung beim Speisen der Pipeline werden verhindert, da die Pipeline fertig dekodierte x86-befehle (µops)vom Trace Cache bekommt. - Seite 4 -

5 Hyper-Pipeline: Mit 20 Stufen doppelt so lang wie beim P6-Core. Sie kann bis zu 128* Micro-Ops gleichzeitig verarbeiten. Die Hyper-Pipeline-Technologie ermöglicht die hohen Taktfrequenzen des Pentium 4. Rapid Execution Engine: Die ALUs des Pentium 4 takten mit der doppelten Core- Frequenz. Integer-Befehle bearbeitet NetBurst damit beim 1,5 GHz Pentium 4 mit 3 GHz. Advanced Dynamic Execution: Sehr tiefe Core-Architektur nach dem spekulativen Out-of-Order Prinzip. NetBurst kann 126* Befehle gleichzeitig halten und stellt das Befehlsfenster den Ausführungseinheiten zur Verfügung. Zusätzlich verfügt der Pentium 4 über eine verbesserte Sprungvorhersage, die bei langen Pipelines sehr wichtig ist. Unterstützt wird die Sprungvorhersage durch einen 4 KByte großen Branch Target Buffer. SSE2: Die Streaming SIMD Extensions 2 verfügen über 144 neue Befehle und erlauben 128 Bit breite Integer- und Floating-Point-Operationen. Die Hyperpipeline, Rapid Execution Engine, Advanced Dynamic Execution sowie die SSE2 Befehle werden im zweiten Teil von Carsten Siebert und Beatrice Pop ausführlich behandelt. 3.1 Der neue Prozessorbus Bild 2: Der Prozessorbus Beim Pentium 3 ist der FSB mir 133 MHz getaktet und ist in der Lage, 64-Bit Daten mit einem Taktzyklus zu übertragen. Das ergibt eine Transferrate von 8 Byte * 133 MHz/s = 1,066 MB/s. * Die unterschiedlichen Angaben resultieren daraus, dass die genaue Größe der Micro-Ops nicht bekannt ist - Seite 5 -

6 Der Pentium 4 Bus wird mit 100 MHz beim Willamette und 133 MHz beim Northwood getaktet. Die Busbreite ist gleich geblieben. Es werden beim Pentium 4 nur pro Takt vier Datenwörter übertragen. 8 Byte * 4 * 133 MHz/s = 4,2 GB/s. Intel nennt das Übertragen von vier Datenwörtern Quad Pumped Bus [5]. Das Übertragen von 4 Datenwörtern setzt zwei Kanäle voraus. Einen für Read- und einen für Write-Operationen. Des Weiteren findet jeden halben Takt eine Datenübertragung statt. Dieser schnelle Datenaustausch verhindert den Engpass, der bis zum Pentium 3 noch präsent war. Vorausgesetzt der Hauptspeicher kann die Daten schnell genug liefern. 3.2 Advanced Transfer Cache Bild 3: Advanced Transfer Cache, Hardware Data Prefetch und L1 Data Cache Der Name Advanced Transfer Cache (L2) kommt noch vom Pentium 3 Coppermine. Er ist beim Willamette mit 256 KB und beim Northwood mit 512 KB angegeben. Die einzige Gemeinsamkeit zum Pentium 3 ist noch, dass es 8-Fach Satz assoziative Caches sind. Beim Pentium 4 wurde die Cacheline von 64-Byte auf 128-Byte erhöht, die in 2*64- Byte unterteilt wurde. Wenn der L2-Cache nun vom System (RAM, PCI, AGP, ) Daten erhält, werden auf einmal 64-Byte übertragen. Die Latenzzeit zum Lesen aus dem L2 beträgt 7 Cycles (bis die Daten vollständig an L1-Cache, oder an den x86 Instruction decode/prefetch Buffern anstehen). Die Verbindung zum Core ist 256-Bit breit und wird mit vollem Prozessortakt getaktet. Um eine L2-Cache-Line zu füllen, werden vier Taktzyklen benötigt, genau so viele Taktzyklen wie der P6-Bus für eine 32-Bit-Line. 3.3 Hardware Data Prefetch Das streaming Bit vom SSE ist für die prefetch-instuctoins des Pentium 3. Dieses Bit ermöglicht Software, sofern diese Bit gesetzt ist, Daten in die Caches zu laden, bevor sie von der CPU benötigt werden. Das setzten des Bits erfolgt Softwareseitig. - Seite 6 -

7 Diese Instruktionen sind beim Pentium 4 geblieben. Diese neue Einheit (siehe Bild 3) ist nun in der Lage, Datenzugriffs-Muster von Software, die durch den Pentium 4 ausgeführt wird, zu erkennen. Erkennt nun die Hardware Data Prefetch Unit, dass immer fortlaufende Streaming-Daten am L1 ankommen, werden sie automatisch prefetcht. Das setzen eines Bits durch die Software ist jetzt nicht mehr notwendig. Wie das Erkennen der fortlaufenden Streaming-Daten erfolgt, darüber schweigt Intel. 3.4 Das Frontend Das Frontend ist der Teil der Maschine, der die nächsten Befehle, die ausgeführt werden sollen, holt und sie für die Verarbeitung bereitstellt, um diese später in der Pipeline zu benutzen. Das Frontend hat dabei eine sehr exakte Branch Prediction Logik, die die vorhergesagten Sprungziele der Befehle abspeichert. Dadurch kann man bei der nächsten Berechnung des Sprungzieles spekulieren, wo das Programm hin verzweigen wird. Diese vorrausgesagte Sprungzieladresse von der Branch Prediction Einheit wird benutzt, um die nächsten Befehle vom L2 Cache zu holen. Diese x86-befehle werden dann in einfachere Befehle dekodiert, die µops genannt werden. Die NetBurst-Mikroarchitektur hat einen erweiterten L1-Instruction Cache, der Execution Trace Cache genannt wird. Dort werden diese µops gespeichert und somit entfällt bei der erneuten Ausführung des Befehls das Dekodieren. Die Prefetch- Logik bekommt schon fertig dekodierte x86-befehle, die sog. µops. Bild 4: Frontend des Pentium 4 Instruction Translate Look-aside Buffer ITLB Bei einem Trace Cache Miss muss der nächste Befehl aus dem L2 geladen werden. Da der L2 Cache mit virtuellen Adressen arbeitet, müssen diese Adressen in physikalische umgewandelt werden. Der Instruction TLB hat die Aufgabe, diese virtuellen Adressen in physikalische Adressen umzuwandeln. Es beschleunigt den Speicherzugriff, da die physikalischen Adressen im TLB in einer Tabelle zwischengespeichert werden. - Seite 7 -

8 Dynamic Branch Predictor und Trace Cache Branch Prediction (BTB) Es ist unbedingt notwendig, gute Branch Predictions zu erzielen, um falsche Sprungvorhersagen zu vermeiden. Dabei wird versucht, aus dem Verhalten eines bestimmten Sprunges, eine Vorhersage für diesen Sprung herzuleiten. Im Folgenden soll kurz erläutert werden, auf welche Weise Branch Predictions [3] realisiert werden: Es gibt drei Arten von Branches: Forward Conditional Branches: Der Programm-Counter (PC) zeigt zu einer Folgeadresse im Instruktionsfluss. Backward Conditional Branches: Der PC zeigt auf eine vorhergehende Adresse im Instruktionsfluss. Die Verzweigung basiert auf einer Bedingung, wie z.b. Springe zurück zum Anfang der Programmschleife, wenn am Ende der Schleife der Schleifenzustand es erfordert, die Schleife erneut aufzurufen. Unconditional Branches: Diese Verzweigungen beinhalten Sprünge, Prozeduraufrufe und Returns, die keine spezifische Bedingung haben. Ein jmp wäre dafür ein Beispiel. Realisierung von Branch Predictions: Static Prediction: Durch Untersuchungen von durchschnittlichem Befehlscode kann man feststellen, dass z.b. vorwärts gerichtete Verzweigungen rückwärts gerichtete Verzweigungen mit dem Verhältnis 4 zu 1 dominieren. Außerdem werden nur 60% der vorwärts gerichteten Verzweigungen genommen, während dessen durchschnittlich 85% der rückwärts gerichteten Verzweigungen genommen werden (aufgrund vom Programmschleifen). Dadurch hat man statische Voraussagen für Verzweigungen in Programmabläufen. Dynamic Prediction mit Branch History Table (BHT): Den Hauptteil der Vorhersage-Arbeit leistet die Fetch-Unit in Zusammenarbeit mit dem BTB (Branch Target Buffer). Der BTB ist eine Art Cache mit 4096 Einträgen. Wird ein bedingter Sprungbefehl in der Execution-Phase der Pipeline ausgeführt, so werden in den BTB Eintragungen für diesen Befehl vorgenommen (an welcher Adresse steht dieser Verzweigungsbefehl, wurde die Verzweigung durchgeführt, wohin wurde verzweigt). Zusätzlich sind für jeden Eintrag 4 History-Bits vorhanden, die ähnlich einem Zähler verwendet werden. In diesen Bits wird festgehalten, welches Verhalten dieser bedingte Sprungbefehl ausweist, wenn er wiederholt ausgeführt wird. Vereinfacht ausgedrückt funktioniert die Vorhersage nun etwa so: wurde der bedingte Sprung in letzter Zeit eher ausgeführt, wird das auch für die nächste Ausführung angenommen und umgekehrt. Die dynamische Verzweigungsvorhersage wird bereits in der Fetch- Unit verwendet. Two-Level Predictors (z.b. GShare Algorithm): Das ist die komplexeste Möglichkeit, noch höhere Genauigkeit bei der Branch Prediction zu erreichen. Es - Seite 8 -

9 geht im groben darum, durch Ausnutzung der Korrelation aller (globalen) Verzweigungen, noch treffsicherer Voraussagen treffen zu können. Es werden Muster von Entscheidungen (T=Taken T, N=Not Taken) aufgezeichnet und zur Vorhersage herangezogen. ein einzelner Branch Befehl: z.b. Schleife TTTNTTTN Oder als alternative eine if then else Anweisung TNTNTN Korrelation zwischen verschiedenen zusammenhängenden Branch-Befehlen z.b. if then else in schleife TT NT TT NT TN TT NT TT NT TN Eine Implementation dieser Methode ist GShare-Algorithmus. Branch Target Buffer (BTB) Bild 5: Branch Target Buffer Hier werden in einer Tabelle die Adressen von vorhergehenden Verzweigungen mit den vorausgesagten Verzweigungszielen abgespeichert (optional mit Setzen von Bits, wenn diese Verzweigungen in der Vergangenheit erfolgten oder nicht). Nun ist es möglich, vor dem Instruction Decoder Adressen mit dieser Tabelle zu vergleichen und bei Übereinstimmung die entsprechend vorausgesagten Befehle der Verzweigung in den Cache zu laden. Micro Code ROM Neben Trace Cache ist das Micro Code ROM, welches die komplexen x86-befehle in µops dekodiert. Diesen Micro Code ROM findet man in vielen modernen superskalaren und uralten µ-programmierbaren Prozessoren. Das Micro Code ROM wird für komplexe IA-32 Instruktionen (x86-befehle), wie z.b. String move, Fehler- und Interruptbehandlung benutzt. Wenn ein komplexer Befehl ansteht, wird dieser von dem Micro Code Sequencer entgegengenommen. Der Micro Code Sequencer generiert die µops und liefert sie an den Trace Cache. Die µops, die aus dem Trace Cache und dem Micro Code ROM kommen, werden in einer einfachen in-order µop queue gepuffert. Dieses hilft den Fluss der µops zur Ausführungseinheit zu gewährleisten. - Seite 9 -

10 Instruction Decoder Der Instruction Decoder empfängt die x86-befehls Bytes vom L2 Cache und dekodiert diese in einfache Befehle (RISC-Befehle), damit sie weiter verarbeitet werden können. Der einfache Instruction Decoder dekodiert dabei einen x86-befehl pro Takt. Einige x86-befehle werden in einen µop dekodiert, andere wiederum in mehrere µops, um den Befehl komplett auszuführen. Wenn mehr als 4 µops dekodiert werden müssen, um einen x86-befehl auszuführen, wird dieser x86-befehl an den Micro Code ROM geschickt. Dort werden die µops generiert und weitergeleitet. Ein Beispiel wäre string move, wo tausende von µops generiert werden. Viele x86-befehle brauchen jedoch nicht den Micro Code ROM. Aus einem AND, OR, XOR oder ADD wird nur ein µop generiert, der dann direkt in den Trace Cache weitergeleitet wird. Execution Trace Cache Der Execution Trace Cache [1] oder der L1-Instruktions Cache hat gegenüber dem Pentium 3 einige Vorteile. Beim Pentium III werden die Instruktionen vom L1-Instruktions-Cache geladen und dort gespeichert, bis die Decodereinheit diese übersetzt und an die Execution Unit weiter gibt. Die Decodereinheit übersetzt den Befehl in µops, damit die Ausführungseinheiten diese verarbeiten können. Die x86-instruktionen sind relativ komplex und der Dekoder benötigt eine gewisse Zeit, um diese in µops zu übersetzen. Im schlimmsten Fall sind alle Dekoder damit beschäftigt, den x86-befehl zu übersetzen, und dieses bremst die Execution Pipeline. Ein weiterer Nachteil ist, dass die x86-befehle, die mehrmals übersetzt werden müssen (z.b. in kleinen Schleifen), immer wieder neu dekodiert werden müssen (durch den Instruktion Decoder oder dem Micro Code ROM). Der Execution Trace Cache liefert 3 µops pro Takt an die Execution Einheit. Die meisten Befehle werden von dem Trace Cache geholt und ausgeführt. Es sei denn, der auszuführende Befehl liegt nicht in dem Trace Cache (Trace Cache Miss). Dann wird der Befehl von der NetBurst Mikroarchitektur aus dem L2 Cache geholt und dekodiert. Der Execution Trace Cache kann bis zu µops speichern, was ca. 100 KByte entspricht. Intel gibt die Größe des Execution Trace Caches nur in µops an und schweigt über die Größe in KByte. Doch wenn man die Fläche des L2-Caches und die des L1 (siehe Bild 6) vergleicht, so vermutet man eine Kapazität von ca. 100 KByte. Das ist immerhin 6 mal größer als beim Pentium III (16 KByte). - Seite 10 -

11 Bild 6: Durch den Vergleich des L1 (Execution Trace Cache) und des L2 Caches schätzt man die Größe des Execution Trace Caches auf ca. 100 KByte. Der Trace Cache hat auch gewisse Vorteile bei einer falsch vorhergesagten Verzweigung. Der Prozessor muss zwar alles verwerfen, aber der Trace Cache hat eine gute Chance, auch den alternativen Pfad schon fertig dekodiert vorrätig zu halten. Um Sprünge zu optimieren, greift der Cache auf eine eigene Sprungvorhersageneinheit auf µop-basis zurück, die zusätzlich und unabhängig von der normalen x86-vorhersageneinheit arbeitet. Diese Einheit soll, laut Intel, mit einem neuen Algorithmus arbeiten, welcher die falschen Vorhersagen (Mispredictions) um 1/3 besser voraussagt als beim Pentium III [6]. Der Execution Trace Cache nimmt die dekodierten µops vom Instruction Decoder und bildet daraus eine Sequenz von µops. Diese werden dann Traces genannt. D.h. ein Trace ist eine Aneinderreihung von µops, die als nächstes verarbeitet werden. Der Execution Trace Cache bildet dabei eine Gruppe von 6 µops, die Traceline genannt wird. Diese werden wiederum zu Blöcken zusammengefasst, welche nicht durch Verzweigungen unterbrochen werden. Ein Block beginnt also nach einem Sprung oder an einem Sprungziel und enthält alle Instruktionen bis einschließlich des nächsten Sprunges. Auch die Größe eines µops gibt Intel nicht bekannt. Aber durch die Größe des Trace Caches von ca. 100 KByte und µops kann man die Größe ungefähr berechnen. 100 KByte / µops = 8 Byte 64 bit breit ist ein µop - Seite 11 -

12 L1-Daten Cache Der 8 KByte große Level1-Daten-Cache wird für das Laden und Speichern von Integer/ Floating-Point (SSE)-Werten benutzt. Im Gegensatz zum Pentium III(16 KByte) ist der Daten Cache im Pentium 50% kleiner. Es ist ein 4-fach assoziativer Cache und arbeitet nach der Write Through Strategie. D.h., beim Schreibzugriff wird grundsätzlich der L2-Cache aktualisiert. Durch die dual-port-architektur ist es möglich, pro Takt einmal zu laden und zu speichern. Die Latenzzeit beim Laden eines Integer-Werts beträgt 2 Takte und das Laden eines floatingpoint/sse-wertes 6 Takte. Der Grund ist, dass ein Integerwert 32 Bit und ein SSE-Wert 128 Bit lang ist, was natürlich länger dauert. - Seite 12 -

13 4 Quellen: Internet: [1] [2] Intel s new Pentium 4 Processor [3] PC Processor Microarchitecture A closer look at branch prediction [4] Pentium 4 Architecture in Depth, Part 1+2 [5] Quad Data Rate SRAM-Technology Zeitschriften: [6] C t 24/00 S. 124 Die Architektur des Pentium 4 im Vergleich zu Pentium III und Athlon - Seite 13 -

Prozessorarchitektur. Sprungvorhersage. M. Schölzel

Prozessorarchitektur. Sprungvorhersage. M. Schölzel Prozessorarchitektur Sprungvorhersage M. Schölzel Inhalt Sprungvorhersage statische Methoden dynamische Methoden Problem Fetch-Phase Befehlswarteschlange Speicher b? Neue Adresse für noch nicht bekannt

Mehr

Instruktionen pro Takt

Instruktionen 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

Mehr

Benchmarking Intel Pentium III-S vs. Intel Pentium 4

Benchmarking Intel Pentium III-S vs. Intel Pentium 4 Benchmarking Intel Pentium III-S vs. Intel Pentium 4 André Ceselski Raphael Rosendahl 30.01.2007 Gliederung Motivation Vorstellung der Architekturen Intel P6 Architektur Intel NetBurst TM Architektur Architektur-Unterschiede

Mehr

Neue Prozessor-Architekturen für Desktop-PC

Neue 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/

Mehr

Technische 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 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

Mehr

Computergrundlagen Moderne Rechnerarchitekturen

Computergrundlagen Moderne Rechnerarchitekturen Aufbau eines modernen Computers Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart DDR3- Speicher Prozessor Prozessor PEG Graphikkarte(n) weitere

Mehr

Computergrundlagen Moderne Rechnerarchitekturen

Computergrundlagen Moderne Rechnerarchitekturen Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2010/11 Aufbau eines modernen Computers DDR3- Speicher Prozessor Prozessor PEG

Mehr

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: 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

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Was ist die Performance Ratio?

Was 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

Mehr

Rechnernetze und Organisation

Rechnernetze und Organisation Pentium 1 Übersicht Motivation Architektur Instruktions-Set Adressierungsarten Geschichte Verbesserung und Erweiterungen 2 Motivation Verständnis von Prozessoren: Warum Pentium statt kleiner CPU? Pentium

Mehr

Rechnerorganisation. 1. Juni 201 KC Posch

Rechnerorganisation. 1. Juni 201 KC Posch .6.2 Rechnerorganisation. Juni 2 KC Posch .6.2 2 .6.2 Front Side Bus Accelerated Graphics Port 28 MHz Front Side Bus North Bridge RAM idge South Bri IDE USB PCI Bus 3 .6.2 Front Side Bus Front Side Bus

Mehr

Die Sandy-Bridge Architektur

Die Sandy-Bridge Architektur Fakultät Informatik - Institut für Technische Informatik - Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Die Sandy-Bridge Architektur René Arnold Dresden, 12. Juli 2011 0. Gliederung 1.

Mehr

Virtueller Speicher und Memory Management

Virtueller Speicher und Memory Management Virtueller Speicher und Memory Management Speicher-Paradigmen Programmierer ein großer Adressraum linear adressierbar Betriebssystem eine Menge laufender Tasks / Prozesse read-only Instruktionen read-write

Mehr

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

Mehr

früher: CISC ( Complex Instruction Set Computer )

frü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

Mehr

Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen

Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen J. Treibig, S. Hausmann, U. Ruede 15.09.05 / ASIM 2005 - Erlangen Gliederung 1 Einleitung Motivation Grundlagen 2 Optimierungen

Mehr

Computergrundlagen Geschichte des Computers

Computergrundlagen Geschichte des Computers Computergrundlagen Geschichte des Computers Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2010/11 1641: Rechenmaschine von B. Pascal B. Pascal, 1632-1662 mechanische Rechenmaschine

Mehr

Computergrundlagen Geschichte des Computers

Computergrundlagen Geschichte des Computers Computergrundlagen Geschichte des Computers Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2011/12 1641: Rechenmaschine von B. Pascal B. Pascal, 1623-1662 mechanische Rechenmaschine

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 10 am 29.06.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Technische Informatik 1 - HS 2016

Technische 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

Mehr

Cell and Larrabee Microarchitecture

Cell and Larrabee Microarchitecture Cell and Larrabee Microarchitecture Benjamin Grund Dominik Wolfert Universität Erlangen-Nürnberg 1 Übersicht Einleitung Herkömmliche Prozessorarchitekturen Motivation für Entwicklung neuer Architekturen

Mehr

Data Hazards. Grundlagen der Rechnerarchitektur Prozessor 74

Data 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

Mehr

Compiler für f r Eingebettete Systeme (CfES)

Compiler für f r Eingebettete Systeme (CfES) Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Technische Informatik I - HS 18

Technische 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

Mehr

Rechnerarchitektur (RA)

Rechnerarchitektur (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

Mehr

Rechnerarchitektur (RA)

Rechnerarchitektur (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

Mehr

Cache-Speicher. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach

Cache-Speicher. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach Cache-Speicher Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht Cache-Speicher Warum Cache-Speicher? Cache-Strukturen Aufbau und Organisation von Caches Cache-Architekturen Cache-Strategien

Mehr

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.

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

Mehr

HYPER - THREADING HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI. Serge Fopoussi UNIVERSITÄT BREMEN SEMINAR RECHNERARCHITEKTUR. Prof. Dr.

HYPER - THREADING HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI. Serge Fopoussi UNIVERSITÄT BREMEN SEMINAR RECHNERARCHITEKTUR. Prof. Dr. SEMINAR RECHNERARCHITEKTUR HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI SEMINAR RECHNERARCHITEKTUR GLIEDERUNG 1. BACKGROUND : Arbeitsweise eines von Neumann-Rechners 2. ENTWICKLUNG VON PROZESSOREN 3. HYPER-THREADING

Mehr

Technische Informatik - Eine Einführung

Technische 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

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 3 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

Mehr

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten Hochleistungs-CPUs 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 in hardware

Mehr

DIGITALE SCHALTUNGEN II

DIGITALE 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

Datenpfaderweiterung 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 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

Mehr

Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC

Hochschule 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

Mehr

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09 Rechnerorganisation Mathematische Grundlagen (1) Boolesche Algebren: : BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau

Mehr

Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch , 14:00 Uhr

Ü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

Mehr

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

Mehr

Cache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22

Cache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22 Cache Grundlagen Schreibender Cache Zugriff SS 212 Grundlagen der Rechnerarchitektur Speicher 22 Eine einfache Strategie Schreibt man nur in den Cache, werden Cache und darunter liegender Speicher inkonsistent.

Mehr

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

Mehr

é Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus

é Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus 4.2 Caches é Cache kommt aus dem Französischen: cacher (verstecken). é Er kann durch ein Anwendungsprogramm nicht explizit adressiert werden. é Er ist software-transparent, d.h. der Benutzer braucht nichts

Mehr

Technische Informatik 1 - HS 2017

Technische 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

Mehr

Besprechung des 5. Übungsblattes Parallelität innerhalb der CPU Pipelining

Besprechung 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,

Mehr

TECHNISCHE 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

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen

Mehr

Allgemeine Lösung mittels Hazard Detection Unit

Allgemeine 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

Mehr

9.1. Aufbau einer Befehlspipeline

9.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:

Mehr

Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer

Lehrveranstaltung: 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

Mehr

, 2014W Übungsgruppen: Mo., Mi.,

, 2014W Übungsgruppen: Mo., Mi., VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2014W Übungsgruppen: Mo., 12.01. Mi., 14.01.2015 Aufgabe 1: Cache-Adressierung Ein Prozessor mit einer Adresslänge von 20 Bit

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 11 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

Mehr

6 Exkurs: Assoziativspeicher

6 Exkurs: Assoziativspeicher 6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei

Mehr

Pipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45

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:

Mehr

6 Exkurs: Assoziativspeicher (2) 6 Exkurs: Assoziativspeicher. 7.1 Speicherhierarchie. 7 Caches

6 Exkurs: Assoziativspeicher (2) 6 Exkurs: Assoziativspeicher. 7.1 Speicherhierarchie. 7 Caches 6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei

Mehr

Cache Blöcke und Offsets

Cache 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

Mehr

Intel P III-S vs. P4 Architecture & Benchmarking

Intel P III-S vs. P4 Architecture & Benchmarking Architecture & Benchmarking Labor zur Lehrveranstaltung Rechnerstrukturen (RST) Prof. Dr. Thomas Risse Hochschule Bremen University of Applied Sciences André Ceselski (100520) Raphael Rosendahl (95437)

Mehr

JR - RA - SS02 Kap

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

Mehr

Schriftliche Prüfung

Schriftliche 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

Mehr

An Introduction to Simultaneous Multi-Threading Prinziples and Architectures

An Introduction to Simultaneous Multi-Threading Prinziples and Architectures An Introduction to Simultaneous Multi-Threading Prinziples and Architectures Seminarvortrag von Thomas Weber Lehrstuhl Rechnerarchitektur Übersicht? Motivation? Aktuelle Microarchitekturen? Scheduling?

Mehr

Vorstellung der SUN Rock-Architektur

Vorstellung der SUN Rock-Architektur Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vorstellung der SUN Rock-Architektur Hauptseminar Ronald Rist Dresden, 14.01.2009

Mehr

Schreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).

Schreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle

Mehr

moderne Prozessoren Jan Krüger jkrueger@techfak.uni-bielefeld.de

moderne Prozessoren Jan Krüger jkrueger@techfak.uni-bielefeld.de moderne Prozessoren Jan Krüger jkrueger@techfak.uni-bielefeld.de Übersicht FachChinesisch SPARC - UltraSparc III/IV PowerPC - PowerPC 970(G5) X86 - Pentium4(Xeon), Itanium, (Pentium M) X86 - AthlonXP/MP,

Mehr

Vorlesung: Technische Informatik 3

Vorlesung: 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

Mehr

Rechnerorganisation. H.-D. Wuttke `

Rechnerorganisation. H.-D. Wuttke ` Rechnerorganisation Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau

Mehr

Rechnerarchitektur SS TU Dortmund

Rechnerarchitektur 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

Mehr

Grundlagen der Rechnerarchitektur. Speicher

Grundlagen 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

Mehr

Linux Paging, Caching und Swapping

Linux Paging, Caching und Swapping Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches

Mehr

Das Prinzip an einem alltäglichen Beispiel

Das 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

Mehr

JR - RA - SS02 Kap

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

Mehr

Ausführungszeitvorhersage. Dipl.-Inf. J. Richling M. Mergner Wintersemester 2003/2004

Ausführungszeitvorhersage. Dipl.-Inf. J. Richling M. Mergner Wintersemester 2003/2004 Ausführungszeitvorhersage Dipl.-Inf. J. Richling M. Mergner Wintersemester 2003/2004 Gliederung 1. Einleitung 2. Theoretische Vorbetrachtungen 3. Technische Grundlagen der Referenzarchitektur 4. Ein Beispielalgorithmus

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie

Mehr

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: 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

Mehr

Der von Neumann Computer

Der 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$

Mehr

1. Von-Neumann-Architektur (7/66 Punkte)

1. Von-Neumann-Architektur (7/66 Punkte) Fakultät Informatik/Mathematik Seite 1/8 Datum: 23.12.2010 Name: Vorname: Arbeitszeit: 60 Minuten Matr.-Nr.: Hilfsmittel: alle eigenen Unterschrift: wird vom Prüfer ausgefüllt 1 2 3 4 5 6 7 8 9 Diese hat

Mehr

Technische Informatik 1 - HS 2016

Technische 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

Mehr

In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher

In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher

Mehr

Memory Management Units in High-Performance Processors

Memory Management Units in High-Performance Processors Memory Management Units in High-Performance Processors Ausgewählte Themen in Hardwareentwurf und Optik Seminar Universität Mannheim LS Rechnerarchitektur - Prof. Dr. U. Brüning WS 2003/2004 Frank Lemke

Mehr

Just-In-Time-Compiler (2)

Just-In-Time-Compiler (2) Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Just-In-Time-Compiler (2) 1/13 2011-09-12 Just-In-Time-Compiler

Mehr

CPU II. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

CPU II. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU II Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU II 1/77 2012-02-29 CPU Bisher: Pipeline mit 5 sequentiellen Pipeline-Stufen

Mehr

Sprungvorhersagestrategien für Befehlspipelines

Sprungvorhersagestrategien für Befehlspipelines Fakultät Informatik, Institut für echnische Informatik, Professur VLSI-Entwurfssysteme, Diagnostik und Architektur Sprungvorhersagestrategien für Dresden, 09.07.2010 Was sind? Warum Sprungvorhersage? Folie

Mehr

Tutorium Rechnerorganisation

Tutorium 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

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 4 AM 21.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Kontrollpfad der hypothetischen CPU

Kontrollpfad 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

Mehr

Just-In-Time-Compiler (2)

Just-In-Time-Compiler (2) Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2015/2016 V. Sieh Just-In-Time-Compiler

Mehr

Arbeitsfolien - Teil 4 CISC und RISC

Arbeitsfolien - 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

Mehr

Grob-Struktur des Prozessor-Speichersystems

Grob-Struktur des Prozessor-Speichersystems 2.3.2 Speicherstruktur (1) Grob-Struktur des Prozessor-Speichersystems Chipsatz (Erklärung s. später, Folie 104) 22.4.-27.5.2013, Folie 52 2.3.2 Speicherstruktur (2) Zugriff Prozessor zumeist auf schnelle

Mehr

Beispielvortrag: HPCG auf Intel Haswell-EP

Beispielvortrag: HPCG auf Intel Haswell-EP Beispielvortrag: HPCG auf Intel Haswell-EP Johannes Hofmann 1 Seminarvortrag Architekturen von Multi- und Vielkern-Prozessoren Erlangen, 19.4.2016 1 Computer Architecture, University Erlangen-Nuremberg

Mehr

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Themen heute Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Besprechung des 9. Übungsblattes Aufgabe 2 Ist in einer Aufgabe wie hier keine explizite Wortbreite angegeben, nicht

Mehr

Rechnernetze und Organisation

Rechnernetze und Organisation Fetch-Execute 1 Übersicht Motivation Modulare Computer Bussyteme Fetch and Execute Einfaches Input/Output 2 Motivation Prinzipielle Funktionsweise einer CPU Minimalistischer Prozessor 3 Komponenten eines

Mehr

Kontrollpfad der hypothetischen CPU

Kontrollpfad 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

Mehr