Top Banner

Click here to load reader

SADRŽAJ - Embedded Systems Research Group at the ...es.elfak.ni.ac.rs/Files/ARM7  · Web viewSEMINARSKI RAD ARM7 PROCESOR Predmet: Mikroprocesorska sistemi Profesor: Prof.dr. Mile

May 23, 2018

ReportDownload

Documents

dinhque

SADRAJ

Mikroprocesorski sistemi ARM7 procesor

ELEKTRONSKI FAKULTET U NIU

SEMINARSKI RAD

ARM7 PROCESOR

Predmet: Mikroprocesorska sistemi

Profesor:

Prof.dr. Mile Stojev

Studenti:

Aleksandar Mladenovi 10017

Davor Dejkovi 9885

Bojan Pavlovi 10035

Milo Milenkovi 9989

Ni, oktobar 2006.

SADRAJ

Uvod..........................................................................................................................4

1. Arhitektura ARM procesora .............................................................................5

1.1 Arhitekturalno naslee .....................................................................................5

1.2 Pogled programera na ARM model .................................................................5

1.3 Razvojni alati ARM .........................................................................................7

2. Organizacija i implementacija ARM ....................................................................9

2.1 Trostepeni komunikacioni kanal (pipeline) ...................................................10

2.2 Peto-stepeni ARM processor .......................................................................12

3. ARM jezgra procesora ......................................................................................14

3.1 ARM7TDMI .................................................................................................14

3.1.1 Hardverski interfejs ...................................................................................15

3.1.2 Kontrola takta ............................................................................................15

3.1.3 Memorijski interfejs ..................................................................................15

3.1.4 MMU interfejs ...........................................................................................17

3.1.5 Stanje .........................................................................................................17

3.1.6 Konfiguracija .............................................................................................17

3.1.7 Prekidi .......................................................................................................18

3.1.8 Inicijalizacija .............................................................................................18

3.1.9 Podrka za debug-ovanje ...........................................................................18

3.1.10 Interfejs za debug-ovanje ........................................................................19

3.1.11 Interfejs koprocesora ...............................................................................19

3.1.12 JTAG interfejs .........................................................................................19

3.1.13 TAP informacije ......................................................................................19

3.1.14 Boundary scan .........................................................................................19

3.1.15 ARM7TDMI u sintezi .............................................................................20

3.2 ARM8TDMI .................................................................................................21

3.3 ARM9TDMI .................................................................................................22

4. Skup instrukcija ARM .........................................................................................23

4.1 Tipovi podataka sa kojima ARM manipulie ...............................................23

5. Tipovi instrukcija procesora ARM ....................................................................23

5.1 Instrukcije za pribavljnje podataka i memorisanje ....................................23

5.1.1 Instrukcije za prenos podataka tipa jedna re ili neoznaeni bajt ..............23

5.1.2 Instrukcije za prenos podataka tipa polurei i oznaenih bajtova ..............26

5.1.3 Viestruke instrukcije za uitavanje i smetanje ........................................28

5.2 Instrukcije za razmene sadraja memorije i registra .................................29

5.3 Instrukcije pristupa status registara ............................................................30

5.3.1 Instrukcije za prenos stanja statusnog registara u registre opte namene ..30

5.3.2 Instrukcije za prenosa registara opte namene u statusni registar ..............31

5.4 Instrukcije za obradu podataka ....................................................................33

5.4.1 Aritmetike operacije .................................................................................36

5.4.2 Logike operacije .......................................................................................37

5.4.3 Operacije premetanja sadraja registara ...................................................37

5.4.4 Operacije poreenja ....................................................................................37

5.4.5 Neposredni operandi ...................................................................................38

5.4.6 Pomereni registarski operandi ....................................................................38

5.5 Razliite aritmetike instrukcije ...................................................................39

5.5.1 Prebrojavanje poetnih nula (CLZ(Count Leading Zeros) ........................39

5.6 Instrukcije mnoenja .....................................................................................40

5.7 Instrukcije grananja .......................................................................................42

5.7.1 Grananje sa linkom (B, BL) .......................................................................42

5.7.2 Grananje sa linkom i razmenom (BX, BLX) ...............................................43

5.8 Instrukcije za generisanje softverkoih prekida.............................................45

5.8.1 Softverski prekid (SWI) .............................................................................45

5.8.2 Instrukcija prekidna taka (BKPT samo za v5T arhitekturu) ..................47

5.9 Instrukcije koprocesora .................................................................................47

5.9.1 Operacije podataka koprocesora .................................................................47

5.9.2 Prenos podataka koprocesoru .....................................................................48

5.9.3 Prenos registara koprocesora ......................................................................50

6. Hardver i Softver Proces kreiranja ...................................................................52

6.1 Verifikaciona Platforma ....................................................................................52

6.2 Programerski pogled na svet...........................................................................57

6.3 Hardverski pogled na svet ..............................................................................59

6.4 Softverski razvojni alati ..................................................................................59

6.4.1 Editor ...........................................................................................................59

6.4.2 Revizija izvornog koda ................................................................................59

6.4.3 Kompajler ....................................................................................................60

6.4.4 Debager ........................................................................................................60

6.4.5 Simulator .....................................................................................................60

6.4.6 Razvojna ploa ............................................................................................61

6.4.7 Integrisana razvojan sredina (IDE) ..............................................................61

6.5 Povezivanje softvera za debagiranje ..............................................................61

6.5.1 JTAG ...........................................................................................................62

6.5.2 STUB ...........................................................................................................62

6.5.3 Direktna konekcija .......................................................................................62

6.6 Tipovi softvera .................................................................................................63

6.6.1 Inicijalizacija sistema i HAL ......................................................................63

6.6.2 Dijagnostiki test program ..........................................................................63

6.6.3 Operativni sistem za rad u realnom vremenu (RTOS) ................................64

6.6.4 Pokretacki programi i aplikacioni softver ..................................................64

6.7 Proces razvoja softvera ...................................................................................64

6.8 Hardverska razvojna sredstva ..................