34876 - ELETTRONICA DEI SISTEMI DIGITALI M

Scheda insegnamento

  • Docente Eleonora Franchi Scarselli

  • Crediti formativi 12

  • SSD ING-INF/01

  • Modalità didattica Convenzionale - Lezioni in presenza

  • Lingua di insegnamento Italiano

SDGs

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.

Istruzione di qualità

Anno Accademico 2019/2020

Conoscenze e abilità da conseguire

Il corso si pone l'obiettivo di illustrare le metodologie di progetto dei circuiti integrati digitali a larga scala 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. A tal fine, una parte importante del corso è dedicata a esercitazioni guidate volte a permettere allo studente di affrontare e risolvere alcuni problemi di progetto e caratterizzazione di moduli digitali di complessità crescente utilizzando programmi di progettazione assistita.

Programma/Contenuti

Il corso si divide in lezioni frontali in aula che seguono un approccio bottom-up, dal livello di astrazione più basso a quello più alto del sistema digitale, e da esercitazioni guidate volte a valutare i) i passi del flusso di progetto di un sistema digitale a partire dalla sua descrizione in un linguaggio HDL e ii) il progetto e la caratterizzazione a livello circuitale di una libreria di celle e macrocelle digitali.

Nelle lezioni frontali verranno affrontati i seguenti temi:

  • Livelli di astrazione di un sistema digitale. Requisiti funzionali e di prestazioni. Metodologie di progetto di sistemi digitali (full-custom, semi-custom ASIC e FPGA). Metriche per la valutazione delle loro prestazioni.
  • Richiamo sulle caratteristiche dei transistori MOS.
  • Celle combinatorie in logica statica CMOS pienamente complementare. Modelli per valutarne le prestazioni in flussi di progetto a standard-cell. Modelli di ritardo e consumo. Criteri di dimensionamento per la realizzazione di reti logiche complesse.
  • Analisi delle caratteristiche di altre famiglie logiche statiche e dinamiche, studio di alcune applicazioni significative.
  • Latch e registri CMOS statici e loro caratterizzazione per flussi di progetto a standard cell.
  • Sistemi digitali sincroni. Equazioni di vincolo sui tempi di setup e hold. Distribuzione del clock, effetto di skew e jitter.
  • Linee di interconnessione: effetti C, RC e RCL ad esse associati e modelli utilizzati in flussi di progetto di sistemi digitali. Progetto di buffer e ripetitori.
  • Micro-architetture circuitali delle principali funzioni aritmetiche (sommatori, moltiplicatori) e tecniche di accelerazione di tali funzioni.
  • Memorie a semiconduttori: memorie volatili statiche e dinamiche ad accesso casuale; memorie non volatili: EPROM, EEPROM, Flash, PCM
  • Architetture circuitali dei moduli che compongono un microprocessore: registri, ALU, shifter, tag memory, cache delle istruzioni, etc.

Le esercitazioni prevedono due attività principali:

  • Progetto diun modulo digitale: passi del flusso di front-end:
    • Linguaggio VHDL. Codice RTL sintetizzabile e non per scrittura del testbench. Simulazione funzionale. Sintesi logica: definizione dei vincoli e analisi dei risultati di prestazioni. Confronto delle prestazioni al variare delle scelte a livello RTL e dei criteri di ottimizzazioni definiti nella sintesi. Dimostrazione dei passi del flusso di back.end (place&route)
  • Progetto e caratterizzazione di una libreria di celle e macrocelle
    • Caratterizzazione dei dispositivi attivi nel processo PDK 45 nm attraverso simulazioni circuitali. Caratteristiche I/V al variare del fattore di dimensionamento e delle opzioni di processo (tensione di soglia).
    • Progetto e caratterizzazione di porte logiche combinatorie FCMOS utilizzando simulazioni circuitali.Analisi del layout delle celle.
    • Progetto e caratterizzazione di registri statici attraverso simulazioni circuitali.
    • Progetto e caratterizzazione di una macrocella aritmetica (sommatori, moltiplicatori). Analisi delle scelte a livello di micro-architettura, topologia circuitale e dimensionamento. Scelta del setup di simulazione.

Testi/Bibliografia

Tutti e soli gli argomenti del corso sono trattati in aula o nel corso delle esercitazioni.

Il materiale didattico è distribuito sulla piattaforma IoL e aggiornato annualmente.

Riferimento bibliografico di supporto:

J. M. Rabaey, A. Chandrakasan, B. Nikolic: Digital Integrated Circuits - A Design Perspective, Second Edition, Prentice Hall International, 2003 (http://bwrc.eecs.berkeley.edu/Classes/IcBook/index.html ).

Approfindimenti: articoli su piattaforma IEEE Xplore

Metodi didattici

Il corso prevede lezioni frontali e esercitazioni in laboratorio; le attività in laboratorio hanno l’obiettivo di permettere allo studente di verificare tramite semplici esempi la comprensione degli effetti che scelte ai diversi livelli di astrazione, discusse a teoria, hanno sulle prestazioni di un sistema digitale.

Le esercitazioni si svolgeranno nel Lab7 e prevedono l’utilizzo di programmi di progettazione assistita a diversi livelli di astrazione (RTL e circuitale) per la progettazione di Circuiti Integrati (Cadence, Mentor e Synopsys) . L’uso di questi programmi è vincolato da licenze (fornite dal consorzio EUROPRACTICE) ed è possibile solo in laboratorio.
L'attività di progetto e caratterizzazione in laboratorio sarà svolta da gruppi formati da due studenti. Per accedere al laboratorio è necessario chiedere username e password al responsabile del LAB7 specificando il nome del corso.

Modalità di verifica dell'apprendimento

L’esame sarà svolto in due fasi:

  • una prova scritta e/o orale sui contenuti di teoria durante la quale verranno anche verificati i risultati di tutte le esercitazioni svolte durante il corso.
  • presentazione diuna relazione scritta finale e successiva discussione orale in laboratorio sui risultati dell'attività di progetto e caratterizzazione di una macrocella digitale funzionalmente completa.

Il superamento della prima fase è propedeutico alla seconda.

Strumenti a supporto della didattica

Tutti e soli gli argomenti del corso sono trattati in aula o nel corso delle esercitazioni.

Il materiale didattico è distribuito sulla piattaforma IoL e aggiornato durante il corso. Il materiale è costituito da lucidi, esercizi, esempi di codici VHDL e comprende guide semplificate agli strumenti software utilizzati in laboratorio.

Le esercitazioni in lab7 sono parte integrante del corso e permettono un continuo confronto con il docente.

Orario di ricevimento

Consulta il sito web di Eleonora Franchi Scarselli