Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет «Львівська політехніка»
Кафедра ЗІ
/
Лабораторна робота №1
«ПРАКТИКА РОБОТИ З АРХІТЕКТУРНИМ СИМУЛЯТОРОМ
WinMIPS64»
з дисципліни
«Архітектура комп'ютерних систем»
Варіант - 4
Мета роботи – опанування технікою роботи з архітектурним симулятором WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64.
Завдання
Виконати пункти 2 (завантаження програми) та 3 (симулювання) згідно варіанту. Для операції віднімання використати інструкцію dsub.
Варіант
Число А
Число В
Арифметична операція
4
17
6
-
Асемблерні інструкції
.data
A: .word 17
B: .word 6
C: .word 0
.text
main:
ld r4,A(r0)
ld r5,B(r0)
dsub r3,r4,r5
sd r3,C(r0)
halt
Виконання програмою асемблерних інструкцій
Clock 1
/
Clock 2
/Clock 3
/
Clock 4
/
Clock 5
Значення, призначене для r5, стає доступним для пересилання. Однак саме значення для r5 не було доступне вчасно для виконання інструкції dadd r3, r4, r5 у EX. Таким чином воно залишається в EX. У рядку стану написано "RAW зупинка в EX (R5)", вказуючи, де сталася зупинка, і відсутність якого регістру була причиною цього
/
Clock 6
/
Clock 7
/
Clock 8
/
Clock 9 та Clock 10
На даному етапі програма завершує свою роботу з результатом 00000000000000b, яке при переводі у десяткову систему числення дорівнює 11.
/
Вікно часової статистики
/
Вікно статистики
/
Далі порівняємо вікно статистики після виконання усіх кроків програми при вимкнені випередження (forwarding):
/
Кількість затримок (RAW) збільшилася до 4, що стало причиною збільшення кількості циклів на 3, що в свою чергу призвело до збільшення параметру CPI до 2.6 циклів на інструкцію.
Висновки: під час лабораторної роботи я опанував техніку роботи з архітектурним симулятором WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64.