Tested and effective methods for speeding up DSP algorithms
Jun 11 2007 (3:15 AM), Embedded.com
Many electronics and digital products use digital signal processing (DSP) algorithms in them. Before any algorithm gets into the product, an optimization process is applied to it. The optimization process ensures that the algorithm uses the least possible resources from the system, while delivering the performance the design requires. The optimization is performed to save memory space, clock cycles, and power levels.
Reducing the required memory means shrinking the algorithm foot-print, and reducing the cycle consumption means speeding the algorithm. In most cases power savings have resulted with just these two kinds of optimizations.
But understanding algorithm, processor architecture, compiler and fine 'C' and assembly language practice is required to efficiently optimize an algorithm. Since early days, assembly coding has been used to achieve these goals.
But with the availability of powerful 'C' compliers it is now possible for most embedded programmers to successfully perform both source and algorithm level optimization if they follow some basic tested and effective guidelines.
This article describes the optimization process basics and various practical 'C' level skills needed to accelerate an algorithm. Processor and complier specific options are excluded as they are typically found in the respective vendor documents.
To read the full article, click here
Related Semiconductor IP
- Root of Trust (RoT)
- Fixed Point Doppler Channel IP core
- Multi-protocol wireless plaform integrating Bluetooth Dual Mode, IEEE 802.15.4 (for Thread, Zigbee and Matter)
- Polyphase Video Scaler
- Compact, low-power, 8bit ADC on GF 22nm FDX
Related White Papers
- Speeding up the CORDIC algorithm with a DSP
- Shift Power Reduction Methods and Effectiveness for Testability in ASIC
- DSP hardware extensions speed up 3G wireless multimedia
- Speeding DSP solutions with FPGAs
Latest White Papers
- Reimagining AI Infrastructure: The Power of Converged Back-end Networks
- 40G UCIe IP Advantages for AI Applications
- Recent progress in spin-orbit torque magnetic random-access memory
- What is JESD204C? A quick glance at the standard
- Open-Source Design of Heterogeneous SoCs for AI Acceleration: the PULP Platform Experience