Go to file
Eyck-Alexander Jentzsch 1c50084d9a checkin, builds 2024-01-29 16:54:06 +01:00
.launch adds proper tracing setup 2023-11-20 18:25:07 +01:00
.vscode checkin, builds 2024-01-29 16:54:06 +01:00
fw updates submodules and adapts design to changes 2023-06-28 09:03:30 +02:00
pysysc Update gitpod_install.sh 2023-11-30 10:56:40 +01:00
scc@1e7db7caf1 updates submodules and adapts to changes there 2023-12-17 12:24:55 +01:00
src updates submodules and adapts to changes there 2023-12-17 12:24:55 +01:00
test_gen checkin, builds 2024-01-29 16:54:06 +01:00
tgc-iss updates submodules and adapts to changes there 2023-12-17 12:24:55 +01:00
vpvper@2a3ec57906 checkin, builds 2024-01-29 16:54:06 +01:00
.clang-format updates submodules and does some cleanup if directory structure 2023-10-21 17:26:51 +02:00
.cproject update tracer setup 2023-11-20 17:45:27 +01:00
.envrc updates project setup and launch configs 2023-10-21 21:30:48 +02:00
.gitignore checkin, builds 2024-01-29 16:54:06 +01:00
.gitmodules initial commit 2022-04-11 09:22:28 +02:00
.gitpod.Dockerfile initial commit 2022-04-11 09:22:28 +02:00
.gitpod.yml Merge branch 'develop' into main 2023-12-02 14:21:27 +01:00
.project initial commit 2022-04-11 09:22:28 +02:00
.pydevproject initial commit 2022-04-11 09:22:28 +02:00
CMakeLists.txt updates FW location link 2024-01-13 09:00:39 +01:00
Jenkinsfile corrects upper-/lower-case 2023-12-02 14:32:05 +01:00
LICENSE initial commit 2022-04-11 09:22:28 +02:00
Modulefile updates submodules 2023-12-02 11:36:17 +01:00
README.md initial commit 2022-04-11 09:22:28 +02:00
requirements.txt checkin, builds 2024-01-29 16:54:06 +01:00

README.md

TGC-VP

The Scale4Edge ecosystem VP using VP-VIBES peripherals.

This VP is based in MINRES TGC series cores and uses CoreDSL to generate the concrete ISS of a particular ISA + extensions. The generator approach makes it very flexible and adaptable. Since the CoreDSL description is used to generate RTL as well as verification artifacts it provides a comprehensive and consistent solution to develop processor cores.

Ultra Quick start

Using gitpod you can run the VP in the cloud. Just visit Gitpod.io and follow the instructions. After the build finished you can run


build/src/tgc-vp -f fw/hello-world/prebuilt/hello.elf

or use ctest:


cd build
ctest

You will see on console the prints of the hello world firmware at fw/hello-world/hello.c

Open in Gitpod

Quick start

  • you need to have a C++14 capable compiler, make, python, and cmake installed

  • install conan.io (see also http://docs.conan.io/en/latest/installation.html):

    
    pip3 install --user conan
    
    

    It is advised to use conan version 1.36 or newer. In case of an older version please run

    
    pip3 install --user --upgrade conan
    
    

    Installing conan for the first time you need to create a profile:

    
    conan profile create default --detect
    
    
  • checkout source from git

    
    git clone --recursive -b develop https://github.com/Minres/TGC-VP.git 
    
    
  • start an out-of-source build:

    
    cd TGC-VP
    mkdir build
    cd build
    cmake ..
    make -j tgc-vp
    
    
  • run the VP with pre-built firmware

    
    ctest
    
    

    or

    
    src/tgc-vp -f ../fw/hello-world/prebuild/hello.elf 
    
    

To rebuild the firmware you need to install a RISC-V toolchain like https://github.com/riscv/riscv-tools.

Windows/Visual Studio build

TGC-VP supports VS2019/MSVC 16 and has been tested only with this version

Prerequisites

You need to have to following installed:

  • Visual Studio 2019 (community edition is sufficient) with C/C++ support
  • Python 3.6 or newer
  • SystemC 2.3.3 and SystemC-CCI 1.0.0. Both should be installed into the same location and the environment variable SYSTEMC_HOME should point to it
  • Conan (https://conan.io/) version 1.36 or newer. If python is installed this can be installed using pip (see above in Quick start)

build step

Create a project at the location of the git workarea. This can be done


devenv <path to checkout>

The build steps are as described in the VS documentation for CMake based projects.