Grundlagen der Informationsverarbeitung:
|
|
- Christian Dieter
- vor 6 Jahren
- Abrufe
Transkript
1 Grundlagen der Informationsverarbeitung: Befehlsverarbeitung in einem Prozessor Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Instruktionsformate in 07 Maximaler Raum für Titelbild (wenn kleiner dann linksbündig an Rand angesetzt) 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 1
2 Wiederholung: Grundbausteine 1-aus-8 Decoder 2-zu-1 MUX 1-zu-2 DeMUX Adresse n RAM Daten m VA VA HA 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 2
3 Wiederholung: Steuerwerksentwurf D > a 1 & & 1 s 1 & D > a 0 =1 s 0 c in & c out 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 3
4 Inhalt der Vorlesung Binäre Modellierung Codierung von Zahlen und Zeichen Boolesche Funktionen Schaltnetze Schaltungsentwurf Schaltwerke Minimierungsverfahren Grundbausteine der Computertechnik Befehlsverarbeitung in einem Prozessor Assembler-Ebene Steuerwerke Rechenwerke Parallelität auf Instruktionsebene Speicherhierarchie Virtuelle Speicherverwaltung Leistungsbewertung 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 4
5 Programme: Vom Quelltext bis in den Hauptspeicher 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 5
6 Instruktionssatz-Architekur HW/SW-Schnittstelle: definiert Befehle zur Kommunikation mit der Hardware Instruktionssatz-Architektur bzw. Instruction Set Architecture (ISA) Menge der Befehle und zugrundeliegende Hardware hängen von der Anwendung ab Befehle sollten so definiert werden, dass die Hardware effizient arbeiten kann Programme lesbar und verständlich sind Hardware Instruktionssatz-Architektur Mikroarchitektur (Register-Transfer-Ebene) Logikschaltungen Transistoren Geometrie 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 6
7 Grundstruktur eines von-neumann-computers Computer besteht aus Prozessor + Speicher + Ein-/Ausgabe Speicher besteht aus Worten fester Länge und enthält Daten und Instruktionen von-neumann-architektur: Daten und Instruktionen werden kodiert im selben Speicher abgelegt Prozessor besteht aus Rechenwerk und Steuerwerk Rechen- und Steuerwerk = Central Processing Unit (CPU) Im Program Counter (PC, Befehlszähler) steht die Speicheradresse der nächsten auszuführenden Instruktion Weitere (Instruktions-)Register im Steuerwerk, da Operationen mit Registern viel schneller ausführbar sind als mit Operanden, die sich im Speicher befinden
8 von-neumann-architektur Prozessor Speicher Rechenwerk Daten Register Daten und Instruktionen Instruktionsregister PC Adressregister Adresse Steuerwerk 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 12
9 Instruktionszyklus 1 Instruktion aus dem Speicher holen 2 Instruktion decodieren 3 Operanden holen (aus Speicher oder Register) 4 Instruktion ausführen 5 Resultat abspeichern (im Speicher oder Register) 6 nächste Instruktion bestimmen Je nach Instruktion und Prozessor werden Schritte zusammengefasst / übersprungen UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 13
10 Taktverfahren Gesamtschaltung aus kombinatorischen und sequentiellen Teilen sequentielles Element kombinatorischer Schaltungsteil T max{ τ i } τ 1 τ 2 τ n CLOCK systemweites Taktsignal (CLOCK) alle Register sind flankengesteuert sequentielles Element wird in einer Taktperiode gelesen / geschrieben Taktperiode ist mindestens so lang wie die größte Verzögerungszeit der kombinatorischen Komponenten 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 14
11 Registertransferbefehle Beschreiben elementare Abläufe in einem Prozessor durch Registertransferbefehle Registertransferbefehle beschreiben die Änderung von Registerwerten innerhalb eines Taktes in einer Schaltung, die aus Registern und kombinatorischer Logik aufgebaut ist. komb. Logik 2 Reg Reg2 3 komb. Logik Reg3 komb. Logik (+) 5 5 Reg4 Regs übernehmen Wert am Dateneingang Wert wird sofort am Datenausgang sichtbar Ergebnis der kombinatorischen Logik liegt am Dateneingang des folgenden Registers an Takt Regs übernehmen Wert am Dateneingang Registertransferbefehl: Reg4 <= Reg2 + Reg3
12 Allgemeine Form von Registertransferbefehlen Variante 1 eines RT-Befehls: lhs <= rhs, wobei lhs bezeichnet ein Register rhs ist ein Ausdruck, aufgebaut aus Operanden und Operationen Operationen müssen durch kombinatorische Blöcke ausführbar sein Operanden sind Register oder Eingangssignale Variante 2 eines RT-Befehls: if cond then stmt1 else stmt2, wobei: stmt1 und stmt2 sind Registertransferbefehle der Variante 1 oder 2 cond ist ein Ausdruck, aufgebaut aus Operanden und Operationen, der einen Booleschen Wert ergibt Variante 3: nop Alle load-signale der Register sind 0 Wächter: Registertransferbefehl stmt kann mit Wächter cond versehen werden und wird nur ausgeführt, wenn der Ausdruck des Wächters wahr ergibt: Schreibweise: cond: stmt
13 Beispiele: Registertransferbefehle Reset +1 n Timer <= Timer + 1 Timer <= 0 1 load clk UND Timer n n Timer <= Timer - 1 Timer <= Timer + 2 if reset Timer <= 0 else Timer <= Timer + 1 if reset Timer <= Timer + 1 else Timer <= 0
14 Prinzip eines programmierbaren Prozessors PC enthält Speicheradresse des aktuellen Befehls Rechenwerk Speicher Befehl von dieser Adresse aus dem Speicher in das Instruktionsregister (IR) holen R0 R1 R2 5 0x00 0x01 inc R0 inc R2 PC auf Adresse des nächsten Befehls setzen Aktuellen Befehl im IR im Datenpfad ausführen Nächsten Befehl holen Es ergibt sich folgende Verarbeitungsschleife: Aktuellen Befehl in das IR holen und PC aktualisieren (FE) Befehl im IR verarbeiten: Operandenwerte laden (DE) Operandenwerte verarbeiten (EX) Ergebnis zurückschreiben (WB) Steuerlogik ALU 6 Steuersignale IR 0x01 0x02 PC Datum Adresse 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B dec R1 Und jetzt die Details Steuerwerk
15 Blockschaltbild eines einfachen Prozessors Rechenwerk Allgemeine Register 0x00 0x01 Speicher ALU MBR 0x02 0x03 0x04 Steuersignale Statusflags PC 0x05 0x06 Steuerlogik IR 0x07 0x08 0x09 Timer PC MAR 0x0A 0x0B Steuerwerk
16 Takt 0: Befehl holen (MAR <= PC) Rechenwerk Speicher Allgemeine Register 0x00 0x01 ALU MBR 0x02 0x03 0x12 0x21 =0x?? 0x04 Steuersignale Statusflags PC 0x05 0x06 Steuerlogik =0x?? IR =nop 0x07 0x08 0x09 Timer reset=0 PC =0x02 MAR =0x?? 0x0A 0x0B =0x00 Steuerwerk
17 Takt 1: Befehl holen (IR <= MEM[MAR]) Rechenwerk Speicher Allgemeine Register 0x00 0x01 ALU MBR 0x02 0x03 0x12 0x21 =0x?? 0x04 Steuersignale Statusflags PC 0x05 0x06 Steuerlogik =0x?? IR =0x12 =read 0x07 0x08 0x09 Timer =0x01 reset=0 Steuerwerk PC MAR =0x02 =0x02 0x0A 0x0B
18 Takt 2: Befehl holen (PC <= PC + 1) Rechenwerk Speicher Allgemeine Register 0x00 0x01 ALU MBR 0x02 0x03 0x12 0x21 =0x?? 0x04 Steuersignale Statusflags PC 0x05 0x06 Steuerlogik =0x12 IR =nop 0x07 0x08 0x09 Timer =0x02 reset=0 Steuerwerk PC MAR =0x02 =0x02 0x0A 0x0B
19 Situation zu Beginn von Takt 3 Rechenwerk Speicher Allgemeine Register 0x00 0x01 ALU MBR 0x02 0x03 0x12 0x21 =0x?? 0x04 Steuersignale Statusflags PC 0x05 0x06 Steuerlogik =0x12 IR =nop 0x07 0x08 0x09 Timer =0x03 reset Steuerwerk PC MAR =0x03 =0x02 0x0A 0x0B
20 Zusammenfassung Befehlsholphase Ausgeführte Registertransferoperationen: Timer=0: MAR <= PC Timer=1: IR <= MEM[MAR] Timer=2: PC <= PC + 1 Danach befindet sich Befehlscode im IR Ab Takt 3 kann die Kontrolllogik abhängig vom Timer und dem Befehlscode den Datenpfad steuern Takt 0 Takt 1 Takt 2 Takt 3 Steuersignale werden zur Ausführung der Registertransferoperation gesetzt MAR <= PC IR<=MEM[MAR] PC <= PC+1 Im Folgenden Verfeinerung des Rechenwerkes
21 Steuerwerk mit einfachem Rechenwerk 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 25
22 Steuerwerk: Aufbau und Funktionsweise Für jede Steuerleitung x i enthält das Steuerwerk eine Schaltung für die Boolesche Funktion x i = f i (Timer, IR, Flags) 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 26
23 Realisierung aus dem Mikrocode die Belegung der Steuersignale ableiten: Modellierung mit Wahrheitswertetabelle(n) 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 27
24 Steuersignale aus Mikrocode bestimmen (1) Signal alu 0 (test) 1 (+1) 2 (-1) 3 (transfer) ALU Ausgang zero M 1, falls M=0 0, sonst M+1 0 M-1 0 M 0 inc r1 inc r0 Timer=0: MAR <= PC Timer=1: IR <= MEM[MAR] Timer=2: PC <= PC + 1 Timer=3 IR=0x10: R0 <= R0 + 1; Timer <= 0 Timer=3 IR=0x11: R1 <= R1 + 1; Timer <= UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 28
25 Steuersignale aus Mikrocode bestimmen (2) Signal alu 0 (test) 1 (+1) 2 (-1) 3 (transfer) ALU Ausgang zero M 1, falls M=0 0, sonst M+1 0 M-1 0 M 0 jnz r1 Timer=0: MAR <= PC Timer=1: IR <= MEM[MAR] Timer=2: PC <= PC + 1 Timer=3 IR=0x41: MAR <= PC; Z <= test R1 Timer=4 IR=0x41: MBR <= MEM[MAR] Timer=5 IR=0x41: if Z then PC<=PC+1 else PC<=MBR; Timer <= UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 29
26 Wahrheitswertetabelle für Steuerlogik a. fetch b. jnz r1 c. inc r0 d. inc r UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 30
27 Netzliste für jedes Ausgangssignal erstellen Beispiel: Auswahl der Register über Id-Signale 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 31
28 Beispielarchitektur Hennessy, Patterson: Computer Organization and Design: The Hardware Software Interface 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 32
29 Konzeption einer Prozessor-Architektur Elemente des Datenpfades / vereinfachter Instruktionssatz: Laden der Instruktion, Inkrementieren des Program Counter Datentransferinstruktionen: load, store Arithmetik- und Logikinstruktionen: add, sub, and, or Verzweigungsinstruktionen: compare & branch on zero (cbz), branch Entwurf des Datenpfades benötigte Komponenten Steuer- und Statussignale 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 33
30 Laden der Instruktion, Inkrementieren des Program Counter Pro Instruktionszyklus wird eine Instruktion aus dem Speicher geladen. Im Program Counter steht die Adresse dieser Instruktion. 32-Bit-Rechner: Mit Ausnahme von Sprungbefehlen ist die nächste Instruktion an der folgenden Adresse zu finden, d.h. PC PC + 4. benötigte Komponenten: Instruktionsspeicher: Eingang: Adresse (32-Bit); Ausgang: Instruktion (32-Bit); keine Steuersignale Program Counter: Bei steigender Taktflanke wird ein neuer Wert in den PC geladen. Addierer: PC um 4 erhöhen 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 34
31 Realisierung 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 35
32 Tipp Welche Konstante müsste bei einem 64-Bit-Rechner in den Addierer geführt werden, um die Adresse des nächsten Befehls zu berechnen? 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 36
33 Datentransferinstruktionen Schreiben von Register in Speicher oder Lesen von Speicher in Register Komponenten: Datenspeicher Registerfile Vorzeichenerweiterung 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 37
34 Datenspeicher Eingänge: Adresse (32-Bit) zu schreibende Daten (32-Bit) MemWrite: getaktetes Write-Enable -Signal, leitet Schreibvorgang ein MemRead: signalisiert einen Lesezugriff auf den Datenspeicher Ausgang: 32-Bit Datenausgang 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 38
35 Registerfile Eingänge: zwei Adressen zum Lesen eine Adresse zum Schreiben Daten zum Schreiben Ausgänge: gelesene Daten 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 39
36 Im Detail: Multiport-Registerfile 32 Register, angesteuert durch 3 Adress-Ports (je 5-Bit) Daten-Port (64-Bit) Write-Enable -Signal (RegWrite) Read Register 1 Read Register RegWrite Write Register to-32 decoder & D C a Register 0 32-MUX Read Data D C Register 31 Write Data & 32-MUX Read Data UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 40
37 Vorzeichenerweiterung Eingang: Ausgang: Operand im 2er-Komplement (32-Bit) Operand im 2er-Komplement (64-Bit) Kopieren von Bit 31 in alle höherwertigen Bits 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 41
38 Zusammenführung bis hierher PC-relative Sprünge ausführen (addr) Ergebnis der ALU Operation ins Zielregister schreiben Ergebnis der ALU Operation als Adresse in den Datenspeicher verwenden (src1) (src2) (dst) Mögliche Befehlsformate opc src1 src2 dst add r1, r2 -> r3 (imm) opc src1 imm dst add r1, 8 -> r3 ld (r1 + 8) -> r3 Konstanten als ALU- Operanden zulassen Daten aus Registern in den Speicher schreiben Daten aus Speicher in Register einlesen opc src1 src2 addr beq r1, r2, UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 42
39 Multiplexer zur Steuerung des Signalflusses 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 43
40 Weitere Registerarchitekturen Universalregisterarchitektur: Operanden in Registerblock Scratch-Pad-Memory: Operanden in Speicherblock Akkumulatorarchitektur: Akkumulatorregister ist Operand Spezialregisterarchitektur: Spezialregister für unterschiedliche Operationen Stack-Architektur: Operanden im Stapelspeicher 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 44
41 Universalregisterarchitektur eine Registerbank mit n Registern (alle Register sind gleich ) Variante: 3-Adress-Code (zwei Quelloperanden, ein Zieloperand) Beispiel: ADD R1, R2, R3 (R1 <= R2 + R3) Vorteil: Werte der Quelloperanden können erhalten bleiben Nachteil: Platzbedarf für Codierung Variante: 2-Adress-Code (zwei Quelloperanden, einer davon ist auch Zieloperand) Beispiel: ADD R1, R2 (R1 <= R1 + R2) Vorteil: geringer Platzbedarf bei Codierung Nachteile: ein Quelloperand muss immer überschrieben werden kann Kopieroperationen zum Retten eines Wertes erfordern 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 45
42 Scratch-Pad-Memory-Architektur Registerbank ist als schneller Speicher organisiert Vorteile: große Anzahl an Registern ohne Multiplexer für Lesezugriff Vereinfachung des Aufbaus des Rechenwerks Nachteile: Lesen zweier Operanden erfordert zwei Takte (oder Verwendung eines Dual-Port-Memory) große Anzahl an Registern erfordert viel Speicherplatz für die Codierung der Adresse vermeidbar durch Verwendung der Fenster-Technik: Unterteilung der Register in Gruppen zu k Registern Adresse eines Registers wird aus b*k+r gebildet (b in einem Kontrollregister, r in der Operation codiert) 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 46
43 Akkumulatorarchitektur Akkumulator (Accu) ist für die meisten Operationen Quell- und Zieloperand Vorteile: es muss nur ein Operand in der Operation codiert werden geringer Hardwarebedarf, da Multiplexer eingespart werden Nachteil: häufiges Ein-/Auslagern des Accu-Inhalts verlängert den Programmcode 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 47
44 Spezialregisterarchitektur Datenpfad enthält verschiedene funktionale Einheiten, einzelne Register sind nur von bestimmten Einheiten nutzbar Vorteile: platzsparende Codierung der Operanden Einsparung bei den Multiplexern Breite der Register kann an die Erfordernisse der Operation angepasst werden Nachteil: u.u. zusätzliche Transferoperationen zwischen den Registern erforderlich 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 48
45 Stackarchitektur Speicher ist als Stapel organisiert: Jede k-näre Operation holt sich die obersten k Wert als Operanden vom Stack. Das Ergebnis wird auf den Stack gelegt. Vorteil: Es muss keine Operandenadresse im Befehl kodiert werden. Nachteil: kein wahlfreier Zugriff auf die Werte 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 49
46 Tipp Welche Registerarchitektur finden Sie am besten? Warum? Welche ist eher günstig für den (Assembler-)Programmierer, welche für die Hardware-Realisierung? Gibt es Vorteile bei bestimmten Applikationen? 2017 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 50
47 Arithmetik- und Logikinstruktionen lesen 2 Register führen die entsprechende Berechnung aus schreiben in ein drittes Register Y = f(a, B) A ALU Y benötigte Komponenten: Registerfile Arithmetic-Logic-Unit (ALU) B f 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 51
48 Arithmetic Logic Unit (ALU) 1-Bit ALU für die Operationen add, or, and (Subtraktion: Addition im Zweierkomplement) c in operation a & 0 >=1 1 3-MUX z 2 b full adder c out 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 52
49 64-Bit ALU a invert b negate invert operation a 0 b 0 c in ALU0 z 0 less c out a 1 b 1 0 less c in ALU1 c out z 1 >=1 1 zero a b 31 z b 63 ALU31 ALU less set c in z UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 53
50 Ein- und Ausgänge der ALU ALU control Function 0000 AND 0001 OR 0010 add 0110 subtract 0111 pass input b 1100 NOR 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 54
51 Generierung von Prozessorflags 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 55
52 Rechenwerk: Prozessorflags Carry (C): zeigt falsches Ergebnis bei Addition/Subtraktion vorzeichenloser Zahlen an entspricht Ausgang c n der Arithmetikeinheit, d.h. Carry = 1 gdw. bei einer n-bit-arithmetikeinheit ein Über-/Unterlauf in das Bit n+1 auftritt Zero (Z): Zero = 1 gdw. Ergebnis einer ALU-Operation 0 ist Negative (N): Negative = 0 gdw. MSB im Ergebnis der ALU 0 ist Overflow (V): zeigt falsches Ergebnis bei Addition/Subtraktion vorzeichenbehafteter Zahlen an Overflow =1 gdw. das Ergebnis ein falsches Vorzeichen aufweist 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 56
53 Tipp Welche Arithmetik-/Logik-Operationen fehlen Ihnen hier noch? Schätzen Sie ab, wie viel komplexer dadurch die interne Realisierung wird und wie viele Steuersignale hinzu kommen müssen UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 57
54 ALU im Datenpfad 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 58
55 Verzweigungsinstruktionen 1. Feststellen, ob ein Sprung ausgeführt wird oder nicht 2. Berechnen der Zieladresse bestehend aus Basis und Offset MIPS definiert als Basis für bedingte Sprünge die Adresse der Instruktion NACH der Verzweigungsinstruktion (PC+4), d.h. der 16-Bit Offset muss zu PC+4 hinzuaddiert werden! Offset-Feld muss um 2 Bit nach links verschoben werden (Wortadresse) Komponenten: Registerfile ALU Vorzeichenerweiterung Shifter Addierer 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 59
56 Bedingte Verzweigungen 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 60
57 Zusammenführung bis hierher 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 61
58 Datenpfad und Controller 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 62
59 Tipp Welchen Vorteil könnte es bringen, die Arbeitsweise der Komponenten zentral durch einen Controller regeln zu lassen? 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 63
60 Einzyklenimplementierung Prinzip: Jede Instruktion wird in einem Taktzyklus komplett ausgeführt. Jede Komponente das Datenpfades kann während eines Instruktionszyklus maximal einmal verwendet werden. getrennte Speicher für Instruktionen und Daten Vorteil: einfache Realisierung, insbesondere des Controllers Nachteile: Instruktionen benötigen unterschiedliche Datenpfadelemente. zumindest teilweise redundante Komponenten unterschiedliche kombinatorische Gesamtverzögerungen Taktperiode T = Maximum aller Verzögerungen Ausführung einer Instruktion in einem langen Takt 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 64
61 Mehrzyklenimplementierung Prinzip: Die Instruktionsabarbeitung wird in mehrere Schritte aufgeteilt. Jeder Schritt benötigt einen Taktzyklus. Je nach Instruktion sind verschieden viele Schritte notwendig. Vorteile: Taktperiode kürzer als bei Einzyklenimplementierung höhere Performance Datenpfadelemente mehrmals in einem Instruktionszyklus verwendbar Reduktion der Hardware Nachteile: Register zur Signalspeicherung zwischen den Taktschritten nötig komplexerer Controller 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 65
62 Blockschaltbild Unterschiede zur Einzyklenimplementierung: Es wird nur ein Speicher für Instruktionen und Daten verwendet. Statt einer ALU und zwei Addierern wird nur eine ALU verwendet. Nach den größeren Datenpfadelementen werden Register zur Zwischenspeicherung eingefügt UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 66
63 Wiederholung: Instruktionszyklus 1 Instruction Fetch IF 2 Instruction Decode, Register Fetch ID 3 Execution, Memory Address Computation, Branch Completion EX 4 Memory Access, R-type Instruction Completion MEM 5 Memory Read Completion (Write Back) WB 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 67
64 3. Vergleich Ein- und Mehrzyklenimpl. T 1 T 2 Einzyklenimplementierung lw sw T 1 T 2 T 3 T 4 T 5 T 6 T 7 T 8 T 9 Mehrzyklenimplementierung IF ID EX MEM WB IF ID EX MEM 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 68
65 Tipp Welche Hardware-Einheiten werden in den einzelnen Phasen benötigt? 2016 UNIVERSITÄT POTSDAM Institut für Informatik & Computational Science Komplexe Multimediale Anwendungsarchitekturen 69
Prozessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
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:
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrPrinzipieller Aufbau und Funktionsweise eines Prozessors
Prinzipieller Aufbau und Funktionsweise eines Prozessors [Technische Informatik Eine Einführung] Univ.- Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg
MehrStruktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register
Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control
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:
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrÜ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)
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.
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
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
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
MehrGrundlagen der Informationsverarbeitung:
Grundlagen der Informationsverarbeitung: Einleitung Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn kleiner dann linksbündig
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
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
MehrTechnische Informatik 1
Technische Informatik 1 4 Prozessor Einzeltaktimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Vorgehensweise 4 2 Prinzipieller Aufbau Datenpfad: Verarbeitung und Transport von
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
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..
MehrMikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)
Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.
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...
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
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrTeil VIII Von Neumann Rechner 1
Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only
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:
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
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
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.).
MehrJohann Wolfgang Goethe-Universität
Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory
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
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
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
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
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
MehrEinführung in die Informatik
Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB
MehrRO-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
MehrInformatikgrundlagen I Grundlagen der Informatik I
Informatikgrundlagen I Grundlagen der Informatik I Dipl.-Inf. Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Inhalt 1. Einführung,
MehrMikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -
Mikrocomputertechnik Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikroprozessor-Achritekturen Folie 2 Mikroprozessor-Achritekturen Klassifizierung anhand Wortbreite CPU-Architektur und Busleitungen
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
MehrRechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011
Technische Universität Graz Institut tfür Angewandte Informationsverarbeitung und Kommunikationstechnologie Rechnerorganisation 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2003. 1 Ausblick. Erste
MehrVersuchsreihe 7. Registerfile. Registerfile + Programmzähler. HaPra Versuchsreihe 7 - Registerfile + Programmzähler. 32 Register à 32 Bit
HaPra 2007 - Versuchsreihe 7 - Registerfile + Programmzähler Versuchsreihe 7 Registerfile + Programmzähler Registerfile Register à Bit Schreiben in Register: - Dateneingang D(31:0) - Adresseingang A_D(4:0)
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
MehrMikrocomputertechnik. Einadressmaschine
technik Einadressmaschine Vorlesung 2. Mikroprozessoren Einführung Entwicklungsgeschichte Mikroprozessor als universeller Baustein Struktur Architektur mit Akku ( Nerdi) FH Augsburg, Fakultät für Elektrotechnik
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 8. Vorlesung Inhalt Gleitkomma-Darstellung Normalisierte Darstellung Denormalisierte Darstellung Rechnerarchitekturen Von Neumann-Architektur Harvard-Architektur Rechenwerk (ALU)
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
Mehr1. Übung - Einführung/Rechnerarchitektur
1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser
MehrF Ein einfacher Modellprozessor
F ein einfacher Modellprozessor F Ein einfacher Modellprozessor Einordnung in das Schichtenmodell:. Prozessor 2. Aufbau des Modellprozessors 3. Organisation eines SRAM 4. Beschreibung in RTL 5. Adresspfad
MehrAufbau eines Taschenrechners
siehe Skizze Aufbau einer Waage siehe Skizze Speichermöglichkeit Aufbau eines Taschenrechners Speichermöglichkeit Adressbus 65536 (2 16 ) (2 wegen der Zustände =aus und 1=an) => 65536 Möglichkeiten =>
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
MehrCPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse
Kapitel 11 Rechnerarchitektur 11.1 Der von-neumann-rechner Wir haben uns bisher mehr auf die logischen Bausteine konzentriert. Wir geben jetzt ein Rechnermodell an, das der physikalischen Wirklichkeit
Mehr9. Assembler: Der Prozessor Motorola 68000
9.1 Architektur des Prozessors M 68000 9.2 Adressierungsarten des M 68000 9-1 9.1 Beschreibung des Prozessors M 68000 Charakteristische Daten des 56 Maschinenbefehle 14 Adressierungsarten Zweiadressmaschine
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
MehrLogische Bausteine. Addierwerke. Grundlagen der Rechnerarchitektur Logik und Arithmetik 48
Logische Bausteine Addierwerke Grundlagen der Rechnerarchitektur Logik und Arithmetik 48 Addition eines einzigen Bits Eingang Ausgang a b CarryIn CarryOut Sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1
Mehra. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF
ITS Teil 2: Rechnerarchitektur 1. Grundschaltungen der Digitaltechnik a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF b. Zähler (Bsp. 4-Bit Zähler) - Eingang count wird zum Aktivieren
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
MehrGrundzüge der Informatik II
Grundzüge der Informatik II Kapitel 4: Realisierung von Rechen- und Steuerwerk (2. Teil) Prof. Dr. Oskar von Stryk Fachgebiet Simulation und Systemoptimierung TU Darmstadt Skript: Patterson/Hennessy, Chapter
MehrRechnerarchitektur Zusammengetragen vom Marc Landolt
Rechnerarchitektur Zusammengetragen vom Marc Landolt http://ml.buzzernet.com 1/14 1 Die verschiedenen Betrachtungsebenen Rechnerebene Hauptblockebene Registertransferebene Schaltwerkebene Ebene elektrischer
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
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
MehrMikroprozessortechnik Grundlagen 1
Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega28 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes
MehrLösungsvorschlag 10. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag. Übung Technische Grundlagen der Informatik II Sommersemester 29 Aufgabe.: MIPS-Kontrollsignale Für die 5 Befehlstypen a) R-Format
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 6 Datum: 24. 25. 11. 2016 Pipelining 1 Taktrate / Latenz In dieser
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,
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
MehrMikrocomputertechnik
Mikrocomputertechnik Bernd-Dieter Schaaf Mit Mikrocontrollern der Familie 8051 ISBN 3-446-40017-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40017-6 sowie im Buchhandel
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
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
MehrDarstellung von negativen binären Zahlen
Darstellung von negativen binären Zahlen Beobachtung für eine beliebige Binärzahl B, z.b. B=110010: B + NOT(B) ---------------------------------------------- = B + NOT(B) 1 + (Carry) ----------------------------------------------
MehrInhaltsangabe. 2.1 DieCPU Der Speicher Die Busse Klassifikation der von-neumann-rechner... 37
2 Rechnerarchitektur - Grundlegende Rechnerarchitektur - Bestandteile eines Rechners - Klassifikation von Rechnern Inhaltsangabe 2.1 DieCPU... 33 2.2 Der Speicher...... 35 2.3 Die Busse........ 37 2.4
MehrAbbildung 4.1: Blockschaltbild des mikroprogrammierbaren Beispielrechners
Abbildung 4.1: Blockschaltbild des mikroprogrammierbaren Beispielrechners RAM-Schiebeeinheit RAM 0 RAM 3 Q 0 Q 3 Dateneingang Register Adresse A Register Adresse B F Q Q Register Q RAM 16 adressierbare
Mehr, 2014W Übungsgruppen: Mo., Mi.,
VU Technische Grundlagen der Informatik Übung 5: ikroprozessor (icro16) 183.579, 2014W Übungsgruppen: o., 01.12. i., 03.12.2014 Aufgabe 1: Schaltwerksentwicklung Hexapod / Teil 2 a) Befüllen Sie die untenstehende
MehrDatapath. Data Register# Register# PC Address instruction. Register#
Überblick über die Implementation Datapath Um verschiedene Instruktionen, wie MIPS instructions, interger arithmatic-logical instruction und memory-reference instructions zu implementieren muss man für
MehrIm Original veränderbare Word-Dateien
Das Von-Neumann-Prinzip Prinzipien der Datenverarbeitung Fast alle modernen Computer funktionieren nach dem Von- Neumann-Prinzip. Der Erfinder dieses Konzeptes John von Neumann (1903-1957) war ein in den
MehrC. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner
Von-Neumann-Rechner (John von Neumann : 1903-1957) C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner Quelle: http://www.cs.uakron.edu/~margush/465/01_intro.html Analytical Engine - Calculate
MehrRechner- organisa-on 2 TOY. Karl C. Posch.
Rechner- Technische Universität Graz Ins-tut für Angewandte Informa-onsverarbeitung und Kommunika-onstechnologie organisa-on 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2012. Ausblick. Erste HälEe
MehrLogische Bausteine. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31
Logische Bausteine Sequentielle Schaltungen Shlt Grundlagen der Rechnerarchitektur Logik und Arithmetik 31 Sequentielle Schaltungen n Eingänge m Ausgänge n Eingänge m Ausgänge Zustand Ausgänge hängen nur
MehrInhaltsverzeichnis. Inhaltsverzeichnis 3
Inhaltsverzeichnis Inhaltsverzeichnis 3 1 Einführung 9 1.1 Die Ursprünge der Computertechnik... 10 1.2 Der erste Mikroprozessor... 15 1.3 Schaltungstechniken... 15 1.3.1 Transistor-to-Transistor-Logik...
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
Mehr3. Rechnerarchitektur
ISS: EDV-Grundlagen 1. Einleitung und Geschichte der EDV 2. Daten und Codierung 3. Rechnerarchitektur 4. Programmierung und Softwareentwicklung 5. Betriebssyteme 6. Internet und Internet-Dienste 3. Rechnerarchitektur
MehrBrückenkurs / Computer
Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte
MehrTechnische Informatik I, SS 2001
Technische Informatik I SS 2001 PD Dr. A. Strey Abteilung Neuroinformatik Universität Ulm Inhalt Einführung: Überblick über die historische Entwicklung der Rechnerhardware Teil 1: Digitale Logik kurzer
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
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
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
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling
Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling Aufgabe 1: Sie haben in der Vorlesung einen hypothetischen Prozessor kennen
MehrZENTRALEINHEITEN GRUPPE
31. Oktober 2002 ZENTRALEINHEITEN GRUPPE 2 Rita Schleimer IT für Führungskräfte WS 2002/03 1 Rita Schleimer TEIL 1 - Inhalt Zentraleinheit - Überblick Architekturprinzipien Zentralspeicher IT für Führungskräfte
MehrEinführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für
MehrArithmetische und Logische Einheit (ALU)
Arithmetische und Logische Einheit (ALU) Enthält Blöcke für logische und arithmetische Operationen. n Bit Worte werden mit n hintereinander geschalteten 1 Bit ALUs bearbeitet. Steuerleitungen bestimmen
MehrRechnerstrukturen 1: Der Sehr Einfache Computer
Inhaltsverzeichnis 1: Der Sehr Einfache Computer 1 Komponenten.................................... 1 Arbeitsweise..................................... 1 Instruktionen....................................
MehrTechnische Informatik 2 Adressierungsarten
Technische Informatik 2 Adressierungsarten Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute X-Adressmaschine 0-Adressmaschine 1-Adressmaschine 2-Adressmaschine
Mehr4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen
4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen Ein Rechner besteht aus den folgenden Bestandteilen: Rechenwerk Rechenoperationen wie z.b. Addition, Multiplikation logische Verknüpfungen
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrRechnergrundlagen. Vom Rechenwerk zum Universalrechner
Rechnergrundlagen. Vom Rechenwerk zum Universalrechner von Rainer Kelch 1. Auflage Hanser München 2003 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 22113 0 Zu Leseprobe schnell und portofrei
MehrInformatik I Modul 5: Rechnerarithmetik (2)
Herbstsemester 2, Institut für Informatik IFI, UZH, Schweiz Informatik I Modul 5: Rechnerarithmetik (2) 2 Burkhard Stiller M5 Modul 5: Rechnerarithmetik (2) Grundrechenarten Arithmetisch-logische Einheit
MehrNeues vom STRIP Forth-Prozessor
Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft März 2014 Bad Vöslau/Österreich Willi Stricker -Prozessor Inhalt 1. STRIP-Befehlssatz Bisher: minimaler Befehlssatz neu: erweiterter Befehlssatz
Mehr