Мікроархітектура Nehalem

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

При розробці схемотехніки своїх багатоядерних процесорів фірма Intel стала використовувати абсолютно нові матеріали для реалізації транзисторів. Зі зменшенням технологічної норми і зростанням числа транзисторів в кристалі процесора зменшувалася товщина ізолюючого шару – діоксиду кремнію, поки не досягла значення 1,2 нм, або 5 атомів. У міру зменшення товщини ізолюючого шару ріс струм витоку, а разом з ним і розсіює потужність. Для зниження струмів витоку потрібно було збільшити товщину ізолюючого шару, який для збереження характеру взаємодії затвора і каналу транзистора повинен був володіти більш високим коефіцієнтом діелектричної проникності. У 2007 р інженери фірми Intel розробили технологію виготовлення ізолюючого шару не з діоксиду кремнію, а з матеріалу на основі гафнію, яка дозволила знизити струм витоку в десять разів. Проте новий матеріал виявився несумісним з затвором транзистора. Транзистори з новим ізолюючим матеріалом працювали менш ефективно, ніж зі старим. Тоді було запропоновано замінити і матеріал затвора: корпорація Intel відкрила унікальне поєднання металів, склад якого тримається в строгому секреті. Нові технології реалізації транзисторів дозволили перейти на більш низьку технологічну норму – з 65 на 45 нм, що забезпечило збільшення числа транзисторів, що розміщуються на тій же площі. При цьому знизилася потужність процесів включення-виключення транзистора і підвищилася швидкість перемикання.

Істотним недоліком процесорів Intel Core став їх немодульность дизайн. Справа в тому, що вони спочатку проектувалися як двоядерні напівпровідникові кристали. Тому чотирьох – і шестиядерні представите ^ мікроархітектури Core просто збиралися з декількох двоядерних кристалів, а це призводило до утруднення взаємодії між ними. Обмін даними між розрізненими ядрами організовувався через системну пам’ять. Звичайно, такий підхід до реалізації обміну викликав великі затримки, обумовлені обмеженою пропускною здатністю процесорної шини.

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

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

Серверний процесор може включати в себе вже вісім ядер, кілька контролерів системної шини для об’єднання в багатопроцесорні системи, кеш-пам’ять і контролер пам’яті.

Відповідно до модульної концепцією в процесорах Nehalem виділяються два рівня. На першому розташовані ядра процесора, другий об’єднує пристрої, загальні для всіх ядер. Насамперед, це кеш третього рівня (у процесорів Intel Core загальним був кеш другого рівня). Другий компонент другого рівня у процесорів Nehalem – контролер системної шини, третій – загальний контролер оперативної пам’яті.

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

На використанні нової системної шини, що отримала

Назва Intel QuickPath Interconnect (QPI). Шина QPI є двобічної і складається з 20 пар ліній, кожна з пар передає один біт – 16 для даних і 4 – для службових сигналів. Шина QPI підвищує швидкість передачі даних в порівнянні з раніше використовувалася, починаючи з процесорів Pentium 4, шиною Quad-Pumped Bus в 4-8 разів. Вона використовується як для зв’язку ядер процесора з чіп-сетом, так і для зв’язку їх між собою. Шина QPI забезпечує небачену для всіх більш ранніх процесорів фірми Intel швидкість обміну даними – понад 25 Гбайт / с.

В деякі моделі процесорів Nehalem у другому рівні також встановлюється загальний графічний контролер.

Процесори Nehalem можуть підтримувати технологію багатопотокового обробки Simultaneous Multi-Threading, яка відома під назвою Hyper Threading. Нагадаємо, що вона використовувалася ще в деяких процесорах Intel Pentium 4 з мікроархітектури NetBurst, проте в процесорах з мікроархітектурою Intel Core вона була відсутня. Завдяки наявності технології Hyper Threading операційна система комп’ютера розглядатиме двоядерний процесор Nehalem як чотири, а четирех-ядерний – як вісім окремих логічних процесорів. Дуже важливою рисою мікроархітектури Nehalem стала висока ефективність енергоспоживання. Всі схемотехнические компоненти процесора розроблялися виходячи з критерію енергозбереження. Впроваджена інноваційна система управління електроживленням ядер процесора. Фактично в нього вбудований спеціальний контролер харчування, який контролює температуру і силу струму споживання кожного ядра і залежно від цього управляє їх напругою живлення і тактовою частотою. В результаті енергоспоживання ядер, не задіяних у процесі виконання програм, різко знижується.

Функціональна схема процесора з мікроархітектурою Nehalem показана на рис. 5.5.

Як уже зазначалося, мікроархітектури процесорів Intel Core і Nehalem мають багато спільного з Р6, але в них також є і цілий ряд принципових нововведень, що дозволило розробникам Intel позиціонувати їх як принципово нові покоління. Розглянемо ці нові мікроархітектури на прикладі процесорів Nehalem.

Цикл виконання команд тут, як і в процесорах Р6, починається з роботи буфера передбачення переходів (на рис. 5.5 не показаний). Блок вибірки команд на основі

Даних буфера здійснює вибір найбільш вірогідною гілки програми і введення з кеш другого рівня цілих блоків команд. Як і в процесорах Р6, вибірка команд з кешу виконується 16-байтними блоками, причому час вибірки становить 1 такт. Оскільки блок має фіксовану довжину, а команди х86 можуть містити різне число байтів, в ньому необхідно виділити кордону команд (в процесорах Р6 виконувалося в процедурі вирівнювання). У процесорах Nehalem ця процедура іменується преддешіфраціей.

Після преддешіфраціі команди порціями по чотири надходять в чергу команд (цей блок в процесорах Р6 відсутній). Звідси вони з тактовою частотою тими ж порціями надходять в дешифратор.

Дешифратор процесора Nehalem дуже схожий на Р6. Тільки тут простих дешифраторів не два, а три. Складні (складаються з 2-4 МО) команди декодуються в дешифраторі складних команд. Нарешті, команди, для декодування яких потрібно більше ніж 4 МО, надходять в ROM мікрокодів МО (аналогічний вузол у Р6 називався планувальником послідовностей МО).


1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 3.00 out of 5)

Мікроархітектура Nehalem