Klausur 2019

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Klausur 2019
Aufgabe 3

Cache wie muss man die Adressen laden ? Jede einzeln oder muss man immer die letzte hex. Stelle weg steichen ?
oder gibts da einen Trick wie man am schnellsten auf die Tags kommt und die doppelten Adressen sieht ?

Ich rede nicht vom einzelnen berechnen!


Bei dieser Aufgabe ist es tatsächlich so, dass die hexadezimalen Tags einfach ablesbar sind. Für die Bestimmung der Menge muss aber dennoch die letzte Hex-Ziffer betrachtet werden. Ob die Adresse schon einmal geladen war, oder nicht, kann man dadurch durch Betrachtung des Tags und des Index vornehmen. Einen direkt und allgemein gültigen Trick kann ich nicht nennen, weil die Aufteilung auch je nach Cache anders sein kann.


Aufgabe 2

2.3
Sitze da schon tage dran aber ich komme nicht weiter.
Wie soll die aufgabe gehen wenn es heißt “Ignorieren Sie in dieser Aufgabe den Prefetch”?


Das Ignorieren des Prefetches ist nur dafür da, damit die Aufgabe nicht kompliziert wird. Da die Latenzen angegeben sind, muss eigentlich nur noch auf die Bänke achten und die Zeilen- bzw. Spaltenadressen berechnen. Das heißt, zu Beginn wird man auf einer Bank mutmaßlich den Befehl „Precharge“ ausführen, im nächsten Takt vermutlich auf der anderen Bank. Der nächste Befehl kann nach 3 Takten (t_RP) an eine Bank geschickt werden. Hilft das schon weiter?

1 „Gefällt mir“

Muss man die padding am ende des structs beachten wenn man kein Array hat ? Komme da immer durcheinander