Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет «Львівська політехніка»
Кафедра БІТ
/
Лабораторна робота №2
«ПРАКТИКА РОБОТИ З АРХІТЕКТУРНИМ СИМУЛЯТОРОМ WinMIPS64»
з дисципліни
«Архітектура комп'ютерних систем»
Варіант – 28
Мета роботи: опанувати техніку конвеєрного виконання RISC інструкцій.
Завдання
Засобами архітектурного симулятора WinMIPS64 машини з 64-розрядною RISC архітектурою MIPS64 дослідити конвеєрне виконання фрагментів машинних програм, що містять цикли. Виявити наявні залежності (небезпеки) даних і керування, оптимізувати програмний код та дослідити дію запропонованої оптимізації./
Асемблерні інструкції
.data
values: .word 50, 48, 55, 58, 26, 42, 27, 6, 25, 59
result: .space 8
.text
MAIN: daddui R1,R0,10 ;
dadd R2,R0,R0 ;
dadd R3,R0,R0 ;
LOOP: ld R4,values(R2) ;
dadd R3,R3,R4 ;
daddi R2,R2,8 ;
daddi R1,R1,-1 ;
bnez R1,LOOP
nop
sd R3,result(R0) ;
halt
/
/
Рис.1 Після виконання семи циклів симулювання
/
Рис. 2. Друге RAW пригальмування. Виконано 10 тактів.
/
Рис. 3. Пригальмування за рахунок виконаного умовного переходу
Branch taken stall
/
Рис. 4. Виникнення помилки в передбаченні напрямку умовного переход
Branch misprediction stall
/
Рис. 5. Головне вікно симулятора по завершенню симулювання програми
Висновок: виконавши дану лабораторну роботу, я опанував техніку конвеєрного виконання RISC інструкцій.