This commit adds run_lupv.py, the script to run the LupVBoard, as well as a README that details how to set up your system in order to run the LupIO devices. Change-Id: Ibea098f0409819b4c79063ab0be01518c7c6a61f Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53046 Maintainer: Bobby Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
# README
|
|
|
|
This README details how to build a RISCV full system that utilizes the
|
|
lupIO devices. The LupIO devices were created by Professor Joël Porquet-Lupine,
|
|
and more information about the device can be found [here](
|
|
https://luplab.cs.ucdavis.edu/assets/lupio/wcae21-porquet-lupio-paper.pdf). The
|
|
specs for each individual device can be found [here](
|
|
https://gitlab.com/luplab/lupio/lupio-specs), and the Linux drivers for each of
|
|
these devices can be found [here](https://gitlab.com/luplab/lupio/linux).
|
|
|
|
To build the RISCV gem5 binary execute:
|
|
|
|
```sh
|
|
scons build/RISCV/gem5.opt
|
|
```
|
|
|
|
Then, to run the LupIO example execute:
|
|
|
|
|
|
``` bash
|
|
.build/RISCV/gem5.opt configs/example/lupv/run_lupv.py [cpu type] [num cpus]
|
|
```
|
|
|
|
Note: valid cpu types are `atomic` and `timing` for now.
|
|
|
|
For example:
|
|
|
|
```bash
|
|
gem5/build/RISCV/gem5.opt configs/example/lupv/run_lupv.py atomic 1
|
|
```
|
|
|
|
You can observe the stdout of the simulated system in `m5out/system.terminal`.
|
|
Then, you can open up a separate terminal and use m5term to connect to the
|
|
simulated console. The port number will be specified in the gem5 simulation
|
|
as `0: system.remote_gdb: listening for remote gdb on port <port>`
|
|
|
|
example:
|
|
|
|
```bash
|
|
m5term localhost 3456
|
|
```
|
|
|
|
This should allow you to run busybox, in which you can see the LupIO device at
|
|
work! |