18.03.2017

Як Працюють Комп’ютери: Процесор і Пам’ять

Original: http://homepage.cs.uri.edu/faculty/wolfe/book/Readings/Reading04.htm

На рисунку 0 зображені частини комп’ютера:

Рисунок 0: усередині комп’ютера

• Центральний процесор:
· (ЦП),
· автобуси,
· Порти і контролери,
· ROM;
Основна пам’ять (RAM);
Пристрої введення;
Пристрої виведення;
Вторинний зберігання;
· дискети,
· жорсткий диск,
· CD-ROM

 

Ця частина читанні розглядатиме центральний процесор, шини, контролери і основної пам’яті. В інших розділах будуть розглянуті пристрої введення та пристрої виведення, а також вторинну пам’ять.

Центральний процесор (ЦП)

Рисунок 1: центральний процесор

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

Перш ніж ми обговоримо блок управління і арифметика/логічний пристрій в деталях, ми повинні розглянути зберігання даних і його ставлення до центрального блока. Комп’ютери використовують два типи зберігання: первинний і для вторинного зберігання. Процесор тісно взаємодіє з первинним зберіганням, або основний пам’яті, з посиланням на нього для обох команд і даних. З цієї причини ця частина читанні буде обговорювати пам’ять в контексті центрального блоку обробки. З технічної точки зору, проте, пам’ять не є частиною процесора.

Нагадаємо, що пам’яті комп’ютера зберігає дані тільки тимчасово, в той час, комп’ютер виконує програму. Додаткове зберігання має постійні або напів-постійні дані про деяке зовнішньому магнітному або оптичному носії. Дискети та диски CD-ROM, які ви бачили з персональними комп’ютерами, є вторинними пристроями зберігання даних, як і жорсткі диски. Оскільки фізичні атрибути вторинних пристроїв зберігання визначають спосіб організації даних на них, ми обговоримо вторинного зберігання і організації даних разом в іншій частині наших онлайн читань.

Тепер розглянемо компоненти центрального процесора.

• Блок управління
Блок управління ЦП містить схеми, яка використовує електричні сигнали, щоб направити всю комп’ютерну систему для виконання, або виконати, збережені програмні інструкції. Як лідер оркестру, блок управління не виконує команди програми; скоріше, він направляє на інші частини системи, щоб зробити це. Блок управління повинен взаємодіяти як з арифметико-логічний пристрій / і пам’яті.

Обчислювальний/логічний пристрій
Обчислювальний/логічний пристрій (ОЛП) містить електронну схему, яка виконує всі арифметичні і логічні операції.

Обчислювальний/логічний пристрій може виконувати чотири види арифметичних операцій або математичних розрахунків: додавання, віднімання, множення і ділення. Як випливає з назви, обчислювальний/логічний пристрій виконує також логічні операції. Логічна операція, як правило, порівняння. Пристрій може порівнювати цифри, букви і спеціальні символи. Комп’ютер може потім вжити заходів на основі результату порівняння. Це дуже важлива можливість. Це, порівнюючи, що комп’ютер може сказати, наприклад, чи є незаповнених місць на літаках, чи були зарядним карти клієнти перевищили свої кредитні ліміти, а також чи має один з кандидатів в Конгрес більше голосів, ніж інший.

Логічні операції можуть перевірити протягом трьох умов:

Рівний-кондиціонувати. У тесті для цього стану, арифметичне / логічний пристрій порівнює два значення, щоб визначити, якщо вони рівні. Наприклад: якщо кількість проданих квитків дорівнює числу місць в залі для глядачів, а потім концерт оголошується розпродані.
Менш ніж умова. Щоб перевірити цю умову, комп’ютер порівнює значення, щоб визначити, якщо один менше іншого. Наприклад: Якщо кількість штрафів за перевищення швидкості на запис водія менше трьох, то страхові ставки $ 425; в іншому випадку, ставки $ 500.
Більше, ніж стан. У цьому типі порівняння, комп’ютер визначає, чи є одне значення більше іншого. Наприклад: якщо годинник осіб працювали на цьому тижні більше, ніж 40, а потім помножити кожна додаткова година в 1,5 рази звичайної погодинної заробітної плати для розрахунку понаднормової оплати.

Комп’ютер може одночасно тестувати протягом більш ніж одного умови. Насправді, логічний блок може зазвичай розрізняти шість логічних зв’язків: дорівнює, менше ніж, більше ніж, менше або дорівнює, більше або дорівнює, і не дорівнює.

Символи, які дозволяють визначити тип порівняння, який потрібен комп’ютер для виконання називаються оператори відносини. Найбільш поширені реляційні оператори знак рівності (=), то символ менше (<), а символ більше (>).

• Регістри: тимчасового зберігання
Регістри тимчасового зберігання для команд або даних. Вони не є частиною пам’яті; скоріше, вони є спеціальні додаткові місця зберігання, які забезпечують перевагу швидкості. Регістри працювати під управлінням блоку управління, щоб приймати, утримувати, і інструкції з передачі або даних і виконувати арифметичні або логічні порівняння на високій швидкості. Блок управління використовує для зберігання даних реєструє шлях власник магазину використовує касовий апарат-як тимчасове, зручне місце для зберігання того, що використовується в операціях.

Комп’ютери, як правило, призначати спеціальні ролі для певних регістрів, в тому числі ці регістри:

· Акумулятор, який збирає результат обчислень.
· Адреса регістра, який відстежує, де дана інструкція або частина даних зберігається в пам’яті. Кожне місце зберігання в пам’яті ідентифікується за адресою, так само, як кожен будинок на вулиці має адресу.
· Регістр зберігання, яке тимчасово зберігає дані, що приймаються від або до відправки в пам’яті.
· Загального призначення регістр, який використовується для декількох функцій.

• Пам’ять і пристрої зберігання
Пам’ять також відомий як первинного зберігання, первинної пам’яті, оперативної пам’яті, вбудованої пам’яті, оперативної пам’яті і RAM (Random Access Memory); всі ці терміни використовуються як взаємозамінні люди в комп’ютерних колах. Пам’ять є частиною комп’ютера, який містить дані і інструкції для обробки. Незважаючи на те, тісно пов’язаний з центральним блоком обробки, пам’ять відокремлена від нього. Пам’ять інструкції зберігає програми або дані тільки до тих пір, як програма вони відносяться до знаходиться в експлуатації. Зміст цих елементів в пам’яті, коли програма не запущено не представляється можливим з трьох причин:

· Більшість типів пам’яті тільки деталей магазину, коли комп’ютер вмикається дані знищуються при виключенні машини.
· Якщо більш ніж одна програма працює відразу (часто буває на великих комп’ютерах, а іноді і на невеликих комп’ютерах), одна програма не може закласти ексклюзивні претензії до пам’яті.
· Там не може бути місця в пам’яті для зберігання оброблених даних.

Як дані і інструкції отримують з пристрою введення в пам’ять? Блок управління відправляє їх. Точно так же, коли настав час, блок управління посилає ці елементи з пам’яті на обчислювальний/логічний пристрій, в якому виконується арифметична операція або логічна операція. Після обробки, інформація передається в пам’ять, де він утримується, поки він не буде готовий він випустив у вихідний блок.

Головною особливістю пам’яті є те, що вона дозволяє дуже швидкий доступ до команд і даних, незалежно від того, де елементи знаходяться всередині неї. Ми обговоримо фізичні компоненти чіпів далі в цій главі пам’яті.

Щоб побачити, як регістри, пам’ять, а по-друге зберігання всі працюють разом, давайте використовувати аналогію зробити салат. У нашій кухні ми маємо:

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

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

Холодильник є еквівалентом вторинного (диска) зберігання. Він може зберігати великі обсяги овочів протягом тривалих періодів часу. Стільниця є еквівалентом системної платі комп’ютера – все робиться на прилавку (всередині комп’ютера). Обробна дошка ALU – робота виконується там. Рецепт блок управління – він говорить вам, що робити на обробну дошку (ALU). Простір на стільниці є еквівалентом оперативної пам’яті – все овочі повинні бути залучені з холодильника і поміщені на стільниці для швидкого доступу. Зверніть увагу, що стільниця (RAM) є швидкість доступу до них, ніж холодильник (диск), але не може містити стільки ж, і не може утримувати її протягом тривалих періодів часу. Кути обробну дошку, де ми тимчасово зберігати частково нарізані овочі еквівалентні регістрів. Кути обробної дошки дуже швидко, щоб отримати доступ для подрібнення, але не може займати багато. Салатницю, як тимчасовий регістр, то для зберігання салат чекати, щоб забрати назад в холодильник (введення даних назад на диск) або для прийняття до обіднього столу (висновок даних на пристрій виводу).

Тепер для більш технічний приклад. давайте подивимося на те, як програма нарахування заробітної плати використовує всі три типи зберігання. Припустимо, що програма розраховує зарплату працівника. Дані, що представляють відпрацьовані години і дані для розрахунку заробітної плати готові у відповідних регістрах. Інші дані, які стосуються заробітної плати розрахунково-понаднормові години, бонуси, відрахування і так далі, чекає поруч в пам’яті. Дані для інших співробітників доступна у вторинному зберіганні. Як показують розрахунки оздоблень ЦП близько одного співробітника, дані про наступне співробітнику привозять з вторинного зберігання в пам’яті і в кінцевому підсумку в регістри.

У наступній таблиці наведено характеристики різних видів зберігання даних в ієрархії зберігання.

Пристрій зберігання
Швидкість Можливості Відносна вартість ($) Постійна?
Регістри Найбільша Найменші Найвища Ні
Оперативна пам’ять
Дуже висока Невеликі/середні Висока Ні
Дискета Дуже низька Невеликі Низька Так
Жорсткий диск Середня Дуже великі Дуже низька Так

Сучасні комп’ютери розроблені з цієї ієрархії в зв’язку з характеристиками, зазначеними в таблиці. Це був найдешевший спосіб отримати функціональність. Однак, як RAM стає дешевше, швидше, і навіть постійним, ми можемо бачити диски зникають як внутрішнього накопичувача. Знімні диски, як Zip диски або компакт-диски (ми це докладно описувати в інтернет-читання на пристроях зберігання), ймовірно, залишиться у використанні довше як засіб фізично передавати великі обсяги даних в комп’ютер. Проте, навіть це використання дисків, ймовірно, буде витіснений в Інтернеті в якості основного (і в кінцевому рахунку тільки) спосіб передачі даних. Дискети диски вже зникають: новий IMac Macintosh від Apple, не поставляються з одним. Протягом найближчих п’яти років більшість нових комп’ютерних проектів включатиме в себе тільки дисководи в якості додаткового для людей зі старими дискетах, які вони повинні використовувати.

Більш докладно про ієрархію пам’яті комп’ютера, дивіться на сторінках “Як працює пам’ять комп’ютера”. Це не є обов’язковим читанням.

• Як процесор виконує команди програми
Розглянемо те, як центральний процесор в поєднанні з пам’яттю, виконує комп’ютерну програму. Ми будемо дивитися на те, як тільки одна команда в програмі виконується. Насправді, більшість комп’ютерів сьогодні може виконувати тільки одну інструкцію за один раз, хоча вони виконують дуже швидко. Багато персональні комп’ютери можуть виконувати інструкції менш ніж за одну мільйонну частку секунди, в той час як ці швидкості демони, відомі як суперкомп’ютери можуть виконувати інструкції менш ніж за одну мільярдну секунди.

Рисунок 2: машинний цикл

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

1. Блок управління вибирає (отримує) команду з пам’яті.
2. Блок управління декодує інструкцію (вирішує, що це означає) і направляє, що необхідні дані будуть переміщені з пам’яті в обчислювальний/логічний пристрій. Ці перші два етапи разом називають час виконання команди, або я часу.
3. Обчислювальний/логічний пристрій виконує арифметичні або логічні інструкції. Тобто, АЛУ дається контроль і виконує фактичну операцію над даними.
4. Обчислювальний/логічний пристрій зберігає результат цієї операції в пам’яті або в регістрі. Кроки 3 і 4 разом називають час виконання, або електронного часу.

Блок управління в кінцевому рахунку направляє пам’яті, щоб звільнити результат на пристрій виведення або вторинного пристрої зберігання даних. Поєднання I-часу і E-часу називається машинний цикл. На рисунку 3 приведено вказівку, що проходить через машинний цикл.

Кожен центральний блок обробки даних має внутрішній годинник, які видає імпульси з фіксованою швидкістю, щоб синхронізувати всі комп’ютерні операції. Одна команда машинного циклу може складатися з значної кількості допоміжних інструкцій, кожен з яких повинен приймати щонайменше один тактовий цикл. Кожен тип центрального блоку обробки призначений для розуміння конкретної групи команд називається набір інструкцій. Так само, як є багато різних мов, що люди розуміють, так що будь-який інший тип ЦП встановив інструкція він розуміє. Таким чином, один ЦП, наприклад, один для Compaq персональний комп’ютер, не може зрозуміти, набір команд з іншого ЦП, скажімо, для Macintosh.

Рисунок 3: цикл машини в дії

Це одна річ, щоб мати інструкції і дані десь в пам’яті, і зовсім інше для блоку управління, щоб бути в змозі знайти їх. Як це зробити?

Рисунок 4: адреси пам’яті, як поштові скриньки

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

На рисунку 4 показано, як програма маніпулює даними в пам’яті. Програма розрахунку заробітної плати, наприклад, може дати інструкції поставити ставку заробітної плати в місці 3 і кількість відпрацьованих годин у місці 6. Для розрахунку заробітної плати працівника, а потім, інструкції сказати комп’ютера, щоб помножити дані в місці розташування 3 на дані в місці розташування 6 і перемістити результат в місці 8. Вибір місць довільно – будь-які місця, які ще не сказані для можуть бути використані. Програмісти, що використовують мови програмування, проте, не доведеться турбуватися про фактичні номерів адрес, оскільки кожну адресу даних називається іменем. Ім’я називається символічний адресу. У цьому прикладі, символічні імена адрес є ставка, годинник, і зарплата.

About The Author

admin

Comments are closed.