La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

UNIVERSITÀ DEGLI STUDI DI TRIESTE Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica REALIZZAZIONE DI UN SISTEMA EMBEDDED.

Presentazioni simili


Presentazione sul tema: "UNIVERSITÀ DEGLI STUDI DI TRIESTE Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica REALIZZAZIONE DI UN SISTEMA EMBEDDED."— Transcript della presentazione:

1 UNIVERSITÀ DEGLI STUDI DI TRIESTE Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica REALIZZAZIONE DI UN SISTEMA EMBEDDED CON ACCELERAZIONE HARDWARE 2D SU FPGA Candidato: Matteo GEROMIN Relatore: Prof. Stefano MARSI Correlatore: Ing. Matteo VIT Anno Accademico

2 Sommario Stato dell’arte: Hardware e Software Progetto preesistente
Frame Buffer Acceleratori Grafici Sistemi Embedded Hardware e Software Progetto preesistente Progetto realizzato Confronto fra i due sistemi Sviluppi futuri

3 Frame Buffer Immagine composta da tanti pixel
Memorizzati in sequenza nel frame buffer Profondità colore : 1bpp, 2bpp, 4bpp, 8bpp, 16bpp, 24bpp, 32bpp

4 Acceleratori grafici Meno carico al processore di sistema
Accelerazione 2D e 3D Per il bidimensionale: BITblt e sprite Riempimento aree Linee e poligoni Cerchi ed archi Caratteri Uscita video VGA o DVI

5 Sistemi Embedded Sistemi a microprocessore dedicati
Hardware: progettato ad hoc Software: dimensioni molto variabili

6 Obiettivi Settore: controlli industriali
Realizzazione prototipo: testare vantaggi dell’accelerazione grafica 2D in sistemi Embedded

7 Descrizione Hardware XILINX ML403 Virtex-4 FX Evaluation Platform
Virtex4-FX (XC4VFX12) PowerPC 405 64MB DDR-SDRAM 1MB ZBT SRAM VGA DAC Expansion Headers RS-232 Serial Port

8 FPGA e HDL 1/2 Field Programmable Gate Array
Circuiti logici programmabili CLB Configurable Logic Block Interconnections I/O Blocks Memory blocks Other functions blocks (DCM, DSP, Multiplier)

9 FPGA e HDL 2/2 Hardware Description Language
VHDL, Verilog, SystemC Similitudini con linguaggi di programmazione: If..Then..Else, For, While, Case…. Differenze con i linguaggi di programmazione: Organizzazione a moduli Interazione tramite “fili” e registri Esecuzione parallela delle istruzioni Vari livelli di astrazione: Behavioural, Structural, RTL Sintesi e simulazione

10 PowerPC 405 Hard IP 32 bit RISC (Reduced Instruction Set Computer)
Architettura Harvard Processor Local Bus

11 Software utilizzato Ambiente di sviluppo e sintesi Simulazione
EDK (Embedded Development Kit) ISE (Integrated Software Environment) Simulazione ModelSim-XE & ISE-simulator Debug on-chip ChipScope

12 Progetto Preesistente
MicroBlaze: Soft-ip PLB or OPB Harvard Customizable 2D Graphic Engine Display Controller 2MB frame buffer 640x480 32 bpp Block RAM

13 2D Graphic Engine 1/5 Interfaccia Bus OPB:
gestione comunicazioni da e verso il bus OPB gestione registri organizzazione dati e comandi

14 2D Graphic Engine 2/5 Decoder immagazzina e distribuisce i comandi
monitorizza e comanda i moduli di accelerazione

15 2D Graphic Engine 3/5 Moduli funzioni accelerate illuminazione pixel
disegno rettangoli disegno linee (Bresenham) visualizzazione caratteri (maschere) elaborano colore e posizione dei pixel

16 2D Graphic Engine 4/5 Arbiter
memorizza temporaneamente i pixel elaborati invia in successione i pixel al frame buffer

17 2D Graphic Engine 5/5 Display Controller
gestione comunicazioni con la ZBT SRAM (frame buffer) gestione accessi in memoria generazione sincronismi lettura pixel ed invio a display

18 Nuovo Progetto OpenCores (www.OpenCores.org) Bus Wishbone

19 BUS Wishbone Architettura di comunicazione dati sincrona e parallela.
8bit, 16bit, 32bit, 64 bit Point to Point Shared Bus Crossbar Swich Read, Write, RMW Accesso in burst grazie a terminazione avanzata del ciclo Protocollo di HandShake (stb, cyc, ack)

20 Wishbone Conmax Arbiter
Gestione degli accessi: Bus 32bit 8 Master, 16 Slave Indirizzamento Slave con ultimo nibble (4bit) del bus indirizzi Fino a 4 livelli di priorità impostabili su registri Round-Robin nel caso di priorità uguale

21 VGA/LCD Controller Generazione sincronismi e lettura pixel da Frame Buffer Interfaccia Slave per modifica impostazioni Interfaccia Master per accesso a Frame Buffer Profondità di colore: 32bpp 24bpp 16bpp 8bpp scala di grigi 8bpp lookup table

22 ZBT SRAM Controller Interfaccia Slave per accesso alla memoria ZBT SRAM Accesso singolo in lettura o scrittura (non ottimizzato) Accesso in BURST indirizzi consecutivi

23 Modifiche per l’implementazione
Modulo acceleratore: creazione master e slave supporto 16bpp (RGB 565) Indirizzamento slave tramite il terzo Nibble più significativo di indirizzo Creazione delle maschere caratteri Generazione delle frequenze: problema del clock skew

24 Caratteristiche dei sistemi
Nuovo Preesistente Processore PowerPC405 MicroBlaze F processore 200Mhz 28.57Mhz F sistema 100Mhz Pixel Clock 25Mhz Risoluzione 640x480 Accesso diretto FB SI NO Funz. acc. Line, blit, pix, char Line, blit, pix

25 Analisi delle prestazioni 1/2
Definitivo Preesistente medio (us) minimo (us) massimo (us) 640x480 30026 - 48359 320x480 15012 24221 320x240 7524 12148 160x120 1881 681,84 3058 4447 100x100 979,71 357,04 1597 2321 100x50 489,75 180,29 810,98 1175 50x50 244,72 91,04 417,07 603,41 10x10 9,95 4,24 19,67 25,05

26 Analisi delle prestazioni 2/2

27 Conclusioni

28 Conclusioni Sviluppi futuri: Ottimizzazione accessi al Frame Buffer
FPGA più performante Supporto risoluzioni e profondità colore multiple Separazione acceleratore e processore (PCI) Standardizzazione registri e funzioni Driver e sistema operativo (Linux)


Scaricare ppt "UNIVERSITÀ DEGLI STUDI DI TRIESTE Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica REALIZZAZIONE DI UN SISTEMA EMBEDDED."

Presentazioni simili


Annunci Google