Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4семестр / Методичка л_р№6.doc
Скачиваний:
16
Добавлен:
30.04.2013
Размер:
2.27 Mб
Скачать
    1. TlBс полностью ассоциативным распределением строк.

При полностью ассоциативном распределении допускается размещение каждой строки основной памяти на месте любой строки кэш-памяти. Структура такого TLBна рис. 18. Каждое слово памяти данных представляет собой строку таблицы трансляции (PDЕ илиPTЕ). Память данных содержит 64 строки таблицы трансляции, значит адрес каждой из них внутри КЭШ определяется 6-разрядным числом. У каждой из этих строк есть свой ВВ-разрядный адресный тег, хранимый в памяти тегов.

Механизм преобразования адресов должен быстро дать ответ, существует ли копия строки с произвольно указанным адресом в кэш-памяти, и если существует, то по какому адресу. Входной информацией для поиска/сравнения является старшая часть линейного адреса, а выходной информацией - адрес строки внутри кэш-памяти. Каждое слово теговой памяти состоит из ВВ-разрядного адресного тега, 6-разрядного адреса строки внутри кэш-памяти и бита действительности (valid-бит1), всего = ВВ+7 разрядов (см.рис.18).

Рис. 18. Механизм поиска данных в буфере TLB(полностью ассоциативное распределение)

При совпадении ключа (старших разрядов ЛА) с одним из тегов теговой памяти (кэш-попадание) происходит выборка соответствующего данному тегу адреса и обращение к памяти данных, откуда выбирается нужная строка (PDЕ илиPTЕ) и попадает в фиксатор. Оттуда она передается процессору при условии её достоверности (valid-бит=1).

    1. TlBс наборно-ассоциативным распределением строк

При таком типе распределения ПД логически делится на множества, которые состоят из равного числа строк. Строка как элемент множества иногда называется «каналом», таким образом, одни из самых распространенных 2-канальный и 4-канальный TLB имеют деление ПД на 2-х или 4-х элементные множества. Множества (set) также принято называть наборами. Этим и обусловлено название принципа. Рассмотрим 4-канальный TLB из 16 множеств (всего 64 строки PTE или PDE).

Номер множества, в которое может быть записана строка PTE/PDE для некоторой виртуальной страницы, определяется 4-разрядной частью линейного (виртуального) адреса этой страницы – прямое отображение. Оставшиеся ВВ-4 разряды – адресный тег (признак для поиска строки в множестве).

Таким образом, строка для каждой виртуальной страницы может быть только в конкретном множестве. Внутри множества строка может быть записана в любом элементе.

Для четырёх канального наборно-ассоциативного КЭШ память тегов делится на 4 части. Строка ПТi представляет собой тройку чисел: номер множества, адресный тег, valid-бит.

Множество выбирается по принципу прямого отображения: номер множества одновременно подается на входы всех частей ПТ, в каждой части выбирается соответствующий адресный тег и передается вместе с полученным со входа внутреннему «Контроллеру совпадений/несовпадений». «Контроллер» сравнивает адресные теги и подает на выход «1» сигнал в случае совпадения, иначе «0».

Все это происходит одновременно во всех частях ПТ, за счет чего обеспечивается принцип ассоциативной выборки элемента множества.

Номер элемента ПТ формируется с помощью специальной «Схемы определения номера канала». Это шифратор с 4 входами и 2 выходами, который в зависимости от прихода единицы на соответствующий (каждой ПТ) из входов должен выдать номер канала – нулевой «00», первый «01», второй «10» или третий «11». В случае, когда на все входы «Схемы определения номера канала» поступают нули, что бы она не выдала – «Фиксатор» не пропустит строку.

Конечный адрес нужной строки в TLB получается конкатенацией номера множества и номера элемента (ПТ).

Использование такого типа распределения значительно сокращает стоимость – вместо 64 теперь всего 4 одновременных сравнения.

Рис. 19. Механизм поиска данных в буфере TLB(наборно-ассоциативное распределение)

Соседние файлы в папке 4семестр