MULTICUBE
Responsabile:
Ricerca UE FP7
Ruolo DEIB: Coordinatore
Data inizio: 01/01/2008
Durata: 30 mesi
Sommario
Nell’ambito dei sistemi embedded esistono molti strumenti per supportarne la progettazione, tuttavia si sente l’esigenza di un framework unificato di esplorazione dello spazio di progetto architetturale e di un’ambiente comune per i tool di stima e ottimizzazione.
Scopo principale del progetto MULTICUBE è lo sviluppo di metodi e strumenti automatici per il supporto della fase di esplorazione multi-obiettivo dello spazio di progetto di architetture System-on-Chip adatte per la prossima generazione di dispositivi portatili multimediali.
All’interno del progetto, questo obbiettivo verrà raggiunto tramite lo sviluppo di due aspetti principali.
Il primo aspetto prevede la definizione di uno strumento multi-obiettivo per l’esplorazione dello spazio di progetto che permetta di confrontare le diverse alternative proposte trovando quelle che meglio soddisfano criteri di valutazione e che rispettano i vincoli sulle funzioni di costo (quali ad esempio area, potenza dissipata e prestazioni) imposti dall’applicazione obbiettivo. All’interno dello strumento di esplorazione verranno implementate tecniche atte a ridurre il tempo di esplorazione tramite l’approssimazione della curva di Pareto, quali algoritmi euristici e metodi che permettono di ridurre il numero dei parametri a quelli cruciali per il sistema.
Il secondo aspetto prevede la definizione di tecniche di esplorazione a run-time dello spazio di progetto per l’ottimizzazione delle fasi di allocazione e scheduling dei task sull’architettura multiprocessore obiettivo. Le tecniche proposte dovranno fornire le soluzioni Pareto per quanto riguarda l’energia, le prestazioni e la banda di comunicazione e di accesso alla memoria in modo da poter fornire un supporto alle decisioni da prendere a livello del sistema operativo. In questo caso, non è possibile scegliere la soluzione ottima a design-time poiché le prestazioni del sistema in questo particolare spazio non sono stimabili staticamente. Per supportare il flusso di esplorazione automatico, all’interno del progetto MULTICUBE verrà sviluppato un ambiente di simulazione a più livelli per la valutazione della bontà delle soluzioni sia staticamente che dinamicamente. Questo ambiente sarà composto da modelli aventi la stessa interfaccia a vari livelli di astrazione e permetterà sia una esplorazione veloce ma meno accurata che una esplorazione più lenta ma più accurata. Le tecniche sviluppate all’interno del progetto MULTICUBE verranno implementate sia all’interno di un insieme di strumenti open-source sia all’interno di strumenti proprietari. Questa scelta permetterà una maggiore fruibilità dei risultati provenienti dal progetto permettendo sia ad industrie Europee del settore sia a centri di ricerca e università di sfruttare le soluzioni implementate.
Scopo principale del progetto MULTICUBE è lo sviluppo di metodi e strumenti automatici per il supporto della fase di esplorazione multi-obiettivo dello spazio di progetto di architetture System-on-Chip adatte per la prossima generazione di dispositivi portatili multimediali.
All’interno del progetto, questo obbiettivo verrà raggiunto tramite lo sviluppo di due aspetti principali.
Il primo aspetto prevede la definizione di uno strumento multi-obiettivo per l’esplorazione dello spazio di progetto che permetta di confrontare le diverse alternative proposte trovando quelle che meglio soddisfano criteri di valutazione e che rispettano i vincoli sulle funzioni di costo (quali ad esempio area, potenza dissipata e prestazioni) imposti dall’applicazione obbiettivo. All’interno dello strumento di esplorazione verranno implementate tecniche atte a ridurre il tempo di esplorazione tramite l’approssimazione della curva di Pareto, quali algoritmi euristici e metodi che permettono di ridurre il numero dei parametri a quelli cruciali per il sistema.
Il secondo aspetto prevede la definizione di tecniche di esplorazione a run-time dello spazio di progetto per l’ottimizzazione delle fasi di allocazione e scheduling dei task sull’architettura multiprocessore obiettivo. Le tecniche proposte dovranno fornire le soluzioni Pareto per quanto riguarda l’energia, le prestazioni e la banda di comunicazione e di accesso alla memoria in modo da poter fornire un supporto alle decisioni da prendere a livello del sistema operativo. In questo caso, non è possibile scegliere la soluzione ottima a design-time poiché le prestazioni del sistema in questo particolare spazio non sono stimabili staticamente. Per supportare il flusso di esplorazione automatico, all’interno del progetto MULTICUBE verrà sviluppato un ambiente di simulazione a più livelli per la valutazione della bontà delle soluzioni sia staticamente che dinamicamente. Questo ambiente sarà composto da modelli aventi la stessa interfaccia a vari livelli di astrazione e permetterà sia una esplorazione veloce ma meno accurata che una esplorazione più lenta ma più accurata. Le tecniche sviluppate all’interno del progetto MULTICUBE verranno implementate sia all’interno di un insieme di strumenti open-source sia all’interno di strumenti proprietari. Questa scelta permetterà una maggiore fruibilità dei risultati provenienti dal progetto permettendo sia ad industrie Europee del settore sia a centri di ricerca e università di sfruttare le soluzioni implementate.