Архитектура Intel Core i (Nehalem)

Опубликовано в Компоненты ПК, Процессоры

Девятое поколение процессоров Intel, получившее название Core i, без доли сомне­ния можно назвать революционным. Условное «семейство Intel Core i» состоит из нескольких модельных рядов, ориентированных на различные сегменты рынка.

 

Архитектура Intel Core i (Nehalem)

На самом деле объединять эти процессоры в единое семейство можно лишь услов­но. Похоже, маркетологи компании Intel явно перемудрили с их названиями: к примеру, семейство Core i7 включает процессоры как на ядре Bloomfield, так и на ядре Lynnfield, «младшее» же семейство Core i5 может быть построено как на ядре Lynnfield (четырехъядерная серия Core i5-7xx), так и на новом 32-нанометровом ядре Clarkdale (двухъядерная серия Core i5-6xx).



И все бы ничего, только процессоры Bloomfield и Lynnfield ориентированы на со­вершенно разные платформы, несовместимые друг с другом. Даже разъемы у них разные. В процессорах Bloomfield используется разъем LGA 1366, а в процессорах Lynnfield-LGA 1156.

Прежде всего рассмотрим, что общего у новых процессоров. Как уже отмечалось, все процессоры Lynnfield имеют разъем LGA 1156. То есть теперь процессоры Intel могут иметь разъем LGA775, 1366 или 1156. В принципе, факт появления еще одного разъема процессоров Intel не столь печален. В конце концов, все равно но­вые процессоры Lynnfield несовместимы со старыми платформами, однако для процессоров Lynnfield потребуется еще и новый кулер, совместимый именно с разъ­емом LGA 1156.

Кстати, крепежные отверстия для кулера с разъемом LGA 1156 буквально на 2 мм не совпадают с отверстиями для кулера с разъемом LGA 775, и если бы разработчики захотели, то могли бы сделать кулеры для разъема LGA 1156 совместимыми с кулерами для разъема LGA 775. Но, видимо, компания Intel ре­шила таким образом простимулировать производителей кулеров. Ведь теперь вместе с новым процессором придется покупать и новый кулер!

Семейство Intel Core i

Семейство Intel Core i

Все процессоры Lynnfield изготавливаются по 45-нанометровой технологии, а их ядра основаны на микроархитектуре Nehalem.

При переходе к новой архитектуре Core i были внесены следующие изменения.

1. В процессоре появился встроенный контроллер памяти, поддерживающий два или три канала DDR3 SDRAM.

2. В платформе Bloomfield на смену шине FSB пришла новая, более быстрая шина QuickPath, ставшая несколько запоздалым ответом на созданную AMD шину HyperTransport.

3. В отличие от процессоров предыдущих поколений, все ядра у процессоров се­мейств Core i7 и i5 расположены на одном кристалле.

4. Добавлен общий для всех ядер кэш третьего уровня (L3) объемом 8 Мбайт. Увеличена кэш-память первого (L1) и второго (L2) уровней.

5. В процессорах вновь появилась поддержка «виртуального многопроцессорного режима» SMT (Simultaneous Multi-Threading) (ранее она была реализована в процессорах Pentium 4 под названием Hyper-Threading).



Отличительной особенностью новых процессоров Lynnfield является наличие в них интегрированного двухканального контроллера памяти DDR3. Напомним, что в процессорах Bloomfield (Intel Core i7-9xx) применяется трехканальный контрол­лер памяти DDR3, а в процессорах Lynnfield, которые позиционируются классом ниже, — только двухканальный контроллер памяти. При этом в штатном режиме процессоры поддерживают память DDR3-1333 и DDR3-1066, а в режиме разго­на—и более скоростную память.

Интегрированный контроллер памяти может использовать до трех DIMM-спотов на каждый канал, то есть на материнских платах для процессоров Lynnfield будут располагаться два, четыре или шесть спотов памяти.

Важно отметить, что никакой особой двухканальной DDRЗ-пaмяти для процессо­ров Lynnfield не потребуется. Для работы памяти в двухканальном режиме, когда реализуется весь потенциал контроллера памяти, нужны два, четыре или шесть одинаковых модулей памяти. Отметим также, что контроллер памяти, интегриро­ванный в процессор Lynnfield, поддерживает спецификацию ХМР, что позволяет в случае применения соответствующих модулей эффективно разгонять память.

Пожалуй, одна из интереснейших (с технической точки зрения) особенностей процессоров Lynnfield заключается в том, что во все новые процессоры интегри­рован контроллер PCI Express 2.0 (этот интерфейс отсутствует в процессорах Bloomfield). Все процессоры Lynnfield поддерживают 16 линий PCI Express 2.0, которые могут быть реализованы как один порт PCI Express 2.0 х16 или два порта PCI Express 2.0 х8 для установки видеокарт. То есть если раньше взаимодействие между процессором и видеокартой происходило через северный мост чипсета по высокоскоростной шине QPI, то теперь оно осуществляется напрямую, минуя чипсет.

Поскольку контроллер памяти также интегрирован непосредственно в процессор, то необходимость в высокоскоростной шине для взаимодействия с чипсетом у про­цессоров Lynnfield просто отсутствует. Соответственно все процессоры Lynnfield не поддерживают шины QPI для связи с чипсетом. Напомним, что в процессорах Bloomfield вместо шины FSB, которая ранее применялась для связи процессора с чипсетом, используется новая шина QPI (QuickPath Interconnect), контроллер которой распложен на кристалле процессора.

Она является последовательной, вы­сокоскоростной и двунаправленной. Теоретическая пропускная способность шины QPI составляет 25,6 Гбайт/с, хотя такая единица измерения, как гигабайт в секун­ду (Гбайт/с), не является характеристикой QPI-шины. Вместо этого используется термин «гигатрансферы в секунду» (ГТ/с) — количество передач запакетированных данных по шине в секунду. В таких единицах измерения максимальная пропускная способность шины QPI составляет 6,4 ГТ/с.

В процессорах Lynnfield вместо шины QPI применяется хорошо известная шина DMI с пропускной способностью 2 Гбайт/с, которая ранее использовалась для связи северного и южного мостов чипсетов.



Все процессоры Lynnfield, как и Bloomfield, имеют двухуровневую модульную архитектуру. На уровне Core Logic располагаются четыре ядра процессора, а на уровне Uncore Logic — такие компоненты процессора, как L3-K3LU, контроллер памяти, DMI и PCI Express. Причем компоненты уровня Core Logic, то есть ядра процессора, и компоненты уровня Uncore Logic и электрически, и по частоте независимы друг от друга. Это означает, что компоненты уровня Uncore Logic не синхронизованы по частоте с ядрами процессора, то есть кэш L3 будет работать на частоте, отличающейся от частоты работы ядер процессора и соответ­ственно кэшей L1 и L2.

Следующий важный момент заключается в том, что все процессоры Bloomfield поддерживали технологию многопоточной обработки Hyper-Threading (в резуль­тате чего операционная система видела четырехъядерный процессор как восемь отдельных логических процессоров или ядер), а из процессоров Lynnfield данный режим поддерживают далеко не все.

Собственно деление процессоров Lynnfield на Core i7 и i5 как раз и связано с поддержкой режима Hyper-Threading. Все процес­соры Lynnfield семейства Core i7 (i7-860, i7-870) являются четырехъядерными и поддерживают режим Hyper-Threading, а четырехъядерные процессоры семей­ства Core i5 (i5-750) не поддерживают этот режим.

Естественно, различные модели Lynnfield отличаются друг от друга и тактовой частотой. Так, младшая модель Core i5-750 работает на частоте 2,66 ГГц (коэффи­циент умножения — х20), модель i7-860 — на частоте 2,79 ГГц (коэффициент умножения — x21),ai7-870 — на частоте 2,93 ГГц (коэффициент умножения — х22).

Характеристики моделей процессоров Lynnfield и Bloomfield

Характеристики моделей процессоров Lynnfield и Bloomfield

Еще одна особенность процессоров Lynnfield заключается в том, что все они, как и процессоры Bloomfield, поддерживают режим Turbo Boost (иногда используется термин Turbo Mode, смысл которого заключается в динамической подстройке тактовых частот ядер процессора).

Для этого в процессорах предусмотрен специальный функциональный блок PCU (Power Control Unit), который отслеживает уровень загрузки ядер процессора и его температуру, а также отвечает за энергопитание каждого ядра и регулирование его тактовой частоты. Этот блок PCU включает более миллиона транзисторов и даже имеет свой микроконтроллер с микрокодом.

Составной частью PCU является так называемый Power Gate (затвор), который применяется для перевода каждого ядра процессора по отдельности в режим энер­гопотребления С6 (фактически Power Gate отключает или подключает ядра про­цессора к линии питания VCC).



Если какие-то ядра процессора оказываются незагруженными, они попросту отклю­чаются от линии питания с использованием блока Power Gate (их энергопотреб­ление при этом равно нулю). Соответственно тактовую частоту и напряжение питания оставшихся загруженных ядер можно динамически увеличить (за это отве­чает PCU), но так, чтобы энергопотребление процессора не превысило его TDP. То есть фактически сэкономленное за счет отключения нескольких ядер энергопотребление используется для разгона оставшихся ядер, но чтобы увеличение энергопотребле­ния в результате разгона не превышало сэкономленного.

Более того, режим Turbo Boost реализуется и в том случае, когда изначально загружа­ются все ядра процессора, но при этом его энергопотребление не превышает значение TDP. В этом случае частота каждого ядра может динамически увеличиваться, но так, чтобы энергопотребление процессора не превышало заданного в BIOS значения.

В идеале в BIOS можно задавать и степень разгона каждого ядра в отдельности, то есть максимальный коэффициент умножения для каждого ядра. Увеличение частоты в режиме Turbo Mode производится скачкообразно, порциями по 133 МГц (частота системной шины в процессорах составляет 133 МГц). Пользователи, ко­торым режим Turbo Mode придется не по вкусу, в настройках BIOS могут запретить его использование.

К сожалению, возможность тонкой настройки режима Turbo Boost через BIOS используют далеко не все производители материнских плат. Если точнее, настрой­ка Turbo Boost возможна только на материнских платах самой компании Intel. Все остальные производители плат (Gigabyte, MSI, ASUS, ECS, AsRock) ограничива­ются тем, что в BIOS можно включить либо выключить режим Turbo Boost. В боль­шинстве случаев включение этого режима означает, что все ядра процессора уве­личивают свою тактовую частоту на одну ступень, то есть на 133 МГц.

Рассмотрим технологические особенности процессоров этого семейства. Одна из них заключается в реализации технологии слияния макроопераций Macro-Fusion:

Во-первых, расширен набор команд, для которых возможно слияние макроопераций. Во-вторых, в микроархитектуре Intel Core слияние макроопераций не поддержи­валось для 64-битного режима работы процессора, то есть технология Macro-Fusion была реализована только в 32-битном режиме. В архитектуре Nehalem это узкое место устранено и операции слияния работают как в 32- , так и 64-битном режиме процессора.

Следующее усовершенствование микроархитектуры Nehalem касается технологии обнаружения программных циклов Loop Stream Detector. В архитектуре Nehalem применяется улучшенный блок обнаружения циклов — теперь он расположен не перед, а за декодером и рассчитан на 28 декодированных инструкций, то есть мож­но обнаруживать на 60 % более длинные циклы.

Таким образом, в Nehalem инструкции в цикле будут проходить через конвейер быстрее и чаще. Еще одно важное нововведение в архитектуре Nehalem — использование двухуровневой иерархии буфера ассоциативной трансляции (Translation Lookaside Buffer, TLB), или буфера трансляции виртуальных адресов страниц памяти в физические.

Расположение модуля Loop Stream Detector в процессоре с микроархитектурой Nehalem

Расположение модуля Loop Stream Detector в процессоре с микроархитектурой Nehalem

То есть если в архитектуре Intel Core традиционно использовалось два отдельных TLB-буфера для инструкции (ITLB) и данных (DTLB), которые можно рассматривать как буферы первого уровня, то теперь дополнительно введен унифициро-ванный TLB-буфер для данных и команд, который является буфером второго уровня. TLB-буфер второго уровня рассчитан на 512 записей, причем поддерживаются записи только для страниц памяти размером 4 Кбайт (Small Page). При этом ITLB-буфер рассчитан на 128 записей страниц памяти типа Small Page и семь записей (в расчете на один поток) для страниц типа Large Page (размером 2 или 4 Мбайт). Буфер DTLB рассчитан на 64 записи страниц памяти типа Small Page и 32 записи для страниц типа Large Page.



Естественно, что описанными изменениями в архитектуре Nehalem в сравнении с архитектурой Intel Core дело не ограничивается. Так, увеличен размер буфера переупорядочения (ReOrder Buffer, ROB): если ранее он был рассчитан на 98 микроинструкций, то теперь в нем можно размещать 128 микроинструкций. Кроме того, существенно улучшен механизм предсказания ветвлений.

Подверглись переработке и исполнительные блоки ядра процессора. Процессор на базе микроархитектуры Nehalem способен выполнять до шести операций за один такт. При этом возможно выполнение одновременно трех вычислительных операций и трех операций с памятью.

Исполнительные блоки ядра процессора Nehalem

Исполнительные блоки ядра процессора Nehalem

Еще одним существенным нововведением является набор расширений инструкций SSE4.2. Он включает поддержку всех 47 команд SSE4, а также семь новых программно-ориентированных ускорителей (Application Targeted Accelerator, ATA) обработки строк и текстовой информации. По утверждению разработчиков, до-полнительные ускорители будут полезны, например, в задачах лексического и синтаксического анализа, при работе с регулярными выражениями и поиске вирусов.

Говоря об особенностях новой микроархитектуры Nehalem, остается добавить, что длина конвейера в процессоре Nehalem составляет 16 ступеней, Напомним, что в про¬цессоре с микроархитектурой Intel Core конвейер включал 14 ступеней.

Прежде чем переходить к изучению структурной схемы, отметим ключевые техно-логические моменты, которые лежат в основе архитектур Core и Nehalem.



1. Intel Wide Dynamic Execution — обеспечивает выполнение до пяти микроопе-раций за один такт.
2. Intel Intelligent Power Capability — представляет собой целый набор технологий, призванных существенно снизить энергопотребление.
3. Intel Advanced Smart Cache — подразумевает наличие общей для всех ядер кэш-памяти L2, которая динамически распределяется между ними в зависимо¬сти от выполняемых задач.
4. Intel Smart Memory Access — комплекс технологий по оптимизации алгоритмов доступа к памяти и предварительной загрузки данных.
5. Intel Advanced Digital Media Boost — технология, направленная на оптимиза¬цию декодирования мультимедийного контента. Позволяет обрабатывать все 128-разрядные команды SSE, SSE2 и SSE3, широко используемые в мультиме¬дийных и графических приложениях, за один такт.
6. Intel 64 Technology — 64-битный (ЕМ64Т) режим целочисленной и адресной арифметики. Он позволяет работать с числами большой разрядности, а также адресовать свыше 1 Тбайт общей памяти (не путайте с оперативной: ее предель-ный размер при использовании 32-разрядных процессоров и операционных систем не превышает примерно 3,5 Гбайт).
7. Intel Dynamic Acceleration — эта технология позволила увеличить производи-тельность в однопоточных приложениях: когда одно ядро простаивает, а второе, наоборот, работает на полную мощность, IDA повышает тактовую частоту за-груженного ядра.
8. Dynamic FSB Switching — данная технология схожа с предыдущей: частота и напряжение системной шины автоматически уменьшаются и увеличиваются в зависимости от текущих потребностей.