Rorg 2017 Aufgabe1 (Datenpfad) - SingleCycle move $t1 $t2 hinzufügen, keine Datenpfaderweiterung, nur Befehle (RegDst, AluOP, ...) setzten möglichst viele Dont cares, richtigen Typen auswählen (I Type) und ausfüllen (opcode, rs, rt, ...) - MultiCycle Instruction Fetch Befehl ausführen (PC + 4, InstructionReg laden), Befehle setzen (RegDst, AluOP, ...) Aufgabe2 (Pipeline) - mehrere MultiplyChoice fragen z.B.: - Pipeline Taktzykluszeit Load Befehl (5 Taktzyklen) - Was ist Branch Delay Slot - kann forwarding unit alle Data hazards beheben? ... Aufgabe3 (Pipeline) - Code gegeben, mögliche Hazards angeben (wo, welcher Typ) (warn alles Data, load use) - Eintragen in Tabelle mit kennzeichnen von StallCycles und Forwarding - vllt noch mehr Aufgabe4 (Leistung) - Tabelle mit Programmen und Zeiten, verbessert - CPI vor und nach verbesserung zu verschiedenen Maschinen - was war Speedup durch verbessern - verschiedene Verbesserungen, vergleichen durch geometrisches Mittel - welche am besten? Aufgabe4 (Caches) - gegeben Bild von 4 fach assoziativem Cache mit größe von Adresse und Blockoffset - berechnen Tag größe, #Sätze, Gesamt Größe(DirtyByte nicht vergessen) und paar andere Sachen - Index anhand von Hex adresse berechnen(umrechnen Binär, ensprechenden Bits auswählen), in Oktal Index angeben