Архітектура ЕОМ.
Комп'ютер - це електронний пристрій, що виконує операції введення інформації, зберігання та оброблення її за певною програмою, виведення одержаних результатів у формі, придатній для сприйняття людиною. За кожну з названих операцій відповідають спеціальні блоки комп'ютера:
- пристрій введення,
- центральний процесор,
- запам'ятовуючий пристрій,
- пристрій виведення.
Всі ці блоки складаються з окремих дрібніших пристроїв. Зокрема в центральний процесор можуть входити арифметико-логічний пристрій (АЛП), внутрішній запам'ятовуючий пристрій у вигляді регістрів процесора та внутрішньої кеш-пам'яті, керуючий пристрій (КП). Пристрій введення, як правило, теж не є однією конструктивною одиницею. Оскільки види інформації, що вводиться, різноманітні, джерел може бути декілька. Це стосується і пристрою виведення.
Запам'ятовуючий пристрій - це блок ЕОМ, призначений для тимчасового (оперативна пам'ять) та тривалого (постійна пам'ять) зберігання програм, вхідних і результуючих даних та деяких проміжних результатів. Інформація в оперативній пам'яті зберігається тимчасово лише при включеному живленні, але оперативна пам'ять має більшу швидкодію. В постійній пам'яті дані можуть зберігатися навіть при вимкненому комп'ютері, проте швидкість обміну даними між постійною пам'яттю та центральним процесором, у переважній більшості випадків, значно менша.
Арифметико-логічний пристрій - це блок ЕОМ, в якому відбувається перетворення даних за командами програми: арифметичні дії над числами, перетворення кодів та ін.
Керуючий пристрій координує роботу всіх блоків комп'ютера. У певній послідовності він вибирає з оперативної пам'яті команду за командою. Кожна команда декодується, за потреби елементи даних з указаних в команді комірок оперативної пам'яті передаються в АЛП. АЛП настроюється на виконання дії, вказаної поточною командою (в цій дії можуть брати участь також пристрої введення-виведення); дається команда на виконання цієї дії. Цей процес буде продовжуватися доти, доки не виникне одна з наступних ситуацій: вичерпано вхідні дані, з одного з пристроїв надійшла команда на припинення роботи, вимкнено живлення комп'ютера.
Описаний принцип побудови ЕОМ носить назву архітектури фон Неймана - американського вченого угорського походження Джона фон Неймана, який її запропонував.
Сучасну архітектуру комп'ютера визначають також такі принципи:
- Принцип програмного керування. Забезпечує автоматизацію процесу обчислень на ЕОМ. Згідно з цим принципом, запропонованим англійським математиком Ч.Беббіджем у 1833 р., для розв'язання кожної задачі складається програма, що визначає послідовність дій комп'ютера. Ефективність програмного керування є високою тоді, коли задача розв'язується за тією самою програмою багато разів (хоч і за різних початкових даних).
- Принцип програми, що зберігається в пам'яті. Згідно з цим принципом, сформульованим Дж. фон Нейманом, команди програми подаються, як і дані, у вигляді чисел й обробляються так само, як і числа, а сама програма перед виконання завантажується в оперативну пам'ять. Це прискорює процес її виконання.
- Принцип довільного доступу до пам'яті. Згідно з цим принципом, елементи програм та даних можуть записуватися у довільне місце оперативної пам'яті. Довільне місце означає можливість звернутися до будь-якої заданої адреси (до конкретної ділянки пам'яті) без перегляду попередніх.
На підставі цих приниців можна стверджувати, що сучасний комп'ютер - технічний пристрій, який після введення в пам'ять початкових даних у вигляді цифрових кодів і програми їх обробки, вираженої також цифровими кодами, здатний автоматично здійснити обчислювальний процес, заданий програмою, і видати готові результати розв'язання задачі у формі придатній для сприйняття людиною.
Реальна структура комп'ютера значно складніша, ніж розглянута вище (її можна назвати логічної структурою). У сучасних комп'ютерах, зокрема персональних, все частіше здійснюється відхід від традиційної архітектури фон Неймана, зумовлений прагненням розробників та користувачів до підвищення якості та продуктивності комп'ютерів. Якість ЕОМ характеризується багатьма показниками. Це і набір команд, які комп'ютер здатний розуміти, і швидкість роботи (швидкодія) центрального процесора, кількість периферійних пристроїв введення-виведення, які можна приєднати до комп'ютера одночасно і т.д. Головним показником є швидкодія - кількість операцій, яку процесор здатний виконати за одиницю часу. На практиці корситувача більше цікавить продуктивність комп'ютера - показник його ефективної швидкодії, тобто здатності не просто швидко функціонувати, а швидко розв'язувати конкретні поставлені задачі.
Як результат, всі ці та інші фактори спричинили принципове і конструктивне вдосконалення елементної бази комп'ютерів, тобто створення нових, більш швидких, надійних і зручних у роботі процесорів, запам'ятовуючих пристроїв, пристроїв введення-виведення і т.д. Проте, слід усвідомлювати, що швидкість роботи елементів неможливо збільшувати безмежно (існують сучасні технологічні обмеження та обмеження, зумовлені фізичними законами). Тому розробники комп'ютерної техніки шукають вирішення цієї проблеми вдосконаленням архітектури ЕОМ.
Так, з'явилися комп'ютери з багатопроцесорною архітектурою, в яких кілька процесорів працюють одночасно, а це означає, що продуктивність такого комп'ютера дорівнює сумі продуктивностей процесорів. У потужних комп'ютерах, призначених для складних інженерних розрахунків і систем автоматизованого проектування (САПР), часто встановлюють два або чотири процесори. У надпотужних ЕОМ (такі машини можуть, наприклад, моделювати ядерні реакції в режимі реального часу, передбачати погоду в глобальному масштабі) кількість процесорів досягає кількох десятків.
Швидкість роботи комп'ютера істотно залежить від швидкодії оперативної пам'яті. Тому постійно ведуться пошуки елементів для оперативної пам'яті, які потребували б якомога менше часу на операції читання-запису. Але разом із швидкодією зростає вартість елементів пам'яті, тому нарощення швидкодійної оперативної пам'яті потрібної ємності не завжди прийнятна економічно.
Проблема вирішується побудовою багаторівневої пам'яті. Оперативна пам'ять складається з двох-трьох частин: основна частина великої ємності будується на відносно повільних (більш дешевих) елементах, а додаткова (так звана кеш-пам'ять) складається зі швидкодійних елементів. Дані, до яких процесор звертається найчастіше містяться в кеш-пам'яті, а більший обсяг оперативної інформації зберігається в основній пам'яті.
Раніше роботою пристроїв введення-виведення керував центральний процесор, що займало в нього чимало часу. Архітектура сучасних комп'ютерів передбачає наявність каналів прямого доступу до оперативної пам'яті для обміну даними з пристроями введення-виведення без участі центрального процесора, а також передачу більшості функцій керування периферійними пристроями спеціалізованим процесорам, що розвантажує центральний процесор і підвищує його продуктивність.