CPU-Technik. Stand der Technik, Trends und Entwicklungen. Vortrag im Informatikseminar WS 2000/2001. (C) 2000 Heiko Panther
|
|
- Ina Bergmann
- vor 6 Jahren
- Abrufe
Transkript
1 CPU-Technik Stand der Technik, Trends und Entwicklungen Vortrag im Informatikseminar WS 2000/2001 (C) 2000 Heiko Panther
2 Inhalt 1. CISC und RISC 2. Vektorrecheneinheiten 3. VLIW 4. Weitere Techniken 5. Aktuelle Prozessordesigns und ihre Zukunft 6. Literatur & Links 2
3 1. CISC und RISC CISC CISC bedeutet Complex Instruction Set Computer. Das bedeutet, daß die Befehle eher komplexe Funktionalitäten besitzen, sie sind komfortabel und vergleichsweise intelligent. CISC-Architekturen gab es schon lange vor der Bezeichnung CISC. Sie wurden aus den ersten Mikroprozessoren weiterentwickelt. Beispiele: Motorola 68000, Intel x86. Das sind die Prozessoren für Personal Computer, die am längsten überlebt haben. Es gab und gibt natürlich noch eine Fülle weiterer Prozessoren, sowohl sehr komplexe für Großrechnereinsatz, als auch weniger komplexe, die noch heute in Steuercomputern Anwendung finden. CISC-Merkmale Keine besonderen Architekturprinzipien. Am Anfang machte man sich noch keine besonderen Gedanken um Designphilosophie für Mikroprozessoren, man war eher froh, überhaupt welche zu haben, und die ersten Entwicklungstendenzen gingen in die Richtung mehr Funktionen, mehr Komfort. Implementierung komfortabler Funktionen (move, loop) in Hardware oder Microcode. Dies ersparte die wiederholte Ausprogrammierung oft benötigter Programmelemente und sparte damit Codegröße. Unterschiedliche Opcode-Länge. Je nach Funktionalität benötigen Opcodes verschiedene Längen, ein Register-Inkrement z.b. weniger als ein Speicherzugriff, da beim Registerbefehl keine Speicheradresse angegeben werden muß. Beispiel beim x86: NOP-1 Byte, MOV-bis 6 Byte. Dadurch auch Ersparnis bei der Codegröße. 3
4 RISC RISC bedeutet Reduced Instruction Set Computer. RISC-Architekturen wurden Anfang der 80er Jahre zuerst an Universitäten entwickelt. Verschiedene Forscher vertraten die Ansicht, daß die zunehmende Komplexität der CISC-Prozessoren ein Hindernis für weitere Leistungssteigerung und für effizientes Design sein würde Beispiele: Sparc, PowerPC, Mips RISC-Merkmale Alle Opcodes sind gleich lang (typ.: 4 Byte). Aufbrechen komplizierter Befehle in elementare Befehle. So wurde der klassische move -Befehl in die zwei Befehle load / store aufgesplittet. Dies gab der Architektur den Beinamen load/store-architektur : Die einzigen Befehle, die auf den Hauptspeicher zugreifen, sind load und store! Alle anderen Befehle arbeiten nur mit den Registern. Bei CISC-Designs können viele Befehle entweder auf Speicher oder Register oder beides gleichzeitig zugreifen. Dieser Befehlssatz ist besser für Optimierungen geeignet. Es sind nicht mehr so viele Bedingungen zu beachten, und es läßt sich eine Logik z.b. zur Sprungvorhersage oder andere Effizienzsteigerungsmaßnahmen konzipieren. Durch das reduzierte Design werden weniger Transistoren gebraucht. Eine kleinere Chipfläche ist die Folge, das spart Strom. Oder man kann zusätzliche Funktionen integrieren: Mehr Register sind Standard bei RISC-Prozessoren. Sie erhöhen die Flexibilität und besonders die Performance, da der Prozessor mehr Werte zwischenspeichern kann. Es müssen nicht mehr so oft Werte verworfen oder in den Hauptspeicher gesichert werden. Superskalarität: Mehrere Recheneinheiten. Erstmals kam es bei RISC-Prozessoren auf, daß mehrere Recheneinheiten integriert wurden und durch eine eigene Scheduling-Einheit Befehle zugeteilt bekamen. Beispiel: 3 Integer- und 2 Floating- Point-Einheiten. 4
5 RISC: Pipelining Klassischer Prozessor: die sequentielle Abarbeitung von Befehlen ist zu langsam. Nur wenige Teile des Prozessors sind gleichzeitig in Benutzung. Pipelined Prozessor: Die verschiedenen Bearbeitungseinheiten können direkt nach Beabeitung eines Befehls einen neuen laden, während der Befehl in einer anderen Einheit weiterbearbeitet wird. Pipelining ermöglicht im Bestfall 1 Befehl pro Takt. Das trifft allerdings nur zu, wenn immer bekannt ist, welcher Befehl als nächstes ausgeführt werden soll. Bei bedingten Sprüngen kann sich das im Extremfall erst einen Befehl vorher etscheiden. Es wird zwar versucht, das Sprungziel vorherzusagen. Sollte das aber nicht gelingen, so tritt 5
6 ein sogenannter Pipeline-Stall ein. Ein Pipeline-Stall erfordert die Neufüllung der Pipeline. Das heißt, alle bis jetzt dekodierten und verarbeiteten Befehle müssen verworfen werden und bei Null angefangen werden. Je länger (tiefer) die Prozessor-Pipeline ist, desto höhere Latenzzeit bewirkt ein Pipeline-Stall. CISC/RISC Resumée CISC ist faktisch tot. Es werden keine CISC-Prozessoren mehr entwickelt. Allerdings finden CISC-Prozessoren weiterhin großflächig Einsatz im Industrie- und Steuerbereich. PC-Prozessoren arbeiten immer noch mit (emuliertem) CISC- Befehlssatz. Heutige RISC-Prozessoren folgen nicht mehr 100% dem radikalen Ansatz der Anfangszeit. Sie sind inzwischen äußerst kompliziert geworden. Sehr komplizierte Sprungvorhersage-, Caching- und Instruction-Scheduling-Einheiten rufen inzwischen ebenso Kritik über die zu hohe Komplexität hervor. Alternativen sind VLIW- Prozessoren, s.u. RISC-Prozessoren verlangen mehr Verantwortung vom Compiler. So ist es entscheidend für die Performance, daß Befehle in der richtigen Reihenfolge stehen. Es sollten Befehle für unterschiedliche Recheneiheiten (FPU, Integer) gemischt werden. Gut ist es auch, die Entscheidung für ein Sprungziel lange vor dem eigentlichen Sprung zu treffen. 6
7 2. Vektorrecheneinheiten Wurden entwickelt, um parallelisierbare gleichartige Berechnungen auszuführen.grundlage war die Beobachtung solcher Operationen z.b. bei Bildern. Sie werden normalerweise als zusätzliche Recheneinheit gebaut oder in die FPU integriert. Als zusätzliche Recheneinheit können sie in einer RISC-CPU vom dynamischen Instruction-Scheduling profitieren und bestenfalls vollständig parallel zu den anderen Eiheiten laufen. Vektorbefehle bearbeiten jeweils ein Register, welches mehrere Werte enthält. Beispiele: MMX (Intel), AltiVec (Motorola). MMX stellt eher eine halbherzige Minimallösung dar, während AltiVec ein sehr komplexes und funktionsreiches System mit einer Rechenleistung im Bereich von Digitalen Signalprozessoren (DSP) ist. Vektorberechnungen Ein Register wird zum Speichern mehrerer Werte verwendet, z.b. 128 Bit = 8 x 16 Bit Integer oder 4 x 32 Bit Float. Die Rechenoperation wirkt auf alle Werte gleichzeitig. Bei getrennter Vektoreinheit können FPU und Integereinheiten gleichzeitig andere Berechnungen vornehmen. Vektoroperationen Standardoperationen (Add, Sub, Mul, Div): Dies sind von Integer- und Fließkommaeinheiten bekannte Grundrechenarten. MultiplyAdd: Eine besonders in der Signalverarbeitung häufig angewendete Operation, bei der zwei Operanden multipliziert und ein dritter Operand addiert wird. Permutation (AltiVec vperm): Dieser Befehl erlaubt es, den Inhalt zweier Register byteweise beliebig in ein 3. Register zu permutieren. Ein 4. Register wird dabei als Maske benutzt: Bei den 32 Registern des AltiVec kein Problem. 7
8 3. VLIW VLIW bedeutet Very Long Instruction Word. Neue Architektur, basierend auf RISC-ähnlichem Befehlssatz. Ähnliche Ansätze gabe es aber auch schon früher bei Supercomputern. Beispiele: Transmeta Crusoe, Intel IA64 VLIW-Merkmale Mehrere RISC-Befehle werden in einem Wort (z.b. 128 Bit) zusammengefaßt. Dadurch ergibt sich ILP (Instruction Level Parallelism): Der Compiler kann parallel ausführbare Befehle in ein Instruction Word packen, so daß der Prozessor nicht selber die Entscheidung über die Parallelisierbarkeit (=Unabhängigkeit) der Befehle treffen muß. Bei nicht parallelisiertem Code Performanceverlust und Code-Bloat: Der Prozessor muß einen unangemessen großen, meist leeren Befehlsdatenstrom verarbeiten. Hohe Verantwortung des Compilers: Mehr und mehr Optimierungsaufgaben werden vom Prozessor an den Compiler abgeschoben. Der Prozessor kann einfacher konstruiert werden, der Compiler wird aufwändiger und teurer. Ein nicht sauber optimierender Compiler kann fatale Folgen für die Performance haben. Schlechte Skalierbarkeit: Wenn ein VLIW-Prozessor für die gleichzeitige Abarbeitung von z.b. 3 Befehlen ausgelegt ist (er also 3 Einheiten hat), wird es schwierig, ihn z.b. auf 6 parallele Einheiten zu erweitern. Der auf 3 Einheiten optimierte Code müßte midestens neu kompiliert werden. 8
9 4. Weitere Techniken TLP (Thread Level Parallelism): Hierbei wird die inhärente Parallelität der Threads in multithreaded-umgebungen ausgenutzt. Das erfordert softwareseitig keinen großen Aufwand, da alle wichtigen Betriebssysteme heute multithreaded arbeiten. Der Prozessor besitzt hierzu Möglichkeiten, schnell zwischen Threads umzuschalten (mehrere Registersätze, vgl. Alpha). Sollte die Ausführung eines Threads unterbrochen werden (durch Pipelinie-Stall, Blockieren etc), so wird einfach zum nächsten Thread umgeschaltet. Spekulative Ausführung: Eine spezielle Einheit versucht herauszufinden, welches das Ziel bei einem bedingten Sprung ist. Dann können die entsprechenden Befehle schon in den Cache geladen, geholt und dekodiert werden. Sollte die Spekulation falsch gewesen sein, muß natürlich alles verworfen werden. 9
10 5. Aktuelle Prozessordesigns und ihre Zukunft x86 Letzer Prozessor mit CISC-Instruction Set. Seit ca als RISC-Prozessor mit x86-emulationsschicht implementiert. In der alten Bauweise ließ sich nicht mehr genug Performance erreichen. Vektoreinheit MMX (geteilte FPU) bzw. MMX2 (8x128 Bit) bzw. 3DNow! Soll mittel- bis langfristig durch IA64 abgelöst werden. Sparc RISC-Design. Vektoreinheit VIS. MIPS Prozessorfamilie (32/64 Bit) in RISC-Design. Verwendung meist im Embedded- und ASIC (Application Specific IC)-Bereich. Hauptprozessor der Playstation 1. Vektoreinheit MIPS-3D (13 zusätzliche FPU-Befehle). Eher eine halbherzige Erweiterung, wie MMX. 10
11 HP-PA RISC-Architektur von Hewlett-Packard. Wird in aktuellen HP-Workstations und Servern verwendet. Für Großrechnereinsatz. Soll mittelfristig durch IA64 abgelöst werden. Ganz auf IA64 verlassen will sich Hewlett-Packard aber nicht, die HP-PA-Roadmap geht z.zt. bis PowerPC Prozessorfamilie (32/64 Bit) in RISC-Design. Varianten von Embedded über Desktop bis Großrechner. Motorola baut 32-Bit PowerPC mit Vektoreinheit (AltiVec, bei Apple Velocity Engine genannt). Die AltiVec-Einheit ist die zur Zeit fortschrittlichste Vektoreinheit mit 32x128 Bit- Registern und Permutationseinheit. Diese Einheit dient der Maximierung der Rechenleistung im Grafik, 3D- und Signalverarbeitungsbereich. PowerPC (IBM) IBM baut 64-Bit PowerPC für Großrechnereinsatz. Ziel: Maximierung des Datendurchsatzes. Für IBM ist die Performance im Serverbereich entscheidend. Server benötigen oft keine so hohe Rechenleistung, dafür einen enormen Datendurchsatz. Beim Power4-Prozessor arbeiten 2x64 Bit CPU s auf einem Chip (CMP). Der L2-Cache wird mit 100 GB/s, der L3-Cache mit 10 GB/s angebunden. Diese werden zu MCM (Multi Chip Module) mit 4x2 Power4 kombiniert. Die CMPs sind dabei untereinander mit 35 GB/s angebunden. 11
12 Alpha RISC-Design Vektoreinheit Der zukünftige Prozessor EV8 benutzt fortschrittliche Technik zur Parallelisierung: SMT (Simultaneous Multithreading) ist eine Kombination aus ILP und TLP. Dafür besitzt der Prozessor Infrastruktur für vier simultane Threads. Er hat vier PC (Program Counter) und vier Registersätze. Die Caches und TLBs (Translation Lookaside Buffers) werden von allen Threads gemeinsam genutzt. Dies kann zu Thrashing führen, wenn alle Threads oft blockieren und sich gegenseitig immer wieder die Caches und TLBs leeren. IA64 VLIW-Design: 3 Befehle pro Wort mit jeweils 41 Bit Länge, dazu 5 Flag-Bits. Integrierter x86-befehlsdekodierer. Diesen hat Intel eingebaut, um Kompatibilität mit x86-software zu wahren. Er wandelt einzelne x86-befehle in IA64-Instruction-Words um. Maßnahmen gegen Code-Bloat und für bessere Skalierbarkeit: Die Flag-Bits enthalten Informationen über die Parallelisierbarkeit folgender Instruktionen. Die primitive 10stufige Pipeline ist sehr anfällig für Cache-Misses. Transmeta VLIW-Design, auf Stromsparen ausgelegt Integrierter Code-Morpher: eine Software, die x86-microcode zur Laufzeit in eigene Befehle übersetzen kann. Der Code-Morpher benötigt RAM (typ. 16 MB), welches vom Hauptspeicher des Rechners abgezweigt wird. Der Code-Morpher verbessert den gemorphten Code; erst nach einigen Durchläufen ist er voll optimiert. Die Code-Morphing-Technologie ist prinzipiell auch für andere Microcodes einsetzbar. 12
13 6. Literatur & Links A. Stiller, Jonglier-Künstler; Techniken zur Parallelverarbeitung in Prozessoren, c t 12/2000 S. 220ff A. Stiller, Zu neuen Ufern; Transmeta enthüllt Crusoe-Design, c t 03/2000 S. 32ff MacKiDo, div. Artikel zur Prozessortechnik, Sparc, MIPS, HP-PA, PowerPC, Alpha, IA64, Transmeta, 13
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/
MehrSeminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1
\ Inhalt Seite 1 \ Inhalt SIMD Kurze Rekapitulation 3Dnow! (AMD) AltiVec (PowerPC) Quellen Seite 2 \ Wir erinnern uns: Nach Flynn s Taxonomie kann man jeden Computer In eine von vier Kategorien einteilen:
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
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
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
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
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. Einführung
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
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
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
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
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrCodesigned Virtual Machines
Codesigned Virtual Machines Seminar Virtualisierung Philipp Kirchhofer philipp.kirchhofer@student.kit.edu Institut für Technische Informatik Lehrstuhl für Rechnerarchitektur Universität Karlsruhe (TH)
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
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
MehrCISC ( 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
MehrInhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9
Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,
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)
MehrMikroprozessor als universeller digitaler Baustein
2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrVorstellung 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
MehrVorlesung Rechnerarchitektur. Einführung
Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher
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.
MehrJust-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
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
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrHYPER - 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
MehrUmsetzung in aktuellen Prozessoren
Kapitel 8: Umsetzung in aktuellen Prozessoren 4 Realisierung elementarer Funktionen Reihenentwicklung Konvergenzverfahren 5 Unkonventionelle Zahlensysteme redundante Zahlensysteme Restklassen-Zahlensysteme
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
MehrKapitel 11 RISC-Rechner
Kapitel 11 - RISC-Rechner Seite 219 Kapitel 11 RISC-Rechner (reduced instruction set computer, RISC) 11.1. Einleitung In den Achtzigerjahren änderten sich die Randbedingungen für Rechner: Hardware wurde
MehrJust-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
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)
MehrEchtzeit Videoverarbeitung
Hardwareplattformen für Echtzeit Videoverarbeitung Herbert Thoma Seite 1 Gliederung Echtzeitanforderungen Prozessorarchitekturen Grundlagen Pipelining Parallele Befehlsausführung Systemkomponenten Speicher
MehrGeräteentwurf mit Mikroprozessoren 1
Geräteentwurf mit Mikroprozessoren 1 Vorlesung am Institut für Elektronik der TU Graz Dipl.-Ing. Dr. Gerhard Stöckler SS 2003 Vorausgesetzte Kenntnisse: Grundlagen der Digitaltechnik Binäre Informationsdarstellung
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,
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
Mehrmoderne 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,
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
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
MehrTutorium Rechnerorganisation
Woche 7 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
Mehr3. Architekturen moderner Prozessoren 3.1 Einführung (1)
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
MehrWas ist Rechnerleistung
Was ist Rechnerleistung Leistung im engeren Sinne: Leistung gemessen in seltsamen Einheiten, bestimmt vorwiegend von der Zentraleinheit: MIPS (Millionen Instruktionen pro Sekunde) FLOPS (Floating Point
MehrEinführung in die Programmierung mit C++
Seite 1 Einführung in die Programmierung mit C Teil IV - Weiterführende Themen 16. SIMD Programmierung Was bedeutet SIMD Seite SIMD Single-Instruction, Multiple-Data, also eine Instruktion, mehrere Daten
MehrRechnerarchitektur WS 2003/2004. Klaus Waldschmidt. Teil 2. Begriffshierarchie der Rechnerarchitektur. Vorlesungsbegleitende Unterlagen
Rechnerarchitektur Vorlesungsbegleitende Unterlagen WS 2003/2004 Klaus Waldschmidt Teil 2 Begriffshierarchie der Rechnerarchitektur Seite 1 Systemarchitektur Hardwarearchitektur (Rechnerarchitektur) Softwarearchitektur
MehrAufbau und Funktionsweise eines Computers
Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Hardware Prozessor (CPU)
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
MehrVertiefungsrichtung Rechnerarchitektur
srichtung () ( für ) Prof. Dietmar Fey Ziele der srichtung RA Vertiefen des Verständnis vom Aufbau, Funktionsweise von Rechnern und Prozessoren Modellierung und Entwurf von Rechnern und Prozessoren ()
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
Mehr2. Der ParaNut-Prozessor "Parallel and more than just another CPU core"
2. Der ParaNut-Prozessor "Parallel and more than just another CPU core" Neuer, konfigurierbarer Prozessor Parallelität auf Daten- (SIMD) und Thread-Ebene Hohe Skalierbarkeit mit einer Architektur neues
Mehr2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise
Teil 1 Kapitel 2 Rechner im Überblick 2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise Frank Schmiedle Technische Informatik I 2.1 Rechnersichten Modellierung eines Rechners Zusammenspiel
MehrTeil Rechnerarchitekturen. Repetitorium. Corinna Schmitt
Teil Rechnerarchitekturen Repetitorium Corinna Schmitt corinna.schmitt@unibas.ch Vorlesungsinhalt Rechnerarchitekturen M01: Architektur, ALU, Flip-Flop M02: Einführung in die Sprache C M03: 2er-Komplement,
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
MehrRechnernetze 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
MehrRechnergrundlagen SS 2007. 11. Vorlesung
Rechnergrundlagen SS 2007 11. Vorlesung Inhalt Evaluation der Lehre (Auswertung) Synchroner/asynchroner Systembus Kontrollfluss/Datenfluss RISC vs. CISC Speicherhierarchie Cache Lesen Schreiben Überschreiben
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:
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
MehrArchitektur und Organisation von Rechnersystemen
Architektur und Organisation von Thema heute: More need for more Speed, Weitere Architekturmerkmale, Zahlendarstellungen, Makroassembler BKH-ArcOrg16-V3 am 01.12.2016 Ulrich Schaarschmidt BK-H/HS Düsseldorf,
MehrGrundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128
Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes
MehrHigh Performance Embedded Processors
High Performance Embedded Processors Matthias Schwarz Hardware-Software-Co-Design Universität Erlangen-Nürnberg martin.rustler@e-technik.stud.uni-erlangen.de matthias.schwarz@e-technik.stud.uni-erlangen.de
MehrPhilipp Grasl PROZESSOREN
1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION
Mehrz/architektur von IBM
von IBM Grundzüge einer modernen Architektur Von Matthias Fäth Gliederung Geschichtlicher Überblick Neuestes Flaggschiff Namensgebung Überblick Warum 64-Bit große Register Kompatibilität zu älteren Systemen
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:
MehrMikroController und Mikroprozessoren
Uwe Brinkschulte Theo Ungerer MikroController und Mikroprozessoren Mit 205 Abbildungen und 39 Tabellen Springer Inhaltsverzeichnis 1 Grundlagen 1 1.1 Mikroprozessoren, MikroController, Signalprozessoren
MehrTutorium 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
Mehr1. 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
MehrRechnerstrukturen 1: Der Sehr Einfache Computer
Inhaltsverzeichnis 1: Der Sehr Einfache Computer 1 Komponenten.................................... 1 Arbeitsweise..................................... 1 Instruktionen....................................
MehrVorlesung "Struktur von Mikrorechnern" (SMR)
Prozessorhistorie: Pentium Der erste Pentium-Prozessor wurde 99 von Intel vorgestellt. Er besitzt: - 64 Bit breites Bus-Interface - zweigeteilter Primär-Cache mit je 8 KB für Code und Daten - Bezeichnung
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:
MehrBeispielvortrag: 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
MehrMikrocontroller und Mikroprozessoren
Uwe Brinkschulte Theo Ungerer Mikrocontroller und Mikroprozessoren 3. Auflage 4y Springer Inhaltsverzeichnis Vorwort Vorwort zur 2. Auflage Vorwort zur 3. Auflage Inhaltsverzeichnis VII IX XI XIII 1 Grundlagen
MehrRISC: Reduced Instruction Set Computer. Technische Informatik I Wintersemester 12/13 1. J. Kaiser, IVS-EOS
RISC: Reduced Instruction Set Computer 1 The CMOS Generations: Speedup through Miniaturization 10-fache Leistungssteigerung 2 Was ist ein Reduced Instruction Set Computer (RISC*)? * Der Begriff RISC wurde
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...
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
MehrSymbian OS. OS für kleine Endgeräte: Sven Walter
OS für kleine Endgeräte: Sven Walter 19.07.2004 1 1. Einleitung Symbian ist ein Software Unternehmen, das ein offenes Betriebssystem für datenfähige Mobiltelefone entwickelt. Es wurde im Juni 1998 von
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
MehrIntel 80x86 symmetrische Multiprozessorsysteme. Eine Präsentation im Rahmen des Seminars Parallele Rechnerarchitekturen von Bernhard Witte
Intel 80x86 symmetrische Multiprozessorsysteme Eine Präsentation im Rahmen des Seminars Parallele Rechnerarchitekturen von Bernhard Witte Gliederung I. Parallel Computing Einführung II.SMP Grundlagen III.Speicherzugriff
MehrSuperoptimierer. Manuel Odendahl
Superoptimierer Manuel Odendahl 2. Juni 2003 Inhaltsverzeichnis 1 Einführung 1 2 Beispiel: Berechnen des Vorzeichens einer Integer Zahl 2 3 Implementierung 3 3.1 Befehlsdefinition.........................
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
MehrComputergrundlagen 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
Mehr2.4 VLIW und EPIC-Prozessoren
12 2.4 VLIW und EPIC-Prozessoren Peter Marwedel Informatik 12 TU Dortmund 2013/04/18 Gründe für die Einführung von Parallelität (1) Steigerung der Rechenleistung stößt an Komplexitätsschranken: Zunehmend
MehrRechneraufbau und Rechnerstrukturen
Rechneraufbau und Rechnerstrukturen von Prof. Dr. em. Walter Oberschelp, RWTH Aachen und Prof. Dr. Gottfried Vossen, Universität Münster 9. Auflage Oldenbourg Verlag München Wien Inhaltsverzeichnis Vorwort
MehrParallele Programmiermodelle
Parallele Programmiermodelle ProSeminar: Parallele Programmierung Semester: WS 2012/2013 Dozentin: Margarita Esponda Einleitung - Kurzer Rückblick Flynn'sche Klassifikationsschemata Unterteilung nach Speicherorganissation
MehrSchreiben 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
MehrB Einführung. 1 Historische Entwicklung. 1 Historische Entwicklung (3) 1 Historische Entwicklung (2)
1 Historische Entwicklung 8500 v. Chr.: Zählsysteme in vielen Kulturen benutzt häufig 5 oder 10 als Basis 1. historische Entwicklung 2. Entwicklung der Mikroprozessoren 3. Entwicklung der Betriebssysteme
MehrWie 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
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
MehrComputergrundlagen 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
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
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur ARM, x86 und ISA Prinzipien Übersicht Rudimente des ARM Assemblers Rudimente des Intel Assemblers ISA Prinzipien Grundlagen der Rechnerarchitektur Assembler 2 Rudimente
Mehr11.0 Rechnerarchitekturen
11.0 Rechnerarchitekturen Die Ziele dieses Kapitels sind: Kennen lernen der Rechnerklassifikation nach Flynn Betrachtung von Prozessorarchitekturen auf verschiedenen Abstraktionsebenen - Befehlsarchitektur
MehrFAKULTÄT FÜR INFORMATIK
FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN Lehrstuhl für Rechnertechnik und Rechnerorganisation Prof. Dr. Arndt Bode Einführung in die Rechnerarchitektur Wintersemester 2016/2017 Tutorübung
Mehr3. Grundlagen der Rechnerarchitektur
3. Grundlagen der Rechnerarchitektur 3.1 Architektur des von-neumann-rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und Adressierungstechniken 3.4 Beispiel: der Prozessor
MehrKode-Erzeugung für Registersatz-Maschinen
Kode-Erzeugung für Registersatz-Maschinen Die meisten Maschinen sind heutzutage Registersatzmaschinen, die einen Satz von 16-32 Universalregistern besitzen. Üblich sind Dreiadress-Befehle OP DEST, SRC1,
MehrTechnik. Technisches zur Hardware. Technisches zum Betriebssystem Mac OS X. Der Systemstart. 24 Anatomie. 40 Psychologie. 70 Willkommen!
Technik 24 Anatomie Technisches zur Hardware 40 Psychologie Technisches zum Betriebssystem Mac OS X Prozessoren 70 Willkommen! Der Systemstart Anatomie Technisches zur Hardware 3 33 Chipsatz Zum Betrieb
Mehr