Colpo di scena: Maxim Integrated elimina i rischi di RISC-V con un microcontroller dual core Arm/RISC-V
Anche se i core Arm hanno dimostrato di essere affidabili e sono attualmente presenti nella maggior parte dei dispositivi mobili e degli endpoint Internet delle cose (IoT), è comunque utile e rassicurante avere un'alternativa, dato che non sempre una soluzione è valida per tutto.
Perché non considerare allora la CPU RISC-V a 32 bit. RISC-V (si pronuncia "risk five") è un'architettura open-source, non soggetta a royalty, che rappresenta il primo concorrente serio, da tempo immemorabile, del consolidato ecosistema dei core CPU Arm. La variante base RV32 ha 31 registri a 32 bit per uso generale, denominati da x1 a x31 (il registro x0 è collegato in modo fisso a 0). Supporta estensioni dell'architettura che assicurano flessibilità per applicazioni diverse. Ad esempio, se si deve costruire un microcontroller, l'estensione RISC-V "B" supporta la manipolazione dei bit nativa che, sulla base della mia esperienza pluriennale con i microcontroller, indica che l'architettura permette di gestire in modo serio tutto ciò che si trova sotto.
Il problema però sta nel far accettare la nuova architettura agli ingegneri. È sempre arduo far adottare un prodotto quando un altro analogo va per la maggiore.
Maxim Integrated ha risolto questo problema cavalcando l'onda. MAX78000EXG+ è un microcontroller dual core con core Arm Cortex-M4 a 100 MHz, unità a virgola mobile (FPU) e un'ampia gamma di interfacce di comunicazione seriali. Il core Arm però condivide il bus principale con un secondo core RISC-V a 32 bit (Figura 1). Il secondo core non è l'unico motivo per cui vale la pena di analizzare meglio MAX78000EXG+. Il microcontroller ha un acceleratore a rete neurale convoluzionale (CNN) del peso di 442 kB per il riconoscimento per paragone di immagini tramite intelligenza artificiale (IA). Il ruolo del core RISC-V è principalmente quello di accesso diretto alla memoria (DMA) intelligente programmabile per spostare i dati tra la CNN e la memoria su chip. Il core RISC-V può però funzionare anche in modo indipendente, rendendo MAX78000EXG+ dal punto di vista tecnico un processore dual core.
Figura 1: Il microcontroller MAX78000EXG+ di Maxim Integrated ha un core Arm Cortex-M4 con FPU, affiancato da un core RISC-V. Dispone inoltre di un'ampia gamma di interfacce seriali e di una CNN per l'elaborazione con IA. (Immagine per gentile concessione di Maxim Integrated)
A questo punto potrei fare un confronto tra le varianti e gli ecosistemi dell'architettura RISC-V e Arm, ma la realtà è che ogni volta che un team di ingegneri acquista una nuova architettura di microcontroller che non sia già in uso dalla propria azienda, fa una scelta che può influenzare la propria carriera. Ad esempio, un produttore di moduli rischia di farsi rifiutare i prodotti da un integratore perché il core principale utilizzato nel prodotto non è famoso o, per dirla in altri termini, "non è accettato nel settore". L'ho visto succedere quando lavoravo in un'azienda di semiconduttori. Feci visita a un produttore di moduli per foto/videocamere digitali.
L'azienda aveva costruito un fantastico modulo per foto/videocamere digitali basato su un processore di segnali digitali (DSP) decisamente di nicchia, e con questo intendo che rappresentava meno del 10% del mercato DSP. Sebbene il modulo vantasse statistiche impressionanti, nonostante la mia brillante presentazione PowerPoint e le mie spiccate abilità di comunicazione, non riuscii a convincere il produttore di moduli a utilizzare il mio DSP. Almeno all'inizio.
Successe infatti che gli integratori di foto/videocamere digitali che il produttore di moduli contattò non condivisero il suo entusiasmo per il DSP di nicchia. Nonostante il netto vantaggio in termini di prestazioni, nessun integratore voleva collaborare con l'azienda e acquistare il modulo. Il core DSP di nicchia con le sue fantastiche specifiche era troppo poco conosciuto e, senza una sufficiente adozione da parte del mercato, si temeva che potesse andare fuori produzione. Dopo averci pensato un po' su, il produttore di moduli tornò da me e trasferimmo il suo codice sul nostro DSP.
Un'altra preoccupazione legata all'acquisto di un nuovo core è il fatto che gli ingegneri non hanno molta esperienza con l'architettura. A volte non ne hanno affatto. In una situazione del genere, possono sottostimare le prestazioni del core nella loro applicazione o i requisiti di memoria. A differenza di quanto avviene con un regolatore di tensione, dopo aver acquistato un core ci possono volere molti mesi di sviluppo (che comprendono anche l'aggiunta frenetica di nuove funzioni all'applicazione) prima di scoprire che le prestazioni non sono quelle previste.
Maxim Integrated ha apparentemente risolto i rischi tecnici e di business associati all'acquisto di un core RISC-V con MAX78000EXG+. Quando non viene usato come DMA intelligente, il core RISC-V può essere utilizzato come secondo core nell'applicazione. Eventuali dubbi sulle prestazioni vengono presto fugati dalla presenza confortante di un Cortex-M4 e dalla FPU associata.
Conclusione
I tempi per l'acquisto di un nuovo core come RISC-V possono essere maturi, anche se rimane una certa incertezza per quanto riguarda le prestazioni in un'applicazione. L'adeguatezza per lo scopo e i requisiti di memoria non sono ancora noti e ci possono volere mesi di sviluppo prima di comprendere a pieno e apprezzare le possibilità del core. Tuttavia, MAX78000EXG+ di Maxim Integrated, per quanto possa sembrare tecnologicamente ironico, è riuscito grazie al core Arm a ridurre le preoccupazioni di natura tecnica e di business legate all'adozione di un core RISC-V in una nuova applicazione.

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum