Übung 5 - 1.4b

tigris
Mausschubser
Mausschubser
Beiträge: 89
Registriert: 2. Okt 2008 13:49

Übung 5 - 1.4b

Beitrag von tigris »

Hallo, habe folgendes Problem. Ich kann mir das eine h nicht erklären.
Machen wir das mal der Reihe nach. Also ich habe gemäß Aufgabenstellung 28 Bit Tag - 1 Bit Index - 3 Bit Offset
Außerdem gilt
0..0|0|0xx src[0][0]
0..0|0|1xx src[0][1]
0..0|1|0xx src[1][0]
0..0|1|1xx src[1][1]
0..1|0|0xx dest[0][0]
0..1|0|1xx dest[0][1]
0..1|1|0xx dest[1][0]
0..1|1|1xx dest[1][1]

Und noch das Cache-Layout
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
________________________________________________________
________________________________________________________
Wir lesen also src[0][0]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..0 0 xxx -
->also m(iss)

Jetzt schreiben wir in dest[0][0]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx -
->also m(iss)

Wir lesen src[0][1]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..0 0 xxx -
->also m(iss)

Und schreiben in dest[0][1]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx -
->also m(iss)

Wir lesen src[1][0]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx 0..0 1 xxx
->also m(iss)

Und schreiben in dest[1][0]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx 0..1 1 xxx
->also m(iss)

Wir lesen src[1][1]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx 0..0 1 xxx
->also m(iss)

Und schreiben in dest[1][1]
EINTRAG 0 EINTRAG 1
Tag Index Offset Tag Index Offset
0..1 0 xxx 0..1 1 xxx
->also m(iss)

Folglich habe ich nur misses. Wo liegt mein gedanklicher Fehler?

Benutzeravatar
el_primo
Windoof-User
Windoof-User
Beiträge: 38
Registriert: 8. Nov 2005 00:42

Re: Übung 5 - 1.4b

Beitrag von el_primo »

Bei src[1][1] hast Du eigentlich die Speicheradresse 12 und das folgende:

Tag Index Blockoffset(ColX)
0...0 1 1xx

Du hast HIT, weil Du den gleichen Tag mit src[1][0] hast. Also pass mal auf, dass bei gleichem Index und gleichem Tag immer ein Hit auftritt!!!
The idea of style and competing for the best style is key to all forms of rocking

Benutzeravatar
el_primo
Windoof-User
Windoof-User
Beiträge: 38
Registriert: 8. Nov 2005 00:42

Re: Übung 5 - 1.4b

Beitrag von el_primo »

Re: Übung 5, Blockoffset

Beitragvon Patr0rc » Di Mär 23, 2010 6:27 pm
Wenn man sich die Zugriffe aufschreibt, sieht es folgendermaßen aus:
- src[0][0], Adresse: 0000: Miss, wird in die erste Cachezeile geschrieben wegen der fetten 0, die den Index angibt.
- dst[0][0], Adresse: 00100: Miss, da anderer Tag (von src[0][0]) in erster Cachezeile, also ersetzt sie src[0][0]
- src[0][1], Adresse: 0001: Miss, da anderer Tag (von dst[0][0]) in erster Cachezeile
- dst[1][0], Adresse: 00110: Miss, da zweite Cachezeile leer, also in zweite Cachezeile geschrieben
- src[1][0], Adresse: 0010: Miss, da zweite Cachezeile belegt mit anderem Tag (von dst[1][0]), in zweite Cachezeile geschrieben
- dst[0][1], Adresse: 00101: Miss, da erste Cachezeile durch anderen Tag (von src[0][1]) belegt, also in erste Cachezeile geschrieben
- src[1][1], Adresse: 0011: Hit, da zweite Cachezeile von src[1][0] mit Adresse 0010 belegt, also gleicher Tag
- dst[1][1], Adresse: 00111: Miss, da mit anderem Tag (von src[1][1]) belegt, also in zweite Cachezeile geschrieben

Somit ergibt sich für src[1][1] ein Hit. Ich hoffe, es ist nachvollziehbar und verständlich...
The idea of style and competing for the best style is key to all forms of rocking

tigris
Mausschubser
Mausschubser
Beiträge: 89
Registriert: 2. Okt 2008 13:49

Re: Übung 5 - 1.4b

Beitrag von tigris »

Hi, vielen Dank für deine Antwort, aber ich kann das nicht nachvollziehen.
el_primo hat geschrieben:Bei src[1][1] hast Du eigentlich die Speicheradresse 12 und das folgende:

Tag Index Blockoffset(ColX)
0...0 1 1xx
Da gebe ich dir Recht, wegen der 1 beim Index (0...0 !1! 1xx) muss ich ja schon mal in die Spalte von Eintrag 1 gehen. Hier steht aber nicht 0..0 1 0xx (von src[1][0]) drin, wie du behauptest, sondern 0..1 1 0xx (von dem Schreibvorgang in dest[1][0]). Schließlich wird ja erst aus src[1][0] gelesen, dann in dest[1][0] geschrieben und erst dann wieder aus src[1][1] gelesen. Genau auf Grund der Tatsache, dass eben ein Schreiben in dest[1][0] stattfindet, ist der von dir beschriebene HIT nicht mehr möglich. Du behauptest, dass man gleichen Tag (und Index) mit src[1][0] hast, aber betrachtet man eben die Tatsache mit dest[1][0], dann müsste es meiner Meinung korrekt lauten: Du hast einen Miss, weil Du einen unterschiedlichen Tag (und Index) mit dest[1][0] hast.

Benutzeravatar
el_primo
Windoof-User
Windoof-User
Beiträge: 38
Registriert: 8. Nov 2005 00:42

Re: Übung 5 - 1.4b

Beitrag von el_primo »

Meiner Meinung nach ist die Reihenfolge so:

erstmal wird auf dst[1][0] (Speicheradresse 24) zugegriffen und in Cachezeile 1 geschrieben (Miss).
Danach wird auf src[1][0] (Speicheradresse 8 ) zugegriffen und auch in Cachezeile 1 wegen des unterschiedlichen Tags geschrieben (Miss). dst[1][0] wird ersetzt.
((Danach wird auf dst[0][1] (Speicheradresse 20) zugegriffen))
Schließlich wird auf src[1][1] (Speicheradresse 12) zugegriffen und wegen des gleichen Tags (0...1) mit src[1][0], die schon in Cachezeile 1 steht, ergibt sich einen Hit.

Die zitierte Erklärung hilft um sich den ganzen Ablauf vorzustellen.
The idea of style and competing for the best style is key to all forms of rocking

tigris
Mausschubser
Mausschubser
Beiträge: 89
Registriert: 2. Okt 2008 13:49

Re: Übung 5 - 1.4b

Beitrag von tigris »

Ich hab aus der Aufgabenstellung aus der Code Zeile
dst[j] = src[j] ein
dst[j] = src[j] gemacht.
Weil i und j ja mal wieder zum verwechseln ähnlich aussehen, habe ich mich einfach verlesen. Ich habe die Musterlösung zwar jetzt noch nicht erneut überprüfen können, aber das wird es sicherlich erklären.
Danke für deine Hilfe. :)

Benutzeravatar
el_primo
Windoof-User
Windoof-User
Beiträge: 38
Registriert: 8. Nov 2005 00:42

Re: Übung 5 - 1.4b

Beitrag von el_primo »

Viel Erfolg am Mittwoch ;)
The idea of style and competing for the best style is key to all forms of rocking

tigris
Mausschubser
Mausschubser
Beiträge: 89
Registriert: 2. Okt 2008 13:49

Re: Übung 5 - 1.4b

Beitrag von tigris »

Dank dir, sollte schon klappen :)

Antworten

Zurück zu „Archiv“