Відмінності між версіями «Огляд сучасних процесорів»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
(Принцип роботи)
(Сторінка очищена)
 
(не показано 8 проміжних версій цього учасника)
Рядок 1: Рядок 1:
== Загальні відомості ==
 
  
 
== Історія виникнення ==
 
 
 
== Принцип роботи ==
 
Фундаментальні роботи більшості процесорів, незалежно від фізичної форми вони приймають, це виконати послідовність інструкцій, званих зберігається програма. Програма представляє собою послідовність чисел, які зберігаються в якомусь пам'яті комп'ютера. Є чотири кроки, що майже всі процесори використовують у своїй роботі: вибірка, декодування, виконання і зворотного запису.
 
 
Першим кроком вибірки, включає отримання інструкції (який представлений ряд або послідовність чисел) з пам'яті програми. Розташування в пам'яті програми визначається програмний лічильник (PC), в якому зберігається номер, що ідентифікує поточну позицію в програмі. Після того, як команда витягується, ПК збільшується на довжину командному слові з точки зору запам'ятовуючих пристроях. Часто інструкції для вибірки повинна бути отримана з відносно повільної пам'яті, в результаті чого процесор для блокування під час очікування інструкції повинні бути повернені. Це питання значною мірою розглядаються в сучасних процесорах кеші і трубопровідного архітектур (див. нижче).
 
 
Інструкція, що процесор вибирає з пам'яті використовується для визначення того, що процесор робити. На етапі декодування, інструкція розбита на частини, які мають істотне значення для інших частин процесора. Спосіб, в якому чисельне значення інструкція інтерпретується визначається інструкцій процесора набір архітектури (ISA). Часто, одна група номерів в інструкції, званий код операції, який вказує операцію виконати. Інші частини числа зазвичай містять інформацію, необхідну для цієї команди, такі як операнди для операції додавання. Такі Операнди можуть бути надані в якості постійного значення (звані безпосереднє значення), або як місце, щоб знайти певний параметр: регістр або адреса пам'яті, а визначається деяким режиму адресації. У більш ранніх конструкцій частин процесор відповідає за декодування команд були незмінні пристроїв. Проте, в більш абстрактною і складною процесорів і МСА, мікропрограму часто використовується для надання допомоги в перекладі інструкцій у різних сигналів конфігурації процесора. Це мікропрограми іноді перезаписуваний так що він може бути модифікований, щоб змінити спосіб процесор декодує інструкції навіть після того, як був проведений.
 
 
Після вибірки і декодування кроків, виконати етап виконується. Під час цього етапу різних частин процесора з'єднані таким чином вони можуть виконати потрібну операцію. Якщо, наприклад, операція складання було запропоновано, арифметико-логічний пристрій (АЛП) буде пов'язана з безліччю входів і безліччю виходів. Входи забезпечують номери, які будуть додані, а виходи будуть містити кінцеву суму. ALU містить схему для виконання простих арифметичних і логічних операцій над входами (такі як додавання і бітові операції). Якщо операція складання дає результат занадто великий для CPU у зверненні, прапор арифметичного переповнення в регістрі прапорів також можуть бути встановлені.
 
 
Останнім кроком, зворотного запису, просто "записує назад" результати виконання кроку до тієї чи іншій формі пам'яті. Дуже часто результати записуються в деяких внутрішніх регістрів процесора для швидкого доступу подальшими інструкціями. В інших випадках результати можуть бути записані повільніше, але дешевше і більше, основний пам'яті. Деякі типи інструкцій маніпулювати програмного лічильника, а не безпосередньо виробляти даних результату. Як правило, вони називаються «стрибки» і сприяти поведінці, як цикли, умовні виконання програми (за допомогою умовного переходу), а функції в програмах. Багато інструкції буде також змінити стан цифри у «прапорів» зареєструйтесь. Ці прапори можуть бути використані, щоб впливати на поведінку програми, так як вони часто показують результати різних операцій. Наприклад, один тип "порівняти" інструкції розглядаються два значення і встановлює число в регістрі прапорів відповідно до якого одна більше. Цей прапор можна було б використовувати більш пізнім оператора переходу, щоб визначити хід виконання програми.
 
 
Після виконання команди і зворотного запису отриманих даних, весь процес повторюється з наступного циклу інструкції зазвичай вибірки наступного в послідовності інструкцій через збільшене значення в лічильник команд. Якщо завершеною команди був стрибок, лічильник програми будуть модифіковані, щоб містити адресу інструкції, яка була підскочив до, і виконання програми продовжується у нормальному режимі. У складніших процесорів, ніж описаний тут, кілька команд можуть бути обрані, декодуються і виконуватися одночасно. У цьому розділі описується те, що зазвичай називають "класичним трубопроводу RISC", яка насправді є досить поширеною серед простих процесорів, використовуваних в багатьох електронних пристроях (часто званий мікроконтролера). Це в значній мірі ігнорує важливу роль кеш процесора, і, отже, доступ етап трубопроводу.
 
 
== Архітектура ==
 

Поточна версія на 16:27, 19 червня 2013