Command Palette

Search for a command to run...

Command Palette

Search for a command to run...

Projects

TinyTPU

Live
RoleCreator
TeamSolo
TimelineJun 2026

Overview

TinyTPU is a browser-based hardware visualization project that runs a real synthesizable SystemVerilog systolic array in the browser. The RTL is compiled to WebAssembly and visualized cycle-by-cycle so users can watch matrix multiplication move through processing elements.

The project connects low-level computer architecture, hardware simulation, WebAssembly, and modern frontend visualization into one interactive demo.

Architecture

Rendering diagram...
pinch · drag

Challenges & Solutions

1

Hardware architecture is difficult to explain through static diagrams - people struggle to see data flow through a systolic array.

Compiled the actual RTL to WebAssembly and animated processing element activations, partial sums, and data movement cycle-by-cycle.

2

Frontend demos often fake the backend logic with synthetic animations.

The browser executes the actual Verilog RTL compiled to WASM - no simulation layer, the hardware behavior is real.

Features

  • Real synthesizable SystemVerilog 4×4 systolic array
  • RTL compiled to WebAssembly via Verilator + Emscripten
  • Cycle-by-cycle processing element animation in the browser
  • Matrix input and partial sum visualization
  • Astro + React frontend - no backend required
  • Verified with cocotb and NumPy
  • Live Vercel deployment