Vector Processing as a Soft Processor Accelerator

Jason Yu, Christopher Eagleston, Christopher Han-Yu Chou, Maxime Perreault, Guy Lemieux

ACM Transactions on Reconfigurable Technology and Systems · 2009 · 68 citations · 27 references

Concepts

TL;DR

FPGA soft processor systems typically rely on dedicated hardware modules or accelerators to accelerate data‑parallel applications. This work introduces VIPERS, a soft vector processor architecture that serves as a general‑purpose accelerator mapping efficiently onto FPGAs and offering scalable performance for a modest area footprint. VIPERS enables area‑versus‑performance trade‑offs by scaling functional units and register‑file bandwidth with a single parameter, and can be further tuned with secondary parameters to add or remove features for specific applications. VIPERS delivers a purely software‑oriented development model with a fixed ISA, a single accelerator that supports multiple applications, and achieves up to 44× speedup over a Nios II/s processor using 32 lanes while consuming only 26× the area.

Abstract

Current FPGA soft processor systems use dedicated hardware modules or accelerators to speed up data-parallel applications. This work explores an alternative approach of using a soft vector processor as a general-purpose accelerator. The approach has the benefits of a purely software-oriented development model, a fixed ISA allowing parallel software and hardware development, a single accelerator that can accelerate multiple applications, and scalable performance from the same source code. With no hardware design experience needed, a software programmer can make area-versus-performance trade-offs by scaling the number of functional units and register file bandwidth with a single parameter. A soft vector processor can be further customized by a number of secondary parameters to add or remove features for a specific application to optimize resource utilization. This article introduces VIPERS, a soft vector processor architecture that maps efficiently into an FPGA and provides a scalable amount of performance for a reasonable amount of area. Compared to a Nios II/s processor, instances of VIPERS with 32 processing lanes achieve up to 44× speedup using up to 26× the area.

References

27