Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет «Львівська політехніка»
Кафедра БІТ
/
Лабораторна робота №2
«ДОСЛІДЖЕННЯ ВИКОНАННЯ ЦИКЛІВ НА КОНВЕЄРІ ІНСТРУКЦІЙ»
з дисципліни
«Архітектура комп'ютерних систем»
Варіант - 9
Мета роботи – опанувати техніку конвеєрного виконання RISC інструкцій.
Завдання
Засобами архітектурного симулятора WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64 дослідити конвеєрне виконання фрагментів машинних програм, що містять цикли. Виявити наявні залежності (небезпеки) даних і керування, оптимізувати програмний код та дослідити дію запропонованої оптимізації.
/
Асемблерні інструкції
.data
values: .word 58, 47, 44, 14, 38, 27, 60, 5, 7, 27
result: .space 8
.text
MAIN: daddui R1,R0,10
dadd R2,R0,R0
dadd R3,R0,R0
LOOP: ld R4,values(R2)
dadd R3,R3,R4
daddi R2,R2,8
daddi R1,R1,-1
bnez R1,LOOP
nop
sd R3,result(R0)
HALT
Стан програми перед початком виконання інструкцій з увімкненими функціями випередження(forwarding) та передбачення напрямку умовного переходу(branch target buffer)
/
На циклі 11 отримали першу затримку за рахунок виконаного умовного переходу
/
На циклі 12 отримали ще одну затримку за рахунок виконаного умовного переходу
/
На 76 циклі отримали помилку в передбаченні напрямку умовного переходу
/
На 77 циклі ще одна така помилка
/
Кінцевий стан програми
/
Вікно статистики
/
Згідно вікна статистики маємо такі дані:
Виконано 84 циклів;
Число циклів на інструкцію (CPI) – 1.5;
Зроблено 20 зупинок RAW;
2 затримки внаслідок виконаного умовного переходу;
2 помилки в передбаченні напрямку умовного переходу;
Для порівняння звіримо вікна статистики при вимкненій функції передбачення напрямку умовного переходу.
/
Як бачимо кількість циклів та середнє число тактових інтервалів на інструкцію збільшилося на 1.589 – 1.5 = 0.089. Хоча це і не велика різниця, виконання усіх інструкцій при ввімкненій функції передбачення відбувається швидше, навіть при умові виникнення затримок за рахунок виконаного умовного переходу та помилок в передбаченні напрямку умовного переходу.
Висновок: виконавши дану лабораторну роботу, я опанував техніку конвеєрного виконання RISC інструкцій.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!