Faster, Better, and Cheaper Alternatives to FPGA-based Accelerators

-based "accelerator" cards are commonly used to expand system capabilities beyond those of a . Such cards usually contain multiple network interfaces, a high-end , and some number of licensed IP cores inside the FPGA for specific tasks such as , , , or even storage-related mathematical operations. between the general-purpose CPU and the is generally done via a multi-lane connection between the two subsystems.

While system design such as this offers significant increases in system performance, this approach has several drawbacks, most notably the long development cycles of FPGA code, limits on certain types of resources in the FPGA, and the expense of the FPGA itself and the licensed IP cores contained within. In addition, the task of the system designer now includes the added responsibility of partitioning the workload in an efficient and effective manner to achieve maximum throughput and minimal latency in the data path.

There is, however, an alternative approach.