Software Development Tools

GAP SDK Tool Chain makes it easy for developers to extract the maximum energy efficiency and performance from the GAP architecture with the highest productivity. We provide multiple examples of different tasks and also full, end to end application examples.

The GAP SDK includes an open-source extended version of the RISC-V GCC compiler which includes optimization and code generation steps for all the RISC-V ISA extensions implemented by GAP processors. It also includes all the tools necessary to flash, run, and debug GAP. There is no need to use assembly language to extract maximum performance from GAP processors.

GCC C/C ++ toolchain

Standard GNU compiler toolchain ported to GAP. Read more >>

OpenOCD

Open source JTAG bridge supporting many cables and chips, including Olimex/Jlink and so on. It also semihosting and debug. Read more >>

GVSOC

GVSOC is a near-cycle accurate, full SoC simulator that runs GAP executables on a Linux PC. The tool’s sophisticated code trace and signal tracing functions give the developer detailed information on code execution, speeding the debugging and optimization of applications. Watch our tutorial on how to use GVSOC on our blog post >>

Profiler

Profiler is a visualization tool for profiling and debugging GAP applications and used with GVSOC, our Full System SoC Simulator. Profiler gives you a visual view of what is happening inside the chip and allows you to control the simulator through a graphic interface

NN Menu

NN Menu is a  GreenWaves’ GitHub repository that includes NN examples and benchmarks of well-known architectures that help you to build your application and run it on the GAP processor. Read our full tutorial on NN Menu on our blog post >>

NN Tool

NNtool it’s a python package that facilitates the NN graphs porting from a high level DL framework to a GAP processor by means of model optimizations, quantization and testing thanks to a python library of gap-like computational kernels. Visit our GitHub to read more >>

NN/DSP Generators

Library of pre-optimized NN kernels

AutoTiler

This tool optimizes data memory movements running on the GAP platform, and it generates code to run on an 8-core cluster. This approach minimizes memory accesses, reducing the memory bottleneck which characterizes most of these kinds of applications. NN-Tool allows us to easily map Tflite operations into the AutoTiler model used to generate the optimized code to run, as well as the constants files, in a compatible format

GAPflow

GAPflow includes tools that automatically convert quantized and floating-point TensorFlow Lite graphs to readable C code ready for execution on GAP. The process can be fully automated as part of a program build but the tool-based approach means that the process is inspectable and debuggable. GAPflow includes the GAP AutoTiler that optimizes the movement of data across the memory hierarchy at compile-time overlapping computation with memory movement to ensure the best possible performance. The GAP AutoTiler makes it easy for a developer to extract the maximum benefit from the GAP architecture, avoiding the need for energy-hungry data caching for streamed workloads. Read more >>