ОБРОБКА ДАНИХ

Розглянемо основні операції обробки даних в суперскалярного процесорі.

Обчислення адрес і вибірка операндів

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

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

Вибірка даних з пам'яті проводиться командами пересилання. Зазвичай для цього в процесорі є блок завантаження-збереження (Load-Store Unit - LSU), який здійснюють завантаження (читання з пам'яті) даних у внутрішні регістри (загального призначення, з плаваючою точкою) або збереження (запис в пам'ять) вмісту цих регістрів.

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