DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

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

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

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

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

Рік:
2025
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Архітектура комп ютерних систем

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра БІТ / З В І Т до лабораторної роботи №4 з курсу: «Архітектура комп’ютерних систем» на тему: «ДОСЛІДЖЕННЯ КОНВЕЄРНОГО ВИКОНАННЯ ІНСТРУКЦІЙ РУХОМОЇ КОМИ» Варіант №18 Львів 2022 Мета роботи - опанування технікою конвеєрного виконання RISC інструкцій для операндів формату рухомої коми. Завдання Засобами архітектурного симулятора WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64 дослідити конвеєрне виконання фрагментів машинних програм, що команди опрацювання операндів в форматі з рухомою комою. Виявити наявні залежності (небезпеки) даних і керування, оптимізувати програмний код та дослідити дію запропонованої оптимізації. За результатами проведених лабораторних досліджень оформити звіт та захистити його. ВИКОНАННЯ: Вміст файлу hail.s; .data number: .word 27 ; this is input number - change it! max: .word 0 ; max number so far .text start: ld r1,number(r0) ; program start loop: andi r3,r1,1 ; test odd or even beqz r3,even odd: dadd r2,r1,r1 ; times 2 dadd r1,r2,r1 ; times 3 daddi r1,r1,1 ; plus 1 j over even: dsrl r1,r1,1 ; divide by 2 over: ld r4,max(r0) slt r3,r4,r1 ; compare with max beqz r3,skip sd r1,max(r0) ; new max skip: slti r3,r1,2 ; test for finished beqz r3,loop halt / Рис. 1. Фініш програми / Рис. 2. Вікно статистики (Statistics) після завершення симулювання По виконанню роботи за допомогою вікна статистики (рис.2) можна охарактеризувати роботу симулятора. Відбулось 445 RAW-пригальмувань, 317 гальмувань під час виконання умовних переходів (Branch taken). Витратив 1794 цикли для виконання 1028 інструкцій. Отже, отримав середнє число тактових імпульсів CPI=1.745 на одну інструкцію. У даному коді є проблеми, які не дозволяють паралельно виконувати всі потрібні функції, тому я спробував відкоригувати даний код змінивши послідовність виконання функцій. Новий вміст файлу hail.s; .data number: .word 27 ; this is input number - change it! max: .word 0 ; max number so far .text start: ld r1,number(r0) ; program start andi r5,r1,1 ; test odd or even loop: dadd r2,r1,r1 ; times 2 beqz r5,even odd: dadd r1,r2,r1 ; times 3 ld r4,max(r0) daddi r1,r1,1 ; plus 1 slt r3,r4,r1 ; compare with max andi r5,r1,1 sd r1,max(r0) ; new max j loop even: dsrl r1,r1,1 ; divide by 2 slti r3,r1,2 ; test for finished andi r5,r1,1 beqz r3,loop halt / Рис. 3. Фініш програми / Рис. 2. Вікно статистики (Statistics) після завершення симулювання Відбулось 1 RAW-пригальмування, 180 гальмувань під час виконання умовних переходів (Branch taken). Витратив 977 циклів для виконання 792 інструкцій і середнє число тактових імпульсів CPI=1,243 на одну інструкцію. Результат кращий, ніж попередній. ВИСНОВКИ: Під час виконання лабораторної роботи я опанував техніку конвеєрного виконання RISC-інструкцій для операндів формату рухомої коми. Також виконав оптимізацію коду, для покращення виконання роботи програми. Було 1794 цикли - стало 977; Було CPI = 1,745 - стало 1,234; Було 445 RAW-гальмувань - стало 1.
Антиботан аватар за замовчуванням

08.04.2025 12:00

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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