20
3/7/01 Cristina Silvano - Università degli Studi di Milano 1 Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell’Informazione Via Comelico 39/41, I-20135 Milano (Italy) Tel.: +39-2-5835-6306 e-mail: [email protected] 3/7/01 Cristina Silvano - Università degli Studi di Milano 2 Sommario Introduzione Evoluzione tecnologica Flusso di progetto Livelli di astrazione Linguaggi HDL (Hardware Description Language)

Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

  • Upload
    dinhanh

  • View
    223

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 1

Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali

Cristina Silvano

Università degli Studi di MilanoDipartimento di Scienze dell’InformazioneVia Comelico 39/41, I-20135 Milano (Italy)

Tel.: +39-2-5835-6306 e-mail: [email protected]

3/7/01 Cristina Silvano - Università degli Studi di Milano 2

Sommario

• Introduzione

• Evoluzione tecnologica

• Flusso di progetto

• Livelli di astrazione

• Linguaggi HDL (Hardware Description Language)

Page 2: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 3

Introduzione

• La tecnologia microelettronica, basata sull’utilizzo dei semiconduttori, ha subito un’enorme evoluzione negli ultimi decenni.

• I circuiti VLSI (Very Large Scale Integration) realizzati con tecnologia CMOS (Complementary Metal Oxide Semiconductor) costituiscono la tecnologia strategica per lo sviluppo dei sistemi digitali.

• Il continuo incremento del livello di integrazione dei dispositivi microelettronici ha permesso la realizzazione di sistemi di complessità crescente.

• Principali settori di mercato:• Sistemi di elaborazione

• Telecomunicazioni

• Elettronica di consumo

• Automotive

• Automazione

3/7/01 Cristina Silvano - Università degli Studi di Milano 4

Microfotografia di un dispositivo VLSI

Page 3: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 5

Esigenze del mercato microelettronico

• Utilizzare le più avanzate tecnologie sub-micrometriche per mantenere elevate prestazioni.

• Ridurre costi di progetto e di fabbricazione per mantenersi competitivi sul mercato.

• Accorciare i tempi di progetto per rispettare il time-to-market del prodotto.

3/7/01 Cristina Silvano - Università degli Studi di Milano 6

Introduzione (cont.)

• L’elevato livello di integrazione implica:• Aumento delle prestazioni

• Riduzione dei costi

• Aumento dell’affidabilità

• Analisi valida nell’ipotesi che i volumi di vendita del circuito siano abbastanza elevati da recuperare i costi di progetto e di fabbricazione.Esempio: microprocessori general-purpose.

• Alcune applicazioni richiedono circuiti integrati dedicati o ASIC (Application Specific Integrated Circuit) non prodotti in alti volumi poiché specializzati a compiere un limitato insieme di operazioni.

• Altre applicazioni richiedono circuiti integrati programmabili o FPGA (Field Programmable Gate Array) personalizzabili on-site dopo la produzione del dispositivo.

Page 4: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 7

Esempi di circuiti microelettronici

• Processori general-purpose caratterizzati da:• Volumi di vendita elevati

• Prestazioni elevate

• ⇒ Progettazione FULL-CUSTOM

• Circuiti ASIC caratterizzati da:• Volumi di vendita medi

• Diversi livelli di prestazioni

• Adatti ad applicazioni dedicate

• ⇒ Progettazione SEMI-CUSTOM

3/7/01 Cristina Silvano - Università degli Studi di Milano 8

Tempi di sviluppo

• 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.

• Aumento del livello di qualità e affidabilità richiesto al prodotto.

Page 5: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 9

Principali requisiti del mercato

• Livello di integrazione

• Complessità progettuale

• Prestazioni

• Dissipazione di potenza

• Affidabilità

• Time-to-market

• Costi

• Volumi di produzione

• ⇒ Importanza strategica delle metodologie e dei tool CAD (Computer Aided Design) o EDA (Electronic Design Automation) per raggiungere gli obiettivi di progetto nel rispetto dei tempi di sviluppo.

3/7/01 Cristina Silvano - Università degli Studi di Milano 10

Principali trend dell’industria microelettronica

• Miglioramenti tecnologici• Riduzioni dell’area di silicio

• Maggiori prestazioni

• Maggior numero di transistor su un singolo chip

• Maggiore livello di integrazione• Maggiore complessità dei sistemi

• Riduzione dei costi

• Maggiore affidabilità

Page 6: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 11

Livelli di astrazione

Definiscono i livelli di dettaglio della descrizione

• Livello Sistema

• Livello Comportamentale o Behavioral

• Livello Architetturale o RT (Register Transfer)

• Livello Logico

• Livello Circuitale o Transistor

• Livello Geometrico o Layout

3/7/01 Cristina Silvano - Università degli Studi di Milano 12

Livello Sistema

• Esempio: Sistema di elaborazione composto da processore, memoria e dispositivi di ingresso/uscita.

Processor

Computer

Control

Datapath

Memory Devices

Input

Output

Page 7: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 13

Livello Comportamentale o Behavioral

,QJUHVVL 8VFLWD

6(/ $ % =

� � � �

� � � �

� � � �

� � � �

• Rappresentazione algoritmica della funzionalità di un modulo o componente del sistema.

• Esempio: Selettore o multiplexer

-- modello comportamentale --begin

if (SEL='0') thenZ <= A;

elseZ <= B;

end if;end;

3/7/01 Cristina Silvano - Università degli Studi di Milano 14

Livello Architetturale o RT (Register Transfer)

• Rappresentazione a livello di trasferimento tra registri.

D

Q

CLK

D

Q

CLK

Page 8: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 15

Livello Logico• Rappresentazione a livello di componenti (ad esempio porte logiche

elementari e registri) e loro interconnessione.

• Esempio: A

BD

Q

CLK

C

• Esempio: Simbolo di un componente inserito in un contesto gerarchico.

3/7/01 Cristina Silvano - Università degli Studi di Milano 16

Livello Logico

• Esempio: Schema logico complesso

Page 9: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 17

bit bit

word

Livello Circuitale o Transistor

• Rappresentazione a livello di transistor e loro interconnessioni

• Esempio: cella di memoria SRAM (Static Random Access Memory).

3/7/01 Cristina Silvano - Università degli Studi di Milano 18

Livello Layout

• Rappresentazione delle geometrie delle maschere tecnologiche relative a transistor, condensatori, resistenze e alle loro interconnessioni.

Page 10: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 19

Livello Layout

3/7/01 Cristina Silvano - Università degli Studi di Milano 20

Livello Layout

Page 11: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 21

Esempio di diverse descrizioni di una porta logica NAND

Vdd

A

B

Out

OutA

B

A B Out

0 0 10 1 11 0 11 1 0

3/7/01 Cristina Silvano - Università degli Studi di Milano 22

Fasi di sviluppo di un circuito VLSI

• Progettazione:• Modellizzazione

• Sintesi e ottimizzazione

• Validazione

• Fabbricazione:• Fabbricazione delle maschere

• Fabbricazione dei wafer

• Testing

• Packaging• Slicing del wafer

• Packaging

Page 12: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 23

Progettazione

• Modellizzazione:• Hardware Description Language (HDL)

• Diagramma di Flusso

• Schematico o Schema Logico

• Grafo di Transizione degli Stati o State Transition Graph (STG)

• Sintesi e ottimizzazione:• Raffinamento del modello

• Validazione• Verifica di correttezza e completezza del modello originale.

• Verifica della consistenza dei modelli sviluppati durante le successive fasi di progetto.

3/7/01 Cristina Silvano - Università degli Studi di Milano 24

Criteri di ottimizzazione dei circuiti VLSI

• Prestazioni• Ciclo di clock

• Ritardo o Latenza

• Throughput (per applicazioni pipeline)

• Area

• Consumo di potenza

• Testabilità

• Affidabilità

Page 13: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 25

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 il ritardo sotto vincoli di consumo di potenza

3/7/01 Cristina Silvano - Università degli Studi di Milano 26

Metodologia di progetto top-down

• La progettazione di un sistema complesso può essere realizzata adottando una metodologia di progetto top-down.

• La metodologia top-down viene realizzata attraverso un metodo di progetto incrementale.

• Un flusso di operazioni viene ripetutamente applicato ad un progetto fino a raggiungere il più basso livello di astrazione

Modello meno Dettagliato

Modello piu’Dettagliato

Raffinamento del Modello

Page 14: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 27

Metodologia di progetto top-down

• La metodologia di progetto top-down può essere applicata come un ciclo di fasi di simulazione e sintesi a partire da una descrizione comportamentale del sistema.

• Validazione della correttezza e completezza del modello iniziale ad alto livello.

• Una volta simulata per verificarne la correttezza, questa descrizione subisce un processo di raffinamento del modello durante il qualesono aggiunti maggiori dettagli .

• Validazione delle consistenza dei modelli sviluppati durante le successive fasi di progetto.

3/7/01 Cristina Silvano - Università degli Studi di Milano 28

Flusso di Progetto di un circuito VLSI

SimulazioneModello Comp.

Modello RT

Sintesi Comp.

Simulazione Stimoli

Sintesi Logica

Requisiti di Progetto

Modello Logico Simulazione

SpecificaFunzionale

Page 15: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 29

Flusso di Progetto di un circuito VLSI (cont.)

SimulazioneModello Circ.

Modello Fisicoo Layout

Sintesi Fisica

Simulazione Stimoli

ASIC o FPGA

SintesiCircuitale

3/7/01 Cristina Silvano - Università degli Studi di Milano 30

Vantaggi della progettazione ad alto livello

• Possibilità di gestire progetti più complessi.

• Riduzione dei tempi di progettazione.

• Riduzione degli errori (correttezza per costruzione).

• Possibilità di analisi trade-off costi/prestazioni.

• Ampliamento del numero di utenti alla progettazione.

• Possibilità di documentare il processo.

Page 16: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 31

Linguaggi per creare modelli di progetti HW

• Hardware Description Languages (HDLs)• Verilog

• VHDL: VHSIC Hardware Description Language

- VHSIC (Very High Speed Integrated Circuit)

3/7/01 Cristina Silvano - Università degli Studi di Milano 32

VHDL

• Nato negli anni ‘80 come progetto del U.S. Department of Defense.

• Version 7.2: prima versione pubblica del linguaggio disponibile nel 1985.

• IEEE Std 1076-1987: primo standard completo del linguaggio.

• IEEE Std 1076-1993: versione aggiornata del linguaggio rilasciata nel 1994.

• IEEE Std 1164: definisce un package standard per il tipo di dato MVL9 (Multi Valued Logic, 9 valori).

Page 17: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 33

Il processo di modellizzazione in VHDL

• Lo sviluppo di un modello VHDL a partire dalla specifica concettualeavviene attraverso un processo di raffinamento basato sulla ripetizione delle fasi di compilazione, analisi e simulazione.

Compilazione

Simulazione

AnalisiAnalisi

• La specifica concettuale consiste in una descrizione:• dell’INTERFACCIA del componente;

• della FUNZIONALITA’ del componente.

3/7/01 Cristina Silvano - Università degli Studi di Milano 34

Struttura di un modello VHDL

INTERFACCIA

Design Entity

Entity Declaration

Architecture Body

FUNZIONALITA’

Page 18: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 35

Design Entity

• L’unità di base di un modello VHDL consiste nella Design Entity, che può rappresentare un intero sistema, una PCB (Printed CircuitBoard), un circuito integrato oppure una porta logica elementare.

• La Entity Declaration definisce l’interfaccia del modello.

• L’Architecture Body definisce la funzionalità del modello.

• All’interno di un modello VHDL, ad una stessa Entity Declarationpossono corrispondere diverse Architecture Body.

• Un modello VHDL può essere creato a diversi livelli di astrazione (behavioral, dataflow, structural) secondo un processo di raffinamento del modello iniziale.

3/7/01 Cristina Silvano - Università degli Studi di Milano 36

Modello VHDL

• DESCRIZIONE COMPORTAMENTALE o BEHAVIORAL supporta descrizioni algoritmiche;

• DESCRIZIONE FLUSSO DATI o DATAFLOW supporta descrizioni a livello di trasferimento del flusso dati tra registri.

• DESCRIZIONE STRUTTURALE o STRUCTURAL supporta descrizioni di strutture composte dall’interconnessione di componenti di livello gerarchico inferiore.

• DESCRIZIONE MISTA

Page 19: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 37

Struttura di un modello VHDL

• Ad una singola interfaccia di un modello VHDL possono corrispondere diverse Architecture Body ciascuna descritta ad un diverso livello di astrazione (comportamentale, dataflow, strutturale o mista)

• Ogni diversa architettura rappresenta una diversa realizzazione della stessa funzionalità del modello per mettere in luce un diverso aspetto progettuale cioè fornisce una diversa implementazione di una stessa funzionalità.

3/7/01 Cristina Silvano - Università degli Studi di Milano 38

Struttura di un modello VHDL

Design Entity

Entity Declaration

Arch. A Arch. B

Page 20: Introduzione al Flusso di Progetto di Circuiti e Sistemi ... · Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano ... • Elettronica di consumo •

3/7/01 Cristina Silvano - Università degli Studi di Milano 39

Concetti base del VHDL

• Supporta descrizione della funzionalità del modello a diversi livelli di astrazione.

• Concorrenza: le strutture hardware sono intrinsecamente concorrenti e composte dall’interconnessione di componenti elementari.

• Il concetto di concorrenza supportato sia dai modelli strutturali sia dal concetto di processi multipli concorrenti tra loro.

• Supporta istruzioni sequenziali all’interno di un processo.

• Gerarchia: data la complessità progettuale occorre organizzare il progetto su diversi livelli gerarchici, che possono essere descritti a diversi livelli di astrazione.

• Temporizzazioni: necessità di modellizzare l’andamento temporale dei segnali attraverso la descrizione di forme d’onda.