Where's the (Polar)Fire? Hands-On with the Microchip PIC64GX-Powered Curiosity Kit
What do you get if you take the PolarFire out of a PolarFire SoC? The PIC64GX, at the heart of Microchip's Curiosity Kit development board.
Microchip's PolarFire SoC family of chips, which blend a quad-core Linux-compatible 64-bit RISC-V CPU cluster and a fifth "monitor core" with a powerful FPGA fabric into a high-flexibility device, have been gaining popularity — but what do you do if you don't need FPGA hardware?
According to Microchip, you buy a PIC64GX instead — and it wants to prove that with the Curiosity Kit, a development board mimicking the layout of the PolarFire SoC Discovery Kit but with a PIC64GX1000 at its heart. You'll find the same SiFive U54 RISC-V cores and E51 monitor core, the same 1GB of LPDDR4, and many of the same expansion options including a mikroBUS header, but without the PolarFire FPGA functionality.
Will the Curiosity Kit tempt developers to Microchip's PIC64GX range? Let's go hands-on and find out.
Hardware
- CPU: 4× SiFive U54 RV64GC at 600MHz (3.125 CoreMarks/MHz, 1.714 DMIPS/MHz), 1× E51 RV64IMAC at 600MHz
- GPU: None
- RAM: 1GB LPDDR4
- Storage: 32GB microSD card (included)
- Networking: 1× gigabit Ethernet
- Serial: 3× UART (via 1× USB Type-C connector)
- Expansion: mikroBUS header, MIPI RX, 14-pin "User IO" header
- Extras: 2× push-button switches, 4× DIP switches, 8× user-addressable LEDs, HDMI output
- Programmer: On-board FlashPro 5, no external hardware required
- Power: 5V via USB Type-C or DC barrel jack
- Dimensions: 104×84mm (around 4.1×3.6")
- Pack Contents: PolarFire SoC Curiosity Kit board, stand-off pillars (pre-mounted), 32GB microSD card (pre-installed), USB Type-C cable
- Price: $150
At first glance, it's easy to mistake the Curiosity Kit for the Discovery Kit and vice-versa. Both are built to a compact layout measuring roughly 4.1×3.6", include a USB Type-C connector and mikroBUS socket to the left, a microSD card slot underneath, a MIPI RX connector compatible with Camera Serial Interface (CSI) image sensors, an Ethernet socket, and a selection of LEDs and switches.
The differences start in the rough center: the board's main chip footprint now features a device smaller than the PolarFire SoC of the Discovery Kit, a PIC64GX1000 microprocessor. It's effectively what you're left with if you take the "PolarFire" out of the "PolarFire SoC": a system-on-chip featuring four SiFive U54 64-bit RISC-V cores running at up to 600MHz, and a fifth E51 core responsible for running the Hart Software Services (HSS) that keep everything ticking over.
Once you've spotted that the chip's changed, other differences make themselves known. Next to the MIPI RX connector is an HDMI port, something the Discovery Kit lacks; there are fewer DIP and push-button switches, though the same number of user-addressable LEDs, and what is labelled as a seven-segment display connector on the Discovery Kit is now the "User IO Connector" with 14 pins, two of which connect to 3V3 and power rails respectively.
The Curiosity Kit, then, is a quad-core single-board computer, but one that lacks some of what you might expect from one, especially one capable of running — and arriving with a 32GB microSD card pre-loaded with — Canonical's Ubuntu Linux. There are no USB ports, for starters, meaning no easy way to connect a keyboard for interactive use. The 40-pin Raspberry Pi-compatible general-purpose input/output (GPIO) header of the Discovery Kit is entirely absent on the Curiosity Kit, too.
First boot
One major advantage of the Curiosity Kit is that it arrives ready-to-run out-of-the-box. Just connect the board to a desktop or laptop using the bundled USB Type-C cable — for which you'll have to supply your own Type-C to Type-A adapter, if your machine doesn't have Type-C ports — and it'll begin to boot. The only software you need is FTDI serial port drivers, instructions for installing and configuring that Microchip provides in its short digital quick-start guide.
For those who have been put off the Discovery Kit by the hassle of applying for a Libero SoC license, editing the license, and correctly installing and running the licensing daemon, it's a real breath of fresh air: you can be up and running within two minutes. The bundled 32GB microSD card comes with a pre-installed copy of Canonical's Ubuntu Server 24.04 LTS Linux distribution, and boots straight to a login prompt.
Here, too, things are far simpler than the Discovery Kit. Where the PolarFire SoC-powered Discovery Kit's "minimal Linux image" is minimal indeed, lacking even a DHCP client for easy network connectivity, the image supplied with the Curiosity Kit is fully-featured: network, time synchronization, and more all work out-of-the-box on first boot with no configuration required, and there's the apt package manager with a wide array of software awaiting your instructions for more.
Using Ubuntu on the Curiosity Kit is identical to using it on any other device, with a couple of caveats. The first is that the processor cores in PIC64GX chip are RISC-V architecture, meaning that you can't install software that's been compiled for x86 or Arm cores — and not all software will recompile for RISC-V without tweaking. That's not too much of a problem, though: Canonical's RISC-V repositories contain a broad array of open-source software, and you'll almost certainly find what you need in there without having to source third-party packages.
The other caveat is that you can't run a desktop — at least, not yet. Now, that may seem obvious enough on a device with just 1GB of RAM — but there are lightweight desktops that'll happily run in a quarter of that. The PIC64GX, though, lacks a graphics processor; the HDMI port, by default, does nothing other than show a plain blue backdrop.
Microchip's documentation explains that the HDMI port is primarily there for your own use, with the company saying it's possible to use the output for "simple overlays" or as a live view of a video feed from an image sensor connected to the MIPI RX port. We're told, however, that a driver that will allow Ubuntu to use the HDMI port as a video output is in the works.
Documentation
As is, sadly, a recurring theme for Microchip's development boards, the documentation is by far the weakest part of the offering. The 31-page quick-start guide outlines the board's major components, offers instructions for getting the serial interface working in Windows and Linux but not macOS, connecting to the UART terminal, installing packages via apt, connecting and transferring files through SSH, running a simple Python web server, and, for some reason, installing and playing a text-mode Space Invaders clone.
What it does not cover is using the HDMI connector, whether for "simple overlays" or anything else. It also doesn't mention how to use the "User IO" connector, or the DIP switches, or the push-button switches, or the LEDs. It doesn't tell you how to use the MIPI RX port for an image sensor. Nor does it offer any clues on how to make use of that mikroBUS connector, designed for easily adding external hardware using solder-free Click modules.
Microchip does have a second document, the PIC64GX1000 Curiosity Kit User Guide. This, though, is even more sparse than the quick-start guide: at just 18 pages, it goes into brief detail about various technical features like voltage measurement points and the on-board oscillators but lacks any detail that would be of use to a developer.
Finally, Microchip offers a selection of GitHub repositories — including one with sample programs for the PIC64GX, the pic64gx-linux-examples repository. Sadly, even these fail to provide any clues as to how you might use the various features of the Curiosity Kit: there are two examples for Remote Procedure Call (RPC) messaging between Asynchronous Multiprocessing (AMP) instances, a feature that allows you to split the quad-core chip in half and treat it as two separate devices running separate software, one for Device Tree overlays, and one for using the Raspberry Pi Sense HAT with the chip — a potentially-useful example rendered useless, as the Curiosity Kit lacks the 40-pin header you'd need to actually connect to a Sense HAT.
Other repositories contain uBoot sources, a Zephyr real-time operating system (RTOS) port and a handful of code examples, and everything you need to build your own Linux images for the board using your choice of Yocto or Buildroot. Useful, undeniably, but not a lot of help to anyone who just wants to toggle an IO pin or flash an LED.
Microchip, to its credit, has acknowledged this paucity of documentation, and is working to resolve this: the company promises a new quick-start guide, which will cover using the DIP switches, the mikroBUS header, MIPI RX, HDMI, and more, in greater detail — and no fewer than four new application notes on using UART, SPI, I2C, and CAN buses, plus another on using the HDMI port once work on the driver is complete. Preview copies of the first few of these application notes were provided as part of the review; all require that the user builds a fresh Linux image using a Yocto board support package, and can't be followed using the Ubuntu image supplied nor any downloadable from Canonical.
Performance
Having four 64-bit cores at your disposal may give you ideas of running computationally-intensive workloads on the device, but expectations should be tempered: the SiFive U54 cores on the board run at just 600MHz — slower than the same cores on the PolarFire SoC Discovery Kit, where they run at 667MHz due to being higher-binned parts — and are showing their age a little now, failing to keep up with the performance of more modern RISC-V core designs or even previous-generation cores from Arm.
In real world terms, you can expect to see a single-threaded performance a fair bit above that of the Raspberry Pi Zero and its 32-bit ARM11 core — our single-threaded file compression benchmark has the Curiosity Kit's PIC64GX completing the test around 25 percent faster than the Raspberry Pi Zero. With all four cores running, though, that gap widens: running four compression threads the Curiosity Kit completes the test 73 percent faster, a performance-boosting trick the single-core Raspberry Pi Zero can't follow.
Move to a more modern Raspberry Pi board, though, and the story changes. For the same workload, the PIC64GX is five times slower than the previous-generation quad-core Raspberry Pi 4 for both single- and multi-threaded compression — and you can find similar gaps for all other workloads, from cryptographic operations to floating-point math. Switch to the Raspberry Pi 5, and the gap becomes an order-of-magnitude difference for many workloads.
If it's a little unfair to compare a relatively early-generation RISC-V core to a well-established Arm core, there are other comparisons to be drawn. The PIC64GX runs at a 10 percent clockspeed deficit compared to the PolarFire SoC, so there's no surprise in seeing a 10 percent real-world performance gap between the two — and while the PIC64GX manages to outperform the Nezha D1, the first commercially-available Linux-capable RISC-V development board launched four years ago, it is easily beaten by StarFive's VisionFive and newer VisionFive 2.
All this could be easily explained by a focus on power efficiency; the PIC family, after all, has traditionally been nothing but microcontrollers designed for low-power embedded operation. The Curiosity Kit, though, draws a surprising amount of power: at idle it draws 2.8W, around four times as much as the Raspberry Pi Zero and drawing level with the Raspberry Pi 4, rising to 3.3W if you connect an Ethernet cable; at full load this goes up to 3.6W, more than twice that of the Raspberry Pi Zero but comfortably below the 6.9W of the more powerful Raspberry Pi 4.
A look at the board under a thermal camera reveals that the difference in power draw when you connect an Ethernet cable is not an illusion: the Vitesse Ethernet PHY chip easily reaches temperatures above 60°C (140°F) — yet the "gigabit" Ethernet port it drives is also performance-constrained and reached a maximum sustained throughput of just 603Mb/s in our testing.
Conclusion
Anyone who's read our coverage of the Microchip PolarFire SoC Icicle Kit, Video Kit, or Discovery Kit will see that little has changed in how the company could improve the experience for its customers: documentation, documentation, documentation. Taking a page out of the already-limited quick-start guide to install Space Invaders while ignoring the features that likely attracted the buyer to the board — GPIO connectivity, that MIPI RX port, the mikroBUS connector, even the HDMI video output — is, indeed, a curious decision, and the lack of sample code to cover the gap is saddening to see. That Microchip acknowledges this and is actively working to solve the problem, though, is heartening, and it would be interesting to revisit the board in six months or so to see just where that effort has led.
It's disappointing to see the PIC64GX chip itself include PCI Express connectivity for high-speed peripherals, but not to have it made available to the user on the development board itself. The growing number of accessories for the Raspberry Pi 5, which includes a single PCIe Gen. 2 lane on a flat flexible circuit (FFC) connector at the edge of the board, shows how much demand there is for this connectivity — and breaking it out would mean users could turn the Curiosity Kit into a more general-purpose single-board computer by adding their own USB 3.0 controller. This, too, is a criticism Microchip is looking to address, telling us to expect PCIe connectivity "in future kits for upcoming PIC64GX derivatives," along with chip variants featuring on-board graphics processing engines.
The biggest negative for the Curiosity Kit, though, is its pricing. At $150, it's by no means expensive — but it comes in at $18 more than the Discovery Kit, a device that includes the exact same CPU cores, only faster, the same RAM, the same microSD slot, and many of the same expansion capabilities — losing, admittedly, the HDMI connector and bundled microSD card but gaining a 40-pin Raspberry Pi-compatible GPIO header and additional on-board switches. It also includes the PolarFire FPGA fabric, which you'd be free to ignore if you're concentrating on RISC-V and Linux development — saving yourself the $18 and gaining the potential to branch out into FPGA projects in the future without spending a penny more. Microchip, for its part, tells us that at least some of the price differential is explained by differences in production volumes — and that it is moving to increase production of the Curiosity Kit, which it hopes "will yield overall price reductions in the future."
A big advantage to the Curiosity Kit is the simplicity with which you can be up and running in a RISC-V Linux environment. Where the Discovery Kit requires you to flash a specific gateware on the FPGA fabric and either run the extremely cut-down Linux build from Microchip or create your own, the Curiosity Kit is supported by Canonical's official RISC-V Ubuntu builds: Ubuntu 24.04 LTS and the short-term-support Ubuntu 25.04 are already available to download, and future releases should follow. These, however, will not be supported in the company's application notes, meaning anyone looking to use features like GPIO and the mikroBUS connector will need to roll their own operating system image anyway.
The Curiosity Kit is now available to order from Microchip direct at $150; the board can also be ordered from Avnet.