PULP Training


Dear friends of PULP,


Welcome to the PULP Training page! You can now find all the important slides and videos recorded during our training sessions here and in this way get acquainted with the many faces of the PULP Platform.

QuantLab: Mixed-Precision Quantization-Aware Training for PULP QNNs

Duration: 04:13:18

June 2021

In this tutorial, Matteo presents QuantLab, a PyTorch-based software tool designed to train quantized neural networks, optimize them, and prepare them for deployment on PULP platforms.




Slides: QuantLab: Mixed-Precision Quantization-Aware Training for PULP QNNs



Matteo Spallanzani

PULP SDK / GCC Compilation Toolchain

Duration: 02:05:37

March 2021

In this tutorial, Nazareno introduces the Software Development Kit for PULP, while Giuseppe elaborates on the GCC Compilation Toolchain.


Part 1 Part 2
Structure (RTOS, ARCHI, HAL, tools) Introduction to the GCC compilation toolchain
How to include a new target (makefile) Toolchain components
How to customize a target (number of cores, memory) Downloading and building the toolchain
PMSIS: common structure for device (cluster/ram): device struct, config, open, task, close RISC-V / PULP specific options
- Performance-driven optimization techniques





Slides Part 1: Nazareno Bruschi PULP SDK and PMSIS

Slides Part 2: Giuseppe Tagliavini Mastering the PULP GCC toolchain



Nazareno Bruschi

Giuseppe Tagliavini

A Deep Dive into HW/SW Development with PULP

Duration: 05:08:07 + 03:08:10

January 2021

Robert and Manuel instruct you on HW/SW Development with PULP in the course of a two-day training.


Day 1 Day 2
PULPissimo SoC Architecture     FPGA Port
Software Environment PULP IP Landscape
RTL Development Flow Hands-on Full-stack IP Integration Exercise   
RTL Simulation PULPIssimo Memory Layout Modification


Training Day 1




Training Day 2



Slides: A Deep Dive into HW/SW Development with PULP



Robert Balas

Manuel Eggimann

GVSoC / Dory Tutorial

Duration: 01:54:07

March 2021

Listen to our instructors Nazareno and Alessio talking about the PULP Virtual Platform and DORY our automated tool to deploy DNNs on memory constrained devices.




VM Image with all tools ready: Download Caution 8.5 GB

Slides Part 1: Nazareno Bruschi PULP Simulator and SDK

Slides Part 2: Alessio Burello Deployment of DNN on Extreme Edge Devices (1)



Nazareno Bruschi

Alessio Burello

Understanding and working with PULP

Duration: 03:24:56

June 2019

In this tutorial, Davide explains the architecture of PULPissimo, the differences among individual PULP cores, Xpulp extensions and much more.




Slides: Understanding and working with PULP



Davide Schiavone