Ausführungszeitvorhersage. Dipl.-Inf. J. Richling M. Mergner Wintersemester 2003/2004
|
|
- Otto Armbruster
- vor 6 Jahren
- Abrufe
Transkript
1 Ausführungszeitvorhersage Dipl.-Inf. J. Richling M. Mergner Wintersemester 2003/2004
2 Gliederung 1. Einleitung 2. Theoretische Vorbetrachtungen 3. Technische Grundlagen der Referenzarchitektur 4. Ein Beispielalgorithmus 5. Messungen am Prozessor 6. Vorhersagem des Algorithmus vs. Messungen 06-1 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
3 Motivation Schedulingverfahren basieren auf Kenntnis der Ausführungszeit einer Task Zeitliche Garantien können nur gegeben werden, wenn man Ausführungszeiten kennt Problem: Wie mißt man eine Ausführungszeit? Stoppuhr? Logic-Analyzer? Genügt das? 06-2 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
4 Worst ase Execution Time I Kenntnis einer Ausführungszeit genügt nicht, denn Laufzeit eines Programmes kann von den Eingaben abhängen Interessant ist die längstmögliche Ausführungszeit (WET) WET hängt ab von Programmcode ompiler, benutzte Bibliotheken Pfaden durch den Programmcode (abhängig von Eingaben) benutzter PU Parametern der Umgebung der PU (Speicher, aches) sowie Wechselwirkungen zwischen diesen Parametern 06-3 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
5 Worst ase Execution Time II Es gibt zwei generelle Probleme: Welches ist der längste Pfad durch ein Programm? Unterproblem: Wie bewertet man einen Pfad? Highlevel Analyse Wie berechnet man zu einem gegebenen Pfad die Ausführungszeit? Lowlevel Analyse 06-4 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
6 Bestimmen der WET einer Task Analysewerkzeug erstellt einen Kontrollflussgraphen Kontrollflussgraph besteht aus Basic Blocks Ausführungszeit aller Basic Blocks wird ermittelt (Lowlevel-Analyse!) Berechnung des längsten Pfades Gegebenenfalls weitere Optimierungen (ist längster Pfad feasable?) Basic Blocks sind Blöcke von Maschinenbefehlen, die genau einen Ein- und einen Austrittspunkt haben Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
7 Lowlevel-Analyse: Voraussetzungen Genaue Reihenfolge der Instruktionen muss bekannt sein, d.h. keine (unvorhergesehenen) Interrupts keine Exceptions Prozessor muss spezifikationsgetreu betrieben werden Prozessorzustand muss konstant bleiben DMA-Zugriffe sind verboten Detaillierte Beschreibung des gewünschten Prozessors/Systems muss vorliegen 06-6 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
8 Wichtige Systemparameter Pipeline? Funktionsweise der einzelnen Stufen Länge Organisation Funktionseinheiten Speicher Aufbau Struktur achestruktur Geschwindigkeit Busorganisation Burstmodi Taktteiler Bus/PU 06-7 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
9 Referenzarchitektur PowerP 604 Warum? RIS - Architektur Mitglied einer ganzen Familie von Prozessoren Komplexität ist noch handhabbar Existiert als Hostprozessor und als eingebettetes Gerät Preiswert Implementiert Performance Enhancements Pipeline Große aches Sprungvorhersage Spekulative Ausführung Out-of-Order-Execution Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
10 Referenzarchitektur PowerP 604 Pipeline Fetch (IF) Decode (ID) (Four-instruction dispatch per clock cycle in any combination) Dispatch (DS) Execute Stage SIU1 SIU2 MIU FPU BPU LSU omplete () Write-Back (W) 06-9 Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
11 Time-Base ounter/decrementer Fetcher Instruction Queue (8 word) 64 Bit INSTRUTION UNIT Branch Processing Unit BTA R Rename- Buffers (8) TR R LR SRs ITLB I MMU 128 Bit IBAT Array lock Multiplier JTAG/OP Interface 128 Bit Dispatch Unit BHT 128 Bit Reservation Station (2 Entry) Multiple- ycle Integer Unit / * 32 Bit Reservation Station (2 Entry) Single- ycle Integer Units / Bit GPR File Rename Buffers (12) 32 Bit 32 Bit Reservation Station (2 Entry) Load/Store Unit EA alculation + 64 Bit FPR File Rename Buffers (8) 64 Bit 64 Bit Reservation Station (2 Entry) Floating- Point Unit / * + FPSR OMPLETION UNIT 16-Entry Reorder Buffer Store Queue Finish Load Queue 32 Bit SRs DTLB D MMU DBAT array Tags 64 Bit 16-Kbyte D ache Snoop Tags 16-Kbyte I ache BUS INTERFAE UNIT 32-BIT ADDRESS BUS 64-BIT DATA BUS Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
12 Referenzarchitektur PowerP 604 Branch-Unit Instruction ache Fetcher branch folding Dispatcher Branch Processing Unit Instruction Queue Execution Units ompletion Queue Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
13 Die Datenstruktur IF DE DIS EX WB PL Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
14 Die Datenstruktur II Reservation Table Erlaubt Behandlung von Pipelines Aufbau repräsentiert Merkmale der Architektur Zusammensetzen mehrerer Tabellen ist durch Architektur eingeschränkt Einfaches Ablesen der Laufzeit (Spaltenanzahl) Intuitives Konzept und leicht graphisch darstellbar Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
15 Angepasste Reservation Table - Eine Spalte Instruction Fetch I Branch Prediction Unit (BPU) Instruction Fetch II Decode Dispatch Single ycle Integer Unit (SIU) Multiple ycle Integer Unit (MIU) Load Store Unit (LSU) Floating Point Unit (FPU) omplete Write Back Registers {R} {W} Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
16 Repräsentation eines Addierbefehls 0: addi 8, 9, 42 IF_0 0 BPU IF_1 0 DE 0 DISP 0 REG SIU MIU LSU FPU OMP WB : or 27, 11, 13 Jeder Befehl wird durch seine Adresse dargestellt IF_0 4 BPU IF_1 4 DE 4 DISP 4 REG SIU 11, , MIU LSU Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
17 SIU MIU LSU FPU OMP WB Repräsentation eines OR - Befehls : or 27, 11, 13 IF_0 4 BPU IF_1 4 DE 4 DISP 4 REG SIU MIU LSU FPU OMP WB 11, , : mtctr 12 IF_0 8 BPU IF_1 8 DE 8 DISP 8 REG SIU 12 TR 12 TR 06-16MIU Eigenschaften mobiler und eingebetteter Systeme c J.Richling, 8 M. Mergner
18 SIU MIU LSU FPU OMP WB Repräsentation eines MOVE - Befehls : mtctr 12 IF_0 8 BPU IF_1 8 DE 8 DISP 8 REG 12 TR SIU MIU LSU FPU OMP WB 12 TR b loop IF_0 BPU IF_1 DE DISP REG SIU MIU Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner LSU
19 SIU MIU LSU FPU OMP WB Repräsentation eines Verzweigungsbefehls 8 : b loop IF_0 BPU IF_1 DE DISP REG SIU MIU LSU FPU OMP WB IF_ BPU IF_ DE DISP REG 9, 11, 12, 13 TR, 27, 8 9, 11, 12, 13 TR, 27, 8 SIU MIU Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner 8 LSU
20 SIU MIU LSU FPU OMP WB Verbindung der 4 Tabellen IF_ BPU IF_ DE DISP REG SIU MIU LSU FPU OMP 9, 11, 12, 13 TR, 27, 8 9, 11, TR, 12, 13 27, , 4, 8, WB 0, 4, 8, Alle vier Instruktionen laufen parallel ab odealignment ist essentiell Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
21 Darstellung eines achesmiss Zeit eines Speichertransfers Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
22 Algorithmus 1. Erstelle zu jeder Instruktion eine Tabellenrepräsentation 2. Verbinde die Tabellen unter Berücksichtigung architektureller Gegebenheiten 3. Lese die Anzahl der konsumieren Takte ab Was noch fehlt Die aches und Puffer innerhalb der PU müssen vom Algorithmus verwaltet werden: Daten-/Instruktionscache, TLB Statusregister BTA, BHT Reorder Buffer Store Queue, Finish Load Queue Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
23 Messungen am Prozessor PowerP 604 hat Performance Monitor Register Vielfaltige Monitoringmöglichkeiten konsumierte PU-Takte achemisses Statistiken zu Instruktionen fehlerhaft vorhergesagte Sprünge Speicherzugriffsverzögerung aber: PM laufen nur im Supervisor Mode Tiefgreifende Modifikationen (Interrupts / ache ausschalten) ebenfalls nur im Supervisor Mode möglich Programmierung eines Kerneltreibers Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
24 Ausgabe des Treibers Interrupts are: Enabled Disable Interrupts: [ OK ] Iache is: Enabled [ OK ] Dache is: Enabled [ OK ] Serialization is: Disabled [ OK ] Saving Settings [ OK ] PM1_YLES=[ ] PM2_LOAD_MISS_PENALTY=[ ] PM1_RESERVATIONS_REQ=[ ] PM2_INSN_DISPAHED=[ ] PM1_IAHE_MISS=[ ] PM2_DAHE_MISS=[ ] PM1_DTLB_MISS=[ ] PM2_ITLB_MISS=[ ] PM1_BRANH_MISPREDIT=[ ] PM2_BPU_OUT=[ ] Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
25 Testprogramm Expandierende For Schleife n mal eine Zahl um eins erhöhen mehrmalige Ausführung Veränderung des Verhältnisses von Schleifenlänge und Sprunghäufigkeit Halbierung der Schleifenlänge bei Verdopplung der Sprunghäufigkeit Ausführung mit und ohne ache Ausführung mit Registervariablen (wenige Speichertransfers, kurzer ode) Ausführung mit Variablen im Hauptspeicher (viele Speichertransfers, längerer ode) Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
26 Vergleich von Messungen und Vorhersage I Vorhersagen mit Instruktionscache Messergebnisse Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
27 Vergleich von Messungen und Vorhersage II Vorhersagen ohne ache Messungen Eigenschaften mobiler und eingebetteter Systeme c J.Richling, M. Mergner
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/
MehrDas Prinzip an einem alltäglichen Beispiel
3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und
MehrComputergrundlagen 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
MehrVon - Neumann - Rechner. Zentraleinheit ( CPU )
01 Eingabe Verarbeitung Ausgabe Von - Neumann - Rechner Ausgabeeinheit Zentraleinheit ( CPU ) Eingabeeinheit Von-Neumann-Rechner mit struktur 02 Rechenwerk Umwelt Steuerwerk interner Speicher Eingabe Ausgabe
MehrWas ist die Performance Ratio?
Was ist die Performance Ratio? Wie eben gezeigt wäre für k Pipeline Stufen und eine große Zahl an ausgeführten Instruktionen die Performance Ratio gleich k, wenn jede Pipeline Stufe dieselbe Zeit beanspruchen
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrCPU. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
CPU Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU 1/62 2012-02-29 CPU Übersicht: Pipeline-Aufbau Pipeline- Hazards CPU
MehrPipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45
Pipelining Die Pipelining Idee Grundlagen der Rechnerarchitektur Prozessor 45 Single Cycle Performance Annahme die einzelnen Abschnitte des MIPS Instruktionszyklus benötigen folgende Ausführungszeiten:
MehrName: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.
Name: Vorname: Matr.-Nr.: 4 Aufgabe 1 (8 Punkte) Entscheiden Sie, welche der folgenden Aussagen zum Thema CISC/RISC-Prinzipien korrekt sind. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen
MehrUltraSPARC T2 Processor
UltraSPARC T2 Processor Vortrag im Rahmen des Seminars Ausgewählte Themen in Hardwareentwurf und Optik HWS07 Universität Mannheim Janusz Schinke Inhalt Überblick Core Crossbar L2 Cache Internes Netzwerk
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 6 Datum: 24. 25. 11. 2016 Pipelining 1 Taktrate / Latenz In dieser
MehrArbeitsfolien - Teil 4 CISC und RISC
Vorlesung Informationstechnische Systeme zur Signal- und Wissensverarbeitung PD Dr.-Ing. Gerhard Staude Arbeitsfolien - Teil 4 CISC und RISC Institut für Informationstechnik Fakultät für Elektrotechnik
MehrComputer-Architektur Ein Überblick
Computer-Architektur Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Computer-Architektur Ein Überblick p.1/27 Computer-Aufbau: Motherboard Computer-Architektur Ein Überblick p.2/27
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 8 Datum: 8. 9. 12. 2016 1 Instruktionsparallelität VLIW Gegeben
MehrInstruktionen 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
MehrAuch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)
Auch hier wieder Aus voriger Wahrheitstabelle lässt sich mechanisch eine kombinatorische Schaltung generieren, die wir im Folgenden mit dem Control Symbol abstrakt darstellen. Instruction[31 26] (also:
MehrDIGITALE SCHALTUNGEN II
DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop
Mehr1. 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
MehrRechner Architektur. Martin Gülck
Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard
MehrARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH
ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
MehrJohann Wolfgang Goethe-Universität
Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory
MehrJava-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
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrVorstellung der SUN Rock-Architektur
Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vorstellung der SUN Rock-Architektur Hauptseminar Ronald Rist Dresden, 14.01.2009
MehrWie 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
MehrEchtzeit-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
Mehrfrüher: CISC ( Complex Instruction Set Computer )
Hochleistungs-CPUs früher: CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do
MehrAusgewählte Kapitel eingebetteter Systeme
Ausgewählte Kapitel eingebetteter Systeme Verfahren zur Bestimmung der WCET Andreas Kaiser Friedrich-Alexander University Erlangen-Nuremberg Übersicht Wieso WCET Berechnung? Methoden zur Bestimmung der
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
MehrSysteme 1: Architektur
slide 1 Vorlesung Systeme 1: Architektur Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Prüfung 18. Februar 2004 8h00-11h40 13h00-18h20 20 Minuten
MehrWas ist Rechnerleistung
Was ist Rechnerleistung Leistung im engeren Sinne: Leistung gemessen in seltsamen Einheiten, bestimmt vorwiegend von der Zentraleinheit: MIPS (Millionen Instruktionen pro Sekunde) FLOPS (Floating Point
MehrName : Klasse : Punkte : Note :
Name : Klasse : Punkte : Note : Zeit: 08.00 bis 09.30 Es dürfen alle Unterlagen verwendet werden. Die Aufgaben sind möglichst direkt auf den Blättern zu lösen (Antworten bitte in ganzen Sätzen!), bei Bedarf
MehrUltraSPARC T1 (Niagara)
UltraSPARC T1 (Niagara) Vortrag im Rahmen des Seminars Ausgewählte Themen in Hardwareentwurf und Optik HWS 06 Universität Mannheim Jochen Kinzel 1 Inhalt Überblick Core Crossbar Level 2-Cache DRAM-Controller
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrVirtueller 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
MehrBeispiele von Branch Delay Slot Schedules
Beispiele von Branch Delay Slot Schedules Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 97 Weniger
MehrSicheres 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
MehrProgrammierung 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
MehrEchtzeit Videoverarbeitung
Hardwareplattformen für Echtzeit Videoverarbeitung Herbert Thoma Seite 1 Gliederung Echtzeitanforderungen Prozessorarchitekturen Grundlagen Pipelining Parallele Befehlsausführung Systemkomponenten Speicher
MehrInhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9
Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrEchtzeitbetriebssysteme
Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom
MehrOne of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu
Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich fr Algorithmen und Datenstrukturen Institut fr Computergraphik und Algorithmen Technische Universität Wien One of the few resources increasing faster
MehrVorlesung 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
MehrPLC-5- und SLC-Prozessoren im DH+ Verbund (SLC 5/04 -Prozessoren)
Schnellinformation PLC-5- und SLC-Prozessoren im DH+ Verbund (SLC 5/04 -Prozessoren) In dieser Publikation sind Informationen aus verfügbaren PLC - und SLC -Dokumentationen zusammengestellt, um die Kommunikation
MehrTeil VIII Von Neumann Rechner 1
Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only
MehrDie 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.
Mehr2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 14. Okt. 2015 Computeraufbau: nur ein Überblick Genauer: Modul Digitale Systeme (2. Semester) Jetzt: Grundverständnis
MehrVon-Neumann-Architektur
Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..
MehrName: 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
MehrBetriebssysteme Übung 2. Tutorium System Calls & Multiprogramming
Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Task Wiederholung 1 System SysCalls (1) Wozu? Sicherheit Stabilität Erfordert verschiedene modes of execution: user mode privileged mode
MehrTechnische Informatik 1
Technische Informatik 1 7 Prozesse und Threads Lothar Thiele Computer Engineering and Networks Laboratory Betriebssystem 7 2 7 3 Betriebssystem Anwendung Anwendung Anwendung Systemaufruf (syscall) Betriebssystem
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
MehrArchitektur moderner GPUs. W. Sczygiol - M. Lötsch
Architektur moderner GPUs W. Sczygiol - M. Lötsch Überblick Chipentwicklung Aktuelle Designs Nvidia: NV40 (ATI: R420) Vertex-Shader Pixel-Shader Shader-Programmierung ROP - Antialiasing Ausblick Referenzen
MehrHYPER - THREADING HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI. Serge Fopoussi UNIVERSITÄT BREMEN SEMINAR RECHNERARCHITEKTUR. Prof. Dr.
SEMINAR RECHNERARCHITEKTUR HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI SEMINAR RECHNERARCHITEKTUR GLIEDERUNG 1. BACKGROUND : Arbeitsweise eines von Neumann-Rechners 2. ENTWICKLUNG VON PROZESSOREN 3. HYPER-THREADING
MehrInstitut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04.
Kontrollstrukturen Informatik II SS 2004 Teil 4: Assembler Programmierung Sprünge (bedingte und unbedingte) If-then-else, Case Loop (n Durchläufe) While (Abbruchbedingung) Institut für Informatik Prof.
MehrEHP Einführung Projekt A
Volker Dörsing EHP Einführung Projekt A email: doersing@uni-jena.de praktische Übung www: http://users.minet.uni-jena.de/~ehp-head Vorbereitung, Durchführung, Kolloquium Infos zur Veranstaltung, Versuchsanleitung
MehrTechnische 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
MehrProzessorarchitektur. 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
MehrTutorium Rechnerorganisation
Woche 3 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrDie Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008
Die Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008 Jörg Rödel Virtualization - Whats out there? Virtualisierung hat bereits längere Geschichte auf x86 Startete mit VMware Setzte
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrDie Intel Atom Architektur
Fakultät Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Die Intel Atom Architektur Hauptseminar Technische Informatik dennis.walter@mailbox.tu-dresden.de Dresden, 18.06.2008
MehrCPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse
Kapitel 11 Rechnerarchitektur 11.1 Der von-neumann-rechner Wir haben uns bisher mehr auf die logischen Bausteine konzentriert. Wir geben jetzt ein Rechnermodell an, das der physikalischen Wirklichkeit
Mehrkreative OS Betriebssystem Projekt Ubiquitous Computing II (WS 2009)
kreative OS Betriebssystem Projekt Ubiquitous Computing II (WS 2009) Sylvia Nischkowski Daniel Kuster Florian Schmid Matthias Gsteu Anton Biller 05.02.2010 Überblick 1.Anforderungen 2.Struktur 3.Entwicklung
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
MehrTutorium Rechnerorganisation
Woche 7 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
MehrAufbau 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)
MehrAssembler-Programmierung
Assembler-Programmierung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Assembler-Programmierung 1/48 2012-02-29 Assembler-Programmierung
MehrVortrag zum Ergebnis der Literaturrecherche. Fehlerinjektion mittels Trace-Architektur auf einem Mips-Prozessor. Matthias Brinker
Vortrag zum Ergebnis der Literaturrecherche Fehlerinjektion mittels Trace-Architektur auf einem Mips-Prozessor Matthias Brinker Dresden, 27.10.2016 Gliederung 1. Einleitung und Motivation 2. Trace-Architektur
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrDynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München
Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester
MehrAssembler - 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
MehrAutomatisches Parallelisieren
Automatisches Parallelisieren Vorlesung im Wintersemester 2010/11 Eberhard Zehendner FSU Jena Thema: Datenabhängigkeitsanalyse Eberhard Zehendner (FSU Jena) Automatisches Parallelisieren Datenabhängigkeitsanalyse
MehrQuantitative Prinzipien im Hardwareentwurf. 1. Small is fast
Quantitative Prinzipien im Hardwareentwurf 1. Small is fast Kleine Hardwareeinheiten schalten in der Regel schneller als größere. Kleine Transistoren bilden an ihren Gates kleinere Kapazitäten die Source-Drain
MehrAufgabe 1 Entwicklung einer Virtuellen Maschine
Aufgabe 1 Entwicklung einer Virtuellen Maschine Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Entwicklung
MehrGliederung. Was ist CUDA? CPU GPU/GPGPU CUDA Anwendungsbereiche Wirtschaftlichkeit Beispielvideo
Gliederung Was ist CUDA? CPU GPU/GPGPU CUDA Anwendungsbereiche Wirtschaftlichkeit Beispielvideo Was ist CUDA? Nvidia CUDA ist eine von NvidiaGPGPU-Technologie, die es Programmierern erlaubt, Programmteile
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
Mehr, WS2013 Übungsgruppen: Di., Fr.,
VU Technische Grundlagen der Informatik Übung : Stack, Pipelining., WS20 Übungsgruppen: Di., 0.01. Fr.,.01.201 Aufgabe 1: Stack - Funktionsweise Erläutern Sie die Funktionsweise eines Stacks bzw. Kellerspeichers
MehrCISC ( 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
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 4 AM 21.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrKapitel 5: Dynamisches Programmieren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrEntwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext
Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext Till Fischer 03.11.2011 FZI Forschungszentrum Informatik Embedded Systems & Sensors Engineering (ESS)
MehrDas Laden der Instruktionen erreicht eine Cache-Hit Rate von 90%.
Herbst 2001 Digitaltechnik und Rechnerstrukturen Seite 1 Aufgabe 1: Performance Evaluation (Total 25 Punkte) Gegeben sei ein System S0 mit einem Prozessor mit einer Taktfrequenz von 800 MHz. Der Prozessor
MehrLinux Paging, Caching und Swapping
Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches
MehrKapitel 9. Komplexität von Algorithmen und Sortieralgorithmen
1 Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Ziele 2 Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
MehrMikroprozessor als universeller digitaler Baustein
2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen
MehrPrüfung VO Betriebssysteme SS2008 / 7. Juli 2008
Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren
MehrDigitaltechnik und Rechnerstrukturen. 2. Entwurf eines einfachen Prozessors
Digitaltechnik und Rechnerstrukturen 2. Entwurf eines einfachen Prozessors 1 Rechnerorganisation Prozessor Speicher Eingabe Steuereinheit Instruktionen Cachespeicher Datenpfad Daten Hauptspeicher Ausgabe
MehrTechnische 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
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 7 (21.5.2014) Binäre Suche, Hashtabellen I Algorithmen und Komplexität Abstrakte Datentypen : Dictionary Dictionary: (auch: Maps, assoziative
MehrCompilerbau + Virtuelle Maschinen
Helmut Seidl Compilerbau + Virtuelle Maschinen München Sommersemester 2009 1 Organisatorisches Der erste Abschnitt Die Übersetzung von C ist den Vorlesungen Compilerbau und Virtuelle Maschinen gemeinsam
MehrEnterprise 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 3 Betriebssystem Überwacher
MehrKapitel 9. Komplexität von Algorithmen und Sortieralgorithmen
Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
MehrBoundary Scan Days 2009
Boundary Scan Days 2009 Einsatz von Virtual JTAG (Altera) für Flash - & EEPROM - Programmierung Dammert Tobias & Knüppel Lars Nokia Siemens Networks GmbH & Co. KG Standort Bruchsal Test Engineering 1 Nokia
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 1: Von der Maschinensprache zu C Prof. Dr. Maschinensprache: MIPS R2000 Was bewirkt folgendes Programm: 00100111101111011111111111100000 10101111101111110000000000010100
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
Mehr