A few years ago, we came across GigaDevice GD32 microcontroller compatible with STMicro STM32F103, but with a higher 108 MHz clock, and zero wait state internal flash. The MCU was also a drop-in replacement for the STMicro alternative since beside being software compatible, it was also pin-to-pin compatible.
The company is now back with a new microcontroller, but it’s not Arm-based. Instead, GigaDevice GD32V is based on RISC-V open source architecture.
GD32V General Purpose RISC-V MCU
GigaDevice GD32V is a 32-bit RISC-V general-purpose MCU that targets industrial and consumer applications such as IoT, edge computing, artificial intelligence and “vertical industries”. The new GD32VF103 series RISC-V MCU family features 14 models with the following key specifications:
- Core – GD32VF103 32-bit rv32imac RISC-V “Bumblebee Core” @ 108 MHz
- Memory – 8KB to 32KB SRAM
- Storage – 16KB to 128KB flash
- Peripherals – USB OTG and CAN 2.0B
- I/O – 3.3V, 5V tolerant
- Supply Voltage – 2.6 to 3.6V
- Package – QFN36, LQFP48, LQFP64, and LQFP100 packages
I also understand there are pin-to-pin compatible with GD32 Arm microcontrollers, but this would have to be confirmed.
The new RISC-V microcontroller delivers 15% performance improvement in Coremark over the company’ GD32 Arm Cortex-M3 microcontroller (360 vs 312), as well as 25 to 50% lower power consumption with – as I understand it – GD32V consuming 33.7 mA in active mode, and 7.5 uA in sleep mode as illustrated below.
Best of all, you can already buy the microcontroller on Tmall, with for example GD32VF103TBU6 (QFN36, 64KB flash) going for 9 RMB ($1.27) per sample, and as low as $6.80 RMB ($0.95) per unit for ~3K orders, and the top of the line GD32VF103VBT6 (LQFQ100) going for 15 RMB ($2.11) for a single part, or 9.35 RMB ($1.31) per unit for 500 pieces orders. For reference, the equivalent GD32F103VBT6 Arm Cortex-M3 MCU is sold for exactly the same price. So we get better performance and low power consumption at the same price tag.
GD32V Development Boards
The Tmall page also has two development boards.
GD32VF103C-START
They did not provide any details about the board, but it’s based on a Gigadevice GD32V MCU with LQFP48 package, comes with buttons, Arduino headers, and three micro USB port for debugging, USB OTG, and USART. There are also configuration jumpers for boot and OTG/USART selection, as well as reset and wakeup buttons and some LEDs.
GD32VF103C-START board sells for 79 RMB, or about $11.
GD32VF103C-EVAL
The second board is more complete as an evaluation platform with a LQFP100 GD32F103VCT6 microcontroller with access to all 100 pins, a 3.2″ display, DB9 serial ports, a micro USB ports (OTG + debug), an RTC battery socket, a reset push-button, and a joystick. There may also be an audio port sticking out on the left of the photo above.
If you are interested in GD32VF103C-EVAL, it can be yours for 325 RMB (~$46).
Docs & Software
The microcontroller and development kits look good, but they are just all bricks without tools, software, and documentation. The English version of official website has currently limited information about the new GD32V microcontroller, and I can only see “GD32VFXX- IoT Studio development tools” that may be related, but you’ll find more details in the Chinese version.
GD32VF103C-EVAL board is also be supported by RT-Thread real-time operating systems, and you’ll find the BSP directly on Github.
Thanks to Zamir & Freire for the tip.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Since apparently some RV vendors don’t consider mentioning the actual RISC-V instruction subset important in their announcements, this is another bumblebee we have data on: http://www.andestech.com/wp-content/uploads/7_1645__AndesCore%E2%84%A2-N22-RISC-V-Ultra-Compact-Processor-Solution.pdf
IOW, chances are this is either a rv32imac *or* a rv32emac — I’d guess the latter.
The GD32vf103 is “32-bit rv32imac”
Cheers! If you have that on a good source then perhaps Jean-Luc could update the article to mention that.
Source 1: Segger embedded tools for GD32RV package mention the architecture rv32imac. Source 2: At the end of his blog there is a link to the BSP GD32VF103 EVAL. Extract from the readme.md : „Architektur: 32-Bit-RV32IMAC“
the maximum SRAM capacity is 32KB
If you need more SRAM – the embedded EXMC (External memory controller) supports external SRAM, PSRAM, NOR Flash and ROM. (see GDVF103 User Manual en, § 19, page 416)
Why is it important? What is the difference between rv32imac and rv32emac?
RISC-V is a federation of ISA extensions — from the baseline rv{32|64|128}I, to an arbitrary combination of a handful of extensions. There are combinations which are dubbed ‘application-processor level’ (the G subset), but implementations can and often are not G-compliant, which is naturally the case with MCUs. Difference between rv32i and rv32e is 32-strong vs 16-strong GPR file, respectively. In the case of GD32VF103, rv32imac stands for a ‘full-size GPR file, integer mul/div, atomics, compressed (16bit) ISA’ set. What is missing from ‘application-processor level’ (G) is the FPU – F & D extensions.
This is great news! Especially with POWER going open, this shows that RISC-V has a future left even if it is in the (insanely high volume, but low cost) low end of the market.
when do we get ArduinoIDE support?
Presumably this is the same peripherals they cloned from the STM32 just with the core switched out.
If the Arduino stuff has support for the STM32 bits then I guess adding a base layer for the core differences wouldn’t be a massive amount of work.
Very soon apparently. Sipeed has shown a screenshot showing they are working on “gd32vduino”, or simply got it from Kendryte.
https://twitter.com/SipeedIO/status/1164898488540254209
The packages on both mentioned boards are LQFP not QFN.
What arch level are these? RV32IM, RV32G?
rv32imac
Reg. missing tools:
These guys have an IDE + debug probes for RV32 and also support the GD32V:
https://www.segger.com/products/development-tools/embedded-studio/
beside the segger tools there is also PlatformIO IDE (platform: gd32v, device: GD32VF103V-EVAL, framework: arduino)
Looks like Sipeed have announced a devboard with a GD32V: https://twitter.com/SipeedIO/status/1164500325119610887
I did not know about this board. But one of the persons who tipped me told me they got the news from Sipeed telegram.
Sipeed’s twitter feed has now linked to their upload of the datasheet for the GD32VF103: http://dl.sipeed.com/LONGAN/Nano/DOC/
It’s impressive to see a 500-page dataseet for such a device, especially from a Chinese company. They’re doing it seriously, it does have chances to succeed.