Rechnerarchitektur
Hi,
ich schreibe demnächst eine Klausur in Grundlagen der Rechnerarchitektur und Organisation und stöbere mich im moment durch die Übungsblätter...
allerdings weiß ich bei 2 blättern einfach nicht weiter!
Vlt hat jemand von euch mehr Plan davon... wäre top, weiß echt nicht mehr weiter.... schon mehrere Bücher durchstöbert und einfach nicht fündig geworden
also :
1:
6. Gegeben Sei folgendes Assemblerprogramm:
Lade R1, #0x0000
Lade R2, (0x2e12)
Lade R3, (0x2e10)
Schleife:
Lade R4, (R2 + R1)
Addiere (R3), R4
Addiere R1, #2
Vergleiche R1, #0x000a
Springe wenn kleiner zu Schleife
Ein Register ist 16 Bit groß. Jeder Befehl wird mit 4 Bytes codiert. Die CPU
verwendet Big-Endian. Das Programm befindet sich im Hauptspeicher ab
Adresse 0x1000.
Folgender Inhalt des Arbeitsspeichers ist außerdem bekannt:
0x2e10: 2e 14 30 00 00 00 01 ff 01 00 af ba fe 00 00 01
...
0x3000: 00 01 01 00 00 05 00 07 00 01 00 05 00 03 00 0b
0x3010: 00 03 48 41 4c 4c 4f 20 57 45 4c 54 00 02 30 12
Welche Speicheradressen werden bei der Ausf¨uhrung des Programms gelesen?
Welche Speicheradressen werden beschrieben?
7. Ein Befehl soll 2 Nanosekunden zur Bearbeitung ben¨otigen. Ein Hauptspeicherzugriff
dauert 60 Nanosekunden. Der Datenbus des Speichers sei 16 Bit
groß. Wie lange ben¨otigt das Programm, sofern keine Caches verwendet
werden?
8. Der Prozessor soll nun ¨uber einen ausreichend großen Cache verf¨ugen, um
s¨amtliche Befehle und Daten des Programms in Aufgabe 6 zwischenspeichern
zu k¨onnen. Eine Cache-Zeile ist 16 Bit groß. Der Cache ist vollassoziativ
organisiert. Ein Zugriff auf den Cache ben¨otigt 4 Nanosekunden.
Bei Schreibzugriffen soll die Strategie write-back verwendet werden. Urspr
¨unglich sei der Cache leer. Wie lange ben¨otigt nun das Programm aus
Aufgabe 6?
9. Der Cache des Prozessors sei nun auf 12 Zeilen beschr¨ankt. Muss eine Zeile
verdr¨angt werden, so wird die am l¨angsten nicht verwendete Zeile verdr¨angt
(LRU). Ist noch immer eine Geschwindigkeitssteigerung zu erwarten?
10. Der Cache sei nun auf 10 Eintr¨age beschr¨ankt. Welcher Effekt tritt nun
auf?
11. Warum ist es sinnvoll, einen getrennten Daten- und Instruktions-Cache zu
verwenden?
und 2 wahrscheinlich einiges einfacher^^:
2. Geben Sie die Werte an, die die Register R1 und R2 bei Durchlaufen des
folgenden Codes annehmen (bitte f¨ur jede Zeile in der sich einWert ¨andert):
1 : Lade R2 , (0 x4e34 )
2 : Lade R1 , #0x4e38
3 : Lade R2 , 0(R1 ) [R2 ]
4 : Lade R1 , #0x4e30
5 : Lade R1 , 0(R1 ) [R2 ]
Der relevante Speicherbereich enth¨alt folgende Werte:
4 e30 : 4 0 4 e 00 00 01 00 00 00 00 02 00 00 07 00 00 00
4 e40 : 7 5 13 f e aa 00 12 89 ce 98 12 76 11 dc f e 34 12
Alle Register sollen 32-Bit Wortbreite besitzen, der Scale-Faktor d soll 4
betragen. Die CPU soll Daten in Little-Endian-Darstellung verarbeiten.
Danke schonma für alle die sich die arbeit machen^^
|