Übersetzungs-Lookaside-Puffer (TLB) ist ein kleiner Hochgeschwindigkeitsspeicher, der kürzlich verwendete Übersetzungen von virtuellen Speicheradressen in physische Speicheradressen speichert. Es dient als Cache zwischen der CPU und dem Hauptspeicher und reduziert so die Zeit, die für die Übersetzung virtueller Adressen in physische Adressen erforderlich ist.
Die CPU prüft zunächst, ob die angeforderte virtuelle Adresse im TLB vorhanden ist. Wenn eine Übereinstimmung gefunden wird, muss der Hauptspeicher nicht konsultiert werden. Wenn der TLB nicht über den erforderlichen Eintrag verfügt, geht die CPU zur Adressübersetzung zum Hauptspeicher über. Der neu übersetzte Eintrag wird dann zum TLB hinzugefügt, um in Zukunft schneller darauf zugreifen zu können.
Durch das Zwischenspeichern kürzlich aufgerufener Übersetzungen verbessert der TLB die Gesamtleistung virtueller Speichersysteme erheblich. Es reduziert die Anzahl der Zugriffe der CPU auf den langsameren Hauptspeicher für Adressübersetzungen. Dadurch wird die Systemlatenz minimiert und eine schnellere Ausführung von Programmen ermöglicht.
TLB besteht aus Folgendem:
- TLB-Einträge :Jeder Eintrag im TLB besteht aus einer virtuellen Seitennummer, einer physischen Seitenrahmennummer und zusätzlichen Statusbits.
- TLB-Tags :Die virtuellen Seitennummern in den TLB-Einträgen werden als Tags zur schnellen Identifizierung passender virtueller Adressen verwendet.
- TLB-Verwaltungseinheit :Diese Einheit ist für die Verwaltung des TLB verantwortlich, einschließlich des Hinzufügens neuer Einträge und der Behandlung von Cache-Fehlern, wenn die angeforderte Adresse nicht vorhanden ist.
Die Organisation und Verwaltung des TLB kann je nach spezifischer Hardwareimplementierung und Betriebssystem variieren.
TLB-Treffer: Wenn die CPU die erforderliche Übersetzung im TLB findet, wird dies als TLB-Treffer bezeichnet . In diesem Fall ist die physikalische Adresse sofort verfügbar und die CPU kann mit dem Speicherzugriff fortfahren, ohne auf einen langsameren Hauptspeicher-Lesevorgang warten zu müssen.
TLB Miss: Wenn die angeforderte Adresse nicht im TLB vorhanden ist, spricht man von einem TLB-Miss . In dieser Situation konsultiert die CPU die Seitentabellen oder andere Speicherverwaltungsdatenstrukturen im Hauptspeicher, um eine Adressübersetzung durchzuführen. Der übersetzte Eintrag wird dann zur späteren Bezugnahme zum TLB hinzugefügt.
Durch die dynamische Beibehaltung der am häufigsten verwendeten Übersetzungen im TLB werden TLB-Fehler effektiv minimiert und die Leistung virtueller Speichersysteme verbessert.