You are on page 1of 2

PROGRAMSKI MODEL PROCESORA ARM

(skup znaajki odreene arhitekture koji je na raspolaganju programeru)


- tipovi podataka
- procesorski nain rada (kod ARM7-a sedam procesorskih naina rada - modula)
- registri (ope namjene i programskih stanja)
- iznimke
- memorija

Po veini kararakteristika spada u RISC procesore, ali ima i neke karakteristike C


ISC-a.
37 registara irine 32 bita (nema openitih registarskih prozora)
"Load-store" arhitektura (reg-mem)
Sve naredbe iste duljine (32 bita)
Naredbe za obradu podataka koriste 3 operanda.
Uvjetno izvoenje gotovo svake naredbe.
** "Thumb" skup naredaba
Protona struktura od 3 razine (ARM7).
Memorijska arhitektura - von Neumannova ili Harvardska (razliito za pojedine jezg
re)
Modularna arhitektura (SoC)
5. slajd --> mikroarhitektura
32-bitni procesor, ali mo e obraivati i podatke manje irine (kao i kod FRISC-a)
Moduli (5 najni ih bitova registra CPSR) --> User i est privilegiranih naina rada
-> System, Supervisor, Abort
-> Undefined, Interrupt, Fast In
terrupt
(aktiviraju se kad se u sustavu
generira iznimka)
REGISTRI
31 registar ope namjene (ukljuujui i PC) - u jednom trenutnku ih mo emo koristiti 16
6 registara programskog stanja (isto 32-bitni, no samo se neki bitovi koriste)
13.slajd --> registri
Registri R0-R15 -> jednoznano definirani (R0-R7) --- fiziki registri
-> vi eznano definirani (R8-R14)
-> programsko brojilo (R15)
Registri programskog stanja (CPSR i SPSR)
*** U ATLAS-u su svi registri jednoznani i procesor je uvijek u "System" nainu rad
a.
R13 -> (po dogovoru) koristi se kao pokaziva na vrh stoga (SP)
R14 -> (po dogovoru) koristi se kao registar za pohranu povratne adrese za vraanj
e iz potprograma ili iznimke
CPSR (Current Program Status Register) -> spremljeni su bitovi koji definiraju
razliita stanja procesroa i programa
-> dostupan u svim nainima rada
SPSR (Saved Program Status Register) -> koristi se kad procesor obrauje iznimk
e
-> u njega se upisuje vrijednost registr
a CPSR
31 30 29 28 27 ...... 7 6 5 4 3 2 1 0
N Z C V Q I F T [ M ] -> M[4:0] (10000 oznaava usr nain rada)
| -> T oznaava da ARM izvodi thumb naredbu
-> I ili F u 1 onemoguit e prekide (obian i
li brzi)
zastavice (**Q oznaava da je do lo do preljeva kod pro irenih DSP naredaba)
Iznimke -> prekidi ili nepostojee naredbe -> povr. adresa se sprema u R14
-> CSPR (trenutno prog. stanje) se upisu
je u SPRS
-> prebacivanje u potrebno privilegirano
stanje
-> zapoinje obrada potprograma
Endianness -> inicijalno ARM ima little endian

NAREDBE
- naredbe load i store
- naredbe za obradu podataka
- naredbe grananja
- naredbe za prijenos registara stanja
- koprocesorske naredbe
- naredbe za generiranje iznimke
Naredbe grananja -> naredbom LOAD ili bilo kojom AL naredbom
-> naredbe Branch (B) i Branch and Link (BL)
-> npr. BX prebacuje procesor iza stanja dekodiranja u 'thumb'
stanje

You might also like