Install the RISC-V toolchain and oss-cad-suite tools.
The script below is for linux installation only.
# For RISC-V
sudo apt-get install -y gcc autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev python3
mkdir risc-v && cd risc-v
git clone https://github.com/riscv/riscv-gnu-toolchain && cd riscv-gnu-toolchain/
sudo mkdir /opt/riscv
./configure --prefix=/opt/riscv --enable-multilib
sudo make -j$(nproc) linux
echo 'export PATH=$PATH:/opt/riscv/bin' >> ~/.bashrc
source ~/.bashrc
# For OSS-CAD-SUITE
curl -L https://github.com/YosysHQ/oss-cad-suite-build/releases/download/2023-10-01/oss-cad-suite-linux-riscv64-20231001.tgz > oss-cad-suite
sudo tar xzf oss-cad-suite-linux-riscv64-20231001.tgz -C /opt
rm -rf oss-cad-suite
echo 'export PATH=$PATH:/opt/oss-cad-suite/bin' >> ~/.bashrc
source ~/.bashrc
Plug the USB1 of ULX3S Board to your PC, then run:
git clone --recursive https://github.com/fedy0/neo.git && cd neo
make flash
This will perform the systhesis, place and route, constrain mapping, bitstream generation and upload
To test, run the following command. Press any key to invoke the bootloader menu, then select 'u' to upload and 'e' to execute
cd ./neorv32/sw/example/hello_world
make exe
sudo sh ../../image_gen/uart_upload.sh /dev/ttyUSB0 neorv32_exe.bin
sudo apt install gtkterm
gtkterm --port /dev/ttyUSB0 --speed 19200