Hacker News Digest

18 августа 2025 г. в 20:34 • github.com • ⭐ 177 • 💬 4

OriginalHN

#systemverilog#verilator#vivado#pynq#dma#fpga#tpu#google#resnet#mnist

Tiny-tpu: A minimal tensor processing unit (TPU), inspired by Google's TPU

tiny-tpu — минималистичный тензорный процессор, вдохновлённый Google TPU v1/v2.
Цель: дать студентам и исследователям открытый, понятный RTL-код для изучения архитектуры TPU без закрытых деталей Google.

Основное

  • Ядро: rtl/, sim/, fpga/ — SystemVerilog, тесты, PYNQ-образ.
  • Производительность: 8×8 систолическая матрица, 32-бит INT, 200 МГц на Artix-7.
  • Поток данных: команды DMA → веса/активации → вычислительный массив → аккумуляторы → DRAM.
  • Инструменты: Verilator, Vivado, Python-библиотека для генерации инструкций.

Быстрый старт

git clone https://github.com/tiny-tpu-v2/tiny-tpu.git
cd tiny-tpu
make sim        # симуляция
make fpga       # битстрим для PYNQ-Z2

Примеры

  • examples/mnist/ — инференс MNIST за 3 мс.
  • examples/resnet/ — слой ResNet-18 (пока симуляция).

Лицензия

MIT.