Pentium 4

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Pentium 4
Pentium 4-2,4GHz.JPG
Intel Pentium 4
Роки виробництва: з 2000 до 2008
Виробник(и):
  • Intel
Макс. частота CPU: 1300 MHz – 3800 GHz
Частота FSB: 400 MHz – 1066 MT/s
Техпроцес: 0.180 – 0.065
Набір команд: IA-32, MMX, SSE, SSE2, SSE3, EM64T
Мікроархітектура: x86, x86-64
Роз'єм(и):
Ім'я ядра:
  • Willamette
  • Northwood
  • Gallatin
  • Prescott
  • Cedar Mill

Intel Pentium 4 — одноядерний мікропроцесор компанії Intel, що був представлений 20 листопада 2000 року. Він став першим мікропроцесором, в основі якого була принципово нова архітектура сьомого покоління (за класифікацією Intel) — NetBurst. Крім різних варіантів Pentium 4 до процесорів архітектури NetBurst відносяться двоядерні процесори Pentium D, а також деякі процесори Xeon, які призначені для серверів. Більш того, частина процесорів Celeron, призначених для систем нижнього цінового рівня, являють собою Pentium 4 з частково відключеним кешем другого рівня.

Виробництво процесорів Pentium 4 було почате в 2000 році. З середини 2005 року почався їх поступовий перехід до нижньої цінової категорії. Їх місце зайняли двоядерні процесори Pentium D. 27 липня 2006 року з'явились перші процесори Core 2 Duo, що замінили процесори архітектури NetBurst, а вже 8 серпня 2007 року компанія Intel повідомила про початок дії програми стосовно зняття з виробництва всіх процесорів архітектури NetBurst.

Нововведення[ред.ред. код]

Hyper Pipelined Technology[ред.ред. код]

Назвою Hyper Pipelined Technology конвеєр Pentium 4 зобов'язаний своїй довжині – 20 стадій. Для порівняння – довжина конвеєра Pentium III становить 10 стадій. Завдяки декомпозиції виконання кожної команди на більш дрібні етапи, кожен з цих етапів може виконуватися швидше, що дозволяє безперешкодно збільшувати частоту процесора. Так, якщо при використовуваному сьогодні технологічному процесі 0.18 мкм гранична частота для Pentium III складає 1 ГГц (ну або, за більш оптимістичними оцінками, 1.13 ГГц), Pentium 4 зможе досягти частоти 2 ГГц. Однак, у надмірно довгого конвеєра є і свої недоліки. Перший недолік очевидний – кожна команда тепер, проходячи більше число стадій, виконується довше. Тому, щоб молодші моделі Pentium 4 перевершували по продуктивності старші моделі Pentium III, частоти Pentium 4 починаються з 1.4 ГГц. Якби Intel випустив би Pentium 4 1 ГГц, то цей процесор безсумнівно би програв у продуктивності гігагерцовому Pentium III. Другий недолік довгого конвеєра розкривається при помилках в пророкуванні переходів. Як і будь-який сучасний процесор Pentium 4 може виконувати інструкції не тільки послідовно, але й паралельно, відповідно не завжди в тому порядку, як вони йдуть у програмі і не завжди достеменно знаючи напрямки умовних переходів. Для того, щоб вибирати в таких випадках гілки програми для подальшого виконання, процесор прогнозує результати виконання умовних переходів на основі накопиченої статистики. Однак, іноді блок пророкування переходів все ж помиляється, і в цьому випадку доводиться повністю очищати конвеєр, зводячи нанівець усю попередньо проведену процесором роботу по виконанню не тієї гілки в програмі. Природно, при більш довгому конвеєрі, його очищення обходиться дорожче в тому сенсі, що на нове заповнення конвеєра йде більше процесорних тактів, а отже і часу.

Advanced Dynamic Execution[ред.ред. код]

Advanced Dynamic Execution, як раз і є мінімізація простою процесора при неправильному прогнозі переходів і збільшення імовірності правильних передбачень. Для цього Intel поліпшив блок вибірки інструкцій для позачергового виконання і підвищив правильність передбачення переходів. Правда, для цього алгоритми передбачення переходів були доопрацьовані мінімально, основним же засобом для досягнення мети було обрано збільшення розмірів буферів, з якими працюють відповідні блоки процесора. Так, для вибірки наступної інструкції для виконання використовується тепер вікно завбільшки в 126 команд проти 42 команд процесора Pentium III. Буфер ж, у якому зберігаються адреси виконаних переходів і на підставі якого процесор пророкує майбутні переходь, тепер збільшено до 4 Кбайт, у тієї годину як у Pentium III його розмір становив всього 512 байт. Результатом цього, а також завдяки невеликій доопрацювання алгоритмом, ймовірність правильного передбачення переходів була поліпшена в порівнянні з Pentium III на 33%. Це дуже хороший показник, оскільки тепер Pentium 4 пророкує переходи правильно в 90-95% випадків.

Trace Cache[ред.ред. код]

Замість звичайного L1 кешу, який Pentium III був розділений на область інструкцій і область даних у Pentium 4 застосований новий підхід. Інструкції кеші L1 не зберігаються, він призначений тільки для даних. Для кешу інструкцій тепер використовується Trace Cache, однак у порівнянні зі звичайним L1-кешем він має багато переваг, спрямованих знову ж на мінімізацію простоїв процесора при виконанні неправильних прогнозів переходів. Перше і основне – у Trace Cache зберігаються вже декодированные інструкції. Це означає, що в ньому зберігаються не класичні x86 інструкції, а так звані микрокоманды, більш прості операції якими безпосередньо оперує процесорне ядро. Збереження в Trace Cache мікрооперацій дозволяє уникнути повторного декодування інструкцій x86 при повторному виконанні того ж ділянки програми або при неправильному прогнозі переходів.

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

Intel не розкриває розмірів свого Trace Cache в кілобайтах, однак, відомо, що в ньому може бути збережено до 12000 мікрооперацій.

Rapid Execute Engine[ред.ред. код]

Найбільш проста частина сучасного процесора – це ALU (арифметико-логічний пристрій). Завдяки цьому факту, Intel визнав можливим збільшити його тактову частоту всередині Pentium 4 вдвічі по відношенню до самого процесора. Таким чином, наприклад, в 1.4 ГГц Pentium 4 ALU працює на частоті 2.8 ГГц.

У ALU виконуються прості цілочисельні інструкції, тому, продуктивність нового процесора при операціях з цілими числами повинна бути дуже високою. Однак, на продуктивності Pentium 4 при операціях з речовими числами, MMX або SSE дворазове прискорення ALU ніяк не позначається. Таким чином, латентність ALU істотно знижується. Зокрема, на виконання однієї інструкції типу add Pentium 4 1.4 ГГц витрачає всього 0.35 нс, в той час як виконання цієї команди у Pentium III 1 ГГц займає 1 нс.

SSE2[ред.ред. код]

Реалізувавши у своєму процесорі Athlon новий конвеєрний FPU, AMD дуже сильно обігнала інтеловський Pentium III в продуктивності при операціях з речовими числами. Однак, Intel у своєму Pentium 4 не став зосереджуватися на вдосконалення свого FPU, а просто збільшив можливості блоку SSE. В результаті, в Pentium 4 має місце розширений набір команд SSE2, в якому до наявного набору з 70 інструкцій було додано ще 144. Таке рішення – результат NetBurst ідеології, основною метою якої є збільшення швидкості роботи з потоками даних. Інструкції SSE дозволяли оперувати з вісьмома 128-бітними регістрами XMM0..XMM7, в яких зберігалися за чотири дійсних числа одинарної точності. При цьому всі SSE операції проводилися одночасно над четвірками чисел, в результаті чого спеціально оптимізовані програми, в яких проводилося велику кількість однотипних обчислень (а до них, крім обробки потоків даних в якійсь мірі відносяться і 3D-ігри), отримували істотний приріст в продуктивності. SSE2 ж оперує з тими ж самими регістрами і назад сумісний з SSE процесора Pentium III. А настільки вражаюче розширення набору команд викликано тим, що тепер операції з 128-бітними регістрами можуть виконуватися не тільки як з четвірками дійсних чисел подвійної точності, але і як з парами дійсних чисел подвійної точності, з шістнадцятьма однобайтовыми цілими, з вісьмома короткими двобайтовими цілими, з чотирма четырехбайтовыми цілими, з двома восьмибайтовыми цілими або з 16 байтовими цілими. Тобто, тепер SSE2 представляючи собою симбіоз MMX і SSE і дозволяє працювати з будь-якими типами даних, влезающими в 128-бітові регістри.

Використання кешу[ред.ред. код]

L1 кеш[ред.ред. код]

Що стосується кеша першого рівня в Pentium 4, оскільки тепер команди зберігаються в Trace Cache, він призначений тільки для зберігання даних. Однак, його розмір в Pentium 4, заснованому на ядрі Willamette складає всього 8 Кбайт. Це виглядає досить невеликий цифрою навіть на тлі 16-килобайтной області даних в кеші L1 Pentium III. Однак, Intel був змушений скоротити обсяг кеша першого рівня в Pentium 4, так як ядро цього процесора і без того виходило занадто великим. Тим не менш, архітектура цього процесора може підтримувати L1-кеш і більшого розміру, тому, швидше за все, при переході на технологічний процес 0.13 мкм і нове ядро Northwood, цей кеш буде збільшено.

Однак, для збільшення продуктивності, Intel застосував для доступу до L1-кешу новий алгоритм, чим зменшив в Pentium 4 латентність цього кеша до двох процесорних тактів замість трьох тактів в Pentium III. Таким чином, враховуючи більшу тактову частоту Pentium 4, час реакції його L1 кешу складає всього 1.4 нс для 1.4 ГГц моделі проти 3нс у L1 кешу Pentium III 1 ГГц. Також як і у Pentium III, L1 кеш Pentium 4 є write through і асоціативним з 4 областями асоціативності. При цьому довжина одного рядка кеша L1 дорівнює 64 байтам.

L2 Advanced Transfer Cache[ред.ред. код]

Процесор Pentium 4 має Advanced Transfer Cache другого рівня об'ємом 256 Кбайт. Також, як і у Pentium III, L2-кеш має широку 256-бітну шину, завдяки якій процесори від Intel мають більш високу пропускну здатність кеша, ніж їх конкуренти від AMD, використовують 64-бітну шину кеша. Однак, на відміну від Athlon, в Pentium 4 (втім, також як і у Pentium III) L2 кеш не є ексклюзивним, тобто він дублює дані, що знаходяться в кеші L1. Так як Pentium 4 розрахований на обробку потокових даних, швидкість роботи L2-кеша для нього є одним з ключових моментів. Тому, Intel збільшив пропускну здатність кеша другого рівня в Pentium 4 в два рази. Це вдосконалення було зроблено завдяки передачі даних з L2-кеша на кожен процесорний такт, в той час, як дані з L2-кеша Pentium III передаються тільки на кожен другий такт. Таким чином, пропускна здатність L2-кеша Pentium 4, що працює, наприклад, з частотою 1.4 ГГц, має тепер значну величину 44.8 Гбайт/с. Для порівняння – пропускна здатність Advanced Transfer Cache у Pentium III 1 ГГц становить 16 Гбайт/с. Також як і у Pentium III, L2 кеш має вісім областей асоціативності та рядка довжиною 128 байт. Однак, на відміну від Pentium III, кожен рядок може бути вилучено не цілком, а 64-байтовим половинкам. Говорячи про систему кешування в Pentium 4, не можна обійти стороною і той факт, що архітектура NetBurst підтримує і кеш третього рівня розміром до 4 Мбайт. Однак, в Pentium 4 поки ця можливість використовуватися не буде. Вона зарезервована для майбутнього застосування в серверних процесорах.

Northwood[ред.ред. код]

Intel Pentium 4 1800 на ядрі Northwood

7 січня 2002 компанією Intel були анонсовані процесори Pentium 4 на новому ядрі Northwood на основі ядра ​​Willamette із збільшеним до ½ Мбайт об'ємом кеш-пам'яті другого рівня. Процесори на ядрі Northwood містили 55 млн транзисторів і вироблялися за новою 130 нм КМОН-технологією з мідними з'єднаннями. За рахунок використання нової технології виробництва вдалося значно скоротити площу кристала: кристал процесорів на ядрі Northwood ревізії B0 мав площу 146 мм ², а в наступних ревізіях площа кристала зменшилася до 131 мм ².

Тактова частота процесорів Pentium 4 на ядрі Northwood становила 1,6-3,4 ГГц, частота системної шини - 400, 533 або 800 МГц в залежності від моделі. Всі процесори на ядрі Northwood випускалися в корпусі типу FC-mPGA2 і призначалися для установки в системні плати з роз'ємом Socket 478, напруга ядра цих процесорів становило 1,475-1,55 В залежно від моделі, а максимальне тепловиділення - 134 Вт на частоті 3,4 ГГц.

14 листопада 2002 був представлений процесор Pentium 4 з 3066 МГц, що підтримує технологію віртуальної багатоядерності - Hyper-Threading. Цей процесор виявився єдиним процесором на ядрі Northwood з частотою системної шини 533 МГц, що підтримував технологію Hyper-Threading. Надалі цю технологію підтримували всі процесори з частотою системної шини 800 Мгц (2,4-3,4 ГГц)

Prescott[ред.ред. код]

2 лютого 2004 компанією Intel були анонсовані перші процесори Pentium 4 на ядрі Prescott. Вперше з моменту своєї появи архітектура NetBurst зазнала значних змін.

Основною відмінністю ядра Prescott від попередників був подовжений з 20 до 31 стадії конвеєр. Це дозволило збільшити частотний потенціал процесорів Pentium 4, однак могло призводити до більш серйозних втрат продуктивності при помилці передбачення переходів. У зв'язку з цим ядро ​​Prescott отримало вдосконалений блок пророкування переходів, що дозволив значно скоротити кількість помилок передбачення. Крім того, було модернізовано ALU, зокрема, був доданий блок цілочисельного множення, був відсутній в процесорах на ядрах Willamette і Northwood. Кеш даних першого рівня був збільшений з 8 до 16 Кбайт, а кеш другого рівня - з 512 Кбайт до 1 Мбайт.

Тактова частота процесорів Pentium 4 на ядрі Prescott становила 2,4-3,8 ГГц, частота системної шини - 533 або 800 МГц в залежності від моделі. При цьому в настільних процесорах з тактовою частотою нижче 2,8 ГГц була відключена підтримка технології Hyper-threading. Спочатку процесори на ядрі Prescott випускалися в корпусі типу FC-mPGA2 (Socket 478), а потім - у корпусі типу FC-LGA4 (LGA775). Процесори містили 125 млн транзисторів, вироблялися по 90 нм технології КМОН з використанням напруженого кремнію (en: strained silicon), площа кристала становила 112 мм ², напруга ядра - 1,4-1,425 У залежно від моделі.

Незважаючи на те, що процесори на ядрі Prescott вироблялися за новою 90 нм технології, домогтися зниження тепловиділення не вдалося: так, наприклад, Pentium 4 3000 на ядрі Northwood мав типове тепловиділення 81,9 Вт, а Pentium 4 3000E на ядрі Prescott в корпусі типу FC-mPGA2 - 89 Вт Максимальне тепловиділення процесорів Pentium 4 на ядрі Prescott становило 151,13 Вт на частоті 3,8 ГГц .

Процесори Pentium 4 на ядрі Prescott отримали підтримку нового додаткового набору команд - SSE3, а також підтримку технології EM64T (у ранніх процесорах підтримка 64-бітових розширень була відключена). Крім того, була оптимізована технологія Hyper-threading (зокрема, в набір SSE3 увійшли інструкції, призначені для синхронізації потоків) .

У результаті змін, внесених в архітектуру NetBurst, продуктивність процесорів на ядрі Prescott змінилася в порівнянні з процесорами на ядрі Northwood, що мають рівну частоту, таким чином: у однопоточних додатках, що використовують інструкції x87, MMX, SSE і SSE2, процесори на ядрі Prescott виявлялися повільніше , ніж попередники, а в додатках, що використовують багатопоточність або чутливих до об'єму кеш-пам'яті другого рівня, випереджали їх .

20 лютого 2005 компанією Intel були представлені процесори Pentium 4 на модернізованому ядрі Prescott. Це ядро ​​відрізнялося від попередника лише збільшеним до 2 Мбайт об'ємом кеш-пам'яті другого рівня, тому отримало найменування Prescott 2M. Кількість транзисторів у процесорах на новому ядрі збільшилася до 169 млн, площа кристала - до 135 мм ², а напруга ядра не змінилося в порівнянні з процесорами на ядрі Prescott.

Всі процесори на ядрі Prescott 2M випускалися в корпусі типу FC-LGA4, мали частоту системної шини 800 МГц, підтримували технології Hyper-threading і EM64T. Тактова частота процесорів Pentium 4 на ядрі Prescott 2M становила 3-3,8 ГГц .

Cedar Mill[ред.ред. код]

16 січня 2006 компанією Intel були представлені процесори на ядрі Cedar Mill. Cedar Mill стало останнім ядром, що використовувалися в процесорах Pentium 4. Воно являло собою ядро ​​Prescott 2M, випускається по новому техпроцесу - 65 нм. Застосування 65 нм технології дозволило зменшити площу кристала до 81 мм ².

Існувало чотири моделі процесорів Pentium 4 на ядрі Cedar Mill: 631 (3 ГГц), 641 (3,2 ГГц), 651 (3,4 ГГц), 661 (3,6 ГГц). Всі вони працювали з частотою системної шини 800 МГц, призначалися для установки в системні плати з роз'ємом LGA775, підтримували технологію Hyper-Threading, EM64T, XD-bit, а в останніх ревізіях C1/D0 обзавелися ще й енергозберігаючими EIST, С1Е і технологією захисту від перегріву ТМ2. Напруга живлення цих процесорів була в межах 1,2-1,3375 В, параметр TDP становив 86 Вт для процесорів степпінгів B1 і C1, в ревізії D0 цей показник вдалося зменшити до 65 Вт.

Ядро Cedar Mill також лежало в основі двоядерних процесорів Pentium D на ядрі Presler, які мали не один монолітний кристал, а два кристала аналогічних тим, які використовувалися в процесорах Pentium 4, розташованих на підкладці і закритих теплорозподільною кришкою.

Процесори Pentium 4 на ядрі Cedar Mill випускалися до 8 серпня 2007 року, коли компанія Intel оголосила про зняття з виробництва всіх процесорів архітектури NetBurst.

Посилання[ред.ред. код]

Офиційна інформація

Опис архітектури та історія процесорів

Джерела[ред.ред. код]

Див. також[ред.ред. код]