84419 - Lab of Digital Electronics M

Course Unit Page

Academic Year 2022/2023

Learning outcomes

Aim of this course is to enrich the practical experience of the students on advanced digital hardware design tools and methodologies. The students are expected to work on a practical project to deeper their knowledge in digital hardware design, integration of hardware modules into Systems on Chip, and prototyping of digital systems on FPGA devices. The course will also cover aspects related to interactions between software and hardware components in Systems on Chip.

Course contents

Part 1: Basics of Hardware Design – fundamental concepts

  • Hardware Description Languages (HDL) concept and its usage to implement combinational and sequential logic, and Finite State Machines.
  • Digital blocks simulation and verification with Mentor Modelsim.
Part 2: Embedded Systems On Chip (SoC) Design – software
  • Mirocontroller architecture based on a synthesizable open-source RISC-V ISA core
  • Programming microcontrollers
  • Micrcontroller peripherals
Part 3: Embedded Systems On Chip (SoC) Design – hardware
  • Partitioning of the SoC functionalities between hardware and software
  • Extending SoCs with custom memory mapped peripherals


  • C Programming
  • Digital electronics
  • Basics of computer architecture
  • Basics of linux operating system


Logic Design and Verification Using SystemVerilog (Revised): https://www.amazon.com/Logic-Design-Verification-SystemVerilog-Revised/dp/1523364025

Teaching methods

Laboratory exercises

Assessment methods

Laboratory exercises plus oral presentation

Teaching tools

Links to further information


Office hours

See the website of Davide Rossi