DIGITAL
BENCHMARK
48
- ELETTRONICA OGGI 442 - GENNAIO/FEBBRAIO 2015
fase attiva al secondo, durante la quale svolgere compiti
predefiniti.
Le risorse di un microcontrollore, analizzate durante la
fase CoreProfile, sono le seguenti:
CPU, RAM e memoria programma non volatile;
RTC timer/counter con interrupt di risveglio ogni secon-
do;
oscillatore di 32 kHz per l’RTC;
circuito di reset per la fase di accensione;
alimentazione, comprensiva dei 3 V.
La fase di test CoreProfile ha due modalità di esecuzione.
La prima è la modalità attiva durante la quale la CPU ese-
gue un set predefinito di funzioni e la seconda è la moda-
lità a risparmio di energia nella quale la CPU rimane in
standby e l’RTC risveglia la CPU una volta ogni secondo,
per ripetere una task predefinita continuamente. Precisa-
mente, questo compito da eseguire una volta al secondo
può consistere nelle seguenti funzioni:
Array writes: consiste nell’elaborazione dei dati conte-
nuti in una Look-Up Table.
Bubble Sort, funzione di permutazione e ordinamento
dei dati campionati a 8 bit: tutti i dati ricevuti dal micro-
controllore devono essere analizzati, organizzati ed elabo-
rati. L’algoritmo di ordinamento deve riconoscere e cata-
logare i diversi tipi di dati.
Filtri semplici con operatori matematici da 8 e 16 bit: le
funzioni matematiche sono necessarie in gran parte degli
algoritmi di valutazione perché consentono di elaborare
i dati e attribuire le corrette assegnazioni software alle
variabili. In questo ambito troviamo funzioni matematiche
adattate per operandi di 8, 16 e 32 bit, purché in approssi-
mazione lineare, mentre le funzioni matematiche comples-
se in virgola mobile sono processate in un’altra fase con
un profilo a parte.
Simple State Machine: la maggior parte delle applicazio-
ni usa una o più macchine a stati per controllare il flusso
del software.
Thread Event Switch (TES): il software ottimizzato per i
test sulle prestazioni è noto come TES ed è un software
di tipo “Thread & Task Switch”. Questo software consente
alla piattaforma di test di evolvere nel tempo e integrare
nuovi altri profili nella stessa libreria principale. Pertanto,
questo software è responsabile della corretta esecuzione
delle mansioni da svolgere una volta ogni secondo, al co-
mando di un opportuno segnale di trigger generato dal
modulo RTC.
La misura del punteggio in un tool di valutazione sulle pre-
stazioni è più semplice e affidabile usando il tool dedicato
EnergyMonitor illustrato nella figura 2.
Come scegliere un microcontrollore
sulla base dei test ULPBench
La piattaforma di test ULPBench offre un set di profili
orientati alle applicazioni tipiche del mondo reale. Basan-
dosi su questi profili, l’utente può riconoscere e scaricare i
requisiti più consoni alla propria applicazione e analizzare
di conseguenza le caratteristiche energetiche delle appli-
cazioni, in modo tale da stimare correttamente il consumo
di potenza previsto per ogni microcontrollore.
Per esempio, per caratterizzare un microcontrollore
Texas
Instruments
ultra-low-power MSP430 è indispensabile
prevedere una tolleranza nei punteggi legata alla variabili-
tà di esecuzione della fase di CoreProfile. Questa variabili-
tà nell’ULPBench è dovuta a diversi fattori che influiscono
sui consumi di energia di ogni task, ma dipende anche
dalla capacità di economizzare energia durante le varie
fasi a contenimento di potenza e durante le relative tran-
sizioni. Alcuni altri fattori che possono incidere sul pun-
teggio dei test sono le dimensioni di memoria (e il carico
associato al bus dati e al bus indirizzi), la tecnologia di
processo e la qualità della sorgente di alimentazione (fun-
zione anche dei regolatori di tensione LDO impiegati).
Come si vede dalla figura 3, il microcontrollore
MSP430FR5969, basato sulla tecnologia Texas Instru-
ments ultra-low-power con memoria FRAM, sfrutta un in-
novativo sistema di gestione dell’energia che produce un
elevato punteggio nell’ULPBench CoreProfile e consente
di minimizzare i consumi in un’ampia varietà di applica-
zioni.
I pregi dell’ULPBench
ULPBench è la prima piattaforma di test che consente
agli sviluppatori di confrontare le prestazioni dei micro-
controllori ultra-low-power con un metodo imparziale che
valuta i consumi di energia durante l’esecuzione delle
Fig. 3 – Confronto fra diversi microcontrollori MSP430 con memoria
Flash e FRAM nei punteggi dell’ULPBench CoreProfile Scores




