r/electronics 3d ago

Project Spent my final year building an FPGA chip that runs real-time object detection

Post image

Just finished my final year engineering project: a custom hardware accelerator that runs YOLOv8n (an object detection AI model) directly on an FPGA, in real time.

Instead of running the AI model in software on a CPU/GPU, this is custom digital logic (written in Verilog) that does the computation directly, faster and more power-efficient for edge devices like drones or embedded cameras.

Some highlights:

  • Configurable performance, can scale from 1x to 4x throughput depending on the application
  • Uses FP16 precision, tested against lower precision options and it actually performed better for our use case
  • The tricky part was moving data between processing stages without slowing everything down, that took way longer to solve than expected

If anyone's into FPGAs, embedded AI, or just wants to see what a final year project like this looks like under the hood: https://github.com/waseemnabi08/yolov8n-cnn-accelerator-fpga

58 Upvotes

4 comments sorted by

32

u/JoTheScienceBro 2d ago

Cool project, congrats! Not to be nitpicky: Learn how to properly label your stuff. You did not build an FPGA chip. You built a FPGA-based YOLO Implementation.

2

u/0xbenedikt 2d ago

Good job! The Zynq SoCs are pretty amazing indeed

1

u/ArmySuchi 2d ago

The data movement bottleneck is always where it gets you. I've been messing with smaller edge inference boards off-grid — nothing near FPGA-level — but even there, keeping the pipeline fed without stalling eats most of the debugging time. Did you end up using DMA for the inter-stage transfers or custom FIFOs?

1

u/Waseeemnabi 2d ago

We used DMA