ДОСЛІДЖЕННЯ ВИКОНАННЯ ЦИКЛІВ НА КОНВЕЄРІ ІНСТРУКЦІЙ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Інші

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра ЕОМ Лабораторна робота №2 ДОСЛІДЖЕННЯ ВИКОНАННЯ ЦИКЛІВ НА КОНВЕЄРІ ІНСТРУКЦІЙ Мета: дослідження виконання циклів на конвеєрі інструкцій Нехай симулюється наступна програма, записана мовою асемблер. Програма знаходить суму десяти чисел (від 1 до 10 з кроком 1, відповідь є 0х37 = 55 десяткове). Ясно, що в пам’яті програмно резервують (.word) з ініціалізацією 10 комірок з доданками, а також (без ініціалізації, .space) місце для результату (суми). ; Program: loop.s ; Sum of 10 integer values .data values: .word 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ; 64-bit integers result: .space 8 .text MAIN: daddui R1,R0,10 ; R1 <- 10 dadd R2,R0,R0 ; R2 <- 0 POINTER REG dadd R3,R0,R0 ; R3 <- 0 RESULT REG LOOP: ld R4,values(R2) ;GET A VALUE IN R4 dadd R3,R3,R4 ; R3 <- R3 + R4 daddi R2,R2,8 ; R2 <- R2 + 8 POINTER INCREMENT daddi R1,R1,-1 ; R1 <- R1 - 1 DECREMENT COUNTER bnez R1,LOOP nop sd R3,result(R0) ; Result in R3 HALT ; the end Будемо користуватися процесором, де задіяні апаратні механізми випередження даними і прогнозування напрямку умовного перходу за допомогою буфера цільових адрес переходу (branch target buffer, BTB).  Рис. 1 – Основне вікно симулятора зі завантаженою програмою (одне дочірнє вікно не видно). Дозволено використання апаратури випередження (forwarding) і апартури передбачення напрямку умовного переходу (branch target buffer)  Рис. 2 – Основне вікно симулятора, чітко видно вмістиме пам’яті до старту виконання програми  Рис. 3 – Основне вікно симулятора, виконано 7 циклів симулювання. Є перше RAW (read after write)  Рис. 4 – Дочірнє вікно “конвеєр” симулятора, перше RAW пригальмування, 7 тактів симулювання  Рис. – Друге RAW пригальмування. Виконано 10 тактів  Рис. – Виконано 11 тактів симулювання, сталося перше пригальмування за рахунок виконаного умовного переходу (branch taken stall)  Рис. Стан виникнення першої gомилки в передбаченні напрямку умовного переходу (Branch misprediction stall)  Рис. – Головне вікно симулятора по завершенню симулювання програми ЦИКЛ СРІ – це (середнє) число тактових інтервалів (cycles per instruction), що припало на виконання кожної інструкції програми. В ідеальному випадку для нашого п’ятисходинкового конвеєра маємо СРІ=1, але залежності поміж інсирукціями через дані (data hazards, RAW, WAR, WAW) збільшують СРІ, тобто часові витрати на виконання програми. По виконанню програми з оптимізованою апаратурою втрати конвеєра інструкцій склали 20 RAW-пригальмувань, 2 пригальмування під час виконання виконаних взятих, виконаних умовних переходів (Branch taken) і ще 2 пригальмування через помилками передбачення напрямку умовного переходу апаратними засобами (тут використовується буфер цільових адрес переходів - branch target buffer).Ясно, що при використанні неоптимізованої апаратури час виконання програми зросте. Симулюванням треба подати відповідь та питання – коли, чому, наскільки?
Антиботан аватар за замовчуванням

30.04.2013 23:04-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!