Hardware Accelerator
What Is a Hardware Accelerator?
Hardware accelerators are purpose-built designs that accompany a processor for accelerating a specific function or workload (also sometimes called “co-processors”). Since processors are designed to handle a wide range of workloads, processor architectures are rarely the most optimal for specific functions or workloads.
Systems composed of processors and hardware accelerators bring the benefits of software programmability for much of the software stack run on the processor, while delivering the superior power and performance for functions run on a purpose-built hardware accelerator.
Designers are increasingly turning to hardware accelerators as a means to improve the power, performance, and area (PPA) of processor-based systems independent of semiconductor process scaling.
Digital signal processing (DSP) functions like video codecs, communications error corrections and filtering, and artificial intelligence (AI) learning and inferencing algorithms are examples of functions that benefit significantly, in terms of PPA, when implemented as hardware accelerators.
How Do Hardware Accelerators Work?
Hardware accelerators are custom designed to perform a single task versus processors that must handle any task defined by a software program. As such, their operation (how they work) will vary depending on what function is captured.
Since hardware accelerators are companions to processors, they generally require communication with a processor to map a processor instruction or function to the hardware accelerator to initiate processing. Hardware accelerator data access also varies. Some accelerators have direct memory (data) access, and some rely on the processor to write/read data from/to the accelerator. Since data access can be a performance bottleneck, careful attention must be given to the design of the accelerator, processor, and memory subsystems to ensure high performance.
Design Your Hardware Accelerators with Cadence
Cadence offers tools for every step in the hardware accelerator design process. From Stratus High-Level Synthesis, to Genus Logic Synthesis, Innovus Implementation System, Conformal Low Power, and Joules RTL Power Analysis, Cadence tools speed the design of hardware accelerators from C++ to GDSII.