9. Fließbandverarbeitung

Größe: px
Ab Seite anzeigen:

Download "9. Fließbandverarbeitung"

Transkript

1 9. Fließbandverarbeitung

2 Nachteile der Mikroprogrammierung Von CISC zu RISC Fließbandverarbeitung Pipeline-Hazards Behandlung von Daten- und Kontroll-Hazards 334

3 Nachteile mikroprogrammierter CPUs Zusätzliche Laufzeit durch LIE-Interpretierer Unterschiedliche Taktzeiten verschiedener Befehle Unterschiedliche Befehlsstruktur erschwert Parallelisierung Taktzeiten einiger 8086 Maschinenbefehle :: NOP 3 Takte MUL BX BX Takte STOSB 8 Takte REP REP STOSB 8 + (n-1)*4 Takte )* )* Empirische Untersuchungen zeigten, dass komplexe Befehle in der Praxis relativ selten eingesetzt wurden. )* n = Anzahl der Iterationen 335

4 Mikroprogrammierte CPUs leistungsfähige Maschinenbefehle kurze ausführbare Programme wenige, aber vielseitige Register einfache Erweiterbarkeit durch zusätzliche Befehle Aufwärtskompatibilität einfach zu gewährleisten zusätzlicher Zeitbedarf durch Dekodier- und LIE-Zyklus viele Befehle kaum genutzt uneinheitliche Befehlsstruktur schwierig zu parallelisieren 336

5 Ursachen für RISC Halbleiterspeicher ersetzen Kernspeicher > Hauptspeicher werden schneller und größer Einführung von Cache-Speichern > Beschleunigung der Speicherschnittstelle Compiler nutzen CISC-Befehlssätze nicht aus 5-10% Befehle in 60-80% der Ausführungszeit virtuelle Speicherkonzepte erschweren Mikroprogrammierung Korrektheitsprobleme mit Microcode uneinheitliche Befehlsstruktur erschwert Parallelverarbeitung 337

6 RISC-Generationen 1. Generation ( ): Pionierprojekte RISC I & II, David Patterson et al., Univ. of Berkeley ( ) MIPS, John Hennessy et al., Univ. of Stanford ( ) -> Microprocessor without Interlocking Pipeline Stages 2. Generation ( ): erste kommerzielle Weiterentwicklungen Klassifizierung: Stanford- oder Berkeley-Ansatz 3. Generation (ab 1985): CPI = Clock cycles superskalare RISC: CPI < 1 Per Instruction Verarbeitung mehrerer unabhängiger Instruktionen in einem Takt unter Einsatz separater Funktionseinheiten superpipelined RISC: CPI > 1 Minimierung der Taktzeit, Einsatz einer tiefen Pipeline Multiprozessor-RISC 338

7 RISC-Architekturmerkmale reduzierter, einfacher Instruktionssatz Einzyklus-Maschinenbefehle (CPI = 1) Maschinenbefehle fester Länge, wenige Formate typische RISC-Werte 64 Instruktionen 1 Adressiermodus Hardwaredekodierung großer Registersatz ``load/store -Architektur Pipelining mit delayed branching Cache-Speicher 32 Register >= 4 Pipelinestufen 339

8 Gegenüberstellung einiger RISC- Prozessoren Precision Architecture Scalable Processor Architecture Performance Optimization with Enhanced Risc MIPS HP PA Sparc IBM Pentium R3000 POWER Jahr Instruktionslänge 32 fest 32 fest variabel Befehlsanzahl >= 128 >= 256 Adresslänge Technologie CMOS NMOS CMOS CMOS CMOS Transistorzahl Pipeline-Tiefe Registerzahl

9 Fließbandverarbeitung zentrales Merkmal von RISC-Prozessoren überlappende Ausführung mehrerer Instruktionen aufeinanderfolgende Phasen der Instruktionsabarbeitung werden in separaten Verarbeitungseinheiten durchgeführt. Zwischenspeicher Zwischenspeicher Zwischenspeicher Stufe 1 Stufe 2... Stufe k Zwischenspeicher 341

10 Pipeline Lektionen (Wh aus Einführungskapitel) A u f g a b e n A B C D Zeit Fließbandverarbeitung verbessert nicht die Laufzeit einer einzelnen Aufgabe, sondern den Durchsatz der gesamten Arbeitslast. Mehrere Aufgaben werden mit unterschiedlichen Ressourcen simultan verarbeitet. Max. Beschleunigung = Anzahl der Verarbeitungsstufen Pipeline-Geschwindigkeit ist durch langsamste Stufe begrenzt. Unbalancierte Pipeline-Stufen reduzieren die Beschleunigung. Anlauf- und Leerlaufzeiten reduzieren die Beschleunigung. Leerlaufzyklen bei Abhängigkeiten 342

11 Phasen der MIPS-Befehlsausführung IF - Instruction Fetch, Befehlsbereitstellung Laden der Instruktion aus dem Speicher (Cache) ID - Instruction Decode, Befehlsdekodierung Analyse der Instruktion, Laden der Operandenregister EX - Execution, ALU-Operation Ausführung der Instruktion im Rechenwerk MEM - ory Access Speicherzugriff Lade- und Speichervorgänge WB - Write Back, Zurückschreiben Rückschreiben des Ergebnisses in Zielregister Takt 1 Takt 2 Takt 3 Takt 4 Takt 5 Ifetch Reg/Dec Exec Wr 343

12 MIPS-Pipeline Instruktion Pipeline-Takt IF ID Ex MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB Pipeline-Inhalt im 6.Takt 344

13 MIPS-Pipeline-Datenpfad IF/ID ID/EX EX/MEM MEM/WB 4 ADD M u x Zero? Branch taken IR PC Instruction memory IR IR MEM/WB.IR Registers M u x M u x ALU Data memory M u x Sign extend FIGURE 3.4 The datapath is pipelined by adding a set of registers, one between each pair of pipe stages. 345

14 5 Steps of MIPS Datapath Next PC Instruction Fetch 4 Adder MUX Instr. Decode Reg. Fetch Next SEQ PC RS1 Execute Addr. Calc Next SEQ PC Equal? ory Access MUX Write Back Address ory IF/ID RS2 Reg ID/EX MUX MUX ALU EX/MEM ory MEM/WB MUX Datapath Imm Sign Extend RD RD RD WB Data Control Path 346

15 Vereinfachte Sicht 347 Exec Data Access Reg. A B S M Next PC PC Reg Inst. IR IRex Equal Valid Dcd Ctrl Ex Ctrl IRwb IRmem Ctrl WB Ctrl

16 Kontrolldiagramm IR <- [PC]; PC < PC+4; A <- R[rs]; B< R[rt] S < A op B; S < A op ZX; S < A + SX; S < A + SX; If Cond PC <- PC+SX; M < S M < S M < [S] [S] <- B R[rd] < S; R[rd] < S; R[rd] < M; Equal Next PC PC Inst. IR Reg A B Exec S D Access M Data Reg. 348

17 Datenpfad und Kontrolle 349 Exec Access Data Reg. A B S Next PC Reg PC IR fun D Ctrl M WB Ctrl Inst. Decode op rs rt rs rt v rw wb me ex im v rw wb me v rw wb

18 Beispielverarbeitung Oktaladressen 10 lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r and r13, r14, r15 350

19 Start: Fetch 10 n n n n Inst. IR Decode rs rt im Ctrl WB Ctrl Reg A B Exec S M Reg. D Access Data IF 10 lw r1, 35(r2) 14 addi r2, r2, 3 Next PC sub r3, r4, r5 24 beq r6, r7, ori r8, r9, 17 PC 34 add r10, r11, r and r13, r14, r15 351

20 Fetch 14, Decode 10 Inst. lw r1, 35(r2) IR Decode 2 rt n n n im Ctrl WB Ctrl Reg A B Exec S M Reg. Next PC D 14 Access Data ID IF 10 lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, 17 PC 34 add r10, r11, r and r13, r14, r15 352

21 Fetch 20, Decode 14, Exec 10 Inst. addi r2, r2, 3 IR Decode 2 rt lw r1 35 n Ctrl n WB Ctrl Reg r2 B Exec S M Reg. D Access Data EX ID 10 lw r1, 35(r2) 14 addi r2, r2, 3 Next PC 20 IF 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, 17 PC 34 add r10, r11, r and r13, r14, r15 353

22 Fetch 24, Decode 20, Exec 14, 10 Exec Reg. r2 B PC Next PC Access Data Reg r2+35 Inst. Decode IR 4 5 Ctrl n WB Ctrl 3 M D 24 sub r3, r4, r5 addi r2, r2, 3 lw r1 MEM EX ID IF 10 lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r and r13, r14, r15 354

23 Fetch 30, Dcd 24, Ex 20, 14, WB 10 IR Access Data Exec r2+3 Reg. r4 Reg r5 PC Next PC Inst. Decode 6 7 Ctrl WB Ctrl M[r2+35] D 30 beq r6, r7 100 sub r3 addi r2 lw r1 WB MEM EX ID IF 10 lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r and r13, r14, r15 355

24 Fetch 34, Dcd 30, Ex 24, 20, WB 14 IR Access Data Exec r2+3 Reg. r6 Reg r7 Ctrl WB Ctrl PC Next PC r1=m[r2+35] Inst. Decode 9 xx D 34 r4-r5 100 ori r8, r9 17 beq sub r3 addi r2 WB MEM EX ID IF 10 lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r and r13, r14, r15 356

25 Fetch 100, Dcd 34, Ex 30, 24, WB 20 Inst. add r10, r11, r12 Decode ori r8 beq Ctrl sub r3 WB Ctrl IR Reg r9 x Next PC Exec xxx D 100 PC Access r4-r5 Data Eine Instruktion (hier ori) wird nach einem bedingten Sprung auf jeden Fall ausgeführt (-> delayed branching (siehe später)), IF die nachfolgende (add) wird als ungültig markiert. Reg. WB MEM EX ID r1=m[r2+35] r2 = r lw r1, 35(r2) 14 addi r2, r2, 3 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r and r13, r14, r15 357

26 Fetch 104, Dcd 100, Ex 34, 30, WB 24 n Inst. and r13, r14, r15 Decode add r10 xx ori r8 Ctrl beq WB Ctrl IR Reg r11 r12 Exec r9 17 xxx Reg. r1=m[r2+35] r2 = r2+3 r3 = r4-r5 D Access Data 10 lw r1, 35(r2) 14 addi r2, r2, 3 Next PC 104 WB MEM 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, 17 PC EX 34 add r10, r11, r12 ID 100 and r13, r14, r15 358

27 Fetch 108, Dcd 104, Ex 100, 34, WB 30 n Inst. Decode and r13 add r10 Ctrl ori r8 WB Ctrl xx IR Reg r14 r15 Exec r11+r12 r9 17 Reg. r1=m[r2+35] r2 = r2+3 r3 = r4-r5 D Access Data 10 lw r1, 35(r2) 14 addi r2, r2, 3 Next PC 110 PC WB MEM 20 sub r3, r4, r5 24 beq r6, r7, ori r8, r9, add r10, r11, r12 EX 100 and r13, r14, r15 359

28 Fetch 114, Dcd 110, Ex 104, 100, WB 34 Inst. Decode and r13 Ctrl n add r10 WB Ctrl NO WB NO Ovflow IR Reg Exec r14 & R15 D Access r11+r12 Data Reg. r1=m[r2+35] r2 = r2+3 r3 = r4-r5 r8 = r lw r1, 35(r2) 14 addi r2, r2, 3 Next PC sub r3, r4, r5 24 beq r6, r7, ori r8, r9, 17 PC WB 34 add r10, r11, r12 MEM 100 and r13, r14, r15 360

29 Pipeline-Hazards Situationen, in denen die regelmäßige Abarbeitung in einer Pipeline unterbrochen werden muss Struktur-Hazards: aufeinanderfolgende Instruktionen benötigen dieselbe Hardware und können nicht überlappend ausgeführt werden. Daten-Hazards: Datenabhängigkeiten zwischen aufeinanderfolgenden Instruktionen Kontroll-Hazards: Änderung der sequentiellen Abarbeitung von Befehlsfolgen durch bedingte Sprünge 361

30 Struktur-Hazards Beispiel: Bei nur einem Speicherport zum Holen von Befehlen und Daten führt ein Speicherzugriffsbefehl zu einem Leertakt in der Pipeline: Instruktion Pipeline-Takt LOAD 3 4 stall 5 6 IF ID Ex MEM WB Konflikt zwischen IF ID EX MEM WB Laden von Daten und Befehl IF ID EX MEM WB IF ID EX MEM WB stall stall stall stall stall IF ID EX MEM WB IF ID EX MEM WB 362

31 WB Data 363 Eliminating Structural Hazards at Design Time Next PC MUX Next SEQ PC Next SEQ PC Zero? Adder RS1 4 MEM/WB ALU MUX MUX ID/EX Reg IF/ID Instr Cache MUX Data Cache EX/MEM RS2 Address Sign Extend Imm Datapath RD RD RD Control Path

32 Beispiel: Daten-Hazard Betrachte die Instruktionsfolge add $t1, $t2, $t3 (* $t1 := $t2 + $t3 *) sub $t4, $t1, $t5 (* $t4 := $t1 - $t5 *) $t1 wird geschrieben add sub IF ID EX MEM WB IF ID EX MEM WB $t1 wird gelesen 364

33 Daten-Hazards RAW (read after write) Befehl i+j versucht Datum zu lesen, bevor Befehl i dieses geschrieben hat WAR (write after read) Befehl i+j versucht Datum zu schreiben, bevor es von Befehl i gelesen wurde -> in MIPS-Pipeline nicht möglich, da frühes Lesen in ID und spätes Schreiben in WB WAW (write after write) Befehl i+j versucht Datum zu schreiben, bevor es durch Befehl i geschrieben wurde -> in MIPS-Pipeline nicht möglich, da nur in Phase WB geschrieben wird 365

34 Forwarding W R Aufteilung der Phase in zwei Teile: zuerst Schreiben, dann Lesen ADD R1, R2, R3 SUB R4, R1, R5 AND R6, R1, R7 OR R8, R1, R9 XOR R10, R1, R12 366

35 ALU mit Forwarding-Einheit Ergebnis- Schreibbus Registersatz MUX MUX ALU $t4 $t1 Ergebnispuffer 367

36 Forwarding in MIPS-Pipeline 368

37 Unvermeidbare Leerzyklen (stalls) Zeit (Takte) lw r1,0(r2) sub r4,r1,r3 IF ID/RF EX MEM WB ALU Im Reg Dm Reg ALU Im Reg Dm Reg echte Rückwärtsabhängigkeit Forwarding nicht möglich! Von load abhängige Instruktionen müssen verzögert werden. 369

38 Compiler Scheduling Durch geschicktes Umordnen von Instruktionen können Daten-Hazards oft vermieden werden. Bsp: A = B + C wird durch folgende Instuktionssequenz realisiert: lw $t1, B lw $t2, C add $t0, $t1, $t2 sw $t0, A Diese enthält einen nicht durch forwarding lösbaren Datenhazard. Aber: A = B+C; D = E-F kann durch folgende hazardfreie Sequenz implementiert werden: lw $t1, B lw $t2, C lw $t4, E add $t0, $t1, $t2 lw $t5, F sw $t0, A sub $t3, $t4, $t5 sw $t3, D 370

39 Kontroll-Hazards Bedingte Sprungbefehle können zu erheblichen Effizienzverlusten führen, weil im Normalfall erst am Ende der Bearbeitung des Befehls entschieden wird, ob ein Sprung erfolgt oder nicht. => Pipeline-Verzögerung (engl. stall) von 3 Takten Pipeline-Takt Instruktion bed. IF ID EX MEM WB Sprung 2 IF stall stall IF ID ID EX MEM WB Erst wenn das Sprungziel bekannt ist, kann der nächste Befehl geladen werden. stall stall stall MEM IF WB ID EX MEM WB stall stall stall MEM IF WB ID EX MEM WB stall stall stall EX IF MEM ID EX MEM Abhilfe: - früheres Herausfinden, ob Sprung erfolgt - früheres Berechnen der Sprungadresse 371

40 MIPS-Pipeline mit Kontrolle 372

41 Maßnahmen bei Kontrollhazards Vorverlagerung der Bedingungsauswertung in ID-Phase Die Berechnung des Verzweigungsziels kann bereits in der ID-Phase beginnen. Es sind die zu vergleichenden Register bekannt. Der Vergleich kann durch Spezialhardware (EXOR und NAND) sehr schnell erfolgen. Der korrekte Ziel-PC-Wert kann durch einen zusätzlichen Addierer aus der Konstante im Instruktionswort und dem aktuellen PC-Wert auch bereits in der ID-Phase berechnet werden. => Somit ist nur noch ein Stall-Schritt erforderlich. Predict Branch Not Taken Beginnen der Ausführung der Instruktionen, die dem Branch unmittelbar folgen Falls sich herausstellt, dass tatsächlich eine Verzweigung erfolgen soll, müssen die begonnenen Instruktionen annulliert werden. 373

42 Pipelined MIPS Datapath Figure 3.22, page 163, CA:AQA 2/e Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc ory Access Write Back Next PC 4 Adder Next SEQ PC RS1 Adder MUX Equal? Address ory IF/ID RS2 Reg ID/EX MUX ALU EX/MEM Data ory MEM/WB MUX Imm Sign Extend RD RD RD WB Data 374

43 ``Delayed Branching Idee: Schiebe zwischen Berechnung des Sprungziels und Ausführung des Sprungs vom Sprungbefehl unabhängige Instruktionen: bedingter Sprungbefehl Nachfolgebefehl 1 } Verzögerungsplätze... (engl. delay slots), meist gilt n =1 Nachfolgebefehl n ggfs. Durchführung des Sprungs Die korrekte Verwendung verzögerter Sprünge liegt in der Verantwortung des Compiler-Entwicklers oder Assemblerprogrammierers. Beispiel: Transformiere add R1, R2, R3 bz R2, label < delay slot >... label:... zu bz R2, label add R1, R2, R3... label:

44 Dynamische Sprungvorhersage 2-Bit-Schema, das die Vorhersage bei zwei Fehlern ändert T T Predict Taken NT Predict Taken T NT Predict Not Taken T NT NT Predict Not Taken Branch Target Buffer (BTB) enthält Adresse des Sprungindexes, um Vorhersage zu ermitteln und die Sprungadresse, 376

45 Dynamische Instruktionsanordnung mehrere Funktionseinheiten => mehrere Instruktionen können gleichzeitig bearbeitet werden (multiple issue) Registers Data buses FP mult FP mult out-of-order Ausführung von Instruktionen FP divide Verwaltung bspsweise über sogenanntes Scoreboard FP add Integer unit IF wird zerlegt in Issue: Dekodiere, Test auf Strukturhazards Control/ status Scoreboard Control/ status Operand Fetch: Test auf Datenhazards 377

46 Beispiel für Scoreboard (CDC 6600, 1964) Pipelinephasen: - Issue: Instruktionsstart, falls - kein Strukturhazard - kein WAW-Hazard - Read Operands: - Test auf RAW Hazards Ziel Operanden Quellen Operand verfügbar? - Execution - Write Result - Test auf WAR-Hazards Welche Einheit wird schreiben? 378

47 Dynamische Registerumbenennung (nach Tomasulo, 1967) Einführung von virtuellen Registern (reservation stations) in jeder Funktionseinheit zur Speicherung von Operanden Resultate werden über den gemeinsamen Datenbus (CDB) verbreitet (Broadcast) Loads und Stores als funktionale Einheiten Vermeidung von WARund WAW-Hazards From instruction unit Floatingpoint From memory operation queue FP registers Load buffers Operand Store buffers 1 buses FP adders Operation bus Reservation stations FP multipliers Common data bus (CDB) To memory

48 Verarbeitungsstufen Issue Instruktion wartet, bis Platz in Zwischenpuffern frei ist (-> Registerumbenennung) Execute Warte, bis alle Operanden verfügbar Überwache CDB, um fehlende Operanden zu lesen Write Result Resultat wird in CDB geschrieben und von dort überall gelesen, wo es benötigt wird 380

49 ......

50 gleichzeitige Bearbeitung von bis zu 126 Mikrooperationen umfangreiche Warteschlangen 20 Pipelinestufen

Das Prinzip an einem alltäglichen Beispiel

Das Prinzip an einem alltäglichen Beispiel 3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und

Mehr

Johann Wolfgang Goethe-Universität

Johann 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

Mehr

Leistung und Pipelining. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Leistung und Pipelining. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Leistung und Pipelining Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Leistung Leistungsmessung Leistungssteigerung Pipelining Einführung in die

Mehr

Computer-Architektur Ein Überblick

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

Mehr

Technische Informatik 1

Technische 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

Mehr

Instruktionssatz-Architektur

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

Mehr

Rechner Architektur. Martin Gülck

Rechner 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

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor 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

Mehr

Die Mikroprogrammebene eines Rechners

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

Mehr

Technische Informatik 1

Technische 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

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

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

Mehr

Mikrocomputertechnik. Einadressmaschine

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

Mehr

Teil VIII Von Neumann Rechner 1

Teil 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

Mehr

11.0 Rechnerarchitekturen

11.0 Rechnerarchitekturen 11.0 Rechnerarchitekturen Die Ziele dieses Kapitels sind: Kennen lernen der Rechnerklassifikation nach Flynn Betrachtung von Prozessorarchitekturen auf verschiedenen Abstraktionsebenen - Befehlsarchitektur

Mehr

1 Einleitung zum RISC Prozessor

1 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

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

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

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen 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

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

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

Mehr

Programmierung Paralleler Prozesse

Programmierung Paralleler Prozesse Vorlesung Programmierung Paralleler Prozesse Prof. Dr. Klaus Hering Sommersemester 2007 HTWK Leipzig, FB IMN Sortierproblem Gegeben: Menge M mit einer Ordnungsrelation (etwa Menge der reellen Zahlen) Folge

Mehr

Einführung in die Systemprogrammierung 02

Einführung in die Systemprogrammierung 02 Einführung in die Systemprogrammierung 02 Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 4. Mai 2014 Eine Aufgabe aus der Praxis Gegeben ein bestimmtes Programm: Machen Sie dieses

Mehr

Java-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool.

Java-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz Datentypen Operanden-Stack Konstanten-Pool Methoden-Area Heap für Laufzeit-Daten Class File Format 26 Die Java Virtual Machine Java Instruktions-Satz

Mehr

Umsetzung in aktuellen Prozessoren

Umsetzung in aktuellen Prozessoren Kapitel 8: Umsetzung in aktuellen Prozessoren 4 Realisierung elementarer Funktionen Reihenentwicklung Konvergenzverfahren 5 Unkonventionelle Zahlensysteme redundante Zahlensysteme Restklassen-Zahlensysteme

Mehr

Hardware/Software-Codesign

Hardware/Software-Codesign Klausur zur Lehrveranstaltung Hardware/Software-Codesign Dr. Christian Plessl Paderborn Center for Parallel Computing Universität Paderborn 8.10.2009 Die Bearbeitungsdauer beträgt 75 Minuten. Es sind keine

Mehr

Implementierung: Direkt abgebildeter Cache

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

Mehr

5.BMaschinensprache und Assembler

5.BMaschinensprache und Assembler Die Maschinenprogrammebene eines Rechners Jörg Roth 268 5.BMaschinensprache und Assembler Die vom Prozessor ausführbaren Befehle liegen im Binärformat vor. Nur solche Befehle sind direkt ausführbar. So

Mehr

Microcontroller Architectures and Examples

Microcontroller Architectures and Examples Microcontroller Architectures and Examples Thomas Basmer telefon: 0335 5625 334 fax: 0335 5625 671 e-mail: basmer [ at ] ihp-microelectronics.com web: Outline Microcontroller in general Introduction Main

Mehr

Assembler-Programme. Systemprogrammierung (37-023) Elementare Komponenten eines Assembler-Programmes

Assembler-Programme. Systemprogrammierung (37-023) Elementare Komponenten eines Assembler-Programmes Systemprogrammierung (37-023) Assemblerprogrammierung Betriebssystemgrundlagen Maschinenmodelle Dozent: Prof. Thomas Stricker krankheitshalber vertreten durch: Felix Rauch WebSite: http://www.cs.inf.ethz.ch/37-023/

Mehr

Vorlesung: Technische Informatik 3

Vorlesung: Technische Informatik 3 Rechnerarchitektur und Betriebssysteme zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme zhang@informatik.uni-hamburg.de Inhaltsverzeichnis 4. Computerarchitektur........................235

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen 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

Mehr

4.2 Universalrechner: Schaltung unabhängig vom Problem 185

4.2 Universalrechner: Schaltung unabhängig vom Problem 185 4.2 Universalrechner: Schaltung unabhängig vom Problem 85 a) Geben Sie binär die Befehlsworte an, mit denen Sie die Eingänge a, b und c in die Register R, R2 und R übernehmen. K D M4 M M2 M Kommentar XXXXXXXXXXX

Mehr

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011

Rechnerorganisation 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

Mehr

Mikroprozessortechnik. 03. April 2012

Mikroprozessortechnik. 03. April 2012 Klausur 03. April 2012 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Die Klausur besteht aus 6 doppelseitig bedruckten Blättern.

Mehr

Technische Informatik 2 Befehlsausführung, Pipelining und Steuereinheit

Technische Informatik 2 Befehlsausführung, Pipelining und Steuereinheit Technische Informatik 2 Befehlsausführung, Pipelining und Steuereinheit Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute Programmierkonzepte Sequenzierung von

Mehr

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

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

Mehr

Einführung in die Systemprogrammierung

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

Mehr

IT-Infrastruktur ITIS-F WS 2015/16. Hans-Georg Eßer. Foliensatz F: Zusammenfassung der Vorlesung. v1.2, 2015/06/15

IT-Infrastruktur ITIS-F WS 2015/16. Hans-Georg Eßer. Foliensatz F: Zusammenfassung der Vorlesung. v1.2, 2015/06/15 ITIS-F IT-Infrastruktur WS 2015/16 Hans-Georg Eßer Foliensatz F: Zusammenfassung der Vorlesung v1.2, 2015/06/15 20.08.2015 IT-Infrastruktur, WS 2015/16, Hans-Georg Eßer Folie F-1 Dieser Foliensatz Folien

Mehr

Technische Informatik 2 Maschinenprogrammierungskonzepte

Technische Informatik 2 Maschinenprogrammierungskonzepte Technische Informatik 2 Maschinenprogrammierungskonzepte Prof Dr Miroslaw Malek Sommersemester 2005 wwwinformatikhu-berlinde/rok/ca Thema heute Ausführung von Befehlen Ein-/Ausgabeprogrammierung Architekturen

Mehr

Einführung in die Systemprogrammierung 02

Einführung in die Systemprogrammierung 02 Einführung in die Systemprogrammierung 02 Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 1. Mai 2013 Eine Aufgabe aus der Praxis Gegeben ein bestimmtes Programm: Machen Sie dieses

Mehr

Binärcodierung elementarer Datentypen: Darstellung negativer Zahlen

Binärcodierung elementarer Datentypen: Darstellung negativer Zahlen Binärcodierung elementarer Datentypen: Darstellung negativer Zahlen Statt positive Zahlen von 0 bis 2 n -1mit einem Bitmuster der Länge n darzustellen und arithmetische Operationen darauf auszuführen,

Mehr

Ein Computer zum Selbstbauen

Ein Computer zum Selbstbauen www. MyCPU.eu Ein Computer zum Selbstbauen von Dennis Kuschel Gliederung: 1. Was ist die MyCPU und warum existiert sie? 2. Architektur der MyCPU 3. Befehlssatz 4. Emulator 5. Software 6. Nachbau Was ist

Mehr

Lösungsvorschlag zur 4. Übung

Lösungsvorschlag zur 4. Übung Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 4. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen zu Bewertungskriterien

Mehr

Memory Models. 17. September 2012

Memory Models. 17. September 2012 Memory Models 17. September 2012 Here Be Dragons In addition, programming idioms used by some programmers and used within Sun s Java Development Kit is not guaranteed to be valid according the existing

Mehr

HW/SW Codesign 5 - Performance

HW/SW Codesign 5 - Performance HW/SW Codesign 5 - Performance Martin Lechner e1026059 Computer Technology /29 Inhalt Was bedeutet Performance? Methoden zur Steigerung der Performance Einfluss der Kommunikation Hardware vs. Software

Mehr

Prozessorarchitektur. Klassifikationsmöglichkeiten. M. Schölzel

Prozessorarchitektur. Klassifikationsmöglichkeiten. M. Schölzel Prozessorarchitektur Klassifikationsmöglichkeiten M. Schölzel Gliederung Beispielprozessoren Klassifikation nach Befehlssatzarchitekturen Klassifikation nach Arten der Parallelität Gliederung Beispielprozessoren

Mehr

MATLAB driver for Spectrum boards

MATLAB driver for Spectrum boards MATLAB driver for Spectrum boards User Manual deutsch/english SPECTRUM SYSTEMENTWICKLUNG MICROELECTRONIC GMBH AHRENSFELDER WEG 13-17 22927 GROSSHANSDORF GERMANY TEL.: +49 (0)4102-6956-0 FAX: +49 (0)4102-6956-66

Mehr

1. Grundkonzepte des Rechneraufbaus

1. Grundkonzepte des Rechneraufbaus 1. Grundkonzepte des Rechneraufbaus Computer Processor Memory Devices Control Input Datapath Output von Neumannsches Rechnerkonzept Binärkodierungen Modifikationen und Erweiterungen 22 Das von Neumannsche

Mehr

Beispiel einer Übersetzung

Beispiel einer Übersetzung Beispiel einer Übersetzung Ausdruck in C aktuelle_zeit = Startzeit + vergangene_minuten*60 + vergangene_sekunden; Ausdruck im Instruktionssatz des R10000 LW r1,minuten LW r1,sekunden ADDI r2,r0,60 ADD

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock

Mehr

Stephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44

Stephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44 Aufgabe 33 a) Der Pseudobefehl move $rd,$rs wird als addu $rd,$0,$rs übersetzt. Dabei macht sich SPIM zunutze, dass das Register $0 immer Null ist. Somit wird das Register $rd ersetzt durch $rd=0+$rs=$rs,

Mehr

1. Übung - Einführung/Rechnerarchitektur

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

Mehr

PO=_áíJ^êÅÜáíÉâíìêÉå. 32 Bit MicroController. 16 Bit MicroController. 8 Bit MicroController

PO=_áíJ^êÅÜáíÉâíìêÉå. 32 Bit MicroController. 16 Bit MicroController. 8 Bit MicroController 32 Bit MicroController 16 Bit MicroController 8 Bit MicroController Dipl. Ing. Dieter Volland MicroConsult GmbH Rosenheimerstr. 143 b D-81671 München 49-89-45061766 d.volland@microconsult.de 2002 MICROCONSULT

Mehr

9.0 Komplexe Schaltwerke

9.0 Komplexe Schaltwerke 9.0 Komplexe Schaltwerke Die Ziele dieses Kapitels sind: Lernen komplexe Schaltwerke mittels kleinerer, kooperierender Schaltwerke zu realisieren Verstehen wie aufgabenspezifische Mikroprozessoren funktionieren

Mehr

Das Rechnermodell von John von Neumann

Das Rechnermodell von John von Neumann Das Rechnermodell von John von Neumann Historisches Die ersten mechanischen Rechenmaschinen wurden im 17. Jahhundert entworfen. Zu den Pionieren dieser Entwichlung zählen Wilhelm Schickard, Blaise Pascal

Mehr

Modul Computersysteme Prüfungsklausur SS 2011. Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur

Modul Computersysteme Prüfungsklausur SS 2011. Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur Modul Computersysteme Prüfungsklausur SS 2011 Lösungsvorschläge Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur 1 Aufgabe 1 (12 Punkte): a) Gegeben ist das

Mehr

Mikrocomputertechnik

Mikrocomputertechnik Entwiklunggehihte der Mikroprozeoren Jhr µp-typ 1. Genertion 1971 Intel 4004 4-Bit ALU, 16x4Bit Regiter, 12 Bit Adreu, 45 Befehle, 2250 Trnitoren 1972 Intel 8008 8-Bit ALU, 6x8 Bit Regiter, 14 Bit Adreu,

Mehr

Samsungs Exynos 5 Dual

Samsungs Exynos 5 Dual Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Samsungs Exynos 5 Dual Candy Lohse Dresden, 12.12.12 Gliederung 1. Motivation und

Mehr

Aufbau und Funktionsweise eines Computers

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

Mehr

Technische Informatik. Der VON NEUMANN Computer

Technische Informatik. Der VON NEUMANN Computer Technische Informatik Der VON NEUMANN Computer Inhalt! Prinzipieller Aufbau! Schaltkreise! Schaltnetze und Schaltwerke! Rechenwerk! Arbeitsspeicher! Steuerwerk - Programmausführung! Periphere Geräte! Abstraktionsstufen

Mehr

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme wwwnet-texde Proseminar Rechnerarchitekturen Parallelcomputer: Multiprozessorsysteme Stefan Schumacher, , PGP Key http://wwwnet-texde/uni Id: mps-folientex,v

Mehr

UltraSPARC T1 (Niagara)

UltraSPARC T1 (Niagara) UltraSPARC T1 (Niagara) Vortrag im Rahmen des Seminars Ausgewählte Themen in Hardwareentwurf und Optik HWS 06 Universität Mannheim Jochen Kinzel 1 Inhalt Überblick Core Crossbar Level 2-Cache DRAM-Controller

Mehr

Einfü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 (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

Mehr

Assembler-Programmierung

Assembler-Programmierung Assembler-Programmierung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Assembler-Programmierung 1/48 2012-02-29 Assembler-Programmierung

Mehr

Aufgabe 1) Die folgenden Umwandlungen/Berechnungen beziehen sich auf das 32-Bit Single-Precision Format nach IEEE-754.

Aufgabe 1) Die folgenden Umwandlungen/Berechnungen beziehen sich auf das 32-Bit Single-Precision Format nach IEEE-754. Aufgabe 1) Die folgenden Umwandlungen/Berechnungen beziehen sich auf das 32-Bit Single-Precision Format nach IEEE-754. a) Stellen Sie die Zahl 7,625 in folgender Tabelle dar! b) Wie werden denormalisierte

Mehr

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse

Mehr

Die Maschinenprogrammebene eines Rechners Jörg Roth 294

Die Maschinenprogrammebene eines Rechners Jörg Roth 294 Die Maschinenprogrammebene eines Rechners Jörg Roth 294 5.E Die SPIM-Umgebung SPIM ist ein Simulationswerkzeug für MIPS-Prozessoren Es enthält einen Assembler und eine Laufzeitumgebung Da das Wirtsystem

Mehr

DATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE

DATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE D - CA - IV - AA - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 4 DATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE Sommersemester 2003 Leitung:

Mehr

Rechnerarchitektur. Dr. Andreas Müller TU Chemnitz Fakultät für Informatik Fakultätsrechen- und Informationszentrum anmu@informatik.tu-chemnitz.

Rechnerarchitektur. Dr. Andreas Müller TU Chemnitz Fakultät für Informatik Fakultätsrechen- und Informationszentrum anmu@informatik.tu-chemnitz. Rechnerarchitektur Dr. Andreas Müller TU Chemnitz Fakultät für Informatik Fakultätsrechen- und Informationszentrum anmu@informatik.tu-chemnitz.de Rechnerarchitektur Dr. Andreas Müller TU Chemnitz Fakultät

Mehr

a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF

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

Mehr

C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner

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

Mehr

Komplexpraktikum Prozessorentwurf SoSe 2015

Komplexpraktikum Prozessorentwurf SoSe 2015 Fakultät Informatik Institut für Technische Informatik Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Komplexpraktikum Prozessorentwurf SoSe 2015 Ansprechpartner Martin Zabel, martin.zabel@tu-dresden.de,

Mehr

6. RISC-Prozessoren. 6.1 Einführung

6. RISC-Prozessoren. 6.1 Einführung 6. RISC-Prozessoren 6.1 Einführung Entgegen dem, was der Laie eigentlich erwarten würde, sind im Laufe der Zeit wirkliche Neuerungen auf den Gebiet der Rechner-Architektur nur sehr zögerlich eingeflossen:

Mehr

Zyklus: FETCH, DECODE, FETCH OPERANDS, UPDATE INSTRUCTION POINTER, EXECUTE

Zyklus: FETCH, DECODE, FETCH OPERANDS, UPDATE INSTRUCTION POINTER, EXECUTE 1. Von Neumann Architektur Aufbau: CPU Rechenwerk ALU (arithmetische und logische Operationen) Steuerwerk (Steuerung der Verarbeitung über Operationscodes) Hauptspeicher Daten und Befehle Adressierung

Mehr

Brückenkurs / Computer

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

Mehr

Technische Informatik I: Rechnerstrukturen

Technische Informatik I: Rechnerstrukturen Technische Informatik I: Rechnerstrukturen Vorlesung von Prof. Dr. Rita Loogen an der Philipps-Universität Marburg im WS 2007/08 Informationen zur zur Vorlesung und und zu zu den den Übungen: http://www.mathematik.uni-marburg.de/~loogen/lehre/ws07/techinf1/ti1.shtml

Mehr

Seminararbeit Wintersemester 2012/2013

Seminararbeit Wintersemester 2012/2013 Seminararbeit Wintersemester 2012/2013 Thema: Auslegung der Pipelines aktueller Prozessoren Verfasser: Daniel Weisensee Betreuender Professor: Prof. Dr. Albrecht Ditzinger Hochschule Karlsruhe - Technik

Mehr

Im Original veränderbare Word-Dateien

Im 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

Mehr

Rechnerarchitektur. M. Jakob. 1. Februar 2015. Gymnasium Pegnitz

Rechnerarchitektur. M. Jakob. 1. Februar 2015. Gymnasium Pegnitz Rechnerarchitektur M. Jakob Gymnasium Pegnitz 1. Februar 2015 Inhaltsverzeichnis 1 Aufbau eines Computersystems Praktische Grundlagen Von-Neumann-Rechner 2 Darstellung und Speicherung von Zahlen 3 Registermaschinen

Mehr

Klausur zur Vorlesung

Klausur zur Vorlesung Prof. Dr. Franz J. Rammig Paderborn, 2..2001 C. Böke Klausur zur Vorlesung "Grundlagen der technischen Informatik" und "Grundlagen der Rechnerarchitektur" Sommersemester 2001 1. Teil: GTI Der erste Teil

Mehr

Compiler und Codegenerierung. Hw-Sw-Co-Design

Compiler und Codegenerierung. Hw-Sw-Co-Design Compiler und Codegenerierung Hw-Sw-Co-Design Wo sind wir? System Verhalten Modul Architektur Block SW HW Logik Struktur Compiler und Codegenerierung Compiler - Aufbau Codegenerierung Codeoptimierung Codegenerierung

Mehr

6. CPU, die Zweite. Ausgangspunkt. Stand der Technik. Vorlesung Rechnerstrukturen Wintersemester 2002/03. Tanenbaum-CPU. 3 sichtbare Register

6. CPU, die Zweite. Ausgangspunkt. Stand der Technik. Vorlesung Rechnerstrukturen Wintersemester 2002/03. Tanenbaum-CPU. 3 sichtbare Register (c) Peter Sturm, Universität Trier (u.a.) 1 6. CPU, die Zweite Stand der Technik Vorlesung Rechnerstrukturen Wintersemester 2002/03 Ausgangspunkt Tanenbaum-CPU 3 sichtbare Register PC = Program Counter

Mehr

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note: Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel

Mehr

3.0 8051 Assembler und Hochsprachen

3.0 8051 Assembler und Hochsprachen 3.0 8051 Assembler und Hochsprachen Eine kurze Übersicht zum Ablauf einer Programmierung eines 8051 Mikrocontrollers. 3.1 Der 8051 Maschinencode Grundsätzlich akzeptiert ein 8051 Mikrocontroller als Befehle

Mehr

5 Speicherverwaltung. bs-5.1 1

5 Speicherverwaltung. bs-5.1 1 5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus

Mehr

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer ITIS-D'' IT-Infrastruktur WS 2014/15 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz D'': Rechnerstrukturen, Teil 3 v1.0, 2014/11/27 Folie D''-1 Dieser Foliensatz Vorlesungsübersicht Seminar Wiss.

Mehr

Technischer Aufbau und allgemeine Funktionsweise eines Computers

Technischer Aufbau und allgemeine Funktionsweise eines Computers Technischer Aufbau und allgemeine Funktionsweise eines Computers Jannek Squar Proseminar CiS Physik 01.11.2011 Technischer Aufbau und allgemeine Funktionsweise eines Computers -Was ist ein Computer S.

Mehr

Benchmarking Intel Pentium III-S vs. Intel Pentium 4

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

Mehr

Technische Informatik

Technische Informatik Technische Informatik Eine einführende Darstellung von Prof. Dr. Bernd Becker Prof. Dr. Paul Molitor Oldenbourg Verlag München Wien Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist überhaupt ein Rechner?

Mehr

Chip Level Multithreading

Chip Level Multithreading Chip Level Multithreading AG Neurobiologie Universität Bielefeld 10. Januar 2006 Moores Gesetz The complexity for minimum component costs has increased at a rate of roughly a factor of two per year...

Mehr

OpenCL Implementierung von OpenCV Funktionen

OpenCL Implementierung von OpenCV Funktionen Multi-Core Architectures and Programming OpenCL Implementierung von OpenCV Funktionen julian.mueller@e-technik.stud.uni-erlangen.de Hardware/Software Co-Design August 18, 2011 1 Table of content 1 OpenCL

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel VI. Speicherverwaltung. Speicherverwaltung Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene

Mehr

Aufbau von modernen Computersystemen

Aufbau von modernen Computersystemen Kapitel 2: Aufbau von modernen Computersystemen Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Software Anwendersoftware Betriebssystem Hardware von Neumann Architektur

Mehr

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving

Mehr

Convey, Hybrid-Core Computing

Convey, Hybrid-Core Computing Convey, Hybrid-Core Computing Vortrag im Rahmen des Seminars Ausgewählte Themen in Hardwareentwurf und Optik HWS 09 Universität Mannheim Markus Müller 1 Inhalt Hybrid-Core Computing? Convey HC-1 Überblick

Mehr

Mobile Prozessoren. Ein Vergleich zwischen Intel Silvermont, ARM Cortex-A und AMD Temash. Hochschule Darmstadt www.h-da.de

Mobile Prozessoren. Ein Vergleich zwischen Intel Silvermont, ARM Cortex-A und AMD Temash. Hochschule Darmstadt www.h-da.de Ein Vergleich zwischen Intel Silvermont, ARM Cortex-A und AMD Temash Einführung Intel Silvermont ARM Cortex-A AMD Temash Mobile Prozessoren Entwicklung des Smartphones Erstes iphone MHz ARM-76 Prozessor

Mehr

IA64 vs x86 64. Felix von Leitner felix-ccc@fefe.de. 28. Dezember 2002

IA64 vs x86 64. Felix von Leitner felix-ccc@fefe.de. 28. Dezember 2002 Felix von Leitner felix-ccc@fefe.de 28. Dezember 2002 Zusammenfassung Was sollte man als Assembler-Hacker über IA64 und X86 64 wissen? IA64 vs x86 64 Einführung Prozessoren arbeiten auf Befehlsebene. Bei

Mehr

DLX Befehlsübersicht

DLX Befehlsübersicht DLX sübersicht 1 Instruktionen für den Daten-Transfer Daten können mit folgenden en zwischen Registern und dem Speicher oder zwischen Integer- und Fließkomma-Registern ausgetauscht werden. Der einzige

Mehr

LiSARD: LabVIEW integrated Softcore Architecture for Reconfigurable Devices

LiSARD: LabVIEW integrated Softcore Architecture for Reconfigurable Devices Firmenlogo LiSARD: LabVIEW integrated Softcore Architecture for Reconfigurable Devices Programmierbarer Rechenkern für rechenintensive Echtzeitdatenverarbeitung mit PXI-RIO Dr.-Ing. Alexander Pacholik

Mehr

Betriebssysteme Teil 6: Hardware-Schicht II

Betriebssysteme Teil 6: Hardware-Schicht II Betriebssysteme Teil 6: Hardware-Schicht II 13.11.15 1 Literatur [6-1] Engelmann, Lutz (Hrsg.): Abitur Informatik Basiswissen Schule. Duden-Verlag, 2003, S.43-53, 214-224, 239-242, S. 267-299,304-313 [6-2]

Mehr

Kode-Erzeugung, Abstrakte Maschinen, Rechnerarchitekturen

Kode-Erzeugung, Abstrakte Maschinen, Rechnerarchitekturen Kode-Erzeugung, Abstrakte Maschinen, Rechnerarchitekturen Kode-Erzeugung: Syntaxbaum Ausgabeprogramm Starte mit Syntaxbaum: Darstellung des eingegebenen Programms Wähle Zielarchitektur Wähle abstrakte

Mehr