Лекція 2. Основи конвеєрної роботи МП.
У структурі сучасних МП застосовуються в основному лінійні конвеєри. каскади яких послідовно з'єднані для обробки фіксованою функції потоку даних. Такі конвеєри застосовуються для виконання команд, арифметичних обчислень і звернення до ЗУ.
З точки зору управління потоком даних моделі лінійних конвеєрів М.Б, асинхронні і синхронні. В асинхронних моделях управління потоком проводиться протоколом «рукостискання» за принципом «запит готовності» - «готовий», що характерно для управління комунікаційними каналами.
У синхронних моделях застосовуються синхронні автомати з пам'яттю. які по сигналу тактового генератора перемикають всі щаблі одночасно. Обробні ступені конвеєрів містять комбіновану логіку і мають час затримки приблизно рівне затримки ступені. Затримка ступенів визначається періодом частоти синхронізації і це, в свою чергу, визначає загальну швидкість конвеєрів.
Тактирование і управління тимчасовими затримками.
t - період тактирования конвеєра;
t i- час затримки проходження одному щаблі -Si
d-час проходження автомата з пам'яттю.
Тоді максимальна затримка роботи ступені t m
Зазвичай t m >> d. тобто час обробки ступенів значить.> в порівнянні з затримкою на елементі ЗУ і буферних схемах.
Це передбачає, що макс. Затримка tm домінує над періодом тактирования.
Максимальна частота перемикання ступені:
Якщо видається вихідний результат кожен момент часу з частотою тактирования -f, то очевидно ця величина являє собою максимальну продуктивність ідеального конвеєра. Звичайно ж для реального конвеєра продуктивність буде завжди менше в силу ряду обставин: простоїв окремих ступенів конвеєра, через неможливість виконання суміжних команд внаслідок взаємозалежностей за даними, перезавантаження конвеєра через помилкове передбачення розгалужень і т.д.
Фактори прискорення продуктивності конвеєрів.
В ідеальному випадку лінійний конвеєр складається з «до» ступенів і може обробляти «n» завдань (команд) з тактуванням до + (n-1), де «до» - циклів необхідно для закінчення першого завдання і (n-1) -інші задач.
Загальний час необхідне для обробки:
Tk = [k + (n-1)] t (3). де t - період тактирования в порівнянні зі звичайним НЕ конвеєрним процесором, вирішальним «n» -завдання:
Фактор прискорення «до» лінійного конвеєра по відношенню до НЕ конвеєрного:
Як випливає з виразу (5), максимум прискорення конвеєра досягається при n® ¥ і одно:
Однак реальне прискорення, як уже вказувалося, важко досягти через залежність команд за даними, розгалужень, переривань і інших факторів, що обмежують значення виразу (5).
На рис. показаний фактор прискорення в залежності від кількості -n
Sk Фактор прискорення
10 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ k = 10
6 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ k = 6