Improvements for FPGA prototyping on Arty Board in Chipyard
This project will entail:
- Creating Support for utility of the Freedom E SDK project inside of the Chipyard FPGA Prototyping Framework
- Improvement of the Arty FPGA prototyping experience
Steps Taken
- Added multilib support to RISCV-GNU-Toolchain in Chipyard by appending "--enable-multilib" to the arguments passed during toolchain creation (in /scripts/build-toolchains.sh)
- update_build_toolchains.sh
This script is intended to be used before running the 'build_toolchains.sh script located under {chipyard_dir}/scripts. This will enable multilib support required to compile c programs for RV32 (used by the Chipyard Arty FPGA project. This script also adds several variables used by the Freedom E SDK and other scripts to the environment variables file for Chipyard.
Assumes that Freedom E SDK is in the same parent directory as Chipyard
- genrate_bsp.sh
This script is used to generate custom board support files for the Freedom E SDK for the Chipyard Arty FPGA default project. After running the update_build_toolchains.sh script and re-executing build_toolchains.sh, the environment variables should be updated to include the Freedom E SDK install location.
Running this script will create a new folder under the 'bsp' in the Freedom E SDK named 'chipyard_arty"
- update_build_toolchains.sh
./update_build_toolchains.sh <Path to Freedom E SDK>
- generate_bsp.sh
./generate_bsp.sh