Speichern von Zuständen
|
|
- Uwe Hajo Beck
- vor 5 Jahren
- Abrufe
Transkript
1 Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q R S C D altes Q neues Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 58
2 Beispiel Wir wollen das Ergebnis einer kombinatorischen Schaltung in einem D Latch speichern. Q soll wohldefiniert entweder den Inhalt vor oder nach der Berechnung speichern. Kombinatorische Schaltung Q Eingang n Bit Ergebnis ist ein Bit C (Clock) D (Daten) D Latch NOT(Q) Problem: Wann liegt das Ergebnis Bit stabil an D an? Zeit Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 59
3 Lösung: Taktung Wir wollen das Ergebnis einer kombinatorischen Schaltung in einem D Latch speichern. Q soll wohldefiniert entweder den Inhalt vor oder nach der Berechnung speichern. Kombinatorische Schaltung Q Eingang n Bit Ergebnis ist ein Bit C (Clock) D (Daten) D Latch NOT(Q) Letztes Clock Signal Takt Zyklus Nächstes Clock Signal Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 60 Zeit
4 D Latches sind Transparent bzgl. Taktsignal R S D C Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 61
5 D Flip Flop (ist nicht transparent) Ausgang ändert sich nur bei einer fallenden Taktflanke. D D C D Latch Q D C D Latch Q!Q C D C Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 62
6 Logische Bausteine Blockschaltdiagramme Grundlagen der Rechnerarchitektur Logik und Arithmetik 63
7 Bausteine als Black Box Wir haben jetzt einige Basisbausteine kennen gelernt. In dieser Vorlesung sind wir mit Blockschaltbildern in der Regel eine Abstraktionsebene höher. Die betrachteten Bausteine sind Kästen mit Eingangsleitungen und Ausgangsleitungen. Die Leitungen können entweder Daten (Datenleitungen) oder Steuersignale (Steuerleitungen) transportieren. Wie die Bausteine der Blockschaltbilder intern mit Grundbausteinen aufgebaut sind und wie die Taktung der einzelnen Bausteine genau abläuft betrachten wir in dieser Vorlesung nicht weiter. Eingangsleitungen Bemerkung: In Blockschaltbildern wird das für sequentielle Bausteine erforderliche Clock Signal häufig der Übersicht halber weg gelassen. Baustein Beispiel eines abstrakten Bausteins Ausgangsleitungen Grundlagen der Rechnerarchitektur Logik und Arithmetik 64
8 Verschaltung von Bausteinen Verbinden von Bauelementen Bus (lassen häufig die Markierung n Bits weg) Einzelne Leitung n Bits Datenflussrichtung Ausgabe eines logischen Bausteins Eingabe eines logischen Bausteins Kreuzungen und Verbindungen Beispiel Baustein A Leitungen kreuzen sich, sind aber nicht verbunden Verbindungen außerhalb der Leitungsendpunkte sind durch einen Punkt gekennzeichnet. Baustein B Baustein C Grundlagen der Rechnerarchitektur Logik und Arithmetik 65
9 Arithmetische, logische Einheit (ALU) ALU Operation (k) Angabe in Klammern ist die Anzahl Bits. Beispiel Funktionen AND A (n) OR B (n) ALU CarryOut (1) Zero (1) Result (n) Overflow (1) Ggf. ist die ALU auf eine Operation festgelegt. Dann Entfällt der Eingang und ALU wird mit dem Namen der Operation ersetzt. NOT Addition Subtraktion Vergleich Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 66
10 Register und Shift Register Eingang (n) Speichert n Bits Reset (1) Load (1) Shift (1) Ausgang (n) Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 67
11 Control Eingänge sind Datenleitungen aus anderen Bausteinen Control Ausgänge sind Steuerleitungen in andere Bausteine Ein Baustein der das Zusammenarbeiten von anderen Bausteinen koordiniert. In Abhängigkeit der Eingänge werden die passenden Steuerleitungen geschaltet. Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 68
12 Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe Store R1 Store R2 Zero Control Control soll folgenden Algorithmus implementieren: wenn R2 gerade und R1-R2=0, dann R1 = 0 wenn R2 ungerade und R1-R2!=0, dann R2 = R1-R2 sonst R1 = R1-R2 Anhand der Wahrheitstabelle wird dann die Schaltung gebaut. Rückgekoppelte Register haben immer einen wohldefinierten Zustand, da Register nur zur Clock Flanke aktualisiert werden. Grundlagen der Rechnerarchitektur Logik und Arithmetik 69
13 Darstellung von Algorithmen Grundlagen der Rechnerarchitektur Einführung 70
14 Pseudo Code Darstellungen Elementaranweisungen Variablenzuweisungen, z.b.: x = 42 Arithmetik, z.b.: y = 10 x = (42 + y) * 20 Das Symbol = beinhaltet implizit eine zeitliche Abfolge, damit ist z.b. sinnvoll: x = x + 1 Abkürzende Schreibweise für voriges Konstrukt: x++ Allgemein: als Elementaranweisung betrachten wir jede Anweisung, die auf der betrachteten Abstraktionsebene nicht weiter sinnvoll in eine Folge von einfacheren Anweisungen unterteilbar ist. Grundlagen der Rechnerarchitektur Assembler 71
15 Felder Felder für den Zugriff auf den Speicher, z.b.: A[] Zugriff auf ite Speicherstelle: A[i] Beispiel: 0x0f00 : 14 A[0] 0x0f01 : 15 A[1] 0x0f02 : 42 A[2] 0x0f03 : 43 A[3] x0f0f : 255 A[15] Grundlagen der Rechnerarchitektur Assembler 72
16 Sequenz von Elementaranweisungen Jedes Programm beginnt an einer Stelle und terminiert (hoffentlich) irgendwann. Start Im Flussdiagramm ist Beginn und Ende des Programms mit den ovalen Symbolen dargestellt. Im Beispiel also Start und Ende. Das einfachste Programm arbeitet einfach eine Sequenz von elementaren Anweisungen ab. Setze i auf i+1 Setze j auf 2*i usw. Im Flussdiagramm wird so eine Sequenz durch ein Rechteck dargestellt. Die Abarbeitungsrichtung des Programms wird durch die Pfeile gekennzeichnet. Ende Grundlagen der Rechnerarchitektur Assembler 73
17 If then else if then else am Beispiel: if(i<10) then <Code-Block 1> else <Code-Block 2> Ist i<10? ja nein Code Block 1 Code Block 2 Grundlagen der Rechnerarchitektur Einführung 74
18 Switch Statement Switch Statement am Beispiel: i=1? ja Code Block 1 switch(i) case 1: <Code-Block 1> case 2: <Code-Block 2>... defaut: <Code-Block n> nein i=2? nein... ja Code Block 2 Code Block n Grundlagen der Rechnerarchitektur Einführung 75
19 For Schleife For Schleife am Beispiel: for(i=0; i<10; i++) { <das innere der Schleife> } Bedeutet: Initialisiere i mit 0 Führe das innere der Schleife aus Erhöhe i um eins Wiederhole wenn immer noch i<10 Start Setze i auf 0 Ist i<10? ja Innere der Schleife nein Erhöhe i um 1 Ende Grundlagen der Rechnerarchitektur Assembler 76
20 While Schleife While Schleife an Beispiel: Start i=0 while(i<10) { <das innere der Schleife> i++ } Bedeutet: Initialisiere i mit 0 Führe das innere der Schleife aus Erhöhe i um eins Wiederhole wenn immer noch i<10 Setze i auf 0 Ist i<10? ja Innere der Schleife Erhöhe i um 1 nein Ende Grundlagen der Rechnerarchitektur Assembler 77
21 Beispiel Gegeben seien die ganzzahligen Variablen n und m. Bestimme größtes k welches n k < m erfüllt: Grundlagen der Rechnerarchitektur Assembler 78
22 Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
23 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: Multiplikator B: * Produkt: Grundlagen der Rechnerarchitektur Logik und Arithmetik 80
24 Maximale Länge des Ergebnisses Beobachtung: Multiplikand der Länge n Bits und Multiplikator der Länge m Bits ergibt Produkt einer Länge mit maximal n+m Bits. Grundlagen der Rechnerarchitektur Logik und Arithmetik 81
25 Das Verfahren als Algorithmus 1 Addiere Multiplikand zum Produkt Beispiel für 4 Bit Zahlen Start Teste erstes Multiplikator Bit Shifte Multiplikand ein Bit nach Links Shifte Multiplikator ein Bit nach Rechts 5ter Durchlauf? ja Ende nein 0 Beispiel 1001*0101: * Grundlagen der Rechnerarchitektur Logik und Arithmetik 82
Carry Lookahead Adder
Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:
MehrMinimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle
Minimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle # A B C D OK m9 + m11 1 0 1 P1 m7 + m15 1 1 1 P2 m11 + m15 1 1 1 P3 m0 + m1 + m4 + m5 0 0 P4 m0 + m1 + m8 + m9 0 0 P5 m4 + m5 + m6 + m7 0
MehrLogische Bausteine. Addierwerke. Grundlagen der Rechnerarchitektur Logik und Arithmetik 48
Logische Bausteine Addierwerke Grundlagen der Rechnerarchitektur Logik und Arithmetik 48 Addition eines einzigen Bits Eingang Ausgang a b CarryIn CarryOut Sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1
MehrControl Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control
Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe
MehrMinimierung nach Quine Mc Cluskey
Minimierung nach Quine Mc Cluskey F(A,B,C,D) =!A!B!C!D +!A!B!C D +!A B!C!D +!A B!C D +!A B C!D +!A B C D + A!B!C!D + A!B!C D + A!B C D + A B C D Notiere die Funktion als # A B C D Gruppe Binärelemente
MehrLogische Bausteine. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31
Logische Bausteine Sequentielle Schaltungen Shlt Grundlagen der Rechnerarchitektur Logik und Arithmetik 31 Sequentielle Schaltungen n Eingänge m Ausgänge n Eingänge m Ausgänge Zustand Ausgänge hängen nur
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
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:
MehrDarstellung von negativen binären Zahlen
Darstellung von negativen binären Zahlen Beobachtung für eine beliebige Binärzahl B, z.b. B=110010: B + NOT(B) ---------------------------------------------- = B + NOT(B) 1 + (Carry) ----------------------------------------------
MehrN Bit binäre Zahlen (signed)
N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101
MehrGrundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik
Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
MehrMinimierung nach Quine Mc Cluskey
Minimierung nach Quine Mc Cluskey F(A,B,C,D) =!A!B!C!D +!A!B!C D +!A B!C!D +!A B!C D +!A B C!D +!A B C D + A!B!C!D + A!B!C D + A!B C D + A B C D Notiere die Funktion als # A B C D Gruppe Binärelemente
MehrDas Verfahren in Hardware
Das Verfahren in Hardware Links Shift 8 Bit Multiplikand Demonstration mit 1001 * 0110 = 110110 2.Links Shift 8 Bit ALU Rechts Shift 4 Bit Multiplikator 3.Rechts Shift 8 Bit Produkt 1. Produkt = Produkt
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU 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:
MehrN Bit binäre Zahlen (signed)
N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101
MehrArithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9
Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
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:
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
MehrGrundlagen der Rechnerarchitektur. Einführung
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrGrundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik
Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division
MehrAllgemeine Lösung mittels Hazard Detection Unit
Allgemeine Lösung mittels Hazard Detection Unit Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 83
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 8. Vorlesung Inhalt Gleitkomma-Darstellung Normalisierte Darstellung Denormalisierte Darstellung Rechnerarchitekturen Von Neumann-Architektur Harvard-Architektur Rechenwerk (ALU)
MehrAssembler am Beispiel der MIPS Architektur
Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.
MehrN Bit Binärzahlen. Stelle: Binär-Digit:
N Bit Binärzahlen N Bit Binärzahlen, Beispiel 16 Bit: Stelle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binär-Digit: 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 Least Significant Bit (LSB) und Most Significant Bit (MSB)
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
MehrN Bit Darstellung von Gleitkommazahlen
N Bit Darstellung von Gleitkommazahlen Normalisierte, wissenschaftliche Darstellung zur Basis 2. Beispiel: Allgemein: Sign and Magnitude Darstellung für beispielsweise 32 Bits: (s=0 für + und s=1 für )
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
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrMultiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation
Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete
MehrHochschule Emden / Leer. Ausarbeitung. Speicherung digitaler Signale
Hochschule Emden / Leer Ausarbeitung Thema: Speicherung digitaler Signale eingereicht von: Jens Fresenborg Inhaltsverzeichnis 1 Speicherung Digitaler Signale 1 2 Asynchrone Speicherelemente 1 2.1 RS-Flip-Flop
MehrLösung Versuch Nr. 4
Digitaltechnik Praktikum 1.Sem. IIIB 1 ETHZ D-ITET Institut für Elektronik Lösung Versuch Nr. 4 1: Latches 1. RS Latch. Legen Sie ein neues Grafik Editor File rs_latch.gdf an (dieses und alle weiteren
MehrCache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22
Cache Grundlagen Schreibender Cache Zugriff SS 212 Grundlagen der Rechnerarchitektur Speicher 22 Eine einfache Strategie Schreibt man nur in den Cache, werden Cache und darunter liegender Speicher inkonsistent.
Mehr3 Verarbeitung und Speicherung elementarer Daten
3 Verarbeitung und Speicherung elementarer Daten 3.1 Boolsche Algebra Definition: Eine Boolsche Algebra ist eine Menge B mit den darauf definierten zweistelligen Verknüpfungen (+,*) sowie der einstelligen
Mehr4. Mikroprogrammierung (Firmware)
4. Mikroprogrammierung (Firmware) 4. Ein Mikroprogramm-gesteuerter Computer 4.2 Mikroprogramm-Beispiel: Multiplikation 4.3 Interpretation von Maschinenbefehlen durch ein Mikroprogramm 4. Mikroprogrammierung
MehrGrundlagen der Rechnerarchitektur. MIPS Assembler
Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32
MehrStruktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register
Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
Mehr5. Aufgabenblatt mit Lösungsvorschlag
Einführung in Computer Microsystems Sommersemester 2010 Wolfgang Heenes 5. Aufgabenblatt mit Lösungsvorschlag 19.05.2010 Aufgabe 1: Logik, Latch, Register Geben Sie für alle folgen reg-variablen an, ob
MehrAlgorithmen und Datenstrukturen (für ET/IT)
Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2016 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Grundlagen von Algorithmen
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
MehrVerilog Hardware Description Language (HDL)
Elektrotechnik Intelligent Systems Design Verilog Hardware Description Language (HDL) Einführung Prof. Dr.-Ing. Michael Karagounis Sommersemester 2016 HDL Konzept Was ist eine Hardwarebeschreibungssprache?
MehrWertebereiche, Overflow und Underflow
Wertebereiche, Overflow und Underflow s exponent fraction 1 Bit 8 Bits 23 Bits Kleinste darstellbare nicht negative Zahl annähernd 2,0 * 10 38 Größte darstellbare Zahl annähernd 2,0 * 10 38 Was, wenn die
MehrGleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124
Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir
MehrDer Zahlenformatstandard IEEE 754
Der Zahlenformatstandard IEEE 754 Single Precision Double Precision Insgesamt 32 Bits s exponent fraction 1 Bit 8 Bits 23 Bits Insgesamt 64 Bits s exponent fraction 1 Bit 11 Bits 52 Bits Bit Aufteilungen
MehrComputerarithmetik (15b)
Computerarithmetik (15b) Dazugehöriges Beispiel: Schleife Schritt Multiplikator Multiplikand Produkt 0 Anfangswerte 0011 0000 0010 0000 0000 1 1a: 1 -> Prod. = Prod. + Mcand 0011 0000 0010 0000 0010 2:
MehrQuiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.
Quiz Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur
MehrRechnernetze und Organisation
Arithmetic Logic Unit ALU Professor Dr. Johannes Horst Wolkerstorfer Cerjak, 9.2.25 RNO VO4_alu Übersicht Motivation ALU Addition Subtraktion De Morgan Shift Multiplikation Gleitkommazahlen Professor Dr.
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:
MehrProgramm heute. Algorithmen und Datenstrukturen (für ET/IT) Definition Algorithmus. Wie beschreibt man Algorithmen?
Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2015 1 Einführung Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 2 Grundlagen von Algorithmen
MehrVon der Schaltungslogik zur Informationsverarbeitung
Wintersemester 7/8 Schaltungslogik. Kapitel Von der Schaltungslogik zur Informationsverarbeitung Prof. Matthias Werner Professur Betriebssysteme 49 Schaltnetze! Gatter implementieren boolesche Funktionen
MehrÜbung zur Vorlesung Berechenbarkeit und Komplexität
RWTH Aachen Lehrgebiet Theoretische Informatik Reidl Ries Rossmanith Sanchez Tönnis WS 2012/13 Übungsblatt 7 26.11.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T15 Entwickeln Sie ein
MehrDigitallabor Aufgabe 5.4 Lauflicht
Digitallabor Aufgabe 5.4 Lauflicht Teilnehmer: Natalia Springer, Tong Cha 5.4.1 Lauflicht Aufgabenstellung Aus den Dioden D1..D8 ist ein Lauflicht zu erstellen. Es soll eine Diode leuchten. Bei jeder positiven
Mehr2. Vorzeichenbehaftete und vorzeichenlose Zahlen. 3.3 Beschleunigen der ganzzahligen Multiplikation - Booth s Algorithmus
Algorithmen II Inhalt Inhalt 1. Einleitung 2. Vorzeichenbehaftete und vorzeichenlose Zahlen 3. Grundlagen der ganzzahligen Arithmetik 3.1 Addition und Subtraktion 3.2 Multiplikation und Division 3.3 Beschleunigen
MehrMusterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller
SS 2004 VAK 18.004 Musterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller Aufgabenblatt 2.5 Lösung 2.5.1 Befehlszähler (Program Counter, PC) enthält Adresse des nächsten auszuführenden
MehrEntscheidungen. INE1, Montag M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Entscheidungen INE1, Montag M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Ablaufstrukturen bis jetzt nur Sequenzen von Code neu Auswahl (Programmverzweigung) - Code aufgrund
MehrE Q 1 Q 0 D 1 D X X X X
Musterlösung Übung 9 Aufgabe 1 a) Wahrheitstabelle: E Q 1 Q 0 D 1 D 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 X X 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 1 1 1 X X Bei diesem Automaten handelt es sich um einen Moore-Automaten.
MehrCache Blöcke und Offsets
Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich
MehrAutomaten. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
Automaten Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Automaten 1/28 2012-02-29 Flip-Flops Frage: wie kann man Werte speichern?
MehrTutorial Vivado/Verilog Teil 5 Zyklisches Schieberegister
Tutorial Vivado/Verilog Teil 5 Zyklisches Schieberegister Prof. Dr.-Ing. Michael Karagounis Dipl.-Ing. Rolf Paulus 1. Motivation Das Ziel dieses Laborversuchs ist es, den Entwurf von taktsensitiven always
MehrVHDL - Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg
VHDL - Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Synthese 1/19 2007-10-27 Inhalt Begriff Arten
MehrEinfü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 VHDL VHDL Akronym für Very High-Speed Integrated Circuit Hardware Description Language
MehrIEEE 754 Encoding. Wie stellt man im IEEE 754 Format eigentlich die 0 dar!? Double Precision (Bias=1023)
IEEE 754 Encoding Wie stellt man im IEEE 754 Format eigentlich die 0 dar!? ( 1) S * (1 + Fraction) * 2 (Exponent Bias) Single Precision (Bias=127) Double Precision (Bias=1023) Dargestelltes Objekt Exponent
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 20.03.09 4-1 Heutige große Übung Ankündigung
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
MehrErweiterung von Adressraum und Bit Tiefe
Erweiterung von Adressraum und Bit Tiefe Erweiterung des vorigen Beispiels ist offensichtlich: Vergrößerung des Adressraums (in der Größenordnung 2 n ): Füge eine Adressleitung hinzu und verdoppele die
MehrComputational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 01.02.2017 Probeklausur zu Computational Engineering
MehrSemestralklausur Einführung in Computer Microsystems
Semestralklausur Einführung in Computer Microsystems 07. Juli 2008 Dr.-Ing. Wolfgang Heenes Name (Nachname, Vorname) Matrikelnummer Unterschrift Prüfung Bitte ankreuzen Anzahl abgegebene Zusatzblätter:
MehrMultiplexer und Schieberegister
Hard- und Softwaretechnik Schaltwerke Multiplexer und Schieberegister Andreas Zbinden Gewerblich- Industrielle Berufsschule Bern Inhaltsverzeichnis 1 Multiplexer, Demultiplexer 2 2 Schieberegister 6 2.1
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 2 Sequentielle Logik. Aufgabe 1:
Übungen zur Vorlesung echnische Informatik I, SS 2 Strey / Guenkova-Luy / Prager Übungsblatt 2 Sequentielle Logik Aufgabe : Analysieren Sie das gezeigte Flip-Flop. Geben Sie eine Wahrheitstabelle an, wie
MehrGrundlagen der Rechnerarchitektur. Speicher
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrClevere Algorithmen programmieren
ClevAlg 2017 Arithmetische Operationen Clevere Algorithmen programmieren Dennis Komm, Jakub Závodný, Tobias Kohn 27. September 2017 Addition zweier Zahlen Addition von Zahlen Wir stellen Zahlen als Strings
Mehr5. Algorithmen. K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
5. Algorithmen K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 21. Okt. 2015 1. Berechne 2 n. Zu lösende Probleme 2. Berechne die Fakultät einer nat. Zahl: n! = 1 * 2 *... n 3. Entscheide,
MehrHardware 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
MehrHandelt es sich um ein taktzustands- oder taktflankengesteuertes D-Flipflop?
Kapitel 4 - Zähler Versuch 400 D-Flipflop Ein D-Flipflop besitzt nur einen Eingang D. Es hat nur zwei Betriebszustände: Bei T = 0 behält es seinen bisherigen Zustand, es speichert. Bei T = 1 übernimmt
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining Implementierung
MehrData Hazards. Grundlagen der Rechnerarchitektur Prozessor 74
Data Hazards Grundlagen der Rechnerarchitektur Prozessor 74 Motivation Ist die Pipelined Ausführung immer ohne Probleme möglich? Beispiel: sub $2, $1, $3 and $12, $2, $5 or $13, $6, $2 add $14, $2, $2
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Analoge und digitale Hardware bei
MehrSchreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).
Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle
MehrTechnische Universität München SoSe 2015 Institut für Informatik I Mai 2015 Dr. Tobias Lasser. Aufgabe 1 Rechnen mit Landau-Symbolen
Technische Universität München SoSe 2015 Institut für Informatik I-16 27. Mai 2015 Dr. Tobias Lasser Lösungsvorschläge zur Musterklausur zu Algorithmen und Datenstrukturen Aufgabe 1 Rechnen mit Landau-Symbolen
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
Mehr, 2014W Übungsgruppen: Mo., Mi.,
VU Technische Grundlagen der Informatik Übung 5: ikroprozessor (icro16) 183.579, 2014W Übungsgruppen: o., 01.12. i., 03.12.2014 Aufgabe 1: Schaltwerksentwicklung Hexapod / Teil 2 a) Befüllen Sie die untenstehende
MehrTeil V. Programmierbare Logische Arrays (PLAs)
Teil V Programmierbare Logische Arrays (PLAs) 1 Aufbau von PLAs Programmierbares Logisches Array (PLA): Programmierbarer Einheitsbaustein aufgebaut als ein Gitter (Array) von Basisbausteinen (Zellen).
MehrGrundlagen der Rechnerarchitektur. Einführung
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrDarstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21
Darstellung von Instruktionen Grundlagen der Rechnerarchitektur Assembler 21 Übersetzung aus Assembler in Maschinensprache Assembler Instruktion add $t0, $s1, $s2 0 17 18 8 0 32 6 Bit Opcode Maschinen
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Tri-State Ausgangslogik Ausgang eines
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
Mehr