Fast IP-Core Generation in a Fast IP-Core Generation in a Partial Dynamic Reconfiguration Partial Dynamic Reconfiguration Workflow Workflow Relatore: Prof. Donatella SCIUTO Correlatore: Ing. Marco D. SANTAMBROGIO Tesi di Laurea di: Matteo Murgida Alessandro Panella
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Fast IP-Core Generation in a Fast IP-Core Generation in a Partial Dynamic Partial Dynamic
Reconfiguration WorkflowReconfiguration Workflow
Relatore: Prof. Donatella SCIUTOCorrelatore: Ing. Marco D. SANTAMBROGIO
Tesi di Laurea di:
Matteo MurgidaAlessandro
Panella
2
OverviewOverview
Obkectives and motivationsFrom core to IP-CoreIPGen in the Caronte workflowPrevious worksInfrastrutture di comunicazioneStruttura dell’IP-Core generatoStruttura del framework e flusso operativoConvenzioni di utilizzoRisultati sperimentaliConclusioni e sviluppi futuri
3
Obiettivi e motivazioniObiettivi e motivazioni
GENERAL AIMRealize a framework able to automatically generate an IP-Core starting from an already existing core, provided by the user.
SPECIFIC AIMSupport for CoreConnect OPB bus architectureSupport for Wishbone bus architecture
4
MotivationsMotivations
Reduce the development time of hardware components to be plugged in modular architectures;Quickly generate reconfigurables modules in the Caronte workflow;Increment cores’ reuse with different communication infrastructures
5
FromFrom core to IP-Core core to IP-Core
The core is interfaced l’interfaccia di comunicazione;il supporto a tale interfaccia.
Il risultato viene chiamato IP-Core.
6
IPGen nel flusso di CaronteIPGen nel flusso di Caronte
Caronte permette di creare sistemi dinamicamente riconfigurabili partendo da specifiche di alto livello.IPGen si colloca nella fase di generazione di HW-SSP del flusso di Caronte.
Serve per importare IP-Core in EDK connessi a OPB o PLB
Genera i file MHS e PAO
Fornisce il template da “riempire”
Impulse CoDeveloperSintesi di sistemi partendo da specifiche di alto livello
Supporto per molti bus
Si conoscono a priori le porte dei core da interfacciare
8
Infrastrutture di Infrastrutture di comunicazionecomunicazione
IPGen supporta due tipi di bus:CoreConnect OPB, mediante due interfacce:
PSelectIPIF
Wishbone, non necessita di alcuna interfaccia da istanziare.
9
Struttura dell’IP-Core generatoStruttura dell’IP-Core generato
In generale tre livelli logici:Core: funzionalità fornita dall’utenteStub: logica di comunicazione tra core e interfacciaIP-Core: top level della struttura
Nel caso Wishbone struttura degenere:Lo stub coincide con l’IP-Core
10
Struttura del framework e flusso operativo Struttura del framework e flusso operativo (1)(1)
Due classi principali: READER e WRITERUna classe di supporto: CLEANER
READER: riceve in input il core;ottiene una stringa contenente l’entity del core pulita dai commenti; esegue un parsing della stringa;crea le liste dei segnali di I/O e dei generic.
11
Struttura del framework e flusso operativo Struttura del framework e flusso operativo (2)(2)
WRITER:
pulisce il core dai valori di default dei generic;
riceve dal reader le liste dei signali di I/O e dei generic;
crea le descrizioni VHDL dello stub e dell’IP-Core.
12
Convenzioni di utilizzoConvenzioni di utilizzo
Principio fondamentale: il core non deve contenere alcun riferimento alla logica di comunicazione. La non osservanza di ciò implica:
inutili e dannose ridondanze nell’IP-Core generato;non riusabilità del core.
L’occupazione della IPIF non mostra correlazioni con la dimensione dell’IP-Core;l’occupazione relativa diminuisce al crescere delle dimensioni del core;il tempo di esecuzione è sostanzialmente costante.
Utilizzo di “DUMMY CORE”core “vuoti” atti a testare le prestazioni di IPGen in particolari situazioni;RISULTATI SIGNIFICATIVI: occupazione dello stub e tempo di esecuzione aumentano all’aumentare di:
numero di porte del core;dimensioni delle porte, soprattutto in ingresso.
15
Conclusioni e sviluppi futuriConclusioni e sviluppi futuri
Conclusioni:il framework funziona correttamente;prestazioni soddisfacenti;consistente risparmio di tempo in fase di progettazione;Fast IP-Core Generation in a Partial Dynamic Reconfiguration Workflow, VLSI-SoC 2006
Sviluppi futuri:rendere robusta e flessibile la versione attuale del tool;espandere ad altre interfacce e bus;supporto per IP-Core di tipo master;integrare il tool nel flusso di Earendil;GUI.