Digital signal processor
A digital signal processor (DSP) is a specialized microprocessor designed specifically for digital signal processing, generally in real-time. DSPs can also be used to perform general-purpose computation, but they are not optimised for this function.
Rather than general computations, DSPs usually have an instruction set (ISA) optimised for the task of rapid signal processing, often using the following techniques:
- Multiply-accumulate (MAC) operations (good for all kinds of matrix operations).
- Deep pipelining.
- The ability to act as a direct memory access device for the host environment.
- Saturation arithmetic , in which operations that produce overflows will accumulate at the maximum (or minimum) values that the register can hold rather than wrapping around (maximum+1 doesn't equal minimum as in many general-purpose CPUs, instead it stays at maximum).
- Separate program and data memories (Harvard architecture).
- Most DSPs are fixed-point, because in real world signal processing, extra precision is often not required, and there is a large speed benefit; however, floating point DSPs are common for scientific and other applications where precision is required.
- Specialized instructions for modulo addressing in ring buffer s and bit-reversed addressing mode for FFT cross-referencing.
Generally, DSPs are dedicated integrated circuits, however DSP functionality can also be realised using Field Programmable Gate Array chips. Present-day general-purpose microprocessors also have ideas and influences from digital signal processors, such as the MMX extensions in the Intel IA-32 architecture.
In 1978, Intel released the 2920 as an "analog signal processor". It had an on-chip ADC/DAC with an internal signal processor, but it didn't have a hardware multiplier. The 2920 was not successful in the market. In 1979, AMI released the S2811. It was designed as a microprocessor peripheral. Its register had to be initialized by the host, and the program had to be downloaded from the host. The S2811 was likewise not successful in the market.
In 1979, Bell Labs introduced the first Single Chip Digital Signal Processor (DSP), the Mac 4 Microprocessor. Then, presented in 1980 was the first stand-alone complete DSP, the NEC µPD7710 and AT&T DSP1 in the ISSCC '80. Both processors were inspired by the research in PSTN telecomunications. In this year, NEC started the production of the µPD7710, the world's first production of a completed DSP.