L7 I2Y3S1 7

WOJSKOWA AKADEMIA TECHNICZNA

ARCHITEKTURA I ORGANIZACJA KOMPUTERÓW

SPRAWOZDANIE Z ĆWICZENIA LABORATORYJNEGO NR 7-8

Temat: Analiza i projektowanie programów na poziomie asemblera. Przetwarzanie tablic. Ocena wpływu doboru konfiguracji sprzętowej na szybkość realizacji postawionego zadania.

PROWADZĄCY ZAJĘCIA:

mgr inż. Artur Miktus

SPRAWOZDANIE WYKONAŁ:

Artur Piersa

GRUPA:

I2Y3S1

  1. Treść zadania

A. Napisać program Lab7.s w asemblerze komputera DLX, który:

  1. Zadeklaruje dwie tablice przechowujące liczby całkowite: T 110- elementową oraz TB 70-elementową, a także zmienną Suma zmiennoprzecinkową podwójnej precyzji.

  2. Komórki tablicy T wypełni rosnąco kolejnymi liczbami całkowitymi począwszy od numeru w dzienniku studentki/ studenta, powiększonego o liczbę SKŁADNIK(=150), o wartości podanej poniżej (np. dla numeru 10, TA będzie zawierać kolejne liczby całkowite 10+SKŁADNIK, 11+SKŁADNIK,…)

  3. Następnie dla każdego elementu tablicy TB wykona operację :

(T[i+4] + T[i+7]) * SKŁADNIK

4.W zmiennej Suma umieści sumę wszystkich elementów tablicy TB.

B. Przed napisaniem programu Lab7.s zaprojektować arkusz kalkulacyjny w Excelu (lub innym arkuszu kalkulacyjnym), wykonujący te same obliczenia. Porównać wyniki z arkusza z wynikami napisanego programu Lab7.s.

C. Zmierzyć liczbę cykli zegarowych dla wykonania uzyskanego programu przy 1) załączonym 2) wyłączonym forwardingu (WinDLX, menu Configuration/ Enable Forwarding). Wyniki pomiarów przedstawić w postaci tabeli. Dla każdego uruchomienia sprawdzić poprawność obliczonej zmiennej Suma.

D. W sprawozdaniu naszkicować (lub wydrukować) i porównać diagramy cykli zegarowych dla wykonania jednej iteracji obliczeń z punktu A3 (TB[i] = …) dla konfiguracji: 1) Forwarding Enabled i 2) Forwarding Disabled. Opisać występujące w tej iteracji hazardy i przyczyny ich powstania. Na podstawie analizy diagramów cykli zegarowych obliczyć liczbę cykli zegarowych, liczbę instrukcji i CPI (Clock cycles Per Instruction = liczba cykli zegarowych / liczba wykonanych instrukcji) dla całego programu dla obu wybranych konfiguracji. Wyniki obliczeń porównać z zawartością okienka Statistics programu WinDLX.

Kod programu:

.data

T: .space 440

TB: .space 280

Suma: .double 0

numer: .word 7

skladnik: .word 150

.text

;Deklaracja pierwszej tablicy

addi r1,r0,0 ;adres poczatku

addi r2,r0,0 ;licznik

lw r11,skladnik

petla1:

subi r3,r2,109 ;sprawdzanie czy to ostatni element

lw r17, numer

lw r18, skladnik

add r17, r17, r18

add r4, r2,r17

addi r2,r2,1 ;uaktualnienie licznika

sw T(r1),r4 ;zapisanie w pamieci wartosci

addi r1,r1,4 ;ustawienie wskaznika na nastepny element tablicy

bnez r3,petla1

;Deklaracja drugiej tablicy

addi r5,r0,T ;adres poczatku

addi r2,r0,0 ;licznik

addi r1,r0,0

petla2:

subi r3,r2,69 ;sprawdzanie czy to ostatni element

lw r4,16(r5)

lw r8,28(r5)

add r4,r4,r8

mult r4,r4,r11 ;wyraz do zapisania w tablicy

addi r2,r2,1 ;uaktualnienie licznika

sw TB(r1),r4 ;zapisanie w pamieci wartosci

addi r1,r1,4 ;ustawienie wskaznika na nastepny element tablicy

addi r5,r5,4

add r10,r10,r4 ;Suma

bnez r3,petla2

MOVI2FP f2,r10

CVTI2D f2, f2

sd Suma,f2

trap 0

SUMA 4,13700E+06
Indeks: T TB
1 157 48750
2 158 49050
3 159 49350
4 160 49650
5 161 49950
6 162 50250
7 163 50550
8 164 50850
9 165 51150
10 166 51450
61 217 66750
62 218 67050
63 219 67350
64 220 67650
65 221 67950
66 222 68250
67 223 68550
68 224 68850
69 225 69150
70 226 69450
101 257
102 258
103 259
104 260
105 261
106 262
107 263
108 264
109 265
110 266

Forwarding włączony:

Dzięki użyciu forwardingu, wystąpiło mniej hazardów typu RAW co skróciło czas działania programu. CPI= 1,32

Forwarding wyłączony:

Bez użycia forwardingu znacznie wydłużyły się hazardy. CPI=1,77

Forwarding Liczba cykli Suma
Włączony 2342 4,13700E+06
Wyłączony 3139 4,13700E+06

Wyszukiwarka

Podobne podstrony:
ipp2p L7
nOTATKI, L7 ' English Disease'
L7 1 Wymiarowanie QDIM
FiR matma L7 8
L7
podciag, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l7
l7? gnd pdop vat KDH7VWETZD23USBOMX3I7KMV3ACNLLL4WPLAK4A
l7 memory
L7 Stress constitutive relation
rysunek, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l7
drogi, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l7
L7 2 id 257300 Nieznany
L7 Wymiarowanie
AsD L7
BMW L7 1986
Zadania I2Y3S1, WAT, III SEM, GK
Pomiar rezystencji, Grupa lab: L7
binary s, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l7

więcej podobnych podstron