Releases: GreenWaves-Technologies/gap_sdk
GAP SDK RELEASE NOTE V3.7
NEW FEATURES
NNTool
- Support TFLite SSD Detection PostProcess layer
- Bug fixes
GAP SDK RELEASE NOTE V3.6
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
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
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
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
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
Bug fixes
PMSIS BSP
Proper closing of bluetooth module, and few instabilities.
GAP SDK RELEASE NOTE V3.0
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
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
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