Simple runtime for Pulp platforms
Find a file
Francesco Conti 7ea5a725e4 Quality-of-life changes
1) export also fast_preload bootmode (for EFCL summer school)
2) remove warnings due to non-whitespace characters in archi/utils.h
3) reset all registers in CV32E40X at boot (probably not needed, but
   good practice anyways)
2024-05-25 20:33:59 +02:00
bin Target LLVM instead of GCC 2024-05-19 16:23:42 +02:00
configs Quality-of-life changes 2024-05-25 20:33:59 +02:00
drivers Add new drivers for new gpio and io_mux 2022-12-08 18:08:21 +01:00
include Quality-of-life changes 2024-05-25 20:33:59 +02:00
install/rules Added symbolic link for pulp_rt.mk 2019-12-19 14:40:05 +01:00
kernel Quality-of-life changes 2024-05-25 20:33:59 +02:00
lib/libc/minimal tabs -> spaces 2024-05-19 23:35:56 +02:00
rules Convenience fixes 2024-05-19 23:39:57 +02:00
scripts Fix bwruntests yaml loader 2024-03-22 17:16:05 +01:00
README.md Added info about exmples 2020-01-14 17:19:46 +01:00

PULP runtime

About

This module is a simple runtime for the Pulp architecture.

Runtime build

You need to first install the Linux dependencies (see below).

Choose the configuration for which you want to compile the runtime, for example:

$ source configs/pulp.sh

Then you can get one of the pulp example, compile and run it.

Linux dependencies

Here are the required system dependencies for building the runtime and its dependencies.

Ubuntu 16.04

Starting from a fresh Ubuntu 16.04 distribution, here are the commands to be executed to get all required dependencies:

$ sudo apt install git python3-pip gawk texinfo libgmp-dev libmpfr-dev libmpc-dev
$ sudo pip3 install pyelftools

Dependencies

Build

Have a look at the dependencies documentation to see how to build them.

You can have a look here for the toolchain.

Setup

The toolchain must be built separately and the following environment variable should set:

$ export PATH=<path to the folder containing the bin folder of the toolchain>/bin:$PATH

RTL platforms should also be built separately (see the platform documentation for that) and the following environment variable must point to the folder where the platform was installed (this example is for pulpissimo):

$ export VSIM_PATH=<pulpissimo root folder>/sim

Examples

Some examples can be found here: git@github.com:pulp-platform/pulp-runtime-examples.git

Useful options

The vsim gui can be opened with this option:

$ make run gui=1

The uart can be selected for the printf with this option:

$ make all run io=uart

The baudrate can also be specified with:

$ make all run io=uart CONFIG_IO_UART_BAUDRATE=9600