Upload
dinhtruc
View
215
Download
0
Embed Size (px)
Citation preview
External Use
TM
Procesory ARM: moderní trendy
vývoje systémů a aplikací
aneb jak být neviditelný, ale všudypřítomný
2 6 . 1 1 . 2 0 1 5
Ing. Jiří Kotzian Ph.D | Systémový a aplikační inženýr
TM
External Use | 1
Agenda
• Představení
• Procesory ARM
• Procesor / Kontrolér / SoC
• Využití procesorů ARM ve Freescale
• Co je důležité
• Q & A & demo
TM
External Use | 3
Ing. Jiří Kotzian Ph.D
• Ve Freescale 5 let
• S Freescale produkty pracuji 15+ let
− HC12, HCS08, HCS12, i.MX3, PX, VF, i.MX6,7, (8)
• Kupson: vývojové oddělení
• VŠB-TUO: CPTI, K450
• Ve Freescale Systémový a aplikační inženýr
− MCU aplikační tým 2 roky
Power Architecture (PX family)
Tower system
− MPU aplikační tým 3-tí rok
Vybrid (core team member)
i.MX series (6DQ, DL/S, SL, SX, UL, 7D)
EMEA DRAM expert
• Education:
M.S.E.E. Measurement and control (Medical electronic),
Ph.D. Technical cybernetic
• Languages:
− Czech, English, German, Russian, Polish
• Publication:
57 professional publications and books (outside Freescale)
• Computer skills:
Asm/C/C++, UML and Rapid prototyping,
RTOS, Linux, QNX, MQX,
QT, eGUI,
Industrial busses, PCB design
• Organization skills:
Leading groups and research & development teams
More than 30 diploma works leader
• Other:
Multicultural and Multilanguage team cooperation
41 years, Married, 4 children.
Hobby: table tennis, skiing, bicycle, Cars, Gardening
TM
External Use | 4
Úvodní otázkaZnáte Freescale z běžného života?
Ne ?
Skvělé !
Znamená to, že děláme svou práci velmi dobře.
TM
External Use | 5
Freescale worldwide
Hoffman Estates, Illinois
Ed Bluestein, Austin, Texas
Chandler, Arizona
San Jose, California
Ridgeland, Mississippi
Novi, Michigan
HEADQUARTERS: Oak Hill, Austin, Texas
Parmer, Austin, Texas
Tempe, Arizona
East Kilbride, Glasgow,
Scotland, UKBucharest, Romania
Taipei, Taiwan
Techpoint, Singapore
Jalisco, Mexico
Petaling Jaya, Malaysia
Tokyo, Japan
Herzelia, Israel
Hyderabad, India
Noida, India
Bangalore, India
Hong Kong, New Territories
Toulouse, France
Gif-Sur-Yvette, France
Beijing, China
Pudong New Area, China
Chengdu, China
Suzhou, China
Shenzhen, China
Tianjin, China
Roznov pod Radhostem, Czech Republic
Brno, Czech Republic
Campinas, Brazil
Muenchen, Germany Moscow, Russia
Ottawa, Ontario
• 1952 -2003 Motorola (polovodičové oddělení)
• 2004 Freescale (Motorola MCU/MPU)
• Centrála v Austin, Texas, USA
• 18500+ pracovníků ve 20 zemích světa
• 16 pozice v Top 20 polovodičových firem
• Číslo 1 v Embedded MCU/MPU
• 6400 patentových sad
• www.freescale.com
TM
External Use | 7
ZamyšleníS osobními počítači přicházíme do styku denně, vědomě, při práci i
při zábavě. Je však mnoho dalších řídicích systémů, které nejsou
vidět – jsou vestavěné (embedded).
Jaký je podíl procesorů v oblasti osobních počítačů oproti celkovému počtu vyrobených procesorů/kontrolérůnápověda: To co je skryto je často mnohem důležitější.
Jsou požadavky na spolehlivost osobních počítačů stejné jako požadavky na spolehlivost ve vestavěných systémech?nápověda: co se stane když selže řídicí jednotka v autě?
Jaké jsou požadavky na rychlost a přesnost časování v osobních počítačích oproti vestavěným systémům?nápověda: co se stane když ABS zareaguje až za 1s popř. v jiných okamžicích?
TM
External Use | 8
OdpovědiKolem nás je mnoho zařízení které obsahují vestavěný řídicí systém s
mikroprocesorem či mikrokontrolérem.
> 90% všech vyrobených procesorů je nasazeno ve vestavěných řídicích systémech v různých formách.
Požadavky jsou definovány velmi přísnými normami SIL, ASIL,... Např.Pravděpodobnost selhání během hodiny 0.000000001
Odezva (latence) musí být dopředu známa a nesmí se měnit, časování musí mít definovánu nejistotu (jitter)
TM
External Use | 9
Freescale: Internet věcí (Internet Of Things)
• Návrh a výroba polovodičů
• Základní zaměření:
− Automotive
− Průmysl
− Komunikace
− Spotřební
• Produktové skupiny
− Mikrokontroléry
− Komunikační a multimediální procesory
− RF, analog a snímače
Advanced
Safety
Radar +
Vision
Infotainment
Traffic Monitoring
Security
Energy
MetersHome Hubs
Telehealth
Home Health
Monitors + Fitness
Connected
Appliances
Smart Energy
Grid
Digital Power
Conversion
Energy Management,
Wind + Solar
Human – Machine
InterfaceMachine – Machine
Industrial
Networking
Cloud
Computing
Metro Cells
Small Cells
Enterprise Gateways,
Switchers, Routers
Base Stations
Security
Networked
Printers
Data
Center
Connected
Farms
Mission: Making the world smarter place
TM
External Use | 12
Freescale: Nasazení produktů
• I.m Watch (i.MX233) – smartphone terminal
• GoPro HERO3+ Cameras, K20
TM
External Use | 13
Freescale: Nasazení produktů
• Garmin Forerunner 10, Kinetis K10
vzdálenost, rychlost, tep, kalorie
• Garmin Forerunner® 220|620, Kinetis K20
+ osobní asistent, vibrace při nedodržení plánu
TM
External Use | 14
Freescale: Nasazení produktů
• Nest Protect
• Kouř, oxid
uhelnatý
• Hlasové varování
• Kinetis K60, KL16
TM
External Use | 17
Freescale Rožnov pod Radhoštěm
• Celkem zaměstnanců 175
• Inženýrů 125
• Ph.D. poměr 26%
• Výborné renomé ve FSL
Auto
Actuator
Auto
Connect
RT SW Auto Quality Tests
Industrial
MC
Industrial
ConnectRT SW Ind
From Demo Code to Professional S/W
SPICE and ISO Focus
Automated Conformance and Functional Tests
Center of Excellence for Motor Control, Power Conversion, Metering
Application IP Generation and Maintenance
NPI Definition
70 engineers
45 engineers
10 engineers
• 1950 – Tesla factory založena v
Rožnově, narostla až na >10.000
zaměstnanců
• 1995 – Založena Motorola Laboratoř
• (10 inženýrů)
• 2000 – Technická podpora
• 2004 – Motorola SPS se stala
Freescalem
• 2005 – Zákaznická podpora
• 2009 – přidal se tým v Brně
• 2013 – téměř 200 zaměstnanců
(Rožnov + Brno)
TM
External Use | 18
Freescale podstata práce v Aplikační Laboratoři
• Freescale
− netvoří koncové zařízení
− dodává MCU/MPU/DSC
senzory,... (HW)
− dodává vývojové sady
(HW+SW)
− dodává potřebné SW
nástroje (TCP/IP, USB
stack,...)L2CAP
HCI Layer
RFCOMM BNEPSDP
OBEX
IrMC
TCS
Bluetooth
API
Profil
es
Applications
Data
IP
TCP
Data
Data
Contr
ol
Data
Data
Contr
ol
Data
Control OS
Transport Layer
Data
OS Specific
Interfaces
BMM
Audio
ArchitectureMPU/MCU/DSC
Hardware
Zákazník
Software
System ExpertiseSystem Engineering
Feedback & ExperienceCustomer Support & Customer Intimacy
TM
External Use | 20
Názvosloví
• Procesor (Processor)
• Jádro (Core)
• Kontrolér (Controller)
• Mikrokontrolér (Microcontroller)
• SoC
TM
External Use | 22
ARM
• ARM founded in November 1990. ARM Advanced
RISC Machines.− http://reds.heig-vd.ch/share/cours/reco/documents/thehistoryofthearmarchitecture.pdf
• ARM1 (1985) … ARMv8 in 2015 (první představení
architektury 2011)
• Neprodává silicon
• pouze licence (1100 licencí pro 300 společností)
• Nabízí nástroje (Tools)
− DSTREAM
− DS-5
TM
External Use | 23
Procesory ARM - profily
• ARMvx je architektura (instrukce)
− Load store
• ARM Cortex-Ax je produkt (procesor)
− Rozdílné pipeline – jak se instrukce zpracovávají
• Od ARMv7
− Cortex-A Application
MMU, NEON, Trustzone, virtualizace
− Cortex-R Real Time
MPU, nízká latence TCM, nemá virtuální paměť
− Cortex-M Microcontroller
Nízký počet gate, low power
Deterministické
TM
External Use | 24
Pipeline Cortex-M0+ to Cortex A72
• CM0+ 2 stage pipeline
• CA5 8-10 stages pipeline
TM
External Use | 27
Procesory ARM výkony
• https://en.wikipedia.org/wiki/List_of_ARM_microarchitectures
• Cortex-M0+ (ARMv6) 0.93 DMIPS/MHz 72MHz
• Cortex-M4 (ARMv7) 1.25 DMIPS/MHz 200MHz
• Cortex-A5 (ARMv7) 1.57 DMIPS/MHz 500MHz
• Cortex-A7 (ARMv7) 1.9 DMIPS/MHz 1GHz
• Cortex-A9 (ARMv7) 2.9 DMIPS/MHz 1.2GHz
• Cortex-A53 (ARMv8) 2.3 DMIPS/MHz 2.5GHz
• Cortex-A72 (ARMv8) >6.3 DMIPS/MHz 2.5GHz
• http://zenit.senecac.on.ca/wiki/index.php/Dhrystone_howto
• Dhrystone (Dhrystone VAX MIPS, 1757/s)
− Example
Microseconds for one run through Dhrystone: 0.8
Dhrystones per Second: 1333333.4
Using the formula: 1333333.4 / 1757 = 758.87 DMIPS
It runs on 400MHz -> 1.897 DMIPS/MHz
TM
External Use | 28
Architektury ARM srovnání
• http://www.arm.com/White_Background_PNG_Cortex-A7.png
• http://www.arm.com/Performance_Graph_A53_to_A7.jpg
• Výkon
• Spotřeba
• Cena
• Nástroje
TM
External Use | 29
Instrukční sady
• ARM 32- bit
• Thumb 16-bit (35% code density save, decrease some real performance)
• Thumb 2 16/32 – ARM výkon / Thumbhustota
− ARM pro přímý zápis
− Thumb 2 pro kompilátory
• VFP (Vectop floating point)
− Vyžaduje koprocesor
• NEON
− SIMD
− Media aplikace (kodeky)
• Jazelle
TM
External Use | 30
ARMv8
• http://www.arm.com/products/processors/instruction-set-architectures/index.php
• https://www.youtube.com/watch?v=7LqPJGnBPMM
• http://www.arm.com/university
TM
External Use | 32
ARMv8-A
• Dva stavy vykonávaní (execution states)
− AArch32
A32/T32
Nové instrukce
Tradiční model výjimek (exception model)
Virtuální adresy 32-bit registry
− AArch64
64 bitové registry X0-X30
Nové instrukce A64, fixní délka 32-bitů
• Včetně SIMD, floating point a crypto
Nový model výjimek
• EL0 least privileged, EL3 most privileged
• Secure state / non-secure state (Thrust zone)
Virtuální adresy 64-bit registry
• BTW: Cortex-M
− Thread mode (unprivileged) – app code
− Handler mode (privileged) – exception handler
TM
External Use | 34
Freescale & ARM
od
• Kinetis
− CM0+ QFN16 (0.39$)
k
• CoreIQ
− ažo 8xCA57 + CM4 (200$)
TM
External Use | 35
Kinetis
• Od KL03 CM0+ 48MHz
• KM 2x24b Sigma-delta
• Po KV5 CM7 220MHz
− 1MB Flash, 256kB RAM
TM
External Use | 36
Kinetis KL03
• CM0+ 48MHz
• 32kB Flash
• 8k RAM
• 12 bit ADC/DAC
• PWM
• I2C, SPI, UART
• GPIO
TM
External Use | 38
i.MX6Q
• 4xARM® Cortex®-A9 -1.2GHz
• 1 MB L2 cache / 32 KB I &D
• NEON SIMD media accelerator
• GPU 2D /3D
• 1080p 60fps encode/decode
• 1x64b DDR3 or 2x32 LPDDR2
• 2 x 4XGA (2048x1536)
• or 2 x [1080p + WXGA (1280x720)]
• USB, PCIe, 1Gb Eth
• …
• …
TM
External Use | 39
i.MX6SX
• 1x ARM® Cortex™-A9 up to 1 GHz
− 512 KB L2 cache / 32 KB instruction and data caches
− NEON SIMD media accelerator
• 1x ARM® Cortex™-M4 up to 200 MHz
− 16 KB instruction and data caches 64 KB TCM
− MPU and FPU
• GPU 2D/3D
• Camera Interface
− 20-bit parallel CMOS sensor interface
− NTSC/PAL analog video input interface
• PiXel Processing Pipeline (PXP)
− Image re-sizing, rotation, overlay and CSC
• DDR 16/32-bit DDR3(L) 16/32-bit LPDDR2 800
• 2x Gb Ethernet , PCIe 2.0 (1 lane), 3x USB 2.0, SD-MMC
• Multicore unit includes for multi-core isolation and sharing
• Resource Domain Controller (RDC)
• Secure Messaging Unit (MU)
• Hardware Semaphores
• High Assurance Boot, cryptographic cipher engines, random number generator, and tamper detection
TM
External Use | 41
S32V200 Advanced driver systems
• ASIL B
• Quad A53/1GHz
• Dual APEX-2
obrazový procesor
• 3D GPU Vivante
• 4MB on chip RAM
• -40C to 125C Tj
TM
External Use | 44
Využití 64-bit matematického koprocesoru CM0+ + MMAU x CM4+FPU
CM0+ w/oMMAU
CM0+ w/MMAU
CM4
1/(Rel Gates) 1.00 0.74 0.56
Rel Performance 1.00 2.69 1.76
1/(Rel Code Density) 1.00 1.40 0.98
1/(Rel Energy) 1.00 1.99 0.98
0.00
0.50
1.00
1.50
2.00
2.50
3.00
Rela
tiv
e F
acto
r, B
igg
er
is B
ett
er
Q0.48 Q15.48
X
Q0.24
LPF2
24-bit SD
ADC
kWh
Q0.24
Q0.48
Q0.24
Q0.24
24-bit SD
ADC
current
measurement
voltage
measurement
calculated active
energy
HPF
HPF
Q0.48
X2
Q0.24
RMS
Q0.48
Q0.24
24-bit SD ADC
current measurement
HPF
LPF1Q0.24
LPF1Q0.24
calculated RMS current
TM
External Use | 45
Použití více jádrových řešení
• 2 procesory na jedné
frekvenci jsou lepší než 1 na
dvojnásobné frekvenci
• Asymetrické architektury
• Rozložení čipu VFxxx
• Jádra ARM jsou jen malá
část čipu
• Důležité je jejich zapojení do
systému
A5
2.2DCU
3.95
GPU
1.45ANATOP
ANALOG
CCM
USB+ENET
2.2
VIU+ALABAOCRE
ANACATUM
0.94
DDR
0.96SRAM
SRAM
S
R
A
M
M
4
PD0
R
A
M
AFE
SNVS
DRY
ICE
EFU
SE
ANADIGADC
ADC
DAC DAC
POST
PMC
AFE DIGITAL
Place USB pins
On this side in this
notch areaIRC
EXTAL/
XTAL
TM
External Use | 47
Limity vnitřních pamětí a použití cache
• VFxxx Cortex-M4
• Vnitřní paměti
− TCM
− RAM
• Více v AN4947
TM
External Use | 49
Zlepšení grafického výkonu i.MX6Q+
• Updated 3D, 2D
and OpenVG
GPU’s
• New pre-fetch and
resolve modules to
improve efficiency
• Fabric
modifications to
improve memory
bandwidth
• Pin compatible with
i.MX6Dual/6Quad
0
5
10
15
20
25
30
35
40
Aquarium Egypt
MX6DQ
0
10
20
30
40
50
60
70
Model Actual Silicon
MX6DQ
MX6DQPlus
Test case description IPU fetches 2x 1080p 32bit @60Hz
images for display. IPU PRE pre-fetch is enabled in i.MX
6DP/6QP GPU3D off screen loop “3D
read_write_render” GPU2D off screen loop 1080p 2D bitblit CPU doing memory copy
Higher DRAM Bus Utilization
indicates better performance
TM
External Use | 51
i.MX6 přehled zabezpečení
i.MX
ARM
CPU
ARM
CPUROM
(High Assurance
Boot)
ROM
(High Assurance
Boot)
Accelerator
(Cipher, Hash,
RNG)
Accelerator
(Cipher, Hash,
RNG)
Electrical Fuses
(keys, security levels)
Electrical Fuses
(keys, security levels)
Secure
RAM
Secure
RAM
Tamper
Detect
Tamper
Detect
Secure
Clock
Secure
Clock
Secure
Debug
Secure
Debug
External MemoryExternal Memory
Erase
JTAG
SW alarm
Debug
alarm
GPIO
alarm
HW FirewallHW Firewall HW FirewallHW Firewall HW FirewallHW Firewall
DMA
Master
DMA
Master
Peripheral
Slave
Peripheral
Slave
HW FirewallHW Firewall
HW FirewallHW Firewall
TM
External Use | 52
CSU Firewall
Master’s Privilege
(User/Sprv; TZ/non-TZ)
“What slaves can be accessed”
Slave’s Access Permissions
(TZ/non-TZ; Read/Write etc.)
“What Masters can access”
CS
U
TM
External Use | 53
High Assurance Boot – Signed Boot Image
Code signing using private key Authentication using public key
Private
Key
SW Image
Sign
(RSA)
Hash
Verify
(RSA)
Compare
Hash
SW Image +
Signature
Public
Key
X
Run OS
Reload Image
Secured Environment
SW Image +
Signature
OTP
SRK
TM
External Use | 54
High Assurance Boot – Encrypted Boot Image
Secret
Key
SW Image
Encrypt
(AES)Decrypt
(AES)
Encrypted
SW Image
CAAM
(AES)
Key B
lob
OTP
Key
Key
Blo
b
Encrypted
SW Image
Decrypt
(AES)OTP
Key
Secret
Key
Manufacturing
Device BootBuild Environment
Decrypted
SW Image
Encryption using secret key Decryption using secret key
TM
External Use | 57
The Freescale Cup 2016
• Veškeré informace o Freescale cup jsou na komunitě
− https://community.freescale.com/groups/tfc-emea
• Registrace je do 30.11.2015
− The Freescale Cup EMEA Challenge Edition 2015/2016Registration page for both High School and University Challenges
• Pravidla
− https://community.freescale.com/docs/DOC-93225
• Poster
− https://community.freescale.com/docs/DOC-106162
• obrázky z celosvětového finále. Kvalifikace se ponese ve skromnějším duchu a dráha bude menší.
− https://www.youtube.com/watch?v=TkpPYjtbaeQ
− https://www.youtube.com/watch?v=HiC5wzOs2AM
TM
External Use | 58
Freescale Cup 2013 - Univerzitní finále
• hudební salónek, 11 studentů – vítězové postupovali do EMEA Paris
1. Adam Helekal (Blue Dragon),
2. 2.Tomáš Dočekal, Matěj Golembiovský a Jan Kotyza (BT)
TM
External Use | 59
Freescale Cup 2013 – EMEA finále Paris
• 27 univerzitních týmů z České republiky, Francie, Itálie, Německa, Polska, Rumunska, Ruska, Slovenska, Ukrajiny a Velké Británie
• Blue Dragon 8. místo,
TM
External Use | 60
Freescale Cup 2013 – EMEA finále Paris
• Doplňující závody
• Blue Dragon - elektronický kompas 2. místo !
• https://community.freescale.com/groups/tfc-emea
TM
External Use | 62
Diskuse a demo
• Demo
− UDOO NEO,Humming board, 6UL SDK, 6Q SDB, …
• Děkuji za pozornost
• V případě zájmu o spolupráci: Bd. Mgr. Práce, brigáda nebo zaměstnání:
• Nashledanou v NXP – po sloučení 3(4) největší výrobce polovodičů na světě
TM
© 2014 Freescale Semiconductor, Inc. | External Use
www.Freescale.com