際際滷

際際滷Share a Scribd company logo
UNA METODOLOGIA PER LA STIMA DELLE RISORSE HARDWARE IN ARCHITETTURE RICONFIGURABILI   Relatore: Prof. Fabrizio FERRANDI  Correlatore: Ing. Marco Domenico SANTAMBROGIO Tesina di Laurea di  Marco MAGNONE  Matr. 640006
Sommario Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
Introduzione Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
Sistemi dedicati Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG. > Vettore di caratterizzaz. > Implementaz. >   Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Descrizione a livello di sistema Analisi Verifica Partizionamento HW/SW Descrizione HW Descrizione SW Sintesi HW Generazione SW Sintesi Interfacce Integrazione + Valutazione vincoli Simulazione + Validazione Sistema Integrato Creazione del modello Generazione della descrizione Valutazione del progetto ed esplorazione dello spazio delle  soluzioni sulla base di prestazioni, dimensioni, consumo e costo Minimizzazione di una cifra di merito rispettando i vincoli di progetto. E necessario disporre di strumenti di stima della qualit del sistema per la parte hardware e quella software Verifica del comportamento del sistema da un punto di vista funzionale e di  timing  sia per validare la specifica iniziale sia il partizionamento introdotto Tecniche per la sincronizzazione tra hardware e software (scambi di segnale, schemi in  interrupt ..)
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. >   Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Obiettivi SVANTAGGI DELLE METRICHE PRESENTI IN LETTERATURA Limitazione a funzioni combinatorie ad un solo ingresso ( Nemani e Najm ) Orientamento ad un solo dispositivo obiettivo, quindi in caso di differente architettura 竪 necessario rifare tutto ( Kulkarni, Najjar, Rinkel ) Errori medi di stima alti (intorno al 20-25%) Sostanziale dipendenza tra implementazione delle metriche e dispositivo  obiettivo scelto   Ricerca di metriche che permettano una stima affidabile dellarea occupata e del tempo di esecuzione dei singoli componenti in unarchitettura riconfigurabile utilizzando descrizioni semi formali quali PDG e SDG Analisi di varie strutture dati (PDG e FGPDG) e validazione dei risultati tramite flusso automatico con lutilizzo di EDK
Framework Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri PandA Progetto nato allinterno del DEI del Politecnico di Milano che mira a sviluppare un  framework  per la progettazione di sistemi dedicati Struttura del progetto modulare, composta da sottoprogetti che interagiscono tra di loro, raggruppati in varie categorie: Livello di gestione di descrizioni comportamentali Livello di gestione di grafi e descrizioni strutturali Livello di sintesi ad alto livello La struttura interna si chiama  IR: tree  ed 竪 un grafo i cui nodi sono istanze di classi C++ appartenenti ad ununica gerarchia, mentre gli archi sono implicitamente definiti come riferimenti tra coppie di nodi. E composto da due sotto-moduli:  IR: graph  e  IR: circuit Le metriche introdotte verranno implementate allinterno di PandA considerando il sotto-modulo IR: graph
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Flusso di sviluppo Descrizione ad alto livello PandA GCC Parser IR: tree IR: graph IR: circuit Metriche Partizionamento HW/SW VHDL IP CoreGen EDK System Creator bitstream C Tool  che crea automaticamente un  core  compatibile con EDK partendo da una  generica funzionalit VHDL Tool  che collega automaticamente il  generico  IP-Core  e un dato sistema con architettura EDK-compatibile
Estrazione delle metriche Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz.  > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri PDG Sa P Sb R 1 S 1 Sc ENTRY T a,li,- a,lc,- a,lc,a a,li,o a,lc,o S :   for(a=ref; a<b; a++)   {   S 1 :   ..........; } P :   ..........; Sa Sb Sc Archi di dipendenza di controllo Archi di dipendenza dal flusso di dati X,Y,Z X   Variabile interessata alla dipendenza  Y  li  loop indipendent  lc  loop carried Z  do  def-order dependency  o  output dependency  a  anti-dependency  -  nessuna delle tre precedenti R 1     Nodo regione
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Vettore di caratterizzazione Il processo di stima esplora progressivamente lintero grafo per arrivare a determinare le caratteristiche dellintera applicazione. Si considera il PDG di ogni  task  presente nellapplicazione e si compila una lista di tutti i tipi di operazioni presenti, determinando un vettore di caratterizzazione del tipo:   Unit funzionale   Coefficiente Sommatori  Sottrattori - Contatori Array Multiplier Comparatori Moltiplicatori - Moltiplicatori per costante Operazioni Logiche MUX - Shifter C 1 -C 4  C 5 -C 6 C 7 -C 14 C 15 -C 17 C 28 -C 33 C 34 -C 38
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz.  >   Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Implementazione delle metriche Una volta che il PDG 竪 stimato, si considerano le dipendenze di controllo, quali  loop  o  branch , e si costruiscono dei macro-nodi fondendo insieme due o piu nodi, e si ripete il procedimento per i nuovi nodi. ENTRY S S3 S1 S2 T F ENTRY S S3 S1 S2 T F ENTRY S S3 S1 S2 T F Allo stesso modo si valutano gli SDG, cio竪 considerando i singoli PDG come macro-nodi e valutando le dipendenze che intercorrono tra essi (esecuzione parallela, sequenziale..)
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz.   >  Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Parametrizzazione delle metriche Larea e il ritardo di propagazione di ogni unit funzionale sono stati ottenuti  attraverso una serie di passi: Generazione del  learning-set Sintesi del  learning-set Analisi del rapporto di sintesi Estrazione della metrica dallanalisi del rapporto di sintesi Validazione della metrica Per rendere le metriche adattabili ad un certo numero di dispositivi, si sono introdotti dei parametri,  S  e  L , indicanti rispettivamente il numero di  slice  e di LUT allinterno di una singola CLB. Quindi prima di applicare le metriche 竪 necessario ottenere il valore di tali costanti, in base allarchitettura di volta in volta presa in considerazione. Xilinx FPGA   S   L Virtex II Pro  Virtex II  Virtex IV  4  8  Virtex V  2  8  Virtex  2  4  Spartan 3/3L  Spartan 3E  4  8
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz.  > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Struttura di CLB e slice Larchitettura obiettivo di questo lavoro 竪 la Virtex II Pro di Xilinx, che ha allinterno di ogni CLB 4  slice  ( S =4) e 4x2=8 LUT ( L =8) C IN C OUT C IN C OUT SHIFT Switch Matrix Slice X0Y0 Slice X0Y1 Slice X1Y0 Slice X1Y1 C IN Slice X1Y0 Slice X1Y1 LUT F LUT G FF/ latch FF/ latch CY CY Ogni CLB 竪 composta da: 4  slice 2 buffer 3-state Ogni  slice  竪 composta da: 2 generatori di funzioni logiche (LUT a 4 ingressi) 2 elementi di memorizzazione funzionanti in modalit sincrona (FF) o asincrona (latch)
Test e risultati Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Esempi (1): unit funzionali Alcuni esempi di metriche ottenute per la SINGOLA unit funzionale, per le famiglie Virtex II e Spartan, per le quali il potere espressivo di una CLB equivale ad un byte: Sommatori  Sottrattori CLB =N  Slice =S*N  LUT =L*N  N dimensione in byte degli addendi Moltiplicatori N 2 /2 [(N 1 =1), V N 2 ] N 1 *N 2 [(1<N 1 <16), V N 2 ] V [N 1 >16, N 2 >50] (N 1 +N 2 ) [(N 1 >16), (1<N 2 <50)] 4 CLB = N 1 , N 2  dimensione in byte delle due variabili da moltiplicare 2 Quindi per lintero PDG si avranno le seguenti metriche per i sommatori e moltiplicatori: A Somm [CLB] = C 1 *C 2    C 1  num. Sommatori, C 2  dim.media addendi A Mol1 [CLB] = C 15 *C 16 *0.5 C 15  num. Molt. con N 1 =1, C 16  dim.media N 2 A Mol2 [CLB] = C 17 *C 18 *C 19 A Mol3 [CLB] = C 20 *(C 21 +C 22 )*0.25 A Mol4 [CLB] = C 23 *C 24 *C 25
Esempi (2): unit funzionali Quindi larea espressa in CLB dellintero PDG 竪 pari a: A [CLB] = A Somm  + A Cont  + A ArrMul  + A Comp1  + A Comp2  + A Comp3  + A Comp4  + A Mol1  + A Mol2 + + A Mol3  +  AMol4  + A MolK  + A OpLog1  + A OpLog2  + A OpLog3  + A Mux Per quanto riguarda il  timing , si 竪 proceduto nello stesso modo e si 竪 ottenuto ad esempio per gli addizionatori:   T Add [s] = NumAdd * [(LungMediaAddendo*d r )+d c ] d r  e d c  sono rispettivamente il  ripple line delay  e il  combinatorial delay  e sono ricavabili dal  data sheet  della scheda Quindi il ritardo di propagazione 竪 dato dalla somma dei singoli contributi, pesati da un fattore empirico  1.5  necessario per tenere in considerazione linfluenza del  routing  e dal fattore  (1/LP)  necessario per pesare la somma dei singoli contributi in relazione alla struttura del  task . T [s] = (1.5/LP) (T Add  + T Mol  + T Mux  + T Log ) Una volta che il PDG 竪 stimato, costituisce un nodo, quindi si considerano le dipendenze di controllo, si formano i macro-nodi e si combinano le stime di area e tempo. Ad esempio nel caso di nodi eseguiti in PARALLELO con area (A 1 ,A 2 ) e  timing  (T 1 ,T 2 ), il macro nodo risultante ha:    A  = A 1  + A 2   T  = MAX (T 1 ,T 2 ) Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
Risultati (1): unit funzionali  Errore medio % Stima tempo Stima  FF Stima CLB Errore medio stima FF sempre nullo tranne  Molt. e MUX Errore medio stima CLB intorno al 2% Errore medio stima tempo di esecuzione al di sotto del 5% (problema  wiring ) Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
Risultati (2): il filtro FIR Il sorgente C del filtro 竪 costituito dalla funzione  clear , che pone zeri nella  delay line  e dalla funzione  fir-basic , che immagazzina i campioni di ingresso e calcola i campioni di uscita. Stima Implementazione Area [CLB] 75 80 85 90 95 100 Stima Implementazione Frequenza [Mhz] Errore medio stima CLB tra il 12% e il 18% Errore  medio stima temporale 7% Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Conclusioni e sviluppi futuri Errori medi di stima per le singole unit funzionali soddisfacenti, intorno  al 2% per le CLB e al 5% per il tempo di esecuzione Facilit nelladattare le metriche ad architetture differenti Errori medi di stima per benchmark complessi tra il 12% e il 18% Problemi riscontrati con il  wiring delay Maggiore utilizzo dei PDG a granularit fine  Integrazione automatica nel flusso di sviluppo delle stime ottenute Maggiore indipendenza dai coefficienti di  delay  nelle stime del tempo di esecuzione In futuro..

More Related Content

What's hot (14)

Thesis M. Redaelli 際際滷s EN
Thesis M. Redaelli 際際滷s ENThesis M. Redaelli 際際滷s EN
Thesis M. Redaelli 際際滷s EN
Marco Santambrogio
Thesis Vecchio 際際滷s iT
Thesis Vecchio 際際滷s iTThesis Vecchio 際際滷s iT
Thesis Vecchio 際際滷s iT
Marco Santambrogio
Thesis Murgida Panella 際際滷 it
Thesis Murgida Panella 際際滷 itThesis Murgida Panella 際際滷 it
Thesis Murgida Panella 際際滷 it
Marco Santambrogio
Thesis Amicucci 際際滷s IT
Thesis Amicucci 際際滷s ITThesis Amicucci 際際滷s IT
Thesis Amicucci 際際滷s IT
Marco Santambrogio
Thesis Corbetta 際際滷 IT
Thesis Corbetta 際際滷 ITThesis Corbetta 際際滷 IT
Thesis Corbetta 際際滷 IT
Marco Santambrogio
Thesis Bosisio Beretta 際際滷 IT
Thesis Bosisio Beretta 際際滷 ITThesis Bosisio Beretta 際際滷 IT
Thesis Bosisio Beretta 際際滷 IT
Marco Santambrogio
Semi-Active Replication Protocol
Semi-Active Replication ProtocolSemi-Active Replication Protocol
Semi-Active Replication Protocol
Paolo Maresca
Extended summary of code building genetic programming
Extended summary of code building genetic programmingExtended summary of code building genetic programming
Extended summary of code building genetic programming
MartinaMaione1

Viewers also liked (20)

Strutturazione di laboratori linguistici e meta fonologici v
Strutturazione di laboratori linguistici e meta fonologici vStrutturazione di laboratori linguistici e meta fonologici v
Strutturazione di laboratori linguistici e meta fonologici v
imartini
Problemi di comportamento e relazione di aiuto
Problemi di comportamento e relazione di aiutoProblemi di comportamento e relazione di aiuto
Problemi di comportamento e relazione di aiuto
imartini
La demotivazione degli studenti
La demotivazione degli studentiLa demotivazione degli studenti
La demotivazione degli studenti
Chiara Schiavi
Psico3mar
Psico3marPsico3mar
Psico3mar
imartini
lezioni di tecniche d'osservazione del comportamento infan.2moduli
lezioni di tecniche d'osservazione del comportamento infan.2modulilezioni di tecniche d'osservazione del comportamento infan.2moduli
lezioni di tecniche d'osservazione del comportamento infan.2moduli
imartini
Tecniche di comunicazione e relazione interpersonale
Tecniche di comunicazione e relazione interpersonaleTecniche di comunicazione e relazione interpersonale
Tecniche di comunicazione e relazione interpersonale
VERLICCHI VERONICA
Tecniche di comunicazione efficace
Tecniche di comunicazione efficaceTecniche di comunicazione efficace
Tecniche di comunicazione efficace
VERLICCHI VERONICA
Relazioneaba24febbraio
Relazioneaba24febbraioRelazioneaba24febbraio
Relazioneaba24febbraio
imartini
La persona al centro
La persona al centroLa persona al centro
La persona al centro
Michele Sartori
La comunicazione e la relazione di aiuto 1
La comunicazione e la relazione di aiuto 1La comunicazione e la relazione di aiuto 1
La comunicazione e la relazione di aiuto 1
Letizia Espanoli
I processi dell ascolto
I processi dell ascoltoI processi dell ascolto
I processi dell ascolto
associazione Argo
Lascolto attivo.
Lascolto attivo.Lascolto attivo.
Lascolto attivo.
Barbara Puccio
La relazione con il paziente con disagio psichico
La relazione con il paziente con disagio psichicoLa relazione con il paziente con disagio psichico
La relazione con il paziente con disagio psichico
Stefano Marconcini
Competenze relazionali e comunicazione dell'operatore
Competenze relazionali e comunicazione dell'operatoreCompetenze relazionali e comunicazione dell'operatore
Competenze relazionali e comunicazione dell'operatore
Dario
Ascolto attivo metodo 4 orecchie schulz von thun
Ascolto attivo metodo 4 orecchie schulz von thunAscolto attivo metodo 4 orecchie schulz von thun
Ascolto attivo metodo 4 orecchie schulz von thun
Nicola Pulze
121 microsoft power point - ascolto attivo
121 microsoft power point - ascolto attivo121 microsoft power point - ascolto attivo
121 microsoft power point - ascolto attivo
imartini
Strutturazione di laboratori linguistici e meta fonologici v
Strutturazione di laboratori linguistici e meta fonologici vStrutturazione di laboratori linguistici e meta fonologici v
Strutturazione di laboratori linguistici e meta fonologici v
imartini
Problemi di comportamento e relazione di aiuto
Problemi di comportamento e relazione di aiutoProblemi di comportamento e relazione di aiuto
Problemi di comportamento e relazione di aiuto
imartini
La demotivazione degli studenti
La demotivazione degli studentiLa demotivazione degli studenti
La demotivazione degli studenti
Chiara Schiavi
Psico3mar
Psico3marPsico3mar
Psico3mar
imartini
lezioni di tecniche d'osservazione del comportamento infan.2moduli
lezioni di tecniche d'osservazione del comportamento infan.2modulilezioni di tecniche d'osservazione del comportamento infan.2moduli
lezioni di tecniche d'osservazione del comportamento infan.2moduli
imartini
Tecniche di comunicazione e relazione interpersonale
Tecniche di comunicazione e relazione interpersonaleTecniche di comunicazione e relazione interpersonale
Tecniche di comunicazione e relazione interpersonale
VERLICCHI VERONICA
Tecniche di comunicazione efficace
Tecniche di comunicazione efficaceTecniche di comunicazione efficace
Tecniche di comunicazione efficace
VERLICCHI VERONICA
Relazioneaba24febbraio
Relazioneaba24febbraioRelazioneaba24febbraio
Relazioneaba24febbraio
imartini
La comunicazione e la relazione di aiuto 1
La comunicazione e la relazione di aiuto 1La comunicazione e la relazione di aiuto 1
La comunicazione e la relazione di aiuto 1
Letizia Espanoli
La relazione con il paziente con disagio psichico
La relazione con il paziente con disagio psichicoLa relazione con il paziente con disagio psichico
La relazione con il paziente con disagio psichico
Stefano Marconcini
Competenze relazionali e comunicazione dell'operatore
Competenze relazionali e comunicazione dell'operatoreCompetenze relazionali e comunicazione dell'operatore
Competenze relazionali e comunicazione dell'operatore
Dario
Ascolto attivo metodo 4 orecchie schulz von thun
Ascolto attivo metodo 4 orecchie schulz von thunAscolto attivo metodo 4 orecchie schulz von thun
Ascolto attivo metodo 4 orecchie schulz von thun
Nicola Pulze
121 microsoft power point - ascolto attivo
121 microsoft power point - ascolto attivo121 microsoft power point - ascolto attivo
121 microsoft power point - ascolto attivo
imartini

Similar to Thesis Magnone 際際滷s IT (20)

Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Analisi e realizzazione di uno strumento per la verifica di conformit su sis...Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Davide Bravin
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Idriss Riouak
BanovazDiego-際際滷s Prelaurea
BanovazDiego-際際滷s PrelaureaBanovazDiego-際際滷s Prelaurea
BanovazDiego-際際滷s Prelaurea
Diego Banovaz
Algoritmi ed architetture per la risoluzione di problemi di visual search
Algoritmi ed architetture per la risoluzione di problemi di visual searchAlgoritmi ed architetture per la risoluzione di problemi di visual search
Algoritmi ed architetture per la risoluzione di problemi di visual search
Alessandro D'Ambrosio
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula sae
Marco Basilici
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptx
GiacomoZorzin
Un metodo di progettazione di reti locali con esigenze di qualit del servizio
Un metodo di progettazione di reti locali con esigenze di qualit del servizioUn metodo di progettazione di reti locali con esigenze di qualit del servizio
Un metodo di progettazione di reti locali con esigenze di qualit del servizio
Claudio Bortone
PresentazioneLaureaMatteoVettosi
PresentazioneLaureaMatteoVettosiPresentazioneLaureaMatteoVettosi
PresentazioneLaureaMatteoVettosi
Matteo Vettosi
Un sistema di persistenza per motori di workflow business-oriented BPMN
Un sistema di persistenza per motori di workflow business-oriented BPMNUn sistema di persistenza per motori di workflow business-oriented BPMN
Un sistema di persistenza per motori di workflow business-oriented BPMN
Alessandro Segatto
Design pattern architetturali Model View Controller, MVP e MVVM
Design pattern architetturali   Model View Controller, MVP e MVVMDesign pattern architetturali   Model View Controller, MVP e MVVM
Design pattern architetturali Model View Controller, MVP e MVVM
Riccardo Cardin
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
Alessandro Alpi
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Dario Crosera
際際滷 Project Software Engineer
際際滷 Project Software Engineer際際滷 Project Software Engineer
際際滷 Project Software Engineer
guestf4963
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Grogdunn
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
Confindustria Emilia-Romagna Ricerca
LabVIEW pragma engineering
LabVIEW pragma engineeringLabVIEW pragma engineering
LabVIEW pragma engineering
admin.pragmaeng
Hadoop analyzerJR
Hadoop analyzerJRHadoop analyzerJR
Hadoop analyzerJR
Simone Romano
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi TridimensionaliProgetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Marco Bresciani
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICT
Matteo Gentile
Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Analisi e realizzazione di uno strumento per la verifica di conformit su sis...Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Analisi e realizzazione di uno strumento per la verifica di conformit su sis...
Davide Bravin
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Idriss Riouak
BanovazDiego-際際滷s Prelaurea
BanovazDiego-際際滷s PrelaureaBanovazDiego-際際滷s Prelaurea
BanovazDiego-際際滷s Prelaurea
Diego Banovaz
Algoritmi ed architetture per la risoluzione di problemi di visual search
Algoritmi ed architetture per la risoluzione di problemi di visual searchAlgoritmi ed architetture per la risoluzione di problemi di visual search
Algoritmi ed architetture per la risoluzione di problemi di visual search
Alessandro D'Ambrosio
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula sae
Marco Basilici
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptx
GiacomoZorzin
Un metodo di progettazione di reti locali con esigenze di qualit del servizio
Un metodo di progettazione di reti locali con esigenze di qualit del servizioUn metodo di progettazione di reti locali con esigenze di qualit del servizio
Un metodo di progettazione di reti locali con esigenze di qualit del servizio
Claudio Bortone
PresentazioneLaureaMatteoVettosi
PresentazioneLaureaMatteoVettosiPresentazioneLaureaMatteoVettosi
PresentazioneLaureaMatteoVettosi
Matteo Vettosi
Un sistema di persistenza per motori di workflow business-oriented BPMN
Un sistema di persistenza per motori di workflow business-oriented BPMNUn sistema di persistenza per motori di workflow business-oriented BPMN
Un sistema di persistenza per motori di workflow business-oriented BPMN
Alessandro Segatto
Design pattern architetturali Model View Controller, MVP e MVVM
Design pattern architetturali   Model View Controller, MVP e MVVMDesign pattern architetturali   Model View Controller, MVP e MVVM
Design pattern architetturali Model View Controller, MVP e MVVM
Riccardo Cardin
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
Alessandro Alpi
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Classificazione delle segnalazioni cliente in base alla rilevanza secondo tec...
Dario Crosera
際際滷 Project Software Engineer
際際滷 Project Software Engineer際際滷 Project Software Engineer
際際滷 Project Software Engineer
guestf4963
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Analisi e sviluppo di uno strumento per l'automazione della verifica di confo...
Grogdunn
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
SINERGIE: Soluzioni integrate per le macchine automatiche di prossima generaz...
Confindustria Emilia-Romagna Ricerca
LabVIEW pragma engineering
LabVIEW pragma engineeringLabVIEW pragma engineering
LabVIEW pragma engineering
admin.pragmaeng
Hadoop analyzerJR
Hadoop analyzerJRHadoop analyzerJR
Hadoop analyzerJR
Simone Romano
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi TridimensionaliProgetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Marco Bresciani
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICT
Matteo Gentile

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

Thesis Magnone 際際滷s IT

  • 1. UNA METODOLOGIA PER LA STIMA DELLE RISORSE HARDWARE IN ARCHITETTURE RICONFIGURABILI Relatore: Prof. Fabrizio FERRANDI Correlatore: Ing. Marco Domenico SANTAMBROGIO Tesina di Laurea di Marco MAGNONE Matr. 640006
  • 2. Sommario Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
  • 3. Introduzione Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
  • 4. Sistemi dedicati Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG. > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Descrizione a livello di sistema Analisi Verifica Partizionamento HW/SW Descrizione HW Descrizione SW Sintesi HW Generazione SW Sintesi Interfacce Integrazione + Valutazione vincoli Simulazione + Validazione Sistema Integrato Creazione del modello Generazione della descrizione Valutazione del progetto ed esplorazione dello spazio delle soluzioni sulla base di prestazioni, dimensioni, consumo e costo Minimizzazione di una cifra di merito rispettando i vincoli di progetto. E necessario disporre di strumenti di stima della qualit del sistema per la parte hardware e quella software Verifica del comportamento del sistema da un punto di vista funzionale e di timing sia per validare la specifica iniziale sia il partizionamento introdotto Tecniche per la sincronizzazione tra hardware e software (scambi di segnale, schemi in interrupt ..)
  • 5. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Obiettivi SVANTAGGI DELLE METRICHE PRESENTI IN LETTERATURA Limitazione a funzioni combinatorie ad un solo ingresso ( Nemani e Najm ) Orientamento ad un solo dispositivo obiettivo, quindi in caso di differente architettura 竪 necessario rifare tutto ( Kulkarni, Najjar, Rinkel ) Errori medi di stima alti (intorno al 20-25%) Sostanziale dipendenza tra implementazione delle metriche e dispositivo obiettivo scelto Ricerca di metriche che permettano una stima affidabile dellarea occupata e del tempo di esecuzione dei singoli componenti in unarchitettura riconfigurabile utilizzando descrizioni semi formali quali PDG e SDG Analisi di varie strutture dati (PDG e FGPDG) e validazione dei risultati tramite flusso automatico con lutilizzo di EDK
  • 6. Framework Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
  • 7. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri PandA Progetto nato allinterno del DEI del Politecnico di Milano che mira a sviluppare un framework per la progettazione di sistemi dedicati Struttura del progetto modulare, composta da sottoprogetti che interagiscono tra di loro, raggruppati in varie categorie: Livello di gestione di descrizioni comportamentali Livello di gestione di grafi e descrizioni strutturali Livello di sintesi ad alto livello La struttura interna si chiama IR: tree ed 竪 un grafo i cui nodi sono istanze di classi C++ appartenenti ad ununica gerarchia, mentre gli archi sono implicitamente definiti come riferimenti tra coppie di nodi. E composto da due sotto-moduli: IR: graph e IR: circuit Le metriche introdotte verranno implementate allinterno di PandA considerando il sotto-modulo IR: graph
  • 8. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Flusso di sviluppo Descrizione ad alto livello PandA GCC Parser IR: tree IR: graph IR: circuit Metriche Partizionamento HW/SW VHDL IP CoreGen EDK System Creator bitstream C Tool che crea automaticamente un core compatibile con EDK partendo da una generica funzionalit VHDL Tool che collega automaticamente il generico IP-Core e un dato sistema con architettura EDK-compatibile
  • 9. Estrazione delle metriche Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
  • 10. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri PDG Sa P Sb R 1 S 1 Sc ENTRY T a,li,- a,lc,- a,lc,a a,li,o a,lc,o S : for(a=ref; a<b; a++) { S 1 : ..........; } P : ..........; Sa Sb Sc Archi di dipendenza di controllo Archi di dipendenza dal flusso di dati X,Y,Z X Variabile interessata alla dipendenza Y li loop indipendent lc loop carried Z do def-order dependency o output dependency a anti-dependency - nessuna delle tre precedenti R 1 Nodo regione
  • 11. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Vettore di caratterizzazione Il processo di stima esplora progressivamente lintero grafo per arrivare a determinare le caratteristiche dellintera applicazione. Si considera il PDG di ogni task presente nellapplicazione e si compila una lista di tutti i tipi di operazioni presenti, determinando un vettore di caratterizzazione del tipo: Unit funzionale Coefficiente Sommatori Sottrattori - Contatori Array Multiplier Comparatori Moltiplicatori - Moltiplicatori per costante Operazioni Logiche MUX - Shifter C 1 -C 4 C 5 -C 6 C 7 -C 14 C 15 -C 17 C 28 -C 33 C 34 -C 38
  • 12. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Implementazione delle metriche Una volta che il PDG 竪 stimato, si considerano le dipendenze di controllo, quali loop o branch , e si costruiscono dei macro-nodi fondendo insieme due o piu nodi, e si ripete il procedimento per i nuovi nodi. ENTRY S S3 S1 S2 T F ENTRY S S3 S1 S2 T F ENTRY S S3 S1 S2 T F Allo stesso modo si valutano gli SDG, cio竪 considerando i singoli PDG come macro-nodi e valutando le dipendenze che intercorrono tra essi (esecuzione parallela, sequenziale..)
  • 13. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Parametrizzazione delle metriche Larea e il ritardo di propagazione di ogni unit funzionale sono stati ottenuti attraverso una serie di passi: Generazione del learning-set Sintesi del learning-set Analisi del rapporto di sintesi Estrazione della metrica dallanalisi del rapporto di sintesi Validazione della metrica Per rendere le metriche adattabili ad un certo numero di dispositivi, si sono introdotti dei parametri, S e L , indicanti rispettivamente il numero di slice e di LUT allinterno di una singola CLB. Quindi prima di applicare le metriche 竪 necessario ottenere il valore di tali costanti, in base allarchitettura di volta in volta presa in considerazione. Xilinx FPGA S L Virtex II Pro Virtex II Virtex IV 4 8 Virtex V 2 8 Virtex 2 4 Spartan 3/3L Spartan 3E 4 8
  • 14. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Struttura di CLB e slice Larchitettura obiettivo di questo lavoro 竪 la Virtex II Pro di Xilinx, che ha allinterno di ogni CLB 4 slice ( S =4) e 4x2=8 LUT ( L =8) C IN C OUT C IN C OUT SHIFT Switch Matrix Slice X0Y0 Slice X0Y1 Slice X1Y0 Slice X1Y1 C IN Slice X1Y0 Slice X1Y1 LUT F LUT G FF/ latch FF/ latch CY CY Ogni CLB 竪 composta da: 4 slice 2 buffer 3-state Ogni slice 竪 composta da: 2 generatori di funzioni logiche (LUT a 4 ingressi) 2 elementi di memorizzazione funzionanti in modalit sincrona (FF) o asincrona (latch)
  • 15. Test e risultati Introduzione Sistemi dedicati Obiettivi Framework PandA Flusso di sviluppo Estrazione delle metriche PDG Vettore di caratterizzazione Implementazione delle metriche Parametrizzazione delle metriche Struttura di CLB e slice Test e risultati Esempi Risultati Conclusioni e sviluppi futuri
  • 16. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Esempi (1): unit funzionali Alcuni esempi di metriche ottenute per la SINGOLA unit funzionale, per le famiglie Virtex II e Spartan, per le quali il potere espressivo di una CLB equivale ad un byte: Sommatori Sottrattori CLB =N Slice =S*N LUT =L*N N dimensione in byte degli addendi Moltiplicatori N 2 /2 [(N 1 =1), V N 2 ] N 1 *N 2 [(1<N 1 <16), V N 2 ] V [N 1 >16, N 2 >50] (N 1 +N 2 ) [(N 1 >16), (1<N 2 <50)] 4 CLB = N 1 , N 2 dimensione in byte delle due variabili da moltiplicare 2 Quindi per lintero PDG si avranno le seguenti metriche per i sommatori e moltiplicatori: A Somm [CLB] = C 1 *C 2 C 1 num. Sommatori, C 2 dim.media addendi A Mol1 [CLB] = C 15 *C 16 *0.5 C 15 num. Molt. con N 1 =1, C 16 dim.media N 2 A Mol2 [CLB] = C 17 *C 18 *C 19 A Mol3 [CLB] = C 20 *(C 21 +C 22 )*0.25 A Mol4 [CLB] = C 23 *C 24 *C 25
  • 17. Esempi (2): unit funzionali Quindi larea espressa in CLB dellintero PDG 竪 pari a: A [CLB] = A Somm + A Cont + A ArrMul + A Comp1 + A Comp2 + A Comp3 + A Comp4 + A Mol1 + A Mol2 + + A Mol3 + AMol4 + A MolK + A OpLog1 + A OpLog2 + A OpLog3 + A Mux Per quanto riguarda il timing , si 竪 proceduto nello stesso modo e si 竪 ottenuto ad esempio per gli addizionatori: T Add [s] = NumAdd * [(LungMediaAddendo*d r )+d c ] d r e d c sono rispettivamente il ripple line delay e il combinatorial delay e sono ricavabili dal data sheet della scheda Quindi il ritardo di propagazione 竪 dato dalla somma dei singoli contributi, pesati da un fattore empirico 1.5 necessario per tenere in considerazione linfluenza del routing e dal fattore (1/LP) necessario per pesare la somma dei singoli contributi in relazione alla struttura del task . T [s] = (1.5/LP) (T Add + T Mol + T Mux + T Log ) Una volta che il PDG 竪 stimato, costituisce un nodo, quindi si considerano le dipendenze di controllo, si formano i macro-nodi e si combinano le stime di area e tempo. Ad esempio nel caso di nodi eseguiti in PARALLELO con area (A 1 ,A 2 ) e timing (T 1 ,T 2 ), il macro nodo risultante ha: A = A 1 + A 2 T = MAX (T 1 ,T 2 ) Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
  • 18. Risultati (1): unit funzionali Errore medio % Stima tempo Stima FF Stima CLB Errore medio stima FF sempre nullo tranne Molt. e MUX Errore medio stima CLB intorno al 2% Errore medio stima tempo di esecuzione al di sotto del 5% (problema wiring ) Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
  • 19. Risultati (2): il filtro FIR Il sorgente C del filtro 竪 costituito dalla funzione clear , che pone zeri nella delay line e dalla funzione fir-basic , che immagazzina i campioni di ingresso e calcola i campioni di uscita. Stima Implementazione Area [CLB] 75 80 85 90 95 100 Stima Implementazione Frequenza [Mhz] Errore medio stima CLB tra il 12% e il 18% Errore medio stima temporale 7% Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri
  • 20. Stato: .:: Introduzione > Sistemi dedicati > Obiettivi .:: Framework > PandA > Flusso di sviluppo .:: Estrazione delle metriche > PDG > Vettore di caratterizzaz. > Implementaz. > Parametr. > CLB e slice .:: Test e risultati > Esempi > Risultati > Conclusioni e sviluppi futuri Conclusioni e sviluppi futuri Errori medi di stima per le singole unit funzionali soddisfacenti, intorno al 2% per le CLB e al 5% per il tempo di esecuzione Facilit nelladattare le metriche ad architetture differenti Errori medi di stima per benchmark complessi tra il 12% e il 18% Problemi riscontrati con il wiring delay Maggiore utilizzo dei PDG a granularit fine Integrazione automatica nel flusso di sviluppo delle stime ottenute Maggiore indipendenza dai coefficienti di delay nelle stime del tempo di esecuzione In futuro..