Liberi di personalizzare con i SoC basati su Arm

FPGA –

Gli Fpga che integrano on-chip un core Arm segnano l’inizio dell’era dei sistemi embedded su chip singolo economici e flessibili.

In una situazione di mercato caratterizzata da livelli di competitività sempre più spinti, i progettisti di sistemi embedded devono procedere a un profondo riesame dei loro processi di progettazione e sviluppo. L'incremento della complessità dei sistemi e la necessità di soddisfare a vincoli sempre più stringenti in termini di prestazioni, consumi e ingombri hanno messo in evidenza i limiti dei metodi tradizionali finora adottati. Contemporaneamente la costante evoluzione degli standard, l'emergere di nuovi mercati e la “volubilità” delle tendenze richiedono l'adozione di un processo di design più versatile e in grado di reagire in tempi brevi al mutare delle richieste. I progettisti non solo devono creare design più complessi, ma anche essere capaci di sviluppare in tempi brevi progetti nuovi o derivati da quelli già esistenti. Di fronte a queste richieste, appare logico aspettarsi che i team di progetto possano beneficiare di un aumento sia delle risorse a disposizione sia dei tempi di sviluppo: invece si verifica la situazione opposta. Le finestre temporali sempre più strette di introduzione dei nuovi prodotti costringe questi team a sviluppare sistemi sempre più versatili e avanzati in tempi più brevi. I vincoli di natura economica, inoltre, impongono una riduzione di questi team. Di fronte a una situazione come quella appena delineata, appare evidente l'esigenza di adottare nuove metodologie per realizzare quei prodotti flessibili, ad alte prestazioni e sempre più ricchi di funzionalità che il mercato richiede.

Una soluzione emergente
Un'evoluzione di mercato che si sta rivelando vantaggioso per i progettisti è l'emergere dei processori Arm come piattaforma di riferimento per i sistemi embedded. Solo fino a pochi anni fa il mercato dei processori era frazionato tra numerose architetture - PowerPC, Risc, Mips e Sparc - ciascuna delle quali aspirava a divenire quella predominante. Il mercato è ora divenuto maturo e molti utenti hanno adottato il processore Arm come standard de facto per le applicazioni embedded. Da qui la diffusione di un numero crescente di soluzioni basate su Arm, che vanno dai prodotti standard, a core IP Arm di tipo soft, ai blocchi IP di tipo hard per l'integrazione in logiche programmabili e circuiti Asic. Anche in un contesto di questo tipo, le opzioni per la realizzazione dei sistemi embedded possono non essere in grado di soddisfare i moderni requisiti progettuali. Le soluzioni multi chip, sebbene relativamente semplici da implementare, risultano costose e spesso non assicurano le caratteristiche in termini di flessibilità, prestazioni e consumi richieste dai progettisti. Le soluzioni su chip singolo che prevedono core di processori di tipo “soft”, anch'esse di semplice implementazione, risultano invece penalizzate in termini di prestazioni. All'estremità opposta vi sono i SoC di tipo Asic che dispongono di core Arm di tipo hardened (ovvero implementati in hardware) che assicurano elevate prestazioni, ridotti consumi e un livello di ottimizzazione spinto a fronte di lunghi tempi di sviluppo (con riflessi negativi sul time-to-market), scarsa flessibilità e costi che risultano troppo elevati per la maggior parte delle applicazioni.
Al fine di risultare competitivi, i progettisti di sistemi embedded devono quindi poter disporre di un'opzione che consenta di sviluppare prodotti differenziati tra di loro in maniera flessibile ed efficiente.
Le realizzazioni su chip singolo basate su Fpga, grazie al basso costo e al ridotto time to market, si propongono come un'alternativa decisamente interessante alle soluzioni multi chip e ai SoC di tipo Asic. Nel corso dell'ultimo decennio si è assistito a un rapido incremento dell'uso di processori embedded negli Fpga. In ogni caso, non tutte le soluzioni basate su Fpga risultano adeguate a soddisfare le attuali esigenze del mercato. Tradizionalmente i sistemi Arm basati su Fpga sono stati realizzati mediante core Arm di tipo “soft” basati su Hdl. Un approccio di questo tipo è utile nel caso di sistemi che non hanno esigenze particolarmente spinte in termini di densità, consumi o prestazioni, ma non è adeguato nel caso di sistemi che devono soddisfare vincoli più stringenti. Per un numero sempre crescente di sistemi l'abbinamento tra un core Arm di tipo hardened ottimizzato integrato in una piattaforma Fpga rappresenta una soluzione di gran lunga migliore.
Grazie alle più recenti evoluzioni tecnologiche degli Fpga di produttori come Altera, questi nuovi tipi di dispositivi SoC hanno iniziato a fare la loro apparizione sul mercato e sono in grado di offrire tutta l'ampia gamma di funzionalità richiesta dalle attuali applicazioni embedded.
Questi SoC Fpga basati su Arm abbinano in un unico chip un processore Arm, controllori di memoria, circuiti periferici e una struttura Fpga personalizzabile. In un SoC Fpga basato su Arm, un sistema Hps (Hard Processor System) ottimizzato è strettamente connesso a un Fpga su un medesimo chip. Il sistema processore Hps - che include un processore Arm dual core, controllore di memoria multi porta e numerosi elementi periferici - assicura prestazioni di elaborazione fino a 4.000 Mips (benchmark Dhrystones 2.1) con consumi inferiori a 1,8 W. Questi blocchi IP hard, oltre a garantire alte prestazioni a fronte di consumi e costi ridotti, mettono a disposizione le risorse logiche necessarie per la differenziazione dei prodotti. La struttura Fpga presente on-chip può essere personalizzata dai progettisti per generare la logica specifica richiesta da una data applicazione. La programmabilità garantisce la flessibilità necessaria per adattare i progetti in modo che questi possano supportare nuovi standard di comunicazioni (come pure modifiche di quelli esistenti), protocolli di comunicazione e variazioni del livello di prestazioni richieste.

Un esempio applicativo
In un azionamento (drive) progettato in maniera tradizionale sono presenti un Dsp utilizzato per effettuare le funzioni di controllo principali, un circuito Asic per i protocolli di networking e un Fpga per espletare alcune funzionalità aggiuntive (in questo caso per l'espansione di I/O). In una realizzazione tramite SoC Fpga, tutti questi tre elementi sono integrati in un solo chip. Questa implementazione permette di aumentare il numero di funzionalità esistenti, consentendo il supporto di più motori e protocolli di networking, nonché di blocchi IP di sicurezza necessari per garantire un arresto sicuro e la conformità ai nuovi standard di sicurezza adottati in ambito industriale. Un approccio che prevede l'uso di un solo chip assicurano notevoli incrementi a livello di prestazioni e consumi. In un sistema di azionamento, la velocità dell'anello di controllo è senza dubbio il parametro più critico. Una soluzione di tipo SoC Fpga garantisce un incremento di velocità dell'anello di controllo di un fattore pari a 20 - da 100µs a 5µs - rispetto a una soluzione multi-chip. Ciò si traduce in un notevole incremento del rendimento, che può influire in misura pari al 90% sul costo totale del funzionamento del drive. Nell'esempio preso in considerazione, il consumo di potenza del SoC è stata stimato inferiore del 37% rispetto a quello di una realizzazione mediante tre chip. L'approccio SoC Fpga permette di ridurre il costo totale del sistema grazie all'integrazione e all'aumento delle funzionalità presenti nel sistema. Abbinando tre o più dispositivi in un singolo chip, è possibile ridurre il numero di componenti richiesti per realizzare il sistema. Con una realizzazione tramite SoC, quindi, è possibile ridurre del 57% le dimensioni della scheda. Senza dimenticare la possibilità di realizzare un numero maggiore di potenzialità a costi inferiori. Nell'esempio preso in considerazione, il SoC utilizzato supporta due motori, mentre un'implementazione multi-chip ne supporta uno solo. Il supporto per due motori con un unico chip si traduce in una riduzione dei costi del 53% rispetto a un approccio che prevede la duplicazione del dispositivo multi chip per ciascun motore. Il SoC Fpga, inoltre, può essere modificato in maniera estremamente semplice per supportare più motori e sistemi di azionamento integrati, così come un numero superiore di protocolli.

Un “punto di non ritorno”
I team di progettazione che adottano la tecnologia SoC Fpga possono quindi ottenere significativi incrementi di produttività e un gran numero di vantaggi competitivi. I blocchi IP di tipo hard assicurano le migliori prestazioni, i più bassi consumi e la maggiore densità possibile, mentre la struttura Fpga presente sul chip dà l'opportunità di differenziare le funzionalità, aumentarle e/o personalizzarle nel corso della progettazione oppure direttamente sul campo. Una piattaforma programmabile sul campo, unitamente alla disponibilità di tool per la progettazione e lo sviluppo software collaudati e automatizzati consente ai progettisti di realizzare un SoC custom utilizzando componenti standard in un tempo sensibilmente inferiore rispetto a quello richiesto per l'implementazione tramite Asic o dispositivi multi-chip. Il progetto risultante è flessibile, scalabile e riutilizzabile, in modo da consentire ai progettisti di effettuare modifiche in tempi brevi e rispondere velocemente alle esigenze di nuovi mercati, alle variazioni degli standard e all'adozione da parte degli utenti dei nodi tecnologici delle più recenti generazioni, così come di realizzare prodotti caratterizzati da tempi di permanenza sul mercato superiori.
In definitive i SoC basati su Fpga si stanno proponendo sempre più come alternativa affidabile e vantaggiosa rispetto agli approcci tradizionali per il progetto degli odierni sistemi embedded. Grazie alle potenzialità di questo approccio i progettisti sono in grado non solo di affrontare in maniera efficace le problematiche legate ai tempi di esecuzione, ma ottenere anche significativi vantaggi per quanto attiene time to market, rapporto tra prezzo e prestazioni, differenziazione e longevità dei loro prodotti.

Pubblica i tuoi commenti