You are on page 1of 10

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»


ІКТА
ЗІ

Звіт
до лабораторної роботи №1

з курсу: «Архітектура комп'ютерних систем»


на тему: «Практика роботи з архітектурним симулятором
WinMIPS64»

Варіант №19

Виконала:
Ст. групи КБ-306
Сорока Соломія .
Прийняв:
Горячий О. Я.

Львів — 2023
Мета
Опанувати техніку роботи з архітектурним симулятором WinMIPS64
машини з 64-розрядною RISC архітектурою MIPS64

Короткі теоретичні відомості


1. LD
Формат: LD rt, offset(base)
Мета: завантажити подвійне слово з пам'яті.
Опис: rt ← пам'ять[база+зміщення]

2. DADD
Формат: DADD rd, rs, rt
Мета: додати 64-розрядні цілі числа.
Опис: rd ← rs + rt
64-бітове значення подвійного слова в GPR rt додається до 64-бітового
значення в GPR rs, щоб отримати 64-розрядний результат. 64-розрядний
результат поміщається в GPR rd.

3. DSUB
Формат: DSUB rd, rs, rt
Мета: відняти 64-розрядні цілі числа; пастка при переповненні.
Опис: rd ← rs - rt
64-бітове значення подвійного слова в GPR rt віднімається від 64-бітового
значення в GPRrs до отримати 64-розрядний результат. 64-розрядний результат
поміщається в GPR rd.

4. SD
Формат: SD rt, зміщення (база)
Мета: зберегти подвійне слово в пам'яті.
Опис: пам'ять[база+зміщення] ← rt
64-розрядне подвійне слово в GPR rt зберігається в пам'яті в місці, визначеному
вирівнянням ефективної адреса. 16-бітове зміщення зі знаком додається до
вмісту бази GPR сформувати діючу адресу.

5. HALT
Формат: HALT
Мета: переводить процесор у стан HALT, зупиняючи виконання інструкції.
Інструкція зупинки є привілейованою.

Забарвлення вказує на сходинку конвеєра, де знаходиться відповідно


забарвлена інструкція:
● жовтий для IF (вибирання інструкції з пам’яті інструкцій, точніше з кеша
інструкцій)
● блакитний для ID (декодування інструкції і вибирання операндів
безпосередніх і з регістрового файла)
● червоний для EX (виконання інструкції, 1 такт для інструкцій з
фіксованою комою і більше тактів для інструкцій з рухомою комою)
● зелений для MEM (запис/читання до/з комірок пам’яті даних)
● пурпурний для WB (запис результату до регістру регістрового файлу)

Завдання
1. Запуск і конфігурування симулятора WinMIPS64
2. Завантаження програми
3. Симулювання
Виконати пункти 2 та 3 згідно варіантів поданих нижче (Таб. 2). Для
операції віднімання використати інструкцію dsub.
Таблиця 2. Варіанти для виконання завдання

Варіант Число А Число В Арифметична


операція
19 28 45 +

Хід роботи
1. Спочатку налаштовали симулятор WinMips64 згідно методичних
вказівок.

2. Завантажуємо програму.

Напишемо текст програми та перевіримо синтаксис за допомогою


утиліти asm.exe. Числа беремо згідно варіанту A - 28, B – 45.

Текст програми:

;*** winMIPS64 //sum.s// C=A+B *****


;*** (c) 2003 CA226, DCU *****

.data
A: .word 28
B: .word 45
C: .word 0
.text
main:
ld r4,A(r0)
ld r5,B(r0)
dadd r3,r4,r5
sd r3,C(r0)
halt
Результат перевірки синтаксису за допомогою утиліти asm

Рис.1 Скрін з консолі після перевірки синтаксису за допомогою asm

3. Виконуємо симулювання

Clock 1
Рис.2 Процесор зчитує інструкцію з пам'яті. У цьому такті читається перший
рядок з коду, який вказує ld r4, A(r0).

Clock 2

Рис.3 Декодується зчитана інструкція, і процесор визначає, що це операція


завантаження (load).
Clock 3
Рис.4 Виконується операція завантаження ld r4, A(r0). Значення, яке
знаходиться за адресою A в пам'яті (28), записується в регістр r4.

Clock 4

Рис.5 Процесор зчитує наступну інструкцію, яка вказує ld r5, B(r0).


Clock 5

Рис.6 Декодується інструкція ld r5, B(r0).

Clock 6

Рис.7 Виконується операція завантаження ld r5, B(r0). Значення, яке


знаходиться за адресою B в пам'яті (45), записується в регістр r5.
Clock 7

Рис.8 Процесор зчитує наступну інструкцію, яка вказує dadd r3, r4, r5.
Clock 8

Рис.9 Декодується інструкція dadd r3, r4, r5.


Clock 9

Рис.10 Виконується операція додавання r4 і r5, результат записується в регістр


r3.

Clock 10

Рис.11 Останній такт, в якому виконується операція збереження результату в


пам'ять згідно інструкції sd r3, C(r0).

Порівняння вікна “Statistics” з вимкненим випередженням та з


увімкненим:

З увімкненим випередженням З вимкненим випередженням


Висновок
Під час виконання лабораторної роботи я вивчила та сконфігурувала
архітектурний симулятор. Я здобула важливі навички та розширила розуміння
процесу виконання програм на комп'ютерах. Ретельний розгляд кожного кроку
програми у симуляторі допоміг мені краще зрозуміти, як внутрішньо працюють
комп'ютери та як взаємодіють інструкції, регістри та пам'ять.
Особливо важливим було опанування навичок аналізу швидкості
програм. Це допомагає ефективніше оптимізувати код та забезпечувати більшу
продуктивність програм.

You might also like