Xreferat.com » Рефераты по информатике и программированию » Кэш-память современных микропроцессоров фирм 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™ с их суперскалярной организацией – раздельная. Более того, в этих процессорах помимо кэш-памяти инструкций и кэш-памяти данных используется также и адресная кэш-память. Этот вид кэша используется в устройствах управления памятью, в том числе для преобразования виртуальных адресов в физические.

Благодаря использованию нанотехнологий, для снижения потребляемой мощности, увеличения быстродействия ЭВМ( что достигается сокращением времени обмена данными между процессором и кэш-памятью) существует возможность, а более того имеются реальные примеры того, что кэш-память реализуют в одном кристале с процессором. Такая внутренняя кэш-память реализуется по технологии статического ОЗУ и является наиболее быстродействующей. Объем ее обычно составляет 64-128 Кбайт, причем дальнейшее увеличение ее объема приводит обычно к снижению быстродействия из-за усложнения схем управления и дешифрации адреса.

Альтернативой, широко применяемой в настоящее время, является вторая (внешняя) кэш-память большего объема, расположенная между внутренней кэш-памятью и ОП. В этой двухуровневой системе кэш-памяти, внутренней памяти отводится роль первого уровня L1, а внешней - второго L2. емкость L2 обычно на порядок и более выше, чем L1, а быстродействие и стоимость ниже. Память второго уровня также строится обычно как статическое ОЗУ. Емкость ее может составлять от 256 Кбайт до 1 Мбайта и технически реализуется как в виде отдельной микросхемы, однако может размещаться и на одном кристалле с процессором.

Самые современные процессоры от крупнейших производителей оснащаются сегодня кэш-памятью емкостью у Intel Pentium 4 на ядре Northwood - 512 Кбайт кэш-памяти L2, а процессоры Prescott будут выпускаться по 0,09-микронной технологии и получат кэш-память второго уровня удвоенного объема, который составит 1 Мбайт. Intel продолжает широко рекламировать свой "экстремальный" игровой процессор Pentium 4 Extreme Edition на основе модифицированного серверного ядра Gallatin с тактовой частотой 3,40 ГГц и кэш-памятью третьего уровня объемом 2 Мбайта. Она дополняет стандартный нортвудовский кэш L2 512 Кбайт и тоже работает на частоте ядра процессора (правда, с большей раза в два латентностью). Таким образом, в сумме новый Pentium 4 Extreme Edition имеет кэш-память объемом 2,5 Мбайт.

Дополнительная кэш-память третьего уровня ведет начало от серверных процессоров Xeon MP на 0,13-микронном ядре Gallatin и не имеет ничего общего с грядущим 90-нанометровым Prescott, однако этот кристалл (ядро) все же немного переработали с целью поддержки системной шины 800 МГц, уменьшения энергопотребления и др. и упаковали в стандартный корпус от текущих Pentium 4. В свою очередь AMD Athlon 64 и AMD Opteron работающие на более высокой частоте 2200 МГц, производятся по 0,13-микронной технологии (SOI) и содержат 105,9 млн. транзисторов и отличаются от предшествующих Athlon XP новым ядром с 64-битными возможностями вычислений (наряду с улучшенными 32-битными на базе прежнего ядра Athlon XP), кэш-памятью второго уровня объемом 1 Мбайт (причем кэш у Атлонов инклюзивный, то есть полный объем с учетом 128 Кбайт L1 составляет 1152 Кбайт).

При доступе к памяти, ЦП сначала обращается к кэш-памяти первого уровня. При промахе производится обращение к кэш-памяти второго уровня. Если информация отсутствует и в L2, производится обращение к ОП, и соответствующий блок заносится сначала в L2, а затем и в L1. Благодаря такой процедуре, часто запрашиваемая информация может быть легко восстановлена из кэш-памяти второго уровня.

Потенциальная экономия за счет применения L2 зависит от вероятности попаданий как в L1, так и L2. Однако, опыт Intel и AMD показывает, что использование кэш-памяти второго уровня существенно улучшает производительность. Именно поэтому во всех проанонсированых производителями новейших версиях процессоров применяется двухуровневая и даже трехуровневая организация кэш-памяти.

Некоторые данные по популярным и новейшим процессорам от Intel и AMD:

Pentium III

Процессор Intel® Pentium®III - процессор архитектуры P6, включает в себя: динамическое исполнение команд, системную шину с множественными транзакциями и технологию Intel MMX™ для обработки данных мультимедиа. Технология изготовления с разрешающей способностью 0.25 микрон позволяет разместить на кристалле более 9.5 миллионов транзисторов. Процессор содержит 32 Kб неблокируемой кэш-памяти первого уровня (16Кб/16Кб) и унифицированную неблокируемую кэш-память второго уровня емкостью 512 Кб, функционирующую на вдвое меньшей частоте, чем ядро. Процессор Intel® Pentium®III поддерживает кэширование памяти с объемом адресного пространства 4 Гб, и позволяет создавать масштабируемые системы с двумя процессорами и физической памятью объемом до 64 Гб.

Pentium IV

Процессор Pentium 4 устанавливает новый уровень производительности высокомощных микропроцессоров.

- Системная шина с частотой 800 МГц: 3,06 ГГц, 2,80 ГГц, 2,66 ГГц, 2,53 ГГц, 2,40B ГГц, 2,26 ГГц

- Технология гиперконвейерной обработки

- Механизм ускоренной обработки команд

- Кэш-память первого уровня с отслеживанием исполнения команд

- Кэш-память с улучшенной передачей данных

- Улучшенная система динамического исполнения команд

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

- Набор команд потоковых SIMD-расширений 2.

- У Intel Pentium 4 на ядре Northwood - 512 Кбайт кэш-памяти L2.

AMD-K6®-III

Процессор AMD-K6®-III, кодовое имя Sharptooth, в нем задействована встроенная быстродействующая кэш-память второго уровня (L2). В процессорный кристалл интегрированно 256 Кб кэш-памяти второго уровня, работающей на полной тактовой частоте процессора.

Процессор AMD-K6®-III содержит 21.3 миллиона транзисторов и производится по 0.25-микронной технологии на тактовые частоты 350, 380, 400 и 450 МГц. Объем кэш-памяти первого уровня (L1), как у всего семейства K6, равен 64Кб. Процессор AMD-K6®-III можно устанавливать в те же системные платы Super7™, что и AMD-K6®-2, при этом находящаяся на системной плате внешняя кэш-память 2 уровня превращается в кэш-память 3 уровня (L3), с которой процессор может общаться с внешней частотой 100 МГц.

AMD Athlon.

В настоящее время процессор AMD Athlon является самым быстрым процессором в мире. Процессор имеет следующие особенности:

Микроархитектура: Особенность процессора AMD Atlon™ - это девятипоточная суперскалярная архитектура оптимизованная для высоких частот. AMD Athlon™ содержит девять исполняемых потоков: три для адресных операций, три для целочисленных вычислений, и три для выполнения команд x87 .

Архитектура кэш-памяти: AMD Athlon™ имеет наибольший для платформ x86 кэш L1 (128KB) - в четыре раза превосходящий L1 кэш процессора Pentium III (32KB). AMD Athlon™ также включает высокоскоростной, 64-битный контроллер кэш памяти второго уровня (L2), поддерживающий объем кэш-памяти второго уровня от 512Kб до 8Mб.

Сводная таблица по объемам, принципам организации и тактовым частотам кэш-памяти у процессоров от Intel и AMD:

Кэш-память современных микропроцессоров фирм Intel и AMD

Сравнение некоторых новинок от Intel и AMD:

По утилитам у Pentium 4 Extreme Edition четко видна кэш-память третьего уровня объемом 2 Мбайт, хотя на месте и все прежние атрибуты Northwood.

Аналогичная информация показана для Athlon 64. Интересно, что у нового Pentium 4 меньший степпинг, нежели у последних Northwood, — 5 против 9. По графику теста латентности памяти для Pentium 4 Extreme Edition можно заключить, что граница кэш-памяти L3 лежит на 2 Мбайт, L2 — на 512 кбайт.

Итак, для двух новых процессоров Intel и AMD характерна прежде всего огромная кэш-память, которая в конце концов , и должна поднять производительность каждого из них.

Сравним процессоры:

-AMD Athlon 64 FX-51 (тактовая частота 2200 МГц).

-AMD Athlon XP 3200+ (частота 2200 МГц, FSB 400 МГц).

-Pentium 4 (Northwood) с частотой 3,2 ГГц (FSB 800 МГц).

Pentium 4 Extreme Edition c частотой 3,2 ГГц (FSB 800 МГц).

В данном случае абсолютное сравнение частот процессоров лишено смысла, поскольку их микроархитектуры существенно различаются ( и даже преследуют разные цели): в Pentium 4 производительность должна обеспечиваться преимущественно высокой тактовой частотой (для этого и увеличили до двадцати стадий вычислительный конвейер), а в Athlon упор делается на другие особенности, порой в ущерб тактовой частоте.

Разные подходы в микроархитектуре не позволяют адекватно сравнивать процессоры на одинаковой тактовой частоте.

И пример тому — разный предел частот при одинаковых технологических нормах производства: для технологии 0,13 мкм массовым пределом ядра Pentium 4 является частота 3,2–3,4 ГГц, а в Athlon — 2,2–2,4 ГГц. Поэтому корректнее сравнивать процессоры по пределу их частоты для той или иной технологии производства —

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: