Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
rozszerzonąlistąinstrukcji(comawpływnadługośćkoduprogramuiwy-
dajnośćobliczeniową)orazopcjonalnądostępnościąjednostkizmiennopo-
zycyjnejiprostychstałopozycyjnychinstrukcjiwektorowych,przeznaczo-
nychdoprzetwarzaniasygnałówiobrazów.
ArchitekturaARMv8-MrozszerzacechyARMv7-Mozaawansowane
mechanizmyochronyiautoryzacjioprogramowania.Umożliwiająoneizo-
lacjędwóchwarstwoprogramowaniapoprzezwprowadzeniemechanizmu
tzw.strefybezpiecznej.RozszerzeniadostępnewARMv8-Msąszczególnie
pożytecznewzaawansowanychzastosowaniachIoT
.Mogąonebyćużyte
np.dozdalnejaktualizacjioprogramowanialubzamknięciaczęścioprogra-
mowaniaurządzeniaprzedintegratoremtworzącyminneskładnikiopro-
gramowania.
SkładnikirdzeniaARMCortex-M
RdzeńARMCortex-Mskładasięzczterechgłównychkomponentów:
procesora,
sterownikaprzerwańNVIC,
timerasystemowegoSysTick,
modułudebugowania.
ProcesorARMjestzaprojektowanywedługkoncepcjipost-RISC.Koncep-
cjatałączyzaletyarchitekturRISC,takiejakprostotabudowyprocesora
iprzystosowaniedogenerowaniawydajnegokoduprzezkompilatoryję-
zykówwysokiegopoziomu,zpożytecznymicechamiklasycznycharchitek-
turCISC-zwartymzapiseminstrukcji,realizacjąstosunapoziomielisty
instrukcjiidostępnościązłożonychinstrukcjipotrzebnychprzytranslacji
programówzjęzykawysokiegopoziomunajęzykmaszynowy.
Procesorjestwyposażonyw16uniwersalnychrejestrów32-bitowych
(rys.2.1)ooznaczeniachr0…r15,zktórychtrzypełniąspecjalnefunkcje
odzwierciedloneprzezichalternatywnenazwy.Rejestrr15(pc)jestliczni-
kieminstrukcji,rejestrr14(lr)-rejestremśladuużywanymprzywywoły-
waniuprocedur,arejestrr13(sp)-wskaźnikiemstosu.Funkcjepozosta-
łychrejestrów,identycznychnapoziomiesprzętu,sąokreśloneprzezkon-
wencjęwołaniaprocedur-rejestryr0…3służądoprzekazywaniaargu-
mentówiprzechowywaniawynikówpośrednich,rejestryr4…11mogąsłu-
żyćdoprzechowywaniazmiennychlokalnychprocedury,arejestrr12jest
używanyprzyprzekazywaniusterowaniapomiędzyprocedurami.
Ponadtoprocesorzawiera32-bitowyrejestrstanu,wktórymumiesz-
czonesąm.in.znacznikisłużącedorealizacjioperacjiwarunkowych.
ProcesorzgodnyzespecyfikacjąarchitekturyARMv7-Mmożebyć
opcjonalniewyposażonywjednostkęzmiennopozycyjnąoperującąnada-
nych32-bitowychwformacieIEEE754binary32lubnadanych32-i64-bi-
towych.Jednostkastałopozycyjnamożerównieżopcjonalniewykonywać
instrukcjewektorowe,traktującedanewrejestrachstałopozycyjnychjako
wektoryzłożonezdwóchdanych16-bitowychlubczterech8-bitowych.
Mikrokontrolery
23