diff --git a/README.md b/README.md index 3ee11d3b..29f993d6 100644 --- a/README.md +++ b/README.md @@ -6,13 +6,15 @@ Vortex currently supported RISC-V RV32I ISA /docs contains documentation. -/runtime contains the runtime software support for Vortex. +/hw constains hardware sources. -/emulator contains a software emulator for Vortex. +/driver contains the driver software. + +/runtime contains the kernel runtime software. /SimX contains a cycle-approximate simulator for Vortex. -/rtl constains Vortex processor hardware description. +/evaluation contains the synthesis/runtime reports. Basic Instructions to run OpenCL Benchmarks on Vortex ----------------------------------------------------- @@ -24,6 +26,8 @@ Install development tools Install gnu-riscv-tools + $ export RISC_GNU_TOOLS_PATH=/opt/riscv-gnu-toolchain + $ sudo apt-get -y install \ binutils build-essential libtool texinfo \ gzip zip unzip patchutils curl git \ @@ -35,51 +39,24 @@ Install gnu-riscv-tools $ cd riscv-gnu-toolchain $ git submodule update --init --recursive $ mkdir build - $ cd build - $ export RISC_GNU_TOOLS_PATH=$PWD/../drops + $ cd build $ ../configure --prefix=$RISC_GNU_TOOLS_PATH --with-arch=rv32im --with-abi=ilp32 $ make -j`nproc` $ make -j`nproc` build-qemu +Install Verilator + + You need into build the latest version using the instructions on their website + $ https://www.veripool.org/projects/verilator/wiki/Installing + Install Vortex - $ sudo apt-get install verilator $ git clone https://github.gatech.edu/casl/Vortex.git - -Build SimX - - $ cd Vortex/simx + $ cd Vortex $ make Run SGEMM OpenCL Benchmark $ cd Vortex/benchmarks/opencl/sgemm $ make - $ make run - -Basic Instructions to build the OpenCL Compiler for Vortex ----------------------------------------------------------- - -Build LLVM for RiscV - - $ git clone -b release_90 https://github.com/llvm-mirror/llvm.git llvm - $ git clone -b release_90 https://github.com/llvm-mirror/clang.git llvm/tools/clang - $ cd llvm - $ mkdir build - $ cd build - $ cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=True -DLLVM_USE_SPLIT_DWARF=True -DCMAKE_INSTALL_PREFIX=$RISC_GNU_TOOLS_PATH -DLLVM_OPTIMIZED_TABLEGEN=True -DLLVM_BUILD_TESTS=True -DDEFAULT_SYSROOT=$RISC_GNU_TOOLS_PATH/riscv32-unknown-elf -DLLVM_DEFAULT_TARGET_TRIPLE="riscv32-unknown-elf" -DLLVM_TARGETS_TO_BUILD="RISCV" .. - $ cmake --build . --target install - -Build pocl for RISCV - - $ git clone https://github.gatech.edu/casl/pocl.git - $ cd pocl - $ mkdir build - $ cd build - $ export POCL_CC_PATH=$PWD/../drops_riscv_cc - $ export POCL_RT_PATH=$PWD/../drops_riscv_rt - $ cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$POCL_CC_PATH -DCMAKE_BUILD_TYPE=Debug -DWITH_LLVM_CONFIG=$RISC_GNU_TOOLS_PATH/bin/llvm-config -DLLC_HOST_CPU= -DNEWLIB_BSP=ON -DNEWLIB_DEVICE_ADDRESS_BIT=32 -DBUILD_TESTS=OFF -DPOCL_DEBUG_MESSAGES=ON .. - $ cmake --build . --target install - $ rm -rf * - $ cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$POCL_RT_PATH -DCMAKE_BUILD_TYPE=Debug -DOCS_AVAILABLE=OFF -DBUILD_SHARED_LIBS=OFF -DNEWLIB_BSP=ON -DNEWLIB_DEVICE_ADDRESS_BIT=32 -DBUILD_TESTS=OFF -DHOST_DEVICE_BUILD_HASH=basic-riscv32-unknown-elf -DCMAKE_TOOLCHAIN_FILE=../RISCV_newlib.cmake -DENABLE_TRACING=OFF -DENABLE_ICD=OFF -DPOCL_DEBUG_MESSAGES=ON .. - $ cmake --build . --target install + $ make run \ No newline at end of file