Obiettivi formativi
Il corso presenta le tecniche più innovative nel campo della
progettazione automatica di sistemi digitali. I concetti di base
della progettazione di dispositivi digitali presentati nel corso di
Architettura degli Elaboratori e, in parte, nel corso di Sistemi di
Elaborazione dell'Informazione, vengono rapportati in questo corso
al mondo reale della progettazione digitale Il flusso di
progettazione proposto si basa sull'utilizzo di linguaggi per
specifica dello hardware che permettono di effettuare verifica
formale delle specifiche, sintesi automatica e gestione delle
problematiche relative all'affidabilità. Di ogni tecnica
presentata vengono descritti i fondamenti teorici e le applicazioni
pratiche che vengono esemplificate con l'utilizzo dei più
moderni strumenti di CAD.
Attività formative
Il corso viene svolto in 40 ore di lezione e 14 ore di laboratorio.
Le attività pratiche verranno svolte utilizzando le
attrezzature hardware e software presenti nel laboratorio EDA
(Electronic Design Automation) del Dipartimento. Durante il corso
saranno effettuate presentazioni da parte di aziende del settore
della progettazione di sistemi embedded.
Programma del corso
- I linguaggi di descrizione dell'hardware:
- Sintassi e semantica del VHDL per la simulazione
- Simulazione integrata VHDL e C
- Sintesi automatica di dispositivi digitali:
- Sintesi dal livello strutturale
- VHDL per la sintesi
- Sintesi comportamentale
- VHDL e SystemC
- FPGA
- Sistemi embedded:
- Hw/Sw Codesign
- I sistemi real time
- La progettazione basata su Core
- L'affidabilità:
- Difetti / guasti / errori
- Generazione del collaudo
- Sintesi per la collaudabilità
- Tolleranza ai guasti
- Verifica formale:
- Diagrammi di decisione binaria (BDD)
- Equivalence checking
- Property checking
- Esperienze Industriali:
- il caso STMicroelectronics
- il caso Telecom Italia Lab.
- Laboratorio:
- simulazione VHDL e C
- modellazione di FSM e FSMD con Renoire
- sintesi automatica con Leonardo
- sintesi automatica con Xilinx SU FPGA
- la modellazione e simulazione in SystemC
- l'aumento della collaudabilità con dftadvisor
- la generazione del test con flextest
- verifica formale con Cademce SMV