Microcontrollore e Rtos entrano in simbiosi

Da una recente indagine realizzata da TechInsights sul mercato dell'embedded risulta che, nello sviluppo delle applicazioni, vengono impegnate per il software il 64% delle risorse. È ovvio che gli sviluppatori cercano in ogni modo di abbattere i costi tramite il riuso su larga scala del software, ricorrendo sempre più spesso a piattaforme “chiavi in mano” che uniscono soluzioni hardware e software avanzati. La famiglia di microcontrollori MCF5225x e il Rtos che lo correda rappresenta un esempio emblematico di come l'industria possa venire incontro alle esigenze degli sviluppatori. Il Rtos MQX che Freescale rende disponibile gratuitamente sulla sua piattaforma di computing è in grado di soddisfare l'esigenza di abbattere i costi di sviluppo e allo stesso tempo il requisito del time-to-market.

Una nuova prospettiva per i progettisti di sistemi embedded
L'aumento della complessità delle applicazioni industriali e l'espansione delle funzionalità dei semiconduttori impongono agli sviluppatori di applicazioni embedded la ricerca di soluzioni che consentono di ridurre il “time-to-market” e contemporaneamente migliorare le prestazioni delle applicazioni. Avere a disposizione software di sistema, in particolare un Rtos, già consolidato per la piattaforma di computing che si intende utilizzare, può essere un grande vantaggio per il progettista. Questo non solo non si porrà il problema se sviluppare in casa il software di sistema o se acquisirlo dall'esterno, ma potrà contare su un software di sistema collaudato e verificato per la piattaforma di elaborazione che egli ha scelto. Freescale sta distribuendo il nuovo ColdFire, l'Mcu MCF5225x con la versione completa di MQX Rtos e relativo stack. La famiglia MCF5225x è la prima gamma dei controllori embedded di Freescale ad essere distribuita con l'MQX Rtos, ma Freescale prevede di espandere, gratuitamente, la disponibilità del software MQX per gli altri suoi processori embedded. Il software MQX viene fornito gratuitamente in combinazione con i processori, e questo aspetto va a impattare positivamente sui costi dello sviluppo software nei progetti embedded. La disponibilità del codice sorgente del Rtos è ovviamente un elemento fondamentale per la scelta. Freescale distribuisce i suoi microcontrollori con il codice sorgente del sistema operativo, incluso lo stack dei software di comunicazione, senza costi aggiuntivi. In particolare il modello di licenza offerto agli sviluppatori permette di apportare le modifiche e di distribuire i il codice binario senza dover fare i conti con più o meno onerose politiche di royalty tipicamente praticate dai produttori di Rtos.

MQX, Rtos verificato, completo e scalabile
MQX è un Rtos avanzato che è stato affinato da Freescale per oltre 15 anni sulle sue piattaforme di computing. MQX è dotato di un'interfaccia modulare (API) adattabile che permette agli sviluppatori di aggiungere, ad esempio, un Web server, la funzionalità e-mail, la gestione della rete e le funzionalità di sicurezza. La modularità consente di aggiungere componenti al codice applicativo solo se richiesto, impedendo così alle funzioni non utilizzate di occupare memoria di programma. Questo modello di API rende inoltre MQX facilmente scalabile. La scalabilità di MQX, unita all'offerta di funzionalità software di servizio delle terze parti relativamente alla sicurezza, ai protocolli e alle librerie per la gestione delle interfacce, rende questa soluzione particolarmente attrattiva per gli sviluppatori di applicazioni embedded e deeply-embedded. Questo Rtos è stato pensato e fatto evolvere nel tempo in modo da garantire alte prestazioni e dimensioni compatte, proprio in accordo con i requisiti primari dei sistemi embedded. La compattezza di codice di questo sistema operativo real-time permette di minimizzare lo spazio della memoria per le applicazioni. MQX può essere configurato per occupare poco più di 6KB di ROM, incluso il kernel, i programmi di servizio delle interruzioni (ISR), i semafori, la gestione delle code e della memoria. Circa le prestazioni real-time, caratteristiche principali sono la sua natura pre-emptive e l'ottimizzazione della commutazione di contesto, oltre alla gestione delle interruzioni. Nelle applicazioni embedded la velocità e i tempi di risposta deterministici nella gestione delle interruzioni sono requisiti stringenti, che se non adeguatamente soddisfatti, possono portare a grossi problemi di messa a punto e, in casi estremi, anche al fallimento del sistema. Nelle applicazioni industriali non si possono eludere i requisiti di velocità nei tempi di risposta e dalla deterministicità.

Il microcontrollore MCF5225x
I microcontrollori MCF5225x sono basati sul core V2 ColdFire 32 bit e si adattano a una vasta gamma di applicazioni di networking industriale, come le applicazioni di controllo di edifici, i sistemi di illuminazione, le applicazioni medicali, e in generale tutte quelle applicazioni che richiedono prestazioni elevate e varie opzioni di connettività. La porta Usb dei microcontrollori MCF5225x può essere utilizzata per sviluppare interfacce verso lettori Usb standard di codici a barre, mentre il controller Fast Ethernet embedded facilita il controllo di varie tipologie di terminali negli edifici interconnessi in rete. L'acceleratore crittografico integrato nel microcontrollore rende sicure le comunicazioni attraverso Ethernet, rendendo in tal modo più efficace il livello di interconnessione. Inoltre, grazie alla connettività Usb, è possibile eseguire download dei dati semplici e veloci. La connettività seriale semplifica invece la connessione a moduli wireless e schermi Lcd. In pratica, integrando la Usb con funzionalità sia host che Otg (On The Go), insieme ad altre tecnologie di interconnessione come Fast Ethernet e Can, l'MCF5225x consente ai progettisti di implementare il protocollo di connettività ottimale per soddisfare le loro esigenze applicative senza la necessità di aggiungere controller di comunicazioni esterni. I microcontrollori comprendono anche ampie funzionalità integrate di comunicazione seriale, come, per esempio, l'interfaccia periferica seriale (Spi), due bus I2C e porte asincrone universali (Uart). I microcontrollori MCF5225x comprendono un acceleratore crittografico on-chip e un generatore di numeri casuali che contribuiscono alla tutela di dati importanti e della proprietà intellettuale nel corso di trasmissioni attraverso reti di controllo industriale e di edifici. Il modulo crittografico supporta gli algoritmi DES, 3DES, AES, MD5 e SHA-1. I microcontrollori MCF5225x comprendono un core V2 ColdFire a 32 bit da 76 Dhrystone 2.1 Mips a 80 MHz. I dispositivi sono muniti di una memoria embedded di grandi dimensioni (fino a 512 KB di memoria flash e a 64 KB di Sram) per applicazioni che richiedono prestazioni elevate e codifica semplificata. Un Emac (Eenhanced multiply-accumulate controller) con funzionalità di divisione hardware e un controller Dma (Direct-memory access) incrementano le prestazioni del sistema, alleggerendo il core ColdFire che può quindi eseguire altri task. La famiglia MCF5225x offre una vasta gamma di frequenze di core, vari tagli di memoria on-chip e varie tipologie di interfaccia verso la memoria esterna. Un bus esterno garantisce agli sviluppatori la possibilità di aggiungere ulteriore memoria o periferiche.

Caratteristiche del MQX Rtos
 - Scheduler preemptive
- Rtcs (Real-time Tcp/Ip communication suite) con Tcp/IP, Ftp, Telnet, Dhcp, Snmp
- Usb host e device stacks (Hid, Mass, Hub)
- File system MS-Dos
- Bsp (Board support package) I/O driver con supporto Can, Uart e altri protocolli
- Supporto del Http Web server
- Supportato da CodeWarrior Development Studio
- Supportato da Iar development suite

Caratteristiche della famiglia MCF5225x
- Core Coldfire V2: Frequenza di bus di 66 MHz o 80 MHz
- Connettività:
•    porta Usb 2.0 full-speed Host/Device/Otg;
•    porta FlexCan;
•    porta 10/100 Ethernet;
•    2 porte I2C bus;
•    1 porta Seriale Sincrona con Buffer;
•    3 porte Seriali Asincrone Universali;
•    External Mini-FlexBus interface.
- Unità di accellerazione crittografica
- Fino a 512 Kbytes di memoria Flash embedded

- Fino a 64 Kbytes Sram
- Timers:
•    2 canali Pit (Channel Periodic Interrupt Timer);
•    4 canali timer a 32 bit con Dma;
•    4 canali timer 16-bit capture/compare/Pwm
- Real-time con cristallo a 32kHz
- Convertitore analogico/digitale a 12-bit
- Sino a 56 general-purpose I/O
- Tensione operativa 3 V - 3.6 V
- Package 100 pin e 144 pin Lqfp, 144 Mapbga

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome