Sistemi avanzati di guida assistita

Mentre il settore automotive è spesso criticato per il fatto che è lento a reagire alle tendenze dei consumatori, impiegando diverse generazioni per integrare funzionalità che sono percepite come valore aggiunto per il conducente, l'attuale spinta verso i sistemi avanzati di guida assistita non è, in generale, determinata dai consumatori, ma è piuttosto la conseguenza del desiderio dei produttori di integrare le caratteristiche di sicurezza che potrebbero presto diventare obbligatorie. Prevalentemente, i sistemi di guida assistita ad oggi in fase di sviluppo sono in larga misura incentrati sull'integrazione di più video che provengono da telecamere accoppiate con sensori avanzati, per fornire una gamma di vantaggi che includono la rilevazione dei punti ciechi, l'avviso di scostamento dalla corsia, la rilevazione dei pedoni durante la marcia, oltre alle viste 3D surround dell'esterno del veicolo che supportano la visualizzazione posteriore picture-in-picture a velocità inferiori. Esistono già delle iniziative, come l'Euro Ncap Autonomous Emergency Breaking Systems prevista per il 2014, che stanno contribuendo a concentrare l'attenzione dei produttori, che devono incorporare queste funzionalità ad alta intensità di calcolo senza aumentare il costo complessivo della distinta materiali.

L'analisi dei dati video
L'analisi dei dati video è in ultima analisi l'attività a più alta intensità di calcolo a cui a un qualsiasi sistema dedicato sia richiesto di gestire; farlo in tempo reale con più flussi costituisce quindi una grossa sfida tecnica. Con più flussi diventa un processo intrinsecamente parallelo, il che impone un livello minimo di prestazioni. Come mostrato in Fig. 1, il flusso dati si origina da un numero crescente di sensori che possono essere di visione, come le camere (incluse quelle a infrarossi) oltre che quelli a tecnologia a infrarossi come i radar. Questo genera una quantità enorme di dati, che devono essere elaborati, combinati assieme e quindi analizzati a livello di pixel per chiarimento - un processo che è sempre più spesso definito come “fusione del sensore”.
Da un punto di vista dell'ingegnerizzazione del sensore, il flusso dati può essere partizionato fra un microcontrollore, un Dsp e un Fpga, come mostrato in Fig. 2. Questo flusso classico è intuitivamente corretto; ciascuna funzione ha uno stadio hardware dedicato che è in grado di gestire il compito per un singolo sensore o gruppo di sensori, come le videocamere con vista panoramica. Tuttavia l'inconveniente di questo approccio in un'applicazione di guida assistita è che le prestazioni e la flessibilità sono limitate. Quando si usa un'architettura multichip occorre prestare grande attenzione nella gestione dei flussi di dati e alla banda dell'interfaccia fra I dispositivi. Inoltre, anche se i sistemi sono stati appositamente progettati per fornire il flusso dati appropriato per un insieme specifico di funzionalità, il cambiamento di una delle funzionalità o persino la modifica di un algoritmo all'interno di una funzionalità potrebbe richiedere una re-ingegnerizzazione completa delle interfacce del dispositivo e delle responsabilità funzionali. Inoltre, è necessario un livello maggiore di fusione dei sensori e di analisi, e una piattaforma con risorse hardware fisse potrebbe non disporre di prestazioni sufficienti per incorporare l'elaborazione extra. Questo evidenzia sia la necessità sia i vantaggi dell'elaborazione parallela. I produttori di Dsp stanno sviluppando dispositivi che si rivolgono al mercato della guida assistita, ma la loro soluzione alla necessità di una maggiore elaborazione parallela consiste tipicamente nell'aggiungere acceleratori hardware dedicati. Mentre questo potrebbe fornire una soluzione, la sua fattibilità è limitata a una realizzazione relativamente ristretta. È anche intrinsecamente difficile ottimizzare gli algoritmi che girano su un Dsp a funzione generica, un processo di progettazione che può diventare più complesso con l'aggiunta di acceleratori dedicati basati su hardware. Una soluzione più fattibile ed estensibile consisterebbe nell'integrare l'intero sistema Adas in una singola piattaforma che ha le prestazioni e la flessibilità di servire un'ampia gamma di applicazioni di guida assistita, e di crescere con lo sviluppo di quelle applicazioni.

Una soluzione a singolo chip
Trasferire tutte le funzionalità nell'Fpga trae vantaggio dalla sua caratteristica principale: il parallelismo, e mentre gli Fpga convenzionali sono progettati per essere flessibili, il SoC Interamente Programmabile Zynq-7000 porta questo concetto oltre. Essendo la prima piattaforma SoC programmabile sul mercato, essa combina la flessibilità e l'estensibilità di un Fpga con le prestazioni dei blocchi Dsp dedicati e la versatilità di un sottosistema MPCore Arm Cortex-A9. Il vantaggio immediato di una soluzione a chip singolo rispetto a una soluzione a tre chip è dato dallo spazio e dai consumi: entrambi sono drasticamente ridotti usando il dispositivo SoC Zynq-7000, ma in aggiunta l'integrazione aumenta anche le prestazioni a livello di sistema. Il SoC interamente programmabile Zynq-7000 ha oltre 3000 interconnessioni fra i core Arm e la matrice Fpga per fornire un'interfaccia ottimizzata fra i domini hardware e software. L'approccio integrato a livello di chip è generalmente accettato essendo più efficiente rispetto ad un'opzione a discreti, sia essa un SoC dedicato, un ASSP o persino un Asic. Tuttavia, una piattaforma SoC programmabile offre tutti i vantaggi di queste opzioni con nessuno dei suoi svantaggi. Come mostrato in Fig. 3, la matrice Fpga fornisce la capacità di realizzare all'occorrenza blocchi hardware dedicati di accelerazione, anziché essere costretti dalle funzionalità fisse di un ASSP, Asic o SoC convenzionale. Questo approccio implica che la partizione hardware/software è configurabile, consentendo agli sviluppatori di mettere a punto esattamente l'entità giusta di prestazioni di elaborazione nel modo più ottimale.

Produttività accelerata nella progettazione
Lo sviluppo di un sistema di guida assistita su una piattaforma SoC programmabile non solo consente l'integrazione di tutte le funzioni necessarie in un sistema Adas, che avrebbe altrimenti dovuto essere gestita da dispositivi Dsp e Mcu a discreti, ma riduce anche il costo totale del BoM anche del 25%, raddoppiando al contempo le prestazioni di elaborazione grezza. Inoltre, una soluzione su chip singolo riduce significativamente lo spazio fisico necessario per realizzare il sottosistema complessivo, come una videocamera per la visione posteriore. Questa è una considerazione importante per i produttori di autovetture e per i leader di mercato, dato che i nuovi sistemi devono essere aggiunti discretamente e il più possibile in modo non appariscente. Per gli ingegneri di sistema, optare per una piattaforma integrata accelererà anche il ciclo di progettazione. Xilinx ha collaborato con fornitori specialisti nel mercato automotive allo scopo di fornire agli Oem un IP ottimizzato ottenibile in licenza per sviluppare sistemi di guida assistita basati sul SoC Zynq-7000 AP. Questo è supportato da una piattaforma di sviluppo dedicata, il Kit di Guida Assistita Automotive LogiADAK del SoC Zynq-7000 del partner di Xilinx Xylon. Ciò che rende la piattaforma SoC Interamente Programmabile Zynq-7000 così applicabile in questo spazio di applicazione è la flessibilità che offre per spostare i confini hardware/software. Grazie al sottosistema pienamente integrato MPCore Arm Cortex-A9, i gruppi di ingegnerizzazione sono liberi di decidere se una funzione sia realizzata meglio nella matrice Fpga o nel sistema processore. Nel caso del kit Adas, Xilinx e i suoi partner hanno già fornito una soluzione a questo aspetto e hanno ottimizzato i propri IP associati alla piattaforma SoC Zynq-7000. Ad esempio, la Alliance Partner Digital Design Corporation ha sviluppato un flusso di algoritmo ottico che è stato ottimizzato per il dispositivo Zynq-7000. Tipicamente questa è una funzione che sarebbe altrimenti trasportata su un Dsp e in questo scenario la soluzione farebbe un ampio uso di memoria (a causa delle risorse limitate di un Dsp). Nella matrice configurabile di un Fpga, le risorse Dsp sono molto più abbondanti, prestandosi all'elaborazione parallela massiccia. Questa realizzazione è molto più dipendente dalle funzioni di elaborazione e meno dalla memoria, che corrisponde esattamente con le risorse disponibili in un Fpga. Xylon vanta anche un'esperienza collaudata di sviluppo e di fornitura di soluzioni avanzate per il mercato automotive, basate sul suo approccio a IP a “blocco logico” pensato per la piattaforma Zynq-7000. Questo consente di integrare facilmente i prodotti, fornendo una via rapida verso la prova del concetto e verso la produzione. Fornendo dell'IP ottimizzato, gli sviluppatori possono ridurre in modo significativo lo sforzo necessario per creare un sistema di guida assistita; in alcuni casi anche di 12 mesi.

Flessibilità e prestazioni
I sistemi Adas stanno diventando rapidamente un'aggiunta “obbligatoria” per i produttori di autovetture e per i leader di mercato, per lo meno per via della legislazione imminente. I vantaggi potenziali per la sicurezza stanno spingendo la normativa, ma sarà la domanda dei consumatori a spingere i sistemi Adas al di là delle pure funzionalità per la sicurezza, come le videocamere per il parcheggio, il riconoscimento dei segnali stradali e persino la navigazione avanzata. I requisiti che queste funzionalità imporranno sui sistemi elettronici che le abiliteranno è destinata solo a crescere nel tempo, nello stesso modo in cui il settore delle comunicazioni mobili ha spinto l'evoluzione dei dispositivi portatili. Una singola piattaforma ha senso in sé in un'applicazione in cui sono critici il flusso di dati e l'analisi profonda. Solo una piattaforma che offre la giusta combinazione di flessibilità e di prestazioni può servire con successo questo spazio di applicazioni e investendo in un ecosistema Adas Xilinx consente ai produttori di autovetture e ai leader di mercato non solo di servire l'applicazione Adas, ma di guidarne lo sviluppo.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome