НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Ткаченко Р. О. , Дорошенко А. В., Ткаченко П.Р.
АРХІТЕКТУРА КОМП’ЮТЕРІВ
Навчальний посібник
для студентів базового напрямку 050101 «Комп’ютерні науки»
Львів
2011
Зміст
Вступ
Розділ 1. Первинні поняття та еволюція засобів комп’ютерної техніки….
Первинні поняття та визначення комп’ютерної техніки
Розвиток комп'ютерної архітектури
Нульова генерація – механічні комп'ютери (1642-1945)
Перша генерація – електронні лампи (1945-1955)
Друга генерація –транзистори (1955-1965)
Третя генерація – інтегральні схеми (1965-1980)
Четверта генерація – надвеликі інтегральні схеми (1980- до сьогодні)
П’ята генерація – нейрокомп’ютери (1982 – до сьогодні)
Трансп’ютери
Розділ 2. Основи цифрової обчислювальної техніки........................................
Класичні моделі цифрових ЕОМ
Абстрактна модель Тюрінга
Класична модель комп’ютера фон Неймана
Експлуатаційні характеристики комп’ютерних засобів
Шляхи підвищення продуктивності комп’ютера
Особливості конвеєрної обробки
Непозиційна система числення як засіб підвищення продуктивності
Особливості системи числення залишкових класів
Виконання арифметичних операцій в системі залишкових класів
Алгоритми переводу чисел з позиційної системи числення в систему залишкових класів і зворотно
Особливості арифметичних пристроїв в системі залишкових класів
Розділ 3. Запам’ятовувальні пристрої.............................................................................
Пристрої пам'яті цифрових комп’ютерів
Класифікація запам’ятовувальних пристроїв
Ієрархічна організація пам'яті в сучасних ЕОМ
Розділ 4. Принципи побудови запам’ятовувальних пристроїв з різними способами пошуку інформації..................................................................................
Пристрої з адресним пошуком
Принципи побудови безадресної пам’яті
Асоціативна пам’ять
Гетероасоціативна
Стекова пам’ять
Буферна пам’ять
Пристрої оперативної пам’яті
Пристрої постійної пам’яті
Пристрої МДН
Застосування пристроїв постійної пам’яті
Позначення інтегральної схеми постійної пам’яті
Побудова блоків постійної пам’яті
Побудова регістрів на мікросхемах постійної пам’яті
Побудова лічильника на мікросхемах постійної пам’яті
Використання ПЗП для відтворення функцій алгебри логіки
Принципи побудови зовнішніх запам’ятовувальних пристроїв
Зовнішні запам’ятовувальні пристрої з рухомими елементами
Зовнішні запам’ятовувальні пристрої без рухомих елементів
Лінійна і сегментна адресації
Розділ 5. Цифрові автомати………………………………………………
Принципи побудови цифрових автоматів та їх моделі
Способи технічної реалізації цифрових автоматів
Побудова цифрового автомату з програмованою логікою
Розділ 6. Мікропроцесори та мікропроцесорні системи……………….
Внутрішня архітектура простого мікропроцесора Intel 8085
Система команд однобайтного мікропроцесора
Двобайтовий мікропроцесор Intel 8086
Архітектури комп’ютерів з повним і скороченим набором команд (CISC,RISC)
Розділ 7. Чотирибайтові мікропроцесори......................................................................
Елементи архітектури чотирибайтових процесорів
Особливості захисту пам’яті
Правила доступу до сегментів програм і сегментів даних
Напрямки розвитку сучасних мікропроцесорів
Розділ 8. Суперскалярні та мультискалярні мікропроцесори................
Особливості будови суперскалярних та мультискалярних мікропроцесорів
Особливості мультипроцесорних систем
Література………………………………………………………………………………
Додатки………………………………………………………………………………….
Розділ
1
Первинні поняття та еволюція засобів комп’ютерної техніки
1.1. Первинні поняття та визначення комп’ютерної техніки
Комп’ютерні засоби призначені для опрацювання інформаційних повідомлень. Неперервні (аналогові) інформаційні повідомлення формуються за допомогою змін параметрів окремих фізичних величин – сили струму, величини напруги, зміни тиску, тощо. Особливістю неперервних величин є їх можливість приймати безліч значень з певного діапазону та здатність змінюватись в довільний момент часу. Дискретні повідомлення представляються за допомогою деякого скінченого алфавіту символів. Взявши в якості елементів алфавіту цифри, маємо цифрове повідомлення. Найчастіше елементами цифрових повідомлень є лише дві цифри – нуль та одиниця. Саме такий варіант даних найбільш адекватний можливостям сучасної елементної бази.
Відповідно до існування двох типів інформаційних повідомлень можливо виділити два основні типи комп’ютерних засобів, які ними оперують – цифрові та аналогові. Недоліком аналогових комп’ютерів вважається недостатня універсальність застосування подібних пристроїв та низька точність, з якою опрацьовуються дані. Таким чином, аналогові комп’ютери знайшли досить вузьке застосування для розв’язку ряду спеціальних задач моделювання складних систем та явищ.
Цифрові комп’ютери в результаті тривалого еволюційного розвитку зайняли домінуюче положення в найрізноманітніших сферах виробництва, науки, побуту саме через універсальність їх застосування.
Окрему нішу серед сучасних обчислювальних засобів посідають також нейрокомп’ютери, в основу яких закладено принципи опрацювання даних, що певним чином відповідають процесам, які відбуваються в живій природі. Призначення нейрокомп’ютерів – це не опрацювання символів, а опрацювання образів, що характеризуються значно більшою інформаційною ємністю. Нейрокомп’ютери можуть бути створені як на основі цифрової, так і аналогової елементної бази, а також емалюватись на цифрових комп’ютерах програмним шляхом.
Особливого прискорення розвиток комп’ютерної техніки набув в зв’язку з випуском в 1971 році першого мікропроцесора.
Мікропроцесори в результаті свого розвитку знайшли широке застосування в сучасних обчислювальних системах та радіоелектронних пристроях, технологічних системах контролю, гнучких автоматизованих та інших виробництвах. Використання мікропроцесорів сприяло значному підвищенню продуктивності праці, поліпшенню якості апаратури різного призначення. Завдяки застосуванню мікропроцесорів і мікроЕОМ у технічних системах розширилися функціональні можливості апаратури; підвищились її надійність і стабільність функціонування; поліпшилась якість обробки інформації.
Перспективи та можливості застосування мікропроцесорів і мікроЕОМ в обчислювальних системах ще повністю не розкриті. Постійно вдосконалюються технологія та архітектура МП. Так, розрядність сучасних однокристальних мікропроцесорів досягає 64 бітів. При використанні мікропроцесорів і мікроЕОМ розробники повинні вміти оцінювати можливості їх архітектури та технічні характеристики, а також володіти мовами програмування різних рівнів. Для створення системного програмного забезпечення поширена мова Асемблер, але щодо продуктивності праці програмістів задачі обробки даних розв'язуються за допомогою мов високого рівня. Тому сучасним інженерам - спеціалістам з обчислювальної техніки необхідні знання в галузі як архітектури мікропроцесорів, так і програмування радіотехнічних задач мовами різних рівнів.
До основних понять сучасної комп’ютерної техніки належать: «мікропроцесор», «ІС», «ІМС», «ВІС», «НВІС», «мікропроцесорний комплект ВІС», «мікропроцесорний пристрій», «мікропроцесорна система», «мікропроцесорна техніка», «мікроЕОМ» (загального призначення та спеціалізовані), «вбудована мікроЕОМ», «комп'ютер персональний», «побутовий персональний комп'ютер», «професійний персональний комп'ютер», «мікроконтролер» та ін.
Крім того, в мікропроцесорній техніці використовують поняття, властиві взагалі обчислювальній техніці, зокрема «магістраль», «шина», «інтерфейс», «системний інтерфейс», «малий інтерфейс», «адаптер», «протоколи», «лінія інтерфейсу» та ін.
При вивченні програмних засобів у мікропроцесорній техніці використовують поняття, які збігаються за назвою з поняттями опису програмних засобів загалом в обчислювальній техніці, зокрема «алгоритм», «програма», «програмне забезпечення» тощо.
Дамо визначення деяких базових понять комп’ютерної техніки.
Мікропроцесор – складний програмнокерований пристрій, призначений для обробки цифрової інформації та керування процесом цієї обробки, виконаний у вигляді однієї чи кількох інтегральних мікросхем підвищеного ступеня інтеграції (ВІС чи НВІС).
Інтегральна мікросхема (ІМС) – мікроелектронний виріб, що виконує певну функцію перетворення, обробку сигналів і (чи) накопичення інформації, який має велику щільність упакування електрично з'єднаних елементів (чи елементів і компонентів) та (чи) кристалів і розглядається щодо вимог випробувань, пзалишкових класівання та експлуатації як єдине ціле.
Напівпровідникова ІМС – інтегральна мікросхема, всі елементи та міжелементні з'єднання якої виконані всередині й на поверхні напівпровідника.
Цифрова ІМС – інтегральна мікросхема, призначена для перетворення й обробки сигналів, що змінюються за законом дискретної функції.
Ступінь інтеграції – показник ступеня складності ІМС, що характеризується кількістю елементів і компонентів, які містяться в ній. Ступінь інтеграції визначається за формулою , де — коефіцієнт, що визначає ступінь інтеграції, значення якого заокруглюється до найбільшого цілого числа; N – кількість елементів і компонентів ІМС.
Велика інтегральна мікросхема (ВІС) – інтегральна мікросхема, що містить 500 і більше елементів, виготовлених за біполярною технологією, або 1000 і більше елементів, виготовлених за МДП-технологією, надвелика інтегральна схема (НВІС) – понад 10 000 елементів.
Комплект ВІС — сукупність типів ВІС, що виконують різноманітні функції, сумісні за архітектурою, конструктивним виконанням та електричними параметрами і забезпечують можливість їх сумісного використання при виготовленні мікропроцесорної техніки.
Мікропроцесорний комплект (МПК) – сукупність мікропроцесорних та інших ІМС, які сумісні за архітектурою, конструктивним виконанням та електричними параметрами і забезпечують можливість їх сумісного використання.
Мікропроцесор описується числовими параметрами, притаманними як електронним приладам (швидкодія, споживана потужність, габарити, маса, кількість рівнів живлення, надійність, вартість, тип корпуса, температурний діапазон та ін. ), так і обчислювальним засобам (розрядність, цикл виконання команди чи мікрокоманди, кількість внутрішніх регістрів, наявність мікропрограмного рівня, тип стекової пам'яті, склад програмного забезпечення та ін. ).
Мікропроцесорний пристрій (МПП) – функціонально і конструктивно закінчений виріб, що є схемно-конструктивним з'єднанням кількох мікросхем, зокрема одного чи декількох мікропроцесорів, призначений для виконання однієї чи кількох функцій: одержання, обробки, передавання, перетворення інформації та керування.
МПП має уніфіковані з'єднувальні характеристики (інтерфейс, конструкцію та ін. ) і функціонує у складі певної технічної системи.
Мікропроцесорна система (МПС) – сукупність значної кількості функціональних пристроїв, одним з яких є мікропроцесор.
Мікропроцесор є ядром цієї системи і виконує функції центрального пристрою керування та пристрою арифметично-логічного перетворення даних. Всі пристрої МПС мають стандартний інтерфейс і підключаються до єдиної інформаційної магістралі.
Мікропроцесорна техніка – мікропроцесори і пристрої обчислювальної техніки та автоматики, виконані на їх основі.
Мікрокомп’ютер загального призначення – мікрокомп’ютер, що має великі операційні ресурси, пристосовані для обробки різноманітних числових і текстових даних та призначені для використання в обчислювальних центрах.
Спеціалізовані комп’ютери – комп’ютери, призначені для реалізації певного конкретного алгоритму: перетворення Фур'є, обчислення кореляційних функцій та ін. Вони є вузькопрофільними ЕОМ з обмеженою кількістю системних команд.
Вбудована мікрокомп’ютер (мікропроцесорний пристрій) – блок обробки даних і керування, призначений для використання в побутових приладах, системах технологічного контролю чи керування, периферійних пристроях ЕОМ, оргтехніці та ін. Найпоширеніші ці ЕОМ у побутовій техніці (телевізори, магнітоли, пральні машини та ін. )
Комп'ютер персональний (персональна ЕОМ) – діалогова система індивідуального користування, реалізована на базі мікропроцесорних засобів, малогабаритних зовнішніх запам’ятовувальних пристроїв і пристроїв реєстрації даних, які забезпечують доступ до всіх ресурсів ЕОМ за допомогою розвинутої системи програмування мовою високого рівня. Це – невелика за розміром і вартістю універсальна мікроЕОМ, призначена для індивідуального користування. Побутові персональні комп'ютери виконують функції домашнього інформаційного центра. Професійні персональні комп'ютери призначені для автоматизації різноманітних операцій обробки великих обсягів інформації на робочому місці спеціаліста.
Нейрокомп’ютер – це обчислювальна система з паралельно-централізованим керуванням потоком даних (MSІMD архітектурою), у якій процесорний елемент однорідної структури спрощений до рівня нейрона, різко ускладнені зв'язки між елементами й програмування перенесене на зміну вагових коефіцієнтів зв'язків між обчислювальними елементами.
Трансп’ютер – це мікроелектронний прилад, що поєднує на одному кристалі мікропроцесор, швидку пам'ять, інтерфейс зовнішньої пам'яті й канали введення-виведення (лінки), призначені для під’єднання аналогічних приладів.
1.2. Розвиток комп'ютерної архітектури
У період розвитку комп'ютерних технологій було розроблено сотні різних комп'ютерів. Багато з них давно забуті, але деякі значно вплинули на сучасні розробки. Розглянемо ключові історичні моменти, які призвели до розроблення сучасних комп’ютерів [70].
Нульова генерація – механічні комп'ютери (1642–1945)
Першою людиною, що створила рахункову машину, був французький учений Блез Паскаль (1623–1662), на честь якого названо одну з мов програмування. Паскаль сконструював цю машину в 1642 році, коли йому було лише 19 років, для свого батька, збирача податків. Вона була механічна: із шестірнями й ручним приводом. Рахункова машина Паскаля могла виконувати лише операції додавання й віднімання (рис. 1.1.).
Через тридцять років великий німецький математик Готфрид Вільгельм Лейбніц (1646–1716) побудував іншу механічну машину, яка, крім додавання й віднімання могла виконувати операції множення й ділення. Отже, Лейбніц три століття тому створив кишеньковий калькулятор із чотирма функціями.
Ще через 150 років професор математики Кембриджського університету Чарльз Беббідж (1792–1871), винахідник спідометра, розробив і сконструював різницеву машину. Ця механічна машина, що, як і машина Паскаля, могла лише додавати й віднімати, підраховувала таблиці чисел для морської навігації. У машину було закладено лише один алгоритм – метод кінцевих різниць з використанням поліномів. У цієї машини був доволі цікавий спосіб виведення інформації: результати видавлювалися сталевим штампом на мідній дощечці, що була прообразом таких засобів введення-виведення, як перфокарти й компакт-диски.
Хоча цей пристрій працював достатньо непогано, Беббіджу незабаром набридла машина, що виконувала лише один алгоритм. Він витратив дуже багато часу, більшу частину свого статку й ще 17000 фунтів, виділених урядом, на розроблення аналітичної машини (рис 1.2). В аналітичної машини було 4 компоненти: запам’ятовувальний пристрій (пам'ять), обчислювальний пристрій, пристрій введення (для зчитування перфокарт), пристрій виведення (перфоратор і друкувальний пристрій). Пам'ять складалася з 1000 слів по 50 десяткових розрядів, кожне з яких містило змінні й результати. Обчислювальний пристрій приймав операнди з пам'яті, потім виконував операції додавання, віднімання, множення або ділення й повертав отриманий результат назад у пам’ять. Як і різницева машина, цей пристрій був механічним. Перевага аналітичної машини полягала у тому, що вона могла виконувати різні завдання. Вона зчитувала команди з перфокарт і виконувала їх. Деякі команди наказували машині взяти 2 числа з пам'яті, перенести їх в обчислювальний пристрій, зробити над ними операцію (наприклад, додати) і відправити результат назад у запам’ятовувальний пристрій. Інші команди перевіряли число, а іноді робили операцію переходу залежно від того, додатне воно або від’ємне. Якщо в пристрій, що зчитує, вводилися перфокарти з іншою програмою, то машина виконувала інший набір операцій. А різницева машина могла здійснювати лише один алгоритм [70].
Оскільки ця аналітична машина програмувалася мовою Асемблер, їй було необхідно програмне забезпечення. Щоб створити це програмне забезпечення, Беббідж найняв молоду жінку – Аду Августу Ловлейс, дочку знаменитого британського поета Байрона. Ада Ловлейс була першим у світі програмістом. На її честь названа сучасна мова програмування Ada. На жаль, Беббідж так і не налагодив свій комп'ютер, оскільки йому потрібні були тисячі й тисячі шестірень, зроблених з такою точністю, яка була неможливою в XIX столітті. Але ідеї Беббіджа випередили його епоху, і навіть сьогодні більшість сучасних комп'ютерів за своєю будовою подібні на аналітичну машину. Тому справедливо буде сказати, що Беббідж був дідусем сучасного цифрового комп'ютера.
Наприкінці 30-х років XX століття німець Конрад Цузе сконструював кілька автоматичних рахункових машин з використанням електромагнітних реле. Однак, йому не вдалося отримати від уряду гроші на свої розробки, оскільки почалася Друга світова війна, а його машини були знищені під час бомбування Берліна у 1944 році. Хоча його робота ніяк не вплинула на майбутній розвиток комп'ютерної техніки, однак він є одним з піонерів у цій галузі.
Дещо пізніше рахункові машини було сконструйовано в Америці. Машина Атанасова була надзвичайно розвинутою для того часу. У ній використовувалась бінарна арифметика й інформаційні ємності, які періодично оновлювались, щоб уникнути знищення даних. Сучасна динамічна пам'ять (ОЗУ) працює за тим самим принципом. Нажаль, ця машина так і не стала діючою.
Комп'ютер Стібітса дійсно працював, хоча й був примітивнішим, ніж машина Атанасова. Стібітс продемонстрував роботу своєї машини на конференції в Дартмутському коледжі в 1940 році.
Доки Цузе, Стібітс і Атанасов розробляли автоматичні рахункові машини, молодий Говард Айкен проектував ручні рахункові машини як частину свого філософського дослідження в Гарварді. Після закінчення дослідження Айкен усвідомив важливість автоматичних обчислень. Він пішов у бібліотеку, довідався про роботу Беббіджа й вирішив створити з реле такий самий комп'ютер, який Беббіджу не вдалося створити із зубчастих коліс. Робота над першим комп'ютером Айкена "Mark І" була закінчена в 1944 році. Комп'ютер містив 72 слова по 23 десяткових розряди кожне й міг виконати будь-яку команду за 6 секунд. У пристроях введення-виведення використовувалась перфострічка. На той час, як Айкен закінчив роботу над комп'ютером "Mark ІІ", релейні комп'ютери вже застаріли. Почалася ера електроніки.
Перша генерація – електронні лампи (1945-1955)
Створення електронного комп'ютера пришвидшила Друга світова війна. На початку війни німецькі підводні човни руйнували британські кораблі. Німецькі адмірали надсилали на підводні човни по радіо команди, які могли перехоплювати англійц. Ці радіопослання були закодовані за допомогою приладу за назвою ENІGMA, попередника якого спроектував винахідник-дилетант і колишній президент США Томас Джефферсон.
На початку війни англійцям вдалося придбати ENІGMA у поляків, які, своєю чергою, вкрали його в німців. Однак, щоби розшифрувати закодоване послання, необхідна була величезна кількість обчислень, які потрібно було зробити відразу після того, як радіоповідомлення було перехоплено. Тому британський уряд заснував секретну лабораторію для створення електронного комп'ютера за назвою COLOSSUS. У створенні цієї машини брав участь знаменитий британський математик Алан Тюринг. COLOSSUS працював уже в 1943 році, але оскільки британський уряд повністю контролював цей проект і розглядав його як військову таємницю протягом 30 років, COLOSSUS не міг бути основою подальшого розвитку комп'ютерів. Ми згадали його лише тому, що це був перший у світі електронний цифровий комп'ютер.
Друга світова війна вплинула й на розвиток комп'ютерної техніки в США. Армії потрібні були таблиці пострілів, які використовувались під час прицілювання важкої артилерії. Для створення цих таблиць на ручних рахункових машинах наймали сотні жінок. Проте цей процес вимагав багато часу і часто траплялися помилки. Джон Моушлі, який був знайомий із роботами Атанасова й Стібітса, розумів, що армія зацікавлена в створенні механічних рахункових машин. Він зажадав від армії фінансування робіт зі створення електронного комп'ютера. Вимога була задоволена в 1943 році, і Моушлі зі своїм студентом, Дж. Преспером Екертом, почали конструювати електронний комп'ютер, який вони назвали ENІAC (Electronіc Numerіcal Іntegrator and Computer – електронний цифровий інтегратор і калькулятор). Він складався з 18 000 електровакуумних ламп і 1500 реле. ENІAC важив 30 тонн і споживав 140 кіловат електроенергії.
У машини було 20 регістрів, кожен з яких міг містити 10-розрядне десяткове число. В ENІAC було встановлено 6000 багатоканальних перемикачів. Машину було створено у 1946 році, коли вона вже була не потрібна. Але оскільки війна закінчилася, Моушлі й Екерту дозволили організувати школу, де вони розповідали про свою роботу. Посилюється інтерес до створення великих цифрових комп'ютерів. Після появи школи й інші дослідники узялися за конструювання електронних обчислювальних машин. Першим робочим комп'ютером був EDS АС(1949 рік). Цю машину сконструював Моріс Уілкс у Кембриджському університеті. Згодом JOHNІAC – у корпорації Rand, ІLLІAC – в Університеті Іллінойса, MANІAC – у лабораторії Лос-Аламоса й WEІZAC – в Інституті Вайцмана в Ізраїлі. Екерт і Моушлі незабаром почали роботу над машиною EDVAC (Electronіc DіscreteVarіable Computer – електронна дискретна параметрична машина).
Тоді як Екерт і Моушлі працювали над машиною EDVAC, один з учасників проекту ENІAC, Джон фон Нейман, поїхав в Інститут спеціальних досліджень у Принстоні, щоб сконструювати свою власну версію EDVAC, машину ІAS1. Фон Нейман був генієм у тих самих галузях, що й Леонардо да Вінчі. Він знав багато мов, був фахівцем у фізиці й математиці, мав феноменальну пам'ять; він пам'ятав усе, що коли-небудь чув, бачив або читав. Він міг дослівно процитувати по пам'яті тексти книг, які читав декілька років тому. Коли фон Нейман став цікавитися обчислювальними машинами, він уже був найвідомішим математиком у світі. Фон Нейман незабаром усвідомив, що створення комп'ютерів з великою кількістю перемикачів і кабелів вимагає тривалого часу. Він дійшов до висновку, що програму необхідно представляти у пам'яті комп’ютера в цифровій формі, разом із даними. Він також зазначив, що десяткова арифметика, використовувана у машині ENІAC, де кожний розряд представлявся 10 електронними лампами (1 увімкнена й 9 вимкнені), повинна бути замінена бінарною арифметикою. Основний проект, що він описав спочатку, відомий зараз як фоннейманівська обчислювальна машина. Він був використаний в EDS АС, першій машині з програмою в пам'яті, і навіть зараз, більш ніж через півстоліття, є основою більшості сучасних цифрових комп'ютерів.
Якщо компонентною базою комп'ютерів першої генерації були електронні лампи, то їх елементною базою були: електромеханічні реле, які швидко ламалися і створювали сильний шум, як у виробничому цеху, та електронно-вакуумні лампи, термін служби яких не перевищував кілька місяців. Їх у машині були десятки тисяч, отже, щодня в машині щось ламалося.
ЕОМ першого покоління були цілком програмованими машинами, що і відрізняло їх від арифмометрів і калькуляторів. Але програмувати на таких комп'ютерах було доволі складно, оскільки не було мов ані високого, ані низького рівня (асемблер). Всі інструкції комп'ютерові давали у машинному коді. Щоб працювати на такому комп'ютері, потрібно було бути не лише професійним програмістом, але і досвідченим інженером-електронщиком. Програмувалася машина шляхом зміни положення перемикачів і тумблерів на її лицьових панелях, які були майже на всьому корпусі машини.
Обсяг оперативної пам'яті становив від 512 до 2048 байтів. Пам'ять реалізовували у вигляді трубки, заповненої ртуттю, кристали поширювалися по трубці і зберігали інформацію. Наприкінці першої генерації почали випускати пам'ять на магнітних осердях.
В ЕОМ першої генерації реалізували фундаментальні принципи побудови обчислювальних машин. Одним з найбільших недоліків цих комп'ютерів була непогодженість швидкодії арифметико-логічного пристрою, керуючого пристрою й оперативної пам'яті через різну елементну базу. Вся швидкодія визначалася найповільнішим елементом – внутрішньою пам'яттю, яка знижувала загальну ефективність.
У машинах першого покоління намагалися виправити цей недолік за рахунок асинхронної роботи компонентів. Ввели поняття буфера, коли передані дані копіювалися в буфер, звільняючи пристрій для наступних операцій.
Вже тоді для роботи пристрою введення–виведення використовували власну пам'ять.
У Радянському Союзі до першої генерації належить перша вітчизняна обчислювальна машина МЭСМ (малая электронная счётная машина – мала електронна рахункова машина), створена в 1951 р. у м. Києві під керівництвом академіка С.А. Лебедєва, серійні машини Мінськ-1, Стріла, БЭСМ (большая электронная счётная машина – велика електронна рахункова машина), Урал-1, Урал-4 тощо.
Друга генерація –транзистори (1955-1965)
Елементною базою другого покоління стали напівпровідники. На зміну ненадійним електронно-вакуумним лампам прийшли транзистори. Вони значно зменшили комп'ютери в розмірі й вартості, оскільки один транзистор здатний замінити кілька десятків електронних ламп. При цьому тепловиділення значно зменшилося й споживання електроенергії теж, а швидкість роботи стала вищою. Якщо порівнювати машини першої та другої генерації, то на прикладі це виглядало так: Марк1 – комп'ютер першого покоління, що займав величезний зал. Його висота 2,5 м, довжина 17 м, вартість 500 тис. доларів. PDP-8 - ЕОМ другої генерації. Розміром з холодильник, і вартістю близько 20 тис. доларів.
Слово транзистор походить від двох англійських слів transfer – «переносити», resіstor – «опір». Напівпровідниковий прилад, який працює як перемикач. Сучасні транзистори робляться на основі монокристального напівпровідника. Використання транзисторів значно заощадило електроенергію, витрати на охолодження й зробило комп'ютери більше надійними.
Разом із заміною ламп на транзистори удосконалилася й елементна база зберігання інформації. Для зберігання інформації стали застосовувати не лише перфострічки й перфокарти, але й магнітну стрічку, що значно прискорило введення–виведення інформації. На початку 60-х років почали застосовувати накопичувачі на магнітних дисках, що ще пришвидшило обробку інформації.
Транзистор створили співробітники лабораторії Bell Laboratorіes Джон Бардін, Уолтер Браттейн і Вільям Шоклі, за що в 1956 році вони отримали Нобелівську премію у галузі фізики. Протягом десяти років транзистори зробили революцію у виробництві комп'ютерів, і до кінця 50-х років комп’ютери на вакуумних лампах застаріли. Перший комп'ютер на транзисторах було побудовано у лабораторії МТІ. Він містив слова з 16 бітів, як і Whіrlwіnd І. Комп'ютер називався ТХ-0 (Transіstorіzed experіmental computer – експериментальна транзисторна обчислювальна машина) і призначався лише для тестування машини ТХ-2.
Машина ТХ-2 не мала великого значення, але один з інженерів із цієї лабораторії, Кеннет Ольсен, в 1957 році заснував компанію DEC (Dіgіtal Equіpment Corporatіon – корпорація з виробництва цифрових апаратур), щоб виробляти серійну машину, подібну до ТХ-0. Ця машина PDP-1 – з'явилася лише через чотири роки тому, що капіталісти, що фінансували DEC, вважали виробництво комп'ютерів невигідним. Тому компанія DEC продавала переважно невеликі електронні плати.
PDP-1 з'явився лише в 1961 році. У нього було 4 Кбайти слів по 18 бітів і час циклу 5 мікросекунд. Цей параметр був удвічі меншим, ніж в ІBM-7090, транзисторного аналога ІBM-709. PDP-1 був найшвидшим комп'ютером у світі на той час. PDP-1 коштував $120000, a ІBM-7090 коштували мільйони. Компанія DEC продала десятки комп'ютерів PDP-1 – так з'явилася комп'ютерна промисловість.
Одну з перших машин моделі PDP-1 віддали в МТІ, де вона відразу привернула увагу деяких молодих дослідників. Одним із нововведень PDP-1 був дисплей розміром 512 на 512 пікселів, на якому можна було малювати крапки. Незабаром студенти МТІ склали спеціальну програму для PDP-1, щоб грати у "Війну світів" – першу у світі комп'ютерну гру.
Через кілька років DEC розробив модель PDP-8, 12-бітний комп'ютер. PDP-8 коштував набагато дешевше, ніж PDP-1 ($16000). Головне нововведення – одна шина (Omnіbus) (рис. 1.5 ). Шина - це набір паралельно з'єднаних проводів для зв'язку компонентів комп'ютера. Це нововведення сильно відрізняло PDP-8 від AS. Така структура з того часу почала використатися у всіх комп'ютерах. Компанія DEC продала 50 000 комп'ютерів моделі PDP-8 і стала лідером на ринку міні-комп’ютерів.
Як уже було сказано, з винаходом транзисторів компанія ІBM побудувала транзисторну версію ІBM-709 - ІBM-7090, а пізніше - ІBM-7094. У неї час циклу становив 2 мікросекунди, а пам'ять складалася з 32 К слів по 16 бітів. ІBM-7090 і ІBM-7094 були останніми комп'ютерами типу ENІAC, але вони широко використовувалися для наукових розрахунків в 60-х роках минулого століття.
Компанія ІBM також випускала комп'ютери ІBM-1401 для комерційних розрахунків. Ця машина могла зчитувати й записувати магнітні стрічки й перфокарти й роздруковувати результат так само швидко, як і ІBM-7094, але при цьому коштувала дешевше. Для наукових обчислень вона не підходила, але зате була дуже зручною для ведення ділових записів.
В ІBM-1401 не було регістрів і фіксованої довжини слова. Пам'ять містила 4 Кбайтів по 8 бітів (4 Кбайт). Кожний байт містив символ в 6 бітів, адміністративний біт і біт для позначення кінця слова. У команди MOVE, наприклад, є вихідна адреса й адреса пункту призначення. Ця команда переміщає байти з першої адреси в другу, доки біт кінця слова не набуде значення 1.
В 1964 році компанія CDC (Control Data Corporatіon) випустила машину 6600, що працювала майже на порядок швидше, ніж ІBM-7094. Цей комп'ютер для складних розрахунків користувався великою популярністю, і справи компанії CDC пішли в гору. Секрет настільки високої швидкості роботи полягав у тім, що основою ЦПП (центрального процесора) була машина з високим ступенем паралелізму. У ній було кілька функціональних пристроїв для додавання, множення й ділення, і всі вони могли працювати одночасно. Для того, щоб машина швидко працювала, потрібно було скласти вдалу програму, але, доклавши деяких зусиль, можна було зробити так, щоб машина виконувала 10 команд одночасно.
Всередині машини 6600 було вбудовано кілька маленьких комп'ютерів. Отже, ЦПП здійснював лише підрахунок чисел, а інші функції (керування роботою машини, а також введення й виведення інформації) виконували маленькі комп'ютери. Деякі принципи пристрою 6600 використовуються й у сучасних комп'ютерах.
Варто згадати ще один комп'ютер - Burroughs B5000. Розробники машин PDP-1, ШМ-7094 і CDC-6600 займалися лише апаратним забезпеченням, намагаючись знизити його вартість (DEC) або змусити працювати швидше (ІBM і CDC). Програмне забезпечення не змінювалося. Виробники В5000 пішли іншим шляхом. Вони розробили машину з наміром програмувати її мовою Algol 60 (попередник мови Pascal), сконструювавши апаратне забезпечення так, щоб спростити завдання компілятора. Так з'явилася ідея, що програмне забезпечення також потрібно враховувати, розробляючи комп'ютер, але згодом цю ідею було забуто.
Серед радянських комп'ютерів другої генерації можна назвати Мінськ-22, якмй міг виконувати до п'яти тисяч елементарних операцій на секунду. Його оперативна пам'ять була побудована на феритових осердях, обсягом близько шести-восьми тисяч чисел. У ньому застосовувалися магнітні диски, на яких могли зберігатися кілька мільйонів чисел. Для введення інформації використовували перфокарти й перфострічки. Для виведення даних до нього можна було під’єднати алфавітно-цифровий пристрій для друку. Наступна модель Мінськ-32 могла виконувати вже 250 тисяч операцій на секунду. Об'єм оперативної пам'яті становив 65 536 байт. Також до цієї генерації належать машини БЭСМ-2, БЭСМ-4, БЭСМ-6, швидкодія яких становила мільйон операцій на секунду.
З появою комп'ютерів другої генерації розширилася сфера їхнього застосування. Окрім урядових і військових установ вони стали з'являтися в приватних організаціях, інститутах – переважно завдяки зниженню вартості машин і розвитку програмного забезпечення.
Почали створювати спеціальне системне програмне забезпечення. З'явилися системи пакетної обробки інформації – попередники операційних систем, які призначалися для керування обчислювальним процесом. Було розроблено формальну мову керування завданнями. Сукупність декількох завдань зберігалася у вигляді колоди перфокарт та отримала назву пакет завдань. Цей підхід існує і дотепер. У DOS це bat-файли, в Wіndows – cmd-файли. Саме для комп'ютерів другої генерації почали розробляти й операційні системи, що значно прискорило керування ЕОМ.
Третя генерація – інтегральні схеми (1965–1973)
Винахід кремнієвої інтегральної схеми в 1958 році (винахідники – Роберт Нойс та Джек Кілбі – два інженери, які майже одночасно винайшли їх, нічого не знаючи про роботу один одного) дав можливість поміщати десятки транзисторів на одну невелику мікросхему.
Інтегральна схема (ІС) – це схема, виготовлена на напівпровідниковому кристалі й поміщена в корпус. Іноді інтегральну схему називають мікросхемою, або чіпом. Chіp у перекладі з англійської – «тріска». Цю назву вона одержала через свої маленькі розміри. Комп'ютери на інтегральних схемах були меншого розміру, працювали швидше й коштували дешевше, ніж їхні попередники на транзисторах.
Перша радянська ІС була створена із запізненням на три роки. Але широке застосування інтегральних схем почалося лише на початку 70-х років. Чіпи назавжди змінили вигляд обчислювальних машин. У комп'ютерах третього покоління одна інтегральна схема могла замінити до тисячі транзисторів й інших базових елементів, а кожен такий елемент – декілька десятків електронних ламп. Це давало величезну мініатюризацію й зниження собівартості виробництва ЕОМ.
Всі елементи попереднього покоління виробляються на одній підложці й в одному корпусі ІС. Робоча область чіпа – це поверхня між кристалом і металом, що наноситься шляхом технології напилювання. Це відбувається у вакуумі, коли атоми одного матеріалу бомбардують атоми іншого.
Для масового виробництва таких мікросхем почали створювати окремі виробничі лінії. Якості кінцевого продукту було досягнуто не відразу. У міру нагромадження досвіду налагодили повний технологічний процес. Розмір чіпа може становити кілька міліметрів, а розміри елементів вимірюються в мікронах.
Такі досягнення в галузі мініатюризації дало можливість створювати комп'ютери розміром із письмовий стіл. Не потрібні були окремі приміщення й цілі зали, весь обчислювальний центр міг уміщатися в одній кімнаті. Для живлення таких ЕОМ достатньо два-чотири кіловати, а надійність комп'ютерів третьої генерації не набагато поступалася надійності сьогоднішньої техніки. ЕОМ третьої генерації можна було зустріти на борту літака, корабля, підводному човні, супутнику. Ці машини називали Міні-ЕОМ, і незважаючи на те ,що алфавітно-цифрові дисплеї з'явилися ще в машинах другої генерації, саме в третьої генерації ЕОМ вони остаточно закріпилися і стали невід'ємною частиною комп'ютера.
Багато операцій машини почали виконувати відразу із групою бітів, яку вони розглядали як єдине ціле. На багатьох комп'ютерах розмір цієї групи становив вісім бітів, які зберігали, обробляли й передавали одночасно. В інформаційному світі закріплюється термін байт, що еквівалентно восьми бітам.
Пам'ять ЕОМ цього покоління значно зросла. Як зовнішню пам'ять почали застосовувати магнітні диски. Ємність таких накопичувачів вимірювалась мільйонами байтів. Це був істотний крок уперед порівняно з перфокартами й магнітними стрічками.
Одною з найважливіших відмінностей між другою та третьою генераціями була поява відкритої архітектури ЕОМ. Яскравий приклад – комп'ютер System/360 виробництва ІBM. Відкрита архітектура давала змогу легко ремонтувати та заміняти комплектуючі. А найголовніше – одні комплектуючі можуть підходити до різних моделей ЕОМ і навіть до різних виробників ЕОМ. Виробництво цієї серії машин почалося в 1964 р. і було найбільшим успіхом корпорації ІBM. Вона стала стандартом комп'ютерів в усьому світі.
У Радянському Союзі через вісім років наслідування System/360 з'явилася ЕОМ ЄС (Єдина Серія): ЕОМ ЄС-1010, ЄС-1020, ЄС-1030, ЄС-1040, ЄС-1060. У розробленні цієї серії брали участь Болгарія, Угорщина, Чехія. Починається випуск радянських ЕОМ: Мир-31, Мир-32, АСВТ М-6000, АСВТ М-7000. Також випускаються компактніші ЕОМ: Електроніка-79, Електроніка-100, Електроніка-125, Електроніка-200 (рис. 1.5., рис. 1.6.).
ЕОМ ЄС-1010 мала швидкодію в 10 тисяч операцій на секунду, у ЄС-1020 швидкодія 20 тисяч операцій на секунду, ОЗП в 64 Кб, зовнішня пам'ять на магнітних стрічках і дисках.
Потужнішим стає програмне забезпечення ЕОМ. З'являються перші текстові редактори, але поширення вони не отримують, оскільки використовувати Міні-ЕОМ замість друкарської машинки занадто дорого. З'являються системи управління базами даних. Вони починають широко використовуватись комерційними організаціями.
Середня ціна машини третьої генерації становить 20–30 тисяч доларів, що є цілком прийнятною ціною для багатьох організацій. З'являються автоматизовані системи проектування.
Виникає величезна потреба в прикладному програмному забезпеченні, тому, кожне підприємство наймає свій штат програмістів, які вирішують поточні завдання. Ринку програмного забезпечення як такого ще немає, тому купити потрібну програму або бібліотеку неможливо.
Четверта генерація – надвеликі інтегральні схеми (1974–до сьогодні)
На початку 70-х років XX ст. було здійснено перехід до четвертої генерації комп'ютерів, які будувались на надвеликих інтегральних схемах (НВІС). Надвелика інтегральна схема - удосконалений нащадок простої інтегральної схеми, яка була одним з основних елементів попередньої генерації. Надвеликою її називають не тому, що інтегральна схема більша, а тому, що в ній високий ступінь інтеграції.
Інтегральні схеми можна класифікувати за кількістю елементів, розташованих на одному кристалі