34876 - ELETTRONICA DEI SISTEMI DIGITALI M

Anno Accademico 2010/2011

  • Docente: Giorgio Baccarani
  • Crediti formativi: 6
  • SSD: ING-INF/01
  • Lingua di insegnamento: Italiano
  • Modalità didattica: Convenzionale - Lezioni in presenza
  • Campus: Bologna
  • Corso: Laurea Magistrale in Ingegneria elettronica (cod. 0934)

Conoscenze e abilità da conseguire

Illustrare le moderne metodologie di progetto dei circuiti integrati a larga scala (VLSI) in tecnologia CMOS, con riferimento sia alle architetture circuitali che realizzano le più importanti funzioni logiche e aritmetiche, sia alle tecniche di progettazione assistita ai vari livelli di astrazione. Integrare i contenuti di Elettronica dei Sistemi Digitali con il progetto di macrocelle funzionalmente complete, affrontato ai diversi livelli di astrazione di un sistema digitale. Le esercitazioni si svolgeranno nel Laboratorio LAB1 su WS SUN con software avanzato per la progettazione di Circuiti Integrati (OPUS Cadence, SYNOPYS). La tecnologia di riferimento è CMOS di ultima generazione accessibile tramite il progetto europeo EUROPRACTICE.

Contenuti

Il corso tratta le moderne metodologie di progetto dei circuiti integrati a larga scala (VLSI) in tecnologia CMOS, con riferimento sia alle architetture circuitali che realizzano le più importanti funzioni logiche e aritmetiche, sia alle tecniche di progettazione assistita ai vari livelli di astrazione. Il corso prevede un ciclo di esercitazioni di laboratorio in un'aula appositamente attrezzata con un congruo numero di stazioni SUN e con software avanzato (sistema OPUS) per la progettazione VLSI. Gli studenti avranno l'opportunità di sviluppare il progetto di una semplice cella circuitale di tipo combinatorio e di una di tipo sequenziale in tecnologia “sea of gates”. Il corso è integrato dall'insegnamento di “Laboratorio di Elettronica dei Sistemi Digitali”, dove gli studenti potranno sviluppare un progetto di una macrocella funzionalmente completa di assegnate specifiche.

Tendenze evolutive della Microelettronica. Il mercato mondiale dell'elettronica e dei componenti elettronici. Evoluzione della microelettronica verso livelli crescenti di integra-zione. Legge di Moore. Miniaturizzazione dei componenti elettronici elementari. Requisiti funzionali e prestazioni dei dispositivi elettronici. Contrazione delle geometrie: regole di scaling a tensione e campo costanti. Teoria generalizzata delle regole di scaling. Limiti fisici al processo di riduzione delle dimensioni dei componenti. Illustrazione della “International Technology Roadmap of Semiconductors” (ITRS). Problemi insoluti e problematiche di ricerca e sviluppo industriale. Problematiche di progetto nella microelettronica. Metodologie progettuali semicustom: FPGA, GA, SOG, SC. Metodologie progettuali full custom: progetto basato su macrocelle. Implicazioni economico-finanziarie e industriali della legge di Moore.

Celle digitali in logica statica CMOS. Richiami sulle proprietà dei circuiti digitali e loro parametri rappresentativi. Brevi cenni di tecnologia planare del silicio, con particolare riferimento ai processi CMOS standard ed SOI. Regole di layout. Richiami sul ritardo di propagazione dell'invertitore statico e delle porte logiche CMOS. Considerazioni energetiche. Relazioni ritardo-consumo. Regole di composizione delle logiche statiche CMOS per la realizzazione di funzioni logiche complesse. Logiche pseudo n-MOS. Logiche a pass transistor. Logiche statiche CVSL. Logiche SCL. Memorizzazione dell'informazione in forma statica. Latch e registri statici CMOS: registri SR, JK e D con e senza controllo asincrono. Registri D a interruttori e invertitori, registri statici C2MOS, registri concatenati (chain latch).  

Celle digitali in logica dinamica CMOS. Richiami sulle logiche CMOS dinamiche e sulle loro modalità di connessione in cascata. Logiche Domino e Zipper. Il problema della condivisione di carica e sue possibili soluzioni. Logiche C2MOS. Logiche CVSL dinamiche. Connessione in pipeline di logiche dinamiche. Timing a quattro fasi e a due fasi non sovrapposte. Timing a due fasi: logiche NORA. Timing a una sola fase. Latch n-C2MOS e p-C2MOS. Variante “split output” dei latch n-C2MOS e p-C2MOS. Registri dinamici a una sola fase e divisori di frequenza. Latch TSPC-1 e TSPC-2. Applicazioni delle logiche a una sola fase. Il rumore nelle logiche dinamiche. Caratterizzazione dei margini di immunità ai disturbi nelle logiche dinamiche.

Aritmetica computazionale . Sommatore completo in logica CMOS statica e dinamica. Sommatore completo a “pass transistors”. Sommatori seriali in logica statica e dinamica. Architettura dei sommatori paralleli di vario tipo (ripple carry, carry look-ahead, carry select, carry save, carry skip). Analisi delle prestazioni. Moltiplicatore seriale. Moltiplicatore parallelo a matrice. Moltiplicatori paralleli ad albero di Wallace e ad albero binario. Moltiplicatori iterativi. Divisore seriale. Divisore a matrice con e senza ripristino. Divisione iterativa: metodi di Newton e di Goldschmidt. Cenni sul calcolo di funzioni irrazionali e trascendenti: radice quadrata, logaritmo, esponenziale. Standard IEEE-754 sulla rappresenta-zione dei numeri in virgola mobile. Formati dei numeri in virgola mobile in precisione singola, singola estesa, doppia e doppia estesa. Numeri speciali, numeri denormalizzati, non-numeri. Arrotondamento nello standard IEEE-754. Algoritmi di somma, moltiplicazione e divisione in virgola mobile. Condizioni di overflow e di underflow.

Architettura dei microprocessori. Schema a blocchi di un elaboratore digitale su singolo chip a set esteso di istruzioni. Unità di elaborazione e unità di controllo. Struttura dell'unità di elaborazione e descrizione dei blocchi funzionali che la compongono: unità logico-aritmetica (ALU), shifter, registri, porte di ingresso/uscita e bus. Unità di controllo e descrizione dei blocchi che la compongono: registro delle istruzioni, program counter, sequenziatore, microcodice, decodificatore. Architetture a set ridotto di istruzioni (RISC) e loro caratteri-stiche distintive: standardizzazione delle istruzioni, elaborazione in pipeline, tecniche per la rimozione degli interlocks, memoria cache a bordo del processore. Descrizione dell'archi-tettura e dei blocchi funzionali di un tipico microprocessore RISC: il MIPS-X. Formato delle istruzioni. Pipeline del MIPS e sue dipendenze. Registri di bypass. Gestione del coprocessore matematico. Cache delle istruzioni. Controllore di cache: la tag memory e la memoria dei bit di validità. Tecniche di self-timing. Il controllo del processore MIPS: gestione unificata delle eccezioni e dei salti condizionati. Gestione delle occorrenze di cache miss. Architetture superscalari RISC.

Testi/Bibliografia

J. M. Rabaey, A. Chandrakasan, B. Nikolic:  Digital Integrated Circuits - A Design Perspective, Second Edition, Prentice Hall International, 2003.

J. Hennessy, D. Patterson: Computer Architecture. A Quantitative Approach, Morgan Kaufmann Publishers, 1990.

Metodi didattici

Tutti e soli gli argomenti del corso sono trattati in aula. Il corso è inoltre integrato da un ciclo di esercitazioni in laboratorio all'atto delle quali lo studente dovrà progettare e caratterizzare un modulo circuitale di media complessità, utilizzando risultati intermedi di caratterizzazione di porte logiche elementari combinatorie e sequanziali. A tal fine lo studente avrà a disposizione i più moderni strumenti di CAD progettuale (Sistema OPUS di Cadence, integrato con strumenti di sintesi logica Synopsys).  

Modalità di verifica e valutazione dell'apprendimento

La prova di esame si svolgerà nel modo seguente:

1) Colloquio orale sui contenuti del corso;

2) Discussione dell'attività di laboratorio.

Il superamento della fase 1) è propedeutico alla fase 2). 

Strumenti a supporto della didattica

Il materiale didattico può essere reperito nel sito web: http://didattica.arces.unibo.it/

Link ad altre eventuali informazioni

http://didattica.arces.unibo.it/user/view.php?id=4&course=1

Orario di ricevimento

Consulta il sito web di Giorgio Baccarani