Transcript ARM Uvod

UGRADBENI SUSTAVI
“EMBEDED SYSTEMS”
Sven Gotovac
Primjer razvoja sustava
 1965. godine Intelov suosnivač Gordon Moore predvidio je




razvoj sustava na čipu rekavši da će se broj tranzistora na čipu
udvostručiti svake približno dvije godine (18 mjeseci). Ovo
predviđanje pokazalo se vrlo dobrim i poznato je pod nazivom
Moore-ov zakon.
Moore-ov zakon na djelu možemo lako raspoznati samo ako
pogledamo kakvo računalo smo za određen iznos novaca mogli
kupiti npr. prije godinu dana u odnosu na danas....
U našem primjeru možemo pogledati taj fenomen i s malo
drugačije strane...
Jedna od najzahtjevnijih aplikacija na računalu svakako je
dekompresija i prikazivanje video sadržaja
Prije par godina takve sadržaje mogli smo gledati SAMO na
stolnom računalu
Primjer razvoja sustava
 Prije par godina takav sadržaj bilo
je moguće prikazivati i na
naprednim dlanovnicima (na slici
je primjer PocketPC uređaja koji
prikazuje MPEG4 video)
 Prikazani uređaj u sebi sadrži
procesor iz porodice ARM koji
radi na 400 MHz
 Međutim brzina procesora nije
jedini važan faktor u sustavu, već
se mora gledati i propusna moć
memorijskog sustava, periferija,
tip aplikacije i slično..
 Danas već možemo
gledati video na
mnogim MALIM i
SNAŽNIM uređajima
pa i mobilnim
telefonima.
 A mnogi od njih
zasnovani su na
procesoru ARM!!!!!
Svijet digitalnih računala...
 Mnoge struke KORISTE
računalnu tehnologiju za:
 Potrošačku elektroniku
 Automobilsku elektroniku
 Industrijske primjene
 Bežične uređaje
 Prijenos i obradu
multimedije
 Pohranu podataka
 Telekomunikacije
 Medicinu
Automobilska industrija
Automobilska industrija
 Regulator klima uređaja
Kućanski aparati





Perilica rublja
Mikrovalna
Televizor
DVD
….
Potrošačka elektronika
 Mobitel
 iPod
 iPhone
…
Komunikacijski uređaji
 Usmjerivač
 Preklopnik
…
Zahtjevi industrije i tržišta








Procesorska snaga
Cijena
Niska potrošnja
Sigurnost/Pouzdanost
Prilagodljivost
Modularnost
Široka primijenjenost
....
Nažalost brojni od ovih zahtjeva su diametralno suprotni i
nemoguće ih je sve zadovoljiti pa tražimo optimalno
rješenje za pojedinu primjenu
Primjer...
 Životni ciklus nekih proizvoda u
današnje vrijeme je izuzetno kratak....
(posebice potrošačka elektronika)
 Novi proizvod se mora
 Projektirati
 Proizvesti prototip
 Ispitati
 Pripremiti proizvodnju
 Pripremiti tržište
 Proizvesti
 Distribuirati
 Ponekad za samo 3-6 mjeseci
Stavljanje novog proizvoda na tržište
 U tih 3-6 mjeseci nemoguće je uvijek iznova projektirati uređaj
 Takav postupak bio bi


Skup
Spor
 U današnje vrijeme teži se sve većem “ponovnom” korištenju
intelektualnog vlasništva (IP, Intellectual Property) što se obično
naziva “reusability”
 Ideja je da dijelove sustava (sklopovske i programske)
napravimo tako da su modularni kako bi ih mogli koristiti u što
više proizvoda i u što više budućih inačica
Stavljanje novog proizvoda na tržište
 U općem slučaju (naravno ne uvijek) oslanjanje na rješenja koja
su vezana za pojedine kratke životne faze proizvoda nisu dobra
(npr. pisanje programske podrške za specifične procesore koji
za par godina neće biti na tržištu ili će biti preslabi, korištenje
sklopovlja koje nema mogućnost proširenja,...)
 Dokazano je da je jedan od najvažnijih faktora uspjeha što raniji
izlazak na tržište sa kvalitetnim proizvodom
 To se može postići isključivo minimizacijom potrebe za
redizajniranjem (tj.pokušava se iskoristiti što više
postojećeg)
 Potrebne nove funkcionalnosti možda se mogu KUPITI na
tržištu (ako se procjeni da je to isplativije nego razvijati ih
unutar kuće)
Stavljanje novog proizvoda na tržište
 Da bi se tako nešto postiglo potrebno je koristiti neke
opće prihvaćene načine izvedbe dijelova sustava,
bilo da su to sklopovski ili programski
 Upravo na tom načelu se zasniva uspjeh procesora
ARM na tržištu
 U nastavku ćemo objasniti zašto je to tako
Stvarni svijet-Ova predavanja: Što ih povezuje
 4/8/16/32/64 bitovni CPU ?



Neki procesori su ZANIMLJIVI (npr. nova Intel Penryn
mikroarhitektura)
Neki procesori su JEDNOSTAVNI (npr. Microchip PIC MCU)
Neki procesori se KORISTE
 Naš izbor je ARM (jer se KORISTI)


Ali “ARM” u stvari NIJE PROCESOR u onom obliku kako se
obično zamišlja procesor već predstavlja ideju pristupa
tržištu
Približno 70% tržišta 32 bitovnih procesora !!!!!!!
 Objasnimo što zapravo ARM radi na tržištu
Kratka povijest ARM-a
 Prva verzija ARM procesora razvijena je u Acorn
Computers Limited, Cambridge, Engleska, između 1983 i
1985. godine.
 U to vrijeme dominaciju na tržištu imali su 8 bitovni
mikroprocesori sa relativno kompleksnim skupom
instrukcija (CISC - Complex Instruction Set Computers).
 Samo nešto ranije, početkom 80-tih, u okviru tri gotovo
usporedna istraživačka projekta (IBM 801, Berkeley RISC
i Stanford MIPS) razvijena je potpuno nova arhitektura
procesora koja se zasniva na jednostavnim instrukcijama
koje se mogu izvoditi velikom brzinom (RISC -Reduced
Instruction Set Computers).
 RISC procesor razvijen na sveučilištu Berkeley u to
vrijeme pokazivao je izuzetne performanse u usporedbi sa
komercijalnim procesorima uz znatno jednostavniju (i
jeftiniju) sklopovsku izvedbu.
Prvi ARM procesor
 U to vrijeme razviti procesor zahtijevalo je milijunske
investicije, stotine projektanata i dugo vrijeme razvoja
što si je moglo priuštiti samo nekoliko najvećih firmi –
a Acorn nije spadao u tu grupu
 Projektanti u Acornu vidjeli su u RISC tipu arhitekture
mogućnost da stvore svoj procesor bez potrebe
dugogodišnjeg razvoja te velikog broja projektanata i
financijskih sredstava
 Tako je nastao prvi procesor ARM, čije ime je bila
skraćenica od Acorn RISC Machine.
 Prvi prototip procesora napravljen je od strane firme
VLSI Technology Inc. i isporučen Acornu u travnju
1985.
Advanced RISC Machines
 Kako je ova arhitektura postala izuzetno uspješna na
tržištu (zbog relativno niske cijene i dobrih
performansi) tako je i 1990. od dijela firme Acorn u
kojoj je stvoren prvi procesor ARM formirana nova
firma pod nazivom Advanced RISC Machines koja je
preuzela projekt širenja tržišta i daljnjeg razvoja ARM
arhitekture.
 Od tada i skraćenica imena procesora (ARM) mijenja
svoje značenje i postaje Advanced RISC Machine.
ARM arhitektura
 Jezgra ARM procesora je jako jednostavno u usporedbi s drugim
procesorima opće namjene što znaći da ga je moguće proizvesti sa
znatno manjim brojem tranzistora što ostavlja dosta slobodnog prostora
za druge periferije (DSP, FPU, Cache, MMU, AD DA, …)
 ARM ISA kao i arhitektura na razini digitalnih sklopova projektirani su
sa ciljem maksimalne uštede energije što je presudno u svim mobilnim
aplikacijama
 ARM arhitektura je modularna, jedina obavezna komponenta je
cjelobrojni (integer) cjevovod; sve ostale komponente su opcionalne
(DSP, FPU, Cache, MMU, AD DA, …) što daje veliku fleksibilnost u
projektiranju i izgradnji aplikacijski orijentiranih sklopova temeljenih na
ARMu.
 ARM procesori zauzimaju malo prostora, imaju malu potrošnju ali ipak
imaju veliku procesnu moć posebice za “embedded” aplikacije. Npr.
PVA255 XScale procesor na 400 MHz ima performanse ravne Pentium
II na 300 MHz ali troši pedeset puta manje energije..
Povijest ARM procesora
 1983, tvrtka Acorn Computers namjerava razviti




vlastiti 16-bit microprocessor za desktop računala
Dvije godine ranije istraživači na Berkeley-u radili su
na projektu RISC-a
Acorn je preuzeo RISC koncept i 1985 napravili su
prvi vlastiti 26-bit Acorn RISC Machine (ARM)
procesor, koji je ujedno bio i prvi komercijalni RISC.
Za izradu je trebalo manje od 25,000 transistora, a
performanse su usporedive s Intel 80286 procesorom
Ovo je bila prva verzija ARM v1
Povijest ARM procesora
 ARM v2 uvodi vezu sa koprocesorom.
 Naknadno se dodaje brza memorija u verziji ARM v3.
 Najznačajniji događaj za ARM je bio 1990 kada je
Apple odlučio koristiti ovaj procesor u Newton IPod.
 4ta generacija ARM jezgri izašla je 1996. Glavno
poboljšanje je podrška za Thumb 16-bit komprimirani
skup naredbi. One zauzimaju svega 40%
memorijskog prostora u usporedbi sa 32 bitovnim
kodom ali je manje efikasan.
 Najpoznatiji predstavnik ove porodice je ARM7TDMI
jezgra koja se koristi u većini Apple iPod player-a, a
temeljen je na praktički istom tro razinskom
cjevovodu kao i prvi ARM procesori iz 1985. i sadrži
svega 30.000 tranzistora.
Povijest ARM procesora
 1999, razvijena je 5ta generacija ARM arhitektura
koja je uvela digitalni procesor signala i Java byte
code ekstenziju u ARM skup naredbi.
 Najpopularnija implementacija ove generacije
procesora je Intel XScale koji se koristi u većini
ugradbenih uređaja većih zahtjeva, mrežni procesori,
mobiteli, smart-phones, i PDA.
 6ta generacija ARM procesora projektirana je 2001 i
uvodi SIMD proširenje skupa naredbi, poboljšani
skup naredbi za Thumb , TrustZone vizualizacijsku
tehnologiju i podršku za višeprocesorski rad
 Posljednja ARM v7 arhitektura proširuje SIMD skup
naredbi i poboljšava podršku za floating point.
Povijest ARM procesora
Ver.
Year
Features
Implementations
v1
1985
The first commercial RISC (26-bit)
ARM1
v2
1987
Coprocessor support
ARM2, ARM3
v3
1992
32-bit, MMU, 64-bit MAC
ARM6, ARM7
v4
1996
Thumb
ARM7TDMI, ARM8, ARM9TDMI,
StrongARM
v5
1999
DSP and Jazelle extensions
ARM10, XScale
v6
2001
SIMD, Thumb-2, Trust-Zone, multiprocessing
ARM11, ARM11 MPCore
v7
?
VFP-3
ARM Cortex
Tablica Povijest razvoja ARM arhitektura
ARM danas
 Od tada do danas procesor ARM doživljava brojna poboljšanja i
proširenja te su na tržištu prisutne razne generacije i varijante
ARM arhitekture.
 Danas je najnovija Arhitektura v.7 (porodica ARM Cortex)
 Još jedna od specifičnosti i izuzetnih karakteristika firme ARM je
u tome što je ona bila prva firma koja svoj cijeli poslovni model
zasniva na licenciranju arhitekture svojih procesora bez da ima
vlastite poluvodičke tvornice i bez da sama proizvodi procesore.
 Procesore zasnovane na ARM arhitekturi proizvode Intel,
Motorola, ST, Philips ... iako svi oni imaju i svoje vlastite
procesore
Što radi ARM
 Projektiranje ARHITEKTURA 32-bitovnih procesora i
sustava
 Licenciranje takvih sustava vodećim svjetskim
elektroničkim firmama
 Razvoj i partnerstvo u razvoju ALATA i USLUGA
namijenjenih razvoju ARM ARHITEKTURE
 Osnovna podloga su serije efikasnih 32-bitovnih
procesorskih jezgri koje rezultiraju u optimalnim
procesorima u pogledu cijene, performansi i ostalih
bitnih karakteristika
Projekt MP3
JTAG
port
Embedded trace
macrocell
Trace
port
ARM
720
64 kByte
ROM/Flash
64 kByte
SRAM
AHB wrapper
AHB wrapper
AHB wrapper
TIC
AHB
Auditor
Static
Memory
ROM/Flash/
SRAM
AHB
Decoder
AHB
Decoder
AAC
I/F
MMC
I/F
RTC
Module
Interrupt
Controller
PLL
Reset
PMU
LCD
Contoller
UART
With PDA
Timers
GPIO
Keypad I/F
Koraci...
 Korak 1: Izbor procesorske jezgre
Zahtjevi:





Performanse (na temelju analize
algoritma)
Potrošnja (ciljno trajanje baterije)
Veličina (zahtjevi tržišta)
Cijena (na temelju ciljane prodajne
cijene cijelog uređaja)
Arhitektura
 Za MP3 player gornje zahtjeve može
zadovoljiti npr. ARM720
Koraci...
 Korak 2: Definicija SoC (System on
Chip) infrastrukture
Zahtjevi
 Standard a ne neko unikatno
rješenje (moguća integracija s
 modulima drugih proizvođača)
 Pouzdanost (izbjegavanje
problema)
 Gornje zahtjeve za izabrani ARM
procesor zadovoljava AMBA Advanced Microcontroller Bus
Architecture
 AMBA opisuje načine povezivanja
komponenata u sustavu
ARM
720
AHB
Auditor
AHB wrapper
AHB
Decoder
AHB
Decoder
Koraci...
 Korak 3: Memorijski blokovi
Zahtjevi:




Gustoća, cijena,..
Kapacitet
Cijena
Prilagođenje pojedinom
proizvodnom procesu
 Moduli vanjskih partnera
proizvođača memorije
AHB
Auditor
ARM
720
64 kByte
ROM/Flash
64 kByte
SRAM
AHB wrapper
AHB wrapper
AHB wrapper
AHB
Decoder
AHB
Decoder
Koraci...
 Korak 4: Vanjski
sklopovi (što sve želimo
da korisnik ima)
TIC




Static
LCD, tipke
Memory
ROM/Flash/
SRAM
USB
Flash Card i/f
Timer, Interrupt,...
AHB
Auditor
ARM
720
64 kByte
ROM/Flash
64 kByte
SRAM
AHB wrapper
AHB wrapper
AHB wrapper
AHB
Decoder
AHB
Decoder
AAC
I/F
MMC
I/F
 •Izbor: Moduli raznih
RTC
Module
Interrupt
Controller
PARTNERA
PLL
Reset
PMU
LCD
Contoller
UART
With PDA
Timers
GPIO
Keypad I/F
Mogući partneri
Prednosti
 Dijelovi projekta koje ne možete efikasno
napraviti, mogu se pronaći na tržištu
 Ono u čemu ste Vi dobri MOŽETE PONUDITI
I DRUGIMA
 I Vi možete postati jedan od sudionika u
procesu !!!! (Ovo nije fraza već istina.
Projektiranje pojedinog IP modula ne zahtjeva
velike investicije pa tako gotovo svatko sa
dobrom idejom može izaći na SVJETSKO
tržište)
Performanse ARM arhitektura
Potrebna znanja
 Poznavanje mikroprocesora:


Arhitektura
Periferije







Memorija Flash/SRAM/SDRAM/Catch
Brojila
GPIO
UART
USB
A/D D/A
….
 Programiranje



ISA
Asembler
C/C++
 Razvojno okruženje
 Operacijski sustavi.
Primjer jednostavnog MCU-a
Flash
Eprom
A
D
MCU
Interface
D
A
Perilica rublja
DVD
Digitalni fotoaparat
Regulator asinkronog motora
Regulator asinkronog motora
Direct torque control
Vector control