7b. Rechnerarchitektur

Größe: px
Ab Seite anzeigen:

Download "7b. Rechnerarchitektur"

Transkript

1 7b. Rechnerarchitektur Inhalt: Schichtenmodell Rechnerarchitektur und Techniken innerhalb der Mikroprozessoren 1

2 Schichtenmodell Schnittstelle zu Level 2 entspricht einer Rechnerarchitektur Schicht Level 1 wird im Allgemeinen zur Hardware gerechnet, obwohl sie auch Mikroprogramme (Firmware) enthalten kann. Heute aber meist fest verdrahtete Ablaufsteuerungen (Hardware). Einzelne Schichten sind intern selbst wieder in Schichten unterteilt. Systementwurf muss auch Wechselwirkung zwischen Schichten berücksichtigen. 2

3 Konvertierung zwischen Schichten (3) Level3: Hybride Schicht: Einige Befehle von Level3 (z. B. ADD) sind identisch mit Level 2. Dazu kommen Betriebssystemaufrufe (system calls) wie open(), write(),gettimeofday() etc., die von L3 interpretiert werden. Level2: Die Mikroarchitekur auf Level1 interpretiert die Maschinensprache (per Mikroprogramm oder festverdrahtet). Level1: Die Mikro-Operationen bzw. Steuerungen zur Ausführung der Befehle werden durch die digitalen Schaltkreise aus Schicht Level0 interpretiert ( Hardware-Interpreter ). 3

4 Konvertierung zwischen Schichten (4) Level 5 Level 4 Level 3 Level 2 Level 1 Level 0 Problem-oriented language Translation (compiler) Assembly language Translation (assembler) Operating system machine Partial interpretation (operating system) Instruction set architecture Interpretation (microprogram) or direct execution Microarchitecture Interpretation (Hardware) Digital logic Schichtenmodell kann auch als eine Hierarchie immer abstrakter virtueller Maschinen aufgefasst werden. Level5: Eine höhere Programmiersprache wird durch Compilation oder Interpretation auf die Schnittstelle zu Level4 konvertiert. Level5 stellt eine virtuelle Maschine dar. Level4 stellt eine virtuelle Maschine dar, die dem Benutzer als Schnittstelle Assemblerbefehle plus Systemaufrufe anbietet. Level4: Assembler auf Schicht Level4 übersetzt ein Assemblerprogramm in die erweiterte Maschinensprache (inkl. Systemaufrufe). Einfache Form von Compilation. 4

5 Implementierung neuer Schichten Beispiel: Spracherweiterung durch Prozeduren in C. Hybride Schicht: Schnittstellen der alten Schicht bleiben weiter sichtbar. Modulkonzept (Funktionen und Bibliotheken) erlaubt Einführung einer echten Schicht (tiefere Schnittstellen werden in der Implementierung verborgen). 5

6 Funktionen in Hardware oder Software? 6

7 Funktionen in Hardware oder Software? Hardware (Entwicklung eines Mikroprozessors): schnell, aber unflexibel, teuer Software: langsamer, leicht änderbar, billiger Beispiel: Implementierung eines neuen Datentyps mit zugehörigen Operationen als Speicherstruktur mit Funktionen (Softwarebibilothek) als Datentyp der Programmiersprache (Übersetzer) als Maschinendatentyp (Hardware) 7

8 Funktionen in Hardware oder Software? Vergleich: Realisierungsvarianten von Funktionen y[ i] w1 x[ i] w2 x[ i 1] w3 x[ i 2] w4 x[ i 3] Software: Befehlsfolge auf universal- Prozessor (links) Register x1 bis x3 werden nach x2 bis x4 umkopiert Adressrechnung für x[i] Register x1 (x[i]) wird aus Speicher geladen Multiplikationen und Additionen Adressrechnung für y[i] Speichern von y[i] Zugehörige Strukturen und Datenpfad rechts dargestellt 8

9 Funktionen in Hardware oder Software? y[ i] w1 x[ i] w 2 x[ i 1] w3 x[ i 2] w 4 x[ i 3] Hardware: Funktionsspezifische Realisierung z.b. durch FPGA 9

10 Rechnerarchitektur Rechnerarchitektur (RA) nach Amdahl/Blaauw/Brooks, 1964 (Architekten des IBM System/360): The term architecture is used here to describe the attributes of a system as seen by the programmer, i. e. the conceptual structure and functional behavior, as distinct from the organization and data flow and control, the logical design and physical implementation. Architektur: Implementierung: Realisierung: Äußeres funktionelles Erscheinungsbild des Rechners, wie es der unmittelbare Benutzer (Maschinenprogrammierer) sieht. Logische Struktur (Organisation), mehrere Implementierungen der gleichen Architektur möglich. Konkrete Version einer Implementierung in Hardware und evtl. Firmware (mehrere Realisierungen einer Implementierung möglich). 10

11 Rechnerarchitektur Als Rechnerarchitektur verstanden: Äußeres funktionelles Erscheinungsbild Anzahl der Prozessorregister, Registerbreite (32 oder 64 Bit) und Einschränkungen für deren Benutzung Liste der Befehle eines Prozessors Adressierungsarten, d.h. Art wie Daten von Befehlen adressiert werden können 11

12 Rechnerarchitektur Als Rechnerorganisation verstanden, z.t. auch als Rechnerarchitektur: Implementierung Art und Anordnung von Hardwarebausteinen, die Funktionen der äußeren Sicht realisieren Beispiel: Implementierung eines einfachen Prozessors: 12

13 Rechnerarchitektur Nicht zu Rechnerarchitektur gezählt: Konkrete Version einer Implementierung Taktfrequenz eines Prozessors Strukturbreite der Halbleiterstrukturen (Beispiel: CellBE PS3 mit 65nm und CellBE in PS3Slim mit 45nm) Cache-Größe 13

14 Beispiel für Rechnerarchitektur (1) Feldrechnerarchitektur zur datenparallelen Befehlsverarbeitung (z.b. SIMD Befehlssatzerweiterungen, oder GPUs) Leitwerk u. skalare Befehle PE 1 ADD MUL p Rechenwerke (PEs).... PE 2 PE p-1 PE p Kontrolleinheit Programmspeicher Privatspeicher Verbindungsnetzwerk 14

15 Beispiel für Rechnerarchitektur (2) Prozessorpipeline zur schnellen Befehlsverarbeitung S4 ALU Befehlspipeline ALU S1 S2 S3 S6 Instruction fetch unit Instruction decode unit Oberand fetch unit LOAD Write back unit Phasenpipeline STORE Floating point 15

16 Beschleunigung des Speicherzugriffs (1) Von-Neumann-Architektur (gemeinsamer Befehls- und Datenspeicher) Instruction and Data memory Universell, aber Flaschenhals Harvard-Architektur (getrennter Befehls- und Datenspeicher) Instruction memory CPU VT: Befehle und Daten können gleichzeitig geholt werden. Data memory NT: Speicher weniger flexibel nutzbar Speicherverschränkung (Memory Interleaving) Einteilung des Speichers in mehrere Module, aus denen gleichzeitig gelesen bzw. geschrieben werden kann. Verschränkung der unteren Adressbits erlaubt gleichzeitigen Zugriff auf konsekutive Elemente in Modulen 0, 1,... 2 m

17 Beschleunigung des Speicherzugriffs (2) Blockschaltbild eines verschränkten Speichers: n - m Address in module m Module Decoder 0 2 m -1 Module 2 m -1 Module 1 Module 0 Interleaving-Faktor: 2 m 17

18 Beschleunigung des Speicherzugriffs (3) Module 0 Module 2 m - 1 n - m high-order bits Zeitdiagramm 2 m OUT. Data buffer Data buffer Multiplexer m low order Bits n - m high-order bits Access 1 Access 2 Access 1 Access 2 M 0 M 1... M 2 m 1 0 Transfer data of access 1 M Single-word bus Bei entsprechend schnellem Bus und Zugriff auf konsekutive Speicherzellen (z. B. Vektoren) erscheint der Speicher um den Interleaving-Faktor schneller. Typische Interleaving- Faktoren: 4 64 Interleaving oft kombiniert mit dem Blockzugriff von Cache-Speichern. Time 0 t 2t 18

19 Cache-Speicher (1) Lokalitätsprinzip: Lokalität ist der Umstand, dass die innerhalb eines kurzen Zeitintervalls eintretenden Speicherreferenzen die Tendenz aufweisen, sich nur auf einen kleinen Teil des gesamten Speicherraums zu beziehen. (10/90) Regel: zu 90% der Programmlaufzeit wird auf 10% des Speicherbereichs eines Prozesses zugegriffen Cache: ein schneller Zwischenspeicher zwischen CPU und Hauptspeicher; um ein Vielfaches schneller als Hauptspeicher durch engere Anbindung an Verarbeitungseinheiten und durch bessere Technologie wesentlich kleiner als Hauptspeicher 19

20 Cache-Speicher (1) Prinzip (Cache für physikalische Adressen): Platzierung des Caches im Speicherpfad Treffer (Cache Hit): Auslesen bzw. Einschreiben der Daten kein Treffer (Miss): Nachladen aus Hauptspeicher 20

21 Meist Einteilung in Blöcke (Linien) à mehreren Worten (Cache Lines), d. h. Aufteilung der Adressen in Linienadresse (Tag) und Adresse innerhalb der Linie. Adresse:: MSB Cache-Speicher (2) Tag Bereich für Platzierung bzgl. Cache-Teilbereiche Adresse innerh. Linie LSB Reale Linienadresse (Requested Tag) wird mittels assoziativem Speicher mit Tags der Linien im Cache verglichen. Tag 0 Tag memory Requested tag Tag 1 Line 0 Line 1 Data memory Tag N Line N Miss Data 21

22 Cache-Speicher (3) Aufgrund der Lokalität (räumlich und zeitlich) von Programmen sehr hohe Trefferraten (95-98 %). Oft Kombination mit verschränktem Speicher (stets Transfer ganzer Blöcke). Heute meist ausgefeilte Cache-Hierarchien, zum Beispiel: Level 1-Cache (on chip): Level 2-Cache (extern o. on chip): ( KByte) (512 KByte...8 MByte) Level 1-Caches oft in Daten- und Befehlscaches getrennt (Split-Caches, Harvard-Architektur). Teilweise auch Level 3-Caches. Caches konnten im physikalischen Adressraum (hinter der MMU) oder im logischen Adressraum (vor der MMU) angeordnet sein. 22

23 Ablauf eines Speicherzugriffs Real address Search cache tag memory Cache hit NO YES Update line status Get line from cache Send real address to main memory Select cache entry for replacement Receive line Select requested bytes Store line in cache Output to CPU 23

24 Platzierungsstrategien Wo im Cache ist welcher Teil der Hauptspeicherdaten (Cache Linie) unterzubringen? Ort ist nicht fest vorgegeben, da die Hauptspeicherdaten zusammen mit ihrer Adresse im Cache abgelegt werden. Voll-assoziativer Cache Dennoch ist Ortsvorgabe/ bzw. Einschränkung der möglichen Orte sinnvoll: Direkt abgebildeter Cache Mengenassoziativer Cache 24

25 Voll-assoziativer Cache (fully associative) Platzierungsstrategien (Placement Policies) (Beispiel: 1 MByte Hauptspeicher, 16 KByte Cache) Tag Cache Data Line 0 Line 1.. Line 1023 Main memory Line 0 Line 1. Line Line Jede Cache-Linie kann jede beliebige Linie aus dem Hauptspeicher aufnehmen. Da Reihenfolge der Linien im Cache beliebig, ist ein Assoziativspeicher für die Tags erforderlich. Hohe Trefferrate, aber hoher Aufwand: entweder zusätzlicher Zeitbedarf durch assoziative Suche oder hohe Anzahl von Komparatoren 25

26 Direkt abgebildeter Cache (direct mapped) Tag Cache Data Line 0 Line 1 Main memory Line 0 Line 1 Line 2 Jeder Cache-Eintrag i kann nur Linien mit Adressen A aufnehmen, für die gilt A mod M = i ; (Restklassen-Einteilung).. Line 1022 Line Line 1023 Line 1024 Line Line Line Line Line M: Anzahl Linien pro Cache Kein assoziativer Speicher erforderlich: Mittels Adressteil Line wird der zugehörige Eintrag im Cache direkt ausgewählt. Stimmt Tag überein, so liegt ein Treffer (Hit) vor. Vorteile: Leicht implementierbar Aufwandsarmer Zugriff, da keine assoziative Suche erforderlich ist Nachteil: Geringe Trefferraten wenn Speicherzellen aus gleicher Restklasse benötigt werden. 26

27 Mengen-assoziativer Cache (set-associative) Cache Main memory Tag Data Line 0 Line 0 Cache wird in S Mengen eingeteilt. Set 255 Set 0 Line 1 Line 2 Line 3 Line 4. Line 1022 Line 1022 Line 1022 Line Line 255 Line Line Line Wie bei direkter Abbildung Zuordnung der Adressen A mit A mod S = i zu Menge i. Da L = M/S Linien pro Menge vorhanden, assoziative Suche mittels Tag, ob gewünschte Linie im Cache liegt. Spezialfälle: S = 1: voll-assoziativer Cache L = 1: direkt abgebildeter Cache M: Anzahl Linien pro Cache A: Adresse Line Guter Kompromiss, in der Praxis häufig eingesetzt. 27

28 Cache Ersetzungsstrategien Ersetzungsstrategien (Replacement Policies) Bei (voll-/mengen-)assoziativen Caches muss entschieden werden, welche Cache-Linie beim Einlagern einer neuen Linie ausgelagert wird: Häufigste Strategien: - Random: Auszulagernde Linie wird zufällig ausgewählt. - LRU (Least Recently Used): Diejenige Linie wird ausgelagert, die am längsten nicht referenziert worden ist. LRU ist schwieriger zu implementieren (zusätzlicher Zähler je Cache Linie). In einer Studie wurde festgestellt. Dass bei einem 2-fach assoziativen Cache die Hit Rate nur 1.1 mal höher ist als für Random. Für große Caches und damit kleine Miss Rate ist der Unterschied nur noch gering. 28

29 Cache Rückspeicherstrategien Behandlung von Schreibzugriffen: Write-Through: Rückspeichern bei jedem Schreiben auf den Cache (Konsistenz bleibt erhalten!) Write-Back (Copy Back):Rückspeichern nur bei Ersetzen einer Cache-Linie (zeitweise Inkonsistenz zwischen Cache und Hauptspeicher) Vorteile von Write-Back: - Prozessor kann mit Cache-Rate schreiben (bei Write Hit), nicht nur mit Hauptspeicher-Rate. - Mehrfaches Schreiben in die gleiche Linie erfordert nur einmal das Rückschreiben in den Hauptspeicher. - Beim Rückspeichern der Linie kann von Techniken zur Erhöhung der Speicherbandbreite wie z.b. Speicherverschränkung gemacht werden. 29

30 Cache Rückspeicherstrategien Vorteile von Write-Through: - Write-Through ist einfacher zu implementieren. Zur Erhöhung der Geschwindigkeit kann ein Write Buffer eingesetzt werden, d. h. das langsame Speichern in den Hauptspeicher wird von einem Puffer aus abgewickelt, während der Prozessor nach einem Write Hit bereits weiterläuft. - Konsistenz mit Hauptspeicher ist vorteilhaft, wenn auch andere Einheiten (z. B. I/O-Einheiten, andere Prozessoren) auf den Hauptspeicher zugreifen. Multiprozessoren und Cache-Konsistenz/Kohärenz 30

31 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) Byte offset Hit Tag 16 Index 12 2 Block offset Data V 16 bits Tag 128 bits Data 4K entries = Mux 32 31

32 Implementierung: Direkt abgebildeter Cache Funktionsweise des direkt-abgebildeten Caches: - Valid Flag (V) zeigt an, ob die Cache-Linie gültig ist. - Index-Feld (12 Bit) adressiert direkt die Cache-Linie. - Ausgelesenes Tag wird mit Tag-Feld der Adresse (obere 16 Bit) verglichen (bei Gleichheit: Cache Hit) Gewünschtes Wort innerhalb der Linie wird anhand des Block-Offsets mit einem Multiplexer (Mux) ausgewählt 32

33 Implementierung: Mengen-assoziativer Cache 4-fach assoziativer Cache von 4 KB mit 1-Wort-Linien (Adress- und Wortlänge 32 Bit, Byteadressierung) Index V Tag = Data 22 Address V Tag Data V Tag Data V Tag = = = 8 22 Data 32 L=4 Linien je Satz: deshalb 4-Wege assoziativ, oder 4- fach assoziativ S=256 Sätze (Sets, Mengen): Dann auch als 256- Mengen-assoziativ bezeichnet 4-to-1 M ultiplexer Hit Data 33

34 Implementierung: Mengen-assoziativer Cache Funktionsweise des 4-fach-assoziativen Caches: - Valid-Flag zur Anzeige einer gültigen Cache-Linie. - Set-Feld (8 Bit) adressiert parallel alle 4 Linien innerhalb der Menge. - Die 4 ausgelesenen Tags werden parallel mit dem Tag-Feld der Adresse (22 Bit) verglichen (bei Gleichheit Cache Hit). - Bei Cache Hit wird die gefundene Cache Linie mittels eines 4-zu-1-Multiplexers ausgewählt (alternative Implementierung über Chip Select der Speicherchips). Langsamer als direkt-abgebildeter Cache durch Tag-Vergleich vor Auswahl der Linie. 34

35 Geschwindigkeitsgewinn durch Caches Effektive Zugriffszeit mit Cache T s H T 1 H T1 T2 T1 H T2 1 1 T s: System-Zugriffszeit (mit Cache) T 1 : Cache-Zugriffszeit T 2 : Hauptspeicher-Zugriffszeit H: Cache-Trefferrate (Hit ratio) Zugriffseffizienz des Cache E c T T 1 s T 1 T H T T2 1 r 1 H 2 1 H T 1 1 mit r T 2 T 1 35

36 Cache-Zugriffseffizienz Cache-Zugriffseffizienz als Funktion der Trefferrate H bei verschiedenen relativen Cache-Geschwindigkeiten r T 2 T 1. 36

37 Virtueller Speicher (1) Grundprinzip der Umsetzung der virtuellen Adresse (VA) zu einer physikalischen Adresse (PA) VA msb Adressbereiche lsb Seiten-Nr Offset Seitentabelle physikalischer Speicher Kachel-Nr PA Kachel 37

38 Virtueller Speicher (2) Grundprinzip wird um Eingabe des Prozess-Id erweitert. Damit entstehen unter verschiedenen Prozessen unterschiedliche physikalische Adressen für gleiche virtuelle Adressen. Prozeß -ID VA msb Seiten-Nr Adressbereiche Seitentabelle für PID Kachel-Nr Offset lsb physikalischer Speicher PA Kachel 38

39 Virtueller Speicher (3) Typischerweise wird eine mehrstufige Umsetzung durch kaskadierte Seitentabellen vorgenommen. VA msb Tabellen-Nr Adressbereiche Seiten-Nr Offset lsb 1. Stufe Tab-Nr 2. Stufe Kachel-Nr physikalischer Speicher PA Kachel Vorteil: Für nicht benutzte Speicherbereiche können Tabellen auf 2. Stufe fehlen. Damit weniger Speicheraufwand für Verwaltung. 39

40 Beschleunigungstechniken für den Prozessor Verschiedene Techniken: Befehlsphasenpipelining Befehlspipelining VLIW SIMD 40

41 Befehlsphasenpipelinig (1) Zeitlich überlappte Ausführung von Befehlshol- und verschiedenen Ausführungsphasen: Instr. Fetch (IF), Instr. Decode (ID), Operand Fetch (OF), Execute (E), Store (S) Sequentiell I 3 I 2 I 1 3 Befehle in 15 Takten, 5 Takte je Befehl (CPI=5) IF ID OF EX S IF ID OF EX S IF ID OF EX S Befehlsphasenpipelining 3 Befehle in 7 Takten, 2.3 Takte je Befehl, 1 Takt je Befehl wenn Pipeline gleichmäßig gefüllt I 3 I 2 I 1 IF ID OF EX S IF ID OF EX S IF ID OF EX S Ziel: CPI=1. (CPI: Clocks per Instruction) 41

42 Befehlsphasenpipelinig (2) Pipelines in Universalprozessoren jedoch meist nur ungenügend gefüllt Grund: Pipeline-Konflikte Datenabhängigkeiten: Bsp: add R1,R2 ; R1=R1+R2 mul R1,R3 ; R1 = R1*R3; mul add IF ID OF EX S IF ID OF EX S Steuerflussabhängigkeiten: cmp R4,R5 bne ende add R1,R2 ende:... add bne cmp IF ID OF EX S IF ID OF EX S IF ID OF EX S Ausweg: Befehlsumordnung im Compiler, Spekulative Befehlsausführung 42

43 Superskalarität (1) Superskalar, wenn Befehlsphasen-Pipeline mit mehreren Funktionseinheiten für die Ausführung der Kernaktivitäten kombiniert ist und dynamische Zuweisung von Befehlen an die Funktionseinheiten erfolgt Instruction Fetch Instruction Decode and Rename Instruction Window Issue Execution Execution Retire and Write Back In Order Out of Order In Order Quelle: T.Ungerer, U. Brinkschulte Mikrocontroller und Mikroprozessoren, Springer Verlag

44 Superskalarität (2) Befehlshole-Stufe lädt Befehle aus dem Code-Cache, je Takt werden mindestens so viele Befehle geholt, wie den Ausführungseinheiten zugewiesen werden können. Ggf. wird Sprungvorhersage benutzt, um zu entscheiden, welche Befehle zu holen sind Ein Befehlsholepuffer entkoppelt Befehlsholestufe von der Decodierstufe Die Bandbreite der Dekodierstufe entspricht meist der maximalen Zuordnungsbandbreite. Operanden und Resultatregister werden umbenannt, d.h. die in den Befehlen angegebenen Register werden auf die physikalisch vorhandenen Register abgebildet. Befehlsfenster: Befehlsmenge mit umbenannten Registern und frei von Steuerflussabhängigkeiten 44

45 Superskalarität (3) Im Befehlsfenster müssen nur noch Datenabhängigkeiten und Strukturkonflikte aufgelöst werden. Issue: Zuweisung wartender Befehle an Verarbeitungseinheiten (Reihenfolge der Befehle im Originalprogramm wird im Rückordnungspuffer abgelegt) Zuweisung der Befehle in Umordnungspuffern vor den Ausführungseinheiten, Befehle warten dort solange, bis alle Operanden verfügbar sind (Datenflussprinzip). Danach: Befehlsvervollständigung und Rückordnung der Befehle Befehlsresultate werden gültig gemacht, sofern diese von keiner Spekulation mehr abhängen 45

46 RISC (1) RISC: Reduced Instruction Set Computer Design-Philosophie wenige einfache Befehle, anstatt vieler verschiedenartiger Befehle Befehle haben dann gleiche Länge Einfachere und schnellere Realisierung einer superskalaren Pipeline Lade- und Speicher-Befehle: Rest der Befehle arbeitet auf Registern Großer Satz an Universalregistern Viele innovative Befehlssatzarchitekturen sind RISC- Architekturen, z.b. DLX, MIPS Dennoch hoher Anteil von CISC Architekturen, durch x86- Vorherrschaft 46

47 RISC (2) Vergleich CISC - RISC: summe = a; summe = summe + b; summe = summe + c; summe = summe + d; x86 CISC mov eax,[a] add eax,[b] add eax,[c] add eax,[d] mov [s],eax MIPS RISC load R1,[a] load R2,[b] add R1,R1,R2 load R2, [c] add R1,R1,R2 load R2, [d] add R1,R1,R2 store R1, [s] 47

48 VLIW VLIW-Very Long Instruction Word Breites Befehlsformat, das mehrere unabhängige Befehle kodiert, die parallel auf den Funktionseinheiten des Prozessors ausgeführt werden Bündelung der Befehle erfolgt durch Compiler Original-VLIW ist starr bzgl. Anzahl und Art der Befehle Im wesentlichen bei Signalprozessoren und Multimediaprozessoren eingesetzt, typischerweise mit RISC-Konzept gekoppelt. EPIC-Technik (Explicitly Parallel Instruction Computing) hat sich aus Konzepten von VLIW entwickelt. 48

49 EPIC (1/4) Explicitly Parallel Instruction Computing: Explizite Spezifikation des Parallelismus im Maschinencode (wie VLIW, jedoch weniger starr) Bedingte Ausführung von Befehlen (Prediction) Spekulative Ausführung von Ladeoperationen (Data Speculation) Gruppierung von Befehlen zur parallelen Ausführung durch Zusammenwirken von Compiler und Hardware In IA-64 Architektur implementiert (Intel/HP). 49

50 EPIC (2/4) IA 64 Befehlsformat (41 Bit) Opcode Register1 Register2 Register3 Predicate 14 Bits 7 Bits 7 Bits 7 Bits 6 Bits IA 64 Befehle werden von Compiler in sogenannte Bundles gepackt Befehl 1 41 Bits Befehl 2 41 Bits 128 Bits Befehl 3 41 Bits Template 5 Bits Template zeigt an, ob Befehle gleichzeitig ausgeführt werden dürfen, oder ob benachbarte Bundles parallel ausgeführt werden können 50

51 Beispiel Itanium: Anstoßen der Befehle zur Ausführung Bundle 1 Slot 0 Slot 1 Slot 2 Bundle 2 Slot 0 Slot 1 Slot 2 Dynamische Zuordnung zur Laufzeit (Unterschied zu reinem VLIW) EPIC (3/4) Funktionseinheiten Mem0 Mem1 Integer0 Integer1 FPU0 FPU1 FPU2 Br0 Br1 Br2 Es können bis zu sechs Befehle je Takt zur Ausführung angestoßen werden 51

52 EPIC (4/4) Skalierbarkeit: Bei IA64 dürfen n Mengen von jeweils drei Befehlen gebündelt werden. Itanium: n=2, d.h. 6 Befehle Bundle-Codierung mit Raum für breitere EPIC-Realisierungen Der Code wird dichter, d.h. mehr Befehle werden in einer betrachteten Anzahl von Zyklen decodiert und ausgeführt Schwierigkeiten: Sprünge verhindern ausreichende Füllung der Bundles Wartezeiten auf Load-Operationen würden mehr Verluste bringen 52

53 EPIC Bedingte Befehlsausführung Beispiel (aus W. Karl: Rechnerarchitektur): if (R1==R2) R9 = R10 R11; else R5= R6 + R7; Bedingte Befehlsfolge: cmp.eq p1,p2 = r1, r2;; (p1) sub r9 = r10, r11 (p2) add r5 = r6, r7 Jeder Befehl hat ein Predicate-Feld (6Bit) zur Angabe des Predicate-Registers (z.b. P0 bis P63 vorhanden) Befehl wird ausgeführt, ohne das Ergebnis des Vergleichs zu kennen (Elimination von Sprüngen) In Phase Befehlsvervollständigung werden nur Ergebnisse jener Befehle zurück geschrieben, deren Prädikat zutrifft 53

54 EPIC Spekulatives Laden Vorziehen von Ladeoperationen Spekulation, um für Unterbrechungen korrekte Programmausführung zu erhalten bei einem Überschreiben der Speicherzelle aktuelle Inhalte nachzuladen Instr A Instr B Branch Store Ld8 r1=[r2] Instr (benutzt r1) Ladeoperation kann normalerweise nicht vor (einige) Store-Befehle und nicht vor Sprungbefehle gezogen werden. Ausweg: Spekulatives Laden Ld8.a r1=[r2] Instr A Instr B Branch Store chk.a Instr (benutzt r1) 54

55 SIMD Single Instruction Multiple Data (Klassifikation nach Flynn), d.h. ein Steuerwerk und mehrere Operationswerke, welche die gleichen Befehel durch mehrere Operationswerke parallel auf verschiedenen Daten ausführen. Heute ist SIMD-Prinzip als Erweiterung in Standardprozessoren enthalten. Nutzung breiter Register, Datenpfade (64/128 Bit) für parallele Speicherung, Verknüpfung und Transport kurzer Datentypen (8/16/32 Bit) Beispiele: Sun VIS Instruction Set (siehe SAD-Unterstützung) Intel MMX, Intel SSE (Streaming SIMD Extensions) Athlon 3D/NOW AltiVec (Motorola, PowerPC) 55

56 MMX: SIMD-Erweiterung für Pentium Prozessoren Spezielle Befehle für Multimedia- und Grafik-Algorithmen (z. B. MPEG-Kompression). Auch in RISC-Prozessoren zu finden (z. B. VIS beim Ultra Sparc) Konzept: Ein einzelner Befehl bearbeitet mehrere Daten in einem 64-Bit- Register gleichzeitig (z. B. 8 Byte oder 4 Worte à 16 Bit) MMX-Datentypen Es entsteht SIMD-Parallelarbeit, die vor allem für Multimedia-Anwendungen (8-Bit-Pixel, 16 Bit-Voice-Samples) gut genutzt werden kann 56

57 MMX-Befehlssatz Register: 8 FP-Register (64 oder 80 Bit) Insgesamt 57 Befehle Geschwindigkeitssteigerung von % für typische Multimedia- Anwendungen. 57

58 SSE (SIMD Streaming Extension) SSE-Register 70 zusätzliche Befehle für Multimedia-Anwendungen Eigener Satz von 8 Registern à 128 Bit, eigene Funktionseinheit SIMD-Operationen auch für Gleitkomma-Operanden Prefetch-Instruktionen (Memory Streaming) Leistungssteigerung bei MultimediaMark 99 von 29% gegenüber Pentium bei gleicher Taktfrequenz Weiterentwicklung für Pentium 4 zu SSE 2 (114 neue Befehle) 58

59 MMX Varianten der Arithmetik Arithmetik wahlweise im Wraparound-Modus: Unter- bzw. Überläufe werden abgeschnitten und nur die niederwertigen (dargestellten) Bits abgebildet F000h a2 a1 a h b2 b1 b0 2000h a2+b2 a1+b1 a0+b0 Saturations-Modus: Kein Überlauf oder Unterlauf, stattdessen Abbildung auf kleinste bzw. größte Werte. Sinnvoll z.b. bei Berechung einer Darstellungsfarbe F000h a2 a1 a h b2 b1 b0 FFFFh a2+b2 a1+b1 a0+b0 59

60 Anwendungsbeispiel Anwendungsbeispiel Sum of absolute Differences (SAD), eine zeitkritische Operation bei der Videokompression: SAD( dx, dy) y 0 N n y 0 1 x 0 N 1 m x 0 I K ( m, n) I K 1 ( m dx, n dy) Manipulation n,m Lade jeweils 8 aufeinanderfolgende Werte Absolute Differenzen für die 8 Werte Lade I K (m,n) bis I K (m+7,n) nach mm0 Lade I K-1 (m+dx,n+dy) bis I K-1 (m+dx+7,n+dy) nach mm1 MOVQ mm2, mm0 ; mm2 <-mm0 PSUBUSB mm0, mm1 ; mm0 <- mm0 - mm1 PSUBUSB mm1, mm2 ; mm1 <- mm1 mm2 POR mm0, mm1 MOVQ [esi], mm0 ADD esi, 8 Summierung der absoluten Differenzen j n,m-bereich durchlaufen? n 60

61 Leistungszuwachs Dokumentierter Leistungszuwachs durch MMX: Gewinn bei Übergang von skalarem C-Code zu MMX-Code RGB YUV Umwandlung: >10 Inverse DCT 2D 8x8: 3.5 Absolute Differences: 5 Matrix-Vektor-Multiplikation: 14.6 Geschwindigkeitsgewinn größer 8 u.a. durch Multiply-Add-Befehl Code wird von Prozessorherstellern (Intel, AMD) als so genannte Application Notes veröffentlicht 61

62 MMX, SSE - Weiterentwicklung SSE2: 2x64-Bit FloatingPoint, Zwischenergebnisse nur 64 Bit anstatt der 80 Bit bei 8087, schneller aber geringere Genauigkeit SSE3: horizontale Operationen arithmetische Operationen über Subwörter innerhalb eines Registers SSE4: Integer 2x32-zu-64 Bit Multiplikation ohne Überlauf, mehrfache Multiplikation und Aufsummieren (Skalarprodukt), MPSADBW-Befehl: Summe acht absoluter 8-Bit-Differenzen (SSE4.1) hardwareseitige CRC-32-Prüfsummenbildung (SSE 4.2), Stringverarbeitung (SSE 4.2) Angekündigt: AVX (Advanced Vector Extensions) mit 256 Bit SIMD-Mode 62

63 SIMD-Programmierung Möglichkeiten: Maschinensprache Inline-Assembling Nutzung von Bibliotheken, z.b. Small Matrix Library für SSE Compiler unterstützen teilweise SIMD-Erweiterungen Intel C++ Compiler ab Version 6: SIMD-Datentypen und Makros für MMX, SSE und SSE2 Vektorisierer für einfache Schleifen GNU C-Compiler: SIMD-Datentypen und Makros für MMX, SSE und 3DNow 63

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

10. Rechnerarchitektur und Assemblerprogrammierung

10. Rechnerarchitektur und Assemblerprogrammierung 10 Rechnerarchitektur und Assemblerprogrammierung Inhalt: Schichtenmodell Konvertierung zwischen Schichten Neue Funktionen in Hardware oder Software? Rechnerarchitektur Assemblersprache und Einbindung

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

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

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

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

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

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

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

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

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

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

Echtzeit Videoverarbeitung

Echtzeit Videoverarbeitung Hardwareplattformen für Echtzeit Videoverarbeitung Herbert Thoma Seite 1 Gliederung Echtzeitanforderungen Prozessorarchitekturen Grundlagen Pipelining Parallele Befehlsausführung Systemkomponenten Speicher

Mehr

früher: CISC ( Complex Instruction Set Computer )

früher: CISC ( Complex Instruction Set Computer ) Hochleistungs-CPUs früher: CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do

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

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

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

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

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten Hochleistungs-CPUs CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do in hardware

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

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

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

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

10. Rechnerarchitektur und Assemblerprogrammierung

10. Rechnerarchitektur und Assemblerprogrammierung 10 Rechnerarchitektur und Assemblerprogrammierung Inhalt: Schichtenmodell Konvertierung zwischen Schichten Neue Funktionen in Hardware oder Software? Rechnerarchitektur Assemblersprache und Einbindung

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

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 11 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

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

Cache. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache 1/53 2012-02-29 Einleitung Hauptspeicherzugriffe sind langsam die

Mehr

Übung zu Einführung in die Informatik # 10

Übung zu Einführung in die Informatik # 10 Übung zu Einführung in die Informatik # 10 Tobias Schill tschill@techfak.uni-bielefeld.de 15. Januar 2016 Aktualisiert am 15. Januar 2016 um 9:58 Erstklausur: Mi, 24.02.2016 von 10-12Uhr Aufgabe 1* a),

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

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 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur

Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Themen heute Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Besprechung des 8. Übungsblattes Aufgabe 2.6. In diesem

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

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

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

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

FAKULTÄT FÜR INFORMATIK

FAKULTÄT FÜR INFORMATIK FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN Lehrstuhl für Rechnertechnik und Rechnerorganisation Prof. Dr. Arndt Bode Einführung in die Rechnerarchitektur Wintersemester 2016/2017 Tutorübung

Mehr

4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen

4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen 4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen Ein Rechner besteht aus den folgenden Bestandteilen: Rechenwerk Rechenoperationen wie z.b. Addition, Multiplikation logische Verknüpfungen

Mehr

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

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

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr

Philipp Grasl PROZESSOREN

Philipp Grasl PROZESSOREN 1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION

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

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

CISC-RISC-EPIC. eine Zwangs-Evolution?! Jörg Spilling - DECUS Frankfurter Treffen Seite: 1

CISC-RISC-EPIC. eine Zwangs-Evolution?! Jörg Spilling - DECUS Frankfurter Treffen Seite: 1 CISC-RISC-EPIC eine Zwangs-Evolution?! Jörg Spilling - DECUS Frankfurter Treffen 2008 www.equicon.de Seite: 1 Heutiges Programm: CISC-RISC-EPIC - Begriffserklärung von Neumann Rechnerarchitektur Evolution

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

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

Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung

Mehr

Paging. Einfaches Paging. Paging mit virtuellem Speicher

Paging. Einfaches Paging. Paging mit virtuellem Speicher Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz

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

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor. Rechnerstrukturen 6. System Systemebene 1 (Monoprozessor) 2-n n (Multiprozessor) s L1- in der L2- ( oder Motherboard) ggf. L3- MMU Speicher Memory Controller (Refresh etc.) E/A-Geräte (c) Peter Sturm,

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

Technische Informatik 1 - HS 2016

Technische Informatik 1 - HS 2016 Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 8 Datum: 8. 9. 12. 2016 1 Instruktionsparallelität VLIW Gegeben

Mehr

4.2 Verbesserung der Leistungsfähigkeit von Caches

4.2 Verbesserung der Leistungsfähigkeit von Caches 12 4.2 Verbesserung der Leistungsfähigkeit von Caches Peter Marwedel Informatik 12 TU Dortmund 2014/05/02 Cache-Performanz Bewertungsmaß für die Leistungsfähigkeit einer Speicherhierarchie: Mittlere Zugriffszeit

Mehr

Prozessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel

Prozessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle

Mehr

Rechneraufbau und Rechnerstrukturen

Rechneraufbau und Rechnerstrukturen Rechneraufbau und Rechnerstrukturen von Walter Oberschelp RWTH Aachen und Gottfried Vossen Universität Münster 10. Auflage c 2006 R. Oldenbourg Verlag GmbH, München Inhaltsverzeichnis Auszug... x... aus

Mehr

Inhaltsverzeichnis 1 Grundlagen Grundlegende Prozessortechniken...16

Inhaltsverzeichnis 1 Grundlagen Grundlegende Prozessortechniken...16 Inhaltsverzeichnis 1 Grundlagen...1 1.1 Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC...1 1.2 PC-Systeme...3 1.3 Eingebettete und ubiquitäre Systeme...5 1.4 Leistungsmessung und Leistungsvergleich...11

Mehr

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung

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

Grundlagen der Informatik

Grundlagen der Informatik Grundlagen der Informatik Logische und mathematische Grundlagen Digitale Daten Computerprogramme als Binärdaten von Neumann-Rechnerarchitektur Einführung in Maschinen-Code Speicherorganisation Betriebssysteme

Mehr

1. Übersicht zu den Prozessorfamilien 2 2. Grundlagen der Rechnerorganisation 3

1. Übersicht zu den Prozessorfamilien 2 2. Grundlagen der Rechnerorganisation 3 1. Übersicht zu den Prozessorfamilien 2 2. Grundlagen der Rechnerorganisation 3 2.1. Aufbau eines Rechners in Ebenen 3 2.2. Die Ebene der elektronischen Bauelemente 5 2.3. Die Gatterebene 5 2.3.1 Einfache

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

1. Von-Neumann-Architektur (7/66 Punkte)

1. Von-Neumann-Architektur (7/66 Punkte) Fakultät Informatik/Mathematik Seite 1/8 Datum: 23.12.2010 Name: Vorname: Arbeitszeit: 60 Minuten Matr.-Nr.: Hilfsmittel: alle eigenen Unterschrift: wird vom Prüfer ausgefüllt 1 2 3 4 5 6 7 8 9 Diese hat

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

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

Hardware Praktikum 2008

Hardware Praktikum 2008 HaPra 2008 - Versuchsreihe 5 - ALU Hardware Praktikum 2008 Prof. Dr. H.-J. Wunderlich Dipl.-Inf. M. Imhof Dipl.-Inf. S. Holst Agenda Die HaPra-CPU Eine kleine Übersicht VHDL Projekt-Organisation Entwurf

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

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112

Mehr

Inhaltsverzeichnis. Vorwort...VII. Vorwort zur 2. Auflage... IX. Inhaltsverzeichnis... XI

Inhaltsverzeichnis. Vorwort...VII. Vorwort zur 2. Auflage... IX. Inhaltsverzeichnis... XI Vorwort...VII Vorwort zur 2. Auflage... IX Inhaltsverzeichnis... XI 1 Grundlagen...1 1.1 Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC...1 1.2 PC-Systeme...3 1.3 Eingebettete und ubiquitäre

Mehr

Teil 2: Rechnerorganisation

Teil 2: Rechnerorganisation Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung

Mehr

Technische Informatik 2 Speichersysteme, Teil 3

Technische Informatik 2 Speichersysteme, Teil 3 Technische Informatik 2 Speichersysteme, Teil 3 Prof. Dr. Miroslaw Malek Sommersemester 2004 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher (Fortsetzung) Translation Lookaside Buffer

Mehr

Technische Informatik I, SS 2001

Technische Informatik I, SS 2001 Technische Informatik I SS 2001 PD Dr. A. Strey Abteilung Neuroinformatik Universität Ulm Inhalt Einführung: Überblick über die historische Entwicklung der Rechnerhardware Teil 1: Digitale Logik kurzer

Mehr

3. Rechnerarchitektur

3. Rechnerarchitektur ISS: EDV-Grundlagen 1. Einleitung und Geschichte der EDV 2. Daten und Codierung 3. Rechnerarchitektur 4. Programmierung und Softwareentwicklung 5. Betriebssyteme 6. Internet und Internet-Dienste 3. Rechnerarchitektur

Mehr

Grundlagen der Rechnerarchitektur. Ein und Ausgabe

Grundlagen der Rechnerarchitektur. Ein und Ausgabe Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

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

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

Shangrila. One Instruction Set Computer

Shangrila. One Instruction Set Computer Shangrila One Instruction Set Computer Outline One Instruction Set Computer Die Idee Funktion Die Machine Shangrila VM Interfaces Tools Implementation Status & Zukunft OISC >> Die Idee CPU mit nur einer

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

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

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

Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung

Mehr

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1 Entwicklung der DRAMs Richard Roth / FB Informatik und Mathematik Speicher 1 Entwicklung der DRAMs in Zukunft Richard Roth / FB Informatik und Mathematik Speicher 2 DRAM Speicherzelle (Trench Technology)

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

Grundlagen der Informatik III Wintersemester 2010/2011

Grundlagen der Informatik III Wintersemester 2010/2011 Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, Patrik Schmittat 6. Aufgabenblatt mit Lösungsvorschlag 06.12.2010 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen

Mehr

MikroController und Mikroprozessoren

MikroController und Mikroprozessoren Uwe Brinkschulte Theo Ungerer MikroController und Mikroprozessoren 2. überarbeitete Auflage Mit 212 Abbildungen und 41 Tabellen Springer Inhaltsverzeichnis Vorwort Vorwort zur 2. Auflage Inhaltsverzeichnis

Mehr

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 4 Cache el0100 copyright W.

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

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

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3 Institut für Kommunikationsnetze und Rechnersysteme Technische Informatik I Paul J. Kühn, Matthias Meyer Übung 3 Speicherhierarchie Inhaltsübersicht Aufgabe 3.1 Daten-Cache Aufgabe 3.2 Virtueller Speicher

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 10 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

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

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

ZENTRALEINHEITEN GRUPPE

ZENTRALEINHEITEN GRUPPE 31. Oktober 2002 ZENTRALEINHEITEN GRUPPE 2 Rita Schleimer IT für Führungskräfte WS 2002/03 1 Rita Schleimer TEIL 1 - Inhalt Zentraleinheit - Überblick Architekturprinzipien Zentralspeicher IT für Führungskräfte

Mehr

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft Prozeß: drei häufigste Zustände Prozeß: anatomische Betrachtung jeder Prozeß verfügt über seinen eigenen Adreßraum Sourcecode enthält Anweisungen und Variablen Compiler überträgt in Assembler bzw. Binärcode

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

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

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 11.01.2017 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines

Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University,

Mehr

Architektur paralleler Plattformen

Architektur paralleler Plattformen Architektur paralleler Plattformen Freie Universität Berlin Fachbereich Informatik Wintersemester 2012/2013 Proseminar Parallele Programmierung Mirco Semper, Marco Gester Datum: 31.10.12 Inhalt I. Überblick

Mehr