Cours9Microprocesseurs ARM

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 9

19/03/2015

Cours 9 Architectures &


Systèmes

Jalil Boukhobza
LC 206
[email protected]
02 98 01 69 73
Source: La majorité des
schémas et Figures ont été
prises des présentations de
19/03/2015 Jalil Boukhobza l’ARM Université program.
1

Microprocesseur (CPU)
 Un cœur de processeur supportant le chargement, décodage
et exécution des instructions
 Peut être utilisé pour du calcul généraliste être utilisé avec
une (ou des) mémoires et des périphériques d’E/S

Chargeur d’Instruction Interface mémoire Vers la


mémoire
décodeur Instruction

Bancs de registres

ALU
Microprocesseur
19/03/2015 Jalil Boukhobza 2

1
19/03/2015

Microcontroleurs (MCU)
 Contient
 un processeur
 Plusieurs mémoires
 E/S numériques et analogiques
 Autres périphériques
 Utilisé pour du contrôle (applications embarqués)
Mémoire Mémoire
Microprocesseur
de programme de données

System Bus

I/O I/O Timer autre

19/03/2015 Jalil Boukhobza Microcontroleur 3

Système embarqué typique


Couche logicielle

FPGA/
Mémoire(s)
ASIC/DSP

Conversion Conversion
détecteur
A/N CPU N/A
Actionneur

Interface Système
humaine Port de auxiliaire
diagnostic

Environnement
extérieur
J.Boukhobza - AO 4

2
19/03/2015

Système embarqué
« typique » (2)
 Capteurs (interrupteurs, etc.) couplés à des convertisseurs
analogique/numérique.
 Actionneurs (LED, etc.) couplés à des convertisseurs
numérique/analogique.
 Calculateur (processeur embarqué et ses E/S).
 Possibilité d’avoir un/des FPGAs et/ou ASICs et/ou DSP pour jouer
le rôle de coprocesseurs (accélération matérielle)

 Les systèmes embarqués doivent prendre en compte:


 Variation des températures
 Vibrations et chocs
 Variations des alimentations
 Interférences RF
 Corrosion
 Eau, feu, radiation
 …

J.Boukhobza - AO 5

Exemple: calculateur d’un vélo


 Fonctions:
 Mesure de vitesse et de distance
 Contraintes:
 Taille
 Coût
 Consommation
 Poids
 Entrées:
 Vitesse de rotation de la roue et géométrie
 Mode
 Sortie:
 Affichage
 Utilisation de microcontrôleur basse perf.:8 bits, 10 MIPS

19/03/2015 Jalil Boukhobza 6

3
19/03/2015

Systèmes embarqués
(source ARM Univ Prog.)
Implementation Design Unit Upgrades Size Weight Power System
Cost Cost & Bug Speed
Fixes
Dedicated Hardware

Discrete Logic low mid hard large high ? very fast

ASIC high very hard tiny - 1 die very low low extremely
($500K/ low fast
mask
set)
Programmable low to mid easy small low medium to very fast
logic – FPGA, mid high
PLD

Microprocessor + low to mid easy small to low to medium moderate


memory + mid med. moderate
Software Running on
Generic Hardware

peripherals

Microcontroller low mid to easy small low medium slow to


(int. memory & low moderate
peripherals)

Embedded
19/03/2015PC low high easy Jalil Boukhobza
medium moderate to medium to fast 7
high high

Exemple d’une carte mbed


(utilisée en TP)
 Mbed LPC 1768:
 Un MCU NXP LPC 1768, 32-bit ARM® Cortex™-M3 cadencé à
96MHz
 32 KO de RAM, 512 KO de mémoire flash
 Plusieurs périphériques d’E/S
 USB
 Ethernet
 CAN
 SPI
 I2C
 ADC
 DAC
 PWM
 GPIO
 UART
19/03/2015 Jalil Boukhobza 8

4
19/03/2015

Architecture de la carte mbed


LPC1768 USB

4.5 – 9 V in (Vin)
0V (Vgnd) Power reset Interface Flash Memory
3.3V out (Vout) Management Microcontroller 16 Mbit
5V USB out (Vu)

3.3V internal power supply reset UART JTAG

External signal Ethernet


Analog/Digital LPC1768
connections PHY (Physical
IO Interfaces Microcontroller
Interface)

mbed LPC1768 Board

19/03/2015 Jalil Boukhobza 9

 Interface du microcontrôleur
 Fournit une interface USB pour les périphériques exterieurs
 Le programme téléchargé est enregistré sur la mémoire flash
 Après le reset, le LPC 1768 lit le dernier fichier de la mémoire
flash et le transfère au microcontrôleur via UART ou JTAG
 Mémoire flash
 Utilisée pour la sauvegarde de programme: 2 MO
 Gestion de l’énergie
 Plusieurs sources d’énergie possible (voltage variant de 3.3 à 9V)
 Interface Ethernet
 Permet la connexion à internet

19/03/2015 Jalil Boukhobza 10

5
19/03/2015

Architecture du MCU NXP


mbed LPC1768
Up to 64 KB Up to 512KB Test/ Nested CPU PLL
Trace
SRAM FLASH Debug NVIC
Brown Out Detect
SRAM FLASH ARM Cortex-M3
MPU
Controller Accelerator Core Power On Reset

Multi-layer ARM AHB Matrix

Ethernet MAC DMA USB Host/OTG/D PHY PLL DMA GP DMA

3 x I2C 3x
I2S
4× UARTs 2x
FM+ SSP/SPI RS485/IrDA/Modem CAN2.0B

ARM Advanced Peripheral Bus (APB)

12-bit/8-ch 10-bit 4 × 32-bit Motor Quad Encoder


ADC DAC Timers Control PWM Interface
19/03/2015 Jalil Boukhobza 11

NXP LPC1768
 Cortex-M3 MCU pour applications embarquées
 Consommation énergétique faible
 Fonctionnement typique à 100MHz
 512KO de flash et 64 KO de mémoire de données (SRAM)
 Une variété d’interfaces d’E/S: Ethernet, USB, DMA, UART,
CAN, ...
 Applications typiques:
 Systèmes d’alarmes
 Contrôle moteur
 Electroménager
 ... NXP LPC1768
MCU

19/03/2015 Jalil Boukhobza 12

6
19/03/2015

NXP LPC1768 (2)


 SPI: contrôleur d’E/S série SPI
 Serial Peripheral Interface est une interface série permettant de
gérer plusieurs maitres et esclaves connectés à un bus donné
 LPC1768 supporte un débit SPI max. de 12.5 Mbit/s
 I2C: contrôleur d’E/S de bus série
 Un bus bi directionnel de contrôle inter circuit intégrés (IC,
puces) avec seulement 2 files, une ligne pour l’horloge (SCL) et
une autre pour les données (SDA)
 Les 2 contrôleurs I2C ont des débits allant jusqu’à 400kbit/s
 Pulse Width Modulator (PWM)
 Une technique de modulation utilisée pour moduler la largeur
des impulsions pour le contrôle de l’alimentation des
périphériques (exemple: moteurs)

19/03/2015 PWM est basé sur des timers et compteurs.
Jalil Boukhobza 13

 UARTs: Universal Asynchronous Receiver/Transmitter


 Support de 4 interfaces UART
 Débit max de 6.25Mbit/s
 2 mémoires FIFO d’envoi et de réception de 8 octets
 Contrôleur CAN: Controller Area Network
 Utilisée pour le contrôle temps réel distribué (par exemple,
applications automobiles)
 Le contrôleur CAN peut supporter plusieurs bus CAN
simultanément dans lesquels les périphériques peuvent être
utilisés comme routeur, gateway, ou commutateur dans une
application industrielle ou automobile.

19/03/2015 Jalil Boukhobza 14

7
19/03/2015

 Contrôleur ethernet
 Fournit une interface pour l’interface ethernet de la carte
 Contient un Ethernet MAC (Media Access Control) de 10
ou 100Mbit/s
 Interface USB
 Le contrôler USB est disponible comme périphérique,
hote ou OTG (On The Go)
 Un bus à 4 files supportant la comm. Entre un hôte et
jusqu’à 127 périphériques
 Permet un échange de donnée de 12Mbit/s avec un
contrôle USB de l’hôte

19/03/2015 Jalil Boukhobza 15

 ADC 12 bits
 Convertisseur analogique/numérique (ADC) avec 8
canaux et support DMA
 Taux de conversion de 200KHz
 DAC 10 bits
 Convertisseur numérique/analogique
 Unité de protection mémoire (MPU)
 Protection des données critiques dans une application
 Sépare la mémoire en plusieurs section permettant une
meilleure protection

19/03/2015 Jalil Boukhobza 16

8
19/03/2015

 Nested Vectored Interrupt Controller (NVIC)


 Permet une latence d’interruption réduite et une gestion
des files d’interruptions
 Contrôleur Direct Access Memory (DMA)
 Le DMA permet à certains périphériques d’accéder à la
mémoire sans passer par le processeur
 GPDMA (General Purpose DMA) permet les transactions
périphérique/mémoire, mémoire/périphérique,
périphérique/périphérique, mémoire/mémoire

19/03/2015 Jalil Boukhobza 17

Quelques liens
 mbed NXP LPC1768 Schematic
 http://mbed.org/media/uploads/chris/mbed-005.1.pdf
 mbed NXP LPC1768 Microcontroller Flyer
 http://www.nxp.com/documents/leaflet/LPC1768.pdf
 Explore the mbed platform
 http://mbed.org/explore/
 NXP LPC176x MCU
 NXP LPC1768 Homepage
 http://www.nxp.com/products/microcontrollers/cortex_m3/LPC1768FBD100.html
 NXP LPC176x User Manual
 http://www.nxp.com/documents/user_manual/UM10360.pdf
 NXP LPC176x Data Sheet
 http://www.nxp.com/documents/data_sheet/LPC1769_68_67_66_65_64_63.pdf

19/03/2015 Jalil Boukhobza 18

Vous aimerez peut-être aussi