be processing realtime data such as voice or may require this much processing, some applications video, program execution is required to keep up with may. The actual processing requirements will depend on incoming data, otherwise throughput will be sluggish, the application and functions instantiated. As with other intermittent, or simply come to a halt as the DSP components, if a wide range of processing is expected, struggles to keep up with incoming data. A block diagram the design has to consider the maximum requirement, of a typical DSP is shown in Figure 2.3-14. even in the case where excess processing capability may To prevent this from happening, DSPs are especially exist in some operating modes: designed to improve data throughput, taking advantage of a number of techniques. Often, one vendor will focus Envelope detection (AM) on one technique and refine that while a different Phase/frequency detection (PM/FM) vendor will focus on a different optimization technique. Phase/frequency correction Both result in faster throughput, but with slightly dif- Equalization of a TDM burst ferent advantages. Some of these techniques are listed Spread/de-spread a CDMA signal here: Voice coding/decoding Program and data look-ahead caching These are just a few of the functions that are typically Multiple address generation performed. Since the DSP is programmable, any func- Separate program and data memory tion that can be coded can be executed. Additionally, Address Generator #1 Address Generator #2 Program Sequencer L0-L3 10-13 MO-M3 L4-L7 14-17 M4-M7 Counter Logic Logic Modulus Modulus Logic ADDER Logic ADDER Status Logic Program Memory Address Bus Data Memory Address Bus Program Memory Data Bus Data Memory Data Bus SHIFTER Block Floating Point Logic Shifter Exponent Logic MR2 MR MRO RESULT BUS Figure 2.3-14 General purpose digital signal processor (DSP). CHAPTER 2.3 Software defined radio since the code is software, it can be upgraded or changed signals can often be considered to have little envelope, at any time to 