Dipartimento di Elettronica ed Informazione Corso di Laurea in Ingegneria Informatica Esame di laurea Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA 17 Giugno 2003 Luca Pizzamiglio Sommario Dedicata a Gilli, Giulio, Vane, Guasco, Gian, Albe, Dade, Ermo Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -2- Esame di laurea Obiettivi Definire una metodologia di stima dell’area HW in supporto ad un flusso di codesign HW/SW (partizionamento) Specifiche SystemC Sintesi ad alto livello Descrizioni VHDL Stimatori Sintesi logica Area occupata Stimatori Dispositivo target: famiglia di FPGA Virtex-II Pro di Xilinx Sviluppo di stimatori adattabili a livelli di astrazione superiori Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -3- Esame di laurea Sommario Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -4- Esame di laurea Lavori precedenti Stima d'area per circuiti integrati (ASIC) Stima del mapping tecnologico Non esportabile a FPGA con lookup table (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 Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -5- Esame di laurea Sommario Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -6- Esame di laurea 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 F Slices LUT G Flip-flop Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -7- FF FF Esame di laurea Metodologia Analisi della descrizione VHDL RTL Mux Registri FSM Logica sparsa Operatori aritmetici Unità di elaborazione Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA Unità di controllo -8- Esame di laurea 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 LUT LUTmux LUTreg LUTop LUTfsm FF FFreg FFfsm Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA -9- Esame di laurea 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 LUT ˆ FF ̂ Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 10 - LUT FF Esame di laurea Metodologia Learning-set Sintesi Analisi (correlazione) Oggetto della stima Componenti base Macchine a stati finiti Coefficienti di correzione Validazione modello Stimatore Validazione Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 11 - Esame di laurea Sommario Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 12 - Esame di laurea Stime di base Componenti base Generazione automatica learning-set Ottimizzazioni ininfluenti Validazione basata sulla correlazione Macchine stati finiti Individuazione learning-set Sintesi con differenti direttive di ottimizzazione Validazione attraverso l'applicazione degli stimatori ad un insieme di esempi di validazione diverso da quello usato in fase di addestramento Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 13 - Esame di laurea Stime dei coefficienti correttivi Ottimizzazioni a livello RT Si individuano due classi di ottimizzazioni Ottimizzazione dell'area Ottimizzazione del tempo - coefficiente di correzione delle LUT Propagazione gerarchica delle costanti Appiattimento totale della gerarchia Effort massimo Stima dell'impatto delle ottimizzazioni Stima delle dimensioni della logica sparsa - coefficiente di correzione dei flip-flop Stima dell'impatto delle ottimizzazioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 14 - Esame di laurea 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 Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 15 - Esame di laurea La validazione Ottimizzazione rispetto all’area 60 50 40 30 20 10 0 -10 -20 -30 -40 -50 LUT-1 LUT-2 FF-1 FF-2 Ex1 Ex2 Ex3 Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA Ex4 - 16 - Ex5 Esame di laurea La validazione Ottimizzazione rispetto al tempo 60 50 40 30 LUT-1 20 10 0 LUT-2 FF-1 FF-2 -10 -20 -30 Ex1 Ex2 Ex3 Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA Ex4 - 17 - Ex5 Esame di laurea Sommario Obiettivi Analisi lavori precedenti Descrizione metodologia Attività svolta Stimatori Validazione Conclusioni Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 18 - Esame di laurea Conclusioni Gli stimatori 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 Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 19 - Esame di laurea Fine Fine Per approfondimenti si prega di consultare le parti postergate della tesi Stimatori d'area per descrizioni VHDL derivate da SystemC per sistemi basati su FPGA - 20 - Esame di laurea