85730 - Architectures and Firmware M

Academic Year 2025/2026

  • Docente: Luca Benini
  • Credits: 6
  • SSD: ING-INF/01
  • Language: English

Learning outcomes

The main objective of the class is to give a practical knowledge of hardware-software platforms and a clear understanding of the design tradeoffs in energy-efficient embedded systems. The class is divided in three blocks of lectures: (I) system-on-chip hardware design - fundamental concepts, (II) microcontroller systems design-hardware and software, (III) Parallel software and programming for advanced embedded systems.

Course contents

1. Introduction to Hardware/Software design and System-on-Chip Architectures.

2. Microcontroller systems design – Hardware and Software

Microcontroller architecture based on the ARM Cortex M family and RISC-V. Microcontroller peripherals. Microcontroller programming for maximum Energy efficiency
Analog and Digital sensor interfaces, MEMS sensors – Smart sensors – Wireless sensor interfacs. System power management

3. Parallel Architecture and Parallel programming for advanced embedded systems

Multicore architectures and their use in energy efficient embedded Systems with examples from consumer and industrial market segments.
Programming shared memory multicore systems using the OpenMP programming model – with practical examples based on open-source multicore RISC-V system (PULP platform)

Readings/Bibliography

  1. Computer Architecture, A Quantitative Approach By John L. Hennessy, David A. Patterson and Christos   Kozyraki Edition 7 (or 6)
  2. Notes and online documentation shared during lectures

Teaching methods

Teaching in class  + lab exercises

Assessment methods

compulsory written exam  ( and optional oral exam)

Teaching tools

Online material shared via Virtuale

Office hours

See the website of Luca Benini

SDGs

Decent work and economic growth Industry, innovation and infrastructure

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.