Within video applications, there are several algorithms and concepts which are common across multiple standards. To assist in these applications, all Stretch processors include a dedicated Programmable Accelerator. The Programmable Accelerator is a series of highly optimized functions implemented in hardware. These functions provide the acceleration needed to perform the basic algorithms that make up the target applications and which are exposed as APIs for the system programmer. The APIs provide a highly accelerated and configurable way to access the accelerators at an application level.
The library of available functions includes:
- Motion Estimation for Video encoding
- Entropy Encoding for H.264 (CABAC and CAVLC)
- Encryption and Decryption (AES, DES, 3DES)
- Audio CODECs (AC3, AAC, MP3, 19 CODECs in total)
The Programmable Accelerator provides a powerful and versatile resource for system designers looking for high-performance, cost-effective solutions. Off-loading common algorithms to the Programmable Accelerator frees up processor cycles that can then be used for custom functions defined by the system designer.