Министерство образования Российской Федерации
Владимирский государственный университет
Кафедра УИТЭС
Лабораторная работа N8
КЭШ память с прямым распределением
Выполнил : ст. гр. УИ-198
Есин Г.Н..
Проверил : Андреев
И.А.
Владимир 2000
Цель работы: Изучение принципа построения кэш-памяти с пря- мым распределением.
Введение
Кэш-память - это быстродействующая память, расположенная
между центральным процессором и основной памятью. Вместе с ос-
новной памятью она входит в иерархическую структуру и ее дейс-
твие эквивалентно быстрому доступу к основной памяти. В больших
универсальных ЭВМ, основная память которых имеет емкость порядка
32-64 Мбайт, обычно используется кэш-память емкость 64-256
Кбайт, т.е. емкость кэш-память составляет порядка 1/1000-1/500
емкости основной памяти, а быстродействие в 5-10 раз выше быст-
родействия основной памяти.
Кэш-память, состоящая из m слов, сохраняет копии не менее чем m-слов из всех слов основной памяти.
Если копия, к адресу которой был выполнен доступ ЦП, су- ществует в кэш-памяти, то считывание завершается уже при доступе к кэш-памяти. Отметим, что использование кэш-памяти основывается на принципах пространственной и временной локальности. В случае пространственной локальности основная память разбивается на бло- ки с фиксированным числом слов и обмен данными между основной памятью и кэш-памятью выполняется блоками. При доступе к некото- рому адресу центральный процессор должен сначала определить со- держит ли кэш-память копию блока с указанным адресом, и если имеется, то определить, с какого адреса кэш-памяти начинается этот блок. Эту информацию ЦП получает с помощью механизма преоб- разования адресов.
На сложность этого механизма существенное влияние оказывает стратегия размещения, определяющая, в какое место кэш-памяти следует поместить каждый блок из основной памяти.
В зависимости от способа размещения данных основной памяти в кэш-памяти существует три типа кэш-памяти: кэш с прямым отображением (размещением); полностью ассоциативный кэш; множественный ассоциативный кэш.
Кэш с прямым отображением (размещением) является самым простым типом буфера. Адрес памяти однозначно определяет строку кэша, в которую будет помещен блок информации. При этом предпо- лагается, что оперативная память разбита на блоки и каждому та- кому блоку в буфере отводится всего одна строка.
Рассмотрим механизм кэш-памяти с прямым отображением реали- зованный в лабораторной работе.
Стратегия размещения и механизм преобразования адресов в кэш-памяти с прямым отображением.
Предположим, что основная память имеет емкость 256 К слов.
Для адресации основной памяти используется 18 бит. Пусть размер-
ность блока составляет 16 слов, тогда основная память будет со-
держать 16384 блока. Восемнадцать разрядов адреса основной памя-
ти тогда можно распределить следующим образом - 14 старших раз-
рядов использовать для адресации блока, а 4 младших - для адре-
сации слова в блоке.
Пусть емкость кэш-памяти равна 2 К слов. Тогда количество блоков в кэш составляет 128. На рис.5 приведена упрощенная функ- циональная схема кэш-памяти.
Для того чтобы поместить в кэш-память из основной памяти блок с адресом b 4n 0 этот адрес делить на две части:
-младшие семь разрядов адреса блока используется для адре- сации места хранения блока в кэш-памяти;
-старшие семь разрядов (часто называют их "тэг") помещают в специальную память (теговую память), используемую в пос- ледствии для чтения из кэш-памяти.
Таким образом, если адрес блока основной памяти равен
3673->111001011001, то в кэш-памяти этот блок будет размещен по
адресу 89->1011001.
В данном случае по этому адресу может быть размещен любой
из 128 блоков, имеющих семь младших разрядов, эквивалентных чис- лу 89 (1011001).
В этом заключается один из недостатков кэш-памяти с прямым отображением.
Для того чтобы определить, какой именно блок находится в
кэш-памяти используется специальная память (тэговая память) ем-
костью 7*128 слов, куда помещаются семь старших разрядов адреса
блока, хранящегося в данное время в кэш-памяти. Адрес размещения
которых определяется семью младшими разрядами ( в нашем примере
89 (1011001)). При доступе к кэш-памяти младшие семь разрядов
адреса блока используется в качестве адреса тэговой памяти, от-
куда считывается значение тэга (семь старших разрядов адреса
блока). Если считанный тэг и поступивших семь старших разрядов
блока совпадают, то это означает, что требуемый блок хранится в
кэш-памяти и из памяти данных выполняется чтение слова, адрес
которого указан в четырех младших разрядах полного адреса.
Вывод: Данная лабораторная работа проведена в соответствии с методическим указанием, представленным в виде текстового файла в приложении к обучающей программе. На данной лабораторной работе я изучил принципы построения КЭШ - памяти с прямым распределением. Весь процесс обучения производился с помощью программы расположенной на ЭВМ.