Using the Signaloid C0-microSD as a Hot-Pluggable Co-processor Module

The Signaloid C0-microSD comes with a built-in version of Signaloid’s C0 RISC-V processor, which you can use to run your applications. In this mode of operation, host computers can use the SD protocol to exchange data with applications running on the Signaloid C0-microSD, either by creating custom applications that run on the host platform and which access the SD storage device, or using Unix tools such as dd. Applications running on the Signaloid’s C0 processor in the Signaloid C0-microSD, can take advantage of a subset of Signaloid’s uncertainty-tracking technology to quantify how uncertainties in data affect their outputs.

Signaloid SoC in Macbook
Figure 1: C0-microSD on Signaloid SoC mode used as a co-processor.

Signaloid SoC specifications:

The Signaloid SoC is based on the open-source PicoRV32 project, which we have extended to support a subset of Signaloid’s uncertainty-tracking technology, as well as communication with the host device over the SD interface.

ISA Operating Frequency Available Memory
RV32I 12MHz 128KiB

Developing applications for the Signaloid SoC

The Signaloid SoC can run custom user code (device application), and work in conjunction with an application that runs on the host machine (host application). The host application is responsible for communicating with the device application over the SD interface, via block read and write operations. You can find more details on the Signaloid SoC communication scheme here.

You can use the official RISC-V GNU toolchain to compile and run your applications on the Signaloid SoC. We provide example C applications that use the Signaloid SoC, along with host applications and instructions on how to compile them here.

The toolchain for compiling applications that can take advantage of the uncertainty-tracking functionality will eventually be available through the Signaloid Cloud Developer Platform (SCDP). You can find pre-compiled example applications with uncertainty-tracking capabilities that run on the C0-microSD here.


Table of contents