Learning objectives
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.
Prerequisites
- - -
Course unit content
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 Networks. 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)
Full programme
- - -
Bibliography
Refer to Virtuale (UNIBO)
Teaching methods
Frontal lectures for theory. In addition, there will be in-class hands-on practical lectures requiring a laptop.
Assessment methods and criteria
Written exam with optional oral discussion (or presentation of a project)
Other information
- - -