Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГЭК(вопросы и ответы).doc
Скачиваний:
13
Добавлен:
10.09.2019
Размер:
5.98 Mб
Скачать

1.21. Засоби кешування мп. Призначення та характеристики. Типи кеш-пам'яті. Режими роботи при читанні/записуванні інформації.

Кэш является дополнительным и быстодействующим хранилищем копий блоков информации основной памяти. Он хранит лишь ограниченное количество блоков даных и каталог – список их текущего соответствия областям основной памяти. Кроме того, кэшироваться может не вся память, доступная процессору (обычно основная динамическая память системной платы). При каждом обращении к кэшируемой памяти контроллер кэш-памяти по каталогу проверяет, есть ли действительная копия затребованых даных в кэше. Если она там есть, то это случай кэш-попадания, и обращение за даными происходит только из кэш-памяти. В противном случае это кэш-промах и данные берутся из основной памяти. В соответствии с алгоритмом кэширования блок даных, считаный из основной памяти при определенных условиях, заменит один из блоков кэша. Обращение к основной памяти может начатся одновременно с поиском в каталоге, а в случае попадания – прерваться (архитектура Look Aside). Это экономит время, но приводит к излишнему энергопотреблению. Друго вариант – обращение к основной памяти начинается после промаха (архитектура Look Through).

В современных компьютерах кэш обычно строится по двухуровневой системе. Первичный кэш встроен в процессор и работает на внутренней тактовой частоте процессора. Для повышени производительности для данных и команд часто используется раздельный кэш. Вторичный кэш обычно устанавливается на системной плате и работает на внешней тактовой частоте процессора – частоте системной шины.

Кэш-контроллер обеспечивает когерентность – согласованость данных кэш-памяти обоих уровней с данными основной памяти. Контроллер оперирует строками фиксированной длины, которая может хранить копию основного блока памяти. С каждой строкой кэша связана информация об адресе скопированого в нее блока памяти и признаки ее состояния. Строка может быть действительной или пустой. Информация о том, какой именно блок занимает строку и ее состояние называется тэгом и хранится в связанной с данной строкй памяти тэгов. Возможен вариант секторированого кэш, при котором одна строка содержит несколько смежных ячеек – секторов, размер которых соответствует минимальной порции обмена даных кэша с основной памятью. Поведение кэш-контроллера при операции записи в память, когда копия затребованой области находится в строке кэша, определяется политикой записи. Существует два основных алгоритма записи дааных из кэша в основную память: сквозная запись WT (Write Through) и обратная запись WB (Write Back).

WT предусматривает выполнение каждой операции записи, попадающей в кэшированный блок, одновременно и в строку кэша и основную память. При этом процессору при каждой записи придется ожидать окончания относительно длительной записи в основную память. Алгоритм прост в реализации, но обладает низкой эффективностью записи.

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

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