2. План
1. Історія розвитку МП Intel.
2. Організація 16-розрядних МП.
3. Режим переривань МП.
4. Продуктивність МП та її оцінювання.
2
3. Народження напівпровыдників
В грудні 1947 року дослідники
лабораторії Bell Labs Джон Бардін,
Вільям Шоклі та Уолтер Браттейн
представили світу перший
напівпровідниковий транзистор.
3
У 1956 році бувші працівники лабораторії
Bell Labs засновують компанію Fairchild
Semiconductor, яка випускає першу у світі
плоску інтегральну мікросхему
4. 18 липня 1968 року Роберт Нойс та Гордон Мур, покинувши
ряди компанії, Fairchild Semiconductor заснували свою, яку
назвали спочатку Integrated Electronics, а згодом, з подачі Р.
Нойса вона була перейменована на Intel.
Уже в рік заснування до Нойсу та Муру приєднався
угорський біженець Енді Гроув. Гроув є знаковою фігурою
для Intel. Він очолив компанію в 1979 році, і саме з цього часу
почався розквіт Intel, який триває і донині (Гроув пішов з
поста CEO Intel в 90-і роки, але до сих пір є дуже важливою
фігурою для компанії, з якою асоціюються всі її успіхи).
Першим інвестором Intel виступив відомий венчурний
капіталіст Кремнієвої Долини Артур Крок. Він погодився
вкласти в справу Нойса і Мура 3 мільйони доларів,
ознайомившись з їх бізнес-планом, який був представлений
всього лише на одній сторінці!
Заснування Intel
4
5. Перший чіп Intel
5
Першим чіпом (мікросхемою) Intel стала
64-розрядна SRAM на основі нової
технології біполярних транзисторів
Шотткі.
Відповідно до офіційної нумерації Intel
чіп отримав номер 3101.
SRAM (static random access memory) -
статична оперативна пам'ять з довільним
доступом, напівпровідникова оперативна
пам'ять, в якій кожен двійковий розряд
зберігається в схемі з додатним зворотним
зв'язком.
6. Перший комерційний МП Intel
У 1969 р компанією Nippon було замовлено
12 різних мікросхем у Intel, призначених
для їх власної розробки - настільного
калькулятора. Вже тоді у розробників Intel
виникла думка - поєднати кілька мікросхем
в одну. Ідея була схвалена керівництвом
корпорації, так як технологія дозволяла
добре заощадити на виробництві
мікросхем, до того ж, фахівці змогли
зробити процесор універсальним і
використовувати його в багатьох інших
обчислювальних пристроях.
15 листопада 1971 року компанія
представила прототип Intel 4004, першого
комерційного мікропроцесора, який мав
2300 транзисторів і працював на тактовій
частоті 740KHz.
6
7. «Марк 8» - перший ПК
7
Перший в світі персональний комп'ютер
розробив американський студент
Джонатан Тітус. Відомий журнал
«Електроніка» назвав його ПК «Марк 8»
(з англ. «Модель 8»). У виданні також
було дано опис комп'ютера, показана
детальна конструкція. Тітус хотів
заробити, продаючи друковані плати
тим, кому потрібно було зібрати свій
власний ПК. Решта пристрою клієнтам
доводилося купувати в магазинах.
Природно, «Модель 8» не принесла
багато прибутку своєму творцеві, але
Джонатан надав людству безцінну
послугу, створивши повноцінний ПК. Процесор Intel 8008 впаяний в
мікросхеми Марк 8-02
8. Перший комерційно успішний ПК
8
Після Intel 4004 на світ з'явився
процесор Intel 8008, який працював з
частотою 600-800 кГц, містив 3500
транзисторів, він сильно відрізнявся від
свого попередника. Intel 8008
застосовувався в різних цифрових
пристроях і калькуляторах. У той час на
ринку високих технологій стали
з'являтися персональні комп'ютери,
тому корпорація Intel незабаром
вирішила, що для ПК будуть потрібні
куди більш потужні процесори.
Незабаром був розроблений
продуктивний Intel 8080, який за своїми
характеристиками перевершував «8008-
ого" приблизно в десять разів.
Перший комерційно успішний
персональний комп'ютер Altair 8800
9. Поява архітектури х86
9
У 1979 році корпорація Intel знову зробила технологічний прорив, розробивши новий процесор
Intel 8086.
3-мікронний процесор 8086 працював на частот і 5 МГц (був розігнаний до 10 МГц в наступній
версії), містив 29000 транзисторів. Це був перший 16-розрядний мікропроцесор Intel, який і
поклав початок 16-розрядної ери, хоча і не був першим у світі 16-бітовим процесором.
10. Intel 80286
У 1982 році вийшов процесор Intel 80286.
Він був набагато потужнішим і швидшим свого
попередника Intel 8086, міг працювати з великими
обсягами пам'яті і не мав проблем з апаратною та
програмною сумісністю. Отже, користувачам більше не
потрібно було оновлювати дороге програмне
забезпечення. Все це було досягнуто за допомогою
введення нового режиму роботи процесора, завдяки
якому забезпечувалася робота відразу декількох
програм. Захищений режим підвищував
продуктивність чіпа в рази - в цьому був секрет успіху
Intel 80286.
За оцінками Intel, за 6 років випуску на 286-х процесорах у
світі було зібрано близько 15 мільйонів ПК.
10
11. Intel 386
11
Процесор Intel 386, який, на
відміну від більш
«бюджетного» варіанту
386SX, згодом отримав назву
386DX, спочатку працював з
тактовою частотою в 16 МГц.
Потім швидкодія було
подвоєно до 33 МГц, а число
транзисторів - до 275000.
ТАКИМ чином, 386 став
першим інтелівським 32-
розрядним процесором.
Він міг використовувати вже 4 ГБ пам'яті, а також перемикатися між захищеним і
реальним режимами. Також було додано віртуальний режим, який дозволяв
виконувати додатки, які не працюють в захищеному режимі.
12. Intel i486
12
До кінця 80-х років Intel встигла
випустити ще один процесор -
486DX. Він став першим
процесором з вбудованим
математичним співпроцесором і
першим, який подолав планку в
1 мільйон транзисторів - число
транзисторів в ньому склало 1,2
млн. Подібно 386, 486DX міг
адресувати до 4 ГБ пам'яті, мав
вбудований кеш, оптимізований
набір команд і шину більшої
пропускної спроможності.
Новий процесор знайшов
застосування не тільки в ПК, а й
в серверах.
Спочатку 486-й процесор був запущений у виробництво в якості моделі i486DX, але згодом
отримав безліч модифікацій, включаючи i486SX, i486SL і i486DX2, яка стала найбільш
популярною.
14. Intel Pentium
14
П'яте покоління інтелівских процесорів - Pentium - не
тільки отримало нову назву, а й підняло архітектуру х86
на новий рівень. Не маючи можливості запатентувати
серійні номери, Intel вводить назву Pentium,
виключивши таким чином копіювання числового
номера її нового 586 чіпа іншими виробниками.
У Pentium був втілений ряд удосконалень, спрямованих
на вирішення декількох проблем в попередніх
процесорах, помітно обмежували їх продуктивність.
Головними нововведеннями стали 64-розрядна шина,
два виконавчих модуля, значно поліпшений модуль
обчислень з плаваючою точкою (FPU) і швидша тактова
частота. Початкова частота у Pentium становила 60
МГц, але наступні процесори вже могли працювати на
частотах аж до 233 МГц. За час виробництва Pentium
технологія виготовлення цих процесорів змінилася з
0,8 до 0,3 мк, тим самим число транзисторів було
збільшено з 3,1 до 4,5 млн.
15. Intel Pentium Pro (1995)
15
Незважаючи на значне оновлення специфікацій, Pentium Pro
був помітно поліпшений в порівнянні з оригінальним Pentium.
Фактично, Pentium Pro продемонстрував не просто набір
поліпшень, а нову архітектуру, а приставка Pro «додала» ще
один мільйон транзисторів (тепер їх стало 5.5 млн). Але більш
важливим стало додавання первинної кеш-пам'яті в 256 КБ,
яка потім була збільшена до 1 МБ. Поки ще не інтегрована
безпосередньо в ядро процесора, кеш-пам'ять працювала на
тій же частоті, що і CPU - між 150 і 200 МГц.
Оновлена архітектура дозволила Intel реалізувати безліч
заходів, які привели до зростання продуктивності. Зокрема,
Pentium Pro став першим x86-процесором, який отримав
позачергове виконання. При позачерговому виконанні
мікрооперації спочатку надходять в буфер операцій, де
сортуються і відправляються в обчислювальні блоки не в
порядку надходження, а в порядку готовності до виконання.
Подібний підхід дозволив практично виключити простої обчислювальних блоків процесора.
Розрядність шини адреси була збільшена до 36 біт, що в поєднанні з технологією PAE дозволило
збільшити максимальний обсяг оперативної пам'яті до 64 ГБ.
16. Intel Pentium II та
Pentium II Xeon (1997)
16
Щоб збільшити обсяги виробництва, Intel переміщує вторинний кеш в зовнішній чіп. Таке
виконання передбачало роботу кеш-пам'яті на швидкості в два рази меншою швидкості
процесора. В останніх Pentium II Intel намагалася компенсувати зниження швидкості
збільшенням кешу з 256 КБ до 512 КБ. Це робилося не тільки з метою зниження ціни (на початку
випуску Pentium II коштував чималі гроші), але також щоб упакувати процесор в єдиний
контактний блок для системних плат з новим процесорним роз'ємом Slot1.
Pentium II вперше був виготовлений по
0.35-мкм технології, яка згодом була
замінена на 0.25-мкм. Він містив 7.5 млн
транзисторів і міг адресувати 64 ГБ
пам'яті. До того ж, Pentium II став
родоначальником перших процесорів
Xeon, реалізованих у 1998 році. Але, на
відміну від Pentium II, у Xeon обсяг L2
кеша досяг 2 МБ.
17. Intel Celeron (1998)
17
Intel зробила відмінний крок на ринку професійних і
високопродуктивних серверних процесорів, випустивши Pentium
II і Xeon. Але компанії бракувало процесора початкового рівня,
орієнтованого на величезний сектор ринку ПК. Intel заповнила цю
нішу, випустивши в 1998 році процесор Celeron зі значно меншою
продуктивністю і з набагато більш «бюджетної» ціною.
Пізніше, в ігрових версіях х86 кілька моделей Celeron стали
справжнім спокусою для любителів заощадити на процесорі
шляхом його розгону. Але перші Celeron на ядрі Pentium II
викликали прохолодну реакцію у більшості користувачів. В першу
чергу, це було обумовлено відсутністю вторинного кеша, що
дозволяв збільшити продуктивність. Пізніше Intel реалізувала
іншу версію з вторинним кешем об'ємом 128 КБ, що в деяких
випадках дозволило збільшити продуктивність в два рази.
Комбінація повноцінного вторинного кеша зі швидкістю чіпа і здатністю до розгону зробили
Celeron хітом серед маси процесорів придатних до «розгону».
Далі, лінійка Celeron супроводжувала головну лінію процесорів Intel, при цьому наступні Celeron
були побудовані на архітектурі, близькою до Allendale і мали два ядра.
18. Intel Pentium III та
Pentium III Xeon (1999)
18
У 1999 Intel випускає Pentium III. Додаткові інструкції SSE
дозволяють виконувати до чотирьох обчислень одинарної
точності з плаваючою комою одночасно, що підвищило
ефективність обробки 3D-зображень, потокового відео і інших
мультимедійних завдань у порівнянні з Pentium II.
Пізніше Intel випустила Pentium III Coppermine. Coppermine мав
інтегровані 256 КБ вторинної кеш-пам'яті, що працюють з
частотою ядра, подвоєний конвеєр і інші поліпшення, які привели
до підвищення продуктивності в кілька разів у порівнянні з
першим Pentium III.
Інший PIII чіп, названий Tualatin, мав вищу тактову частоту,
більший об'єм кеш-пам'яті, менший розмір кристала і більш
низьке енергетичний споживання. Tualatin забезпечив початкову
структуру інтеловських мобільних процесорів Pentium-M, які
пізніше призвели до появи Core i7.
Як і для Pentium III Xeon, інтеловський процесор для серверів не відрізнявся принципово від
аналогів для настільних комп'ютерів, хоча пізніше для PIII Xeon кеш-пам'ять була збільшена до 2
МБ і була реалізована підтримка чотирьох-ядерний конфігурації.
19. Intel Pentium 4 (2000)
19
Pentium 4 виявився досить якісним і підтримував набори інструкцій
SSE2 і SSE3. А в комбінації з HyperThreading, Pentium 4 чудово
справлявся як з мультимедійними та контентними задачпми, так і з
кодами, оптимізованими під нове ядро. А використання графічних
карт для 3D-графіки ще більше покращувало продуктивність, таким
чином, процесор Р4 заклав основу для розвитку ігрових
інструментів. Оверклокери проявили великий інтерес до ядра
Northwood, випущеному в 2002 році. З відповідною системною
платою і пам'яттю навіть початківці оверклокери могли підняти
тактову частоту на 1 ГГц при повітряному охолодженні.
Але щоб Pentium 4 дійсно заблищав, треба було підняти тактову частоту до рекордних цифр.
Intel передбачала, що цього вдасться досягти з ядром Prescott - першим чіпом, виготовленим по
90 нм технології. Але Prescott дав лише незначне підвищення продуктивності, на противагу
гучним рекламним обіцянкам, а в ігрових тестах значно поступався процесорам AMD.
20. Core i7 (2008)
20
У 2008 році Intel представила бренд Core i7, під яким
продавалися топові процесори на базі нової мікроархітектури
Nehalem. Ці процесори отримали нову системну шину,
інтегровану графіку, а також вбудовані контролери пам'яті і
шини PCIe. У 2009-2010 роках були також представлені бренди
Core i5 і Core i3, а процесори Core 2 і їх похідні витіснені з усіх
цінових сегментів.
У 2011 році на ринок вийшли процесори на базі архітектури
Sandy Bridge, у 2012 році була представлена вдосконалена
версія Sandy Bridge під назвою Ivy Bridge, яка стала першим
процесором Intel, що використовують техпроцес 22 нм і 3D-процесори. У 2013 році були
представлені процесори Haswell, а в 2014 і 2015 роках - Broadwell. Процесори Broadwell
виробляються по техпроцесу 14 нм. До них відноситься, в тому числі, процесор Core M, який має
розрахункове тепловиділення всього 4.5 Вт, що дозволяє використовувати його в пристроях з
пасивним охолодженням.
22. Організація 16-розрядних МП
22
Класичною реалізацією фоннейманівської архітектури є адресування пам’яті за плоскою
моделлю, коли вся пам’ять є єдиною лінійною послідовністю байтів. У цій пам’яті зберігаються і
дані, і коди програм.
Відповідальність за коректне використання пам’яті цілком покладається на прикладного
програміста, який повинен забезпечувати цілісність кодів та даних: дані не повинні зіпсувати коди,
а стек – перекритися з областю кодів.
У багатозадачному режимі, коли кільком десяткам задач надається можливість по черзі
виконуватись на віртуальній машині, розподілом ресурсів займається операційна система.
Віртуальна (надавана) машина складається з віртуального процесора, віртуальної пам’яті та
віртуальної підсистеми введення-виведення.
Найбільш незахищеною у багатозадачному режимі є пам’ять.
23. Структурна
схема МП І8086
23
За функціональним призначенням вузли схеми
поділяється на операційний пристрій, пристрій
спряження з шиною та керувальний пристрій.
Пристрій з’єднання з шиною складається з шестибайтової
регістрової пам’яті, яка називається чергою команд,
сегментних регістрів CS, DS, SS, ES та вказівника команд ІР
(Instruction Pointer), суматора та логіки керування шиною.
Черга команд працює за принципом FIFO (First Input – First
Output, перший увійшов – перший вийшов). Черга команд
називається також конвеєром команд.
До операційного пристрою входять арифметично-логічний
пристрій з регістрами тимчасового збереження і регістром
ознак, блока регістрів загального призначення, який
складається з чотирьох 16-розрядних регістрів загального
призначення AX, BX, CX, DX, кожний з них може
використовуватись як два 8-розрядних, регістрів-
вказівників SР, ВР та індексних регістрів SI, DI, які
використовуються при формуванні адрес.
24. 24
Регістри загального призначення (РЗП) AX,
BX, CX, DX допускають окреме використання
їх молодших байтів AL, BL, CL, DL і старших
байтів AН, BН, CН, DН.
Решта регістрів є неподільними! Вони оперують
16-бітовими словами навіть у разі використання
тільки їх молодшого або старшого байтів.
Регістри вказівники SP і BP та індексні
регістри SI та DI зберігають зміщення адреси
у межах поточного сегмента пам’яті.
Програмна
модель МП І8086
26. Програмна
модель МП І8086
26
Регістри сегментів CS, SS, DS, ES використовуються
для збереження інформації про початкові адреси
сегментів пам‘яті:
– CS – регістр сегмента команд;
– SS – регістр сегмента стека;
– DS – регістр сегмента даних;
– ES – регістр додаткового сегмента даних.
Регістр CS разом з регістром вказівника команд ІР
використовується для обчислення адреси наступної
виконуваної команди.
Регістр SS разом з вказівником стека SP
використовується для визначення адрес у сегменті
стека.
Регістр DS визначає область пам’яті, де
зберігаються змінні, що використовуються у
програмі.
Регістр ES адресує сегмент пам’яті під час операцій
з рядками.
27. Програмна
модель МП І8086
27
Регістр вказівника (лічильника) команд ІР,
призначений для адресування в середині поточного
сегмента коду.
Вказівник команди прямо у командах не вказується,
але бере участь в усіх командах передавання
управління (умовних та безумовних переходів,
виклику підпрограм, повернення з підпрограм
тощо).
У програміста немає можливості безпосередньо
змінювати вміст регістра ІР!
28. Програмна модель МП І8086
28
Регістр прапорців FLAGS зберігає інформацію про ознаки результату.
Регістр прапорців FLAGS вміщує 16 бітів, але не всі з них зайняті ознаками результату. AЛП виставляє 9 прапорців:
– CF(0) – прапорець перенесення, дорівнює 1, коли результат операції виходить за межі розрядної сітки;
– PF(2) – прапорець парності кількості одиничних бітів у молодшому байті результату, установлюється в 1, коли кількість
одиничних бітів парна;
– AF(4) – прапорець додаткового перенесення, установлюється в 1, коли є перенесення або позика для третього біта
результату;
– ZF(6) – прапорець нульового результату, установлюється в 1, коли результат операції дорівнює 0;
– SF(7) – прапорець знака, дублює стан найстаршого біта результату, при роботі з числами зі знаками SF визначає знак
числа – для додатних чисел SF = 0, для від’ємних S = 1;
– TF(8) – прапорець трасування, що використовується при налагодженні програм у покроковому режимі, в який
переводиться МП при TF = 1;
– IF(9) – прапорець переривань, якщо IF = 1, переривання дозволені;
– DF(10) – прапорець напряму, використовується у командах роботи з рядками, якщо DF = 0, вміст регістрів SI та DI
збільшується і рядок обробляється зліва направо, при DF = 1 – навпаки;
– OF(11) – прапорець переповнення, OF = 1 установлюється при перебільшенні результату операції над числами зі знаком
допустимого діапазону.
29. Режим переривань МП І8086
29
Переривання – це режим мікропроцесора, коли він тимчасово перериває виконання поточної програми і
переходить до підпрограми обробки переривань, яка є більш терміновою або важливою. Після повернення з
підпрограми процесор продовжує виконувати поточну програму.
Для цього у стеку запам’ятовується адреса повернення (CS та IP), а також вміст регістра прапорців FLAGS, які потрібні
для виконання також підпрограми обробки переривань. Значення IP перед завантаженням у стек коригується до
адреси команди, перед якою МП почав обслуговувати переривання.
Це пов’язано з наявністю у процесорі конвеєра команд, завдяки якому IP адресує команди з випередженням.
Слід зазначити, що вміст регістрів CS, IP та FLAGS запам’ятовується у стеку автоматично, а вміст усіх інших
регістрів, які будуть задіяні потім у підпрограмі, треба запам’ятати на її початку, а потім наприкінці її
вивантажити зі стека.
Переривання за видами можуть ідентифікуватись як зовнішні і внутрішні, апаратні та програмні, масковані
(ті, що можна забороняти) і немасковані.
Всього МП підтримує 256 типів переривань.
30. Джерела переривань 30
Зовнішні переривання можуть виникати як
реакція на запит переривань від зовнішніх
пристроїв, вони є апаратні. Запити на
масковані переривання надходять від
периферійних пристроїв на контролер
переривань, який формує вхідний сигнал МП
INTR.
У відповідь МП, якщо переривання дозволені
програмно, видає сигнал підтвердження
переривань INTA, після чого контролер
посилає у МП по шині даних байт, який
визначає тип переривання і МП його
обробляє. Якщо програмно переривання
заборонені, МП ігнорує запит, і продовжує
виконання програми.
Запити на немасковане переривання надходять по входу NMI і використовуються для переривання роботи МП у
таких випадках, як аварійне вимкнення живлення, помилка пам’яті тощо. Реакція на немасковані переривання не
залежить від їх програмного дозволу. У більшості випадків МП реагує на запит будь-якого переривання після
закінчення поточної команди.
31. Продуктивність МП та її оцінювання
31
Технічна пікова продуктивність МП – це теоретичний максимум швидкодії комп’ютера або МПС
за ідеальних умов. Вона визначається як кількість обчислювальних операцій, які виконуються за
секунду усіма арифметико-логічними пристроями, які є у процесорі.
Для оцінки пікової продуктивності потрібно знати тактову частоту процесора, розрядність оброблюваних
даних, пропускну здатність та кількість внутрішніх шин, перелік функціональних пристроїв.
Відповідність між одиницями вимірювання тактової частоти та продуктивності процесора
установлюється для одного конвеєра такою: 1 МГц відповідає 1 MFLOPS або 1 MIPS пікової залежно
від типу операції – з плаваючою або фіксованою точками. Для суперскалярних процесорів пікова
продуктивність обчислюється множенням значення тактової частоти на кількість паралельно
виконуваних операцій.
32. Оцінка продуктивності комп’ютерів
32
У світовій практиці набуло широкого розповсюдження використання наборів задач (тестів),
характерних для визначеної області застосування обчислювальної техніки, для оцінки
продуктивності комп’ютерів. Час, необхідний для вирішення кожної задачі з набору, складає
основу для обчислення індексу продуктивності, який є відносною оцінкою.
Першу групу тестів складають компанії-виробники для попередньої оцінки. Головна їх особливість
полягає в тому, що вони орієнтовані на порівняння обмеженої кількості комп’ютерів, які часто
відносяться до одного сімейства.
Прикладом такої оцінки для МП з архітектурою х86 компанія Intel запропонувала індекс
продуктивності iCOMP (Intel Corporative Microprocessor Performance), а в якості еталонного
прийнятий процесор І80486 SX-25, для якого індекс дорівнює 100.
Індекс iCOMP визначається при виконанні суміші операцій, яка складається з 67% операцій над 16-
розрядними цілими, 3% операцій над 16-розрядними числами з плаваючою точкою, 25% – над 32-
розрядними цілими та 5% – над 32-розрядними числами з плаваючою точкою й оцінює тільки
продуктивність мікропроцесора, а не системи.
33. Оцінка продуктивності комп’ютерів
33
Для оцінки серверів, які оброблюють трансакції у реальному часі, використовується набір
тестів TPP–C (Transaction Processing Performance Council), а продуктивність оцінюється
кількістю трансакцій, які виконуються за хвилину.
Тестовий пакет SYSmark 2014 (https://bapco.com) вимірює продуктивність процесорів ПК у
реальних додатках.