C-based techniques for building high-performance, FPGA-accelerated software applications
Circuits, Devices, and Systems
C-based Techniques for Optimizing FPGA Performance, Design Flexibility, and Time to Market
Forward written by Clive "Max" Maxfield.
High-performance FPGA-accelerated software applications are a growing demand in fields ranging from communications and image processing to biomedical and scientific computing. This book introduces powerful, C-based parallel-programming techniques for creating these applications, verifying them, and moving them into FPGA hardware.
The authors bridge the chasm between "conventional" software development and the methods and philosophies of FPGA-based digital design. Software engineers will learn to look at FPGAs as "just another programmable computing resource," while achieving phenomenal performance because much of their code is running directly in hardware. Hardware engineers will master techniques that perfectly complement their existing HDL expertise, while allowing them to explore design alternatives and create prototypes far more rapidly. Both groups will learn how to leverage C to support efficient hardware/software co-design and improve compilation, debugging, and testing.
Understand when C makes sense in FPGA development and where it fits into your existing processes
Leverage C to implement software applications directly onto mixed hardware/software platforms
Execute and test the same C algorithms in desktop PC environments and in-system using embedded processors
Master new, C-based programming models and techniques optimized for highly parallel FPGA platforms
Supercharge performance by optimizing through automated compilation
Use multiple-process streaming programming models to deliver truly astonishing performance
Preview the future of FPGA computing
Study an extensive set of realistic C code examples