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 Core in Macbook
Figure 1: C0-microSD on Signaloid Core mode used as a co-processor.

Signaloid Core specifications:

The Signaloid Core is based on the open-source PicoRV32 project, which has been 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 Core

The Signaloid Core can run custom user code (device application), and is designed to 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 Sigaloid Core communication scheme here.

You can use the official RISC-V GNU toolchain to compile your own applications to run on the Signaloid Core. We provide example C applications that use the Signaloid Core, 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