Принцип построения Кеш-памяти
Поскольку обмен с внешним ОЗУ происходит на частоте шины или даже на более меньшей частоте, то при выполнении процессором программы, где обрабатываются большие массивы данных находящиеся в ОЗУ – может возникнуть ситуация что время обмена с ОЗУ займет большую часть времени выполнения всего алгоритма программы. Эту проблему решают введением в структуру системы буферной памяти малого объема и работающую на тактовой частоте процессора. Эта буферная память или кеш память, реализуется на основе ОЗУ статического типа. В основу ее работы легли 2 принципа – принцип временной локальности и принцип пространственной локальности. временной локальности заключается в том, что при считывании данных из памяти существует высокая вероятность того что программа снова обратиться к этим данным в течении некоторого небольшого интервала времени. Принцип пространнственой локальности основывается на том, что есть высокая вероятность того что программа обратиться к нескольким последовательно расположенным ячейкам памяти. Исходя из принципа временной локальности информация в кеш храниться на протяжении небольших интервалов времени, а принцип пространственной локальности говорит о том что в кеш памяти целесообразно размещать несколько соседних ячеек (то есть блоками лучше хранить) Есть статистика что линейные участки микрокоманд не превышают 3-5 команд (без условного перехода) Соответственно нет смысла хранить в кеше данные по объему превышающие по объему данные необходимые для выполнения 3-5ти команд. Как правило блоки информации в кеше состоят из 2-4 слов. При обращении процессора к памяти сначала проверяется наличие необходимых данных в кеш памяти, если их нет, то эти данные переписываются из ОЗУ в кеш. По способу копирования из ОЗУ в кеш: 1 Кеш память с прямым отображением 2 полностью ассоциативная кеш память 3 множественная ассоциативная кеш память 1 тип: Достоинство такого типа кеш памяти явл высокое быстродействие. По скольку выполняется всего одного сравнение призрака со старшим разрядом памяти. Недостаток - Одна строка под один блок - мы не можим записать в строку любой блок. 2 тип: В данном случае данные из любого блока ОЗУ могут быть помещены в любую строку кеш памяти. Недостаток – увеличивается время обработки запросов изза необходимости многократного сравнения 32ух разрядных адресов и признаков 3 тип: Есть 2 основных способа – способ сквозной записи и способ обратной записи. 1)Способ сквозной записи заключается в том что данные одновременно записываются и в кеш и в ОЗУ. 3) Способ обратной записи – данные в ОЗУ записываются только если содержимое кеш памяти изменилось.
|