I costanti progressi nelle prestazioni grafiche dei microcontrollori ST danno vita a GPU NeoChrom, una nuova unità di elaborazione grafica
Fonte ST
Microcontrollori come l’STM32U5 possono eseguire interfacce complesse precedentemente fuori portata. NeoChrom ottimizza la realizzazione di animazioni come capovolgimenti, giri, ridimensionamento, zoom e altro. Il nuovo hardware IP accelera la mappatura delle texture e l’alpha blending.
Cosa sono le GPU Chrom-ART e NeoChrom?
I lettori che hanno familiarità con le tecnologie ST possono intuire che la GPU NeoChrom rappresenti l’evoluzione di Chrom-ART, un acceleratore 2D (DMA2D) incorporato all’interno di diversi MCU STM32 che ottimizza l’accesso alla memoria per la manipolazione veloce delle immagini. È utilizzato da prodotti di partner ST come Storyboard di Crank, https://blog.st.com/storyboard/ Microvisor di Twilio https://blog.st.com/stm32u5-microvisor/ o le interfacce di PsiControl, https://blog.st.com/psicontrol/ un implementatore TouchGFX.
La GPU NeoChrom si ispira alla stessa filosofia offrendo al contempo una maggiore portata di ottimizzazioni. Grazie alla mappatura delle texture con campionamento bilineare e puntuale, la nuova tecnologia fornisce una nuova accelerazione del disegno e supporta le animazioni.
In che modo la GPU NeoChrom si integra nell’ecosistema TouchGFX?
Storicamente, Chrom-ART ha rappresentato una delle prime incursioni della ST nelle ottimizzazioni grafiche. Una volta acquisito TouchGFX e costruito un intero ecosistema con TouchGFX Designer, Simulator e Generator. Di conseguenza, ST ha iniziato ad integrare in questi strumenti la GPU NeoChrom.
TouchGFX Designer contiene demo che mostrano un’animazione fluida in esecuzione a 60 FPS su un display circolare. Di più, rende possibile una chiara presentazione dell’impatto sul frame rate anche quando la GPU NeoChrom è spenta per aiutare i decisori a capirne l’importanza. La facile integrazione del nuovo IP all’interno di TouchGFX testimonia il valore dell’ecosistema coeso di ST.
Quali sono le sfide per le prestazioni grafiche?
Esistono due sfide principali alle prestazioni grafiche: una limitazione delle istruzioni per clock e un problema di memoria. Il primo segue spesso innovazioni architettoniche. I microcontrollori hanno restrizioni ALU e FPU a causa delle loro dimensioni e del basso consumo energetico, ma i miglioramenti nei processi di produzione consentono più transistor in grado di gestire più operazioni. La GPU NeoChrom segue tali tendenze con un IP hardware che accelera più tipi di calcoli grafici.
La seconda sfida è più complicata ma tanto più critica perché la memoria rimarrà sempre una risorsa scarsa. Mentre l’STM32U599 verrà fornito con 2,5 MB di RAM interna in grado di memorizzare due frame buffer, molti sistemi embedded necessitano di RAM esterna. Il problema è che viene fornito con significative penalità di prestazione.
Cosa sono le implementazioni particolari di STM32?
Per risolvere questa seconda sfida, la GPU NeoChrom viene fornita con ottimizzazioni hardware specifiche per gli MCU STM32. Ad esempio, l’STM32U5 si basa su un’interfaccia periferica seriale ottale (OSPI) a 8 bit o su un’interfaccia ad alta velocità (HSPI) a 16 bit a 200 MHz su moduli di memoria esterni per accelerare le operazioni di recupero nella cache L2.
La tassellatura è notevolmente più veloce grazie al rapido accesso a tutti i dati necessari per rendere l’immagine in tempo reale. Le prestazioni sono state ottimizzate riducendo il tempo necessario per accedere a texture e altre risorse, accelerando il rendering fino a sei volte.
E poi?
Il primo feedback del settore sulla GPU NeoChrom è stato molto positivo. Sebbene molti produttori di MCU abbiano IP simili per accelerare i calcoli grafici, le specifiche ottimizzazioni STM32 e l’ecosistema TouchGFX hanno portato molti dei primi alpha tester ad adottare le GPU NeoChrom invece di soluzioni concorrenti.
La nuova tecnologia è già supportata in TouchGFX 4.19 e alcuni clienti alpha hanno già lavorato su UI pronte per la produzione utilizzando un kit di sviluppo STM32U599 in arrivo. ST includerà anche la GPU NeoChrom in altri microcontrollori in arrivo.
(lo)