Кэш-память современных микропроцессоров фирм Intel и AMD
Другие рефераты
Институт Транспорта и Связи
Реферат
Учебная дисциплина: ,, Основы построения компьютеров ,,
Тема: ,, Кэш-память современных микропроцессоров фирм Intel и AMD.,,
Автор:
Р.Великанов.
Преподаватель:
Б. Цилькер.
Рига, 2004.
Оглавление.
Введение.
Стратегия размещения.
Отображение секторов ОП в кэш-памяти.
Смешанная и разделенная кэш-память.
Некоторые данные по популярным и самым новейшим процессорам от Intel
и AMD.
Сводная таблица по объемам, принципам организации и тактовым частотам
кэш-памяти у процессоров от Intel и AMD.
Сравнение некоторых новинок от Intel и AMD.
Зачем увеличивать кэш ?
Самые свежие новости от ведущих производителей процессоров(октябрь
2004г).
Выводы.
Введение
В качестве элементной базы основной памяти в большинстве ЭВМ используются
микросхемы динамических ОЗУ, на порядок уступающие по быстродействию
центральному процессору. В результате, процессор вынужден простаивать
несколько периодов тактовой частоты, пока информация из ИМС памяти
установится на шине данных ЭВМ. Если же ОП выполнить на быстрых микросхемах
статической памяти, стоимость ЭВМ возрастет весьма существенно.
Экономически приемлемое решение этой проблемы возможно при использовании
двухуровневой памяти, когда между основной памятью и процессором
размещается небольшая, но быстродействующая буферная память или кэш-память.
Вместе с основной памятью она входит в иерархическую структуру и ее
действие эквивалентно быстрому доступу к основной памяти. Использование кэш-
памяти позволяет избежать полного заполнения всей машины быстрой RAM
памятью. Обычно программа использует память какой либо ограниченной
области, храня нужную информацию в кэш-памяти, работа с которой позволяет
процессору обходиться без всяких циклов ожидания. В больших универсальных
ЭВМ, основная память которых имеет емкость порядка 1-32 Гбайт, обычно
используется кэш-память емкость 1-12 Мбайт, т.е. емкость кэш-память
составляет порядка 1/100-1/500 емкости основной памяти, а быстродействие в
5-10 раз выше быстродействия основной памяти. Выбор объема кэш-памяти –
всегда компромисс между стоимостными показателями ( в сравнении с ОП ) и ее
емкостью, которая должна быть достаточно большой, чтобы среднее время
доступа в системе, состоящей из основной и кэш-памяти, определялось
временем доступа к последней. Реальная эффективность использования кэш-
памяти зависит от характера решаемых задач и невозможно определить заранее,
какой объем ее будет действительно оптимальным.
Не всякая кэш-память равнозначна. Большое значение имеет тот факт,
как много информации может содержать кэш-память. Чем больше кэш-
память, тем больше информации может быть в ней размещено, а следовательно,
тем больше вероятность, что нужный байт будет содержаться в этой быстрой
памяти. Очевидно, что самый лучший вариант - это когда объём кэш-памяти
соответствует объёму всей оперативной памяти. В этом случае вся остальная
память становится не нужной. Крайне противоположная ситуация - 1 байт
кэш-памяти - тоже не имеет практического значения, так как вероятность
того, что нужная информация окажется в этом байте, стремится к нулю.
В процессе работы такой системы в буферную память копируются те
участки ОП, к которым производится обращение со стороны процессора. Выигрыш
достигается за счет свойства локальности, ввиду большой вероятности
обращения процессором к командам, лежащим в соседних ячейках памяти.
Кэш-память, состоящая из m слов, сохраняет копии не менее, чем m-слов из
всех слов основной памяти. Если копия, к адресу которой был выполнен доступ
ЦП, существует в кэш-памяти, то считывание завершается уже при доступе
к кэш-памяти. Отметим, что использование кэш-памяти основывается на
принципах пространственной и временной локальности. В случае
пространственной локальности основная память разбивается на блоки с
фиксированным числом слов и обмен данными между основной памятью и кэш-
памятью выполняется блоками. При доступе к некоторому адресу центральный
процессор должен сначала определить содержит ли кэш-память копию блока с
указанным адресом, и если имеется, то определить, с какого адреса кэш-
памяти начинается этот блок. Эту информацию ЦП получает с помощью механизма
преобразования адресов.
Стратегия размещения.
На сложность этого механизма существенное влияние оказывает
стратегия размещения, определяющая, в какое место кэш-памяти
следует поместить каждый блок из основной памяти.
В зависимости от способа размещения данных основной памяти в кэш-памяти
существует три типа кэш-памяти:
- кэш с прямым отображением (размещением);
- полностью ассоциативный кэш;
- множественный ассоциативный кэш или частично-ассоциативный.
Кэш с прямым отображением (размещением) является самым
простым типом буфера. Адрес памяти однозначно определяет строку
кэша, в которую будет помещен блок информации. При этом предпо-
лагается, что оперативная память разбита на блоки и каждому та-
кому блоку в буфере отводится всего одна строка. Это простой и недорогой в
реализации способ отображения. Основной его недостаток – жесткое
закрепление за определенными блоками ОП одной строки в кэше. Поэтому, если
программа поочередно обращается к словам из двух различных блоков,
отображаемых на одну и ту же строку кэш-памяти, постоянно будет происходить
обновление данной строки и вероятность попадания будет низкой.
Кэш с полностью ассоциативным отображением позволяет преодолеть
недостаток прямого, разрешая загрузку любого блока ОП в любую строку кэш-
памяти. Логика управления выделяет в адресе ОП два поля: поле тега и поле
слова. Поле тега совпадает с адресом блока ОП. Для проверки наличия копии
блока в кэш-памяти, логика управления кэша должна одновременно проверить
теги всех строк на совпадение с полем тега адреса. Ассоциативное
отображение обеспечивает гибкость при выборе строки для вновь записываемого
блока. Принципиальный недостаток этого способа – в необходимости
использования дорогой ассоциативной памяти.
Множественно-ассоциативный тип или частично-ассоциативный тип
отображения – это один из возможных компромиссов, сочетающий достоинства
прямого и ассоциативного способов. Кэш-память ( и тегов и данных)
разбивается на некоторое количество модулей. Зависимость между модулем и
блоками ОП такая же жесткая, как и при прямом отображении. А вот размещение
блоков по строкам модуля произвольное и для поиска нужной строки в пределах
модуля используется ассоциативный принцип. Этот способ отображения наиболее
широко распространен в современных микропроцессорах.
Отображение секторов ОП в кэш-памяти.
Данный тип отображения применяется во всех современных ЭВМ и состоит в
том, что вся ОП разбивается на секторы, состоящие из фиксированного числа
последовательных блоков. Кэш-память также разбивается на секторы,
содержащие такое же количество строк. Расположение блоков в секторе ОП и
секторе кэша полностью совпадает. Отображение сектора на кэш-память
осуществляется ассоциативно, те любой сектор из ОП может быть помещен в
любой сектор кэша. Таким образом, в процессе работы АЛУ обращается в
поисках очередной команды к ОП, в результате чего, в кэш загружается( в
случае отсутствия там блока, содержащего эту команду), целый сектор
информации из ОП, причем по принципу локальности, за счет этого достигается
значительное увеличение быстродействия системы.
Смешанная и разделенная кэш-память.
Внутренняя кэш-память использовалась ранее как для инструкций(команд),
так и для данных. Такая память называлась смешанной, а ее архитектура –
Принстонской, в которой в единой кэш-памяти, в соответствии с классическими
принципами фон Неймана, хранились и команды и данные.
Сравнительно недавно стало обычным разделять кэш-память на две – отдельно
для инструкций и отдельно для данных.
Преимуществом смешанной кэш-памяти является то, что при заданном объеме,
ей свойственна более высокая вероятность попаданий, по сравнению с
разделенной, поскольку в ней автоматически устанавливается оптимальный
баланс между инструкциями и данными. Если в выполняемом фрагменте программы
обращения к памяти связаны, в основном, с выборкой инструкций, а доля
обращений к данным относительно мала, кэш-память имеет тенденцию заполнения
инструкциями и наоборот.
С другой стороны, при раздельной кэш-памяти, выборка инструкций и данных
может производиться одновременно, при этом исключаются возможные конфликты.
Последнее особенно существенно в системах, использующих конвейеризацию
команд, где процессор извлекает команды с опережением и заполняет ими буфер
или конвейер.
Так,например, в процессоре Intel® 486 DX2 применялась смешанная кэш-
память,
В Intel® Pentium® и в AMD Athlon™ с их суперскалярной организацией –
раздельная. Более того, в этих процессорах помимо кэш-памяти инструкций и
кэш-памяти данных используется также и адресная кэш-память. Этот вид кэша
используется в устройства
| | скачать работу |
Другие рефераты
|