La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Politecnico di Milano SINTESI DI IMMAGINI FRATTALI ATTRAVERSO CALCOLI IN MULTITHREAD SU DIOPSIS 740 Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio.

Presentazioni simili


Presentazione sul tema: "Politecnico di Milano SINTESI DI IMMAGINI FRATTALI ATTRAVERSO CALCOLI IN MULTITHREAD SU DIOPSIS 740 Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio."— Transcript della presentazione:

1 Politecnico di Milano SINTESI DI IMMAGINI FRATTALI ATTRAVERSO CALCOLI IN MULTITHREAD SU DIOPSIS 740 Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio Candidato: Falcetti Massimo matr A.A. 2005/2006

2 - Falcetti Massimo –2 Obiettivi Partecipazione al DIOPSIS 740 – DSP Contest 2005 Studio dellarchitettura del D740 Scelta di unapplicazione che sfrutti larchitettura e ne esalti le qualità di multithreading (processori disaccoppiati) Applicazione di test per il profiling (Scelta partizionamento) – In C standard Ideazione algoritmo per larchitettura del D740 Scambio di valori float tra le due CPU (non previsto dallarchitettura) Metodo di sincronizzazione tra i due processori (coda ciclica) Analisi dei risultati ottenuti

3 - Falcetti Massimo –3 Diopsis 740 Overview Dual inter operating processors for silicon systems Struttura biprocessore dotata di una normale CPU RISC a 32 bit (ARM), accoppiata ad un DSP - VLIW (mAgic) ottimizzato per lavorare in campo complesso e con numeri floating point a 40 bit.

4 - Falcetti Massimo –4 mAgic Funzionamento: RUN MODE – SYSTEM MODE Arm System 32K ARM Memory mAgic DSP core Shared Memory Amba ASB Data Memory (6k+6k) x 40 bit Double Bank Double Port mAAr 8Kx128 bit Program Memory RUN MODE – effettivo funzionamento di mAgic (accesso da parte di mAgic della sola memoria PARM) SYSTEM MODE – mAgic in attesa

5 - Falcetti Massimo –5 Scambio di float tra ARM e mAgic Recupero puntatore a cella base Conversione puntatore a long long* (x avere il mappaggio come sopra) Aggiunta delloffset della cella a cui accedere Recupero del valore delle due word Unione delle due parti e shift a destra di 8 posizioni Lettura da ARM di un float di mAgic NON PREVISTO DALLARCHITETTURA Cast al tipo di dato opportuno

6 - Falcetti Massimo –6 LApplicazione – schema ideale JTST Board System User ARM Fractal request Bitmap mAgic USB Richiesta immagine frattale da PC a JTST (via USB) Presa in carico della richiesta da parte della scheda JTST (ARM gestisce le connessioni) Calcolo frattale secondo i parametri richiesti (mAgic + ARM) Invio dei dati elaborati (immagine bitmap) al chiamante (via USB) NB – note reale implementazione

7 - Falcetti Massimo –7 Scheda di sviluppo JTST su cui è implementata lapplicazione USB Porta seriale Chip Diopsis 740 Periferiche utilizzate per limplementazione di questa applicazione Presenza di altri componenti per adattare la scheda a qualsiasi utilizzo

8 - Falcetti Massimo –8 Sincronizzazione – Coda Ciclica punt ARM = punt mAgic ARM Run, mAgic Wait (mAgic non ha ancora pronti i dati da processare perché ARM non ha ancora terminato linserimento dei valori in memoria) |Punt ARM| > |Punt mAgic| ARM Run, mAgic Run Questa è la condizione normale di operatività: ARM riempie le pagine vuote della memoria ciclica e mAgic esegue la computazione matematica, che essendo molto dispendiosa, lo fa rimanere sempre qualche cella di memoria indietro. |Punt ARM| <> |Punt mAgic| (DISCORDI) ARM è una pagina avanti a mAgic. Anche in questa situazione il funzionamento delle CPU è quello normale poiché entrambi i processori hanno qualcosa da fare. ARM Run, mAgic Run |Punt ARM| = |Punt mAgic| (DISCORDI) ARM ha raggiunto la cella di memoria che mAgic sta elaborando, è stato quindi così veloce da essere esattamente una pagina avanti rispetto al DSP. ARM Wait, mAgic Run

9 - Falcetti Massimo –9 Partizionamento 1 Possibilità di due partizionamenti dellalgoritmo sulle due cpu a disposizione. Cambia la cpu che esegue il mappaggio dei punti del piano complesso. PRIMO METODO: Apertura canale di comunicazione (da parte dellARM) Generazione dellheader della bitmap (ARM) Generazione della palette per la bitmap (ARM) Mappaggio di ciascun pixel nel piano complesso (ARM) Calcolo effettivo del frattale (mAgic) Determinazione del colore per ogni pixel (ARM) Chiusura del canale di comunicazione (ARM) mAgic Shared mem used as FIFO Bitmap Fractal calc Re E ARM mapping Color + Write D F Im

10 - Falcetti Massimo –10 Partizionamento 2 SECONDO METODO: Apertura canale di comunicazione (da parte dellARM) Generazione dellheader della bitmap (ARM) Generazione della palette per la bitmap (ARM) Mappaggio di ciascun pixel nel piano complesso (mAgic) Calcolo effettivo del frattale (mAgic) Determinazione del colore per ogni pixel (ARM) Chiusura del canale di comunicazione (ARM) mAgic Shared mem used as FIFO Bitmap Fractal calc Re E ARM mapping Color + Write D F Im

11 - Falcetti Massimo –11 Confronto prestazioni Il primo metodo di partizionamento, quello cioè che lascia la fase di mapping dei pixel ad ARM, risulta leggermente più rapido se lalgoritmo prevede un alto numero di iterazioni per uscire dal cerchio di raggio 2, e quindi unelevata precisione nella creazione dellimmagine bitmap. Il secondo metodo di partizionamento, invece, permette una miglior precisione nei calcoli. In questo caso infatti i valori float calcolati nella fase di mapping hanno una precisione calcolata su 40 bit (32 bit nel caso di mappaggio da parte di ARM). Scelta metodo in base alle esisgenze

12 - Falcetti Massimo –12 Stato Attuale e Lavori futuri STATO ATTUALE: Visualizzazione bitmap a mezzo di printf e predisposizione del codice alla comunicazione USB Possibilità di eseguire lalgoritmo nei due metodi di sincronizzazione, ma anche esclusivamente su ARM LAVORI FUTURI: Implementazione completa della comunicazione USB con le nuove librerie funzionanti fornite da ATMEL

13 - Falcetti Massimo –13 Fine presentazione


Scaricare ppt "Politecnico di Milano SINTESI DI IMMAGINI FRATTALI ATTRAVERSO CALCOLI IN MULTITHREAD SU DIOPSIS 740 Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio."

Presentazioni simili


Annunci Google