Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Назначение, структурная организация КЭШ-памяти. Место КЭШа в структуре процессора



Кэш-память или cache memory - компонент иерархической памяти - представляет собой буферное ЗУ, работающее со скоростью, обеспечивающей функционирование ЦП без режимов ожидания.

Необходимость создания кэш-памяти возникла потому, что появились процессоры с высоким быстродействием. Между тем для выполнения сложных прикладных процессов нужна большая память. Использование же большой сверхскоростной памяти экономически невыгодно. Поэтому между ОП и процессором стали устанавливать меньшую по размерам высокоскоростную буферную память, или кэш-память. В дальнейшем она была разделена на два уровня - встроенная в процессор (on-die) и внешняя (on-motherboard).

КЭШ: Смешанный и разделенный,Одноуровневый и многоуровневый

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

Для работы с КЭШами используется страничная адресация. Применительно к дисковому КЭШу это означает, что каждая «страница» КЭШа символизирует какой-то сектор на диске. И если диску требуется что-то записать в кэш, то он проверяет - если в нем свободные страницы, а если нет, то выбирает какую-нибудь используемую, скидывает хранящуюся в ней информацию на диск, и только потом выводит в нее то, что ему было нужно. Таким образом говорят, что часть диска отображена в кэш.

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

18 Алгоритмы свопинга и замещения информации в КЭШе включают следующие разновидности:

· алгоритм сквозной записи (Write Through) или сквозного накопления (Store Through);- Самый простой алгоритм свопинга. Каждый раз при появлении запроса на запись по некоторому адресу обновляется содержимое области по этому адресу как в быстрой, так и в основной памяти, даже если копия содержимого по этому адресу находится в быстром буфере.

· алгоритм простого свопинга (Simple Swapping) или обратной записи (Write Back);- Обращения к основной памяти имеют место в тех случаях, когда в быстром буфере не обнаруживается нужное слово. Эта схема свопинга повышает производительность системы памяти, так как в ней обращения к основной памяти не происходят при каждом запросе на запись, что имеет место при использовании алгоритма сквозной записи.

· алгоритм свопинга с флагами (Flag Swapping) или обратной записи в конфликтных ситуациях с флагами (CUX);- Данный алгоритм является улучшением алгоритма простого свопинга

· алгоритм регистрового свопинга с флагами (FRS).- Повышение эффективности алгоритма свопинга с флагами возможно за счет уменьшения эффективного времени цикла, что можно получить при введении регистра (регистров) временного хранения между кэш-памятью и основной памятью

Замещение в КЭШе Когда кэш-память заполнена, занесение в нее нового блока связано с замещением содержимого одной из строк. При прямом отображении каждому блоку основной памяти соответствует только одна определенная строка в кэш-памяти, и никакой иной выбор удаляемой строки здесь невозможен. Основная цель стратегии замещения — удерживать в кэш-памяти строки, к которым наиболее вероятны обращения в ближайшем будущем, и заменять строки, доступ к которым произойдет в более отдаленном времени или вообще не случится. Очевидно, что оптимальным будет алгоритм, который замещает ту строку, обращение к которой в будущем произойдет позже, чем к любой другой строке кэша К сожалению, такое предсказание практически нереализуемо, и приходится привлекать алгоритмы, уступающие оптимальному. Среди множества возможных алгоритмов замещения наиболее распространенными являются четыре, рассматриваемые в порядке уменьшения их относительной эффективности. Наиболее эффективным является алгоритм замещения на основе наиболее давнего использования (LRU - Least Recently Used), при котором замещается та строка кэш-памяти, к которой дольше всего не было обращения. Другой возможный алгоритм замещения - алгоритм, работающий по принципу «первый вошел, первый вышел» (FIFO - First In First Out). Здесь заменяется строка, дольше всего находившаяся в кэш-памяти. Еще один алгоритм - замена наименее часто использовавшейся строки (LFU -Least Frequently Used). Заменяется та строка в кэш-памяти, к которой было меньше всего обращений. Простейший алгоритм - произвольный выбор строки для замены. Замещаемая строка выбирается случайным образом.





Дата публикования: 2015-02-03; Прочитано: 838 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...