Does the keyword-spotting engine fit a small open-toolchain FPGA, and how fast does it clock?
research/accel-fpga
The accel-kws serial-MAC engine through Yosys and nextpnr-ice40 on UP5K and HX8K for 15 geometries (random weights, synthesis only): all fit in at most 22% of the UP5K's logic, weights land in block RAM, Fmax 15–22 MHz on UP5K. Stylised; no board, no power.
What it found
The accel-kws serial-MAC engine, wrapped with on-chip weight ROMs and run through Yosys and nextpnr-ice40 for 15 geometries (hidden width 8–128, 2/4/8-bit weights) on the iCE40 UP5K and HX8K, 3 seeds each. All 15 fit: at most 1,138 of the UP5K’s 5,280 logic cells (22%) and 24 of its 30 block RAMs, because Yosys put the weights in block RAM, so logic grows with weight bits rather than width. Post-route Fmax is 15–22 MHz on UP5K and 37–54 MHz on HX8K, so one inference takes 0.04–0.70 ms. Stylised: the weights are random (Speech Commands was unreachable), accuracies are borrowed from accel-kws, and nothing was run on a board or measured for power.
A figure from its own output

Paper, code and results
More in Task-specific AI accelerators
- When does a task's accuracy tolerance let an accelerator drop its multipliers?Pruning, int4/int8, ternary and binary MLPs on scikit-learn digits (substitute task) with a modelled-energy engine: when does the accuracy slack let the hardware drop multipliers? Stylised; at 1–2 points tolerance, pruned int8 still beats multiplier-free.
- Does the pruning and ternary-weight result from digits hold on real keyword-spotting features?
accel-sparse's pruning, int4/int8, ternary and binary sweep re-run on real Speech Commands MFCC features: no multiplier-free design is within 5 points of float32 (ternary 19 down), where digits said 1; int8 pruned 50% is the cheapest within 2 points. Stylised, untuned negative. - Does weight-sharing lookup-table inference beat a multiply-accumulate engine for a small accelerator?Weight-sharing product-table inference against int8 MAC engines on the digits MLP: negative at this size, break-even only for wide layers with cheap table reads. Stylised, modelled energy.
- Does a wider hidden layer make weight-sharing product-table inference beat an int8 MAC engine?Product-table inference on trained wide digits MLPs (32, 128, 512 hidden): at best 14% under int8 energy, only with an assumed cheap table read. Stylised, modelled energy.
- Does fine-tuning the shared weight values rescue low-K lookup-table inference?Fine-tuning the shared values of
accel-lut's product-table engine: rescues K=2 in the 75%-pruned digits MLP (14% under int8 energy only at an assumed cheap table read), not the dense network. Stylised, modelled energy. - What does a product-table inference engine cost in RTL, against a serial MAC engine?The product-table engine and a serial MAC engine in Verilog, bit-exact against NumPy and synthesised with Yosys: negative, the table needs an accumulator per output (stylised)
All 40 Task-specific AI accelerators projects →
Other research topics
Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1
Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.