SPHT: The Software-Programmable Hardware Trainer

The Swan Factory is excited to pre-announce our first Kickstarter: SPHT.

SPHT (“sift”) is a Software-Programmable Hardware Trainer. The goal is to introduce a radically different concept in processor design tightly coupled with a novel anti -functional programming language called Hexon.


Our thesis is that current hardware and software is hobbled by the conceptual framework of mathematical functions, which:

  • have only a single output
  • primarily operate on real numbers
  • are infinitely composable
  • reduce to binary 0 and 1

Hexons are a new abstraction designed to better match the characteristics of actual electronic circuits, including:

  • multiple independent outputs
  • primarily operate on finite bit streams
  • concatenate with a cost in Energy and Time
  • represent 0, 1, and “Z” (no signal)

As a trivial example of the difference, hexons use “@export” to asychronously output named values, rather than a single synchronous and anonymous “return.” This allows them to cleanly represent actual hardware circuits as well as natural software parallelism with the same notation.


SPHT occupies a middle space between conventional microprocessors, signal processors and academic BitSlice machines. The fundamental primitive is “routing” rather than Boolean calculation. There are no instructions in the traditional sense. Instead, signals merely specify the address and setting of a switch along with the payload to be routed through that branch. The ALUs and other functional units thus become pluggable modules rather than hard-coded into the instruction set.

To achieve hardware portability, the language provides a semantic map defining which units perform the same human-meaningful behaviors. Programs can be written against this semantic processor and compiled down to an intermediate representation or detailed processor-specific labels.

Abstractable Assembly

Importantly, the high-level language is identical to the low-level assembly, except with the addition of encapsulation. There is no particular reason beyond historical accident that assembly languages had to be cryptic and rigid. Thus Hexon modules are just declarative specifications of method routings with aggregation and data-hiding.


The Kickstarter will launch next August and close on 9/11/207, with a goal of shipping units to supporters by Christmas 2017. The initial goal is simply to deliver a pre-programmed FPGA board with Hexon pre-installed, Bluetooth connectivity, and an iOS programming environment. Stretch goals include Android and desktop apps, plus a custom ASIC with HDMI and USB3 ports.

Please contact us at info@theswanfacory.com if you would like to learn more, help out, or be notified of early-bird deals.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: