RISC: Reduced Instruction Set Computer. Technische Informatik I Wintersemester 14/15 1. J. Kaiser, IVS-EOS
|
|
- Marta Ulrike Kappel
- vor 6 Jahren
- Abrufe
Transkript
1 RISC: Reduced Instruction Set Computer 1
2 The CMOS Generations: Speedup through Miniaturization 10-fache Leistungssteigerung 2
3 Was ist ein Reduced Instruction Set Computer (RISC*)? * Der Begriff RISC wurde von Carlo Sequin (UCB) geprägt) Motivationen für die RISC-Entwicklung: Single-Cycle Instruktionen Begrenzte Chipfläche Überlappende Ausführung mit einfacher Kontrolle 1. Single Cycle Instruktionen à Piplining 2. Einfache Instruktionen à HLL orientiert RISC stellt tatsächlich eine Entwurfs-Philosophie dar, in der das Ziel höchste Leistung ist, die im Zusammenspiel von Hardware und einem optimierenden Compiler erreicht wird. Im RISC-Ansatz wird in der der Instruktionssatz in Hinblick auf Einfachheit und Regularität entworfen, so daß die Verwendung der Instruktionen durch den Compiler einfach und überschaubar ist. 3
4 Was ist ein Reduced Instruction Set Computer (RISC)? Anfänge der RISC - Technologie: 1979 IBM 801 Minicomputer G.Mar Radin IBM RT PC, POWER, Power PC G. Mar Radin: The 801 Minicomputer Proceedings of the International Symp. on Architectural Support for Programming Languages and Operating Systems, Palo Alto, CA, Berkeley RISC Carlo Sequin, David A. Patterson SPARC D. A. Patterson: Reduced Instruction Set Computers Communications of the ACM, 28(1), Stanford RISC John Hennessy John Hennessy: VLSI Processor Architecture IEEE Transactions on Computers, C-33(11), 1984 MIPS 4
5 Meilensteine der RISC Entwicklung : IBM 801 Architektur : Berkeley RISC Prozessordesign (Patterson et al.) : Stanford MIPS Prozessordesign (Hennessy et al.) : Acorn RISC (später ARM = Advanced RISC Machines) : Motorola 88x : Intel i : IBM RS/ : DEC Alpha (erstes 64 Bit Design) : Motorola/IBM/Apple PowerPC - RISC-Prozessoren weichen vom reinen RISC-Konzept ab - höhere Anzahl von Befehlen, z.b. 184 bei PowerPC - RISC-CISC-Unterscheidung durch Entwurfsprinzipien gegeben 5
6 Was ist ein Reduced Instruction Set Computer (RISC)? D. Tabak: RISC-Architecture, John Wiley & Sons, 1987 Anzahl der Instruktionen 50 Anzahl der Adr. Modi 4 Anzahl der Befehlsformate 4 LOAD/STORE Architektur Anzahl der Register 32 Single Cycle Instruktionen Festverdrahtete Maschinenbefehle HLL / Optimierende Compiler Restriktionen Programmiermodell Reg.-Reg. Architektur Implementierungs- Randbedingungen Programmierung/ Progr. Umgebung D. Tabak: min. 5 der Bedingungen müssen erfüllt sein 6
7 Was ist ein RISC? Realisierung der Instruktionen micro + nano programmiert microprogrammiert variabel Länge der Instruktionen festverdrahtet 8 fest ¼ ½ 1 #Stufen der Pipeline prediction 5 delayed 7 standard #Adressierungsmodi #Maschinenbefehle #allgemeine Register 2 3 CPI Branch- Methode 7
8 Was ist ein Reduced Instruction Set Computer (RISC)? Zentrale Problemstellung: Wie kann man eine Architektur entwerfen, die als Ziel hat, Instruktionen in einem Maschinenzyklus auszuführen. Register/Register Befehle Festverdrahtete Maschinenbefehle viele General-Purpose Register LOAD/STORE Architektur weniger Befehle einfachere Befehle einfachere Adressierungsmodi Eine wesentliche Voraussetzung für Single Cycle Befehlsausführung ist Pipelining 8
9 Was ist ein Reduced Instruction Set Computer (RISC)? Lösungsansätze zur Verringerung der Speicherzugriffe CISC RISC Reduktion der Speichergröße kompakter Code Reduktion der Speicherzugriffe möglichst viel on-chip komplexe Instruktionen, komplexe Adressierungsarten Registersätze, Caches* 9 * insbesondere lösen Registersätze nicht das Problem, daß eine komplexe Instruktion durch eine Folge von einfacheren Instruktionen ersetzt werden muß, d.h. in der Befehlsholphase mehr Speicherzugriffe notwendig sind. Dieses Problem wird durch ein Instruktions- Cache gelöst.
10 Was ist ein Reduced Instruction Set Computer (RISC)? Folge der Realisierung einfacher Instruktionen: Cons: Anzahl der Instruktionen wächst Mehr Speicherplatz für Programme Größere Speicherbandbreite für den (Befehls-) Speicher Pros: Einfachheit Höhere Taktraten Ausnutzung von Pipelinetechniken eher möglich Speicherbandbreite kann durch entsprechende Cachingtechniken erfolgreich erhöht werden. Höhere Speicherbandbreite ist nur für die Befehle notwendig. Da der Befehlsstrom im wesentlichen sequentiell ist (Lokalität) lassen sich Cachingtechniken besonders erfolgreich einsetzen. 10
11 Was ist ein Reduced Instruction Set Computer (RISC)? Folge der Realisierung einfacher Instruktionen: Vergleich der Speichernutzung (Memory Traffic) bei einem CISC und einem RISC relative Anzahl der Zugriffe CISC: DEC-VAX 3 RISC: SPARC 2,7 2,4 2 1,8 1, ,6 Instruktionen Daten Gesamt Alle Zugriffe sind auf die Anzahl der Zugriffe in der Befehlsholphase der VAX normiert 11
12 Quantitative Eigenschaften zur Bewertung Maße für Ausführungszeiten in einem Rechner: CPU Time T = Z ZZ T: CPU - Zeit, Ausführungszeit für ein Programm Z: Gesamtzahl der Taktzyklen in einem Programm ZZ: Zykluszeit (Dauer eines Taktzyklus) Clock Cycles / Instruction CPI = Z / N CPI: Zyklen pro Instruktion N: Anzahl der Befehle in einem Programm T = N ZZ CPI CISC Ansätze versuchen die Gesamtzahl der Instruktionen (IC) zu verringern! RISC Ansätze versuchen die Zyklen/Instruktion (CPI) zu verringern! 12
13 T = N ZZ CPI 13
14 Was ist ein Reduced Instruction Set Computer (RISC)? Folge der Realisierung einfacher Instruktionen: Vergleich (25 Mhz) und einer frühen Version des SPARC (16Mhz) SPARC Kommentar IC (Anz.d.Instr.) 1.0 1,25 25% mehr Instruktionen TD (Taktdauer) 40 ns 60 ns 50% längerer Takt CPI 5,0-7,0 1,3-1,7!! CT (CPU-Zeit)?? T = IC ZZ CPI 14
15 Was ist ein Reduced Instruction Set Computer (RISC)? Folge der Realisierung einfacher Instruktionen: Vergleich (25 Mhz) und einer frühen Version des SPARC (16Mhz) SPARC Kommentar IC (Anz.d.Instr.) % mehr Instruktionen ZZ (Zykluszeit) 40 ns 60 ns 50% längerer Takt CPI 5,0-7,0 1,3-1,7!! # T (CPU-Zeit) 240 µs 112,5µs doppelt so schnell! T = IC ZZ CPI T = ,04 6 = 240 µs" " T SPARC = ,06 1,5 = 112,5 µs 15
16 Leistungsbewertung und Vergleich# Relation zwischen den wesentlichen Faktoren zur Leistungsbewertung# #Sekunden # Instruktionen# Taktzyklen# Sekunden# T = # # = # #Programm # Programm # Instruktion# Taktzyklus# Ausführung# gemessene Ausführungszeit# #Sekunden # # # # # T = # # = N CPI ZZ# # Programm # # # # Ausführung# 16
17 Beispiel 1: Maschine A : Zykluszeit= 10 ns, CPI = 2 Maschine B : Zykluszeit= 15 ns, CPI = 1,5 Beide Maschinen realisieren denselben Instruktionssatz, brauchen also dieselbe Anzahl von Instruktionen, um ein Programm auszuführen. Welche Maschine ist schneller? Z A = N CPI A = N 2 Z B = N CPI B = N 1,5 T A = Z A ZZ A = 2N 10 ns = 20 N ns T B = Z B ZZ B = 1,5 N 15 ns = 22,5 N ns T B / T A = 22,5 N ns / 20 N ns = 1,125 à A ist 12,5% schneller! 17
18 Beispiel für einen RISC: Die MIPS Architektur Einfacher RISC-Kern - Komplexere Operationen werden durch Coprozessoren ausgeführt, z.b. Fließkomma Instruktionen, Systemverwaltung. schnelle CPU für Integer-Befehle Funktionseinheiten/Coprozessoren CPU RISC-Kern CP Graphik-Einheit Fließkomma-Einheit System / Speicherverwaltung Die RISC-Technologie erfordert funktionale Dekomposition 18
19 MIPS Architektur CP 0 Kontrollsignale Master Pipeline / Bus-Kontrolle CPU Ausnahmebeh. Kontrollreg. Speicherverwaltungseinheit Translation- Lookaside Buffer Lokale Kontrolle Register ALU Shifter Multiplikations/ Divisions-Einheit Adreßber. Einheit PC Incr. / Mux. Adressen Daten (32) 19
20 31 31 MIPS Programmiermodell 0 Allgemeine Register 1 0 Hi Lo Mult./ Div. Register PC 20 Programmzähler à 32 allgemeine Register à Register 0 enthält immer den Wert 0 à Register 1 ist für den Assembler reserviert für Pseudoinstruktionen und große Konstanten à Register Hi und Lo werden für Multiplikation und Division genutzt à Register 31 dient zur Speicherung der Returnadresse bei Unterprogrammaufrufen (JAL) à lineares, unsegmentiertes Speichermodell mit Bit Worten
21 Befehlsformate Typ R 6 Bit 5 Bit 5 Bit 5 Bit 5 Bit 6 Bit op rs rt rd shamt func Registerbefehle Typ J op target Sprungbefehle Typ I op rs rt immediate Misc. op 6-Bit Operationscode rs 5-Bit Selektor für das Quellregister rt 5-Bit Selektor für das Quellregister (Typ R), Zielregister oder Sprungbedingung (bei Typ I) rd 5-Bit Selektor für das Zielregister shamt 5-Bit Shift Amount für Shift von 1 31 immediate 16-Bit immediate-wert oder ein Sprungversatz oder ein Adressversatz funct 6-Bit Feld zur Funktionserweiterung target 26-Bit Zieladresse für Sprünge (wird um 2 Bit nach links verschoben(wort Adresse) und mit den 4 höchstwerigen Bits des PCs konkateniert). 21
22 MIPS Adressierungsarten Register Direct alle arithm./log. Ops 1 6 OPCOCE rs rt rd shamt func Register Indizierte Adr. ( Base Addressing) OPCOCE rs rt Versatz Register + EA Immediate OPCOCE rs rt Immediate Operand PC-relativ OPCOCE rs rt Versatz Programmzähler 22 + EA
23 Befehlsgruppe Instruktion Beispiel Bedeutung Kommentar Der MIPS- Befehlssatz Patterson, Hennessey, 1994 I-Typ R-Typ J-Typ 23
24 Vollständiger MIPS Maschinenbefehlssatz (R2000) Der MIPS- Befehlssatz Mnemo Typ Formatbeispiel Asm. beispiel 24
25 Vollständiger MIPS Maschinenbefehlssatz (R2000) Der MIPS- Befehlssatz Mnemo Typ Formatbeispiel Asm. beispiel 25
26 Der MIPS- Befehlssatz: Bedingte Sprungbefehle Der Befehlssatz hat nur zwei bedingte Sprünge, die Operanden direkt vergleichen: - Branch on equal - Branch on not equal Typ I op rs rt branch offset direkter Vergleich auf "=" oder " " Einziger Vergleichsbefehl ist slt: set on less than Typ R 6 Bit 5 Bit 5 Bit 5 Bit 5 Bit 6 Bit op rs rt rd slt: if rs < rt then rd ß 1 else rd ß 0 26
27 Der MIPS- Befehlssatz: Bedingte Sprungbefehle für komplexere Bedingungen Beispiel: branch on a>b Da "branch on a>b " nicht direkt ausgeführt werden kann, muß man in 2 Schritten vorgehen: 1. Vergleiche und setze Bedingung (da nur a<b geprüft werden kann, vertausche a und b). 2. Werte Bedingung für den Sprung aus. slt $1, $b, $a Vergleiche $b< $a und setze $1 auf 1 wenn Bedingung zutrifft (d.h. b<a) bne $1, $0, <offset> Wenn $1 $0 (das immer 0 ist!) gilt, führe Sprung aus. 27
28 Die MIPS Assemblernotation (ohne Fließkommabefehle) Der MIPS- Assembler Befehlssatz Assembler enthält mehr Befehle als der Maschinenbefehlssatz. Komplexere Befehle, z.b. Sprungbefehle werden durch mehrere Maschinenbefehle emuliert. Gerry Kane: mips RISC Architecture, Prentice Hall, Englewood Cliffs,
29 Der MIPS- Befehlssatz Die MIPS ALU erzeugt keine Condition Codes, d.h. der Status einer ALU-Operation wird nicht gepeichert. Man kann z.b. nach einer Addition nicht feststellen, ob ein Carry aufgetreten ist, oder ob ein negatives oder positives Ergebnis vorliegt. Erkennung eines Carry: Dazu führt man folgende Codesequenz aus: addu $temp, $a, $b /* addiere (unsigned) $a + $b, Ergebnis nach $temp sltu $carry, $temp, $b /* wenn temp nach einer Addition kleiner ist als b /* ist ein carry aufgetreten Beachten: die Assemblernotation hat die Registerreihenfolge: rd, rs,rt! 29
30 Zusammenfassung MIPS: - Trennung von RISC-Core und Spezial-Coprozessoren - Einfache, orthogonale Architektur - großer Registersatz, wenige Spezialregister - 1 Befehlslänge, 3 Befehlsformate - wenige Adressierungsarten - Hauptadressierungsart für Speicherzugriffe: indiziert - alle arithmetischen Operationen Reg-Reg - explizites Laden und Speichern von Operanden aus dem Hauptspeicher (Load/Store-Architektur) - Sehr einfache Architektur erfordert die Realsierung vieler "Standard "-Funktionen durch Software, d.h. anheben dieser Funktionen von der MP-Ebene auf SW-Ebene. 30
RISC: 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
MehrRISC - Architekturen. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach
RISC - Architekturen Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht CISC - RISC Hintergrund Merkmale von RISC-Architekturen Beispielarchitektur SPARC Zusammenfassung 2 1 CISC - RISC
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
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. MIPS Assembler
Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32
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
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
MehrHochschule Düsseldorf University of Applied Sciences HSD RISC &CISC
HSD RISC &CISC CISC - Complex Instruction Set Computer - Annahme: größerer Befehlssatz und komplexere Befehlen höhere Leistungsfähigkeit - Möglichst wenige Zeilen verwendet, um Aufgaben auszuführen - Großer
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
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
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.
MehrARM: Befehlssatz (Forts.)
ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)
MehrARM: Befehlssatz (Forts.)
ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)
MehrN Bit Binärzahlen. Stelle: Binär-Digit:
N Bit Binärzahlen N Bit Binärzahlen, Beispiel 16 Bit: Stelle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binär-Digit: 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 Least Significant Bit (LSB) und Most Significant Bit (MSB)
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
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...
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.
Mehr1 Einleitung zum RISC Prozessor
1 Einleitung zum RISC Prozessor Wesentliche Entwicklungsschritte der Computer-Architekturen [2, 3]: Familienkonzept von IBM mit System/360 (1964) und DEC mit PDP-8 (1965) eingeführt: Gleiche Hardware-Architekturen
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
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
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/
MehrDarstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21
Darstellung von Instruktionen Grundlagen der Rechnerarchitektur Assembler 21 Übersetzung aus Assembler in Maschinensprache Assembler Instruktion add $t0, $s1, $s2 0 17 18 8 0 32 6 Bit Opcode Maschinen
MehrAllgemeine Lösung mittels Hazard Detection Unit
Allgemeine Lösung mittels Hazard Detection Unit Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 83
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
Mehr3.1 Architektur des von-neumann-rechners. 3. Grundlagen der Rechnerarchitektur
3. Grundlagen der Rechnerarchitektur 3.1 Architektur des von-neumann-rechners 3.1 Architektur des von - Neumann - Rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und
MehrAssembler Programmierung Motivation. Informatik II SS 2004 Teil 4: Assembler Programmierung. Assembler vs. Maschinensprache
Assembler Programmierung Motivation Informatik II SS 2004 Teil 4: Assembler Programmierung Was ist ein Programm? Eine Reihe von Befehlen, die der Ausführung einer Aufgabe dient Dazu wird das Programm sequentiell
MehrDie ARM-Mikroarchitektur. Acorn RISC Machine ARM. Asm Prak SS03 p.1/13
Die -Mikroarchitektur Acorn RISC Machine Asm Prak SS03 p.1/13 Die -Mikroarchitektur Acorn RISC Machine Advanced RISC Machine Asm Prak SS03 p.1/13 Designziele Kostengünstig Asm Prak SS03 p.2/13 Designziele
MehrBeispiel: A[300] = h + A[300]
Beispiel: A[300] = h + A[300] $t1 sei Basisadresse von A und h in $s2 gespeichert. Assembler Code? Maschinen Code (der Einfachheit halber mit Dezimalzahlen)? op rs rt rd adr/shamt funct Instruktion 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:
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
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:
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:
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
MehrDatenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren
Datenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren der beiden Registerwerte $t1 und $t2 in einem Zielregister
MehrTechnische Informatik 1
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
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
MehrDigitaltechnik und Rechnerstrukturen Lothar Thiele Institut für Technische Informatik und Kommunikationsnetze ETH Zürich 1.
Materialien Digitaltechnik und Rechnerstrukturen Lothar Thiele Institut für Technische Informatik und Kommunikationsnetze ETH Zürich 1. Einleitung 1 Digitaltechnik und Rechnerstrukturen Vorlesungs- und
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
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
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
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
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
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:
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrNotwendigkeit für andere Instruktionsformate
Notwendigkeit für andere Instruktionsformate add $t0, $s1, $s2 op rs rt rd shamt funct 6 Bit 5 Bit 5 Bit 5 Bit 5 Bit 6 Bit R Typ? lw $t0, 32($s3) I Typ Opcode 6 Bit Source 5 Bit Dest 5 Bit Konstante oder
MehrKlausur Mikroprozessortechnik 29. März 2010
Klausur Mikroprozessortechnik 29. März 2010 Name:... Vorname:... Matr.-Nr:... Studiengang:... Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen
MehrWeitere Arithmetik. Grundlagen der Rechnerarchitektur Assembler 33
Weitere Arithmetik Grundlagen der Rechnerarchitektur Assembler 33 Die speziellen Register lo und hi Erinnerung: ganzzahliges Produkt von zwei n Bit Zahlen benötigt bis zu 2n Bits Eine MIPS Instruktion
MehrTechnische Informatik 2
W. Schiffmann R. Schmitz Technische Informatik 2 Grundlagen der Computertechnik 3., überarbeitete Auflage mit 146 Abbildungen Ä} Springer Inhaltsverzeichnis 1. Komplexe Schaltwerke 1 1.1 Aufbau eines Schaltwerks
MehrSystem-Architektur und -Software
System-Architektur und -Software Sommersemester 2001 Lutz Richter Institut für Informatik Universität Zürich Obligatorische Veranstaltung des Kerngebietes System-Architektur und -Software Voraussetzungen
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
MehrRechnerarchitektur. Marián Vajteršic und Helmut A. Mayer
Rechnerarchitektur Marián Vajteršic und Helmut A. Mayer Fachbereich Computerwissenschaften Universität Salzburg marian@cosy.sbg.ac.at und helmut@cosy.sbg.ac.at Tel.: 8044-6344 und 8044-6315 30. Mai 2017
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
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
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,
MehrQuantitative Prinzipien im Hardwareentwurf. 1. Small is fast
Quantitative Prinzipien im Hardwareentwurf 1. Small is fast Kleine Hardwareeinheiten schalten in der Regel schneller als größere. Kleine Transistoren bilden an ihren Gates kleinere Kapazitäten die Source-Drain
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
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)
MehrGeneration 5: Invisible Computers (ab 1993)
Generation 5: Invisible Computers (ab 1993) Jahr Name Gebaut von Kommentar 1993 PIC Microchip Technology Erster Mikrocontroller auf Basis von EEPROMs. Diese erlauben das Flashen ohne zusätzliche. Bemerkung:
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
Mehr3. Grundlagen der Rechnerarchitektur. Praktische Informatik 2. Wolfgang Effelsberg
3.1 Architektur des von-neumann-rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und Adressierungstechniken 3.4 Beispiele: Die Prozessoren Texas Instruments MSP 430
MehrWichtige Rechnerarchitekturen
Wichtige Rechnerarchitekturen Teil 4 PDP-11, VAX-11 TM 1 Einführung 1970 von DEC (Digital Equipment Corporation, Maynard Mass.), Produktion bis in die neunziger Jahre, heute noch etliche Maschinen in Gebrauch
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Speedup: Grundlagen der Performanz Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 30. April 2015 Eine Aufgabe aus der Praxis Gegeben ein
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
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 20.03.09 4-1 Heutige große Übung Ankündigung
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
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
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
MehrRechnerstrukturen. 7. Assembler. Inhalt. Vorlesung Rechnerstrukturen. Assemblerprogrammierung SML-CPU. SML-Assembler. Binden
Rechnerstrukturen 7. Assembler Assemblerprogrammierung SML-CPU Inhalt SML-Assembler Adressierungsarten Instruktionssatz Assembler-Direktiven Binden 7.2 1 Maschinensprache Instruktion = Bitkombination Für
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.).
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
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining Implementierung
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
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..
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.
MehrZusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von ( ) 10 ins Dualsystem
Zusammenfassung: Grundlagen der Informatik - Seite von 6 Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von (69.59375) 0 ins Dualsystem
MehrTechnische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018
Technische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018 Aufgabe 1: Taktrate / Latenz Einzeltakt-Architektur Pipelining-Architektur Pipelining-Architektur 15 15 120 ps 15
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrAllgemeines / Historie Instruction Set
PS Mikroprozessoren, Vortrag vom 16.05.2001 ARM: Advanced RISC Machine Vortragende: Rene Werner, Tobias Kaempf kommentierte Folien 1 Teil 1 Allgemeines / Historie Instruction Set Literatur: ARM system
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen 2.5 Unterbrechungen
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
MehrMotorola 680x0: function codes
Motorola 680x0: function codes CPU unterscheidet mittels function codes fünf Adressräume: CPU-Adreßraum wird für E/A, Interrupts und Koprozessoren eingesetzt Realisierung z.b. durch Speicherverwaltungseinheit
MehrMotorola 680x0: function codes
Motorola 680x0: function codes CPU unterscheidet mittels function codes fünf Adressräume: CPU-Adreßraum wird für E/A, Interrupts und Koprozessoren eingesetzt Realisierung z.b. durch Speicherverwaltungseinheit
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
MehrKapitel 2. Pipeline-Verarbeitung. Technologie- Entwicklung. Strukturelle Maßnahmen. Leistungssteigerung in Rechnersystemen
Technologie- Entwicklung Kapitel 2 Pipeline-Verarbeitung SSI: Small Scale Integration MSI: Medium Scale Integration LSI: Large Scale Integration VLSI: Very Large Scale Integration ULSI: Ultra Large Scale
MehrRechnerorganisation. (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
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
Mehrx Inhaltsverzeichnis 2. von NEUMANN-Rechner Grundkonzept Interne und externe Busse Prozessorregister Stackpointer
Inhaltsverzeichnis 1. Komplexe Schaltwerke 1 1.1 Zeitverhalten von Schaltwerken 2 1.1.1 Wirk- und Kippintervalle 3 1.1.2 Rückkopplungsbedingungen 6 1.2 Entwurf von Schaltwerken 9 1.3 Kooperierende Schaltwerke
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:
MehrRechneraufbau und Rechnerstrukturen
Rechneraufbau und Rechnerstrukturen von Prof. Dr. Walter Oberschelp, RWTH Aachen und Prof. Dr. Gottfried Vossen, Universität Münster 7, vollständig überarbeitete und aktualisierte Auflage R.Oldenbourg
Mehr32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78
32 Bit Konstanten und Adressierung Grundlagen der Rechnerarchitektur Assembler 78 Immediate kann nur 16 Bit lang sein Erinnerung: Laden einer Konstante in ein Register addi $t0, $zero, 200 Als Maschinen
MehrProzessorarchitektur. 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
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
Mehr