commit | 2d626f6ddf974a1f79be9e75d8257f12c7481752 | [log] [tgz] |
---|---|---|
author | Michael Brooks <michaelbrooks@google.com> | Mon May 06 20:17:46 2024 +0000 |
committer | Michael Brooks <michaelbrooks@google.com> | Tue May 07 19:04:57 2024 +0000 |
tree | 49c03573f56a09f013284bd2abb90cbc2b77e3c5 | |
parent | be4ab9792ceddb48f6bcd49f10f795b50d00b6c5 [diff] |
Support running a different Kelvin benchmark binary Allow passing in of 'kelvin_benchmark_info' which is a dictionary that contains the needed info for the kelvin_binary (e.g srcs). This allows the benchmark to run a different Kelvin binary while still keeping the SEC and SMC ones the same. Tested: best_of_times, silence with ISS+FPGA Change-Id: Iabba3fd2e19524a66c3f530f095828e5201d0e9c
This project contains the BSP to build the SW artifact that can run on the Kelvin core, and integrated as part of the Shodan repository.
The project supports two build systems -- Bazel and CMake -- for OSS integration reasons. Bazel is used by TFLM flow, while CMake is the build system for IREE.
If you get this project from Project Shodan manifest, you are all set. If not, you need to have following projects as well to build the project successfully.
<dir>/cache/toolchain_kelvin
This project needs to be at <dir>/sw/kelvin
.
The project uses Bazel 5.1.1, to align with OpenTitan build system requirements.
bazel build //...
To run the unit tests (with the kelvin_sim ISS) Make sure the Environment variable $ROOTDIR
is set to the root directory of the local repo (or run source build/setup.sh
)
bazel test //...
TODO: Add CMake flow
The binaries can be simulated with the kelvin simulator, located at <dir>/sim/kelvin
.
sim_kelvin <elf location>
Load the generated .bin
binaries to the FPGA emulator/Renode simulator.