NXP offre un ecosistema di sviluppo ARM® Cortex®-M33
Contributo di Editori nordamericani di DigiKey
2024-05-09
I processori core ARM® Cortex®-M33 sono una famiglia di microcontroller (MCU) a basso consumo e ad alte prestazioni dalle funzionalità avanzate di sicurezza e di elaborazione di segnali digitali. Sono ideali per un'ampia gamma di applicazioni IoT ed embedded, ma la progettazione di prodotti con questi MCU può essere impegnativa, soprattutto per gli sviluppatori che non hanno familiarità con l'architettura ARM. NXP Semiconductors, fornitore leader di microcontroller basati su ARM, punta a facilitare questo compito con la piattaforma di sviluppo MCUXpresso.
Il processore RISC di ARM domina in segmenti di mercato come gli smartphone e i prodotti elettronici consumer, dove basso consumo e alte prestazioni sono fondamentali.
I processori Cortex-M33 hanno alta efficienza energetica e offrono modalità a bassa potenza che riducono il consumo di corrente attiva e in sospensione e possono essere utilizzati in un'ampia gamma di applicazioni come il controllo industriale, la domotica, i dispositivi indossabili e l'IoT. Offrono agli sviluppatori un elevato grado di flessibilità e scalabilità, ma richiedono anche un'attenta ottimizzazione per bilanciare prestazioni, consumo energetico e ingombro.
Gli MCU Cortex-M33 supportano ARM Embedded Application Binary Interface (EABI), che garantisce la compatibilità binaria con altri processori Cortex-M, consentendo di eseguire il codice Cortex-M esistente senza modifiche. Questa compatibilità offre anche l'accesso a strumenti software, librerie e middleware esistenti.
Il portafoglio MCX di NXP
NXP è uno dei principali produttori di MCU basati su ARM, compresi prodotti per uso generale e specifici per il settore automotive. L'azienda propone il suo portafoglio MCX come base per i dispositivi edge ad alta efficienza energetica nei mercati industriali e IoT, con una maggiore scalabilità e capacità di prodotto innovative.
Gli MCU MCX comprendono due linee di prodotti distinte:
- La serie MCX N comprende MCU industriali e IoT con doppio core Cortex-M33 fino a 150 MHz e con unità di elaborazione neurale (NPU) eIQ® Neutron per l'accelerazione dell'apprendimento automatico (ML). Questi MCU ad alte prestazioni e basso consumo incorporano periferiche e acceleratori intelligenti, che offrono capacità multitasking e prestazioni efficienti.
- La serie MCX A Essential, una linea di MCU Cortex-M33 single core ottimizzata per fornire funzionalità critiche per applicazioni in cui servono funzionalità analogiche avanzate (es. i convertitori di dati ad alta precisione), e dove i vincoli di costo e il rapido time-to-market sono considerazioni fondamentali.
Questo articolo si concentra sugli MCU MCX A (Figura 1) e sui relativi strumenti di sviluppo. La serie MCX A supporta un'ampia gamma di applicazioni in diversi mercati, tra cui le comunicazioni industriali, gli smart meter, l'automazione e il controllo, i sensori e i dispositivi a basso consumo e alimentati a batteria. Con un nucleo e periferiche comuni, gli sviluppatori possono trarre vantaggio dalla semplificazione dello sviluppo del software, dalla facilità di migrazione e dagli aggiornamenti.
Figura 1: Microcontroller serie MCX A di NXP. (Immagine per gentile concessione di NXP)
Ogni dispositivo della serie MCX A include una selezione di periferiche intelligenti in grado di funzionare indipendentemente dalla CPU a una frequenza inferiore e con un consumo energetico minore. Queste periferiche consentono ai progettisti di utilizzare un contenitore più piccolo, di semplificare la progettazione della scheda e di ridurre i costi in distinta base del sistema.
Le periferiche incluse sono:
- Comunicazioni seriali con buffer incorporati, intervallo di raccolta dati programmabile e DMA
- Convertitore analogico/digitale a segnale misto (ADC)
- Convertitore digitale/analogico (DAC)
- Amplificatore operativo con intelligenza incorporata per il calcolo della media e il rilevamento dei picchi
- FlexPWM (modulatore della larghezza di impulso) con controllo dei tempi morti ed encoder per applicazioni a motore
Gli MCU MCX A dispongono anche di un'unità di gestione dell'alimentazione (PMU) che consente di scalare dinamicamente la tensione e la frequenza (DVFS) e di controllare l'alimentazione in modo adattivo (APC) per ottimizzare il consumo energetico in base al carico di lavoro e alle condizioni operative. I dispositivi includono 64 kB o 128 kB di memoria flash e 16 kB o 32 kB di SRAM; tutti i dati nella RAM possono essere conservati fino alla modalità di spegnimento profondo.
Un controller di cache a basso consumo da 4 kB (LPCAC) collegato al bus di codice del core Cortex-M33 garantisce la disponibilità di dati e istruzioni con una bassa latenza. La disponibilità del bus per le altre periferiche è migliorata in quanto le prestazioni del processore possono essere disaccoppiate da quelle della memoria di sistema. Questa caratteristica può aiutare gli sviluppatori a ottenere le migliori prestazioni di I/O ed elaborazione in applicazioni di rilevamento e controllo.
I dispositivi MCX A funzionano a 48 MHz (serie A14x) e a 96 MHz (serie A15x). Il modello MCX A utilizza un sottosistema di alimentazione LDO senza condensatore, in grado di funzionare da 1,7 a 3,6 V. I dispositivi sono caratterizzati da un basso consumo energetico in varie modalità:
- 59 µA/MHz (3 V, a +25 °C) in modalità attiva con Coremark in esecuzione dalla flash interna
- 6,5 µA in sospensione profonda, tempo di riattivazione di 10 µs con ritenzione SRAM completa, 3 V a +25 °C
- Meno di 400 nA in spegnimento profondo con tempo di riattivazione di 2,78 ms
I dispositivi MCX A includono un controller per dispositivi USB Full Speed con PHY su scheda per la connettività a PC e altri dispositivi. Il sottosistema USB è dotato di programmazione di sistema (ISP) tramite la ROM di avvio e i prodotti possono essere aggiornati sul campo tramite l'interfaccia USB.
A seconda del modello, gli sviluppatori possono sfruttare da 26 a 52 pin di ingresso/uscita per uso generale (GPIO). Le interfacce di comunicazione seriale comprendono una I²C, due SPI e tre UART. Sono inclusi tre timer a 32 bit in grado di generare coppie PWM complementari con inserimento della banda morta, oltre a un timer a basso consumo. La tensione di alimentazione può variare da 1,71 a 3,6 V e la temperatura di funzionamento è compresa tra -40 °C e +125 °C.
La serie A14x MCXA143VLH, ad esempio, dispone di 52 pin GPIO e funziona fino a 48 MHz, con 128 kB di memoria flash e 32 kB di SRAM, in un contenitore LQFP64. La serie 15x MCXA152VFT dispone inoltre di 52 pin GPIO e funziona fino a 96 MHz, con 64 kB di memoria flash e 16 kB di SRAM, in un contenitore QFN48.
Sfruttare MCUXpresso
Questi MCU offrono un buon rapporto tra costi, prestazioni ed efficienza energetica. Grazie al supporto di un maggior numero di pin GPIO, i progettisti possono sfruttare contenitori più piccoli e progettare schede più semplici.
La serie sfrutta MCUXpresso Developer Experience per semplificare il processo di sviluppo con software, strumenti e provisioning sicuro per accelerare la progettazione e aiutare gli sviluppatori a creare, eseguire il debug e ottimizzare le applicazioni. La piattaforma MCUXpresso comprende:
- MCUXpresso IDE: un ambiente di sviluppo integrato che supporta la modifica del codice, la compilazione, il debug e la programmazione flash.
- MCUXpresso Config Tools: una serie di strumenti grafici che aiutano gli sviluppatori a configurare i pin, i clock, le periferiche e le funzioni di sicurezza.
- MCUXpresso SDK: un kit di sviluppo software che fornisce una raccolta di driver, middleware, librerie ed esempi.
Le schede di sviluppo NXP per la serie MCX A, tra cui FRDM-MCXA153 (Figura 2), sono progettate per la prototipazione rapida e lo sviluppo di applicazioni che utilizzano i microcontroller A14x e A15x.
Figura 2: Kit di sviluppo FRDM-MCXA153. (Immagine per gentile concessione di NXP)
Queste schede sono compatte e possono essere facilmente integrate nei prototipi in via di progettazione. Le basette standard del settore forniscono accesso diretto agli I/O per la valutazione e la prototipazione rapida. Le opzioni di espansione come Arduino® Header, FRDM Header, Pmod™ e mikroBUS™ consentono agli sviluppatori di aggiungere facilmente funzionalità e altri componenti.
Tra le altre caratteristiche a misura di sviluppatore vi sono le interfacce seriali integrate basate su standard aperto, la memoria flash esterna e il debugger MCU-Link su scheda con protocollo CMSIS-DAP. Gli sviluppatori possono scegliere di lavorare con MCUXpresso per Visual Studio Code o con l'IDE MCUXpresso basato su Eclipse di NXP o anche con gli IDE di IAR e Keil che offrono anche la certificazione di sicurezza.
NXP fornisce anche un repository Application Code Hub (ACH) con esempi di software di alto livello, frammenti di codice e demo. Questi esempi sono abbinati all'SDK e possono essere consultati direttamente dagli IDE di NXP o attraverso l'interfaccia web ACH.
Conclusione
I microcontroller serie MCX A di NXP sono una soluzione a basso costo e ingombro compatto per gli sviluppatori, con caratteristiche essenziali e un'architettura di potenza innovativa che li rendono adatti a un'ampia gamma di applicazioni embedded, come gli smart meter, l'automazione e il controllo e i dispositivi a basso consumo/alimentati a batteria. I microcontroller, le schede di valutazione e la piattaforma MCUXpresso di NXP possono aiutare gli sviluppatori a sfruttare le funzioni avanzate di modifica, compilazione e debug per innovare, ottimizzare e lanciare nuovi prodotti sul mercato.

Esonero della responsabilità: le opinioni, le convinzioni e i punti di vista espressi dai vari autori e/o dai partecipanti al forum su questo sito Web non riflettono necessariamente le opinioni, le convinzioni e i punti di vista di DigiKey o le sue politiche.