prezentacije Flashcards
arhitekture s obzirom na dohvat operanada
stogovne, akumulatorske, reg-mem, reg-reg
gdje s enalaze stog i pokazivač na stog?
u procesoru
ARM i RISC-V su kojeg tipa arhitekture?
load-store (reg-reg)
koliko je širok registar PC?
koliko je širina adresne sabirnice (jer se s PC može adresirati cijeli memorijski prostor)
vrste arhitektura za ARM:
RISC procesori, protočna, memorijska (Hardvard ili Von Neuman), za SoC
ARM je 32-bitni procesor pa je aritm.-log. jedinica duljine…
32 bita
Koje konst. se mogu zapisati u ARM-u?
one koje se mogu dobiti rotiranjem 8-bitnog broja (0-255) za paran broj mjesta udesno (2,..,30)
mnemoničke datoteke su kako orijentirane?
retkovno, u 1 najviše 1 naredba
labela (razlikuje se samo prvih 10 znakova), naredba, komentar
koja su 3 formata odmaka?
broj (neposredna vrijednost), vrijednost iz registra opće namjene i -||- koja je još pomaknuta udesno/ulijevo
ldm/stm pravilo
ako se zapisuje s STMIA, mora se čitati s LDMDB (INVERZNO ADRESIRANJE bez stoga)
ako se radi sa stogom: koriste se isti nastavci (npr. FD)
Koje registre funkcija uvijek mijenja pa ih ne pišemo u kontekst?
registri preko kojih vraća rezultat, R15, CPSR
Prijenos fiksnim lokacijama mane/prednosti
+neograničen broj parametara i rezultata
-sporije, dulje
-fiksne lokacije moraju biti blizu funkciji
-onemogućene rekurzivne funkcije
+čuvanje registara ako imaju međurezultate
Što je okvir stoga i kad se stvara?
kontekst+parametri, prilikom svakog poziva funkcije
Kako se definira procesorski način rada u ARM-u?
postavljanjem najnižih 5 bitova u CPSR-u
Kojih je 6 privilegiranih načina rada ARM-a?
system, supervisor, abort, undefined, interruput, fast interrupt
U jednom trenutku možemo koristiti koliko registara kod ARM-a?
16 opće namjene, ali ukupno ih je 37 (31 opće namjene uključujući i PC + 6 programskog stanja)
kako dijelimo registre opće namjene?
jednoznačno definirani r0-r7
višeznačno r8-r14 (fiq, bez potrebe za spremanjem konteksta)
pc r15 (supervisor, vr. adrese trenutne naredbe + 8)
u spsr se pohranjuje vrijednost cpsr-a (kad se obrađuju iznimke (ili r15 u lr))
kako su definirane adrese potp. za obradu svake iznimke?
fiksno, i prioriteti su fiksno zadani pa se obrađuje ona s većim ako se pojave istovremeno
kako po prioritetima idu iznimke? i adrese?
reset (0) -> data abort -> FIQ -> IRQ -> prefetch abort -> undefined, swi (8)
naredbe mrs i msr
mrs - kopira sadržaj cpsr u jedan od reg. opće namjene
msr - iz reg. opće namjene u cpsr
protočna struktura (cjevovod)
svaka razina izvodi jednu fazu, brže izvođenje n puta u n razina od korak-po-korak
slijedno: m naredbi * n perioda
protočno: n + (m-1)
protočna kod ARM-a
3 razine: dohvat, dekodiranje, izvođenje (tipovi naredbi: obrada, prijenos, grananje)
obrada - paralelno za 3 naredbe
koja su 2 pristupa memoriji kod Von Neumanna?
1 za izvođenje naredbe i 1 za dohvat strojnog koda iduće
upravljački hazard ili hazard _?
grananja
već učitao naredbu ali zbog grananja mora nastaviti rad na nekoj drugoj adresi
b, bl, beq, itd
open collector - priključci i/ili
omogućuju da se više izlaznih priključaka spoji na 1 sabirnicu i svi zajedno njome upravljaju u istom trenutku…
ako su svi prekidni neaktivni onda je i cijela sabirnica neaktivna (u visokoj razini), a ako se bilo koji aktivira i cijela sabirnica se
Kako se U-I sabirnica može spojiti na procesor i memoriju?
1) zajednička UI i memorijska sabirnica
2) preko mosta ili međusklopa (neizravno)
Što sabirnička transakcija (slijed koraka za čitanje/pisanje) sadrži?
zahtjev i odgovor (a unutar njih može biti adresa, podatak, naredba)
koja je specifikacija/standard sabirnice za ARM?
AMBA2 - AHB (memorijska za frekvenciju clocka HCLK ulazni) i APB (UI za GPIO, RTC, UART)
Kako se ubrzava komunikacija kod AHB?
tako što postoji preklapanje između adresne faze jednog pristupa i podatkovne faze prethodnog pristupa
funkcije čitanja i pisanja ahb - apb mosta
pisanje - sa ahb na apb
čitanje - sa apb na ahb
*penable za prijenos
koji su ulazni, izlazni i dvosmjerni uređaji?
ulazni: miš, tipkovnica, mikrofon, touchpad, skener, AD pretvornici, kamera, bar-kod čitač, senzor fizikalnih vel.
izlazni: zaslon, pisač, zvučnici, slušalice, projektor, DA pretvornici, releji, pulsni motori, pojačala
dvosmjerni: zaslon osjetljiv na dodir, gamepad, mreža, modemi, mem. kartice, pametni mobiteli i satovi, CD, eksterni diskovi
2 načina adresiranja vanjskih jedinica?
memorijsko (iste naredbe i protokoli) i izdvojeno (različite naredbe i protokoli i posebni priključci; bez miješanja adresa i puni adresni prostor)
rješenje kod jednolinijske sinkronizacije (jer inicijator Strobea ne zna je li suprotna strana spremna)
dvolinijska rukovanjem s 2 signala (READY i STROBE), tj data valid i accepted
uvjetni prijenos - mana i prednost
mana - dugotrajno čekanje na spremnost
prednost - nema gubitaka/uvišestručenja podataka
*kad nam je bitna sinkronizacija, kad ne znamo trenutak ili brzinu
tko inicira početak prijenosa kod prekidnog prijenosa?
sama vanjska jedinica kad je spremna za komunikaciju
*najbolji odabir… kad procesor mora obaviti više zadaća
Što se događa ako se pošalje neispisivi ascii znak na lcd?
ništa, zanemaruje se
Koji su dijelovi RTC-a?
upravljački dio, registri, brojilo, komparator
ako se koristi prekid gdje se i što treba upisati za RTC?
1 (da generira prekide) ili 0 (da radi u uvjetnom načinu) u CR
Kako se odvija DMA krađom ciklusa?
1) dma preuzme upravljanje nad sabirnicom
2) prenese 1 podatak (kod zaustavljanja procesora sve) {blokovski blok}
3) upravljanje nad sabirnicom se vraća procesoru
4) (dodatno) ponavljanje gornja tri koraka
koje ahb sučelje se koristi za dma i dmac?
dma - master
dmac - slave
koraci dmac načina rada:
1 konfiguracija
2 omogućavanje kanala, inicijalizacija na T
3 VJ postavlja dma zahtjev DMACu (mem-mem nema ovaj)
4 DMAC postavlja BUS zahtjev ARMu, nakon odobrenja preuzima sabirnicu, prenosi blok
5 interni brojač se smanjuje za svaki preneseni podatak
6 ponavljanje 3-5
7 onemogućavanje kanala nakon prijenosa zadnjeg podatka, postavlja se stanje spremnosti i prekid
što uključuje konfiguriranje kanala?
zadavanje adrese izvora, odredišta, veličine bloka i transfera i konfiguracijske riječi (vel. pod. kao bajt ili riječ ili poluriječ)
Zahtjev za prekidom DMAC
pomoću priključka INTR kad je spreman (cijeli DMA transfer završen; stanje se gleda u internom status-bistabilu)
registar sizes dmac
12-bitno polje TS i 3-bitno polje BS
Ulazne i izlazne jedinice za DMAC
jedinica ima FIFO s 8 riječi (32-bitni podaci) i 2 priključka (izlazni REQ i ulazni ACK) i daje zahtjev za prenosom kad ima 4 ili više podataka/slobodnih mjesta
O čemu ovise upravljački signali na rastuć i ipadajući brid (FSM)?
naredbi koja se izvodi, nekim podacima, prethodnim stanjima puta podataka
Što je RISC-V?
SPECIFIKACIJA naredaba procesora (nije arhitektura ni procesor)
što se koristi umjesto halta kod risc-v jer ona ne postoji?
pseudonaredba halt koja se prevodi u 0x00000000 i time daje do znanja da je kraj programa
Kod FRISCa load i store ne uzrokuju hazard (strukturni) zbog…
hardvardske arhitekture
Što definira prekidni sustav?
broj prekidnih priključaka procesora, prioritet priključaka, kako se određuje adresa prekidnog potp., kako se prepoznaje UI jedinica koja je izazvala prekid
**ne definira način slanja podataka prekidnoj jedinici
svojstva naredbi CISC
kompleksni formati naredbi, višestruko adresiranje operanada, velik broj naredbi
**nisu jednostavne naredbe
četverostruko asocijativna memorija kapaciteta 1024B ako su potrebna 3 bita za adresiranje, veličina bloka?
četverostruko asocijativna -> 4 bloka
3 bita -> 2^3=8
1024/4=256
256/8=32 B
Osnovni problem write-through algoritma pisanja u memoriju
negativan utjecaj na ukupne performanse
koliko memorije može adresirati jalr?
8 mb