Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
/
З В І Т
до лабораторної роботи № 2
з курсу «Архітектура комп’ютерних систем»
Варіант № 11
Мета роботи: Опанувати техніку конвеєрного виконання RISC інструкцій
Завдання Засобами архітектурного симулятора WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64 дослідити конвеєрне виконання фрагментів машинних програм, що містять цикли. Виявити наявні залежності (небезпеки) даних і керування, оптимізувати програмний код та дослідити дію запропонованої оптимізації. За результатами проведених лабораторних досліджень оформити звіт та захистити його.
/
Перше крок - це створення файлу loops.s:
/
Наступний крок це перевірити синтаксис потрібно виконати команду операційної системи: asm loops.s. Результат на дисплеї.
/
Фінальний крок - це симулювання.
Синтаксис є коректним. Далі відкриємо програму WINMIPS64 і запустимо в ній файл loop.s, яким ми попередньо створили. Переконався, що програма завантажена до пам’яті і симулятор готовий до роботи. У вікні “Code” спостерігаємо код програми.Після натискання декілька разів клавіші F7 перед нами постає отакий результат, або якщо нам потрібен відразу результат симулювання натискаємо клавішу F4.
/
У секції Data є змінна result, за якою ми будемо перевіряти правильність нашої програми та симулювання:
/
На 7 циклі симулювання, сталося перше пригальмування raw.
/
На 7 циклі симулювання, сталося перше пригальмування raw.
/
На 11 циклі виконання отримали першу помилку передбачення напрямку умовного переходу (Branch misprediction stall).
/
/
Наше кінцеве число = 13b – в шістнадцятковій системі числення.
Якщо ми переведемо число за допомогою конвертора то отримаємо число 315.
/
І справді, якщо ми додамо 20 + 3 + 56 + 17 + 38 + 19 + 35 + 53 + 32 + 42 = 315.
Отже програма відпрацювала правильно.
Висновок: : Опанував техніку конвеєрного виконання RISC інструкцій та виконав додавання 10 чисел.