Politecnico di Milano Salomone - Allocazione e Scheduling per la progettazione di sistemi embedded riconfigurabili Tesi di Laurea di: Maggioni Marco Matr.653729 – [email protected] 27 Luglio, 2006 Milano Relatore : Prof. Fabrizio Ferrandi Correlatore : Ing. Marco Domenico Santambrogio Outline Obiettivi Conclusioni Riconfigurazione dinamica Sviluppi futuri Allocazione e Ordinamento Progettazione di sistemi riconfigurabili Salomone Flusso di lavoro Flusso di analisi per specifiche reali Benchmarks Specifica Jpeg -2- Obiettivi Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Benchmarks -Jpeg Conclusioni Sviluppi Sviluppo di uno strumento, Salomone, per la risoluzione dei problemi di allocazione (placement) e ordinamento (scheduling) inerenti all’esecuzione di un sistema dinamicamente riconfigurabile. Creazione di un flusso automatico di lavoro per fornire in ingresso a tale strumento specifiche di sistema reali. -3- Allocazione e Ordinamento Problemi dell’esecuzione riconfigurabile… Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Le configurazioni saranno eseguite… …su quale parte dell’area...? Flusso di analisi Benchmarks -Jpeg …con quale ordine…? Conclusioni Sviluppi -4- Allocazione Ordinamento Progettazione di sistemi riconfigurabili Metodologia… dalla specifica al sistema implementato su logica riconfigurabile… Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Benchmarks -Jpeg Analisi Struttura Tree Partizionamento Sintesi Sintesi Salomone Grafo Conclusioni Sviluppi Riconfigurazione Dinamica Specifica Simulazione Allocazione Ordinamento -5- Descrizione Moduli Validazione Salomone Un’applicazione che si occupa di adattare il sistema all’architettura riconfigurabile… Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Allocazione Ordinamento Benchmarks -Jpeg Conclusioni Sviluppi -6- Flusso di lavoro di Salomone Metodologia… dal grafo delle partizioni alle SCoNo (Same Colored Node) Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Ordinamento Analisi Calcolo Mobilità Ordinamento Flusso di analisi Benchmarks -Jpeg Conclusioni Sviluppi Grafo dei Conflitti Colorazione Grafo Merge Grafi TDG+CG =TCG -7- Allocazione Flusso di analisi per specifiche reali Flusso di lavoro per la produzione di grafi partizionati delle specifiche di sistema… Obiettivi Ric. Dinamica -Allocazione e Ordinamento C/C++/SystemC Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Partizionatore BB / Ricorrenze Compilatore GCC Flusso di analisi Benchmarks -Jpeg Conclusioni PandA Sviluppi -8- Benchmarks Specifica di sistema compressione JPEG con diversi tipi di partizionamento… Obiettivi Basic Blocks Ric. Dinamica -Allocazione e Ordinamento 0 Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Benchmarks -Jpeg Conclusioni Orientato alle Ricorrenze 3 00 2 4 1 1 03 3 3 2 1 5 1 1 3 14 2 2 5 33 3 4 4 88 5 8 12 Sviluppi 5 -9- 5 12 12 Conclusioni Obiettivi Ric. Dinamica -Allocazione e Ordinamento Salomone permette di adattare l’esecuzione di un sistema alla riconfigurazione dinamica… Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Benchmarks -Jpeg Conclusioni L’implementazione del flusso di lavoro per il test di Salomone su specifiche reali fornisce indizi positivi sulla realizzabilità del flusso di progettazione… Sviluppi - 10 - Sviluppi Futuri Obiettivi Ric. Dinamica -Allocazione e Ordinamento Progettazione Sistemi Ric. Salomone -Flusso di Lavoro Flusso di analisi Inserimento di valutazioni sull’occupazione d’area… Valutazione limiti FPGA… Allocazioni precise… Latenze… Tempi di riconfigurazione… Benchmarks -Jpeg Conclusioni Sviluppi Sfruttamento del concetto di ricorrenza… - 11 - Domande…? - 12 -