Semplici, economici e a basso consumo

Sebbene l'esigenza di disporre di microcontrollori semplici, economici e a basso consumo energetico sia sentita oggi come ieri, l'uso delle tradizionali architetture a 8 e 16 bit per soddisfare questa domanda è in costante diminuzione. Gli infaticabili dispositivi embedded dell'era degli 8 e 16 bit, per quanto consolidati e sperimentati, vengono lasciati da parte anche in applicazioni limitate che richiedono capacità elaborative e set di periferiche di tipo elementare. I progettisti preferiscono di gran lunga uno dei numerosi nuovi Mcu Arm Cortex 32 bit di fascia bassa, lasciandosi tentare dalla maggiore performance e funzionalità a livello di prodotto finale che non comporta incrementi di costo o di consumi energetici. Dalla fine degli anni '90 le vendite globali di Mcu 32 bit sono aumentate stabilmente del 10% anno su anno e hanno ormai superato quelle dei microcontrollori a 8 bit; questo avvicendamento nell'ambito degli Mcu entry level, che non mostra segnali di rallentamento, non può che essere positivo sia per i progettisti che per gli utenti finali.
Freescale vanta una lunga e consolidata tradizione in questo mercato e ha ribadito l'intenzione di mantenerla con il lancio della nuova Kinetis L Series - la cugina più giovane della K Series basata su Cortex-M4 e la prima famiglia di Mcu per il mercato di massa basata sul nuovo core Arm Cortex-M0+. Freescale sta mettendo a punto un microcontrollore che abbina la facilità d'uso, il costo contenuto e il basso consumo energetico dei dispositivi 8 bit all'efficienza energetica, all'integrazione delle funzioni e alla scalabilità dei modelli 32 bit. In questo modo gli sviluppatori di piccoli elettrodomestici, accessori per videogiochi, dispositivi medicali e sistemi di controllo dell'alimentazione, tanto per fare qualche esempio, sono in grado di creare prodotti caratterizzati da un controllo più puntuale, da una maggiore funzionalità per gli utenti finali e da un'efficienza energetica più elevata rispetto a Mcu 8 e 16 bit comparabili. Naturalmente il microcontrollore è solo uno dei componenti poiché i progettisti devono avere accesso a tool di sviluppo semplici ma potenti per poter usufruire di tutte le funzionalità di questi nuovi dispositivi senza compromettere budget o tempi di realizzazione. È quindi fondamentale che ciascun microcontrollore Kinetis L Series sia supportato da una piattaforma di sviluppo hardware economica e modulare nonché da un software bundle strettamente connesso, composto da Ide, generatore di codice e Rtos leggero forniti da Freescale, senza contare il supporto fornito da un ampio ecosistema di terze parti Arm.

Più efficienza energetica
con Arm Cortex—M0+

La Kinetis L Series si basa sul core Arm Cortex-M0+ - il successore del consolidato Cortex-M0. Sebbene l'aspetto esterno sia simile e la compatibilità a livello di tool e instruction set sia del 100%, il segno '+' rappresenta alcuni vantaggi notevoli, soprattutto nel campo dell'efficienza energetica. Miglioramenti sono stati introdotti anche in termini di performance e di supporto del debugging. Se messi a confronto diretto, M0+ consente un risparmio energetico del 30% rispetto al core Cortex-M0 il che, unito agli incrementi di performance, equivale a un aumento di oltre il 50% in termini di efficienza energetica oppure, espresso in altri termini, a una quantità di lavoro molto elevata per unità di energia consumata. Una pipeline snella a 2 stadi riduce il numero di cicli per istruzione rendendo più rapide istruzioni branch e ISR entry e contribuendo a una performance di 1,77 CoreMark/MHz - superiore di circa il 10% rispetto al suo predecessore ma superiore da 2 a 40 volte se confrontata al concorrente 8 e 16 bit più prossimo! I sostenitori degli 8 e 16 bit non devono temere alcun aumento dimensionale del codice in quanto la maggior parte delle 56 istruzioni Thumb-2 utilizzate nel core sono a 16 bit e il compilatore C utilizza istruzioni 32 bit solo quando è necessario. Anche l'accesso I/O è stato ridotto a ciclo singolo accorciando il tempo di reazione a eventi esterni mentre uno spazio di indirizzo 4GB lineare evita tutti i problemi e le conseguenze per la memoria derivati da paging e banking. Infine, il nuovo Micro Trace Buffer, un piccolo blocco di logica che scrive le informazioni di traccia nella Sram on-chip, rappresenta una soluzione leggera e flessibile che consente un debugging rapido e accurato e che è stata studiata per inserire esattamente le operazioni di scrittura nel buffer delle tracce tra i normali accessi al sistema.

Intelligente e flessibile
Costruita in base all'innovativa tecnologia Tfs (Thin film storage) 90 nm di Freescale, la Kinetis L Series va a integrare la grande efficienza energetica del core Cortex-M0+ con una piattaforma Mcu innovativa a basso consumo energetico, numerosi modi operativi a basso consumo e tutta una serie di periferiche autonome che fanno un uso intelligente dell'energia. Unitamente alla rapidità di elaborazione del core Cortex-M0+, i suddetti elementi consentono all'applicazione di aumentare il tempo trascorso nei modi “deep sleep”, riducendo quindi al minimo l'attività della Cpu e prolungando la durata delle batterie. Almeno 13 modi operativi diversi consentono al progettista di manipolare la Cpu, i circuiti del clock, le periferiche, gli interrupt e i bus per far durare il più a lungo possibile le risorse di alimentazione. Nei modi “Very Low Power” il core scende fino a 4 MHz (contro 48MHz nel modo Run) con una conseguente riduzione del 95% del consumo energetico pur mantenendo invariato un fattore critico come la capacità elaborativa totale del core. In questo modo il microcontrollore può riprendere rapidamente l'attività da uno stato a consumo ridotto, procedere all'elaborazione dei dati e tornare al modo “sleep” in tempi rapidi, mentre Mcu a 8 e 16 bit comparabili stanno ancora “macinando numeri”. Vengono anche utilizzate tecniche lineari di inizializzazione del clock per ridurre al minimo i picchi di corrente che si verificano nella fase di ripresa dell'attività del microcontrollore e che potrebbero rivelarsi dannosi per determinati tipi di batterie. Inoltre si fa un largo uso di power gating, clock gating e frequenza mentre tutte le periferiche e le linee di I/O passano per default a uno stato di inattività ed è necessario l'intervento di un software per abilitarle ad assorbire potenza.
Il cambiamento più consistente in termini di consumo energetico è forse quello che si è verificato nelle periferiche. Controller Dma, timer, Uart, Adc e altri possono mantenere la funzionalità anche quando il microcontrollore si trova in modi “deep sleep” e prendere decisioni senza il coinvolgimento della Cpu. In un microcontrollore tradizionale, invece, il core e il clock principale devono essere attivati per eseguire anche task elementari come invio o ricezione di dati, acquisizione o generazione di forme d'onda o il campionamento di segnali analogici. Quando l'alimentazione è preziosa, l'autonomia delle periferiche svolge un ruolo importante nel prolungare la durata delle batterie. Infine un Bme (Bit-manipulation engine) dedicato esegue operazioni And, Or, Xor nonché di bit clear, set, insert ed extract, sollevando risorse critiche della Cpu dall'esecuzione di simili task. Questo processore dedicato a livello di bit può ridurre anche del 40% le dimensioni del codice e i tempi di esecuzione quando il microcontrollore deve eseguire bit banging per cambiare i campi delle maschere, inizializzare periferiche o passare da una funzione all'altra.

Numerose opzioni funzionali
Ciascuna famiglia Kinetis L Series comprende opzioni di scalabilità della memoria flash (8-256KB), pin count scalabili (16-121pin compresi numerosi chip-scale package 2 x 2 mm a ingombro ridottissimo) e numerose periferiche analogiche, di comunicazione, di temporizzazione e Hmi. La disponibilità di numerose opzioni funzionali, unita alla compatibilità elevatissima a livello di package e periferiche tra gli Mcu della L Series, mette a disposizione dei progettisti percorsi di migrazione up/down rapidi ed economici per poter ampliare la linea dei prodotti finali in base all'evoluzione della domanda. Tra gli elementi comuni alle famiglie della Kinetis L Series figurano: 1.-71-3.6V, temperature di funzionamento : -40°C / +105°C; core Arm Cortex-M0+ 48 MHz; convertitore analogico-digitale 12/16 bit ad alta velocità; convertitore digitale-analogico 12 bit; comparatore analogico ad alta velocità; touch sensing a basso consumo con attivazione on touch da stati a consumo ridotto; interfacce seriali di comunicazione (Uart, Low Power Uart, Spi & I2C); timer potenti per una vasta gamma di applicazioni, tra cui il controllo motore. La Kinetis L Series comprende 5 famiglie di microcontrollori: KL0 (entry-level), KL1 (general purpose), KL2 (Usb), KL3 (Lcd a segmenti) e KL4 (Lcd a segmenti & Usb). Le famiglie KL0/1/2 entreranno in produzione nel quarto trimestre 2012 mentre le famiglie KL3/4 saranno lanciate all'inizio del 2013. Oltre alla compatibilità interfamiliare è stato mantenuto un alto grado di compatibilità con la Kinetis K Series basata su Cortex-M4 con scalabilità in avanti verso una performance di tipo Dsp, fino a 1MB di memoria flash e funzionalità avanzate tra cui Ethernet, Tamper Detection (rilevamento manomissioni) e Graphics Lcd.

Sviluppare in modo facile
Con cicli di progettazione di sole 4-6 settimane nelle moderne applicazioni consumer, le ore/uomo impiegate per capire il funzionamento di una nuova piattaforma di tool possono fare la differenza tra un leader di mercato e un semplice contendente. In questo contesto, i progettisti di oggi richiedono tool in grado di abbinare facilità d'uso a caratteristiche avanzate e di consentire loro di mettere rapidamente a frutto le funzionalità dei microcontrollori a costo zero o comunque a costi molto contenuti. La Freedom Development Platform (FRDM-KL25Z) di Freescale, una denominazione quanto mai appropriata, è uno dei molti modi in cui la società sta semplificando il supporto in termini di tool al mercato entry level. Questa piattaforma di sviluppo, accattivante ma fornita di funzionalità avanzate, ha un prezzo di vendita di 10 euro, consente un rapido accesso ai pin I/O dei microcontrollori e ha dimensioni standard con disponibilità di un'ampia gamma di schede di espansione di terze parti. On board si trova OpenSDA - un'interfaccia aperta seriale e di debug Usb che presenta un mass storage device mode flash programmer di facile utilizzo, una porta seriale virtuale e funzionalità classiche di programmazione e run control. OpenSDA è supportata da un ricco software bundle composto da CodeWarrior Ide di Freescale (vengono liberati fino a 64KB di codice) e il nuovo MQX Lite RTOS - una versione più leggera del diffuso MQX Rtos di Freescale che è stata progettata specificamente per gli Mcu che dispongono di risorse limitate. Il tool Processor Expert di Freescale è integrato nel CodeWarrior Ide ed è anche disponibile come plug-in per Ide di terze parti come Keil, Iar e Code Red. Processor Expert è un tool di generazione software device aware a base Gui che elimina la necessità di scrivere codice di avvio delle periferiche o driver per i dispositivi. I driver sono già scritti e devono essere semplicemente configurati dall'utente, per cui la lettura di manuali d'uso di 1000 pagine appartiene ormai al passato.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome