POLITECNICO DI MILANO DRCP: Come gestire in modo efficiente la riconfigurazione parziale dinamica su FPGA Luca Cerri: Relatore: Prof. Marco D. Santambrogio Correlatore: Ing. Fabio Cancarè
2 Motivazioni e Obiettivi MOTIVAZIONI: Rilocazione spesso associata a riconfigurazione Il processo di riconfigurazione su FPGA richiede un notevole utilizzo di risorse, in termini di impiego del processore e di occupazione del canale di comunicazione. E conveniente riconfigurare solo grosse aree del dispositivo OBIETTIVI: Creare un componente che gestisca rilocazione e riconfigurazione Parallelizzare le operazioni nel componente per garantire maggiori prestazioni sgravando la CPU e il bus dati
3 Indice Stato dellArte Risultati Sperimentali Funzionamento attuale Esecuzione parallela Funzionamento desiderato Modello Implementazione del componente DRCP Struttura Funzionamento Conclusioni e sviluppi futuri
Stato dellarte Rilocazione Filtri Software: PARABIT, Università di Washington (USA) BAnMaT, Politecnico di Milano, gruppo DRESD Filtri Hardware: REPLICA, Università di Paderborn (Ger) BiRF, Politecnico di Milano, gruppo DRESD 4 Riconfigurazione Riconfigurazione del dispositivo attraverso porta ICAP (Internal Configuration Access Port), che va gestita via hardware Componenti Esistenti: OPB_HWICAP, Xilinx inc. ICAP DRESD, Politecnico di Milano, gruppo DRESD DRC, Politecnico di Milano, gruppo DRESD
5 Funzionamento attuale PRESTAZIONI LIMITATE ASPETTI NEGATIVI Gli scambi di dati avvengono sempre utilizzando il bus dati. La CPU, agendo come master, deve gestire ogni trasferimento su bus BiRF per la rilocazione DRC per la riconfigurazione Solo passi 6 e 1 eseguibili in parallelo
Esecuzione parallela: funzionamento desiderato 6 Collegamento diretto tra BiRF e DRC Passi 1,2 e 3,4 eseguibili in parallelo
Esecuzione parallela: modello 7
DRCP: struttura Implementazione di BiRF e DRC nel componente per trasferire direttamente i dati senza luso del bus. Esecuzione parallela delle operazioni. Buffer in ingresso per implementare il throughput. Possibiltà di scegliere se utilizzare o meno la rilocazione. 8
9 DRCP: funzionamento
Risultati sperimentali Risultati ottenuti simulando per il dispositivo FPGA Virtex-II Pro di Xilinx Throughput medio maggiore dell80% in DRCP senza buffer. Throughput medio maggiore del 144% in DRCP con buffer. 10 Occupazione darea modesta. Frequenza massima adatta per lutilizzo in sistemi riconfigurabili.
11 Conclusioni e Sviluppi Futuri Obiettivi raggiunti: Miglioramento del Throughput. Minore occupazione del BUS di sistema e della CPU. Sviluppi futuri: Introduzione del DMA. Estensione alla rilocazione 2D. Supporto ad altre FPGA mediante creazione di un software di generazione automatica del componente.
12 Domande Grazie per lattenzione!