4/12/98Cristina Silvano - CEFRIEL1 Sintesi ad alto livello Cristina Silvano CEFRIEL - Politecnico di Milano Electronic Design Automation (EDA) Area Via Fucini 2, I Milano (Italy) Ph.: Fax:
4/12/98Cristina Silvano - CEFRIEL2 Sommario Introduzione Vantaggi della sintesi ad alto livello Fasi della sintesi ad alto livello Il problema dello scheduling Il problema dell’allocazione Sintesi ad alto livello e CAD commerciale
4/12/98Cristina Silvano - CEFRIEL3 Introduzione La tecnologia microelettronica, basata sull’utilizzo dei semiconduttori, ha subito un’enorme evoluzione negli ultimi decenni. Il continuo incremento del livello di integrazione dei dispositivi microelettronici ha permesso la realizzazione di sistemi di complessità crescente. L’elevato livello di integrazione implica: Raggiungimento di prestazioni sempre più spinte Riduzione dei costi Aumento dell’affidabilità La rapida evoluzione tecnologica del mercato microelettronico rende un circuito rapidamente obsoleto Riduzione del time-to-market di un circuito o sistema digitale Riduzione dei tempi di sviluppo. Importanza strategica delle metodologie e dei tool CAD (Computer Aided Design) per raggiungere gli obiettivi di progetto nel rispetto dei tempi di sviluppo.
4/12/98Cristina Silvano - CEFRIEL4 Livelli di astrazione Livello Sistema Livello Comportamentale Livello Architetturale o RT (Register Transfer) Livello Logico Livello Geometrico
4/12/98Cristina Silvano - CEFRIEL5 Domini di rappresentazione Dominio Strutturale Dominio Funzionale Dominio Fisico
4/12/98Cristina Silvano - CEFRIEL6 Domini di rappresentazione (cont.) Dominio Funzionale Funzionalità astratta Dominio Strutturale Interconnessione di elementi Dominio Fisico Oggetti geometrici con dimensioni e posizione
4/12/98Cristina Silvano - CEFRIEL7 Livelli di astrazione e domini di rappresentazione Dominio StrutturaleDominio Funzionale Dominio Fisico Layout Celle Chip PCB, MCM Processori, Memorie ALU, MUX,REG Gate, F/F Transistor, Interc. Algoritmi Trasf. Reg. Funzioni dei Transistor Espressioni Booleane Livello Comportamentale Livello Architetturale Livello Logico Livello Geometrico
4/12/98Cristina Silvano - CEFRIEL8 Sintesi vs. livelli di astrazione e domini di rappresentazione Dominio StrutturaleDominio Funzionale Dominio Fisico Layout Celle Chip PCB, MCM Processori, Memorie ALU, MUX,REG Gate, F/F Transistor, Interc. Algoritmi Trasf. Reg. Funzioni dei Transistor Espressioni Booleane Sintesi Comportamentale Sintesi Architetturale Sintesi Logica Sintesi Circuitale Progetto Fisico
4/12/98Cristina Silvano - CEFRIEL9 Criteri di ottimizzazione dei circuiti VLSI Prestazioni Ritardo e ciclo di clock Latenza Throughput (per applicazioni pipeline) Area Resa e costi di packaging Consumo di potenza Testabilità Affidabilità
4/12/98Cristina Silvano - CEFRIEL10 Criteri di ottimizzazione dei circuiti VLSI Molto spesso occorre raggiungere un’ottimizzazione congiunta secondo diversi criteri: Minimizzare l’area sotto vincoli di ritardo Minimizzare il ritardo sotto vincoli di area Minimizzare la latenza sotto vincoli di area Minimizzare il ritardo sotto vincoli di potenza
4/12/98Cristina Silvano - CEFRIEL11 Il problema della sintesi ad alto livello Data la specifica a livello algoritmico o comportamentale di un sistema ed un insieme di vincoli e obiettivi da soddisfare determinare la struttura a livello RT che implementi questo comportamento soddisfacendo obiettivi e vincoli.
4/12/98Cristina Silvano - CEFRIEL12 Sintesi ad alto livello o comportamentale Ingresso Specifiche funzionali ad alto livello (algoritmi) del circuito da progettare Obiettivi: parametri da massimizzare e minimizzare (costi, prestazioni) Vincoli: condizioni di progetto da soddisfare (costi, prestazioni) Uscita Descrizione strutturale dell’architettura del circuito a livello RT (Register Transfer) in una modalità accettabile dal sistema di sintesi logica. -Sezione di elaborazione (Data-path) -Sezione di controllo (Controller)
4/12/98Cristina Silvano - CEFRIEL13 Prodotto della sintesi ad alto livello Data-path: Elementi di elaborazione (sommatori, moltiplicatori, comparatori, ecc.) Elementi di memorizzazione (registri, RAM, ecc.) Elementi di interconnessione (wire, bus, mux, ecc.) Controller: Macchina a Stati Finiti (FSM) Microcontrollore + microprogramma Schema di sincronizzazione (ad es. clock globale a singola fase e registri master- slave)
4/12/98Cristina Silvano - CEFRIEL14 Vantaggi della sintesi ad alto livello Possibilità di gestire progetti più complessi. Riduzione dei tempi di progettazione. Riduzione della possibilità di errore (correttezza per costruzione). Possibilità di esplorare lo spazio di progetto (analisi trade-off costi/prestazioni). Ampliamento del numero di utenti alla progettazione. Possibilità di documentare il processo.
4/12/98Cristina Silvano - CEFRIEL15 Fasi della sintesi ad alto livello Specifica ad alto livello Parsing (o compilazione) Dipendente dal linguaggio di specifica Creazione di una rappresentazione intermedia Sintesi comportamentale Manipolazione della rappresentazione intermedia Indipendente dal modello hardware Sintesi strutturale Scheduling e allocazione su una rappresentazione intermedia Mapping su architettura hardware ben definita Sintesi data-flow e del controllo
4/12/98Cristina Silvano - CEFRIEL16 Metodi di specifica Linguaggi di programmazione tradizionali (C, C++, Pascal, Ada, Prolog, …) Linguaggi per la descrizione dell’hardware (HDL) Procedurali: Hardware C, ISPS, DSL, MIMOLA, SILAGE, behavioral VHDL, … Linguaggi di descrizione strutturale (BDS, VHDL strutturale, VERILOG,…) Formalismi grafici (Data Flow Graphs, Control Flow Graphs, Reti di Petri, Statecharts, SpecCharts, Grafi misti, …)