steigende Anforderungen für Audio, Video, Image, 3D grosse Datenmengen geringe Genauigkeit (8 bit.. 16 bit) x86-fpu ausgereizt

Größe: px
Ab Seite anzeigen:

Download "steigende Anforderungen für Audio, Video, Image, 3D grosse Datenmengen geringe Genauigkeit (8 bit.. 16 bit) x86-fpu ausgereizt"

Transkript

1 56 SIMD-rweiterungen PC-Technologie SIMD: Media processing "Media processing" mit dem PC?! steigende Anforderungen für Audio, Video, Image, 3D grosse Datenmengen geringe Genauigkeit (8 bit.. 6 bit) x86-pu ausgereizt Trick: vorhandene ALUs/Datenpfade für SIMD verwenden Befehlssatzerweiterungen: MMX 3Dnow! ISS AltiVec "multimedia extension" "internet SIMD streaming extension" (PowerPC G4, Macintosh) SIMD: lynn-klassifikation SISD "single instruction, single data" jeder klassische PC SIMD "single instruction, multiple data" eldrechner/parallelrechner z.b. Connection-Machine 2: 64K Prozessoren eingeschränkt: MMX&Co: 2-8 fach parallel MIMD "multiple instruction, multiple data" Multiprozessormaschinen z.b. vierfach PentiumPro-Server MISD :-)

2 PC-Technologie MMX 57 SIMD: Literatur "The MMX technology page has been removed" developer.intel.com/drg/mmx/manuals/ developer.intel.com/drg/mmx/appnotes/ Linux "parallel-processing-howto" I Micro 8/96 S.42, c t /97 S.228ff ISS: Intel website: developer.intel.com/software/idap/resources/technical_collateral/pentiumiii/ c t 4/ S.34 (ISS/3Dnow/Altivec) 3D Now! AMD website: c t 5/98 S.86 ff I Micro 3/4-99 S.37ff Befehlspipeline: in order / out of order a r3 = r * r4 D W r4 = r + r5 D W r6 = r4 * r8 D W b r3 = r * r4 D W r4 = r + r5 r6 = r4 * r8 D D W W D etch Decode/issue c r3 = r * r4 r4 = r + r5 r6 = r4 * r8 D W D W D W W xecute Write back Stall a) serielle Befehlsbearbeitung b) pipeline, out-of-order completion c) in-order-completion

3 58 MMX PC-Technologie Superskalar, SIMD D W 2-fach superskalar D W D W D W D W W 4-fach SIMD, mit Pipeline W W etch D W W D W Decode/issue xecute Write back Stall Grundidee 4 bit ALU 32/64-bit Datenpfade sind "overkill" ALUs aber leicht parallel nutzbar: carry-chain auftrennen SIMD leicht implementierbar ~% area on Pentium/MMX Performance 2x.. 8x für MMX Ops Performance.5x.. 2x für Apps MMX press release bit ALU 2 bit ALU Nutzen vs. Marketing?!

4 PC-Technologie MMX 59 x86: Register 3 5 AX AX AH AL CX CX CH CL accumulator count: String, Loop 886 xx ab 386 DX DX DH DL data, multiply/divide BX BX BH BL base addr SP SP stackptr BP SI BP SI base of stack segment index, string src 79 PR DI DI index, string dst CS code segment SS stack segment DS data segment S extra data segment S GS PR7 IP IP PC P Status LAGS status ntwurfsentscheidungen Kompatibilität zu alten Betriebssystemen / Apps: keine neuen Register möglich keine neuen xceptions bestehende Datenpfade nutzen möglichst wenig neue Opcodes alte Prozessoren und neue Software P-Register nutzen Überlauf ignorieren saturation arithmetic 64 bit Code doppelt MMX DLLs Test-Applikationen: (audio/image/mpg-/3d-graphik/...) keine Tools optimierte Libraries verfügbar 6 bit dominiert Assembler

5 6 MMX PC-Technologie Register 3 TOS MMX.. MMX7 8 Register a 64 bit tag P7 in den P-Registern P NaN P TOS = tag = valid P.. MMX7 MMX TOS= 63 Datenformate 64-bit Register, 4 Datentypen: packed byte *8 / packed word *4 / packed doubleword *2 / quadword Zugriff abhängig vom Befehl b7 b2 b b w3 w2 w w 63 d d 63 q

6 PC-Technologie MMX 6 Befehlssatz MMS (SAV / RSTOR) MOVD mm, mm2/mem32 MOVQ mm, mm2/mem64 PACKSSWB mm, mm2/mem64 PUNPCKH mm, mm2/mem64 PACKSSDW mm, mm2/mem64 PAND mm, mm2/mem64 PCMPQB mm, mm2/mem64 PADDB mm, mm2/mem64 PSUBD mm, mm2/mem64 PSUBUSD mm, mm2/mem64 PSLL mm,mm2/mem64/imm8 PMULL/HW mm, mm2/mem64 PMADDWD mm, mm2/mem64 clear MMX state (handle P regs) move 32 bit data move 64 bit data pack 8*6 into 8*8 signed saturate fancy unpacking (see below) pack 4*32 into 4*6 signed saturate mm AND mm2/mem64 / auch OR/XOR/NAND 8*a==b, create bit mask / auch GT 8*add 8 bit data 2*sub 32 bit data / signed wrap 2*sub 32 bit data / unsigned saturate shift left mm / auch PSRA/PSRL 4*mul 6*6 store low/high 6 bits MAC 4*6 -> 2*32 insgesamt 57 Befehle (Varianten B/W/D S/US) Multitaskting... Interaktion mit Betriebssystem / Taskwechsel: Task Task2 INT7 handler MMX/P code task switch: CR.TS= normal code MMX/P : INT7 wegen TS = save task state restore task2 state CR.TS= return P-Register nur bei Bedarf sichern vorhandene P INT7 Routine funktioniert auch für MMX keine Anpassung des Betriebssystems notwendig

7 62 MMX PC-Technologie "Saturation Arithmetic" was soll bei einem Überlauf passieren? paddw (wrap around): wrap-around..., 25, 26, 27, -28, -27,... ff a3 + b3 a2 + b2 a + b 7h + 4h a3+b3 a2+b2 a+b 83h saturation..., 25, 26, 27, 27, 27,... 8 ff 7f paddusw (saturating): a3 a2 a 7h Zahlenkreis "aufgeschnitten" b3 b2 b 3h gut für DSP- Anwendungen 8 7f a3+b3 a2+b2 a+b 7h "packed multiply add word" für Skalarprodukte: pmaddwd a3 a2 a a * * * * vector_x_matrix_4x4( MMX64* v, MMX64 *m ) { MMX64 v, v2323, t, t, t2, t3; v = punpckldq( v, v ); // unpack v/v v2323 = punpckhdq( v, v ); // unpack v2/v3 b3 b2 b b a3*b3+a2*b2 a*b+a*b t t t2 t3 = pmaddwd( v, m[] ); // v v * first 2 rows = pmaddwd( v2323, m[] ); // v2 v3 * first 2 rows = pmaddwd( v, m[2] ); // v v * last 2 rows = pmaddwd( v2323, m[3] ); // v2 v3 * last 2 rows } t = paddd( t, t ); // add t2 = paddd( t2, t3 ); // v = packssdw( t, t2 ); // pack 32->6, saturate

8 PC-Technologie MMX 63 "parallel compare" Vergleiche / Sprungbefehle: schlecht parallelisierbar Pipeline-Abhängigkeiten pcmpgtw: > > > > keine Sprungbefehle in MMX h h h h compare-operationen setzen Bitmasken Bitmasken für logische Ops verwendbar Beispiel: chroma-keying packssdw / punpckhbw packssdw: pack with saturation 32 -> 6 signed data: 8h D2h h 8h h 82h h Ch punpckhbw: 8h 7h 82h Ch punpcklbw: lower 32 bits

9 64 MMX PC-Technologie pmulllw / pmullhw pmull[lh]w: multiply 4 words, write low/high byte of results: h h h 2h * * * * 2h D2h h 2h 4 x 6 bit 4 x 6 bit h h h h h h h 4h 4 x 32 bit pmullhw h h h h 4 x 6 bit high words pmulllw entsprechend die low words mit Packbefehlen kombinieren, wenn 32-bit Resultate gewünscht Chroma Keying () "Wetterbericht": MMX berechnet 4 Pixel / Takt keine Branch-Befehle Schritt : Maske erstellen (high-color: 6 bit/pixel)

10 PC-Technologie 3Dnow! 65 Chroma Keying (2) Zufallszahlen x(t) = (x(t-) * 47989) & x; QuadWord DithMultVal = x4f34f34f34f3; QaudWord DithRegInit = x4f3994d2379bb75; Init: MOVQ mm, DithRegInit; Loop: // x(t) -> x(t+) PMULLW mm, DithMulVal // 3 clocks MOVQ [result64], mm // clocks PMULLW latency 3, throughput (on Pentium) bis zu vier Zufallszahlen pro Takt (U/V pipelines genutzt)

11 66 3Dnow! PC-Technologie tolowercase() String lower-to-upper-case conversion: str B 5B 5B 5B 5B 5B 5B 5B mask pcmpgtb pcmpgtb mask str pand pand str padd lowercase (aber Probleme mit Umlauten...) [aus Intel MMX appnote] 3Dnow! Motivation stark wachsende Bedeutung von 3D-Spielen 32-bit Gleitkommaoperationen nötig für Geometrie-Transformationen PU im AMD K6 vergleichsweise langsam MMX unterstützt nur Integer-Datentypen SIMD-Befehle für 32-bit float Datentypen schnelle Add/Mult/MAC/Sqrt-Befehle muß ohne OS-Unterstützung nutzbar sein MMX-Register verwenden MMX zwei-operanden Adressierung je zwei float-datenwerte pro MMX-Register 3Dnow! Spezifikation (vergleiche Motorola Altivec / Intel ISS)

12 PC-Technologie 3Dnow! 67 3Dnow! ntscheidungen SIMD-Befehle für 32-bit float Datentypen: MMX-Register verwenden, zwei Datenworte pro Register zwei-adress-befehle keine Status-lags, keine xceptions MMX-Befehle nutzbar (logische, Vergleiche,...) belegt nur einen einzigen x86 Opcode (... subobcode) möglichst wenig Chipfläche: keine Unterstützung für NaN/IN/... nur round-to-nearest-even Modus, +- LSB Saturation-Arithmetik statt Überlauf Approximation für Division und Quadratwurzel 3Dnow! Prefetch Speicherzugriffe in Multimedia-Applikationen: reguläre Speicherzugriffsmuster ungewöhnliche Lokalität viele Daten werden (pro rame) nur einmal benötigt aber regelmässig (in jedem rame) Performance stark von optimaler Cache-Ausnutzung abhängig prefetch-befehl quasi normaler Ladebefehl, aber ohne Zielregister gewünschte Daten werden in L/L2-Cache geladen löst keine xceptions / Page aults aus "memory streaming" auch für andere Anwendung gut nutzbar (etwa Numerik)

13 68 3Dnow! PC-Technologie 3Dnow! Division / Quadratwurzel Rechenwerk für Division / Sqrt ist sehr aufwendig möglichst wenig Chipfläche für 3Dnow! teilweise nur geringe Genauigkeit benötigt etwa Shading/Beleuchtungsberechnung für 3D-Graphik Division und Quadratwurzel per Approximation erster Befehl liefert 4/5 bit Approximation aus Lookup-Table und Interpolation mit vollem Takt zusätzliche Befehle für Newton-Iteration quadratische Konvergenz: zwei Iterationsschritte für volle Genauigkeit wenig Hardwareaufwand voll in Pipeline integriert, maximaler Durchsatz 3D Now! Apfelmännchen unction IterPasD (I,R :Double; Grenze, Tiefe :Paratyp):Paratyp; var A,B,C:double; Begin Count:= ; A:=; B:=; Repeat C:= SQR(A) - SQR(B) + R; B:= 2*A*B + I; A:= C; INC (Count); Until (abs (A) >Grenze) or (Abs (B) > Grenze) or (Count=Tiefe); IterpasD:=Count; nd;

14 PC-Technologie ISS 69 3D Now! Apfelmännchen ; Quadriere (A + jb)**2 = A**2 - B**2 + j 2*A*B ; ntry MM ;A B ; MM ; - ; MM2 ;R I ; loop: MOVQ MM3,MM ;MM3=A B MOVQ MM4,MM ; oh weh PSLLQ MM3,32 ; das Vertauschen ist PSRLQ MM4,32 ; sehr mühsam... POR MM3,MM4 ;MM3=B A PMUL MM3,MM ;MM3= A*B A*B PMUL MM,MM ;MM= A**2 B**2 PMUL MM,MM ;MM= A**2 -B**2 PACC MM,MM3 ;MM= A**2 - B**2 A*B+A*B PADD MM,MM2 ;MM= A**2 - B**2 + R 2*A*B+I ; = A(n+) = B(n+) P2ID MM4,MM ;ia = INT(A) ib = Int(B) MOVQ ia,mm4 ; Sieh nach, ob A oder B > GRNZ ist... dec CX ; iteration counter jnz loop ISS: Homepage / Literatur

15 7 ISS PC-Technologie ISS: ntwurfsentscheidungen Markt fordert 3D mindestens doppelte P-Performance notwendig 2-fach oder 4-fach SIMD? 28-bit machbar (P bereits 8-bit) bereits 2 64-bit ALUs auf dem Prozessor 4-fach SIMD "already register-starved IA32 architecture" neue Register, 28-bit erfordert OS-Unterstützung 7 neue Befehle sowohl "packed" als auch "scalar ISS instructions" ISS: "Streaming" typisch für Medienverarbeitung: hohe Datenmenge / Datenrate geringe Lokalität: viele Daten (Pixel) werden nur x benötigt Cache-"Pollution" herkömmliche Cache-Strategien nutzlos ALUs müssen auf die Daten warten Performance leidet (extrem) Streaming: GHz, 8x SIMD, nsec Speicher: 8 OPs / Zugriff Cache-Nutzung anpassen Prefetch: Daten rechtzeitig anfordern Speicherlatenz fast perfekt versteckt (für Media-Apps.)

16 PC-Technologie ISS 7 ISS: Register 27 ISS xmm P/MMX 79 fp fp7 xmm7 SIMD: Scalar: src op op src2 dst ISS: Register Viewing Tool Softwareentwicklung für MMX / ISS / 3Dnow: nur rudimentäre Compiler- und Tool-Unterstützung oft handoptimierter Assembler wg. bester Performance

17 72 ISS PC-Technologie ISS: Programmierung Intel VTune Performance nhancement nvironment: optimierender Compiler mit ISS-Unterstützung: Intrinsics Vector Class Library Vectorization Intel Performance Library Suite C-unktionen, Compiler inlining Klassen, inlining durch Compiler optimierender Compiler erfordert 6-Byte Alignment aller Datentypen umfangreiche Profiling-Tools sehr teuer ISS: Programmierung mit "Intrinsics" float xa[siz], xb[siz], xc[siz]; float q; void do_c_triad() { for( int j=; j < SIZ; j++ ) { xa[j] = xb[j] + q*xc[j]; } } ISS-Programmierung mit "Intrinsics" und VTUN: #define VCTOR_SIZ 4 declspec(align(6)) float xa[siz], xb[siz], xc[siz]; float q; void do_intrin_triad() { m28 tmp, tmp; } tmp = _mm_set_ps(q); for( int j=; j < SIZ; j+= VCTOR_SIZ) { tmp = mm_mul_ps( *(( m28 *) &xc[j]), tmp ); *( m28 *) &xa[j] = _mm_add_ps(tmp, *(( m28 *) &xb[j]; }

18 PC-Technologie ISS 73 ISS: AoS / SoA Array of Structures: Daten lokal Anordnung schlecht für SIMD struct { float A, B, C; } AoS_data[]; Structure of Arrays: Anordnung optimal für SIMD aber im Speicher "verstreut" struct { float A[],B[],C[]; } SoA_data; Hybrid SoA - SIMD struct { float A[8],B[8],C[8]; } Hybrid_data[25]; ISS2: mux-befehl (IA64)

19 74 ISS PC-Technologie ISS2: psad-befehl (IA64) ISS2: pavg2-befehl (IA64)

Einführung in die Programmierung mit C++

Einführung in die Programmierung mit C++ Seite 1 Einführung in die Programmierung mit C Teil IV - Weiterführende Themen 16. SIMD Programmierung Was bedeutet SIMD Seite SIMD Single-Instruction, Multiple-Data, also eine Instruktion, mehrere Daten

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

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

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18.

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18. Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 9, Dienstag 18. Dezember 2012 (Performance Tuning, Profiling, Maschinencode) Prof. Dr.

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

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

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

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

Mehr

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

Datenpfad einer einfachen MIPS CPU

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

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

TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl

Mehr

Der Toy Rechner Ein einfacher Mikrorechner

Der 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

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

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

10. Die Adressierungsarten des MSP 430

10. Die Adressierungsarten des MSP 430 10. Die Adressierungsarten 10.1 Übersicht über die Adressierungsarten 10.2 -Operanden 10.3 Indexregister mit Distanz 10.4 Symbolische (relativ zum ) 10.5 Absolute 10.6 Indirekte 10.7 Indirekte Adressierung

Mehr

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle

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

Arbeitsfolien - Teil 4 CISC und RISC

Arbeitsfolien - Teil 4 CISC und RISC Vorlesung Informationstechnische Systeme zur Signal- und Wissensverarbeitung PD Dr.-Ing. Gerhard Staude Arbeitsfolien - Teil 4 CISC und RISC Institut für Informationstechnik Fakultät für Elektrotechnik

Mehr

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

PC-Technologie. Norman Hendrich. Universität Hamburg Fachbereich Informatik Vogt-Kölln-Str. 30 D 22 527 Hamburg hendrich@informatik.uni-hamburg.

PC-Technologie. Norman Hendrich. Universität Hamburg Fachbereich Informatik Vogt-Kölln-Str. 30 D 22 527 Hamburg hendrich@informatik.uni-hamburg. PC-Technologie Norman Hendrich Universität Hamburg Fachbereich Informatik Vogt-Kölln-Str. 30 D 22 527 Hamburg hendrich@informatik.uni-hamburg.de . INHALTSVERZEICHNIS Inhaltsverzeichnis i Allgemeines 1

Mehr

Neue Prozessor-Architekturen für Desktop-PC

Neue Prozessor-Architekturen für Desktop-PC Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/

Mehr

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

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

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

CPU. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU 1/62 2012-02-29 CPU Übersicht: Pipeline-Aufbau Pipeline- Hazards CPU

Mehr

Karlsruher Institut für Technologie

Karlsruher Institut für Technologie Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt

Mehr

Klausur zur Mikroprozessortechnik

Klausur zur Mikroprozessortechnik Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2

Mehr

Daniel Betz Wintersemester 2011/12

Daniel Betz Wintersemester 2011/12 Daniel Betz Wintersemester 2011/12 Digitally signed by daniel.betz@daniel-betz.com Date: 2011.12.04 17:24:40 +01'00' Insgesamt 16 Register von je 16 Bit (=WORD) Breite Untere 8 Register auch als 2 Register

Mehr

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

CPU 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

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

Institut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04.

Institut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04. Kontrollstrukturen Informatik II SS 2004 Teil 4: Assembler Programmierung Sprünge (bedingte und unbedingte) If-then-else, Case Loop (n Durchläufe) While (Abbruchbedingung) Institut für Informatik Prof.

Mehr

Modul IP7: Rechnerstrukturen

Modul IP7: Rechnerstrukturen 64-040 Modul IP7: 15 Performance Befehlspipeline und Parallelverarbeitung Norman Hendrich Universität Hamburg MIN Fakultät, Department Informatik Vogt-Kölln-Str. 30, D-22527 Hamburg hendrich@informatik.uni-hamburg.de

Mehr

Vorlesung 5: Interrupts

Vorlesung 5: Interrupts Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorlesung 5: Interrupts Peter B. Ladkin Kommunikation über den Bus CPU läuft zu einer Taktfrequenz I/O Geräte laufen zu anderen

Mehr

Assembler - Einleitung

Assembler - Einleitung Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache

Mehr

Computergrundlagen Geschichte des Computers

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

Mehr

Evolution des x86 Befehlssatzes und seiner Erweiterungen

Evolution des x86 Befehlssatzes und seiner Erweiterungen Technische Universität Dresden Evolution des x86 Befehlssatzes und seiner Erweiterungen Peter Ebert Dresden, 15.07.2009 Einführung Überblick & Historie Konkurrierende Befehlssatzarchitekture n Befehlsarten

Mehr

Auch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)

Auch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion) Auch hier wieder Aus voriger Wahrheitstabelle lässt sich mechanisch eine kombinatorische Schaltung generieren, die wir im Folgenden mit dem Control Symbol abstrakt darstellen. Instruction[31 26] (also:

Mehr

Computational Biology: Bioelektromagnetismus und Biomechanik

Computational Biology: Bioelektromagnetismus und Biomechanik Computational Biology: Bioelektromagnetismus und Biomechanik Implementierung Gliederung Wiederholung: Biomechanik III Statische Elastomechanik Finite Elemente Diskretisierung Finite Differenzen Diskretisierung

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

Rechnergrundlagen SS 2007. 11. Vorlesung

Rechnergrundlagen SS 2007. 11. Vorlesung Rechnergrundlagen SS 2007 11. Vorlesung Inhalt Evaluation der Lehre (Auswertung) Synchroner/asynchroner Systembus Kontrollfluss/Datenfluss RISC vs. CISC Speicherhierarchie Cache Lesen Schreiben Überschreiben

Mehr

Einführung in die Programmiersprache C und in den C166-Compiler

Einführung in die Programmiersprache C und in den C166-Compiler Einführung in die Programmiersprache C und in den C166-Compiler Die vorliegenden Unterlagen sollen einen kurzen Überblick über die Software-Entwicklung in C geben. Diese Unterlagen erheben keinen Anspruch

Mehr

11: Echtzeitbetriebssystem ucos-ii

11: Echtzeitbetriebssystem ucos-ii 11: Echtzeitbetriebssystem ucos-ii Sie lernen anhand aufeinander aufbauender Übungen, welche Möglichkeiten ein Echtzeitbetriebssystem wie das ucosii bietet und wie sich damit MC-Applikationen realisieren

Mehr

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

Mehr

Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.)

Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.) Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.) von Martin Stöcker Motivation Geschwindigkeit der Prozessoren verdoppelt sich alle 18 Monate (Moore s Law) Geschwindigkeit des Speichers

Mehr

Assembler - Adressierungsarten

Assembler - Adressierungsarten Assembler - Adressierungsarten Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Adressierungsarten 1/31 2008-04-01

Mehr

Zusammenfassung der Assemblerbefehle des 8051

Zusammenfassung der Assemblerbefehle des 8051 Zusammenfassung der Assemblerbefehle des 8051 Seite 1 von 5 Befehl Bezeichnung Syntax Wirkung / Beispiel Befehle zum Datentransfer MOV Move MOV [Ziel],[Quelle] MOV P1,P3 Kopiert den Inhalt von P3 nach

Mehr

Intel Cluster Studio. Michael Burger FG Scientific Computing TU Darmstadt michael.burger@sc.tu-darmstadt.de

Intel Cluster Studio. Michael Burger FG Scientific Computing TU Darmstadt michael.burger@sc.tu-darmstadt.de Intel Cluster Studio Michael Burger FG Scientific Computing TU Darmstadt michael.burger@sc.tu-darmstadt.de 19.03.13 FB Computer Science Scientific Computing Michael Burger 1 / 30 Agenda Was ist das Intel

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

Was ist die Performance Ratio?

Was ist die Performance Ratio? Was ist die Performance Ratio? Wie eben gezeigt wäre für k Pipeline Stufen und eine große Zahl an ausgeführten Instruktionen die Performance Ratio gleich k, wenn jede Pipeline Stufe dieselbe Zeit beanspruchen

Mehr

Bekannte Druckfehler im Buch Embedded Controller Eine Einführung in Hard- und Software

Bekannte Druckfehler im Buch Embedded Controller Eine Einführung in Hard- und Software Bekannte Druckfehler im Buch Embedded Controller Eine Einführung in Hard- und Software Stand. September Seite 9 Bild. Am Ausgang des Multiplexers fehlt ein D, um ihn als Datenausgang zu kennzeichnen. Seite

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

Vorlesung Rechnerarchitektur. Einführung

Vorlesung 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

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

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

Vorlesung 3: Verschiedenes

Vorlesung 3: Verschiedenes Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorlesung 3: Verschiedenes Peter B. Ladkin Vorlesung 3 - Inhalt Busarchitektur Virtuelle Maschine 2 Busarchitektur - das

Mehr

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9 Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,

Mehr

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 9.5, Asura Pro 9.5, Garda 5.0...2 PlugBALANCEin 6.5, PlugCROPin 6.5, PlugFITin 6.5, PlugRECOMPOSEin 6.5, PlugSPOTin 6.5,...2 PlugTEXTin 6.5, PlugINKSAVEin 6.5, PlugWEBin

Mehr

Die Sandy-Bridge Architektur

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

Mehr

Cell Broadband Engine

Cell Broadband Engine Cell Broadband Engine 21.March 2006 Benjamin Keck Outline Why Cell?!? Application Areas Architectural Overview SPU Programming Model Programming on the PPE C/C++ Intrinsics The Cell Supercomputer on a

Mehr

Datenstrukturen, Alignment Stack Prozeduraufruf, Parameterübergabe und -rückgabe (Calling Conventions) Leaf procedures

Datenstrukturen, Alignment Stack Prozeduraufruf, Parameterübergabe und -rückgabe (Calling Conventions) Leaf procedures Vorbesprechung U8 Datenstrukturen, Alignment Stack Prozeduraufruf, Parameterübergabe und -rückgabe (Calling Conventions) Leaf procedures Basistypen Alignment der Basistypen auf deren Grösse Grössen (abhängig

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

Arithmetische und Logische Einheit (ALU)

Arithmetische 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

Mehr

Frank Kuchta Markus Rüger

Frank Kuchta Markus Rüger Leistungsvergleich mobiler Intel-Systeme single vs. dual core Frank Kuchta Markus Rüger Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Inhalt Motivation

Mehr

Profiling und Coverage mit GNU und Bare Embedded Systems

Profiling und Coverage mit GNU und Bare Embedded Systems Profiling und Coverage mit GNU und Bare Embedded Systems Life is too short for bad tools! Prof. Erich Styger erich.styger@hslu.ch +41 41 349 33 01 Coverage und Profiling Coverage: Analyse der Testabdeckung

Mehr

7a. Rechnerarchitektur und Grundzüge der Assemblerprogrammierung

7a. Rechnerarchitektur und Grundzüge der Assemblerprogrammierung 7a. Rechnerarchitektur und Grundzüge der Assemblerprogrammierung Inhalt: Schichtenmodell x86-architektur und x86-assemblerprogrammierung Assemblersprache und Einbindung in C 1 Schichtenmodell Strukturierung

Mehr

Rechnern netze und Organisatio on

Rechnern netze und Organisatio on Rechnernetze und Organisation Konstruktionsübung SS2009 Vorbesprechung 1 Übersicht Einleitung Motivation Administratives i ti Generelles zur KU Assignment A1 Vorbereitung Johannes Wolkerstorfer Vorstellung

Mehr

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Sicheres C in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies

Mehr

Grundlagen der Parallelisierung

Grundlagen der Parallelisierung Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung

Mehr

Outline. Cell Broadband Engine. Application Areas. The Cell

Outline. Cell Broadband Engine. Application Areas. The Cell Outline 21.March 2006 Benjamin Keck Why Cell?!? Application Areas Architectural Overview Programming Model Programming on the PPE C/C++ Intrinsics 1 2 The Cell Supercomputer on a chip Multi-Core Microprocessor

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

IT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1

IT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1 IT für Führungskräfte Zentraleinheiten 11.04.2002 Gruppe 2 - CPU 1 CPU DAS TEAM CPU heißt Central Processing Unit! Björn Heppner (Folien 1-4, 15-20, Rollenspielpräsentation 1-4) Harald Grabner (Folien

Mehr

Heute nur MIPS-Praxis (4 Aufgaben)

Heute nur MIPS-Praxis (4 Aufgaben) Themen heute Heute nur MIPS-Praxis (4 Aufgaben) Hinweis: Diese Aufgaben findet ihr auf den Übungsblättern zu den Tutorien (bei Aufgabe 4 wurde eine Teilaufgabe und im Tutorium #6 bereits geklärte Wissensfragen

Mehr

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen

Mehr

Neues vom STRIP Forth-Prozessor

Neues vom STRIP Forth-Prozessor Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft April 2013 in Garmisch-Partenkirchen Willi Stricker 1 STRIP Forth-Prozessor STRIP32 32 Bit-Version Eigenschaften: Die 32-Bit-Version ist nahezu

Mehr

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 9.6, Asura Pro 9.6, Garda 5.6...2 PlugBALANCEin 6.6, PlugCROPin 6.6, PlugFITin 6.6, PlugRECOMPOSEin 6.6, PlugSPOTin 6.6,...2 PlugTEXTin 6.6, PlugINKSAVEin 6.6, PlugWEBin

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

Instruktionen pro Takt

Instruktionen pro Takt (c) Peter Sturm, Universität Trier (u.a.) 1 Instruktionen pro Takt 500 MIPS (Dhrystone) Taktfrequenz 450 400 350 300 250 200 150 100 50 0 8086 80286 80386 80486 Pentium Pentium Pro Die-Größen: Intel Vorlesung

Mehr

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

Grundlagen der Rechnerarchitektur

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

Mehr

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

CHARON-AXP Alpha Hardwarevirtualisierung

CHARON-AXP Alpha Hardwarevirtualisierung Alpha virtualisierung Nutzung von Softwareinvestitionen auf neuer plattform Jörg Streit, Reinhard Galler Inhalt: Alpha überblick Wozu Alpha? Prinzip der Produkte Performance Cluster Support Zusammenfassung

Mehr

Einführung in die Informatik

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

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Rechnerarchitektur und Betriebssysteme (CS201): Multiprogramming und -Tasking Flynn-Klassifikation, ILP, VLIW

Rechnerarchitektur und Betriebssysteme (CS201): Multiprogramming und -Tasking Flynn-Klassifikation, ILP, VLIW Rechnerarchitektur und Betriebssysteme (CS201): Multiprogramming und -Tasking Flynn-Klassifikation, ILP, VLIW 26. Oktober 2012 Prof. Dr. Christian Tschudin Departement Informatik, Universität Basel Uebersicht

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 3 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Der MS-DOS Standardmonitor und Debugger DEBUG

Der MS-DOS Standardmonitor und Debugger DEBUG Einfache Assemblerprogrammierung mit DOS-DEBUG 1/7 Auf Personalcomputern kann in der Regel leicht eine einfache Umgebung zur Software-Entwicklung für die Intel Rechnerfamilie 80x86 eingerichtet werden.

Mehr

Der I²C-Bus. Vorstellung des Inter-Integrated Circuit -Bus. Aufbau und Funktionsweise. Beispiel PortExpander am Arduino

Der I²C-Bus. Vorstellung des Inter-Integrated Circuit -Bus. Aufbau und Funktionsweise. Beispiel PortExpander am Arduino Der I²C-Bus Vorstellung des Inter-Integrated Circuit -Bus Aufbau und Funktionsweise Beispiel PortExpander am Arduino Weitere Anwendungsmöglichkeiten Was ist der I²C-Bus entwickelt von Philips Anfang der

Mehr

Einführung in (Intel) 80x86 Assembler. Einführung in (Intel) 80x86 Assembler Wintersemester 2008/09 1 / 26

Einführung in (Intel) 80x86 Assembler. Einführung in (Intel) 80x86 Assembler Wintersemester 2008/09 1 / 26 Einführung in (Intel) 80x86 Assembler Einführung in (Intel) 80x86 Assembler Wintersemester 2008/09 1 / 26 1 Geschichte 2 Programmiermodell 3 Befehlssatz 4 Konventionen 5 Beispiele 6 SSE 7 Literatur Einführung

Mehr

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -

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

Mehr

Hinweise 80x86-Architektur

Hinweise 80x86-Architektur Hinweise 80x86-Architektur Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Hinweise 80x86-Architektur

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

Teil Rechnerarchitekturen M07. Multiprogramming und Tasking, Flynn-Klassifikation, Parallelismus. Corinna Schmitt

Teil Rechnerarchitekturen M07. Multiprogramming und Tasking, Flynn-Klassifikation, Parallelismus. Corinna Schmitt Teil Rechnerarchitekturen M07 Multiprogramming und Tasking, Flynn-Klassifikation, Parallelismus Corinna Schmitt corinna.schmitt@unibas.ch Multiprogrammierung und -Tasking 2015 Corinna Schmitt Teil Rechnerarchitekturen

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

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

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

AMD 3Dnow! Bernhard Penz, Ronald Sowa. Institut für Informatik. AMD 3DNow! Leiter: o. Univ.-Prof. DI Dr. Hermann Hellwagner

AMD 3Dnow! Bernhard Penz, Ronald Sowa. Institut für Informatik. AMD 3DNow! Leiter: o. Univ.-Prof. DI Dr. Hermann Hellwagner Institut für Informatik Seminar aus praktischer Informatik AMD 3DNow! Leiter: o. Univ.-Prof. DI Dr. Hermann Hellwagner Autoren: Bernhard Penz, Ronald Sowa Termin: 4. April 2000 Seminar aus Praktischer

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

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 10, Asura Pro 10, Garda 10...2 PlugBALANCEin 10, PlugCROPin 10, PlugFITin 10, PlugRECOMPOSEin10, PlugSPOTin 10,...2 PlugTEXTin 10, PlugINKSAVEin 10, PlugWEBin 10...2

Mehr

Beispiel Parallelisierung 2D Laplace. Lagrange Formulierung/Hyperelastisches Material. Finite Differenzen Diskretisierung

Beispiel Parallelisierung 2D Laplace. Lagrange Formulierung/Hyperelastisches Material. Finite Differenzen Diskretisierung Simulation von physikalischen Feldern im menschlichen Körper Implementierung Gliederung Gliederung Wiederholung: Biomechanik III Statische elastomechanische Probleme Finite Elemente Diskretisierung Finite

Mehr

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 10.2, Asura Pro 10.2,Garda 10.2...2 PlugBALANCEin 10.2, PlugCROPin 10.2, PlugFITin 10.2, PlugRECOMPOSEin 10.2, PlugSPOTin 10.2,...2 PlugTEXTin 10.2, PlugINKSAVEin 10.2,

Mehr

INFORMATIK Oberstufe. Funktionsweise eines Rechners

INFORMATIK Oberstufe. Funktionsweise eines Rechners INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den

Mehr