Flex — a polyphonic FPGA synthesizer module

Flex is a subtractive synthesizer built on the Sipeed Tang Nano 20K FPGA. Single-voice verified on hardware with SPDIF digital audio output at 96 kHz/24-bit. Three oscillator waveforms, a 12 dB/oct state-variable filter, and a NEORV32 RISC-V soft core at 98.304 MHz. In development since 2024.

Demos

buildup-demo.mp4
ballad-synth-2.mp4
polyphony-test-hd.mp4
sandstorm.mp4

Architecture

Flexible by Design

Flex isn't locked to one sound engine. The architecture uses a dumb multiplexed audio + MIDI bus — deliberately simple, like late-80s PC ISA slots. Anyone can build a module on STM32, ESP32, FPGA, or pure analog and it connects. Flex is the reference implementation and flagship engine.

FPGA Engine

Time-division multiplexed polyphonic synthesizer on the GW2AR-LV18QN88C8. Sawtooth, pulse, and triangle oscillators with 24-bit phase accumulators. Bilinear state-variable filter (Lazzarini-Timoney topology, 12 dB/oct). NEORV32 RISC-V soft core handles MIDI and voice allocation. Verified SPDIF output.

Software Reference

A C++20 library (libsynth) mirrors the FPGA pipeline: 16 MIDI channels, voice manager, identical DSP blocks. Serves as ground truth for hardware verification — feed both the same MIDI, diff the outputs.

Philosophy

IKEA

Flat-pack, democratic pricing, self-assembly. No soldering required. The Tang Nano dev board is $15-20.

LEGO

Universal interconnect. Infinite recombination. Anyone can build a brick. The system outlasts any single module.

Roadmap

Flex is the first Noaidi product. The architecture is designed for expansion:

  1. Flex — FPGA synth module (in development)
  2. Polyphony, stereo output, 24 dB/oct filter cascade
  3. Klang future — a keyboard platform with swappable engines, documented bus spec, and community-built modules

Stack

FPGA DSP Embedded RISC-V Analog Audio NEORV32 Tang Nano 20K SystemVerilog C++20

Creator

Thorwegian has built software and hardware since 1992. Self-taught, his career spans 3D graphics engines, embedded systems, high-throughput server architecture, and full-stack development in a half-dozen languages. His parallel life in audio (keyboardist, synth programmer, bedroom producer) lets him bridge DSP theory and musical practice. He built a 7000-member online art community in the mid-00s.