- Translation lookaside buffer
-
Translation lookaside buffer
Буфер ассоциативной трансляции (англ. Translation lookaside buffer, TLB) — это буфер сверхоперативной памяти центрального процессора, используемый для ускорения трансляции адреса виртуальной памяти в адрес физической памяти. TLB используется всеми современными процессорами для поддержки страничной организации памяти. TLB содержит фиксированный набор записей (от 8 до 4096) и является контентно-адресуемой памятью. Каждая запись содержит соответствие адреса страницы виртуальной памяти адресу физической памяти. Если адрес отсутствует в TLB, процессор обходит таблицы страниц и сохраняет полученный адрес в TLB, что занимает в 10-60 раз больше времени, чем получение адреса из записи, уже закешированной TLB. Вероятность промаха TLB невысока и составляет в среднем от 0.01% до 1%.
Переключение задач
Если целевая задача при переключении контекста использует отличный от предыдущего контекст памяти (каталог страниц и таблицы страницы), происходит очистка TLB, таким образом, снижается производительность процессора. Существует несколько стратегий борьбы с очисткой:
- сохранение TLB в оперативной памяти;
- спецификация принадлежности записи TLB к определенному адресному пространству.
TLB и большие страницы
Многие современные процессоры поддерживают страницы с размером больше стандартных 4 кб, например 4 мб для x86 и 2 мб для x86_64. Записи трансляции для больших таблиц также хранятся в TLB, но на некоторых процессорах для них используется выделенная небольшая часть TLB в 4-8 записей. На остальных используются обычные записи.
Ссылки
Технологии цифровых процессоров Архитектура CISC · EDGE · EPIC · MISC · URISC ·RISC · VLIW · ZISC · Фон Неймана · Гарвардская · 32-bit · 64-bit · 128-bit Параллелизм Pipeline Конвейер · In-Order & Out-of-Order execution · Переименование регистров · Speculative execution Уровни Бит · Инструкций · Суперскалярность · Данных · Задач Потоки Многопоточность · Simultaneous multithreading · Hyperthreading · Superthreading ·Аппаратная виртуализация Классификация по Флину SISD · SIMD · MISD · MIMD Реализации DSP · GPU · SoC · PPU · Векторный процессор · Математический сопроцессор • Микропроцессор · Микроконтроллер Компоненты Barrel shifter · FPU · BSB · MMU · TLB · register file · control unit · АЛУ • Демультиплексор · Мультиплексор · Микрокод · Тактовая частота • Корпус • Регистры • Кэш Управление питанием APM · ACPI · Clock gating · Динамическое изменение частоты • Динамическое изменение напряжения
Wikimedia Foundation. 2010.