Zuordnung CacheHauptspeicher

Slides:



Advertisements
Ähnliche Präsentationen
Zielgruppe: Grundschulkinder
Advertisements

Wesen und „Unwesen“ der binären, dezimalen und hexadezimalen Zahlen
Programmierung: Einführung
4.5 Virtueller Speicher Problemsituation: Programme und Daten sind zu groß für den verfügbaren Arbeitsspeicher Frühere Lösung Aufspaltung der Programme.
Befehlssatz und Struktur
Prof. Dr. T. Kudraß1 Hash-Verfahren. Prof. Dr. T. Kudraß2 Einführung Drei Alternativen, wie Dateneinträge k* im Index aussehen können: 1. Datensatz mit.
Verbesserung der Leistungsfähigkeit von Caches
1 Was ist ein klassischer Prozess? A eine exe-Datei B log. Adressraum, Ablaufumgebung für genau einen Thread C log. Adressraum, Ablaufumgebung für eine.
Vortrag: Praktikum Technische Informatik Sommersemester 2007
Elektronisch messen, steuern, regeln
Attiny-Projekt - EEPROM
6. Digitale Datendarstellung
Lösung 3.1 Zahlensysteme Betrachten Sie den mit der Hamming-Methode codierten Code für „1000“ P-Bits falsch => Fehler bei bit
C.M. Presents D.A.R. und Ein Bisschen dies und das!
Kapitel 8.1 Speicherverwaltung - Paging
Datentypen Genauigkeiten
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Effizienz: Indexstrukturen
Strukturen. In einer Struktur kann eine beliebige Anzahl von Komponenten (Daten) mit unterschiedlichen Datentypen (im Gegensatz zu Feldern) zusammengefaßt.
Parameterübergabe von zweidimensionalen Feldern in Funktionen.
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
1 Linux Paging, Caching und Swapping. 1 Vortragsstruktur Paging – Das Virtuelle Speichermodell –Die Page Table im Detail –Page Allocation und Page Deallocation.
Kap. 6.2 Binäre B-Bäume Ullmann: (2, 3) - Bäume
Vorlesung 2 Rechnerarchitektur Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Rechnerarchitektur Vorlesung 2 Peter B. Ladkin
PowerPoint-Folien zur 5. Vorlesung „Evolutionsstrategie II“
PowerPoint-Folien zur 5. Vorlesung „Evolutionsstrategie II“
Berufsinformationswoche am KFG
Addierwerke.
Matrix Multiplication on CUDA
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Referat zum Thema „DLL“
Gymnasium Horn – Bad Meinberg
Zahlensysteme und Dualarithmetik copyleft: munz
Der Simple As Possible Computer
Umrechnung Bit und Bytes und Bibytes
Einfache Syntax einer Matrix
Systeme 1 Kapitel 4 Prozesse WS 2009/10.
Aufbau eines von-Neumann- Rechners Marcel Waldvogel.
Clustering mittels Grafikprozessor
Eine Implementierung einer effiziente externe geordnete (!) lineare Liste Operationen: Search(x) Insert(x) Delete(x)
INTEL Pentium 4 Prozessor
DW-Architektur: Row Store vs Column Store
Mikrocomputertechnik 1 Einführung Prof. J. Walter Stand Oktober Mikrocomputertechnik Jürgen Walter Indirekte Adressierung- Quickie Beschreibung.
Rechnen im Binärsystem
3.4 CPU-Chips und Busse CPU-Chips
3.3 Speicher Latches (1/4) SR-Latch S Q Q R Q Q
Vortrag Gerhard Fobe - Index
Aufgabe 1 In einem Mikroprozessorsystem mit 32-bit-Datenzugriff auf den Hauptspeicher ist ein Daten-Cache vorhanden. Das Laden des Caches erfolgt in Blöcken.
Siemens 2002 • Kernspeicher Kernspeicher
Vom Bit zum Byte.
Das Binär-System Alles ist davon abhängig, ob Strom fließt oder nicht!
Betriebssysteme Übung Tutorium „System Calls & Multipgrogramming“
Grundlagen der Kommunikation in Verbindung mit der Codierung von Daten
Lösen von quadratischen Ungleichungen
Umrechnung zwischen verschiedenen Zahlensystemen
Praxismodul 7 Agenda für heute, 15. Juni, 2006 Dateiformate
Erläuterungen zum DES-Schlüsselverfahren
Von der Schaltfunktion zur Schaltung
I Grundlagen.
Technische Informatik II
Technische Informatik II Übung 1: Konvertieren von Zahlen
EUI-64 Format. Die Interface-ID in einer IPv6 Adresse identifiziert ein einzelnes Endgerät an einem Link.
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
Andrew S. Tanenbaum – Moderne Betriebssysteme
Beispiel Cache-Architektur
Prof. Dr. T. Kudraß1 Speicherverwaltung: Flash-Laufwerke.
Präsentation Binär.
Programmieren in C Wie speichert C
 Präsentation transkript:

Zuordnung CacheHauptspeicher Wie wirken Cache und HSP-Organisation zusammen? Wie kann ich ermitteln, was in den Cache geladen wird? Copyright © 2009 Rainer Gerhards rgerhards@adiscon.com

Warum Caches? Hauptspeicher zu langsam Cache zu teuer Lösung: Teilmenge in Cache halten! zeitliche Lokalität räumliche Lokalität

Organisation des Hauptspeichers Beispielarchitektur Konzeptionell linearer Adressraum Hauptspeichermatrix Adressdekoder für Zeilen Spalten . .

Cache Speicher ähnlich organisiert . Cache Hauptspeicher .

Auswahl des gewünschten Speicherwortes Zugriff auf ein Datum Auswahl des gewünschten Speicherwortes . Auswahl Zeile Übertrag in Register für Wortselektion CPU-Register . Laden in CPU-Register

Zugriff auf ein Datum – Cache! Auswahl des gewünschten Speicherwortes . Übertrag in Cache Laden in CPU-Register CPU-Register . Auswahl Zeile

Aufteilung der phys. Adresse Beispiel: 20 Bit Adresse (1 MB), 1K Cache, Blockgröße 8 Byte 19 10 9 3 2 Etikett (Tag) Index Wortbits 10 Bit 7 Bit 3 Bit Speicher hat 1024 mal 1024 Bytes 1024/8 Bytes = 128 Einträge Werte von 0 bis 7

Wortbits… . Innerhalb der Zeile wird mit Wortbits adresiert! CPU-Register . Wortbits sind immer 0!

Adressierung im Cache Tag Index . CPU-Register .

Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3 Etikett (Tag) Index Wortbits 0100 1111 0110 1101 0010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3 Etikett (Tag) Index Wortbits 010 0100 1111 0110 1101 0010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3 Etikett (Tag) Index Wortbits 10 1101 010 0100 1111 0110 1101 0010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3 Etikett (Tag) Index Wortbits 01 0011 1101 10 1101 010 0100 1111 0110 1101 0010 1. In Binär umwandeln! 2. Einzelne Bitfelder abtragen! 4 F 6 D 2 Adresse

Beispielrechnung 0100 1111 0110 1101 0010 4 F 6 D 2 Adresse 19 10 9 3 Etikett (Tag) Index Wortbits 01 0011 1101 10 1101 010 Die Cache-Line beginnt auf Adresse 4F6D0. 0100 1111 0110 1101 0010 Es muss nämlich zu Anfang der Cache-Line adressiert werden, die Wortbits werden daher auf 0 gesetzt. 4 F 6 D 2 Adresse

Ein Cache Miss… Zugriff auf 4F6D2 Index 10 1101 . Tag: 00 1101 1000 ungleich 01 0011 1101 Cache-Miss! .

Also Cache-Line lesen… Zugriff auf 4F6D2 . Übertrag in Cache Tag auf 01 0011 1101 setzen . Auswahl Zeile 4F6D0

Weiter wie bei Cache-Hit… Zugriff auf 4F6D2 . Auswahl des gewünschten Speicherwortes 010 Laden in CPU-Register CPU-Register .

Fazit Es wird immer eine ganze Cache-Line geladen Die Adresse der Cache-Line erhält man, indem man die Wortbits auf 0 setzt Bei assoziativen Caches ist Cache-Speicher n-fach je Index vorhanden