Elettronica_Oggi_431 - page 57

57
- ELETTRONICA OGGI 431 - OTTOBRE 2013
DIGITAL
LOW ENERGY
standardizzata), la riduzione di natura quadratica del
consumo di energia ottenibile con tensioni di valore
inferiore può comportare significativi risparmi ener-
getici.
Le perdite rappresentano il limite inferiore della varia-
zione di tensione. Se ogni operazione richiede tempi
troppo lunghi, la dispersione inizierà a rappresentare
il fattore predominante dell’equazione dell’energia,
contribuendo a incrementare il consumo di energia
complessivo. Per tale ragione può essere utile esegui-
re una funzione nel più breve tempo possibile e por-
tare il processore in modalità “sleep” per minimizzare
il fattore legato appunto alla dispersione.
Si consideri ad esempio un’applicazione che preveda
l’uso di un sensore wireless che debba effettuare
una notevole mole di operazioni DSP (Digital Signal
Processing), come accade nel caso di un rilevatore
di rottura vetri. In questo caso l’applicazione usa
l’algoritmo FFT (trasformata di Fourier veloce) per
analizzare le vibrazioni acquisite da un sensore audio
relative alle frequenza caratteristiche generate dalla
rottura del vetro. L’algoritmo FFT è relativamente
complesso per cui la sua esecuzione a una frequenza
più bassa (imposta dalla tensione ridotta) provocherà
un sensibile incremento della dispersione anche uti-
lizzando tecnologie di processo più datate. In questo
caso l’approccio migliore è eseguire l’algoritmo a una
velocità prossima a quella massima e tornare nello
stato di “sleep” finché non arriva il momento di ripor-
tare qualche risultato al nodo host.
Il codice del protocollo wireless, dal canto suo,
impone requisiti differenti. I protocolli radio
sono caratterizzati da temporizzazioni fisse
per gli eventi. In questi casi i protocolli posso-
no essere gestiti interamente in hardware. La
riduzione della tensione del core del proces-
sore è un’operazione utile. Pertanto il codice
necessario per l’assemblaggio dei pacchetti e
le trasmissioni viene eseguito a una velocità
compatibile con il protocollo wireless.
L’aggiunta di blocchi hardware come ad esem-
pio un blocco DMA (Direct Memory Access)
“intelligente” può contribuire a modificare i
compromessi in termini di energia. Parecchi
controllori DMA, come ad esempio quello
disponibili sul processore ARM Cortex-M3
nativo, richiede frequenti interventi da parte
del processore. Controllori DMA più “intelli-
genti” che supportano una combinazione di
messa in sequenza e concatenazione (chai-
ning) consentono al processore di calcolare l’intesta-
zione del pacchetto, cifrare i dati, assemblare i pac-
chetti e quindi trasferire l’operazione di passaggio dei
pacchetti a intervalli appropriati ai buffer di memoria
utilizzati dal front end radio. Per la maggior parte del
tempo che il link radio è attivo il processore si trova
nello stato di “sleep”, con significativi risparmi in ter-
mini energetici.
Utilizzo della memoria
Con le attuali MCU a 32 bit, i progettisti possono utiliz-
zare n maniera molto flessibile i blocchi di memoria.
Solitamente la MCU metterà a disposizione un mix di
memoria flash non volatile per memorizzare il codice
e i dati unitamente a una memoria SRAM (Static Ran-
dom Access Memory) per immagazzinare i dati tem-
poranei. In molti casi il consumo di potenza durante
gli accessi alla memoria flash sarà maggiore di quello
richiesto per gli accessi alla memoria SRAM. Durante
il normale utilizzo le letture della memoria flash sono
molto più frequenti (di un fattore pari a tre) rispetto
alle letture della memoria SRAM. Le operazioni di
scrittura della memoria flash, che richiedono la can-
cellazione di interi blocchi e la successiva riscrittura
mediante una lunga sequenza di impulsi di tensione
di valore relativamente elevato, consumano una
potenza ancora maggiore. In ogni caso, nella maggior
parte delle applicazioni, le operazioni di scrittura della
flash non sono frequenti e non influenzano quindi il
consumo medio di potenza. Un ulteriore elemento da
Fig. 3 – Effetti della variazione di tensione con VBAT = 3,6V
1...,47,48,49,50,51,52,53,54,55,56 58,59,60,61,62,63,64,65,66,67,...104
Powered by FlippingBook