La prima piattaforma embedded con tecnologia Fusion

Le attività di embedded computing stanno diventando sempre più sofisticate in tutte le applicazioni. Oltre alla potenza di calcolo elevata di tipo generico, prevalentemente seriale, delle Cpu x86, da tempo vengono richieste anche prestazioni aggiuntive dedicate, spesso parallele, per l'elaborazione di algoritmi complessi destinati alla codifica o decodifica di video ad alta definizione, all'elaborazione di dati grezzi come le immagini raccolte da sistemi di visione industriale, o ancora complessi calcoli vettoriali in applicazioni di diagnostica nel settore medicale. Finora, queste attività dovevano essere svolte da un sistema x86 che richiedeva un'enorme potenza di calcolo unita a una frequenza di clock elevata; tutto questo si traduceva in consumi energetici elevati e forte generazione di calore. La tecnologia multicore e il costante miglioramento dell'efficienza dei processori possono in qualche misura "alleviare" questa pressione, ma resta il fatto che la velocità di clock dei processori più veloci non è in grado, da sola, di soddisfare tutti i requisiti.
 
Prestazioni grafiche superiori e risoluzione maggiore
Nel frattempo, le prestazioni grafiche vanno assumendo un'importanza crescente nell'ambito degli applicativi embedded. Finora, i requisiti principali dei sistemi embedded sono stati disponibilità a lungo termine, design compatto, alta efficienza energetica e robustezza, ma ora vengono richieste anche prestazioni grafiche elevate. L'evoluzione è già evidente nei piccoli schermi dei dispositivi mobili. Nel mercato consumer, ad esempio, risoluzioni da 400 x 800 pixel su display da 3,5 pollici vengono già considerate normali. Più grandi diventano i monitor, maggiori sono le risoluzioni offerte. Questo significa naturalmente che, anche nel mondo embedded, gli schermi di piccole e medie dimensioni fino a 15“ offriranno risoluzioni maggiori e quindi vantaggi ulteriori agli utilizzatori. La richiesta di prestazioni sempre più spinte è sostenuta da altre due evoluzioni. Da un lato, i sensori touch capacitivi, necessari per realizzare touchscreen robusti ed estremamente precisi e sistemi multitouch innovativi, hanno ormai rimpiazzato la tecnologia resistiva secondo uno studio di Vdc su sensori e display touchscreen. Dall'altro, i touchscreen di grande formato (oltre 15”) per applicazioni come punti d'informazione e insegne digitali interattive contestuali rappresentano soluzioni fra le più avanzate attualmente in circolazione. Solo considerando le risoluzioni richieste, prestazioni grafiche eccellente sono un must assoluto per tutti questi usi.

Grafica più veloce per un utilizzo migliore
Prestazioni grafiche superiori non sono necessarie solo per ottenere risoluzioni maggiori, ma anche per soddisfare le esigenze di strumenti moderni che impiegano interfacce utente di alta qualità. Esempi numerosi si trovano nel medicale, nell'automazione industriale, nella domotica, nei giochi, nei chioschi, nei sistemi Pos e Poi, nell'infotainment e nel campo delle insegne digitali, interattive e non. In tutti questi casi servono prestazioni 3D all'altezza per proporre animazioni e visualizzazioni coinvolgenti, oltre che per riprodurre contenuti video ad alta definizione con la massima fluidità. In queste applicazioni, però, le prestazioni 3D elevate non servono solo per evitare rallentamenti e "inceppamenti" nella riproduzione di immagini. Più in generale vengono migliorate la funzionalità, la fruibilità e l'affidabilità di tutte le applicazioni su touchscreen. Infine, il core grafico deve anche alleviare il carico di lavoro della Cpu in fase di decodifica di video HD, condizione molto importante, ad esempio, nel campo della tecnologia medicale (ultrasuoni 4D o endoscopia) e nell'infotainment. In questo contesto, il livello delle prestazioni grafiche non riguarda solo gli schermi più grandi, perché anche i formati medio-piccoli richiedono prestazioni adeguate a fronte di risoluzioni sempre più elevate. Inoltre, più le applicazioni embedded si avvicinano al settore consumer, maggiori sono le aspettative degli utenti. Esempi in tal senso sono i videogiochi o i terminali Pos/Poi. Di conseguenza, molte applicazioni embedded diventano sempre più esigenti sul fronte delle prestazioni grafiche.

Maggiore ripartizione dei compiti con Fusion
Finora, le prestazioni grafiche delle soluzioni embedded sono aumentate in proporzione alle prestazioni della Cpu: più aumentavano le esigenze di elaborazione grafica, più cresceva la frequenza di clock della Cpu. Questa relazione non è però fissa: infatti, più cresce il numero di attività rilevate dalla Gpu, più diminuisce il carico di lavoro sulla Cpu. In linea teorica, la frequenza di clock della Cpu può essere ridotta in presenza di una Gpu più potente, ma questo accorgimento non è stato finora necessario perché erano richieste prestazioni superiori per entrambe le unità. Ora, l'evoluzione separata di Cpu e Gpu ha sempre meno senso, e con la piattaforma Embedded Serie G, Amd ha unificato le due tecnologie nello stesso package. Gli utenti hanno così a disposizione un core grafico estremamente potente con prestazioni scalabili per i processori, e tutto questo in un ingombro ridottissimo di soli 19x19 mm. Fusion va oltre la semplice “fusione” dell'hardware: la Apu (Accelerated Processing Unit) unisce infatti la potenza di calcolo seriale del processore alla capacità di elaborazione parallela della scheda grafica. Questo significa che la tradizionale ripartizione dei compiti a livello software fra processore e core grafico viene unificata. In altre parole, il core grafico può subentrare ai core del processore per le attività in parallelo, aumentando così le prestazioni complessive ben oltre i livelli finora raggiungibili. Come è stato possibile realizzare questo obiettivo e che cosa significa per le applicazioni embedded?

Il core grafico come co-processore
Bisogna innanzitutto chiarire la funzione del core grafico che, in funzione del mercato consumer, ha visto aumentare costantemente la propria efficienza. In particolare, la rappresentazione in 3D di mondi virtuali ha spinto le schede grafiche verso la massima potenza di calcolo parallelo. Per poter gestire tutta la varietà di dati grafici, con calcoli di texture, volumi e modellazioni 3D per definire le collisioni, oltre al Vertex Shader per i calcoli geometrici, le funzionalità non sono più "cablate" nell'hardware, ma possono essere programmate liberamente. I moderni core grafici offrono in tal modo una grandissimi flessibilità e potenzialità di sviluppo. Il loro potenziale può essere sfruttato con l'ausilio della cosiddetta Gpgpu (General Purpose Graphics Processing Unit), non solo per calcoli e visualizzazioni grafiche, ma anche per l'elaborazione di dati. Alcuni esempi sono l'elaborazione degli ultrasuoni 3D in medicina, il riconoscimento facciale nel campo della sicurezza, l'elaborazione di immagini negli impieghi industriali, la codifica e decodifica di dati. Alcuni tipi di dati, ad esempio quelli provenienti da sensori, sonde, ricetrasmettitori o videocamere, vengono elaborati in modo più efficiente e veloce da core di elaborazione dedicati piuttosto che da processori x86 con capacità di calcolo seriale generica. Con la Gpgpu, infatti, è irrilevante se i dati dei codici di programma sono prodotti a livello puramente virtuale o provengono da fonti esterne. Esistono quindi elementi che suggeriscono di unificare la Cpu e la Gpu in una Apu per creare una “squadra” ancora più forte.

Contano le prestazioni dell'Apu più che della Cpu
Produttori e utenti possono quindi dire addio all'espressione “prestazioni eccezionali della Cpu”, perché non è più vero che la sola Cpu determina la potenza di calcolo: ora anche il core grafico svolge un ruolo chiave. Oltre alla rappresentazione grafica pura e semplice, questa soluzione viene già utilizzata in applicazioni di massa come gli algoritmi dei filtri applicati dai software di elaborazione delle immagini come Photoshop, i programmi per la codifica e la conversione di dati video, e Adobe Flash Player. Tuttavia, gli sviluppatori hanno dovuto risolvere il problema che le architetture e gli strumenti di programmazione tradizionali delle Cpu non erano adatti per l'elaborazione di dati vettoriali con multithread paralleli. Questi ostacoli possono essere superati dalla tecnologia Fusion. Grazie ad Api di facile utilizzo, ad esempio DirectCompute di Microsoft od OpenCL, entrambi supportati dalla tecnologia Fusion di Amd, gli sviluppatori di software applicativi possono sfruttare appieno il potenziale del core grafico dell'Apu per compiti diversi dalla funzione originale di riproduzione grafica. Naturalmente è necessario che il core grafico supporti questa possibilità, e la piattaforma embedded Serie G di Amd è la prima con questa capacità. Amd fornisce già kit di sviluppo che semplificano l'adozione di un nuovo tipo di elaborazione dati. 

L'elaborazione embedded diventa semplice
La tecnologia Fusion non si adatta solo ad applicazioni speciali. La piattaforma Serie G può essere utilizzata ad ampio spettro sui computer embedded. Grazie a prestazioni largamente scalabili, dalle varianti single-core economiche a 1,2 GHz alle versioni con due processori dual-core a 1,6 GHz, la nuova piattaforma Amd copre circa l'80% delle esigenze applicative nel mercato embedded, dalle prestazioni più basse alla potenza più elevata. Per riportare il livello di prestazioni a riferimenti chiari, si può affermare che la piattaforma Amd Embedded G-Series è adatta ad applicazioni con un profilo di requisiti equivalente a un processore Intel Atom con dual core Intel Core i5 (prima generazione). A questo si aggiungono però prestazioni grafiche superiori, che grazie alla Gpgpu possono essere sfruttare per attività di elaborazione embedded. Questo fattore però non è ancora stato incorporato nel calcolo delle prestazioni; pertanto, a seconda dell'applicazione, il potenziale a livello di prestazioni può essere ancora notevolmente aumentato. Indipendentemente dal settore, le case produttrici possono quindi implementare l'intera gamma di prodotti su un'unica architettura di processore. Questo non solo riduce i costi e i tempi di sviluppo, ma semplifica anche la gestione della supply chain e del ciclo di vita, abbassando i relativi costi. L'utilizzo di Computer-On-Module è raccomandato per gli Oem e gli sviluppatori che preferiscono sfruttare direttamente i componenti di elaborazione del core senza troppo lavoro di progettazione e che vogliono anche ottimizzare ulteriormente la gestione della supply chain con una piattaforma Cots il più flessibile possibile.

Computer-On-Module, il veicolo tecnologico ideale
I Computer-On-Module sono Pc embedded con funzionalità core avanzate che possono essere montati facilmente su schede base. L'unica attività di sviluppo è la customizzazione della scheda base con gli I/O richiesti per l'applicazione specifica del cliente. In questo modo si semplificano notevolmente lo sviluppo e la fase di design-in dei sistemi embedded. I tecnici dell'assistenza e gli ingegneri sviluppatori supportano già i clienti proponendo nuove idee di prodotto. Pertanto i costi e l'integrazione del sistema possono essere ottimizzati fin dall'inizio. Grazie all'intercambiabilità dei moduli, la scalabilità non riguarda solo la potenza di calcolo, ma anche le interfacce supportate. Utilizzando Computer-On-Module è possibile adottare velocemente la nuova piattaforma Amd G-Series sia sulle applicazioni esistenti sia su nuovi progetti. Il primo Computer-On-Module al mondo dotato del nuovo processore è la scheda Com Express conga-BAF di congatec. La nuova conga-BAF con Amd Fusion offre agli Oem prestazioni combinate di calcolo e grafica finora impensabili o comunque possibili solo con un Tdp (Thermal Power Design) molto più elevato. La scheda conga-BAF è un Computer-on-Module Com Express in formato Com Express Basic (125 x 95 mm) ed è scalabile su tutta la larghezza di banda delle Apu su piattaforma Amd G-Series, dall'Apu single-core a 1,2 GHz alla variante dual-core a 1,6 GHz. Questo permette agli Oem di calibrare con precisione la potenza di calcolo secondo le prestazioni richieste. Il sistema supporta due banchi di memoria veloce Ram Ddr3 fino a 8 GB, che accelerano ulteriormente le applicazioni che fanno uso intensivo di memoria. Conformi alla nuova Com Express Specification Com.0 rev. 2.0, la scheda è dotata di 6 canali Pci Express x1 Gen 2.0, 4 interfacce Sata 3, 1 interfaccia Pci, Gigabit Ethernet, 8 interfacce Usb 2.0 ed Eide. In particolare, gli sviluppatori potranno beneficiare delle interfacce di visualizzazione digitali dedicate con 2 DisplayPort, e Hdmi o Dvi, che consentono un'integrazione più rapida e flessibile con tutti i tipi di monitor attualmente in commerci. Naturalmente sono supportati anche Vga e Lvds. In totale si possono gestire due display indipendenti. Soprattutto per applicazioni dove la sicurezza è essenziale, ad esempio nel settore dei giochi, il nuovo modulo mette a disposizione una soluzione discreta e affidabile per il massimo di sicurezza a livello di autenticazione e integrità dei dati. La nuova conga-BAF viene consigliata come soluzione a costi accessibili per tutte le applicazioni che, oltre alla massima scalabilità delle prestazioni della Cpu, richiedono prestazioni grafiche elevate o sono destinate all'elaborazione parallela di grandi flussi di dati, come ad esempio nell'elaborazione di ultrasuoni o immagini.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome