The WCH CH32V407 is the V307's grown-up sibling. Notable spec additions:
The big-ticket item is RVV. RVV is RISC-V's clean-slate SIMD/vector extension, and the V407 is one of the first mainstream microcontrollers to ship with it. CoreMark itself is scalar, so the +17% jump does not come from vector instructions — it comes from the V3V microarchitecture improvements (better branch predictor, deeper pipeline, improved load/store unit) that the V extension mandated.
For comparison:
The V407 sits clearly above Cortex-M7 performance and is comparable to midrange Cortex-M33/M85 parts. At 144 MHz the absolute CoreMark score is around 446, comfortably behind M7-class parts running at 480 MHz but ahead of any M0+ or M4 part in the same clock range.
A recent related thread on the 21ic forum called "CH32V407 treasure feature — RVV instruction set" explores what the vector extension actually enables for image processing and edge AI:For an edge-AI camera or audio pipeline, RVV is the killer feature that justifies the BOM step up from V307 to V407.
If you do not need RVV or the second USB 2.0 interface, the V307 remains excellent value at gigabit Ethernet price points. For even smaller designs:
For OEM designs that will run for years, choosing the V407 today leaves an obvious RVV code path open tomorrow.
A few things to keep in mind when reading the CoreMark number:
-march=rv64gcv -mtune=...spacemit-x60 (covered on this site), and the upstream Linux kernel u-boot/OpenOCD work, the WCH toolchain and SDK story is becoming less of a blocker for production deployment.
For anyone evaluating RISC-V MCUs for an upcoming product, the V407 deserves serious consideration when you need either RVV-class SIMD or two simultaneous USB 2.0 channels. For less demanding designs, the V307 remains the better value, and the smaller V003 / V203 / V208 family covers the truly cost-sensitive nodes.
CH32V003 是基于 RISC-V RV32EC 指令集的超低成本 MCU,批量价约 $0.1,主频 48MHz,非常适合替代传统 8 位 MCU(如 STM8S003)。
推荐使用 MounRiver Studio(基于 Eclipse):
#include "ch32v00x.h"
int main(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); GPIO_InitTypeDef cfg = {GPIO_Pin_4, GPIO_Speed_50MHz, GPIO_Mode_Out_PP}; GPIO_Init(GPIOD, &cfg); while (1) { GPIO_WriteBit(GPIOD, GPIO_Pin_4, Bit_RESET); Delay_Ms(500); GPIO_WriteBit(GPIOD, GPIO_Pin_4, Bit_SET); Delay_Ms(500); } }更多资料请访问 open-riscv.com 芯片资料专区。
如有更多问题,欢迎在论坛继续讨论或联系 contact@open-riscv.commul/div/rem instructions -- no special pragmas or intrinsics are needed.
This is directly relevant to the CoreMark performance discussion on the CH32V407. The CH32V407 uses the QingKe V3V kernel with the V vector extension, which allows it to reach 3.10 CoreMark/MHz -- 17% higher than the CH32V307 (V4F kernel, no vector extension). The combination of:
...creates a performance hierarchy within the WCH RISC-V MCU family:
| MCU | Kernel | Extensions | CoreMark/MHz | Key Feature |
|---|---|---|---|---|
| CH32V003 | V2C | RV32EC | ~2.3 | $0.1, ultra-low-cost |
| CH32V203 | V4B | RV32IMAC | ~2.7 | BLE-ready, low-power |
| CH32V307 | V4F | RV32IMACF | ~2.65 | Gigabit MAC, FPU |
| CH32V407 | V3V | RV32IMACFV | ~3.10 | RVV vector, dual USB 480Mbps |
For developers migrating from STM32 (ARM Cortex-M), the key difference is that on RISC-V, the M extension is standard and always available -- unlike ARM where hardware divide was optional on Cortex-M0/M0+. The CH32X035 specifically targets the USB interface market with RV32IMC at a competitive price point, and its hardware multiply/divide capability means no software library fallbacks are needed for arithmetic operations.
The practical takeaway: if your application does heavy integer arithmetic (DSP filters, PID control, CRC calculations), the WCH RISC-V MCUs handle it natively in hardware. Just write standard C code -- the compiler does the rest. Source: WCH Forum -- CH32X035 hardware multiply/divideA community developer (opensolvers) demonstrated real LLM decode on the K1 X60 using ONNX Runtime int4 MatMulNBits + smt.vmadot. The same RVV + vendor extension pattern that drives CH32V407’s 3.10 CoreMark/MHz is what enables K1 to run quantized LLMs at edge.
Full writeup here: https://open-riscv.com/forum/blog/k1-ort-matmulnbits-int4-llm-decode Two takeaways for our community:Curious: has anyone here benchmarked CH32V407 RVV for an audio DSP or motor FOC workload? Would love to compare numbers.
Source: https://forum.spacemit.com/t/topic/1612