Zadatak T=5: Jedinica WBSD propušta vred Potiče iz polja Rwb.LMD Signal Rwb.WRLMD izaziva propuštanje ove vrednosti 2. Vrednost 0000

Слични документи
Edukacioni racunarski sistem

Zbirka resenih zadataka iz arhitekture racunara

Vezbe_AOR1_2014_V1.0

Algoritmi i arhitekture DSP I

P9.1 Dodela resursa, Bojenje grafa

OPIS RAČUNARSKOG SISTEMA Računarski sistem se sastoji od procesora, operativne memorije, tajmera i terminala. Sve komponente računarskog sistema su me

Univerzitet u Novom Sadu Tehnički fakultet Mihajlo Pupin Zrenjanin Seminarski rad Predmet: Konkuretno programiranje doc. dr Dejan Lacmanovic Zorica Br

P1.2 Projektovanje asemblera

2_Arhitektura racunara

P11.3 Analiza zivotnog veka, Graf smetnji

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode]

Grananje u programu predavač: Nadežda Jakšić

Precesor Intel 8086

13E114PAR, 13S113PAR DOMAĆI ZADATAK 2018/2019. Cilj domaćeg zadatka je formiranje petlje softverske protočnosti za minimalni broj ciklusa.

IV Spekulativno I predikatsko izvršavanje

IV Spekulativno I predikatsko izvršavanje

Microsoft PowerPoint - C-4-1

_sheets.dvi

Logicko projektovanje racunarskih sistema I

Microsoft PowerPoint - 07-DinamickeStrukturePodataka

Logicko projektovanje racunarskih sistema I

Vektorski procesori Najveći izvor paralelizma su DoAll petlje kako je već definisano u poglavlju o paralelizaciji petlji. Paralelizam tih petlji, ako

Logičke izjave i logičke funkcije

Microsoft Word - 11 Pokazivaci

Увод у организацију и архитектуру рачунара 1

PHP kod

Tutoring System for Distance Learning of Java Programming Language

Generated by Foxit PDF Creator Foxit Software For evaluation only. Operativni sistem U računarstvu, operativni sistem (OS

PROMENLJIVE, TIPOVI PROMENLJIVIH

Drugi kolokvij iz predmeta Operacijski sustavi 2. srpnja Napomene: PISATI ČITKO! Zadatke 7-10 rješavati na ovom papiru ili uz njih napisati "na

Tutoring System for Distance Learning of Java Programming Language

Studijski primer - Dijagrami toka podataka Softverski inženjering 1

Microsoft Word - Projekat iz MIPS-a - simCPU.doc

LAB PRAKTIKUM OR1 _ETR_

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

Орт колоквијум

Microsoft Word - ANALIZA PROGNOZA TOPLINSKIH VALOVA U 2012.doc

Microsoft PowerPoint - Timer0 16F887.ppt [Compatibility Mode]

Verzija 1 A R C M A N S E C U R I T Y D E V I CE ilogger-11 opis uređaja i tehnička specifikacija ARCMAN Vikentija Rakića Zemun Tel: 011/3731

JEZGRO OPERATIVNOG SISTEMA I UPRAVLJANJE PROCESIMA 1. Šta je jezgro, a šta proces? Jezgro (nukleus ili kernel) je osnovni deo svakog operativnog siste

Programski jezik C

Programiranje za UNIX Okruženje unix procesa

OPERATIVNI SISTEMI

УНИВЕРЗИТЕТ У НИШУ ПРИРОДНО-МАТЕМАТИЧКИ ФАКУЛТЕТ Департман за рачунарске науке Писмени део испита из предмета Увод у рачунарство 1. [7 пое

ИСПИТНА ПИТАЊА (ОКВИРНИ СПИСАК) УОАР2 2018/19 ПРВИ ДЕО ГРАДИВА 1. Написати истинитоносне таблице основних логичких везника (НЕ, И, ИЛИ). 2. Написати и

Uvod u računarstvo 2+2

Funkcije predavač: Nadežda Jakšić

Microsoft PowerPoint - 03-Slozenost [Compatibility Mode]

` 1.Врсте меморије На основу начина чувања података делимо их на меморије које привремено чувају податке (док је рачунар укључен) и меморије које трај

RACUNARSKA ELEKTRONIKA – VEŽBE 3

Registraciona prijava promene SPORT 1 strana

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr

Funkcije predavač: Nadežda Jakšić

I grupa 1. Napisati program koji izračunava i ispisuje zbir 4 najveća od pet brojeva unetih sa standardnog ulaza. ulaz izlaz Analiza: 1.

Испит из Основа рачунарске технике OO /2018 ( ) Р е ш е њ е Задатак 5 Асинхрони RS флип флопреализован помоћу НИ кола дат је на следећ

P2.1 Projektovanje paralelnih algoritama 1

Dijagrami sekvenci

Испит из Основа рачунарске технике OO /2018 ( ) Р е ш е њ е Задатак 5 Асинхрони RS флип флопреализован помоћу НИЛИ кола дат је на след

NN indd

Inženjering informacionih sistema

OVO JE ZVANIČAN RCUB TEMPLATE: Normal

PowerPoint Presentation

Microsoft Word - IP_Tables_programski_alat.doc

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

Uvod u računarstvo 2+2

Microsoft Word - Tok casa Elektronski elementi Simeunovic Bosko

KDP

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

P1.3 Projektovanje makroasemblera

Programiranje II Beleške sa vežbi Smer Informatika Matematički fakultet, Beograd Sana Stojanović 1

Prikaz znakova u računalu

Programski jezici i strukture podataka 2018/2019. Programski jezici i strukture podataka Računarske vežbe vežba 10 Zimski semestar 2018/2019. Studijsk

Računarski praktikum I - Vježbe 03 - Implementacija strukture string

CRNA GORA Komisija za tržište kapitala Komisija za tržište kapitala (u daljem tekstu: Komisija) na osnovu člana 30 stav 1, a u vezi sa članom 26 stav

Службени гласник РС, број 59/2019, објављен године Преузето са На основу члана 73. став 2. и члан

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi

PowerPoint Presentation

Auto Salon 2 Korisničke upute za rad s programom Auto Salon AUTOSALON - DOKUMENTI Podaci o vozilu se upisuju do daljnjega kao i do sad na rad s vozilo

Računarske mreže Čas 2 Ivana Tanasijević Matematički fakultet, Beograd 1

PowerPoint Presentation

RITAM FORMS - PROIZVODNJA - NARUDŽBE I PLANIRANJE - PLAN PROIZVODNJE Stranica 1 od 10 Plan proizvodnje U pro esu proizvod je proizvodi astaju a os ovi

ELEKTROTEHNIČKI FAKULTET, UNIVERZITET U BEOGRADU KATEDRA ZA ELEKTRONIKU UVOD U ELEKTRONIKU - 13E041UE LABORATORIJSKA VEŽBA Primena mikrokontrolera

Microsoft PowerPoint - ARS_Ch_6 - IO sustavi.ppt

PowerPoint Presentation

Microsoft PowerPoint - 13-Funkcije_2.ppt [Compatibility Mode]

UG802 Dual Core

RAČUNALO

Microsoft Word - MySQL_3.doc

Microsoft PowerPoint - MR - Vjezbe - 03.ppt [Compatibility Mode]

NACRT

Microsoft Word - Test sklonosti na SI.docx

Техничко решење: Софтвер за симулацију стохастичког ортогоналног мерила сигнала, његовог интеграла и диференцијала Руководилац пројекта: Владимир Вуји

07_PJISP_II_Predavanja

PASCAL UVOD 2 II razred gimnazije

Lekcija 6 Prikaz podataka na graficima. Upis u fajl. 1. Cilj vežbe Cilj vežbe je da studente upozna sa: načinima prikaza podataka na različitim grafič

Транскрипт:

Zadatak 2.1 1. T=5: Jedinica WBSD propušta vred 0000 0003 Potiče iz polja Rwb.LMD Signal Rwb.WRLMD izaziva propuštanje ove vrednosti 2. Vrednost 0000 0003 koja je pročitana u taktu 5 (prethodno pitanje) predstavlja sadržaj memorijske lokacije ( R0+0 ) = 0000 h i ujedno vrednost kojom se puni reg R1. Adresa memorijske lokacije sa koje se čita (za instrukciju lw R1,R0+0) Vrednost memorijske lokacije 0000 (za instrukciju lw R1,R0+0) 3. T=7 U taktu 7 događa se prva vanredna situacija-prosleđivanje iz stepena MEM->EX, vrši ga jedinica EXP1, iz polja Rmem.ALUOUT na ulaz A jedinice ALU. 4. T=8 Bezuslovni skok na potprogram! Registri Rid,Rex i Rmem de biti obrisani na slededem taktu. 5. T=8 Na izlazu multiplexera MPNewPC je 0000 e000.potiče iz polja Rmem.ALUOUT, a propuštanje izaziva signal Rmem.JUMP

6. Vrednost 0000 e000 predstavlja adresu prve instrukcije prekidne rutine, a to je instrukcija sw R29,R1,1 7. Potiče iz polja Rmem.PC, a signal Rmem.WRPC izaziva propuštanje. 8. T=9: Vrednost Rmem.PC koja predstavlja staru vrednost PC-a upisujemo u registar R30, koji se kasnije koristi u instrukciji jr R30, 1 za povratak iz potprograma u glavni program nastavljajudi od naredne instrukcije posle instrukcije jsr R30,R17,0- znači da se jr R30, 1 instrukcija koristi kao INSTRUKCIJA POVRATKA IZ PREKIDNE RUTINE-RTS jsr R30,R17,0 instrukcija u stepenu WB vrši upis u reg fajl novu vred reg R30 (vrednost 0000 0004-stara vr PC-a), a u PC upisuje novu vred R17+0 adresa prve instrukcije potprograma

9. Nakon poziva potprograma izvršen je upis u keš za predikciju (pcache) zato što je ispunjen uslov za skok instrukcije bnez R1,-2 iako je predikcija bila Not taken 10. T= 11. T=14: U taktu 14 bnez ulazi u pipe po prvi put. Predikcija je NOT TAKEN, zato što se instrukcija bnez R1,-2 ne nalazi u kešu za predikciju (pcache) pa je to analogno predviđanju NOT TAKEN 12. T=17 Predikcija je POGREŠNA u prvom prolasku kroz petlju. 13. Na izlazu MPNewPC je 0000 e003. Potiče iz polja Rmem.ALUOUT.Ta vrednost predstavlja adresu instrukcije add R3,R3,R2 potprograma 14. T=17 U jedinici NewPC je aktivan NTT signal. On je aktivan pod uslovom da je Rmem.COND=1( signal USLOVA za instrukcije uslovnog skoka: 1-ispunjen uslov, a 0-nije ispunjen uslov ) i Rmem.HIT=0 ( signal saglasnosti za keš pcache : HIT=1 ako je instrukcija uslovnog skoka u pcache-u, u suprotnom je HIT=0 ) 15. T=17 Address & Data ulazi pcache-a: Ain=Rmem.PC - adresa skoka instrukcije uslovnog skoka bnez R1,-2 Din=Rmem.ALUOUT - odredišna adresa instrukcije skoka bnez R1,-2

Rmem.PC & Rmem.ALUOUT polja su dovedena na address & data ulaze pcache-a, respektivno zato što je predikcija NOT TAKEN a skok se ipak dogodio,pa je NTN=1, što znači da se kreira novi ulaz u pcache-u tako što se u odgovarajudi ulaz pcache-a upisuje redom adresa instrukcije skoka, odredišna adresa instrukcije, vrednost tag polja 16. T=20: U taktu 20 instrukcija bnez R1,-2 po drugi put ulazi u pipeline i sada je predikcija TAKEN zato što smo u IF stepenu pipeline procesora u bloku pcache(keš za predikciju instrukcije uslovnog skoka) poređenjem vrednosti reg PC, sa ulazima pcache utvrdili saglasnost(hit=1) sa odgovarajudim ulazom za instrukciju (bnez R1,-2) što znači da je instrukcija bnez R1,-2 ved jednom ulazila u pipe i da je za nju stvarni ishod skoka bio TAKEN 17. T=20 Na izlazu multiplexera MP NewPC je vrednost 0000 e003, a signal HIT=1 izaziva propuštanje ove vrednosti. 18. T=20: Vrednost na izalzu multiplexera MP NewPC 0000 e003, predstavlja polje PPC iz bloka pcache i predstavlja predikciju vrednosti registra PC (PPC-Predicted PC), tj. prognozirano odredište skoka (bnez R1,-2) 19. T=21: Pošto je trenutna vrednost reg PC=e003 znači da se sa adrese e003 učitava instrukcija add R3,R3,R2 koja je u taktu 21 ušla u pipe. Odstupili smo od sekvencijalnog izvršavanja instrukcija zbog predikcije TAKEN (bide skoka) instrukcije uslovnog skoka pa se u PC upisuje odredišna adresa skoka bnez R1,-2. 20. Predikcija je TAČNA. Sadržaj keša za predikciju(pcache)ostaje isti NE MENJA SE! 21. T=22: U taktu 22 pcache NIJE PRAZAN: na adresi 0000 nalazi se zapis 0000e005(adresa instrukcije uslovnog skoka), 0000 e003(odredišna adresa instrukcije uslovnog skoka) i 17(tag polje) 22. T=23: Predikcija instrukcije uslovnog skoka bnez R1,-2 je TAKEN (bide skoka)- zato što imamo HIT=1 u pcache-u 23. T=26: U taktu 26 događa se promašaj predikcije instrukcije uslovnog skoka, pa se na slededi takt radi FLUSH-ovanje pipe registra Rid,Rex & Rmem tj. brišu se stepeni ID, EX & MEM.

24. T=26: Na izlazu MP NewPC je e006, a dobija se na izlazu bloka ADD koji sabira Rmem.PC=e005 i 1 i predstavlja vrednost koja de se na slededem taktu upisati u PC i to de biti adresa instrukcije lw R1, R29, 0, koja ulazi u pipe 25. T=26: to je signal TNT- on je uključen pod uslovom da je Rmem.HIT=1 & Rmem.COND=0 26. T=26: Kontrolni ulaz INVALIDATE je uključen! INVALIDATE se uključuje kako bi poništili odgovarajudi ulaz u pcache-u (briše se) za instrukciju uslovnog skoka za koju je predikcija bila TAKEN a stvarni ishod NOT TAKEN.

27. T=30: Sa adrese 0000 f801. Pročitana vrednost je 0000 0003. Svrha instrukcije lw je da napuni R1 reg vrednošdu 3 DEC. 28. Odredišna adresa instrukcije jr R30,1 je 0000 0005. Ova instrukcija predstavlja instrukciju povratka iz potprograma Instrukcija jr R30,1 čita sadržaj reg R30, sabira tu vrednost sa 1-com i na kraju upisuje rezultat (R30+1) u PC to je adresa instrukcija koja se ubacuje u pipeline 29. Potprogram počinje sa adrese e000: (1) sw čita R1 i tu vred(3 DEC ) upisuje u MemLok[R29+1]=MemLok[f801] =3 (2) addui - upisuje u R29=R29+1 tj R29=f8001 (takt 14) (3) add R3=R0+R0 = 0 (takt 15) (4) add R3=R3+R2 = 0+2 = 2 (takt 16) (5) subi R1=R1-1 = 3-1=2 (6) bnez (R1!= 0)? true => PC=PC-2=e005-2=e003; false => PC=PC+1= e006 (7) add R3=R3+R2=2+2=4 (8) subi R1=R1-1=2-1=1 (9) bnez - (R1!= 0)? True =>PC=PC-2=e003 I put se izvršava II put se izvršava Petlja počinje od adrese e003 do e005 : loop add R3,R3,R2 subi R1,R1,1 bnez R1,-2 end_loop (10) add R3=R3+R2=4+2=6 (11) subi R1=R1-1=1-1=0 (12) bnez - (R1!= 0)?false => PC=e006 (13) lw čita R29 = f801, sabira sa 0 i upisuje u R1=3 - vred MemLok[f801] (14) subui R29=R29-1=f801-1=f800 (15) jr čita R30 (R30=4), sabira tu vred sa 1 (R30+1) i upisuje rezultat u PC (PC=R30+1=0005 adresa sledeće instr u glavnom programu, posle jsr R30,R17,0 instrukcije) III put se izvršava

Na kraju potprograma imamo sadržaj reg u register fajlu: R29 se koristi kao STEK POINTER R30 se koristi da pamti adresu povratka iz potprograma (!!! ne iz prekidne rutine: za adresu povratka iz prekidne rutine se koristi R31 koji se ne može menjati) Iz priloženog sledi : Kada se ulazi u potprogram jsr računa adresu skoka i pamti u R17(početna adresa potprograma e000) i upisuje u R30 povratnu adresu iz potprograma. u potprogramu se na Mem Lok[f801] upisuje vred reg R1 a to je vred 3. Menja se sadržaj reg R29 (stek pointer)sa F800 na F801 sada SP pokazuje na slededu slobodnu lok u memoriji a to je f801.menja sadržaj reg R3 (upisuje 0),a onda ulazi u petlju (e003-e005) u kojoj se R3 puni vred 2, dec se R1i proverava R1 da li je!=0 (loop se izvršava 3 puta. Kada R1=0 čita se sa vrha steak(r29=f800) vrednost 3 i upisuje u R1, ažurira R29(stek pointer sada pokazuje na f800) i izvršava instrukcija povratka iz potprograma tako što čita R30 i u PC upisuje R30+1 Zaključak : Potprogram vrti ovu petlju tri puta - to je glavni deo operacije 30. T=40 Nema zapisa u pcache-u zato što je poslednji put jedan jedini ulaz INVALIDOVAN u p Cache-u zbog promašene predikcije TNT