Aufgabe 1 : Assembler
|
|
|
- Sofie Busch
- vor 7 Jahren
- Abrufe
Transkript
1 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 2 Aufgabe 1 : Assembler (maximal 21 Punkte) 1.1: Verständnisfragen (maximal 4 Punkte) (a) (1 Punkt) Kreuzen Sie an, welche der folgenden Statements in MIPS-Assemblercode sich auf die Grösse des erzeugten Maschinenprogramms auswirken:.word 0x loop: jr $ra nop (b) (1 Punkt) Was versteht man unter einem Instruktionssatz (=Befehlssatz)? (Antwort in 1 2 Sätzen) Ein Befehlssatz ist die Menge von Maschinenbefehlen (Instruktionen), die ein bestimmter Prozessor verarbeiten kann. (c) (2 Punkte) Ein Prozessor ohne Branch-Delay-Slot führt folgenden Code aus: loop: j loop Kann er unter Umständen weitere Befehle abarbeiten? Begründen Sie. Der Prozessor führt eine Endlosschleife aus, die er auf normalem Wege nicht verlassen kann. Dies hindert ihn jedoch nicht daran, auf Interrupts zu reagieren und die entsprechenden Unterbrechungsroutinen auszuführen. Auf diese Weise können z. B. moderne Betriebssysteme stabil weiterlaufen, selbst wenn ein einzelnes Programm nicht mehr reagiert. 1.2: Codeübersetzung (maximal 10 Punkte) Hinweis: Auf der letzten Seite des Prüfungsbogens finden Sie eine Übersicht von Assemblerbefehlen. Alle für diese Aufgabe benötigten Befehle sind dort enthalten. In Tabelle 1 auf der nächsten Seite sind verschiedene Ausschnitte aus C-Code (mit den Datentypen der benutzen Variablen) und MIPS-Assemblercode gegeben. Dabei ist eine Variable vom Typ intxx_t immer ein xx Bit breiter Integer mit Vorzeichen, uintxx_t ohne Vorzeichen. abs sei ein Präprozessor-Makro, das heisst, für abs(x) wird kein Funktionsaufruf erzeugt, sondern Code, der den Betrag von x direkt berechnet. Der verwendete MIPS- Prozessor hat keinen Branch-Delay-Slot. Finden Sie 3 Paare aus C- und Assemblercode, die die gleiche Funkionalität implementieren und geben Sie für jede Variable im C-Code ihre Entsprechung im Assemblercode an. Benutzen Sie hierfür Tabelle 2. Achtung: Nicht jeder Codeausschnitt hat ein Gegenstück.
2 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 3 Tabelle 1: Ausschnitte aus C-Code (links) und Assemblercode (rechts) 1. if(a > 0) b = 1; else b = 0; a, b: int32_t 2. a = b + c; if(a < b) d = e; a, b, c, d, e: uint32_t 3. a = b + c; a, c: uint64_t, b: uint32_t 4. x = abs(x); / / Betrag von x x: int32_t a) and $t1, $zero, $zero beq $zero, $s1, L1 addiu $t1, $t1, 1 L1: b) slt $v0, $zero, $a0 c) slt $t1, $zero, $t0 bne $t1, $zero, L1 sub $t0, $zero, $t0 L1: d) addu $s0, $t1, $t2 e) addu $v1, $a1, $a2 sltu $v0, $v1, $a1 addu $v0, $v0, $a0 Tabelle 2: Zuordnung der Codeausschnitte. Füllen Sie nicht mehr als 3 Zeilen aus! C MIPS Variablenzuordnung 1 b a: $a0 b: $v0 2 kein passender Assemblercode-Ausschnitt 3 e a: $v0(high), $v1(low) b: $a2 c: $a0(high), $a1(low) 4 c x: $t0
3 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 4 1.3: Funktionen (maximal 7 Punkte) Eine Funktion liefert in bestimmten Fällen falsche Ergebnisse. Der Fehler wurde gefunden und korrigiert. In untenstehender Tabelle ist links der Originalcode und rechts der korrigierte Code gezeigt. Es wurden nur die Zeilen 12 bis 14 eingefügt. Es gelten die aus der Vorlesung bekannten Konventionen für Funktionsaufrufe. 1.data 2 gaussvals: 3.float , , text 6.globl gauss 7 gauss: 8 slt $v0, $a0, $zero 9 beq $v0, $zero, argpos 10 sub $a0, $zero, $a0 11 argpos: sll $a0, $a0, 2 16 lw $v0, gaussvals($a0) 17 return: 18 jr $ra 1.data 2 gaussvals: 3.float , , text 6.globl gauss 7 gauss: 8 slt $v0, $a0, $zero 9 beq $v0, $zero, argpos 10 sub $a0, $zero, $a0 11 argpos: 12 add $v0, $zero, $zero 13 slti $s6, $a0, beq $s6, $zero, return 15 sll $a0, $a0, 2 16 lw $v0, gaussvals($a0) 17 return: 18 jr $ra Die drei Punkte (... ) bei gaussvals in Zeile 3 stehen für weitere Fließkommazahlen, insgesamt enthält das Datenfeld 200 Werte. (a) (4 Punkte) Was war der Fehler, der korrigiert wurde? Für zu große Argumente $a0 wurde ein Wert außerhalb der gültigen Dimensionen des Datenfelds gaussvals geladen. Dies wird nun vorher überprüft und stattdessen Null zurückgegeben.
4 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 5 Die korrigierte Funktion wird getestet, sie gibt nun die erwarteten Werte zurück. Als sie allerdings in ein größeres, sonst korrektes Programm eingesetzt wird, liefert dieses falsche Ergebnisse. (b) (3 Punkte) Wo im Code liegt der Fehler? Erläutern Sie, worin genau er besteht und wie man ihn am einfachsten beheben kann. Die neue Implementierung überschreibt das Register $s6, ohne es vorher zu sichern und anschließend zurückzuladen. Laut Aufrufkonvention ist dies nicht zulässig, denn die aufrufende Funktion muss sich darauf verlassen können, dass der Wert des Registers unverändert bleibt. Am einfachsten lässt sich das Problem beheben, indem man ein $t-register benutzt.
5 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 6 Aufgabe 2 : Computerarchitektur (maximal 24 Punkte) 2.1: Datenpfad (maximal 8 Punkte) In dieser Teilaufgabe wird von einem Prozessor mit folgenden Eingenschaften ausgegangen: Es werden insgesamt 5 Pipeliningstufen verwendet (IF, ID, EX, MEM, WB). Die EX Stufe der Pipeline dauert mit bis zu t E X = 210 ns am längsten, während die ID Stufe mit t I D = 80 ns am schnellsten abgearbeitet ist. Die Signallaufzeiten des Taktsignals vom Taktgenerator zu den einzelnen Registern zwischen den Pipeline-Stufen liegen im Intervall [ t d,mi n, t d,max ] = [6,18] ns. Die verwendeten Register haben eine Verzögerung von t clktoq = 15 ns zwischen aktiver Taktflanke und dem Anliegen eines gültigen Ausgangssignals. Die Setup- und Hold- Zeiten der Register liegen bei t setup = 13 ns respektive t hol d = 10 ns. In den folgenden Aufgaben geht es darum, die maximale Taktfrequenz dieses Prozessors zu bestimmen. (a) (4 Punkte) Beschreiben Sie formal, welche beiden Bedingungen die Signallaufzeiten und die Taktperiode T clk erfüllen müssen, damit dieser Prozessor korrekt arbeitet. t clktoq + t I D t d,max t }{{ d,mi n } +t hol d (1) t clkskew T clk t clktoq + t E X + t setup + t clkskew (2) (b) (2 Punkte) Welche maximale Taktfrequenz f clk,max resultiert aus diesen Bedingungen? T clk,mi n = t clktoq + t E X + t setup + t clkskew = = 250ns (3) f clk,max = (T clk,mi n ) 1 = 1/250ns = 4MHz (4) Register Kontrollsignale Datenspeicher bypass 0 1 MUX Register Abbildung 1: Bypass für die MEM Stufe, falls kein Speicherzugriff benötigt wird. (c) (2 Punkte) Einige Instruktionen (z. B. Verzweigungen) brauchen keinen Speicherzugriff in der MEM Phase. Ist es möglich, das Datenspeicher-Modul wie in Abbildung 1 gezeigt
6 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 7 mit einem Multiplexer zu umgehen? Begründen Sie rechnerisch. Der Multiplexer habe eine Antwortzeit von t mux = 5 ns. Erste Ungleichung der Teilaufgabe a) muss erfüllt sein! nicht erfüllt! (5) 2.2: Branch Prediction (maximal 12 Punkte) In dieser Aufgabe betrachten wir eine fünfstufige Pipeline-Architektur ohne Cache mit den bekannten Stufen IF, ID, EX, MEM und WB. Die Architektur besitzt eine zusätzliche Logik in den ersten beiden Stufen, um schon frühzeitig in der ID- statt der MEM-Stufe über den Sprung zu entscheiden und die Verzweigungsadresse zu berechnen. (a) (1 Punkt) Die frühzeitige Entscheidung minimiert die Auswirkungen welches Hazard-Typs? Ablauf Hazard. (b) (1 Punkt) Wie viele Stall-Zyklen müssen ohne beziehungsweise mit frühzeitiger Entscheidung eingefügt werden? Neben den Stall-Zyklen wird keine weitere Technik zur Vermeidung dieser Hazards verwendet. ohne frühzeitige Entscheidung: Stall-Zyklen mit frühzeitiger Entscheidung: Stall-Zyklen Abbildung 2: 2-Bit-Prädiktion für dynamische Sprungvorhersage. Für die nachfolgenden Teilaufgaben wird die Architektur zusätzlich mit einem (oder mehreren) 2-Bit-Prädiktor(en) (siehe Abbildung 2) ausgestattet. Der Ausgangszustand des Prädiktors sei dabei immer likely taken. Die Verwendung der Prädiktion soll für untenstehendes MIPS Programm analysiert werden, welches die Summennorm eines Vektors (gespeichert als Array) berechnet. Die Startadresse des Arrays wird im Register $a0 übergeben, die Länge des Arrays im Register $a1. Das Ergebnis der Funktion wird im Register $v0 zurückgegeben, welches zu Beginn mit 0 initialisiert ist.
7 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 8 Betrachten Sie in den Aufgaben jeweils die Ausführung des Programms für folgendes Array mit 5 Elementen: [ 0, -1, -4, 3, 2 ] Verwenden Sie für das Ausfüllen der Tabellen folgende Abkürzungen für die Zustände: ST strongly taken, LT likely taken, LNT likely not taken, SNT strongly not taken. Hinweis: Auf der letzten Seite des Prüfungsbogens finden Sie eine Übersicht von Assemblerbefehlen. Alle in dieser Aufgabe verwendeten Befehle sind dort enthalten. #1 loop: addi $a1,$a1,-1 #2 lw $t0,0($a0) #3 slt $t1,$t0,$zero #4 beq $t1,$zero,pos #5 sub $t0,$zero,$t0 #6 pos: add $v0,$v0,$t0 #7 addi $a0,$a0,4 #8 bne $a1,$zero,loop #9 jr $ra (c) (9 Punkte) Der hier verwendete Prozessor habe nur einen einzigen 2-Bit-Prädiktor für alle Entscheidungen. Das heisst, dass derselbe 2-Bit-Prädiktor für alle Entscheidungen verwendet wird. Vervollständigen Sie Tabelle 3 mit den Prädiktor-Zuständen, und der Analyse ob die Sprungvorhersage korrekt war. Verwenden Sie für die Zustände die oben genannten Abkürzungen und ja/nein für die Korrektheit der Sprungvorhersage! Siehe Tabelle 3. Tabelle 3: Dynamische Sprungvorhersage für einen globalen 2-Bit-Prädiktor. Iteration Zustand vor beq (#4) LT ST ST ST ST Sprungvorhersage beq (#4) korrekt ja nein nein ja ja Zustand vor bne (#8) ST LT LT ST ST Sprungvorhersage beq (#8) korrekt ja ja ja ja nein (d) (1 Punkt) Macht es Sinn, statt einen globalen 2-Bit-Prädiktor für alle Entscheidungen mehrere 2-Bit-Prädiktoren für jede Verzweigungsinstruktion zu benutzen? Begründen Sie in einem Satz und unabhängig von den Resultaten der vorangehenden Teilaufgaben! Das macht Sinn, z.b. für Situationen, in welchen die Sprungentscheidung innerhalb einer Schleife in den meisten Fällen nicht der Entscheidung der Schleifenbedingung (immer Sprung vorhersagen) entspricht.
8 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 9 2.3: Pipelining & Parallelität (maximal 4 Punkte) (a) (4 Punkte) Treffen folgende Aussagen zu? Kreuzen Sie die jeweils richtige Antwort an. Ein richtig gesetztes Kreuz gibt es 0.5 Punkte, für ein falsch gesetztes Kreuz werden 0.5 Punkte abgezogen. Ein negatives Punktetotal ergibt 0 Punkte. i. Durch geschicktes Umordnen von Instruktionen wird die Forwarding-Unit eines Prozessors für jedes beliebige Programm hinfällig, da sie dann keinen Einfluss mehr auf die Ausführungszeit des Programms hat. richtig falsch Falsch: Mit Function-Reordering können nicht immer alle Datenabhängigkeiten beseitigt werden. ii. Wenn eine Kombination von zwei Instruktionen in der Pipeline von der Rechenarchitektur nicht unterstützt wird, spricht man von einem strukturellen Hazard. richtig falsch Richtig: Eine durch die Architektur nicht unterstützte Kombination von Instruktionen ist per Definition ein struktureller Hazard. iii. Für die Ausführung aller Schleifen mit vielen Iterationen gilt: Es macht keinen Unterschied, ob statische Prädiktion oder dynamische 2-Bit-Prädiktion benutzt wird, das heisst beide, Strategien machen die gleiche Anzahl von falschen Vorhersagen. richtig falsch Falsch: Statische Prädiktion kann auch immer falsch liegen, es gibt keine Garantie dass statische Prädiktion immer die bessere Vorhersage benutzt. Zudem ist die Anzahl falscher Vorhersagen des 2-Bit-Prädiktors von dessen Zustand vor der Schleife abhängig. iv. Forwarding kann die Zeit zwischen dem Laden einer Instruktion aus dem Speicher und deren Verlassen der Pipeline verringern. richtig falsch Richtig: Forwarding wird fürs Beseitigen von Datenabhängigkeiten verwendet und kann dadurch Stalls nach dem Laden der Instruktion verhindern, welche sonst zusätzliche Taktzyklen für die Ausführung einer Instruktion verlangen.
9 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 10 v. Superpipelining beschleunigt die Programmausführung, da damit die Auswirkungen von Hazards auf die Ausführungszeit reduziert werden. richtig falsch Falsch: Hazards haben hier eine noch grössere Auswirkungen auf die Ausführungszeit! vi. Um die Pipeline aufgrund eines Hazards zu stallen, wird das Taktsignal des Prozessors angehalten. richtig falsch Falsch: Die Stufen müssen für die vorherige Funktion immer noch weiter ausgeführt werden. Nur einzelne Stufen werden angehalten beziehungsweise deren Taktsignal unterdrückt. vii. Ein VLIW-MIPS-Prozessor nutzt wie ein Standard-MIPS-Prozessor eine gemeinsame Pipeline, ein gemeinsames Registerfeld und denselben Speicher für die parallel ausgeführten Instruktionen. richtig falsch Richtig. Nur die Anzahl Recheneinheiten, bez. Ports für das Registerfeld/den Speicher werden erweitert. viii. VLIW MIPS beschleunigt die Programmausführung gegenüber einem Standard- MIPS-Prozessor durch dynamische Parallelität. richtig falsch Falsch: VLIW ist ein Beispiel für statische Parallelität.
10 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 11 Aufgabe 3 : Cache (maximal 19 Punkte) 3.1: Cache Grundlagen (maximal 6 Punkte) (a) (1 Punkt) Erklären Sie die beiden Arten der Lokalität bei Speicherabfragen mit je einem Satz. Zeitliche Lokalität: Gleiche Adresse wird innerhalb kurzer Zeit mehrfach referenziert. (0.5P) Örtliche Lokalität: Beieinander gelegene Adressen werden innerhalb kurzer Zeit referenziert. (0.5P) (b) (1 Punkt) Beschreiben Sie ein kurzes Programm (in Pseudocode), das einen hohen Grad an örtlicher Lokalität aufweist. Begründen Sie ihre Antwort in 1-2 Sätzen. Array-Zugriff. (1P) Viele Antworten möglich, typisches Beispiel ist der wiederholte (c) (1 Punkt) Erklären Sie in 1-2 Sätzen den Unterschied zwischen einem write-through und einem write-back Cache. Write-through: Bei jedem Schreibvorgang wird sowohl in den Cache als auch in den Hauptspeicher geschrieben. (0.5P) Write-back: Der Prozessor schreibt nur in den Cache. In den Hauptspeicher wird nur geschrieben, wenn ein Block ersetz wird. (0.5P) (d) (1 Punkt) Gegeben ist eine Prozessor-Architektur P1 mit einem L1-Cache (First Level Cache) und einem Hauptspeicher. Nehmen Sie an, T L1 sei die Zugriffszeit auf Daten im Cache, H L1 die Hit-Rate (relativer Anteil erfolgreicher Zugriffe in L1) und T M M die Miss-Strafe bei einem Hauptspeicher-Zugriff. Geben Sie die durchschnittliche Zugriffszeit T P1 einer Lese-Operation (Read) auf ein Speicherdatum für die Architektur P1 an. (1P) T P1 = T L1 + (1 H L1 ) T M M (e) (2 Punkte) Gegeben ist eine Prozessor-Architektur P2 mit je einem L1-Cache und-l2 Cache und einem Hauptspeicher. Nehmen Sie an, T L1 und T L2 seien die Zugriffszeiten auf Daten im L1- bzw. L2-Cache, H L1 und H L2 die Hit-Raten für den L1- bzw. L2-Cache und T M M die Miss-Strafe bei einem Hauptspeicher-Zugriff.
11 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 12 Geben Sie die durchschnittliche Zugriffszeit T P2 einer Lese-Operation (Read) auf ein Speicherdatum für die Architektur P2 an. T P2 = T L1 + (1 H L1 ) (T L2 + (1 H L2 ) T M M ) (2P)
12 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite : Ersetzungsstrategie (maximal 13 Punkte) Eine häufig angewendete Ersetzungsstrategie bei einem Cache-Miss ist das Ersetzen des jeweiligen Blocks, der am längsten nicht referenziert wurde, auch Least Recently Used (LRU) genannt. Eine weitere Strategie, die in modernen Prozessor-Architekturen verwendet wird, nennt sich Pseudo Least Recently Used (PLRU). Der Ablauf von PLRU für einen 4-fach assoziativen Cache mit entsprechend 4 Cacheblöcken (L0, L1, L2 und L3) pro Cachezeile und drei Status-Bits (B0, B1 und B2) pro Cachezeile ist in Abbildung 3 abgebildet. Bei einem Cache-Miss wird anhand von B0 entschieden, ob in der Gruppe {L0, L1} oder {L2, L3} ein Block ersetzt wird. Im nächsten Schritt wird der zu ersetzende Block anhand von B1 oder B2 gefunden. Beim Zugriff auf einen vorhandenen Block werden die Bits, welche im Enscheidungsdiagramm auf dem Weg zum entsprechenden Block liegen, so gesetzt, dass sie auf diejenige Kante zeigen, die nicht zum zugegriffenen Block führt. Zum Beispiel werden nach dem Zugriff auf Block L0 die beiden Bits B0 und B1 auf 1 gesetzt. Der Wert vom B2 wird nicht beeinflusst. Alle vier Blöcke valid? Ja Nein Ersetze non-valid Block B0 = 0? Ja Nein B1 = 0? B2 = 0? Ja Nein Ja Nein Ersetze L0 Ersetze L1 Ersetze L2 Ersetze L3 Abbildung 3: Ablauf der PLRU Ersetzungsstrategie für einen 4-fach assoziativen Cache (a) (3 Punkte) Wie sind die Bits B0, B1 und B2 nach einem Zugriff auf einen der vier Blöcke jeweils gesetzt? Füllen Sie dafür Tabelle 5 aus. Falls ein Bit nicht beeinflusst wird, kennzeichnen Sie dies mit einem X. Block-Zugriff B0 B1 B2 L0 1 1 X L1 L2 L3 Tabelle 4: Füllen Sie die Tabelle aus.
13 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 14 Block-Zugriff B0 B1 B2 L0 1 1 X L1 1 0 X L2 0 X 1 L3 0 X 0 Tabelle 5: Musterlösung (1P pro Zeile) (b) (3 Punkte) Nennen Sie ein Beispiel einer Block-Zugriffs-Abfolge, an der man sieht, dass sich PLRU nicht wie LRU verhält. Bei der Zugriffs-Abfolge L1 L2 L3 L0 wird im nächsten Schritt Block L2 ersetzt und nicht L1 wie bei LRU. (3P) (c) (6 Punkte) Geben Sie die Anzahl der benötigten Status-Bits für einen allgemeinen N-fach assoziativen Cache mit PLRU-Ersetzungsstrategie an. Wieviele Bits würde man für einen N-fach assoziativen Cache mit einer korrekten Implementierung von LRU mindestens brauchen? LRU: (3P) Bei N Blöcken haben wir N! verschiedene Reihenfolgen der Block-Zugriffe. Um diese zu Codieren benötigt man mindestens #Bi t s C ache = log 2 (N!) PLRU: (3P) Die Anzahl benötigter Bits entspricht der Anzahl Knoten im Entscheidungs- Baum wie in Abbildung 3, die keine Blätter sind. Somit haben wir #Bi t s C ache = N 1 Eine weitere Herleitung: Der einfachste Fall ist ein 2-fach assoziativer Cache, für den man N 1 = 1 Status-Bit braucht. Für jeden Cache-Block, um den man den Cache erweitert, benötigt man nun ein zuätzliches Status-Bit. (d) (1 Punkt) Nennen Sie einen Vorteil von PLRU gegenüber LRU. LRU erfordert mehr Status-Bits (1P), d.h. komplexere Hardware, da log 2 (N!) > N 1 für N > 2
14 Winter 2015/16 Technische Informatik I Lösungsvorschlag Seite 21 Anhang MIPS-Instruktionssatz Zusammenfassung einiger MIPS-Assemblerinstruktionen, die in den Aufgaben 1 und 2 benötigt werden könnten. Instruktion Bedeutung add $s1, $s2, $s3 $s1 = $s2 + $s3 addi $s1, $s2, 100 $s1 = $s addiu $s1, $s2, 100 $s1 = $s (unsigned) addu $s1, $s2, $s3 $s1 = $s2 + $s3 (unsigned) and $s1, $s2, $s3 $s1 = $s2 & $s3 (bitweises Und) andi $s1, $s2, 100 $s1 = $s2 & 100 (bitweises Und) beq $s1, $s2, 25 Wenn ($s1 == $s2), verzweige zu PC bne $s1, $s2, 25 Wenn ($s1!= $s2), verzweige zu PC j label Springe zu label jal label Springe zu label und setze $ra jr $s1 Springe zu $s1 li $s1, 100 $s1 = 100 lui $s1, 100 $s1 = lw $s1, 100($s2) $s1 = Speicher[$s ] move $s1, $s2 $s1 = $s2 mul $s1, $s2, $s3 $s1 = $s2 $s3 nop No operation sll $s1, $s2, 10 $s1 = $s2 << 10 slt $s1, $s2, $s3 Setze $s1=1 falls ($s2 < $s3); sonst $s1=0 slti $s1, $s2, 100 Setze $s1=1 falls ($s2 < 100); sonst $s1=0 sltu $s1, $s2, $s3 Setze $s1=1 falls ($s2 < $s3) (unsigned); sonst $s1=0 sub $s1, $s2, $s3 $s1 = $s2 - $s3 sw $s1, 100($s2) Speicher[$s ] = $s1
Technische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Übung 7 Datum : 22.-23. November 2018 Pipelining Aufgabe 1: Taktrate / Latenz In dieser Aufgabe
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 6 Datum: 24. 25. 11. 2016 Pipelining 1 Taktrate / Latenz In dieser
Technische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018
Technische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018 Aufgabe 1: Taktrate / Latenz Einzeltakt-Architektur Pipelining-Architektur Pipelining-Architektur 15 15 120 ps 15
Technische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016
Technische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016 Aufgabe 1: Taktrate / Latenz TI1 - Übung 6: Pipelining Einzeltakt-Architektur TI1 - Übung 6: Pipelining Pipelining-Architektur
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
Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen
Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember 2016 Bitte immer eine Reihe freilassen Ziele der Übung Verschiedene Arten von Instruktionsparallelität
Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer
Aufgabe 8.1 Ausnahmen (Exceptions) a. Erklären Sie den Begriff Exception. b. Welche Arten von Exceptions kennen Sie? Wie werden sie ausgelöst und welche Auswirkungen auf den ablaufenden Code ergeben sich
Technische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 8 Datum: 30. 11. 1. 12. 2017 In dieser Übung soll mit Hilfe des Simulators WinMIPS64 die
Data 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
Technische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Musterlösung zu Übung 3 Datum : 25.-26. Oktober 2018 Aufgabe 1: Wurzelverfahren nach Heron Das
Allgemeine 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
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
Datenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren
Datenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren der beiden Registerwerte $t1 und $t2 in einem Zielregister
Name: 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
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
Lehrveranstaltung: PR Rechnerorganisation Blatt 10. Thomas Aichholzer
Aufgabe 10.1 Gegeben sei folgendes Code-Fragment, das zwei geschachtelte Schleifen implementiert: addi $t0, $a0, 100 outer: addi $t1, $a1, 200 inner: lw $t4, 0($t0) lw $t5, 0($t1) add $t2, $t0, $t1 add
Aufgabe 1 : Assembler
Sommer 2016 Technische Informatik I Lösungsvorschlag Seite 2 Aufgabe 1 : Assembler (maximal 23 Punkte) Hinweis: Auf der letzten Seite des Prüfungsbogens finden Sie eine Übersicht von Assemblerbefehlen.
Beispiele 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
Schriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Rechnersysteme Studiengang: Bachelor (PF CSE / IF; WPF CV / WIF) am: 30. Juli 2008 Bearbeitungszeit: 120 Minuten
Datenpfad 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:
Technische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer
Technische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer Ziele der Übung Aufgabe 1 Ein lauffähiges Assembler-Programm Umgang mit dem Debugger Aufgabe 2 (Zusatzaufgabe) Lesen und Analysieren
Tutorium Rechnerorganisation
Woche 6 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
Programmiersprachen 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
Technische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 8 Musterlösung zu Übung 5 Datum : 8.-9. November 8 Aufgabe : MIPS Architektur Das auf der nächsten
Lösungsvorschlag 10. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag. Übung Technische Grundlagen der Informatik II Sommersemester 29 Aufgabe.: MIPS-Kontrollsignale Für die 5 Befehlstypen a) R-Format
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:
Pipelining. 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:
Technische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Rechnerarchitektur Aufgabe
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:
, 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
Übungsblatt 6. Implementierung einer Befehlspipeline
Praktikum zur Vorlesung Prozessorarchitektur SS 2016 Übungsblatt 6. Implementierung einer Befehlspipeline 1.1. Einführung Durch die Einteilung der Befehlsverarbeitung in mehrere Zyklen in dem vorangegangenen
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
Datenpfad 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:
Technische Informatik I Übung 3: Assembler
Technische Informatik I Übung 3: Assembler Roman Trüb Computer Engineering Group, ETH Zürich 1 Lernziele Übung 3 Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Assembler Codeanalyse Aufgabe 2
Prozessorarchitektur. Sprungvorhersage. M. Schölzel
Prozessorarchitektur Sprungvorhersage M. Schölzel Inhalt Sprungvorhersage statische Methoden dynamische Methoden Problem Fetch-Phase Befehlswarteschlange Speicher b? Neue Adresse für noch nicht bekannt
Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch , 14:00 Uhr
Praktikum zur Vorlesung Prozessorarchitektur SS 2017 Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch 21.06.2017, 14:00 Uhr 1.1. Einführung Programmsteuerbefehle
Lösungsvorschlag zur 3. Übung
Prof Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik Wintersemester 09/10 1 Präsenzübungen 11 Schnelltest Lösungsvorschlag zur Übung a) Welche der folgenden Aussagen entsprechen
Beispielhafte Prüfungsaufgaben zur Vorlesung Technische Informatik I Gestellt im Frühjahr 2012
Beispielhafte Prüfungsaufgaben zur Vorlesung Technische Informatik I Gestellt im Frühjahr 2012 Die beigefügte Lösung ist ein Vorschlag. Für Korrektheit, Vollständigkeit und Verständlichkeit wird keine
Computational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 12.02.2014 Klausur zu Computational Engineering I............
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78
32 Bit Konstanten und Adressierung Grundlagen der Rechnerarchitektur Assembler 78 Immediate kann nur 16 Bit lang sein Erinnerung: Laden einer Konstante in ein Register addi $t0, $zero, 200 Als Maschinen
Grob-Struktur des Prozessor-Speichersystems
2.3.2 Speicherstruktur (1) Grob-Struktur des Prozessor-Speichersystems Chipsatz (Erklärung s. später, Folie 104) 22.4.-27.5.2013, Folie 52 2.3.2 Speicherstruktur (2) Zugriff Prozessor zumeist auf schnelle
21. Februar Name:. Vorname. Matr.-Nr:. Studiengang
Klausur 21. Februar 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,
Klausur Mikroprozessortechnik 29. März 2010
Klausur Mikroprozessortechnik 29. März 2010 Name:... Vorname:... Matr.-Nr:... Studiengang:... Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen
Prinzipieller Aufbau und Funktionsweise eines Prozessors
Prinzipieller Aufbau und Funktionsweise eines Prozessors [Technische Informatik Eine Einführung] Univ.- Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg
Grundlagen 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
RO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 5 am 25.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
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.
, 2014W Übungsgruppen: Mo., Mi.,
VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2014W Übungsgruppen: Mo., 12.01. Mi., 14.01.2015 Aufgabe 1: Cache-Adressierung Ein Prozessor mit einer Adresslänge von 20 Bit
Computational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 25.01.2016 Probeklausur zu Computational Engineering
28. März Name:. Vorname. Matr.-Nr:. Studiengang
Klausur 28. März 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,
Technische Informatik 1
Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache
Lösungsvorschlag zur 5. Übung
Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 5. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen über Caches sind
Technische Informatik 1
Technische Informatik 1 5 Prozessor Pipelineimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Pipelining Definition 5 2 Definition Pipelining (Fliessbandverarbeitung) ist eine
Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou ([email protected]) 22./23. Oktober 2015
Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou ([email protected]) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse
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
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.
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
Viel Erfolg bei der Bearbeitung der Aufgaben!
Musterlösung Name:... 1 2 3 4 5 Gesamt Note 12 8 10 15 11 56 Bitte tragen Sie auf dem Deckblatt Ihr Namen und Ihre Matrikelnummer ein und auf allen weiteren Seiten nur noch Ihre Matrikelnummer. Lösungen
Kap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht Kapitel 3 Mikroarchitektur 3.1 elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung (zur Realisierung der Befehlsabarbeitung
Weitere Arithmetik. Grundlagen der Rechnerarchitektur Assembler 33
Weitere Arithmetik Grundlagen der Rechnerarchitektur Assembler 33 Die speziellen Register lo und hi Erinnerung: ganzzahliges Produkt von zwei n Bit Zahlen benötigt bis zu 2n Bits Eine MIPS Instruktion
Klausur zur Vorlesung Grundlagen der Rechnerarchitektur SS 2013
Name: Matrikelnummer: Studiengang: INF CV IM Lehramt BSc MSc BEd MEd Diplom Klausur zur Vorlesung Grundlagen der Rechnerarchitektur SS 2013 Donnerstag, den 18. Juli 2013, Prof. Dr. Hannes Frey Die Bearbeitungszeit
1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden?
Sommersemester 009 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 05 Abgabe am 0.07.009 (Kästen D) Aufgabe : Speicherzuteilung (6++=8 Punkte) Es sei der
Mikroprozessortechnik. 03. April 2012
Klausur 03. April 2012 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Die Klausur besteht aus 6 doppelseitig bedruckten Blättern.
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
4. Übung - Rechnerarchitektur/Betriebssysteme
4. Übung - Rechnerarchitektur/Betriebssysteme 1. Aufgabe: Caching Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen a) Was ist ein Cache? Wann kommt Caching zum Einsatz? b) Welchen Vorteil
Übungsblatt 10 (Block C 2) (16 Punkte)
georg.von-der-brueggen [ ] tu-dortmund.de ulrich.gabor [ ] tu-dortmund.de pascal.libuschewski [ ] tu-dortmund.de Übung zur Vorlesung Rechnerstrukturen Wintersemester 2016 Übungsblatt 10 (Block C 2) (16
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:
Einführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Der Binder Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 28. Mai 2015 Herausforderungen durch große Programme Große Programme: die meisten
4. Übung - Rechnerarchitektur/Betriebssysteme
4. Übung - Rechnerarchitektur/Betriebssysteme 1. Aufgabe: Caching Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen a) Was ist ein Cache? Wann kommt Caching zum Einsatz? b) Welchen Vorteil
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
Aufgabe 4 : Virtueller Speicher
Sommer 216 Technische Informatik I Lösungsvorschlag Seite 16 Aufgabe 4 : Virtueller Speicher (maximal 27 Punkte) 4.1: Generelle Funktionsweise (maximal 5 Punkte) (a) (1 Punkt) Nennen Sie zwei Gründe, weshalb
Cache 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.
Lö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
Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P
SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 3(Musterlösung) 2014-05-05 bis 2014-05-09 Aufgabe 1: Polling vs Interrupts (a) Erläutern Sie
Arithmetik, 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
Kap.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
Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC
HSD RISC &CISC CISC - Complex Instruction Set Computer - Annahme: größerer Befehlssatz und komplexere Befehlen höhere Leistungsfähigkeit - Möglichst wenige Zeilen verwendet, um Aufgaben auszuführen - Großer
Computersysteme. Serie 11
Christian-Albrechts-Universität zu Kiel Institut für Informatik Lehrstuhl für Technische Informatik Prof.Dr. Manfred Schimmler Dr.-Ing. Christoph Starke M.Sc. Vasco Grossmann Dipl.-Inf. Johannes Brünger
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
RO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 10 am 29.06.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
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
Unterstützung von Jump Tables
Unterstützung von Jump Tables Assembler Code: Label_ 1: Label_2: Label_n: Maschinen Code: 0x05342120: 1011010110 0x05443004: 0001011101 0x06756900: 0000111000 Jump Table Nr Label Adresse 0 Label_1 0x05342120
Lösungsvorschlag zur 4. Übung
Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 4. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen zu Bewertungskriterien
