I nuovi micro Tiva C

In questo articolo della Rubrica Firmware Reload parleremo di un nuovo prodotto della Texas Instruments, la quale ha lanciato sul mercato la nuova generazione di processori ARM Cortex-M4. La nuova serie di processori è stata denominata Tiva C. Questo articolo ci introduce nel mondo del Tiva C e ci porta alla scoperta delle sue potenti funzionalità, delle sue periferiche e degli strumenti a disposizione dei progettisti.

Introduzione

I microcontrollori della serie Tiva C di Texas Instruments sono da poco arrivati sul mercato e vanno ad ampliare il portfolio di prodotti Cortex-M che TI mette a disposizione degli sviluppatori. Se è vero che ormai l’architettura Cortex- M per i processori sta diventando uno standard e che buona parte dei produttori si sta uniformando, è anche vero che TI con la serie Tiva C aggiunge peso notevole alla sua offerta garantendo un ampissimo range di interfacce di connessione, performance notevolmente incrementate e funzionalità degne di processori di fascia più alta. Le caratteristiche dei microcontrollori Tiva C li rendono adatti ad un ampio range di applicazioni soprattutto per applicazioni dove la connessione è fondamentale e dove la gestione di sensori e di analogica è presente.

Per questo i settori della home, building and industrial automation stanno guardando con interesse a questa famiglia di controllori. Queste MCU condensano al loro interno la tecnologia dei recenti processori ARM Cortex-M4 con le tecniche di design e le tecnologie di processo che Texas Instruments ha perfezionato nel corso della sua lunga storia. Il risultato è una piattaforma microcontrollore a 32 bit con delle prestazioni per ciclo di clock estremamente elevate, integrata con circuiteria mista analogica e digitale fino a poco tempo fa reperibile solo attraverso componenti esterni stand-alone, dotata di memoria Flash che garantisce un elevato numero di cicli di riscrittura, in grado di garantire consumi di potenza estremamente competitivi se paragonati ad altri microcontrollori a 32 bit sia durante la fase operativa che durante lo standby. In Figura 1 si può vedere uno schema delle funzionalità principali che la serie Tiva C di microcontrollori mette a disposizione.

Figura 1: Schema a blocchi del microcontrollore TM4C123x della famiglia Tiva C.

Figura 1: Schema a blocchi del microcontrollore TM4C123x della famiglia Tiva C

ARM CORTEX-M4: ALTE PRESTAZIONI E RETROCOMPATIBILITÀ

Poiché la serie Tiva C di microcontrollori a 32 bit integra il core ARM Cortex-M4, ha a disposizione un set di istruzioni più ampio rispetto ad altre architetture a 8 o 16 bit. Grazie al successo che ARM sta ottenendo con i core Cortex-M, il mercato è pieno di terze parti che mettono a disposizione hardware e software per accelerare i tempi dello sviluppo. La precedente generazione di microcontrollori con core ARM di Texas Instruments, commercializzati con il brand “Stellaris” utilizzavano l’architettura Cortex-M3, il set di istruzioni a disposizione, denominato Thumb-2 era caratterizzato da un’estrema densità e dall’efficienza energetica.

Includeva aritmetica, logica, operazioni a bit, branch e operazioni di movimento dati come le più comuni MCU, ma in più era incrementato con operazioni di moltiplicazione, manipolazione dei campi a bit e prefissi condizionali che ne ha di fatto sancito l’elezione a standard per le moderne MCU a 32 bit. Il core Cortex-M4 di fatto espande ulteriormente il set di istruzioni introducendo operazioni di Digital Signal Processing (DSP) e operazioni multiple sui dati (SIMD). Le operazioni DSP permettono di eseguire in un unico ciclo un'operazione MAC (multiply-accumulate) a 32 bit oppure due operazioni MAC a 16 bit. Le istruzioni SIMD ottimizzate possono realizzare 4 operazioni aritmetiche a 8 bit oppure 2 a 16 bit, in un unico ciclo, consentendo, di fatto, di lavorare in maniera estremamente efficace su array di dati molto ampi. In più, TI ha inserito anche un’unità floating point per tutti i prodotti del portfolio Tiva C. Le istruzioni sono compliant con lo standard IEEE 754 e includono funzioni come la radice quadrata e numerose conversioni tra tipi di dati (per agevolare il passaggio tra domini diversi).

L’ABBRACCIO DELLA TECNOLOGIA INTEGRATA TI

Il Tiva gode del vantaggio di poter sfruttare tutta la tecnologia che in questi anni TI ha messo a punto sulle MCU delle famiglie C2000 e MSP, abbracciando, di fatto, una tecnologia integrata consolidata e performante. Nella costruzione delle MCU della serie Tiva C, si è dedicata particolare attenzione nel realizzare un convertitore analogico digitale ad alta risoluzione di elevata qualità. Il risultato è stato un ADC a 12 bit ad alta risoluzione, in grado di lavorare ad un sample rate di 1 MSPS sfruttando a pieno tutta la risoluzione. Questo significa che non si comporta come molti altri ADC integrati che degradano la qualità del campione per lavorare a frequenze di campionamento elevate. Sul chip si hanno a disposizione 2 di questi ADC ed ognuno può essere alimentato da 24 ingressi indipendenti. Per aumentarne la precisione, una tensione di riferimento esterna può essere applicata su un pin dedicato. Gli ADC possono generare un interrupt verso il processore a conversione completata oppure nel caso di match della conversione con il valore di uno degli 8 comparatori digitali.

Le letture dell’ADC possono essere accodate, confrontate e mediate direttamente nel blocco ADC. Il DMA (on-chip micro Direct Memory Access controller) può occuparsi di spostare le letture dell’ADC dalla fifo alla RAM o verso qualsiasi altra periferica senza richiedere l’intervento del core ARM. On chip sono integrati anche 3 comparatori analogici, utilizzabili con dei reference di tensione interni programmabili, per ottenere un rilevatore in grado di segnalare il superamento di una specifica soglia. La filosofia adottata per la parte analogica è quella di richiedere il minimo intervento della CPU per lasciarla focalizzata sui task real time. Quanto detto rende queste MCU indicate anche per applicazioni di motion control, grazie all’accuratezza degli ADC, la possibilità di utilizzare algoritmi floating point sofisticati e l’utilizzo dei comparatori, i motori possono essere controllati durante le loro operazioni, ottimizzando i consumi e fornendo potenza quando effettivamente è necessario. Eventuali condizioni di fault possono essere individuate grazie ai comparatori che permettono una risposta immediata.

UNA MEMORIA AFFIDABILE

Spesso l’aspetto della memoria è un pò sottovalutato, soprattutto per la componente affidabilità. Il passaggio a 65 nm per la realizzazione dei microcontrollori Tiva C, ha permesso di raggiungere un nuovo livello di affidabilità e integrazione. Prendendo in prestito la tecnologia Flash utilizzata in ambito automotive, TI garantisce per le memorie una durata di un ordine di grandezza superiore rispetto alla concorrenza. I cicli di cancellazione e riprogrammazione arrivano a quota 100 mila, eliminando nei progettisti i timori di un utilizzo più consistente della Flash. Buona parte della flash integrata rimane a disposizione dei progettisti, una piccola parte è dedicata alle routine software del TivaWare, mappate in ROM.

Ogni microcontrollore, infatti, ha queste routine software che contengono i driver di periferica, le funzioni di programmazione dei componenti integrati e anche utility supplementari come algoritmi di CRC e di crittazione (AES). Essendo mappate in ROM è sufficiente per gli sviluppatori software fare riferimento alle API (Application Programming Interfaces) per sfruttare queste porzioni di codice affidabile e testato, lasciando il resto della flash per le applicazioni specifiche sviluppate dai clienti. Un’altra caratteristica da notare per le MCU della seria Tiva C è la disponibilità di 2k Bytes di EEPROM integrata. Questa EEPROM è stata realizzata con una tecnica che Texas Instruments chiama “built-in wear-leveling”, in grado di assicurare che ogni locazione può essere modificata 500000 volte. Se perciò i dati vengono scritti 100 volte al giorno, l’EEPROM è in grado di durare almeno 15 anni!

UN OCCHIO AI CONSUMI

Il risparmio di energia sta diventando una richiesta sempre più pressante per tutti i prodotti embedded, specialmente per i prodotti a batteria che devono garantire un’autonomia sempre maggiore. In molti casi è la sorgente di alimentazione che impone dei vincoli, per esempio se la si preleva tramite USB, la specifica impone di non superare i 500 mA. Per venire incontro a queste richieste, TI ha sviluppato la serie Tiva C di MCU in tecnologia a 65 nm proprietaria, in grado di ridurre i consumi senza penalizzare le performance che il core ARM mette a disposizione. Per permettere poi di non generare consumi supplementari da ciò che nel chip non è utilizzato, vengono messi a disposizione una serie di clock e di modalità che permettono di ottimizzare i consumi. Per esempio, se l’unità DSP floating point non serve, può essere messa in idle, togliendo alimentazione e clock alla periferica.

Le modalità di basso consumo più spinte, dove un subset di funzioni rimane disponibile, sono tre: sleep, deep-sleep e hibernate (HIB). In modalità hibernate, l’intero chip è privo di alimentazione ad eccezione del modulo HIB, la MCU viene lasciata in uno stato per cui può essere risvegliata al bisogno. Il modulo HIB include un oscillatore a 32 kHz, un RTC, un battery monitor e 16 word a 32 bit di SRAM di backup tramite batteria. La configurazione minima permette di assorbire in HIB mode soli 1.6 uA, e al risveglio il chip passa per un power-on reset e inizia ad eseguire le istruzioni in 500 us. In Figura 2 si può avere un'idea dei consumi nelle diverse modalità operative.

Figura 2: Power mode disponibili per le MCU della serie Tiva C.

Figura 2: Power mode disponibili per le MCU della serie Tiva C

E’ SOLO L’INIZIO…

Attualmente la famiglia Tiva C comprende circa 50 microcontrollori diversi, ma questo è solo l’inizio, ben presto i prodotti TI basati su Cortex-M4 aumenteranno ancora, sempre focalizzandosi su quelli che sono i punti chiave: performance floating point, analogica integrata, memoria integrata, bassi consumi. Per chi già oggi si vuole cimentare con il Tiva C, Texas Instruments mette a disposizione l’EK-TM4C123GXL Launchpad Evaluation Kit, al prezzo di circa 13 dollari (Figura 3). All’interno del kit è già compreso l’hardware e il software necessari per arrivare in una decina di minuti a lavorare con il microcontrollore Tiva C.

Figura 3: EK-TM4C123GXL Launchpad Evaluation Kit.

Figura 3: EK-TM4C123GXL Launchpad Evaluation Kit

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend