EMBEDDED SYSTEMS Canale unico

Docente coordinatore e verbalizzante: FRANCESCO MENICHELLI

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