ich komme gerade irgendwie nicht mit der Aufgabenstellung von der 5.2 von der Hausübung zurecht - vielleicht liegt es aber auch nur daran, dass ich die Beschreibung in der Vorlesung nicht ganz so dolle fand...
Also, wenn jetzt ein Zugriff auf die Speicherstelle 0x17280001 erfolgt wird doch ein 64KB großer Block gelesen, oder? Aber von wo genau wird gelesen? Wird ein 64KB großer Block von 0x17280001 bis 0x17290001 gelesen oder wird das "aligned" gemacht (also immer am Beginn der 64KB Blocks, hier: 0x17280000 - 0x17290000)?
Jetzt nehmen wir mal, der Block wurde gelesen. In das Tag-Feld kommen dann doch die ersten N Bits der Adresse, der Rest ist Offset (N ergibt sich glaube ich aus der Adressbreite und der Größe des Caches, wollte hier nur nicht das (hoffentlich) richtige Ergebnis hinschreiben). Ein Hit passiert jetzt also, falls eine Adresse gelesen wird, deren Tag gleich dem eines Cache-Eintrags ist, denn dann befindet sich das gesuchte byte irgendwo in dem Datensatz, si?
Wozu brauche ich dann aber genau den Offset? Da steh ich dann irgendwie auf dem Schlauch - nach meiner Beschreibung hab ich doch eh den ganzen Block da, wo genau ich dann lese ist doch jedes Mal unterschiedlich *verwirrtbin*
Hoffe es kann mir jemand helfen,
(zumindest was das Cache-Problem angeht

Gruß,
Bigge