Взаємодія процесора і оперативної пам'яті комп'ютера

Принципи роботи комп'ютера.

Оперативна пам'ять (або оперативний пристрій - ОЗП) в якості складової частини містить постійну пам'ять (або постійний запам'ятовуючий пристрій - ПЗУ). Постійна пам'ять має ту особливість, що в неї не можна записувати інформацію. Нулі і одиниці в пристроях оперативної пам'яті зображуються електричними сигналами, і тому інформація в оперативній пам'яті безслідно зникає при виключенні живлення. Однак постійна пам'ять заснована на інших принципах зберігання інформації: в ній нулі і одиниці кодуються електричними з'єднаннями. При включенні харчування цю інформацію можна прочитати.

Ті умовні осередку, через які інформація може переміщатися із зовнішнього середовища в оперативну пам'ять і назад, називаються портами введення-виведення. Для опису роботи комп'ютера на принциповому рівні можна вважати, що в порти введення з зовнішнього середовища (незалежно чи за запитом процесора) поміщаються деякі дані. Навпаки, при необхідності переслати дані куди-небудь або зберегти їх у зовнішній пам'яті потрібно просто помістити ці дані в певний порт виводу. Про все інше подбають допоміжні пристрої комп'ютера. Про деякі з них піде мова нижче.

В деякі порти інформація передається порціями по одному біту. Такий порт називається послідовним. Порт, в який інформація передається порціями по одному або більше байт, називається паралельним. Наприклад, модем підключається до послідовного порту, а принтер - до паралельного.

Процесор - це центральний пристрій комп'ютера. На нього покладені дві основні функції: по-перше, виробляти певні обчислення, і, по-друге, управляти роботою всіх вузлів комп'ютера. Ці функції виконують різні складові процесора: арифметико-логічний пристрій (АЛП) і пристрій керування. Конструктивно процесор складається з величезної кількості електронних мікросхем, зосереджених в мікроскопічному об'ємі. Бути може, процесор є найскладнішим пристроєм в світі. Весь прогрес в комп'ютерній індустрії пов'язаний з вдосконаленням процесорів: розширенням списку виконуваних ними функцій, зменшенням обсягу і одночасним збільшенням швидкості виконання операцій (швидкодією), збільшенням надійності. Саме для збільшення швидкодії дані перед безпосереднім обчисленням переміщаються з оперативної пам'яті в спеціальні осередки, звані регістрами процесора. Цихрегістрів кілька десятків і вони виконують різні функції.

Швидкодія комп'ютера вимірюється кількістю виконуваних елементарних операцій в секунду - флопов. Наприклад, один гігафлоп означає мільярд операцій у секунду. Одиницею ж дії комп'ютера є машинна команда. Число різних видів машинних команд, які виконуються процесором, звичайно. Для кожного виду машинної команди в процесорі є відповідальна за неї електронна мікросхема. Різні машинні команди в залежності від складності складаються від кількох до кількох десятків елементарних операцій. Всі машинні команди діляться на групи. Команда кожної групи виконує одну з таких дій:

¨ переміщує блок інформації з оперативної пам'яті в регістри процесора;

¨ переміщує блок інформації з регістрів процесора в оперативну пам'ять комп'ютера;

¨ отримує блок інформації ззовні через один з портів і поміщає її в регістр процесора;

¨ виводить блок інформації з регістра процесора через один з портів в зовнішнє середовище;

¨ ініціює операцію обчислення, виконувану процесором: операція здійснюється над величинами, що зберігаються в регістрах процесора, і результат поміщається в інші або ті ж регістри;

¨ сповіщає процесор про деяку нештатної ситуації, званої перериванням: по цій команді процесор припиняє виконання поточної програми і запускає іншу програму, яка повинна працювати в разі переривання даного типу.

Всі змістовні операції здійснюються безпосередньо процесором над величинами, які знаходяться в регістрах процесора. Зокрема, це арифметичні і логічні операції, а також операції перетворення. Ці операції фактично складаються з великого числа дрібніших елементарних операцій, кожна з яких виробляється над вмістом одного з розрядів одного з регістрів. Багато з цих операцій відбуваються процесором паралельно (тобто за часом одночасно). Для цього в комп'ютерах використовується генератор тактових імпульсів, який синхронізує роботу різних частин комп'ютера. Кожна машинна команда складається з певного числа тактів. За час одного такту процесор виконує кілька елементарних операцій, які можуть виконуватися незалежно. Якщо одна операція вимагає результатів інший, то вони виконуються в послідовних тактах. Після виконання всіх тактів команди в одному з регістрів процесора утворюється результат виконання всієї машинної команди. Вже було сказано, що різні машинні команди вимагають при виконанні різної кількості тактів. Зокрема, число тактів при множенні чисел значно більше, ніж при додаванні.

Схожі статті