From WikiChip
Editing greenwaves/gap8

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.

Latest revision Your text
Line 27: Line 27:
 
|package module 1={{packages/greenwaves/aqfn-84}}
 
|package module 1={{packages/greenwaves/aqfn-84}}
 
}}
 
}}
'''GAP8''' is a [[nona-core]] {{arch|32}} [[RISC-V]] ultra-low power microprocessor designed by [[GreenWaves]] and introduced in early [[2018]] for the edge computing and IoT market. This processor, which is fabricated on [[TSMC]]'s [[55nm process|55LP process]], is based on the {{ethz|PULP}} open core. The GAP8 incorporates [[9 cores|nine]] RISC-V cores capable of running at up to 250 MHz along with a [[neural processor]] designed to accelerate [[convolutional neural network]]s (CNN). The GAP8 is said to offer a peak performance of up to 200 MOPS at 1 mW and up to 10 GOPS at a few tens of mW, making it well suitable for long autonomous battery-powered life.
+
'''GAP8''' is a [[nona-core]] {{arch|32}} [[RISC-V]] ultra-low power microprocessor designed by [[GreenWaves]] and introduced in early [[2018]] for the edge computing and IoT market. This processor, which is fabricated on [[TSMC]]'s [[55nm process|55LP process]], is based on the {{ethz|PULP}} open core.
 
 
== Overview ==
 
The GAP8 is a derivative of {{ethz|PULP}}, consisting of three major parts - autonomous peripherals, ultra-low power microcontroller, and the compute engine. The autonomous peripherals are a set of I/Os that can be used while the rest of the system is in deep idle state. The microcontroller and the compute engines sit on two entirely decoupled power domains, consuming power sparingly only when necessary.
 
 
 
The GAP8 has an L2 situated on the MCU side although it's shared by all the devices on the chip, including the cores from the compute engine. Therefore its possible to power gate the entire compute engine without affecting the L2. The L2 consists of four 128 KiB banks for a total of 512 KiB. The L2 can be configured as state retentive (presumably per bank @ 8 µA/bank) so backing up the L2 to flash storage, which consumes fairly significant power, is not needed.
 
 
 
=== MCU ===
 
The microcontroller block is a fairly standard MCU with many of the standard features. The MCU is situated on its own power domain with the peripherals power switchable and configurable along with the clock generator. It consists of a single system management core (also called a fabric controller by GreenWaves) for tasks such as peripherals and it can double as general purpose low-power core, meaning compute engine can remain power-gated unless absolutely necessary. This core has its own 16 KiB of data cache and 4 KiB of instruction cache.
 
 
 
The chip features [[nine cores]] (1 serving in the MCU + 8 in the compute engine), all are fully compliant {{arch|32}} [[RISC-V]] cores with support for the {{risc-v|m|integer multiplication and division instructions}} (M) and {{risc-v|c|compressed instructions}} (C) {{risc-v|standard extensions}} (i.e., RV32IMC). Inherited from {{ethz|PULP}} and further enhanced by GreenWaves is the use of the RISC-V standard ISA extension mechanism {{risc-v|non-standard_extensions|to enhance}} the cores and improve performance for DPS-centric operations, specifically operations frequently found in the algorithms executed by the compute engine. Specific instructions were added for operating on [[Convolutional Neural Networks]] (CNNs), [[Support Vector Machines]] (SVMs), [[Bayesian]], Boosting, Visual Location, [[Fast Fourier Transforms]] (FFT), [[Cepstral Analysis]] and various others.
 
 
 
The MCU was designed to feel and behave like any other microcontroller on the market. It can be programmed using the familiar standard GCC/GDB toolchain derived from the one developed by the RISC-V foundation. Currently two real-time operating systems are supported, the PULP OS and Arm Mbed OS. GreenWaves has developed a full set of drivers for both of those operating systems in order to allow access to all the GAP8 peripherals.
 
 
 
The controller has a real-time clock (RTC) that can run at just 70nA low-power standby modes enabling the device to wake-up automatically.
 
 
 
=== Compute Engine ===
 
The compute engine consists of eight additional cores clustered together to form a low-power but powerful computational engine. The cluster share the same 64 KiB data and 16 KiB instruction caches. The engine sits on an entirely separate voltage and frequency [[power domain|domains]] which can be switched off when not operating or down-clocked to suit a particular workload more efficiently.
 
 
 
Supplementing the CPU cores is a seperate hardware convolution computation engine (HWCE) designed specifically to [[neural processor|accelerates inference calculations]] for [[convolutional neural networks]] (CNNs). It does one cycle 5x5 convolution. HWCE shares the same memory with the rest of the cluster. GreenWaves has software libraries for Deep Learning (CNN based), Image Processing Library (e.g., People counting and Visual Monitoring), data analysis, and encryption optimized for the compute engine.
 
 
 
GreenWaves claims the chip can do up to 200 MOPS at 1 mW and up to 10 GOPS at a few tens of mW, making it particularly useful for a long battery-powered life.
 
 
 
=== Block Diagram ===
 
:[[File:gap8 block diagram.svg|700px]]
 
 
 
== Cache ==
 
The GAP8 a private L1 cache for the MCU core which consists of a 16 KiB of data cache and 4 KiB of instruction cache. The compute engine has a shared level 1 cache of its own which consists of a 16 KiB instruction cache and a 64 KiB data cache. Additional, the entire chip shares a 512 KiB level 2 cache consisting of 4 128 KiB cache banks.
 
{{cache size
 
|l1 cache=100 KiB
 
|l1i cache=20 KiB
 
|l1i break=16 KiB + 4 KiB
 
|l1d cache=80 KiB
 
|l1d break=64 KiB + 16 KiB
 
|l2 cache=512 KiB
 
|l2 break=4x128 KiB
 
}}
 
 
 
== Memory ==
 
The chip supports up to 16 MiB of SDRAM or additional RAM through the HyperBus interface.
 
 
 
== Expansions ==
 
* 128 Mb/s [[LVDS]] IEEE compliant
 
* Serial I/Q
 
* [[UART]]
 
* Quad SPI Master + additional SPI Master
 
* [[SPI]] Slave
 
* [[I2S]] (2)
 
* [[I2C]] (2)
 
* Camera parallel interface (CPI)
 
* HyperBus (External Flash and RAM)
 
* 32 x GPIOs
 
 
 
== Features ==
 
[[File:gap8 next to a coin.png|right|300px]]
 
* 4x PWM
 
* 32 kHz external quartz
 
* Programmable Voltage Regulator
 
* Real Time Clock
 
* 2 programmable clocks
 
* Secured execution support with Memory Protection Unit (MPU)
 
 
 
== See also ==
 
* [https://fuse.wikichip.org/news/990/the-risc-v-momentum-continues-with-the-gap8-an-iot-ai-application-processor/ GAP8 on WikiChip Fuse]
 

Please note that all contributions to WikiChip may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see WikiChip:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)
Facts about "GAP8 - GreenWaves"
Has subobject
"Has subobject" is a predefined property representing a container construct and is provided by Semantic MediaWiki.
GAP8 - GreenWaves#package +
base frequency250 MHz (0.25 GHz, 250,000 kHz) +
core count9 +
core voltage (max)1.2 V (12 dV, 120 cV, 1,200 mV) +
core voltage (min)1 V (10 dV, 100 cV, 1,000 mV) +
designerGreenWaves +
first announcedOctober 2016 +
first launchedFebruary 26, 2018 +
full page namegreenwaves/gap8 +
instance ofmicroprocessor +
io voltage1.8 V (18 dV, 180 cV, 1,800 mV) + and 3.3 V (33 dV, 330 cV, 3,300 mV) +
isaRV32IMC +
isa familyRISC-V +
l1$ size100 KiB (102,400 B, 0.0977 MiB) +
l1d$ size80 KiB (81,920 B, 0.0781 MiB) +
l1i$ size20 KiB (20,480 B, 0.0195 MiB) +
l2$ size0.5 MiB (512 KiB, 524,288 B, 4.882812e-4 GiB) +
ldateFebruary 26, 2018 +
main imageFile:greenwaves gap8 (front).png +
main image captionGAP8, front package +
manufacturerTSMC +
market segmentEmbedded +
max cpu count1 +
model numberGAP8 +
nameGAP8 +
packageaQFN +
power dissipation0.06 W (60 mW, 8.046e-5 hp, 6.0e-5 kW) +
process55 nm (0.055 μm, 5.5e-5 mm) +
release price$ 5.00 (€ 4.50, £ 4.05, ¥ 516.65) +
smp max ways1 +
technologyCMOS +
thread count9 +
word size32 bit (4 octets, 8 nibbles) +