Під архітектурою ЕОМ розуміється сукупність загальних принципів організації апаратно-програмних засобів і їх характеристик, яка визначає функціональні можливості ЕОМ при вирішенні відповідних класів задач.
Відкрита архітектура - припускає наявність єдиного стандарту при розробці пристроїв, розташованих на материнській платі і платі розширення.
Структура комп'ютера - це деяка модель, що встановлює склад, порядок і принципи взаємодії вхідних в неї компонентів
Малюнок 3 - архітектура ЕОМ.
В даний час найбільшого поширення в ЕОМ отримали 2 типу архітектури: Прінстонський (фон Неймана) і Гарвардська. Обидві вони виділяють 2 основні вузли ЕОМ: центральний процесор і пам'ять комп'ютера. Різниця полягає в структурі пам'яті: в Прінстонському архітектурі програми і дані зберігаються в одному масиві пам'яті і передаються в процесор по одному каналу, тоді як Гарвардська архітектура передбачає окремі сховища і потоки передачі для команд і даних.
Згідно Джону фон Нейманом, будь-яка ЕОМ повинна включати чотири основні блоки - процесор, оперативну пам'ять, зовнішню пам'ять і комплекс пристроїв введення-виведення
Малюнок 4 - Структурна схема ЕОМ
Ця схема, що широко використовувалася в перших обчислювальних машинах, мала один суттєвий недолік: управління введенням-висновком і виконання команд здійснювалося одним пристроєм управління. При такій структурі ЕОМ всі види програмної обробки на час виконання операцій введення-виведення припинялися через зайнятість процесора, що істотно знижувало швидкодію машини.
Для усунення цього недоліку в схему був включений додатковий компонент - канал введення-виведення (пристрій, що забезпечує пряму взаємодію процесора і периферійних пристроїв).
Гарвардська архітектура - архітектура ЕОМ, відмітною ознакою якої є роздільне зберігання і обробка команд і даних. Архітектура була розроблена Говардом Ейкен в кінці 1930-х років в Гарвардському університеті
Типові операції (додавання і множення) вимагають від будь-якого обчислювального пристрою декількох дій: вибірку двох операндів, вибір інструкції і її виконання, і, нарешті, збереження результату.
Ідея, реалізована Ейкен, полягала у фізичному поділі ліній передачі команд і даних. У першому комп'ютері Ейкена «Марк I» для зберігання інструкцій використовувалася перфорована стрічка, а для роботи з даними - електромеханічні регістри. Це дозволяло одночасно пересилати і обробляти команди і дані, завдяки чому значно підвищувався загальну швидкодію.
За перерахованими ознаками і їх сполученням серед архітектур виділяють:
1. За розрядності інтерфейсів і машинних слів. 8-, 16-, 32-, 64-, 128- розрядні (ряд ЕОМ має і інші розрядності);
2. За особливостями набору регістрів, формату команд і даних. CISC, RISC, VLIW;
3. За кількістю центральних процесорів. однопроцесорні, багатопроцесорні, суперскалярні; багатопроцесорні за принципом взаємодії з пам'яттю: симетричні багатопроцесорні (SMP), масcівно-паралельні (MPP), розподілені.
Більшість багатопроцесорних систем сьогодні використовують архітектуру SMP.
SMP системи дозволяють будь-якому процесору працювати над будь-яким завданням незалежно від того, де в пам'яті зберігаються дані для цього завдання; з належною підтримкою операційної системи, SMP системи можуть легко переміщати завдання між процесорами ефективно розподіляючи навантаження. З іншого боку, пам'ять набагато повільніше процесорів, які до неї звертаються, навіть однопроцесорним машинам доводиться витрачати чимало часу на отримання даних з пам'яті. У SMP тільки один процесор може звертатися до пам'яті в даний момент часу.
Масивно-паралельна архітектура (англ. Massive Parallel Processing, MPP) - клас архітектур паралельних обчислювальних систем Особливість архітектури полягає в тому, що пам'ять фізично розділена. Система будується з окремих модулів, що містять процесор, локальний банк операційної пам'яті, комунікаційні процесори або мережеві адаптери, іноді - жорсткі диски і / або інші пристрої введення / виводу. Доступ до банку операційної пам'яті з даного модуля мають тільки процесори з цього ж модуля. Модулі з'єднуються спеціальними комунікаційними каналами. на відміну від SMP-систем. в машинах з роздільною пам'яттю кожен процесор має доступ тільки до своєї локальної пам'яті, у зв'язку з чим не виникає необхідності в потактовой синхронізації процесорів.
Розподілені обчислення. метакомп'ютингу (англ. grid - мережа) - спосіб вирішення трудомістких обчислювальних завдань з використанням декількох комп'ютерів, об'єднаних в паралельну обчислювальну систему (одночасне вирішення різних частин однієї обчислювальної задачі декількома процесорами (або ядрами одного процесора) одного або декількох комп'ютерів)
У суперскалярні процесорах також є кілька обчислювальних модулів, але завдання розподілу між ними роботи вирішується апаратно. Це сильно ускладнює дизайн процесора, і може бути значною кількістю помилок. У процесорах VLIW завдання розподілу вирішується під час компіляції і в інструкціях явно зазначено, яке обчислювальний пристрій має виконувати яку команду.
Суперскалярність - архітектура обчислювального ядра, що використовує кілька декодерів команд, які можуть навантажувати роботою безліч виконавчих блоків. Планування виконання потоку команд є динамічним і здійснюється самим обчислювальним ядром. Якщо в процесі роботи команди, оброблювані конвеєром, не суперечать один одному, і одна не залежить від результату іншого, то такий пристрій може здійснити паралельне виконання команд. У суперскалярні системах рішення про запуск інструкції на виконання приймає сам обчислювальний модуль, що вимагає багато ресурсів