EMBEDDED SYSTEMS Canale unico
Docente coordinatore e verbalizzante: FRANCESCO MENICHELLI
Docenti
Obiettivi formativi
L' obiettivo del corso è quello di sviluppare negli studenti conoscenza e capacità di comprensione nell'ambito della progettazione dei circuiti digitali per sistemi embedded, nonché la capacità di giudizio nella derivazione delle soluzioni progettuali dalle specifiche tecniche, selezionando le architetture più adeguate alle diverse applicazioni.
GENERALI
Il modulo fornisce: le basi della progettazione dei circuiti digitali per sistemi embedded, la capacità di giudizio nella derivazione delle soluzioni progettuali dalle specifiche tecniche, selezionando le architetture più adeguate alle diverse applicazioni.
SPECIFICI
• Conoscenza e capacità di comprensione: conoscere le architetture per sistemi embedded nelle loro diverse forme e caratteristiche, conoscere le architetture delle CPU a 8, 16 e 32 bit, le caratteristiche di un Instruction Set Architecture, le caratteristiche tipiche delle unità esterne: memorie, timer, interrupt controller, unità di comunicazione. Toolchain di compilazione su sistemi embedded, linguaggi di alto livello e assembly, analisi del codice prodotto e debug.
• Capacità di applicare conoscenza e comprensione: applicare metodologie di progettazione di sistemi embedded, capacità di scrivere codice caratteristico dei sistemi embedded (es. accesso diretto all'hardware, routine di interrupt).
• Capacità critiche e di giudizio: Capacità di scegliere le soluzioni e le architetture di microcontrollori più adatte al contesto del progetto, distinguendo le prestazioni/caratteristiche delle diverse CPU e delle unità esterne presenti nell'architettura.
• Abilità comunicative: saper descrivere le soluzioni scelte per risolvere il problema progettuale: caratteristiche dell'Instruction Set Architecture, livello di programmazione necessario (linguaggio C, assembly), prestazioni attese e descrizione dell'organizzazione del progetto software.
• Capacità di proseguire lo studio in modo autonomo nel corso della vita: capacità di proseguire gli studi successivi approfondendo le tematiche sulle architetture hardware/software più avanzate, ad esempio sistemi multicore o sistemi basati su microkernel.
Risultati di apprendimento attesi
The module provides: the basics of the design of digital circuits for embedded systems, the ability to make decisions in the derivation of design solutions from technical specifications, selecting the most suitable architectures for different applications.
Prerequisiti
Digital electronic circuits and systems, C language programming.
Programma dell’insegnamento
Introduction (4 hours)
- Embedded systems definition and application domains
- Embedded systems components
Hardware units (28 hours)
- Instruction Set Architecture Design
- The ARM Architecture and ISA
- Memory and memory map, bus, bus hierarchy
- GPIO Devices
- Timers, Capture/Compare/PWM, clock generation in microcontrollers, watchdogs
- Interrupts, interrupt controller, vector table
- Communication devices, RS232, SPI, I2C, CAN
- Acquisition devices, ADC, DAC
Software and toolchain (16 hours)
- Embedded systems toolchain, compiler, assembler, linker
- Interaction between C and assembly code
- Embedded systems software structure, code and data
- Debug, verification, executable analysis
Testi di riferimento
Course slides and additional material available at https://sites.google.com/site/embeddedsystemssapienza/
Modalità di svolgimento
Frontal lectures in classroom
Frequenza
Non-mandatory attendance
Modalità di esame
Written open questions on concepts exposed during the course
Esempi di domande
Open questions on the topics of the course program
- Anno accademico2024/2025
- Corso di studio a cui afferisce l’insegnamentoIngegneria Elettronica - Electronics Engineering
- Codice insegnamento1038139
- CurriculumIngegneria Elettronica (percorso valido anche ai fini del conseguimento del doppio titolo italo-statunitense o italo-francese)
- Anno e semestre2º anno - 2º semestre
- TipologiaAttività formative affini ed integrative
- AmbitoAttività formative affini o integrative
- SSDING-INF/01
- Presenza obbligatoriaNo
- Linguaeng
- CFU6 CFU
- Durata complessiva60 ore
- Distribuzione delle ore36 classroom hours, 24 training hours