Obiettivi formativi
1. Conoscenza e comprensione.
Il corso ‘Elettronica dei Sistemi Embedded’ (72h-9CFU) offre un’ampia conoscenza sul tema dei SE che rappresentano il settore applicativo più diffuso per i moderni dispositivi elettronici.
Durante il corso, se ne studieranno le principali caratteristiche, le architetture, i componenti HW più utilizzati.
In particolare si offriranno contenuti su:
- Contesto dei SE
- Suddivisione in sotto-sistemi di un SE
- Flusso di progettazione
- Partizionamento Hw/Sw, ovvero la ripartizione delle funzioni principali fra circuiti dedicati e firmware per microprocessore
- Conoscenza dei principali protocolli di comunicazione usati nei SE.
2. Capacità di applicare conoscenza e comprensione.
Scopo del corso è quello di fornire gli strumenti per la progettazione dei SE. Per questo motivo, ampio spazio verrà dedicato ad attività di progettazione.
Inoltre, parte fondamentale dell’esame finale di verifica consiste nel progetto di un SE e della sua implementazione mediante l’utilizzo di una scheda per prototipi basata su logica programmabile FPGA.
In particolare lo studente dovrà acquisire sono le seguenti capacità:
- definire le specifiche tecniche necessarie alla realizzazione di un progetto (segnali di I/O, elementi di elaborazione, partizionamento HW/SW)
- implementare in Verilog la parte circuitale necessaria allo sviluppo del progetto
- programmare in linguaggio C il firmware necessario allo svolgimento del progetto
- simulare, implementare e collaudare un sistema SE mediante l’utilizzo di schede elettronica basate su FPGA
3. Capacità trasversali.
Durante le attività di progettazione, gli studenti sono invitati a lavorare in piccoli gruppi.
Questo facilita lo sviluppo da parte degli studenti di competenze trasversali.
Essi devono imparare a confrontarsi, a risolvere problemi collaborando, ad aiutarsi reciprocamente nelle complesse attività di debug.
Inoltre devono cooperare per la scrittura della relazione descrittiva del progetto finale.
Prerequisiti
Contenuti dell'insegnamento
- Introduzione ai Sistemi Embedded (SE)
- Caratteristiche di un SE: vincoli di progetto, mercato e architettura
- Nozioni sulla progettazione dei SE: Partizionamento Hw/Sw, Co-Progettazione Hw/Sw, Flusso di progetto
- Tipici componenti elettronici usati nei SE: uP, uC, DSP, ASIC, FPGA
- Esempi di protocolli di comunicazione usati nei SE: RS232/RS485, SPI, I2C, JTAG, CANbus, Ethernet, TCP/IP
- Introduzione al Linguaggio di Descrizione Hardware Verilog: costrutti e circuiti di base, circuiti aritmetici, macchine a stati finiti.
- Introduzione alle logiche programmabili FPGA e SoC
- Introduzione al processore ARM
- Metodi di programmazione (in linguaggio C) orientata allo sviluppo di SE misti Hw/Sw
- Attività di progettazione: ideazione di un SE Hw e Hw/Sw mediante schede di prototipizzazione veloce.
Programma esteso
TEORIA (40h):
- Introduzione al corso, ai SE e alle attività di progettazione (2h)
- Principali componenti HW dei SE (2h)
- Il tema del partizionamento HW e SW (2h)
- Circuiti per I/O ed introduzione al JTAG (2h)
- Introduzione ai SoC e ai SoC BUS (2h)
- I protocolli di comunicazione SPI e I2C (2h)
- La porta seriale UART - protocolli RS232, RS422, RS485 (2h)
- I Bus di campo: il protocollo CANBus (2h)
- Introduzione alle rete e protocolli IP (2h)
- Introduzione alle FPGA e al Flusso di Progettazione Digitale (2h)
- La Logica Programmabile FPGA Cyclone5 di Altera: analisi delle caratteristiche (2h)
- Architettura mista FPGA-Micro (2h)
- Il linguaggio di descrizione Hardware Verilog (2h)
- Esempi di circuiti realizzati in Verilog: FFD, Registri, Contatori, SHR, FSM. (10h)
- Metodologia di programmazione orientate ai SE misti Hw/Sw (4h)
PROGETTAZIONE (32):
- Descrizione della scheda ALTERA DEMO DE1 SoC (2h)
- Il flusso di progetto di Quartus2 (2h)
- Progetto e implementazione di un Contatore-Esadecimale che visualizza l'uscita su un display a 7 segmenti (4h)
- Progetto e implementazione di una Interfaccia VGA (6h)
- Descrizione Verilog dei principali circuiti aritmetici (2h)
- Introduzione al processore ARM (2h)
- Esercitazioni basate su ARM (10h)
- Attività di progettazione relative allo sviluppo del progetto d’esame (14h)
PS: se a causa delle limitazioni imposte dal Covid fosse impossibile distribuire ed utilizzare la scheda ALTERA, saranno prese in considerazioni soluzioni alternative da valutare insieme agli studenti.
Bibliografia
- Designing Embedded Hardware, 2nd edition; John Catsoulis; O'Reilly Media
- Progetto di sistemi elettronici digitali basati su dispositivi FPGA; Ettore Napoli; Progetto Leonardo; Esculapio Bologna
- Embedded System Design: A Unified Hardware/Software Approach; Frank Vahid and Tony Givargis;
Metodi didattici
Il corso, svolto on-line in modalità sincrona (con possibilità di accedere alla registrazione della lezione per una settimana), è diviso in lezioni teoriche frontali e attività di progettazione.
Nelle lezioni si affronteranno i temi legati alla conoscenza teorica dei sistemi embedded.
Nelle attività di progettazione si svilupperanno conoscenze relative a:
- sviluppo di circuiti digitali dedicati descritti mediante linguaggio Verilog
- alla scrittura di codice firmware per microprocessore in linguaggio C
Modalità di lavoro:
- le attività di progettazione sono finalizzate alla realizzazione di un progetto pratico
- gli studenti possono lavorare al progetto assegnato in modo individuale o in piccoli gruppi
- ogni progetto deve essere descritto da una relazione scritta
Modalità verifica apprendimento
- Durante il corso saranno assegnate alcune esercitazioni da svolgere in ore di studio individuale.
- Al termine del corso si sosterrà una prova orala in cui verranno discussi e valutati in modo approfondito la conoscenza degli argomenti teorici studiati a lezione.
- L’esame sarà completato da un’attività di progetto e implementazione di un vero e proprio SE realizzato da solo o con un piccolo gruppo di lavoro. Il progetto sarà discusso con il docente a valle della presentazione di una relazione tecnica.
Il voto finale sarà dato da una valutazione ponderata di tutte le prove sopra-elencate.
Altre informazioni
Materiale didattico e ulteriori informazioni sono reperibili sul portale di ateneo dedicato alla didattica: ELLY
Obiettivi agenda 2030 per lo sviluppo sostenibile
- - -