Skip to content

Releases: GreenWaves-Technologies/gap_sdk

GAP SDK RELEASE NOTE V3.7

31 Aug 14:47
d33d6c9
Compare
Choose a tag to compare

NEW FEATURES

NNTool

  • Support TFLite SSD Detection PostProcess layer
  • Bug fixes

GAP SDK RELEASE NOTE V3.6

02 Jul 11:53
36ad3c7
Compare
Choose a tag to compare

NEW FEATURES

NNTool

  • Support for TFLite RNN and LSTM layers (UnidirectionalSequenceLSTM)
  • WIP: TFLite SSDPostProcess and StridedSlice Layers (not end to end support but execution working on nntool)
  • Bug fixes

GAP SDK RELEASE NOTE V3.5.1

10 Jun 21:39
0ab6155
Compare
Choose a tag to compare

NEW FEATURES

NNTool

  • nodeoption support for the memory location of the locals parameters in the AutoTiler
  • Update Documentation
  • Bug fixes

GAP SDK RELEASE NOTE V3.5

01 Jun 19:19
d69bd40
Compare
Choose a tag to compare

NEW FEATURES

NNTool

  • Added new quantization scheme with scaling factors (tflite quantization-like)
  • Support import tflite (1 or 2) quantized graphs (uint8)
  • New adjust algorithm to support more general reshape/transpose layers
  • Added Autotiler layer for input image formatting (HWC uint8 -> CHW int8/int16)
  • Support multi-inputs network execution
  • Support for new tensor dumping routines in AutoTiler
  • Support for generation of model using SQ8 AutoTiler generators
  • Bug fixes

Autotiler

  • New SQ8 kernel set supporting scaled quantization
  • Tensor dumping from any memory area
  • Several bug fixes

GAP SDK RELEASE NOTE V3.4

19 May 05:18
Compare
Choose a tag to compare

NEW FEATURES

PMSIS

  • Uart driver: SW flow control support has been added with GPIOs
  • I2S driver: Added support for external clock
  • FC stack size can now be customized
  • Added driver for L2 to L2 and L2 to FC TCDM transfers

BSP

  • Added support for SPI RAM and SPI flash.

  • OpenOCD

    • Now used by default

Bug fixes

  • PulpOS

    • FC stack was not aligned on 8 bytes, leading to issues with printf with floats.
    • Compilation on gap8 v2 and v3 were done with v1 config
    • "make flash" is now flashing binary and FS to flash
  • FreeRTOS

    • Cluster DMA: Better transfer ID affectation. In IRQ handler, when a transfer was done, next transfer was not popped out.

GAP SDK RELEASE NOTE V3.3.3

10 Apr 21:20
26be9ac
Compare
Choose a tag to compare

NEW FEATURES

Autotiler

  • Generators api changed, now the fixed point format is passed when generating the code:
    In_Q: In fixed point format
    Filter_Q: Filter fixed point format
    Bias_Q: Bias fixed point format
    Out_Q: Out fixed point format
    For CNN_ConvolutionPoolReLU:
    bias norm si calcualted as Filter_Q+In_Q-Bias_Q
    while output adjust is calculated as Filter_Q+In_Q-Out_Q
    for multiplicative bias you can see formula in generators.
  • Added swish activation
  • Added relu6 activation
  • Added leaky relu activation
  • Added sigmoid activation
  • Lots of bug fixing

NNTool

  • Support for new autotiler generators and new activations.
  • Support for mul scaling.

GAP SDK RELEASE NOTE V3.2.2

09 Apr 06:20
c0fbdaa
Compare
Choose a tag to compare

Bug fixes

PMSIS BSP

Proper closing of bluetooth module, and few instabilities.

GAP SDK RELEASE NOTE V3.0

16 Oct 06:54
504aff5
Compare
Choose a tag to compare

NEW FEATURES

NNTool

New flow for neural networks which is replacing tf2gap8.
This allows mapping high-level graphs (e.g. from Keras) directly to gap8 with automatic quantization.

PMSIS

New system layer to have portable Gap applications accross several operating systems. This comes with a set of device drivers available on PulpOS / FreeRTOS: Hyperflash/Hyperram, simple FS, cameras, LCDs, bluetooth.

Autotiler

New feature for describing full graph. This is now automatically managing the whole execution, including transfers with external RAM.

GAP SDK RELEASE NOTE V2.1

10 Apr 17:36
Compare
Choose a tag to compare

Release V2.1 - 04/2019
https://github.com/GreenWaves-Technologies/gap_sdk

NEW FEATURES

GVSOC Virtual Platform - V1:

GVSOC is a lightweight, highly flexible instruction set simulator based on PULP project, which supports GreenWaves' GAP8 IoT application processor. GVSOC allows execution of programs on a virtual platform without any hardware limits. Thanks to DPI device models full application with a subset of peripherals can be simulated. Currently, we provide simulations of devices such as cameras, microphones, LCDs, etc. We are continually adding more peripheral models and you are, of course, welcome to add your own!

VCD Trace

The virtual platform provides VCD traces which show the state of several components over time, like the core’s PC (program counter), DMA transfers, etc. This gives a better overview than system traces. Using GTKwave, you can get a view of the most interesting signal in GAP8, helping you to understand GAP8’s state and debug your code.

Benchmarking

In this version of the SDK, we have added tests and documentation to allow you to benchmark the performance, compute power and power consumption of GAP8 running CNNs. This test set includes:
2x2 stride 2 Max Pooling Layer
2x2 stride 2 Average Pooling Layer
5x5 stride 1 Convolutional Layer
5x5 stride 1 XNOR Convolutional Layer
Linear (Fully Connected) Layer

For further information, please read: https://greenwaves-technologies.com/manuals/BUILD/HOME/html/index.html

Updates, Bug fixes and Optimizations:

PULP OS:

Sleep modes have been fixed:
Deep sleep mode
Retentive sleep mode
Update to new debug bridge
Added supports for GVSOC virtual platform.

MBED OS:

Updated to version 5.11.0
Fixed UART RX pad mux number
Added PRINTF_UART flag
Update to new debug bridge
Added supports for gvsoc virtual platform.

FreeRTOS:

Update to new debug bridge
Added supports for gvsoc virtual platform.
Drivers update

TF2GAP8:

Better doc for workflow

Known Issues:

uart rx pad mux bug:

Once the pad[38] has been configured to alternate 1, 2 or 3, the UART RX cannot be used.

camera_vsync bug:

Once the pad[21] has been configured to alternate 1, 2, or 3, the camera_vsync cannot be used.

FileIO:

The speed of file IO is slow.

What’s Next

  • Porting Zephyr RTOS on GAP8
  • Other RTOS support
  • More models in GVSOC
  • Enriching the Benchmarking test suite.
  • New Autotiler
  • Full support of GVSOC in PlatformIO

GAP SDK RELEASE V2.0

09 Nov 15:46
Compare
Choose a tag to compare

Release Notes

PlatformIO for GAP8.

GreenWaves has partnered with PlatformIO to provide GAP8 developers with a cross platform (Linux, Windows & Mac) visual development environment.
Provides Visual Integrated Development Environment (IDE) based on VS Code or Atom editors.
Code, Deploy, Debug and Run through one interface
Cross platform – Windows, Mac or Linux

New Features:

New PULP Tools:

This is a new series of tools which supported across Windows, MAC OS X and Linux, which includes the following features:

  • Flasher (HyperFlash)

  • Debug bridge:

    • JTAG Communication between GAP8 and PC
    • GDB
    • Flasher
    • Fuser

New AutoTiler (v2.0.0):

  • New tiling strategies
  • New CNN Generator:
    • Full set of convolution, pooling, rectification code generators
    • Support for fully configurable filter size, padding and stride.
    • Support for channel first or filter first tiling strategies tunes the generated convolution to reduce memory movement
    • Quantization in 16 bit or 8 bit fixed point
    • Automatic use of hardware convolution engine if convolution settings allow it

FreeRTOS:

  • FreeRTOS support for GAP8.
  • CMSIS Driver based.
  • Support for the new debug bridge.

Pulp-os:

  • Support for the new debug bridge.
  • Added PWM drivers
  • Supported full duplex mode in SPI master

ARM Mbed OS:

  • Update to mbed-5.10.2
  • Update PWM and RTC driver

Known Issues:

  • [PULP-OS] RTC driver: cannot support more than 1 user event
  • [PULP-OS] Retentive sleep mode software bug
  • [MBED OS] Frequency change will influence wait()
  • TF2GAP8 Installation should be independent from TensorFlow

In nest release

GVSOC Simulator

A virtual platform for GAP8, which is derived from PULP virtual platform.

FreeRTOS:

  • Driver update
  • Add an ISR stack