24 ПРОЦЕСОРИ INTEL CORE 2 DUO

Вперше архітектура процесорів Core 2 Duo була озвучена на весняній сесії форуму Intel в 2006 році. Цоколівка нових процесорів — це звичний LGA775. Зовнішній вигляд процесорів Core 2 Duo наведено на рис. 24.1.

Рисунок 24.1 - Мікросхема процесора Core 2 Duo


Intel Core 2 – процесор двоядерний. Тому в першу чергу слід відмітити кардинальну зміну в порівнянні з Pentium ідеологією. Тепер замість двох практично самостійних процесорів у одному сокеті, як і в першому Core Duo, використовується загальний кеш другого рівня, до якого обидва ядра мають рівноправний доступ. Об’єм кеш-пам’яті збільшено до 4 Мбайт. Крім того, в Core 2 Duo реалізовані наступні технології:

Збільшення швидкості виконання інструкцій, оптимізація роботи з пам’яттю, введення підтримки 64-розрядних обчислень і, нарешті, - нового набору інструкцій SSE4. Як результат – велика ефективність навіть при рівній тактовій частоті. А враховуючи, що перед настільними процесорами не стоїть завдання забезпечити мінімальне енергоспоживання і, отже, можна використовувати більш високі частоти, ніж ті, на яких працюють мобільні процесори, Core 2 на ядрі Conroe помітно перевершує за продуктивністю Core на ядрі Yonah.

Покращення в енергоспоживанні. Використання техпроцесу 65 нм, що вигідно відрізняє Core 2 від конкуруючих AMD Athlon.

Підтримка технології Intel Enhanced Speed Step — динамічна зміна тактової частоти процесора залежно від поточних потреб в обчислювальній потужності.

Технологія Ultra Fine Grained Power Control — можливість відключення тих блоків процесора, які в даний момент не використовуються.

Зниження розрядності шини. У «легких» режимах більша частина пропускної здатності шин не використовується, тому розрядність їх можна знизити без шкоди для поточних потреб в продуктивності.

В результаті вийшов «холодний» двоядерний процесор  (див. табл. 24.1).


 Таблиця 24.1 – Порівняння процесорів Core 2 з аналогічними

Компанія Intel відмовилася від «гонки мегагерц» і взяла курс на розробку ефективних процесорних архітектур з економним енергоспоживанням. Максимальна енергоефективність роботи процесора безпосередньо залежить не стільки від тактової частоти, скільки від кількості інструкцій, що виконуються за один такт. Іншими словами, тактова частота процесора — лише один з множників у простій формулі (рис. 24.2) [Продуктивність] = [Тактова частота] х [Кількість інструкцій, виконуваних за один такт]. Таким чином, зовсім не обов’язково «збільшувати частоту», є інші ефективні способи значно підняти продуктивність. Один з них — використання багатоядерності.

Рисунок 24.2 – Формула визначення продуктивності процесора


Іншим способом є метод зниження кількості інструкцій, необхідних для виконання того чи іншого завдання, тобто оптимізація потоку команд. Ще один приклад технології оптимізації потоку команд — технологія мікрозлиття команд (microfusion), в результаті чого декілька внутрішніх мікрооперацій (micro-ops) процесора можуть бути скомбіновані в одну мікрооперацію. Цим також значно скорочується загальна кількість мікрооперацій для виконання конкретного завдання.

Тим часом підняття рівня енергоефективності процесорів вимагає інших розрахунків. З’являється поняття оптимальної продуктивності, що відображає кількість енергії, що витрачається процесором на виконання того чи іншого завдання. Виходить, що енергоспоживання можна оцінити як добуток динамічної ємності (співвідношення електростатичного заряду провідника до різниці потенціалів між провідниками, що забезпечують цей заряд) на ефективність виконання інструкцій за такт, квадрат напруги живлення і тактову частоту рис. 24.2.


[Енергоспоживання] = [Динамічна ємність] х [Напруга] х [Напруга] х [Тактова частота].


Порівнюючи рівняння розрахунку енергоспоживання з попередньою формулою, можна виважено підійти до оцінки оптимального балансу між ефективністю кількості виконуваних за такт інструкцій, динамічної ємності з одного боку, відповідної напруги живлення ядра і буферних кіл в зв’язці з тактовою частотою чіпа з іншого боку. Таким чином можна досягти оптимальної продуктивності та ефективного енергоспоживання.

Основні особливості архітектури Intel Core. Архітектура Intel Core, рис. 24.3, з нормами 65нм техпроцесу стали основою для процесорів всіх сегментів ринку — настільних ПК (Conroe), мобільних ПК (Меrom) і серверів (Woodcrest). Чіпи на базі архітектури Intel Core дають значний приріст продуктивності — від 40% для Conroe до 80% для Woodcrest, при одночасному зниженні енергоспоживання на 35 - 40%.

Рисунок 24.3 – Архітектура Intel Core


Нова процесорна архітектура успадковує філософію ефективного енергоспоживання, вперше реалізовану в процесорах Intel Pentium М для мобільних ПК з робочою назвою Banias. Можливості процесорів поліпшені не тільки завдяки абсолютно новим технологіям, але також за рахунок використання напрацювань, що з успіхом застосовувалися в чіпах з архітектурою Intel Net Burst. І все ж ключова роль відводиться інноваціям, вперше реалізованих у новому поколінні процесорної архітектури Intel:

1. Технологія Wide Dynamic Execution покликана забезпечити виконання більшої кількості команд за кожен такт, підвищуючи ефективність виконання програм і скорочуючи енергоспоживання. Кожне ядро процесора, що підтримує цю технологію, тепер може виконувати до чотирьох інструкцій одночасно за допомогою 14-стадійного конвеєра;

2. Технологія Intelligent Power Capability, активуючи окремі вузли чіпа тільки в міру необхідності, значно знижує енергоспоживання системи в цілому;

3. Технологія Advanced Smart Cache має загальну для всіх ядер кеш-пам’ять L2, спільне використання якої знижує енергоспоживання і підвищує продуктивність. При цьому, за необхідності, одне з ядер процесора може використовувати весь обсяг кеш-пам’яті при динамічному відключенні іншого ядра;

4. Технологія Smart Memory Access підвищує продуктивність системи, скорочуючи час відгуку пам’яті і оптимізуючи, таким чином, використання пропускної здатності підсистеми пам’яті;

5. Технологія Advanced Digital Media Boost дозволяє обробляти всі 128-розрядні команди SSE, SSE2 і SSE3, що широко використовується в мультимедійних і графічних додатках, за один такт і збільшує швидкість їх виконання.

Під технологією Wide Dynamic Execution мається на увазі комплекс нововведень — розширений аналіз даних, спекулятивне, позачергове виконання команд і т.п. Вперше реалізований Intel в архітектурі Р6, що використовувався в процесорах Pentium Pro, Pentium II і Pentium III. В архітектурі Net Burst для цих цілей використовувався модуль Advanced Dynamic Execution, що забезпечував завантаження виконавчих модулів процесора і володіє поліпшеним алгоритмом прогнозування розгалужень для зниження кількості невірних прогнозів розгалужень. Технологія дозволяє забезпечити виконання більшої кількості команд за один такт, завдяки чому економиться час і енергія. Тепер кожне ядро процесора дозволяє одноразово обробляти не три, як в архітектурі Intel Net Burst, а до чотирьох команд, що виражається в 33% прирості в порівнянні з попередніми поколіннями.

Поряд з цим Wide Dynamic Execution має ефективне використання технології макро-злиття — Macro-Fusion (Macro-OPs Fusion), що об’єднує мікро- і макрооперації в єдині виконувані макрооперації, рис. 24.4. Якщо в попередніх поколіннях процесорів Intel кожна вхідна інструкція декодувалася і виконувалася окремо, то тепер використання принципу макрозлиття в процесі декодування команд дозволяє об’єднувати пари деяких інструкцій в єдину внутрішню інструкцію мікрооперацій (micro-ор) Hbce.

Рисунок 24.4 – Технологія Macro-Fusion (Macro-OPs Fusion)



Виконання двох інструкцій під виглядом єдиної мікрооперації дозволяє знизити сумарне завантаження процесора і збільшити кількість інструкцій, що обробляються за один такт. Більш того, арифметико-логічні блоки, що використовуються в процесорах з архітектурою Intel Core, доопрацьовані з розрахунком обробки об’єднаних в макрооперації команд, що також відбивається на загальному зниженні енергоспоживання чіпа, рис. 24.5.

Новація макрозлиття від Intel: прочитати п’ять команд з інструкцій послідовності; відправити парні інструкції до одного декодера; єдина інструкція-мікрооперацій представляє дві команди. Таким чином, за даними Intel, в загальному випадку вдається знизити навантаження операцій до 15% і скоротити число мікрооперацій до 10%. Модулі префетча (попередньої вибірки) готують ряд х86 команд, при цьому до п’яти з них можуть одночасно оброблятися чотирма блоками декодування. У разі можливості злиття двох команд (Macro-Fusion), з’являється фактична можливість паралельної обробки п’яти інструкцій за такт (одноразово може утворюватися не більше однієї макрокоманди).

Рисунок 24.5 – Макрозлиття від Intel



Інша інновація під зведеною назвою Intelligent Power Capability являє собою комплекс заходів, спрямованих на зниження енергоспоживання чіпа і оптимізації загальних конструктивних вимог. Технології, координуючі споживання енергії всіма виконавчими вузлами процесора, включають в себе розширені і оптимізовані за часом вибірки даних функції стеження за завантаженістю тих чи інших логічних колів.

Важливо відзначити, в архітектурі Intel Core зниження навантаження досягається не відключенням невикористовуваних кіл, а навпаки — стежача логіка Intelligent Power Capability включає необхідні логічні підсистеми процесора по мірі їх затребуваності. Багато внутрішніх шин і масивів логічних вузлів процесора тепер рознесені і живляться через окремі ключі, що дозволило переводити їх під час обробки деяких видів даних в додатковий економічний режим енергоспоживання за допомогою процесора, який направляє енергоспоживання до зовнішніх компонентів платформи, рис. 24.6, де PSI— індикатор стану живлення (Power Status Indicator).

Рисунок 24.6 – Intelligent Power Capability

 

На додачу до цього використано багатоканальний цифровий термодатчик DTS, що забезпечує ефективність процесора і здійснює терморегулювання, рис. 24.7.

Рисунок 24.7 – Багатоканальний цифровий термодатчик DTS

 


  На рис. 24.7 (а) приведена структура цифрового термодатчика DTS, (б) — платформа керування зовнішнім інтерфейсом (РЕСІ).

Із рис. 24.7 слідує - декілька термодатчиків розташовано в процесорі, щоб охопити всі можливі гарячі точки, чітка логіка сканує термодатчики і вимірює максимальну температуру на кристалі в будь-який момент часу, а точність звітності температури процесора забезпечується передовою тепловою схемою управління.

Основним завданням при реалізації такої «точкової», адресної схеми живлення було досягнення швидкої реакції системи, наприклад, при поверненні в режим повної потужності. В результаті зважений підхід при реалізації можливостей Intelligent Power Capability дозволив досягти додаткового зниження енергоспоживання без шкоди для швидкості реагування системи і підвищити сумарну енергетичну оптимізацію архітектури Intel Core.

У новій архітектурі Intel Core реалізована ефективна модель спільного використання ядрами процесора загального кешу L2. Технологія Advanced Smart Cache оптимізована так, щоб кожне ядро двоядерного процесора могло отримувати доступ до даних з максимальною ефективністю. Схема спільного використання ядрами процесора загального кеша L2 приведена на рис. 24.8.

Рисунок  24.8 – Технологія Advanced Smart Cache


Не всі сучасні багатоядерні процесори мають можливість розподілу доступу до загальної кеш-пам’яті L2. Це означає, що кожне ядро змушене оперувати з однаковими даними, розташованими у власному кеші L2. У разі архітектури Intel Core, коли обидва ядра мають доступ до єдиного кешу L2 і володіють можливістю динамічного — до 100% — перерозподілу ресурсів кеша L2 в свою користь в залежності від поточного завантаження, технологія Multi- Core Optimized Cache дозволяє досягти оптимального використання ресурсів підсистеми кеш-пам’яті. Додатковий плюс Multi-Core Optimized Cache — більш швидка вибірка даних з кеша.

Технологія Smart Memory Access, тобто, «інтелектуальний доступ до пам’яті», дозволяє підвищити продуктивність системи за допомогою оптимізації продуктивності в обміні даними з підсистемою пам’яті з загальним зниженням затримок доступу до пам’яті, рис. 24.9.

Рисунок 24.9 – Технологія Smart Memory Access


Нова функція, вперше реалізована у розробці технології Smart Memory Access, називається терміном Memory Disambiguation — «усунення суперечностей при доступі до пам’яті». Насправді функція Memory Disambiguation має можливість збільшити ефективність out-of-order обробки даних, забезпечуючи ядра процесора «спекулятивною» вибіркою даних для виконання інструкцій до того, як буде виконано ряд раніше поставлених в чергу на виконання інструкцій, рис. 24.10.

Зазвичай, коли out-of-order процесор змінює порядок інструкції, він не може переставити Load (навантаження) до Store (резерв), оскільки ще немає інформації про розташування відповідних даних. У разі використання принципу Memory Disambiguation, усунення протиріч проводиться за допомогою спеціальних алгоритмів, що визначають, чи може команда Load бути виконана до попереднього Store, і в разі позитивного результату черговість може бути змінена для досягнення кращого розпаралелювання процесу обробки інструкцій. У тих випадках, коли це неможливо, технологія визначає конфлікт, перезавантажує дані і повторно виконує інструкцію. Як видно з рис. 24.11 навантаження можуть відокремитися від резерву (навантаження 4 може отримати дані в першу чергу).

Технологія Smart Memory Access також включає в себе вдосконалені вузли префетча, «передбачаючи» вміст пам’яті та, будучи розміщеними в кеші, оперативно використовувані за потреби, рис. 24.12. Зрозуміло, збільшення завантажень з кеша проти вибірки з системної пам’яті позитивно позначається на зниженні затримок і поліпшення продуктивності.

Архітектура Intel Core передбачає наявність двох вузлів префетча на кожен кеш L1 і два на кеш L2. Вони детектують потоки і спільно розподіляють доступ, що дозволяє досягти своєчасного розміщення даних в кеші L1. Префетчери кеша L2 аналізують звернення ядер і забезпечують наявність даних в кеші L2, які можуть знадобитися ядрам в перспективі. Терміном Intel Advanced Digital Media Boost називається функція, що підвищує продуктивність процесора при виконанні інструкцій SSE, рис. 24.13. Обидва класи операцій — 128-бітові цілочисельні арифметичні SIMD і 128-бітові SIMD з плаваючою крапкою і подвійною точністю покликані зменшити загальну кількість інструкцій, необхідних для виконання специфічних програмних завдань. Вони дозволяють прискорити роботу безлічі додатків класу обробки відео і фото, розпізнавання мови, шифрування, фінансових, інженерних і наукових розрахунків.

Рисунок 24.10 – Функція Memory Disambiguation

Рисунок 24.11 – Розпаралелювання процесу обробки інструкцій

Рисунок 24.12 – Технологія передбачень Smart Memory Access

Рисунок 24.13 – Intel Advanced Digital Media Boost

 

У багатьох процесорах попередніх поколінь обробку кожної 128-бітної інструкції SSE, SSE2 і SSE3 можна розглядати як одну інструкцію, що виконується за два такти. Завдяки технології Intel Advanced Digital Media Boost виконання таких 128-бітних інструкцій стало можливим на піковій швидкості за один такт. Особливо ефективне використання технології Advanced Digital Media Boost в разі обробки мультимедійного контенту, графіки, відео, аудіо та інших даних з інтенсивним використанням SSE, SSE2 і SSE3. Таким чином, архітектура Intel Core задіяла всі плюси, вже реалізовані в перших поколіннях мобільних процесорів Intel Pentium М, взяла все найкраще з напрацювань архітектури Intel Net Burst, і, на додаток, збагатилася найсвіжішими інноваційними ідеями розробників.  

Маркування процесорів

Буквений індекс на початку маркування класифікує TDP процесора, без всякого співвідношення з форм-фактором:

X – TDP більше 75 Вт; Е – TDP від 50 Вт і вище; Т – TDP в межах 25 Вт – 49 Вт; L – TDP в межах 15 Вт – 24 Вт; U – TDP близько 14 Вт і менше. Технічні характеристики процесора Core 2 Duo представлені в табл. 24.2.


Таблиця 24.2 - Характеристики процесорів Core 2 Duo