SlideShare une entreprise Scribd logo
Chap 4 : Systemes sur puces : Reseaux sur
puce « NoC », Interruptions « NVIC », Timers
Mustapha Hamdi mfhamdi@gmail.com
IMI5 Trimestre1 2013-2014
Page  2
Systemes sur puces : Reseaux sur puce « NoC »,
Interruptions « NVIC », Timers
Réseaux sur puce « NoC »
Exynos 5 dual de samsung
Page  3
Systemes sur puces : Reseaux sur puce
« NoC », Interruptions « NVIC », Timers
Réseaux sur puce
Efficacité accrue au niveau des communications => solutions à
base de réseaux sur puce (Networks on Chip, NoC) *
 Infrastructures de communication configurables
 Caractéristiques proches de celles des réseaux : topologie,
technique de commutation, algorithme de routage,…
 Mais avec des spécificités : taille, consommation, fiabilité,
…
YOUR LOGO
Page  4
Qu'est-ce qu'un NoC ?
• Un réseau d'interconnexion relie des routeurs ou switches, auxquels sont
connectées les IP
• Diverses topologies peuvent être utilisées, souvent régulières
• On retrouve classiquement une partie des couches du modèle OSI
(surtout au niveau des couches basses)
Systemes sur puces : Reseaux sur puce
« NoC », Interruptions « NVIC », Timers
Page  5
Systemes sur puces : Reseaux sur puce
« NoC », Interruptions « NVIC », Timers
Systemes sur puces : Reseaux sur puce
« NoC », Interruptions « NVIC », Timers
Page  6
Bus : ligne de communication reliant les différents composants, ou le SoC et ses
périphériques
mustapha.hamdi@insat.rnu.tn
YOUR LOGO
Page  7
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SOC: BCM2835 Block Diagram
ARM1176JZ
Réseaux sur puce :Network On chip NoC:
Page  8
Bus pour systèmes embarqués:
Bus AMBA: Advanced Microcontroller Bus Architecture
Conçu par ARM
Permet de simplifier
l’integration au niveau
système.
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
mustapha.hamdi@insat.rnu.tn
Page  9
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Advanced High-performance Bus (AHB) :
Bus système rapide, synchrone, multimaître..
Advanced System Bus (ASB) :
AMBA ASB une alternative au système AHB , utilisé dans les cas
ou les hautes performances du bus AHB ne sont pas
nécessaires.
Advanced Peripheral Bus (APB)
APB (Advanced Peripheral Bus) : bus périphérique, plus lent et
de plus faible consommation (pour périphériques lents),
synchrone, maître unique..
mustapha.hamdi@insat.rnu.tn
Page  10
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Exemple :
mustapha.hamdi@insat.rnu.tn
Page  11
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
AHB1ENR 32b
OSPEEDER 32b
MODER 32b
IDR/ODR 16
GPIOx
mustapha.hamdi@insat.rnu.tn
Page  12
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Ports GPIO et Bus ARM:
RM0090, chapter 6.3, Fig 13
mustapha.hamdi@insat.rnu.tn
Page  13
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
1<<00
*~(3<<2*00)
*~(3<<2*00)
Data=GPIOA&(1<<0)
GPIOA
pin0
pin15
Mode input pour pin0
Frequ = 2 Mhz
Masque , data:(0/1)
DM00031020.pdf
Page  14
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
|=(1<<3)
|=(2<<2*15)
|=(1<<2*15)
|=(1<<15)
GPIOD
pin0
pin15
Mode output
Fréq=50MHz
Pin 15=1
Page  15
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
|=(1<<3)
…..
…..
….
GPIOD
pin0
Pin15,14
Mode output
fpin15=50MHz,Fpin14=100
Pin 15=1, pin14=0
Page  16
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
|=(1<<3)
|=(2<<15*2)+(3<<14*2)
|=(1<<15*2)+(1<<14*2)
|=(1<<15)+(0<<14)
GPIOD
pin0
Pin15,14
Mode output
fpin15=50MHz,Fpin14=100
Pin 15=1, pin14=0
Page  17
DAC
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Fig. 64, RM0090, page 431
Page  18
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
APB1ENR
MODER
CR
DHR12R1/R2
GPIOD
pin0Pin 5, 4
DAC control reg
Port/pin pour sortie
Data holding register 1 et 2
DM00031020.pdf p172
Page  19
Etude de cas
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
|=0x20000000
|=111100000000
|=0x10001
DHR12R1/R2
GPIOD
pin0Pin 5, 4
both channels ON; activation
Port4/pin5 pour sortie
(3<<2*4)+(3<<2*5)
3: analog output
Données à convertir
Page  20
DAC
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Groupe Timer Fmax 84 mhz via APB1
Groupe Timer Fmax 168 mhz via APB2
Page  23
Bus pour systèmes embarqués:
Bus AMBA: Advanced Microcontroller Bus Architecture
Conçu par ARM
Permet de simplifier
l’integration au niveau
système.
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Page  24
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Advanced High-performance Bus (AHB) :
Bus système rapide, synchrone, multimaître..
Advanced System Bus (ASB) :
AMBA ASB une alternative au système AHB , utilisé dans les cas
ou les hautes performances du bus AHB ne sont pas
nécessaires.
Advanced Peripheral Bus (APB)
APB (Advanced Peripheral Bus) : bus périphérique, plus lent et
de plus faible consommation (pour périphériques lents),
synchrone, maître unique..
mustapha.hamdi@insat.rnu.tn
Page  25
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Exemple :
mustapha.hamdi@insat.rnu.tn
Page  26
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Exemple :
mustapha.hamdi@insat.rnu.tn
Page  27
Etude de cas : BUS AHB1 pour GPIOA
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
AHB1ENR 32b
OSPEEDER 32b
MODER 32b
IDR/ODR 16
GPIOx
mustapha.hamdi@insat.rnu.tn
Page  28
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
Page 178, DM00031020.pdf
Etude de cas : BUS AHB1 pour GPIOA
mustapha.hamdi@insat.rnu.tn
Page  29
Etude de cas : BUS AHB1 pour GPIOA
Systemes sur puces : Réseaux sur puce
« NoC », Interruptions « NVIC », Timers
SoC stm32f407vg:
Bus AHB, GPIO, DAC
1<<00
*~(3<<2*00)
*~(3<<2*00)
Data=GPIOA&(1<<0)
GPIOA
pin0
pin15
Mode input pour pin0
Frequ = 2 Mhz
Masque , data:(0/1)
DM00031020.pdf
Page  30
Etude de cas: Bus APB1 pour Timer2
BUS ARM
SoC stm32f407vg:
Bus AHB, GPIO, DAC
APB1ENR
MODER
CR
DHR12R1/R2
GPIOD
pin0Pin 5, 4
DAC control reg
Port/pin pour sortie
Data holding register 1 et 2
DM00031020.pdf p172
Page  31
BUS ARM
TIMER2:
RCC->APB1ENR |= 0x01; // Clock for Timer2
Page 172, DM00031020.pdf
Page  32
Etude de cas: Bus APB1 pour Timer2
BUS ARM
SoC stm32f407vg:
Bus AHB, GPIO, DAC
RCC->APB1ENR |= 0x01;
MODER
CR
DHR12R1/R2
GPIOD
pin0Pin 5, 4
DAC control reg
Port/pin pour sortie
Data holding register 1 et 2
DM00031020.pdf p172
mustapha.hamdi@insat.rnu.tn
Page  33
Les TIMERS
Les TIMERS
8 Timers DM00037051.pdf, Table 3, p.29
Groupe Timer Fmax
84 mhz via APB1
Groupe Timer Fmax
168 mhz via APB2
mustapha.hamdi@insat.rnu.tn
Page  34
Les TIMERS
Les TIMERS
8 Timers DM00037051.pdf, Table 3, p.29
4 sorties
MLI
Quels PIN ?
AF
mustapha.hamdi@insat.rnu.tn
Page  35
Les TIMERS
Alternates functions
RM0090, chapter 6.3, Fig 13
mustapha.hamdi@insat.rnu.tn
Page  36
Les TIMERS
Alternates functions:
AF1: TIM1/TIM2, AF2 TIM3..5, AF9: can …
16 AF sur chaque pin, la configuration par 4 bits via aux reg AFRL
et AFRH
Page  37
Les TIMERS
Alternates functions AFRL
TIM3..5
0x2 pour configure le
TIM3 et TIM4
Guide DM00031020.pdf P283
Page  38
Les TIMERS
Alternates functions
AFRL pour configurer les pins de 0 à 7
AFRH pour configurer les pins de 8 à 15
Les Timer 3 et 4 à utiliser ici, sont
connectés à quel pin ?
TIM3: PC6 ..9
TIM4: PD12..15
mustapha.hamdi@insat.rnu.tn
Page  39
Les TIMERS
Alternates functions
Registre AFR[1]: AFH, pin 0->7
Registre AFR[0]: AFL, pin 8->15
Exemple 4 sorties de TIM3 comme AF via au port C :
GPIOC->AFR[0] |=(2<<4*6)+(2<<4*7); // en hexa 0x22000000
GPIOC->AFR[1] [=(2<<4*0)+;(2<<4*1); //pin 8et9 : les 2 premiers bits
de AFH en hexa : 0x00000022
Comment configure les 4 Sorties de TIM4 comme AF via au port D:
GPIOD->AFR[0] |= ??
Chaque pin est configurable par 4 bits
mustapha.hamdi@insat.rnu.tn
Page  40
Les TIMERS
Alternates functions
TIME
R
TIM3 (4
chaines)
TIM4 (4
chaines)
ADC1
input
DAC
GPIO PC6->PC9 PD12->15 PA0->
PA7
PA4,
PA5
“Voir outil Cube MX”
Registre AFR[1]: AFH, pin 0->7
Registre AFR[0]: AFL, pin 8->15
Exemple 4 sorties de TIM3 comme AF via au port C :
GPIOC->AFR[0] |=0x22000000;
GPIOC->AFR[1] [=0x00000022;
Exemple 4 Sorties de TIM4 comme AF via au port D:
GPIOD->AFR[0] |= ??
Chaque pin est configurable par 4 bits
mustapha.hamdi@insat.rnu.tn
Page  41
Les TIMERS
Etude de cas: MLI via TIMER 3
mustapha.hamdi@insat.rnu.tn
Page  42
Les TIMERS
Etude de cas: MLI via TIMER 3
Mustapha.hamdi@insat.rnu.tn
Page  43
Les TIMERS
Etude de cas: MLI via TIMER 3
ccr1
ccr3
Page  44
Les TIMERS
Etude de cas: MLI via TIMER 4
TIM4 connecté aux pins PD12…PD15 : LEDS
Timer4 en mode PWM à largeur d’impulsion variable
Proposer une solution pour rendre la L.I variable
Page  45
Les interruptions
Fonctionnement des interruptions
• NVIC : Nested Vectored Interrupt Controller
• Gère les priorités entre interruptions
• Gère la sauvegarde/restauration des registres
• Le tout de façon optimisée (tail chaining, stack pop pre-emption,
late arrival)
• Le fabriquant du micro-contrôleur peut y greffer ses
interruptions (ex : UART, DMA, EXTI), le cœur ayant aussi ses
propres interruptions (ex : Hard Fault)
Mustapha.hamdi@insat.rnu.tn
Page  46
Les interruptions
Sources d’interruptions
• GPIO
• Périphériques autres pour
réveiller le cœur
• Ethernet
• USB OTG
• Horloge RTC
Mustapha.hamdi@insat.rnu.tn
Page  47
Les interruptions
Etude de cas: Interruption par Timer 5
Le processeur genere deux impulsions dans le port E pedant chaque
interruption.
Page  48
Les interruptions
Etude de cas: Interruption par Timer 5
But : Interruption periodique chaque 1 ms pour générer deux
impulsions
Solution?
Mustapha.hamdi@insat.rnu.tn
Page  49
Les interruptions
Mustapha.hamdi@insat.rnu.tn
Page  50
Les interruptions
Deux impulsions chaque 1 ms, l’interruption prend ~3.5us.
Chaque impulsion sur le port PE08 prend ~0.5 us
Mustapha.hamdi@insat.rnu.tn
~3.5us
~0.5 us
Page  51
Les interruptions
Clignotement de la led
Chaque 100ms
Mustapha.hamdi@insat.rnu.tn
Page  52
Les interruptions
Mustapha.hamdi@insat.rnu.tn
Implémentation d'un régulateur PID
IRQ
Conversion+PID
Autres taches sur le uc:
Paramétrage de kp,ki, kd
Page  53
Les interruptions
Implémentation d'un régulateur PID
Etapes :
1)Activation ADC, TIMER, DAC
2)NVIC
3)Fonction principale
4)Fonction d’interruption
L ’ADC effectue une conv chaque 100 us. Le NVIC(ADC_IRQn) interrompe
Le prog principale chaque 100 us.
Mustapha.hamdi@insat.rnu.tn
Page  54
Les interruptions
Activation GPIO ADC Timer DAC:
ADC 1,2
Chaines Cr1 et cr2
Pin: PA02 et PA03 analog input
Le timer2 comme source de synchronisation
TIMER 2:
Comme source périodique d’interruption
Periode = 1us, f=10 kHz, TIM2->ARR = 8400;
DAC :
PA04, PA05 are
analog outputs
TIMER3:
Source MLI largeur
d’impulsion=sortie
de regulateur
Freq à choisir
Mustapha.hamdi@insat.rnu.tn
Page  55
Les interruptions
DAC->CR |=(1<<0)+(1<<16) = 0x00010001;
Activation de deux chaines de sortie
Mustapha.hamdi@insat.rnu.tn
Page  56
Les interruptions
DAC->SQ3 |=(1<<0)+(1<<16) = 0x00010001;
Activation de deux entrées PA2 et PA3
SQ1= 10 et SQ1=11, ADC1->SQ3|=0X2
ADC2->SQ3|=0X3
Mustapha.hamdi@insat.rnu.tn
Page  57
Les interruptions
Programme principale , Notes et indications :
While(1)
{
Ajustement de Kp :
si PE0 et PE05 sont activés au même temps
Alors Kp++ :
if ((GPIOE->IDR & 0x003f) == (0x01 + 0x20)) Kp++; // manually set Kp
Rq 0x003f=111111: masque, 0x01 + 0x20= 100001 : PE0 et PE05
si PE0 et PE04 sont activés au même temps
Alors Kp--
if ((GPIOE->IDR & 0x003f) == (0x01 + 0x10)) Kp--;
Ajuste de kd via PE01 et PE05 : Kd+0.001 , PE01 et PE04 kd -0.001
Ajustement de Ki via PE02 et PE05, ki+0.0001, PE02 et PE04 ki -0.0001
}
Mustapha.hamdi@insat.rnu.tn
Page  58
Les interruptions
Fonction d’interruption : indications
Conversion ADC1et2
Error[Ptr] = Ref[Ptr] - x[Ptr]; // calculate error
Prop = Kp * (float)Error[Ptr]; // proportional part
Dif = Kd * (float)(Error[Ptr] - Error[(Ptr-1) & 63]) / Ts; // diff. part
Int += Ki * (float)Error[Ptr]; // integral part
Reg[Ptr] = (int)(Prop + Dif + Int); // summ all three
Sorties : Reg et Error via au DAC1et2
Le DAC est limité entre 0 et 4095
Mustapha.hamdi@insat.rnu.tn
Page  59
Les interruptions
Code:
Mustapha.hamdi@insat.rnu.tn
Page  60
Les interruptions
Code_suite:
Mustapha.hamdi@insat.rnu.tn
Page  61
Les interruptions
Code_suite:
Mustapha.hamdi@insat.rnu.tn
Page  62
Les interruptions
Code_suite:
Mustapha.hamdi@insat.rnu.tn
Page  63
Les interruptions
Code_suite:
Mustapha.hamdi@insat.rnu.tn
Page  64
Les interruptions
Code_suite:
Mustapha.hamdi@insat.rnu.tn

Contenu connexe

Tendances

Pic 16f877 ..
Pic 16f877 ..Pic 16f877 ..
Pic 16f877 ..
sunprass
 
Micocontroleur16 fxxx (1)
Micocontroleur16 fxxx (1)Micocontroleur16 fxxx (1)
Micocontroleur16 fxxx (1)
Karim Touati
 
FF paramétrage adressage conception
FF paramétrage adressage conceptionFF paramétrage adressage conception
FF paramétrage adressage conception
Fieldbus France
 
présentation STM32
présentation STM32présentation STM32
présentation STM32
hatem ben tayeb
 
FF exemples applications
FF exemples applicationsFF exemples applications
FF exemples applications
Fieldbus France
 
Conception avec pic
Conception avec pic Conception avec pic
Conception avec pic
nawzat
 
Superivision Aéroportuaire
Superivision AéroportuaireSuperivision Aéroportuaire
Superivision AéroportuaireKarim Hassaouan
 
Formation Bus de Terraint _Partie 3_4 _EtherCAT
Formation Bus de Terraint _Partie 3_4 _EtherCATFormation Bus de Terraint _Partie 3_4 _EtherCAT
Formation Bus de Terraint _Partie 3_4 _EtherCAT
Wojciech GOMOLKA
 
Formation Bus de Terrain _Partie 3_1 _Modbus tcp
Formation Bus de Terrain _Partie 3_1 _Modbus tcpFormation Bus de Terrain _Partie 3_1 _Modbus tcp
Formation Bus de Terrain _Partie 3_1 _Modbus tcp
Wojciech GOMOLKA
 
Relais bluetooth - Balance connectée
Relais bluetooth - Balance connectéeRelais bluetooth - Balance connectée
Relais bluetooth - Balance connectée
Peronnin Eric
 
Microcontroleur Pic16 F84
Microcontroleur Pic16 F84Microcontroleur Pic16 F84
Microcontroleur Pic16 F84guest1e7b02
 
Formation Bus de Terrain _Partie 3_2 _ProfiNet
Formation Bus de Terrain _Partie 3_2 _ProfiNetFormation Bus de Terrain _Partie 3_2 _ProfiNet
Formation Bus de Terrain _Partie 3_2 _ProfiNet
Wojciech GOMOLKA
 
Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2
Mohammed Lamghari
 
Projet boot loader avec le pic16f887_ppt
Projet boot loader avec le pic16f887_pptProjet boot loader avec le pic16f887_ppt
Projet boot loader avec le pic16f887_ppt
Mouhcine Nid Belkacem
 
Microcontroleur
MicrocontroleurMicrocontroleur
Microcontroleur
Nic St Lawrence
 
Démystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGADémystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGA
SAPHIR - Signal Physique & Instrumentation
 
Processeur FPGA
Processeur FPGAProcesseur FPGA
Processeur FPGA
Hassan KIBOU
 

Tendances (20)

Pic 16f877 ..
Pic 16f877 ..Pic 16f877 ..
Pic 16f877 ..
 
Cours pics16 f877
Cours pics16 f877Cours pics16 f877
Cours pics16 f877
 
Micocontroleur16 fxxx (1)
Micocontroleur16 fxxx (1)Micocontroleur16 fxxx (1)
Micocontroleur16 fxxx (1)
 
FF paramétrage adressage conception
FF paramétrage adressage conceptionFF paramétrage adressage conception
FF paramétrage adressage conception
 
présentation STM32
présentation STM32présentation STM32
présentation STM32
 
FF exemples applications
FF exemples applicationsFF exemples applications
FF exemples applications
 
Conception avec pic
Conception avec pic Conception avec pic
Conception avec pic
 
Superivision Aéroportuaire
Superivision AéroportuaireSuperivision Aéroportuaire
Superivision Aéroportuaire
 
Formation Bus de Terraint _Partie 3_4 _EtherCAT
Formation Bus de Terraint _Partie 3_4 _EtherCATFormation Bus de Terraint _Partie 3_4 _EtherCAT
Formation Bus de Terraint _Partie 3_4 _EtherCAT
 
Formation Bus de Terrain _Partie 3_1 _Modbus tcp
Formation Bus de Terrain _Partie 3_1 _Modbus tcpFormation Bus de Terrain _Partie 3_1 _Modbus tcp
Formation Bus de Terrain _Partie 3_1 _Modbus tcp
 
Relais bluetooth - Balance connectée
Relais bluetooth - Balance connectéeRelais bluetooth - Balance connectée
Relais bluetooth - Balance connectée
 
Microcontroleurs
MicrocontroleursMicrocontroleurs
Microcontroleurs
 
Microcontroleur Pic16 F84
Microcontroleur Pic16 F84Microcontroleur Pic16 F84
Microcontroleur Pic16 F84
 
Formation Bus de Terrain _Partie 3_2 _ProfiNet
Formation Bus de Terrain _Partie 3_2 _ProfiNetFormation Bus de Terrain _Partie 3_2 _ProfiNet
Formation Bus de Terrain _Partie 3_2 _ProfiNet
 
Final
FinalFinal
Final
 
Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2
 
Projet boot loader avec le pic16f887_ppt
Projet boot loader avec le pic16f887_pptProjet boot loader avec le pic16f887_ppt
Projet boot loader avec le pic16f887_ppt
 
Microcontroleur
MicrocontroleurMicrocontroleur
Microcontroleur
 
Démystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGADémystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGA
 
Processeur FPGA
Processeur FPGAProcesseur FPGA
Processeur FPGA
 

En vedette

An Overview on Programmable System on Chip: PSoC-5
An Overview on Programmable System on Chip: PSoC-5An Overview on Programmable System on Chip: PSoC-5
An Overview on Programmable System on Chip: PSoC-5
Premier Farnell
 
System-on-Chip
System-on-ChipSystem-on-Chip
System-on-Chip
Lars Jacobs
 
System On Chip (SOC)
System On Chip (SOC)System On Chip (SOC)
System On Chip (SOC)
Shivam Gupta
 
SoC: System On Chip
SoC: System On ChipSoC: System On Chip
SoC: System On Chip
Santosh Verma
 
System On Chip
System On ChipSystem On Chip
System On Chip
A B Shinde
 
System on Chip (SoC)
System on Chip (SoC)System on Chip (SoC)
System on Chip (SoC)
Dimas Ruliandi
 
System On Chip
System On ChipSystem On Chip
System On Chip
anishgoel
 
AMBA 2.0 PPT
AMBA 2.0 PPTAMBA 2.0 PPT
AMBA 2.0 PPT
Nirav Desai
 
Amba bus
Amba busAmba bus
Amba bus
rohitlinux
 

En vedette (10)

An Overview on Programmable System on Chip: PSoC-5
An Overview on Programmable System on Chip: PSoC-5An Overview on Programmable System on Chip: PSoC-5
An Overview on Programmable System on Chip: PSoC-5
 
System-on-Chip
System-on-ChipSystem-on-Chip
System-on-Chip
 
System On Chip (SOC)
System On Chip (SOC)System On Chip (SOC)
System On Chip (SOC)
 
SoC: System On Chip
SoC: System On ChipSoC: System On Chip
SoC: System On Chip
 
System On Chip
System On ChipSystem On Chip
System On Chip
 
System on Chip (SoC)
System on Chip (SoC)System on Chip (SoC)
System on Chip (SoC)
 
System On Chip
System On ChipSystem On Chip
System On Chip
 
AMBA 2.0 PPT
AMBA 2.0 PPTAMBA 2.0 PPT
AMBA 2.0 PPT
 
Amba bus
Amba busAmba bus
Amba bus
 
Carte_à_puce
Carte_à_puceCarte_à_puce
Carte_à_puce
 

Similaire à SoC Hamdi -chap4

Diapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_finalDiapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_final
Amin Ferjani
 
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
Pôle Systematic Paris-Region
 
Présentation ip over atm
Présentation ip over atmPrésentation ip over atm
Présentation ip over atm
Syfeddine OIHI
 
Bus presentation
Bus presentationBus presentation
Bus presentation
Fieldbus France
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices
sarah Benmerzouk
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Tarik Zakaria Benmerar
 
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
LAUMAS
 
Programmation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communicationProgrammation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communication
ECAM Brussels Engineering School
 
Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs
Abdelkader Moussidene
 
embarqués.pdf
embarqués.pdfembarqués.pdf
embarqués.pdf
sofianePicanto
 
formation_captronic_lyon.pdf
formation_captronic_lyon.pdfformation_captronic_lyon.pdf
formation_captronic_lyon.pdf
OukrimMohamed
 
Cours_SAM(M14).ppt
Cours_SAM(M14).pptCours_SAM(M14).ppt
Cours_SAM(M14).ppt
Abdo Brahmi
 
Cours_SAM(M14).ppt
Cours_SAM(M14).pptCours_SAM(M14).ppt
Cours_SAM(M14).ppt
Abdo Brahmi
 
Ph.D Defense
Ph.D DefensePh.D Defense
Ph.D Defenseawxzeca
 
Ccna1
Ccna1Ccna1
Exam IIA5 INSAT 2018
Exam IIA5 INSAT  2018Exam IIA5 INSAT  2018
Exam IIA5 INSAT 2018
mustapha hamdi
 
CAN
CANCAN
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL   PROGRAMMATION ET _ETAPES pour comprendreCOURS VHDL   PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
MariamHafsa
 

Similaire à SoC Hamdi -chap4 (20)

Diapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_finalDiapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_final
 
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
 
Présentation ip over atm
Présentation ip over atmPrésentation ip over atm
Présentation ip over atm
 
Bus presentation
Bus presentationBus presentation
Bus presentation
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IP
 
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
Catalogues produits 03: électroniques de pesage - transmetteurs de poids & in...
 
Programmation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communicationProgrammation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communication
 
Présentation1
Présentation1Présentation1
Présentation1
 
Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs
 
Périphériques E/S
Périphériques E/S Périphériques E/S
Périphériques E/S
 
embarqués.pdf
embarqués.pdfembarqués.pdf
embarqués.pdf
 
formation_captronic_lyon.pdf
formation_captronic_lyon.pdfformation_captronic_lyon.pdf
formation_captronic_lyon.pdf
 
Cours_SAM(M14).ppt
Cours_SAM(M14).pptCours_SAM(M14).ppt
Cours_SAM(M14).ppt
 
Cours_SAM(M14).ppt
Cours_SAM(M14).pptCours_SAM(M14).ppt
Cours_SAM(M14).ppt
 
Ph.D Defense
Ph.D DefensePh.D Defense
Ph.D Defense
 
Ccna1
Ccna1Ccna1
Ccna1
 
Exam IIA5 INSAT 2018
Exam IIA5 INSAT  2018Exam IIA5 INSAT  2018
Exam IIA5 INSAT 2018
 
CAN
CANCAN
CAN
 
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL   PROGRAMMATION ET _ETAPES pour comprendreCOURS VHDL   PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
 

Dernier

Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Institut de l'Elevage - Idele
 
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdfpdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
Elisée Ndjabu
 
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Institut de l'Elevage - Idele
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Institut de l'Elevage - Idele
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
Institut de l'Elevage - Idele
 
Presentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptxPresentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptx
imed53
 
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdfCOURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
sieousse95
 
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
Institut de l'Elevage - Idele
 
Comment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptationComment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptation
Institut de l'Elevage - Idele
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
Institut de l'Elevage - Idele
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
Institut de l'Elevage - Idele
 

Dernier (11)

Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
 
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdfpdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
pdfcoffee.com_polycopie-de-cours-ppt-lge604-20012-bf-pdf-free.pdf
 
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
 
Presentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptxPresentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptx
 
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdfCOURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
 
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
 
Comment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptationComment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptation
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
 

SoC Hamdi -chap4

  • 1. Chap 4 : Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers Mustapha Hamdi mfhamdi@gmail.com IMI5 Trimestre1 2013-2014
  • 2. Page  2 Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers Réseaux sur puce « NoC » Exynos 5 dual de samsung
  • 3. Page  3 Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers Réseaux sur puce Efficacité accrue au niveau des communications => solutions à base de réseaux sur puce (Networks on Chip, NoC) *  Infrastructures de communication configurables  Caractéristiques proches de celles des réseaux : topologie, technique de commutation, algorithme de routage,…  Mais avec des spécificités : taille, consommation, fiabilité, …
  • 4. YOUR LOGO Page  4 Qu'est-ce qu'un NoC ? • Un réseau d'interconnexion relie des routeurs ou switches, auxquels sont connectées les IP • Diverses topologies peuvent être utilisées, souvent régulières • On retrouve classiquement une partie des couches du modèle OSI (surtout au niveau des couches basses) Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers
  • 5. Page  5 Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers
  • 6. Systemes sur puces : Reseaux sur puce « NoC », Interruptions « NVIC », Timers Page  6 Bus : ligne de communication reliant les différents composants, ou le SoC et ses périphériques mustapha.hamdi@insat.rnu.tn
  • 7. YOUR LOGO Page  7 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SOC: BCM2835 Block Diagram ARM1176JZ Réseaux sur puce :Network On chip NoC:
  • 8. Page  8 Bus pour systèmes embarqués: Bus AMBA: Advanced Microcontroller Bus Architecture Conçu par ARM Permet de simplifier l’integration au niveau système. Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers mustapha.hamdi@insat.rnu.tn
  • 9. Page  9 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Advanced High-performance Bus (AHB) : Bus système rapide, synchrone, multimaître.. Advanced System Bus (ASB) : AMBA ASB une alternative au système AHB , utilisé dans les cas ou les hautes performances du bus AHB ne sont pas nécessaires. Advanced Peripheral Bus (APB) APB (Advanced Peripheral Bus) : bus périphérique, plus lent et de plus faible consommation (pour périphériques lents), synchrone, maître unique.. mustapha.hamdi@insat.rnu.tn
  • 10. Page  10 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Exemple : mustapha.hamdi@insat.rnu.tn
  • 11. Page  11 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC AHB1ENR 32b OSPEEDER 32b MODER 32b IDR/ODR 16 GPIOx mustapha.hamdi@insat.rnu.tn
  • 12. Page  12 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Ports GPIO et Bus ARM: RM0090, chapter 6.3, Fig 13 mustapha.hamdi@insat.rnu.tn
  • 13. Page  13 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC 1<<00 *~(3<<2*00) *~(3<<2*00) Data=GPIOA&(1<<0) GPIOA pin0 pin15 Mode input pour pin0 Frequ = 2 Mhz Masque , data:(0/1) DM00031020.pdf
  • 14. Page  14 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC |=(1<<3) |=(2<<2*15) |=(1<<2*15) |=(1<<15) GPIOD pin0 pin15 Mode output Fréq=50MHz Pin 15=1
  • 15. Page  15 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC |=(1<<3) ….. ….. …. GPIOD pin0 Pin15,14 Mode output fpin15=50MHz,Fpin14=100 Pin 15=1, pin14=0
  • 16. Page  16 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC |=(1<<3) |=(2<<15*2)+(3<<14*2) |=(1<<15*2)+(1<<14*2) |=(1<<15)+(0<<14) GPIOD pin0 Pin15,14 Mode output fpin15=50MHz,Fpin14=100 Pin 15=1, pin14=0
  • 17. Page  17 DAC Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Fig. 64, RM0090, page 431
  • 18. Page  18 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC APB1ENR MODER CR DHR12R1/R2 GPIOD pin0Pin 5, 4 DAC control reg Port/pin pour sortie Data holding register 1 et 2 DM00031020.pdf p172
  • 19. Page  19 Etude de cas Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC |=0x20000000 |=111100000000 |=0x10001 DHR12R1/R2 GPIOD pin0Pin 5, 4 both channels ON; activation Port4/pin5 pour sortie (3<<2*4)+(3<<2*5) 3: analog output Données à convertir
  • 20. Page  20 DAC Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers
  • 21. Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers
  • 22. Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Groupe Timer Fmax 84 mhz via APB1 Groupe Timer Fmax 168 mhz via APB2
  • 23. Page  23 Bus pour systèmes embarqués: Bus AMBA: Advanced Microcontroller Bus Architecture Conçu par ARM Permet de simplifier l’integration au niveau système. Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers
  • 24. Page  24 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Advanced High-performance Bus (AHB) : Bus système rapide, synchrone, multimaître.. Advanced System Bus (ASB) : AMBA ASB une alternative au système AHB , utilisé dans les cas ou les hautes performances du bus AHB ne sont pas nécessaires. Advanced Peripheral Bus (APB) APB (Advanced Peripheral Bus) : bus périphérique, plus lent et de plus faible consommation (pour périphériques lents), synchrone, maître unique.. mustapha.hamdi@insat.rnu.tn
  • 25. Page  25 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Exemple : mustapha.hamdi@insat.rnu.tn
  • 26. Page  26 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Exemple : mustapha.hamdi@insat.rnu.tn
  • 27. Page  27 Etude de cas : BUS AHB1 pour GPIOA Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC AHB1ENR 32b OSPEEDER 32b MODER 32b IDR/ODR 16 GPIOx mustapha.hamdi@insat.rnu.tn
  • 28. Page  28 Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers Page 178, DM00031020.pdf Etude de cas : BUS AHB1 pour GPIOA mustapha.hamdi@insat.rnu.tn
  • 29. Page  29 Etude de cas : BUS AHB1 pour GPIOA Systemes sur puces : Réseaux sur puce « NoC », Interruptions « NVIC », Timers SoC stm32f407vg: Bus AHB, GPIO, DAC 1<<00 *~(3<<2*00) *~(3<<2*00) Data=GPIOA&(1<<0) GPIOA pin0 pin15 Mode input pour pin0 Frequ = 2 Mhz Masque , data:(0/1) DM00031020.pdf
  • 30. Page  30 Etude de cas: Bus APB1 pour Timer2 BUS ARM SoC stm32f407vg: Bus AHB, GPIO, DAC APB1ENR MODER CR DHR12R1/R2 GPIOD pin0Pin 5, 4 DAC control reg Port/pin pour sortie Data holding register 1 et 2 DM00031020.pdf p172
  • 31. Page  31 BUS ARM TIMER2: RCC->APB1ENR |= 0x01; // Clock for Timer2 Page 172, DM00031020.pdf
  • 32. Page  32 Etude de cas: Bus APB1 pour Timer2 BUS ARM SoC stm32f407vg: Bus AHB, GPIO, DAC RCC->APB1ENR |= 0x01; MODER CR DHR12R1/R2 GPIOD pin0Pin 5, 4 DAC control reg Port/pin pour sortie Data holding register 1 et 2 DM00031020.pdf p172 mustapha.hamdi@insat.rnu.tn
  • 33. Page  33 Les TIMERS Les TIMERS 8 Timers DM00037051.pdf, Table 3, p.29 Groupe Timer Fmax 84 mhz via APB1 Groupe Timer Fmax 168 mhz via APB2 mustapha.hamdi@insat.rnu.tn
  • 34. Page  34 Les TIMERS Les TIMERS 8 Timers DM00037051.pdf, Table 3, p.29 4 sorties MLI Quels PIN ? AF mustapha.hamdi@insat.rnu.tn
  • 35. Page  35 Les TIMERS Alternates functions RM0090, chapter 6.3, Fig 13 mustapha.hamdi@insat.rnu.tn
  • 36. Page  36 Les TIMERS Alternates functions: AF1: TIM1/TIM2, AF2 TIM3..5, AF9: can … 16 AF sur chaque pin, la configuration par 4 bits via aux reg AFRL et AFRH
  • 37. Page  37 Les TIMERS Alternates functions AFRL TIM3..5 0x2 pour configure le TIM3 et TIM4 Guide DM00031020.pdf P283
  • 38. Page  38 Les TIMERS Alternates functions AFRL pour configurer les pins de 0 à 7 AFRH pour configurer les pins de 8 à 15 Les Timer 3 et 4 à utiliser ici, sont connectés à quel pin ? TIM3: PC6 ..9 TIM4: PD12..15 mustapha.hamdi@insat.rnu.tn
  • 39. Page  39 Les TIMERS Alternates functions Registre AFR[1]: AFH, pin 0->7 Registre AFR[0]: AFL, pin 8->15 Exemple 4 sorties de TIM3 comme AF via au port C : GPIOC->AFR[0] |=(2<<4*6)+(2<<4*7); // en hexa 0x22000000 GPIOC->AFR[1] [=(2<<4*0)+;(2<<4*1); //pin 8et9 : les 2 premiers bits de AFH en hexa : 0x00000022 Comment configure les 4 Sorties de TIM4 comme AF via au port D: GPIOD->AFR[0] |= ?? Chaque pin est configurable par 4 bits mustapha.hamdi@insat.rnu.tn
  • 40. Page  40 Les TIMERS Alternates functions TIME R TIM3 (4 chaines) TIM4 (4 chaines) ADC1 input DAC GPIO PC6->PC9 PD12->15 PA0-> PA7 PA4, PA5 “Voir outil Cube MX” Registre AFR[1]: AFH, pin 0->7 Registre AFR[0]: AFL, pin 8->15 Exemple 4 sorties de TIM3 comme AF via au port C : GPIOC->AFR[0] |=0x22000000; GPIOC->AFR[1] [=0x00000022; Exemple 4 Sorties de TIM4 comme AF via au port D: GPIOD->AFR[0] |= ?? Chaque pin est configurable par 4 bits mustapha.hamdi@insat.rnu.tn
  • 41. Page  41 Les TIMERS Etude de cas: MLI via TIMER 3 mustapha.hamdi@insat.rnu.tn
  • 42. Page  42 Les TIMERS Etude de cas: MLI via TIMER 3 Mustapha.hamdi@insat.rnu.tn
  • 43. Page  43 Les TIMERS Etude de cas: MLI via TIMER 3 ccr1 ccr3
  • 44. Page  44 Les TIMERS Etude de cas: MLI via TIMER 4 TIM4 connecté aux pins PD12…PD15 : LEDS Timer4 en mode PWM à largeur d’impulsion variable Proposer une solution pour rendre la L.I variable
  • 45. Page  45 Les interruptions Fonctionnement des interruptions • NVIC : Nested Vectored Interrupt Controller • Gère les priorités entre interruptions • Gère la sauvegarde/restauration des registres • Le tout de façon optimisée (tail chaining, stack pop pre-emption, late arrival) • Le fabriquant du micro-contrôleur peut y greffer ses interruptions (ex : UART, DMA, EXTI), le cœur ayant aussi ses propres interruptions (ex : Hard Fault) Mustapha.hamdi@insat.rnu.tn
  • 46. Page  46 Les interruptions Sources d’interruptions • GPIO • Périphériques autres pour réveiller le cœur • Ethernet • USB OTG • Horloge RTC Mustapha.hamdi@insat.rnu.tn
  • 47. Page  47 Les interruptions Etude de cas: Interruption par Timer 5 Le processeur genere deux impulsions dans le port E pedant chaque interruption.
  • 48. Page  48 Les interruptions Etude de cas: Interruption par Timer 5 But : Interruption periodique chaque 1 ms pour générer deux impulsions Solution? Mustapha.hamdi@insat.rnu.tn
  • 49. Page  49 Les interruptions Mustapha.hamdi@insat.rnu.tn
  • 50. Page  50 Les interruptions Deux impulsions chaque 1 ms, l’interruption prend ~3.5us. Chaque impulsion sur le port PE08 prend ~0.5 us Mustapha.hamdi@insat.rnu.tn ~3.5us ~0.5 us
  • 51. Page  51 Les interruptions Clignotement de la led Chaque 100ms Mustapha.hamdi@insat.rnu.tn
  • 52. Page  52 Les interruptions Mustapha.hamdi@insat.rnu.tn Implémentation d'un régulateur PID IRQ Conversion+PID Autres taches sur le uc: Paramétrage de kp,ki, kd
  • 53. Page  53 Les interruptions Implémentation d'un régulateur PID Etapes : 1)Activation ADC, TIMER, DAC 2)NVIC 3)Fonction principale 4)Fonction d’interruption L ’ADC effectue une conv chaque 100 us. Le NVIC(ADC_IRQn) interrompe Le prog principale chaque 100 us. Mustapha.hamdi@insat.rnu.tn
  • 54. Page  54 Les interruptions Activation GPIO ADC Timer DAC: ADC 1,2 Chaines Cr1 et cr2 Pin: PA02 et PA03 analog input Le timer2 comme source de synchronisation TIMER 2: Comme source périodique d’interruption Periode = 1us, f=10 kHz, TIM2->ARR = 8400; DAC : PA04, PA05 are analog outputs TIMER3: Source MLI largeur d’impulsion=sortie de regulateur Freq à choisir Mustapha.hamdi@insat.rnu.tn
  • 55. Page  55 Les interruptions DAC->CR |=(1<<0)+(1<<16) = 0x00010001; Activation de deux chaines de sortie Mustapha.hamdi@insat.rnu.tn
  • 56. Page  56 Les interruptions DAC->SQ3 |=(1<<0)+(1<<16) = 0x00010001; Activation de deux entrées PA2 et PA3 SQ1= 10 et SQ1=11, ADC1->SQ3|=0X2 ADC2->SQ3|=0X3 Mustapha.hamdi@insat.rnu.tn
  • 57. Page  57 Les interruptions Programme principale , Notes et indications : While(1) { Ajustement de Kp : si PE0 et PE05 sont activés au même temps Alors Kp++ : if ((GPIOE->IDR & 0x003f) == (0x01 + 0x20)) Kp++; // manually set Kp Rq 0x003f=111111: masque, 0x01 + 0x20= 100001 : PE0 et PE05 si PE0 et PE04 sont activés au même temps Alors Kp-- if ((GPIOE->IDR & 0x003f) == (0x01 + 0x10)) Kp--; Ajuste de kd via PE01 et PE05 : Kd+0.001 , PE01 et PE04 kd -0.001 Ajustement de Ki via PE02 et PE05, ki+0.0001, PE02 et PE04 ki -0.0001 } Mustapha.hamdi@insat.rnu.tn
  • 58. Page  58 Les interruptions Fonction d’interruption : indications Conversion ADC1et2 Error[Ptr] = Ref[Ptr] - x[Ptr]; // calculate error Prop = Kp * (float)Error[Ptr]; // proportional part Dif = Kd * (float)(Error[Ptr] - Error[(Ptr-1) & 63]) / Ts; // diff. part Int += Ki * (float)Error[Ptr]; // integral part Reg[Ptr] = (int)(Prop + Dif + Int); // summ all three Sorties : Reg et Error via au DAC1et2 Le DAC est limité entre 0 et 4095 Mustapha.hamdi@insat.rnu.tn
  • 59. Page  59 Les interruptions Code: Mustapha.hamdi@insat.rnu.tn
  • 60. Page  60 Les interruptions Code_suite: Mustapha.hamdi@insat.rnu.tn
  • 61. Page  61 Les interruptions Code_suite: Mustapha.hamdi@insat.rnu.tn
  • 62. Page  62 Les interruptions Code_suite: Mustapha.hamdi@insat.rnu.tn
  • 63. Page  63 Les interruptions Code_suite: Mustapha.hamdi@insat.rnu.tn
  • 64. Page  64 Les interruptions Code_suite: Mustapha.hamdi@insat.rnu.tn