ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
BiRF: un filtro hardware per la rilocazione dinamica online dei bitstream per la riconfigurazione parziale Relatore: prof. Donatella Sciuto Correlatore: ing. Marco Domenico Santambrogio Tesi di Laurea di: Massimo Morandi Marco Novati
Sommario Obiettivo del lavoro Premesse Riconfigurazione dinamica parziale interna Struttura a colonne e indirizzamento FPGA Xilinx Organizzazione bitstream di configurazione La rilocazione Il concetto di rilocazione Rilocazione applicata alla riconfigurazione interna BiRF Da REPLICA a BiRF Struttura e funzionamento di BiRF Dati di sintesi Risultati sperimentali Conclusioni e sviluppi futuri
Obiettivo del lavoro Obiettivo: ridurre l'uso di memoria per i bitstream in sistemi che implementano riconfigurazione dinamica parziale interna basata su colonne Metodo: tecnica di rilocazione dei bitstream Strumento: filtro hardware creato ad-hoc per rilocare i bitstream direttamente su FPGA BiRF è lo strumento creato a tale scopo e validato all'interno dell'architettura YaRA
Riconfigurazione dinamica parziale interna Dinamica:  L'elaborazione continua anche durante la riconfigurazione Necessità di garantire infrastruttura di comunicazione permanente Parziale: Possibile variare la funzionalità di singole parti dell'FPGA Serve un bitstream parziale per ogni funzionalità voluta e per ogni possibile posizione Interna: L'intero processo è gestito autonomamente dal sistema Il gestore della riconfigurazione e tutti i bitstream parziali devono trovarsi internamente al sistema
Struttura a colonne e indirizzamento FPGA Xilinx Colonne di 5 tipi: Clock, RAM, I-RAM, I/O, CLB Colonne divise in N frame a seconda del tipo Doppio indirizzo: Major Address, Minor Address Major Address Colonna CLB = 48 frame
Organizzazione bitstream configurazione Rappresenta la posizione iniziale del modulo Anche il checksum è coinvolto dalla rilocazione
Il concetto di rilocazione Un bitstream parziale descrive la configurazione di una singola funzionalità Comprese le informazioni relative al posizionamento sul dispositivo Manipolandolo si può quindi ottenere la configurazione della stessa funzionalità in una posizione arbitraria
Rilocazione applicata alla riconfigurazione interna Ipotesi:  Area riconfigurabile equamente divisa in k slot n IP-Core allocabili in uno o più slot k moduli per deallocare Numero di bitstream: k*(n+1) Numero di bitstream con rilocazione: n+1 Per alcune architetture d'esempio, ipotizzando dimensione dei bitstream costante, risulta:
Da REPLICA a BiRF REPLICA: Università di Paderborn Rilocazione dei bitstream durante il download su scheda Compatibile con Virtex, Virtex-E  BiRF: Reimplementazione ed estensione di REPLICA Applicato alla riconfigurazione interna Compatibilità estesa alle Virtex-II Pro Permette di memorizzare nel sistema un solo bitstream per funzionalità
Struttura e funzionamento di BiRF Target Col: colonna iniziale di destinazione del modulo Chip Cols, Chip RAMs, RAM Space: parametri della scheda DATA_IN: bitstream da rilocare a blocchi da 32 bit DATA_OUT: bitstream rilocato a blocchi da 32 bit
Struttura e funzionamento di BiRF: Parser
Dati di sintesi L'occupazione di BiRF su tre differenti FPGA risulta: Accettabile per un'architettura riconfigurabile Migliorabile con ottimizzazioni mirate a una FPGA Le massime prestazioni teoriche di BiRF sono:
Risultati sperimentali Throughput su scheda: 2,05 MB/s
Conclusioni e sviluppi futuri Obiettivi raggiunti: BiRF può essere effettivamente sfruttato per la riconfigurazione dinamica parziale interna Permette un notevole risparmio di memoria grazie alla rilocazione Dynamic Reconfiguration: Core Relocation via Partial Bitstreams Filtering with Minimal Overhead,  International Symposium on System-on-Chip, Tampere 2006 Sviluppi futuri: Miglioramento delle prestazioni tramite: Interfacciamento su bus PLB Accesso diretto alla memoria (DMA) Integrazione con ICAP
Fine presentazione

More Related Content

What's hot (15)

Thesis Amicucci ºÝºÝߣs IT
Thesis Amicucci ºÝºÝߣs ITThesis Amicucci ºÝºÝߣs IT
Thesis Amicucci ºÝºÝߣs IT
Marco Santambrogio
Ìý
Thesis Magnone ºÝºÝߣs IT
Thesis Magnone ºÝºÝߣs ITThesis Magnone ºÝºÝߣs IT
Thesis Magnone ºÝºÝߣs IT
Marco Santambrogio
Ìý
3DD 1e 1 Agosto Def Roadmap
3DD 1e 1 Agosto Def Roadmap3DD 1e 1 Agosto Def Roadmap
3DD 1e 1 Agosto Def Roadmap
Marco Santambrogio
Ìý
Thesis M. Redaelli ºÝºÝߣs EN
Thesis M. Redaelli ºÝºÝߣs ENThesis M. Redaelli ºÝºÝߣs EN
Thesis M. Redaelli ºÝºÝߣs EN
Marco Santambrogio
Ìý
Thesis Maggioni ºÝºÝߣ it
Thesis Maggioni ºÝºÝߣ itThesis Maggioni ºÝºÝߣ it
Thesis Maggioni ºÝºÝߣ it
Marco Santambrogio
Ìý
A query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architecturesA query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architectures
Enrico Cambiaso
Ìý
Thesis Redaelli Sacchi ºÝºÝߣ IT
Thesis Redaelli Sacchi ºÝºÝߣ ITThesis Redaelli Sacchi ºÝºÝߣ IT
Thesis Redaelli Sacchi ºÝºÝߣ IT
Marco Santambrogio
Ìý
Thesis Amicucci ºÝºÝߣs IT
Thesis Amicucci ºÝºÝߣs ITThesis Amicucci ºÝºÝߣs IT
Thesis Amicucci ºÝºÝߣs IT
Marco Santambrogio
Ìý
Thesis Magnone ºÝºÝߣs IT
Thesis Magnone ºÝºÝߣs ITThesis Magnone ºÝºÝߣs IT
Thesis Magnone ºÝºÝߣs IT
Marco Santambrogio
Ìý
3DD 1e 1 Agosto Def Roadmap
3DD 1e 1 Agosto Def Roadmap3DD 1e 1 Agosto Def Roadmap
3DD 1e 1 Agosto Def Roadmap
Marco Santambrogio
Ìý
Thesis M. Redaelli ºÝºÝߣs EN
Thesis M. Redaelli ºÝºÝߣs ENThesis M. Redaelli ºÝºÝߣs EN
Thesis M. Redaelli ºÝºÝߣs EN
Marco Santambrogio
Ìý
Thesis Maggioni ºÝºÝߣ it
Thesis Maggioni ºÝºÝߣ itThesis Maggioni ºÝºÝߣ it
Thesis Maggioni ºÝºÝߣ it
Marco Santambrogio
Ìý
A query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architecturesA query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architectures
Enrico Cambiaso
Ìý
Thesis Redaelli Sacchi ºÝºÝߣ IT
Thesis Redaelli Sacchi ºÝºÝߣ ITThesis Redaelli Sacchi ºÝºÝߣ IT
Thesis Redaelli Sacchi ºÝºÝߣ IT
Marco Santambrogio
Ìý

Similar to Thesis Morandi Novati ºÝºÝߣ IT (20)

Virtualizzazione
VirtualizzazioneVirtualizzazione
Virtualizzazione
Luca Giusti
Ìý
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
GiulioBianchini1
Ìý
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdfArchitettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
alessigreco
Ìý
Relazione Progetto cRio
Relazione Progetto cRioRelazione Progetto cRio
Relazione Progetto cRio
Dario Mazza
Ìý
Relazione Progetto cRIO
Relazione Progetto cRIORelazione Progetto cRIO
Relazione Progetto cRIO
Sebastiano Merlino (eTr)
Ìý
Personal computer
Personal computerPersonal computer
Personal computer
Francesco Zoino
Ìý
Microcontrollori
MicrocontrolloriMicrocontrollori
Microcontrollori
samu97
Ìý
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
Marco Ferrigno
Ìý
Presentazione Laurea Matteo Vit
Presentazione Laurea Matteo VitPresentazione Laurea Matteo Vit
Presentazione Laurea Matteo Vit
Matteo Vit
Ìý
Lezioni 2009
Lezioni 2009Lezioni 2009
Lezioni 2009
Giuseppe Levi
Ìý
Implementazione DAOS in ambienti enterprise
Implementazione DAOS in ambienti enterpriseImplementazione DAOS in ambienti enterprise
Implementazione DAOS in ambienti enterprise
Luca Arcara
Ìý
Intro BeagleBone Black - Massimiliano D'Ambrosio
Intro BeagleBone Black - Massimiliano D'AmbrosioIntro BeagleBone Black - Massimiliano D'Ambrosio
Intro BeagleBone Black - Massimiliano D'Ambrosio
firenze-gtug
Ìý
MPEG4 AVC-H.264
MPEG4 AVC-H.264MPEG4 AVC-H.264
MPEG4 AVC-H.264
Emanuel Di Nardo
Ìý
Cell Programming 1
Cell Programming 1Cell Programming 1
Cell Programming 1
Vincenzo De Maio
Ìý
Ha solutions su power i
Ha solutions su power iHa solutions su power i
Ha solutions su power i
PRAGMA PROGETTI
Ìý
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
Mirko Mancin
Ìý
Hekaton: Natively Compiled Stored Procedures
Hekaton: Natively Compiled Stored ProceduresHekaton: Natively Compiled Stored Procedures
Hekaton: Natively Compiled Stored Procedures
Francesco Milano
Ìý
Virtualizzazione
VirtualizzazioneVirtualizzazione
Virtualizzazione
Luca Giusti
Ìý
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
Sviluppo di firmware per acceleratori FPGA: esperienze e casi d'uso per il ca...
GiulioBianchini1
Ìý
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdfArchitettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
Architettura-Dei-Calcolatori-Elettronici-Bucci-Giacomo.pdf
alessigreco
Ìý
Relazione Progetto cRio
Relazione Progetto cRioRelazione Progetto cRio
Relazione Progetto cRio
Dario Mazza
Ìý
Microcontrollori
MicrocontrolloriMicrocontrollori
Microcontrollori
samu97
Ìý
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
Marco Ferrigno
Ìý
Presentazione Laurea Matteo Vit
Presentazione Laurea Matteo VitPresentazione Laurea Matteo Vit
Presentazione Laurea Matteo Vit
Matteo Vit
Ìý
Implementazione DAOS in ambienti enterprise
Implementazione DAOS in ambienti enterpriseImplementazione DAOS in ambienti enterprise
Implementazione DAOS in ambienti enterprise
Luca Arcara
Ìý
Intro BeagleBone Black - Massimiliano D'Ambrosio
Intro BeagleBone Black - Massimiliano D'AmbrosioIntro BeagleBone Black - Massimiliano D'Ambrosio
Intro BeagleBone Black - Massimiliano D'Ambrosio
firenze-gtug
Ìý
Ha solutions su power i
Ha solutions su power iHa solutions su power i
Ha solutions su power i
PRAGMA PROGETTI
Ìý
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
Mirko Mancin
Ìý
Hekaton: Natively Compiled Stored Procedures
Hekaton: Natively Compiled Stored ProceduresHekaton: Natively Compiled Stored Procedures
Hekaton: Natively Compiled Stored Procedures
Francesco Milano
Ìý

More from Marco Santambrogio (20)

RCIM 2008 - - hArtes Atmel
RCIM 2008 - - hArtes AtmelRCIM 2008 - - hArtes Atmel
RCIM 2008 - - hArtes Atmel
Marco Santambrogio
Ìý
RCIM 2008 - - UniCal
RCIM 2008 - - UniCalRCIM 2008 - - UniCal
RCIM 2008 - - UniCal
Marco Santambrogio
Ìý
RCIM 2008 - - ALTERA
RCIM 2008 - - ALTERARCIM 2008 - - ALTERA
RCIM 2008 - - ALTERA
Marco Santambrogio
Ìý
DHow2 - L6 VHDL
DHow2 - L6 VHDLDHow2 - L6 VHDL
DHow2 - L6 VHDL
Marco Santambrogio
Ìý
RCIM 2008 - - ALaRI
RCIM 2008 - - ALaRIRCIM 2008 - - ALaRI
RCIM 2008 - - ALaRI
Marco Santambrogio
Ìý
RCIM 2008 - Modello Scheduling
RCIM 2008 - Modello SchedulingRCIM 2008 - Modello Scheduling
RCIM 2008 - Modello Scheduling
Marco Santambrogio
Ìý
RCIM 2008 - HLR
RCIM 2008 - HLRRCIM 2008 - HLR
RCIM 2008 - HLR
Marco Santambrogio
Ìý
RCIM 2008 - Modello Generale
RCIM 2008 - Modello GeneraleRCIM 2008 - Modello Generale
RCIM 2008 - Modello Generale
Marco Santambrogio
Ìý
RCIM 2008 - Allocation Relocation
RCIM 2008 - Allocation RelocationRCIM 2008 - Allocation Relocation
RCIM 2008 - Allocation Relocation
Marco Santambrogio
Ìý
RCIM 2008 - - hArtes_Ferrara
RCIM 2008 - - hArtes_FerraraRCIM 2008 - - hArtes_Ferrara
RCIM 2008 - - hArtes_Ferrara
Marco Santambrogio
Ìý
RCIM 2008 - Janus
RCIM 2008 - JanusRCIM 2008 - Janus
RCIM 2008 - Janus
Marco Santambrogio
Ìý
RCIM 2008 - Intro
RCIM 2008 - IntroRCIM 2008 - Intro
RCIM 2008 - Intro
Marco Santambrogio
Ìý
RCW@DEI - ADL
RCW@DEI - ADLRCW@DEI - ADL
RCW@DEI - ADL
Marco Santambrogio
Ìý
RCW@DEI - Design Flow 4 SoPc
RCW@DEI - Design Flow 4 SoPcRCW@DEI - Design Flow 4 SoPc
RCW@DEI - Design Flow 4 SoPc
Marco Santambrogio
Ìý
RCW@DEI - Real Needs And Limits
RCW@DEI - Real Needs And LimitsRCW@DEI - Real Needs And Limits
RCW@DEI - Real Needs And Limits
Marco Santambrogio
Ìý
RCW@DEI - Basic Concepts
RCW@DEI - Basic ConceptsRCW@DEI - Basic Concepts
RCW@DEI - Basic Concepts
Marco Santambrogio
Ìý

Thesis Morandi Novati ºÝºÝߣ IT

  • 1. BiRF: un filtro hardware per la rilocazione dinamica online dei bitstream per la riconfigurazione parziale Relatore: prof. Donatella Sciuto Correlatore: ing. Marco Domenico Santambrogio Tesi di Laurea di: Massimo Morandi Marco Novati
  • 2. Sommario Obiettivo del lavoro Premesse Riconfigurazione dinamica parziale interna Struttura a colonne e indirizzamento FPGA Xilinx Organizzazione bitstream di configurazione La rilocazione Il concetto di rilocazione Rilocazione applicata alla riconfigurazione interna BiRF Da REPLICA a BiRF Struttura e funzionamento di BiRF Dati di sintesi Risultati sperimentali Conclusioni e sviluppi futuri
  • 3. Obiettivo del lavoro Obiettivo: ridurre l'uso di memoria per i bitstream in sistemi che implementano riconfigurazione dinamica parziale interna basata su colonne Metodo: tecnica di rilocazione dei bitstream Strumento: filtro hardware creato ad-hoc per rilocare i bitstream direttamente su FPGA BiRF è lo strumento creato a tale scopo e validato all'interno dell'architettura YaRA
  • 4. Riconfigurazione dinamica parziale interna Dinamica: L'elaborazione continua anche durante la riconfigurazione Necessità di garantire infrastruttura di comunicazione permanente Parziale: Possibile variare la funzionalità di singole parti dell'FPGA Serve un bitstream parziale per ogni funzionalità voluta e per ogni possibile posizione Interna: L'intero processo è gestito autonomamente dal sistema Il gestore della riconfigurazione e tutti i bitstream parziali devono trovarsi internamente al sistema
  • 5. Struttura a colonne e indirizzamento FPGA Xilinx Colonne di 5 tipi: Clock, RAM, I-RAM, I/O, CLB Colonne divise in N frame a seconda del tipo Doppio indirizzo: Major Address, Minor Address Major Address Colonna CLB = 48 frame
  • 6. Organizzazione bitstream configurazione Rappresenta la posizione iniziale del modulo Anche il checksum è coinvolto dalla rilocazione
  • 7. Il concetto di rilocazione Un bitstream parziale descrive la configurazione di una singola funzionalità Comprese le informazioni relative al posizionamento sul dispositivo Manipolandolo si può quindi ottenere la configurazione della stessa funzionalità in una posizione arbitraria
  • 8. Rilocazione applicata alla riconfigurazione interna Ipotesi: Area riconfigurabile equamente divisa in k slot n IP-Core allocabili in uno o più slot k moduli per deallocare Numero di bitstream: k*(n+1) Numero di bitstream con rilocazione: n+1 Per alcune architetture d'esempio, ipotizzando dimensione dei bitstream costante, risulta:
  • 9. Da REPLICA a BiRF REPLICA: Università di Paderborn Rilocazione dei bitstream durante il download su scheda Compatibile con Virtex, Virtex-E BiRF: Reimplementazione ed estensione di REPLICA Applicato alla riconfigurazione interna Compatibilità estesa alle Virtex-II Pro Permette di memorizzare nel sistema un solo bitstream per funzionalità
  • 10. Struttura e funzionamento di BiRF Target Col: colonna iniziale di destinazione del modulo Chip Cols, Chip RAMs, RAM Space: parametri della scheda DATA_IN: bitstream da rilocare a blocchi da 32 bit DATA_OUT: bitstream rilocato a blocchi da 32 bit
  • 11. Struttura e funzionamento di BiRF: Parser
  • 12. Dati di sintesi L'occupazione di BiRF su tre differenti FPGA risulta: Accettabile per un'architettura riconfigurabile Migliorabile con ottimizzazioni mirate a una FPGA Le massime prestazioni teoriche di BiRF sono:
  • 13. Risultati sperimentali Throughput su scheda: 2,05 MB/s
  • 14. Conclusioni e sviluppi futuri Obiettivi raggiunti: BiRF può essere effettivamente sfruttato per la riconfigurazione dinamica parziale interna Permette un notevole risparmio di memoria grazie alla rilocazione Dynamic Reconfiguration: Core Relocation via Partial Bitstreams Filtering with Minimal Overhead, International Symposium on System-on-Chip, Tampere 2006 Sviluppi futuri: Miglioramento delle prestazioni tramite: Interfacciamento su bus PLB Accesso diretto alla memoria (DMA) Integrazione con ICAP