ВУЗ:
Составители:
памяти в системах на базе МП 80386 позволяет увеличить коэффициент удачных обращений до
0,95.
Обращение к памяти в ПК, как правило, носит не случайный характер, что позволяет
построить работу КЭШ-памяти по принципу предсказания следующего адреса обращения. Это
вполне возможно, поскольку программы чаще всего обращаются к последовательным ячейкам
памяти. Если спроектировать контроллер КЭШ-памяти таким образом, чтобы вместо одиночных
выборок выбирать данные из памяти блоками, то вероятность удачных обращений неизбежно
возрастает. Действительно, при разделении главной памяти на блоки и возможности пересылки
таких блоков из главной памяти в КЭШ и обратно, в следующем обращении микропроцессора к
памяти будет ссылка на тот же самый блок, что и в текущем обращении. Если запрашиваемая
информация не обнаружена в КЭШ-памяти, то контроллер обновит весь блок целиком и т.д.
Размер блока существенно влияет на коэффициент удачных обращений. В целом,
существует такая зависимость, согласно которой чем больше размер блока, тем выше
коэффициент. Однако следует отметить, что уменьшение количества блоков в КЭШ-памяти
снижает этот коэффициент.
Архитектура КЭШ-памяти определяется тем, каким образом основная память большая по
объему отображается на сравнительно небольшой КЭШ-блок. Существуют три типа организации
КЭШ-памяти. Самой простой организацией обладает КЭШ-память с прямым отображением. В
этом случае адрес памяти полностью определяет используемую строку КЭШа. Таким образом,
один или несколько блоков динамической памяти строго соответствуют одной строке КЭШа,
однако, поскольку занимать ее в одно и тоже время может только один из них, то для каждой
строки используется специальный признак – тег (tag). Более подробно работа КЭШ-памяти с
прямым отображением рассмотрена на схеме, которая изображена на рисунке 4.2.
От процессора
Тег Строка Смещение
0010 001 100
214
1
2
3
4
5
6
7
0
123 45670Тег
К процессору
Данные
КЭШ
2
Рис. 4.2. Организация КЭШа с прямым отображением
Допустим, что гипотетический микропроцессор использует 10-разрядный адрес, размер
КЭШа составляет 8 строк, а длина каждой строки – 8 байт. В какой-то момент времени
микропроцессор хочет прочитать два байта информации, хранимой в оперативной памяти, с
адреса 0010001100. Для КЭШ-памяти этот адрес подразделяется на три части. В данном случае
три младших разряда называются смещением и полностью определяют положение каждого из
восьми байт в строке. Средние три разряда позволяют однозначно выбрать одну из восьми строк
КЭШа. Оставшиеся старшие разряды несут информацию о теге. И только в том случае, если тег
строки КЭШа совпадает со значением, определяемым старшими разрядами адреса, байты
информации считываются из КЭШ-блока. В противном случае чтение должно идти из основной
памяти в системах на базе МП 80386 позволяет увеличить коэффициент удачных обращений до
0,95.
Обращение к памяти в ПК, как правило, носит не случайный характер, что позволяет
построить работу КЭШ-памяти по принципу предсказания следующего адреса обращения. Это
вполне возможно, поскольку программы чаще всего обращаются к последовательным ячейкам
памяти. Если спроектировать контроллер КЭШ-памяти таким образом, чтобы вместо одиночных
выборок выбирать данные из памяти блоками, то вероятность удачных обращений неизбежно
возрастает. Действительно, при разделении главной памяти на блоки и возможности пересылки
таких блоков из главной памяти в КЭШ и обратно, в следующем обращении микропроцессора к
памяти будет ссылка на тот же самый блок, что и в текущем обращении. Если запрашиваемая
информация не обнаружена в КЭШ-памяти, то контроллер обновит весь блок целиком и т.д.
Размер блока существенно влияет на коэффициент удачных обращений. В целом,
существует такая зависимость, согласно которой чем больше размер блока, тем выше
коэффициент. Однако следует отметить, что уменьшение количества блоков в КЭШ-памяти
снижает этот коэффициент.
Архитектура КЭШ-памяти определяется тем, каким образом основная память большая по
объему отображается на сравнительно небольшой КЭШ-блок. Существуют три типа организации
КЭШ-памяти. Самой простой организацией обладает КЭШ-память с прямым отображением. В
этом случае адрес памяти полностью определяет используемую строку КЭШа. Таким образом,
один или несколько блоков динамической памяти строго соответствуют одной строке КЭШа,
однако, поскольку занимать ее в одно и тоже время может только один из них, то для каждой
строки используется специальный признак – тег (tag). Более подробно работа КЭШ-памяти с
прямым отображением рассмотрена на схеме, которая изображена на рисунке 4.2.
От процессора
Тег Строка Смещение
0010 001 100
2 1 4
0
1 2 К процессору
2
3
4
5
6
7
Тег 0 1 2 3 4 5 6 7
Данные
КЭШ
Рис. 4.2. Организация КЭШа с прямым отображением
Допустим, что гипотетический микропроцессор использует 10-разрядный адрес, размер
КЭШа составляет 8 строк, а длина каждой строки – 8 байт. В какой-то момент времени
микропроцессор хочет прочитать два байта информации, хранимой в оперативной памяти, с
адреса 0010001100. Для КЭШ-памяти этот адрес подразделяется на три части. В данном случае
три младших разряда называются смещением и полностью определяют положение каждого из
восьми байт в строке. Средние три разряда позволяют однозначно выбрать одну из восьми строк
КЭШа. Оставшиеся старшие разряды несут информацию о теге. И только в том случае, если тег
строки КЭШа совпадает со значением, определяемым старшими разрядами адреса, байты
информации считываются из КЭШ-блока. В противном случае чтение должно идти из основной
Страницы
- « первая
- ‹ предыдущая
- …
- 84
- 85
- 86
- 87
- 88
- …
- следующая ›
- последняя »
