DIGITAL
ULTRA LOW POWER DESIGN
49
- ELETTRONICA OGGI 469 - APRILE 2018
i risultati dell’STMicroelectronics STM32L476RG mi-
gliorino dell’16% passando da compilatore ARMCC
allo IAR.
Entrambi i risultati delle MCU di Analog Devices sono
stati ottenuti utilizzando codice generato dal compila-
tore IAR, ma con versioni differenti. Gli ADuCM4050 e
ADuCM302x hanno utilizzato rispettivamente lo IAR
EWARM 7.60.1.11216 e 7.50.2.10505. Ancora una volta,
non è dato sapere quali variazioni siano state fatte all’in-
terno delle due versioni. Entrambi i punteggi sono stati
ottenuti con l’opzione “nessun limite nelle dimensioni”,
che corrisponde all’ottimizzazione in termini di velocità.
Convertire l’ULPMark in un valore di energia
L’ULPMark-CoreProfile utilizza una formula che consi-
dera il reciproco dei valori di energia (la media di 5×
l’energia media al secondo per 10 cicli).
L’energia complessiva è ottenuta come somma dell’e-
nergia consumata mentre il dispositivo esegue il test
(in modalità attiva) e di quella assorbita mentre si trova
in ibernazione.
Secondo quanto indicato sul data sheet di ADuCM3029,
facendo girare codice per la generazione di numeri
primi il valore tipico di corrente in modalità attiva è di
980 µA. Questo codice risiede nella memoria cache,
traendo vantaggio dai suoi bassi consumi. Per quanto
riguarda il codice dell’ULPMark-CoreProfile, essendo
sostanzialmente lineare, non vi sono grandi vantag-
gi nell’abilitare la cache memory, per cui l’assorbi-
mento reale è simile a quello mostrato sul data sheet
per il funzionamento con la cache disabitata, ovvero
1,28 mA. Per quanto riguarda la corrente di iberna-
zione, l’ULPMark-CoreProfile richiede l’abilitazione di
LFXTAL e RTC, per cui la corrente assorbita in sleep
mode è pari a 830 nA (secondo il data sheet). Come
si è detto in precedenza la durata del periodo attivo è
di 420 µs.
Facendo riferimento ai valori e ai tempi di esecuzione
pubblicati sul data sheet, l’energia consumata nella
fase attiva è di 1,61 µJ, mentre quella relativa al periodo
di sleep è di 2,49 µJ. Questi risultati corrispondono a
quelli misurati con il software EEMBC EnergyMonitor.
Uno dei limiti della prima generazione di ULPMark è
che le regole di esecuzione impongono la tensione
operativa di 3 V (regola decisa dal gruppo di lavoro
per stabilire un livello comune a tutti i dispositivi).
Le più moderne MCU hanno migliori livelli di efficien-
za energetica utilizzando tensioni inferiori (anche se
questa caratteristica può essere influenzata dalla tem-
peratura e dalla frequenza di lavoro).
Ad esempio, il risultato ULPMark relativo a
STM32L476RG si STMicroelectronics migliora del 19%
utilizzando un convertitore dc-dc per ridurre la tensio-
ne da 3 V a 1,8 V.
STM32L476RG di STMicroelectronics non è l’unico
dispositivo i cui risultati siano stati influenzati dall’u-
tilizzo di un convertitore dc-dc, sebbene in alcuni di-
spositivi il convertitore sia integrato, come nel caso
dell’ADuCM302x e dell’ADuCM4050 (di cui è visibile
lo schema a blocchi in figura 3), per i quali non si ren-
de necessario alcun IC esterno per migliorare le ca-
ratteristiche energetiche del dispositivo. In ogni caso,
l’utilizzo di un convertitore dc-dc aiuta a livellare il
confronto, permettendo al dispositivo di funzionare in
condizioni di efficienza energetica ottimale. Per esem-
pio, un dispositivo funzionante solo a 3 V non trarreb-
be vantaggi da un convertitore dc-dc, dato che si trova
già ad un livello ottimale (o forse sub-ottimale) di effi-
cienza. D’altra parte, un dispositivo in grado di operare
fino a 1,8 V ma che non si avvantaggia della presenza
del convertitore dc-dc, in pratica spreca oltre il 64%
dell’energia assorbita. Inoltre, per un progettista la cui
priorità è l’efficienza energetica, il costo aggiuntivo di
un convertitore dc-dc esterno può non essere rilevan-
te, se il sistema utilizza una batteria a 3 V. Utilizzando
un convertitore dc-dc, si deve prestare attenzione per
evitare di misurare l’efficienza energetica del conver-
titore stesso, al posto di quella della MCU. In ogni caso,
Fig. 4 – Predisposizione della scheda
per la misurazione del punteggio