The price of single board computers and development boards has really gone down in recent years, and it’s easy to find a low cost Arm based board for most project. But C-SKY Linux development board is quite different since it’s based on the little known C-SKY architecture, and the price in China ($6) is really competitive for a media capable board.
If you live outside of China, the board is now sold for about $18 including shipping, and MickMake decided to buy one to have a closer look and review the board.
As we covered during the announced the board is powered by NationalChip GX66058 C-SKY 32-bit processor clocked at up to 574 MHz and integrating 64MB DDR2 on-chip. Getting the board on-hand allowed Mick to get more details about the other chips included in the board namely:
- STMicro STM32F103 to handle all the JTAG control through a micro USB port (JTAG)
- CH340G USB to serial bridge to access the serial console via another micro USB port (COM)
- Winbond W25Q32FVSSIG 32-Mbit SPI flash to store the operating system
The bottom side of the board only features a copper area to cool the chip.
Looking into the CPU datasheet, he found out C-SKY is based on Freescale MCORE with some extra MIPS instructions thrown in the mix for good measure, the processor can be set to big or little endian, and an Arm AMBA (Advanced Microcontroller Bus Architecture) bus is also part of the chip.
The board is pre-loaded with a media player application with a basic user interface, and can play H.264 videos from USB mass storage devices like a USB thumb drive.
You can control the video using the buttons on the board, and HDMI output works up to 1080p @ 25 Hz while the frame buffer is set to 1280×720 resolution like is the case on many low end TV boxes and media players.
But the fun part is really mainline Linux support, and you can download a Linux image (usb.img), put it in your USB thumb drive and it will automatically upgrade the board to Linux.
GPIO supports works, but I2C is implemented via bit-banging although it needs to be enabled in the kernel, and there’s no SPI interface.
You can also build the image yourself with buildroot using a few commands:
1 2 3 4 |
git clone https://github.com/c-sky/buildroot.git cd buildroot make csky_gx6605s_fbcon_br_defconfig make |
Mick also built Phoronix benchmarks for the board, and while most tests won’t run some did, and performance is really weak…
Cachebench read, modify and write operations are really slow, 20 to 440 times slower than ODROID-XU4, but that’s the result of using an SPI flash.
Himeno poisson pressure solver benchmark performs floating-point operations, and again the results are pretty poor. Arm platforms do have an FPU, which the CK610M core used in GX66058 processor does not have as I understand it, and Himeno is also listed as a multi-threaded benchmark, and the single core C-SKY processor is obviously at a disadvantage here.
TSCP AI chess performance benchmark looks better on C-SKY, because it’s a single-thread integer benchmark, and the performance difference can be mostly explained by the lower CPU frequency.
You’ll find the full results on OpenBenchmarking.org.
Beside the open source support and low price, Mick feels there’s not a lot going for the board with fairly limited documentation, and poor overall performance. More details can be found in MickMake’s review linked in the introduction, as well as in the video review embedded below.
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
cute little board, although they could’ve made the board a bit wider and put usb ports flat. also, gotta love lowly opi0 beating rpi3b in pressure bench 😉
Curiously enough, C-SKY v2 (ck8xx) looks like a significant departure from C-SKY v1 (ck6xx), to the point of no BC with M-CORE anymore?
BTW, the benchmarking in the video seems like a curiousity and not particularly practical. ck610 looks more like an ovegrown MCU capable of running linux, rather than like an application processor. A more practical comparison would have been between ck610 and some cortex-m (which, of course, phoronix testsuite would not be suitable for).
Seems to me like a competitor to those low end mips based stb chips from stm or mtk. Or maybe some wrt type routers. Or a pic32mz…
>A more practical comparison would have been between ck610 and some cortex-m
How? This thing runs proper Linux with an MMU and has 64MB of RAM which is many times what most cortex-m chips can support. Most cortex-m aren’t clocked above 100MHz.
M-CORE was designed as an MCU ISA — emphasis on low power, high-density, low-latency irq response. The fact C-SKY slapped an MMU to it makes it an MCU with an MMU. And linux is not needed for benchmarking. A comparison to, say, STM32H7 would have been way more interesting.
>The fact C-SKY slapped an MMU to it makes it an MCU with an MMU.
That makes it a base for a SoC like this. You can use Thumb on a lot of ARM chips that are not MCUs FYI.
>A comparison to, say, STM32H7 would have been way more interesting.
Those chips have 2MB of flash and 1MB of SRAM. The comparison would be totally useless.
The chips this thing would be compared to are the i.mx6ull or the Renesas RZ.
You seem to not understand that slapping an MMU and many megabytes to an MCU does not change its fundamental performance characteristics — it enables things like linux, but that about sums it up. Yes, review cold have compared it to many a small armv6 thumb-enabled cores just as well — they didn’t. They could have compared it to iMX RT 1K series — cortex-m7 supporting external ram and capable of running uClinux (https://www.cnx-software.com/2017/08/17/nxp-i-mx-rt-series-crossover-embedded-processor-features-an-arm-cortex-m7-core-600-mhz/, https://www.cnx-software.com/2017/10/27/emcraft-releases-linux-bsp-for-nxp-i-mx-rt-cortex-m7-soc/, https://www.cnx-software.com/2018/11/26/forlinx-ok1052-c-nxp-i-mx-rt1052-board/) — they didn’t. They’ve compared it to application-level of hw and the only thing this comparison has shown is that the ck610 does not… Read more »
>You seem to not understand that slapping an MMU >and many megabytes to an MCU does not change >its fundamental performance characteristics An MCU is just a processor with peripherals in a package. The actual processor doesn’t matter. Having more than 8MB of memory, being clocked at 500MHz and having an MMU (thus being able to run a normal OS) makes this a SoC just like all of the other SoCs with crappy processor cores. >cortex-m7 supporting external ram and capable of >running uClinux The product blurb for the i.mx rt even says it’s a cross-over MCU/application processor. Probably because… Read more »
> An MCU is just a processor with peripherals in a package.
No. But apparently you’re willing to peform mental gymnastics to try and concoct some semblance of a point, and I don’t feel like arguing with a brick, so having said all there was to be said on the subject (and the benchmarks from the video speak for themselvs), I wish you a good day.
>No. But apparently you’re willing to peform mental gymnastics to try > and concoct some semblance of a point, You seem to be doing the mental gymnastics. You’ve come up in your head that because something uses an instruction set that was originally intended for MCU products then that makes anything that happens to use it an MCU. From wikipedia: “A microcontroller (MCU for microcontroller unit, or UC for μ-controller) is a small computer on a single integrated circuit. In modern terminology, it is similar to, but less sophisticated than, a system on a chip (SoC); an SoC may include… Read more »
> You seem to be doing the mental gymnastics. You’ve come up in your head that because something uses an instruction set that was originally intended for MCU products then that makes anything that happens to use it an MCU. No, I haven’t made up my mind that an ISA devised for MCU automatically turns a chips using that ISA into an MCU — the ISA is but one factor; a rudimentry counterexample: an CA72 executing thumb2 in aarch32 mode is not a MCU, at least not circa 2018 tech. But the ISA choice contributes to the the overall power/peformance… Read more »
RJ45 and i could use it
For 5$ it would make sense, not for 18$+
Also, i’d rather pick a ALLWINNER v3 board than this. More powerful.
A £20 TV box is more powerful than this!
Why not just use a A20 or A10 board.
For low price, small size, ethernet connectivity and GPIO use, I think the NanoPi NEO H3 is the best example of that niche. It has aged quite well and remains popular.
Note that the chip manual is not open.
Power consumption?
Can this board run NES/SNES emulator?
Now $13.91 inc p+p to UK
https://www.aliexpress.com/item/PK-OrangePi-NanoPi-Raspberry-Pie-GX6605S-Development-Board-For-C-SKY-Linux/32971946875.html?