Chapter 8

Code Optimization and Power Management

We have introduced arithmetic, memory architecture, programming, and real-time implementation issues for the Blackfin processors in previous chapters. This chapter focuses on code optimization and power management for developing efficient embedded systems with the Blackfin processor. We explore how to optimize a program with faster execution speed, efficient resource utilization, and power-saving features. At the end of the chapter, an FIR filter for sampling rate conversion is used for hands-on experiments.

8.1    CODE OPTIMIZATION

Because most embedded systems are real-time systems, code optimization in term of execution speed is an important performance index. Increasing execution speed with code optimization will result in decreasing power consumption; however, this may come at the cost of increasing memory usage. In other situations, reducing memory usage will result in lower power consumption due to fewer memory accesses, but may increase execution time. Speed, memory, and power optimizations determine the overall cost of the embedded systems. For example, speed optimization allows the choice of a slower but less expensive processor; memory optimization reduces external memory size; and power optimization means fewer cooling requirements and cheaper power supply.

In previous chapters, we have used a simple technique for optimizing C programs by turning on the Enable optimization option in the C compiler. In this chapter, we ...

Get Embedded Signal Processing with the Micro Signal Architecture now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.