Skip to content

Latest commit

 

History

History
46 lines (42 loc) · 1.77 KB

README.md

File metadata and controls

46 lines (42 loc) · 1.77 KB

neo

NEORV32 on ULX3S

Prerequisites

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

Build Design

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

Test

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

Build