We propose to build a n-body simulator using systolic arrays entirely on an FPGA. Our engine will use a connected line of processing elements to feed streaming bodies across the entire pipeline, calculating inter-body forces along the way. All data will be stored in the FPGA's BRAM and sent back to a PC via UART to verify correctness. For comparison, we will also be implementing an optimized n-body simulator on a GPU with CUDA. The goal is to achieve comparable or even greater performance with the FPGA by leveraging pipelining, DSP blocks, and memory optimizations.
Proposal PDF: View Project Proposal (PDF)
Milestone Report PDF: View Milestone Report (PDF)