Як працюють мікропроцесори

Як працюють Мікропроцесори. Частина 2. Логіка мікропроцесора.

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

В основному мікропроцесор виконує набір машинних команд, які говорять йому, що робити. Заснований на інструкціях, мікропроцесор виконує три основні завдання:

Використовуючи його ALU (Арифметично-Логічне пристрій), мікропроцесор може виконувати математичні операції, такі як доповнення, віднімання, множення і поділ. Сучасні мікропроцесори містять повні набори команд (препроцесори) для операцій з плаваючою комою, які можуть виконати надзвичайно складні операції з великою кількістю чисел після коми.

Мікропроцесор може перемістити дані від однієї комірки пам'яті до іншої.

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

Мікропроцесор може виконувати дуже складні речі, використовуючи перераховані вище три основних види діяльності.

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

Як працюють мікропроцесори

Цей мікропроцесор має:

Шину даних (може бути 8, 16, 32 і 64 біта шириною), яка може відправляти дані в пам'ять або отримувати дані з пам'яті.

Read (читання) і Write (запис) канали необхідні, щоб повідомити мікропроцесору про те, що потрібно від пам'яті системі і додатків.

Канал годин, дозволяє тактовому імпульсу впорядковувати процесор.

Канал скидання, скидає лічильник команд, щоб обнулити процесор, так само служить для виконання перезапусків процесора.

Компоненти цього простого мікропроцесора такі:

Регістри A, B і C є просто фіксаторами, зробленими з тригерів (транзисторів).

Лічильник команд - фіксатор з додатковою можливістю поступово збільшитися на 1 коли необхідно, і також скинути значення в разі спеціальних інструкцій.

ALU може бути настільки ж простим як 8-розрядний суматор (калькулятор), основними діями якого буде додати, відняти, помножити і розділити 8-розрядні значення.

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

Так само на схемі є шість полів, позначених "буфер 3-х станів". Буфер із трьома станами може передати 1 (істина), 0 (брехня), або він може просто роз'єднатися (уявіть перемикач, який повністю роз'єднує лінію від проводу). Буфер із трьома станами дозволяє багаторазовим висновків з'єднуватися з проводом, але тільки одним з них, щоб фактично давати 1 або 0 не змішуючи їх на лінію.

Регістр команд і декодер інструкцій відповідають за управління всіма іншими компонентами мікропроцесора.

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

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