Сделай Сам Свою Работу на 5
 

Кэш с прямым отображением

Основная память

 

Кэш

 

 

Блок 128

 

 

Тег

Слово

Блок

 

-Адрес основной памяти

 

 

Таким образ когда загружается один из блоков основной памяти начинающихся по адресам 0, 128, 256 и т. д. Он записывается в блок кэша 0. Блоки 1, 129, 257 и. д. записываются в блок кэша 1 и т. д.. По сколько на каждый блок кэша отображается более одного блока основной памяти то даже при не до конца заполненного кэша. Может возникнуть состязание за некоторую позицию. Например, команды программы начавшейся в блоке один после перехода могут продолжиться в блоке 129. В результате выполнения программы оба этих блока должны быть скопированы блок 1 кэша. Конфликт разрешается просто: старый блок заменяется новым.

Таким образом, место положения блока в кэша, определяется на основе его адреса в памяти. Адрес памяти может быть разделён на два поля. Четыре младших разряда задают одно из 16 слов блока. Когда в кэш записывается новый блок, 7 разрядное поле номера блока данного кэша, определяет его место положения. 5 старших разрядов задают адрес блока в памяти. При записи блоков кэш они указываются в специальном поле тега (дескрипторе), такое поле имеется в кэше, для каждого из его поля. Оно определяет, какому из 32 блоков памяти отображаемых на данный момент блок кэша соответствует хранящейся здесь информации. Во время выполнения программы процессор генерирует адреса, каждым из которых 7 разрядное поле номера, блока кэша указывает на конкретный блок в нём. Тег этого блока сравнивается с со старшими блоками 5 разрядного этого адреса, и если они совпадают, значит данное слова уже имеется в кэше. В противном случаи блок содержавшие данное слово нужно извлечь из основной памяти. И поместить в кэш, технология прямого отображения очень проста. Но ей недостаёт гибкости.

Ассоциативное отображение

 

Кэш

Блок 0

Основная память

 

Блок 1

 

 

Блок j

 

 

Блок 4095

Тег

Слово

 



-Адрес основной памяти

 

На этом рисунке показана схема гораздо более гибкого метода отображения. Согласно которому блок основной памяти можно помешать в любой блок кэша. При этом для идентификации хранящейся в кэше блоков памяти необходимо иметь уже не 5 а 12бит. При выполнении программы как бы биты сгенерированного процессором адреса по очереди сравниваются с теговыми битами каждого блока кэша. Если совпадения найдено, значит содержащий данное слово блок уже содержится в кэше. Такая технология называется ассоциативным отображением она представляет полную свободу выбора места блоков в кэше. Благодаря чему пространство кэша может использоваться более эффективно. Новые блоки заменяют на уже хранящеюся в кэше только в том случаи, если кэш заполнен, при чём для этой цели необходим алгоритм выбором удаляемого блока. Подобных алгоритмов довольно много стоимость ассоциативного кэша выше, чем кэша с прямым отображением. По сколько в нем выполняется просмотр всех 128 тегов блоков. Поиск блоков в кэше называется ассоциативным поиском. Для того чтобы он выполнялся быстро теги должны просматриваться параллельно.

Множественно- ассоциативное отображение

Технологии прямого и ассоциативного отображения могут использоваться совместно в этом случаи в блоке кэша объединяются в множество. И каждый блок основной памяти может, расположатся в любом из блоков определенного множества. При чём вероятность конфликтов одним из недостатков прямого отображения значительно снижаются. Такой кэш получивший название множественно- ассоциативного дешевле в целом ассоциативного, по сколку в нём уменьшена область ассоциативного поиска. Рассмотрим принцип множественно- ассоциативного отображения на примере кэша, с 64 множествами по два блока в каждом.

 

Кэш

Основная память

-Адрес основной памяти

Слово

Множество

Тег

Блок 0

Блок 1

Блок 63

Блок 64

Блок 65

Блок 127

Блок 128

Блок 129

Блок 4095

Тег

Тег

Тег

Тег

Тег

Блок 2

Блок 127

Блок 126

Блок 3

Блок 1

Блок 0

Тег

 

Адресация кэш памяти

Оперативная память логически разбивается на страницы, объём страницы равен объёмы кэш памяти. Кэш память разбивается на строки размер строки равен стандартному пакетному циклу умноженного на разрядность шины данных. С каждой строкой кэш памяти связана ячейка памяти тегов , в которой хранится признак соответствия содержимого строки и блока оперативной памяти. Физический адрес ячейки в оперативной памяти в кэше прямого отображения состоит из трёх частей. Старшая часть определяет признак, по которому производится поиск, слово определяет, откуда из оперативной памяти будут считаны данные в кэш и блок определяет какому байту в строке должно производится обращение. При обращении к памяти контролер кэш сначала определяет, в какой строке кэш памяти должна содержатся информация и в какой ячейки памяти тегов необходимо искать признак. Затем контролер сравнивает номер страницы содержимом памяти ячейки к памяти тегов. Если значение совпали, то считается что произошло кэш попадание. Из кэш памяти будет считан байт номер, которого указан в адресе. Это значение будет передано процессору, если признаки не совпали, говорят что произошел кэш промах. И обращение передаётся к оперативной памяти, из оперативной памяти считывается строка, с указанной страницы и передаётся в кэш память. После чего обмен происходит так же как при кэш попадании. Памяти тегов будут выделены два атрибута V(достоверность) и M(модификация).

Алгоритмы кэширование и сохранение результатов. Результат вычисление процессора может сохранятся с использование одного из алгоритмов:

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

Недостатком является постоянное обращение к оперативной памяти, что уменьшает скорость работы.

Достоинством является то что в оперативной памяти всегда хранится обновленная информация.

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

Достоинством является увеличение быстро деятельности за счёт меньше количества обращения к оперативной памяти.

Недостатком является необходимость принудительного копирования данных из кэша в оперативную память.

В случаях когда:

· Строка кэш памяти потребовалась для сохранения другой информации.

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

Разновидности ИМС статической памяти используемы для построения кэш.

 



©2015- 2022 stydopedia.ru Все материалы защищены законодательством РФ.