200 likes | 340 Views
Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA. Esame di laurea. Sommario. Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni. Dedicata a Gilli, Giulio, Vane, Guasco, Gian, Albe, Dade, Ermo.
E N D
Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA Esame di laurea
Sommario • Obiettivi • Analisi lavori precedenti • Descrizione metodologia • Attività svolta • Stimatori • Validazione • Conclusioni Dedicata a Gilli, Giulio, Vane, Guasco, Gian, Albe, Dade, Ermo
Descrizioni VHDL Sintesi logica Area occupata Sintesi ad alto livello Stimatori Stimatori Obiettivi • Definire una metodologia di stima dell’area HW in supporto ad un flusso di codesign HW/SW (partizionamento) Specifiche SystemC • Dispositivo target: famiglia di FPGA Virtex-II Pro di Xilinx • Sviluppo di stimatori adattabili a livelli di astrazione superiori
Sommario • Obiettivi • Analisi lavori precedenti • Descrizione metodologia • Attività svolta • Stimatori • Validazione • Conclusioni
Lavori precedenti • Stima d'area per circuiti integrati (ASIC) • Non esportabile a FPGA con lookuptable • Stima del mapping tecnologico (M. Xu e F. J. Kurdahi) • Stima delle LUT dalla descrizione gate level • Approccio fast-synthesys • Scansione della netlist • Dispositivo di riferimento XC4000 di Xilinx • Livello di astrazione troppo basso • Approccio fortemente legato al dispositivo • Differenze strutturali tra XC4000 e Virtex-II Pro
Sommario • Obiettivi • Analisi lavori precedenti • Descrizione metodologia • Attività svolta • Stimatori • Validazione • Conclusioni
Virtex-II Pro • Virtex-II Pro • Microprocessore PowerPC 405 • Slices • LUT • Elementi di memorizzazione • Moltiplicatori 18x18 bit in complemento a 2 • Blocchi di SelectRAM+ • Risorse di comunicazione • Obiettivo della stima • Slices • LUT • Flip-flop F FF G FF
FSM Mux Registri Logica sparsa Operatori aritmetici Metodologia • Analisi della descrizione VHDLRTL Unità di elaborazione Unità di controllo
Metodologia • Approccio additivo • Stima componenti base • Multiplexer • Registri • Operatori aritmetici • Sommatori, incrementatori • Moltiplicatori • Comparatori • Stima macchina a stati finiti • Per il momento non viene considerata la logica sparsa
Metodologia • La somma non è un buon indicatore • Correlazione elevata (0,9) • Le ottimizzazioni impattano significativamente sul risultato finale • Errore troppo elevato • Modello • Stima di un coefficiente correttivo
Metodologia • Oggetto della stima • Componenti base • Macchine a stati finiti • Coefficienti di correzione • Validazione modello Learning-set Sintesi Analisi (correlazione) Stimatore Validazione
Sommario • Obiettivi • Analisi lavori precedenti • Descrizione metodologia • Attività svolta • Stimatori • Validazione • Conclusioni
Stime di base • Componenti base • Generazione automaticalearning-set • Ottimizzazioni ininfluenti • Validazione basata sulla correlazione • Macchine stati finiti • Individuazione learning-set • Sintesi con differenti direttive di ottimizzazione • Validazione attraverso l'applicazione deglistimatori ad un insieme di esempi di validazione diverso da quello usato in fase di addestramento
Stime dei coefficienti correttivi • Ottimizzazioni a livello RT • Propagazione gerarchica delle costanti • Appiattimento totale della gerarchia • Effort massimo • Si individuano due classi di ottimizzazioni • Ottimizzazione dell'area • Ottimizzazione del tempo • k - coefficiente di correzione delle LUT • Stima dell'impatto delle ottimizzazioni • Stima delle dimensioni della logica sparsa • j - coefficiente di correzione dei flip-flop • Stima dell'impatto delle ottimizzazioni
La validazione • Esempi di validazione • 3 sezioni dell’algoritmo AES • Un timer • La cifratura con DES • Numero esiguo di esempi di validazione (5) • Sufficiente per validare la metodologia e validare il prototipo di stima
La validazione • Ottimizzazione rispetto all’area
La validazione • Ottimizzazione rispetto al tempo
Sommario • Obiettivi • Analisi lavori precedenti • Descrizione metodologia • Attività svolta • Stimatori • Validazione • Conclusioni
Conclusioni • Glistimatori ottenuti sono molto veloci e fanno uso di poche informazioni • Viene introdotto un errore non trascurabile • Varianza dell’errore contenuta (0,037-0,042) • Metodo di stima grossolano • Informazioni d’alto livello • Sviluppi futuri • Utilizzo di altre approssimanti (es. reti neurali) • Numero di esempi molto maggiore • Automazione estrazione stimatori
Fine Per approfondimenti si prega di consultare le parti postergate della tesi F i n e