ПЛАНУВАННЯ

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

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

 
< Попер   ЗМІСТ   Наст >