POLITECNICO DI MILANO Studio e realizzazione di controller VGA per sistemi embedded basati su FPGA Stefano Magnoni : [email protected] Arber Ngjela : [email protected] Relatore: Prof. Francesco BRUSCHI Correlatore: ing. Marco Domenico SANTAMBROGIO Indice Contesto, Motivazioni e Obiettivi Componente che supporta lo standard VGA per Xilinx Spartan 3 Xilinx Virtex 4 Risultati Analisi caso di studio Conclusioni e Sviluppi Futuri 2 Contesto, Motivazioni e Obiettivi Nell’elaborazione di immagini sono presenti vincoli temporali sempre più stringenti per cui talvolta si preferisce l’adozione di soluzioni hardware Possibile metodologia di lavoro: Trasferimento immagini da PC alla board Manipolazione delle immagini Trasferimento immagini dalla board al PC Proposta: Realizzare un core che possa proiettare il risultato su monitor Standard VGA 3 VGA core per Spartan 3 (1/2) I dispositivi messi a disposizione dalla scheda DAC a 3-bit 2 x SRAM da 512KByte Core realizzato 4 VGA core per Spartan 3 (2/2) Il componente visualizza i pixel su un monitor acquisendo parole di 16 bit dalla memoria. Ogni parola contiene 5 pixel e quindi si ha un bit non utilizzato. Overhead = 1/16 = 6,25% No buffer Dominio applicativo ristretto 5 PLB-TFT-LCD-CNTLR per Virtex 4 (1/2) Dispositivi presenti sulla scheda DDR da 64MByte DAC a 15-bit Architettura bus-based Trasferimento dati su PLB Controllo su DCR 6 PLB-TFT-LCD-CNTLR per Virtex 4 (2/2) Clock Due domini Gestore: DCM (Digital Clock Manager ) 7 Caso di Studio (1/3) Caso di studio Ricerca zone calde in immagini termografiche Scorrimento sequenziale dei pixel per l’evidenziazione delle zone di interesse 8 Caso di Studio (2/3) Soluzione su Spartan 3 starter board: Conversione dell’input in modalità 8 colori Nessun filtraggio sul rumore dell’immagine di input Zone rosse diventano zone nere Risultati ottenuti: 9 Caso di Studio (3/3) Soluzione su board ML403: Filtraggio FIR (Finite Impulse Response) tramite filtro di “smoothing” per riduzione rumore gaussiana Riconoscimento livelli con i seguenti risultati: 10 Conclusioni e Sviluppi Futuri ML403 Installazione sistema operativo linux e mappatura a video dello standard-output Eliminare l’attuale collo di bottiglia legato al trasferimento seriale utilizzando la porta USB Spartan 3 starter board Poco utilizzabile a fini pratici Passaggio all’utilizzo di 2 board 11 Dimostrazione Mettiamo qui il video?? 12 Domande 13