Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

ARM tanfolyam 1. előadás.

Hasonló előadás


Az előadások a következő témára: "ARM tanfolyam 1. előadás."— Előadás másolata:

1 ARM tanfolyam 1. előadás

2 Történeti kitekintés ARM konzorcium
Architektúrákat tervez és licenszel, de nem gyárt NXP, ATMEL, ST, EnergyMicro, TI, Apple … Manapság a 32bites mikrovezérlők több mint 90%-a ARM alapú - Hatékony architektúra Olcsó A buszrendszer jól kidolgozott Perifériakészlet Spec utasításkészletek

3 Az ARM architektúra RISC tulajdonságok Load/store architektúra
Csak szóhatárhoz illeszkedő(aligned) memória hozzáférés Ortogonális utasítások (minden címzési mód egységes) Nagy (31x31 bit) regiszterblokkok Egyszerű 32 bites utasítások 1 utasítás 1 órajelperiódus (pipeline)

4 Az ARM architektúra Egyedi ARM jellemzők
Utasítások feltételes végrehajthatósága Megadható hogy az utasítás állítsa-e a flageket Barrel shifter (1-32bit eltolás) Sok magasszintű nyelveket támogató címzési mód Többféle megszakítás típus

5 ARM családok ARM7TDMI ARM9TDMI/ARM9JE ARM11TDMI
Thumb+Debug+Multiplier+ICE Thumb utasításkészlet bevezetése (16 bit korlátozásokkal) ARM9TDMI/ARM9JE Jazelle technológia (8 bites Java byte code HW támogatása) MMU (OS támogatás, linux) cache (8k/16k) ARM11TDMI Thumb2 utasításkészlet (16 bit és 32 bit vegyesen, korlátozások nélkül) NEON technológia, SIMD utasítások (DSP migráció, MPEG-4, JPEG) VFP (Vector Floating Point) lebegőpontos regiszterek, ARM CortexM/R/A sorozat

6 Betűszavak feloldása Mit tudnak az egyes magok?
T - Thumb architecture extension D - Core has debug extensions M - Core has enhanced multiplier I - Core has EmbeddedICE Macrocell Extension E - Core has Enhanced DSP instructions J - Core has Jazelle Java Byte code HW acceleration S - synthesiable Core

7 Cortex család A: Application R: Real-time M: Microcontroller
High-end alkalmazások (tablet, mobil, TV stb) MMU, OS támogatás R: Real-time Valósidejű alkalmazások M: Microcontroller Low cost, kisebb teljesítményű

8 Thumb mód Sokszor az adatbusz 16bit szélességű, ezért feleslegesek a 32bites operandusok A kódsűrűség növelése érdekében az utasítások és az adat bitszáma 16 bitre csökkenthetű Hátrány: bizonyos utasítások paraméterezhetősége csökken pl: feltételes utasításvégrehajtás, feltételes ugró utasítások

9 Thumb-2 A Thumb mód javítása
Keverten találhatók 16 és 32 bites utasítások Csak azon utasítások hosszát csökkentik, ahol veszteségmentesen megtehető

10 VFP Vector floating point
Egyszeres illetve dupla pontosságú lebegőpontos számábrázolás Mobil és Tablet piaci alkalmazások egyre növekvő számítási igénye követelte meg Később a NEON technológia váltotta fel

11 NEON DSP jellegű kiegészítés SIMD műveletek támogatása
Kép és videófeldolgozási algoritmusok 64 és 128 bites kombinált regiszterkészlet

12 Jazelle A JAVA bytekód utasításszintű támogatása
A JAVA virtuális gép részleges hardveres megvalósítása Mobil és PDA piac igényelte

13 Az előbbi technológiák összefoglalása

14 AMBA busz hiearchia

15 Cortex M széria M: mikrovezérlős feladatokra Pipeline Opcionális:
Systick timer MMU

16 Cortex M0 Cortex M3 Cortex M4 ARMv6-M 3 lépcsős pipeline
Hiányos Thumb és Thumb2 utasításkészlet Szorzó M0+ 2 lépcsős pipeline MPU (opcionális) Cortex M3 ARMv7-M 3 lépcsős pipeline Elágazás becslés Teljes Thumb/Thumb2 MPU (opc.) Garantált IT késleltés (12cikl) Szorzó Cortex M4 ARMv7E-M DSP utasítások MPU (opc) FPU (opc)

17 Egy CortexM3 MCU felépítése
(LPC17xx) Buszmátrix AHB busz APB busz

18 Memória térkép (LPC17xx)

19 Memória térkép A kódolás megkezdése előtt ismerni kell! Ezzel lehet kiválasztani hogy milyen mikrovezérlőt raktál a panelba

20 Órajel előállítás (STM32F103)

21 Órajel konfigurálás (STM32F103)
Ezen kívül a perifériáknak órajel adás, de azt majd máskor...

22 GPIO port felépítése (STM32)

23 GPIO funkciók

24 Fejlesztőkörnyezet ARM-GCC! Atollic True Studio (méretkorlát) KEIL ARM
Mentor graphics: Codesourcery G++ Lite Eclipse CDT Eclipse ARM plugin Atollic True Studio (méretkorlát) KEIL ARM Crossworks

25 CMSIS Cortex Microcontroller Software Interface standard
- Könnyebb használat, és felkonfigurálás - Nagyobb kódméret - Lassabb futás - Hibák lehetnek

26 CMSIS minták

27 Kód feltöltése,debug Feltöltés: - Bootloader (CAN, USB, UART)
Debuggolás - OpenOCD (FT2232) - Gyártó specifikus eszköz (STLinkV2)

28 Köszönjük a figyelmet!


Letölteni ppt "ARM tanfolyam 1. előadás."

Hasonló előadás


Google Hirdetések