- Home /
- Design Services /
- DSP Software Optimization
Processing requirements of an application varies depending on its nature and the type of the target platform on which it is going to run. Moreover, the same application which can execute in a small processing budget on a high end processing platform can be as much as being out of scope of low end processing platform. Algorithms/system development teams generally over-prescribe the target platform for the given application. This results in the higher price and greater power consumption for achieving the same performance goals.
Renzym offers optimization services at every stage of an embedded software development to help our customers to get the job done in a minimum of computational resources. Customer has to settle between or in-between high processing speed and low memory usage. In case of portable/mobile applications, this compromise is dictated by the power/battery requirement of the end user application. Optimization work is performed at different levels of development.
High-level Optimization
High-level optimization involves selection/development of efficient algorithms to achieve the desired goal. A simple example can be selection between the time-domain filtering and frequency-domain filtering techniques for a given application – keeping in mind the target platform. Development and verification is carried out in tools like Matlab/Octave in this level.
Middle-level Optimization
Middle-level optimization involves the best usage of numerical methods, data-structures and program design. Here things like fixed-point implementation for fixed-point processors, using linear or circular memory buffers, static or dynamic memory allocations, cache-optimized implementation – depending on the target platform and end-application – are carried out. C/C++ languages provide the natural platform for performing middle-level optimizations.
Low-level Optimization
Finally, low-level optimizations are performed to take maximum advantage of the target platform. It involves use of intrinsic, assembly programming (inline or otherwise) to fully utilize the parallel processing resources and hardware accelerators which are otherwise not integrated in the high-level language compilers of that particular platform. Target processors can be Intel’s general purpose processors, DSPs, ARM and MIPS embedded processors, ASIPs (Application Specific Instruction-Set Processor) and ASICs (Application Specific Integrated Circuit).
Past Experience | Renzym has a strong engineering team which has served customers in the following areas in the past
|
---|---|
Processing Platforms | Renzym team has a rich experience of working on a wide range of processing platforms. It includes DSPs, ASICs, Processor cores on FPGA, and Microcontrollers. |
Applications | The list of the computationally intensive applications is ever-growing. Advances in the processing capacity are matched by the ever increasing complexity of the modern applications. Renzym offers optimization services for the standard codecs as well as custom signal processing applications. Following list provides a quick view of the range of codecs which have been optimized by the Renzym’s optimization team. |
Write Your Own Review
Name | DSP Software Optimization |
---|---|
Overview | Processing requirements of an application varies depending on its nature and the type of the target platform on which it is going to run. Moreover, the same application which can execute in a small processing budget on a high end processing platform can be as much as being out of scope of low end processing platform. Algorithms/system development teams generally over-prescribe the target platform for the given application. This results in the higher price and greater power consumption for achieving the same performance goals. Renzym offers optimization services at every stage of an embedded software development to help our customers to get the job done in a minimum of computational resources. Customer has to settle between or in-between high processing speed and low memory usage. In case of portable/mobile applications, this compromise is dictated by the power/battery requirement of the end user application. Optimization work is performed at different levels of development. High-level OptimizationHigh-level optimization involves selection/development of efficient algorithms to achieve the desired goal. A simple example can be selection between the time-domain filtering and frequency-domain filtering techniques for a given application – keeping in mind the target platform. Development and verification is carried out in tools like Matlab/Octave in this level. Middle-level OptimizationMiddle-level optimization involves the best usage of numerical methods, data-structures and program design. Here things like fixed-point implementation for fixed-point processors, using linear or circular memory buffers, static or dynamic memory allocations, cache-optimized implementation – depending on the target platform and end-application – are carried out. C/C++ languages provide the natural platform for performing middle-level optimizations. Low-level OptimizationFinally, low-level optimizations are performed to take maximum advantage of the target platform. It involves use of intrinsic, assembly programming (inline or otherwise) to fully utilize the parallel processing resources and hardware accelerators which are otherwise not integrated in the high-level language compilers of that particular platform. Target processors can be Intel’s general purpose processors, DSPs, ARM and MIPS embedded processors, ASIPs (Application Specific Instruction-Set Processor) and ASICs (Application Specific Integrated Circuit). |
Past Experience | Renzym has a strong engineering team which has served customers in the following areas in the past
|
Processing Platforms | Renzym team has a rich experience of working on a wide range of processing platforms. It includes DSPs, ASICs, Processor cores on FPGA, and Microcontrollers. |
Applications | The list of the computationally intensive applications is ever-growing. Advances in the processing capacity are matched by the ever increasing complexity of the modern applications. Renzym offers optimization services for the standard codecs as well as custom signal processing applications. Following list provides a quick view of the range of codecs which have been optimized by the Renzym’s optimization team. |
You have no items to compare.