What is a DSP
[Next page] [previous page] [previous end of page] [end of page] [level up] [PDF file] [epub file] [other scripts]
2.9 Digital signal processors (DSP)
Digital signal processors are a class of microprocessors that have been optimized for computing digital filters.
2.9.1 Classic calculator
The structure of a classic computer according to John von Neumann [GJMW84] is shown in Figure 2.72. With this computer architecture, the program and data are stored in the same memory. Data is shifted from the memory to the control unit and the arithmetic unit (or vice versa) via a data bus. In the control unit, the commands from the data stream are decoded and converted into control signals for the arithmetic unit or the memory. The arithmetic unit generates the next address, also on the basis of arithmetic operations.
|Figure 2.72 .:||von Neumann structure of a computer. Abbreviations: Op.-Reg .: operation register; Result reg .: result register; Zst.-Reg .: status register; Program counter: program counter; Index reg .: index register|
The detailed process of a calculation is shown in Figure 2.73.
- Output the address of the command to the memory.
- Load command into control unit
- If the command in the control unit contains the address of the number to be processed, load this
- possibly the operand is loaded from memory.
- possibly the result will be written back to the memory.
|Figure 2.73 .:||Sequence of an operation in a computer with the von Neumann structure|
Figure 2.74 shows the phases of the execution of a micro-machine instruction in a microprocessor [Str98b]. The micro-machine instructions are processed in four phases.
- Microinstruction addressing phase. The address of the next command is generated here
- Microinstruction fetch phase: Here the instruction is fetched.
- Microinstruction decoding phase: Under certain circumstances, many can be generated from one instruction (e.g. calculating the sin value requires a microprogram)
- The microinstruction execution phase
Modern processors fetch and decode addresses in advance. While time-consuming commands are processed, we speculate how the calculation could continue. Modern microprocessors owe a significant portion of their performance to this strategy.
|Figure 2.74 .:||Processing of a machine command in a microcomputer|
Digital signal processors differ from classic microprocessors in that they have several arithmetic units and that these are designed in such a way that the operations are completed in one clock cycle. If this is not possible, the execution time of a command should be predetermined.
2.9.2 Digital signal processors
Digital signal processors are used for the following processes:
|Figure 2.75 .:||Block diagram of the Motorola signal processor DSP56001 [Mot90]|
- Digital filters
- FIR filter (Finite Impulse Response)
- IIR filter (Infinite Impulse Response)
- Hilbert transformations
- Adaptive filters
- Signal processing
- Speech compression
- Energy calculation
- Data processing
- Encoding and decoding
- Scalar, vector and matrix arithmetic
- Transcendental functions (function generator)
- Pseudo-random numbers, deterministic noise
- Spectral analysis
- FFT Fast Fourier Transform
- DFT Discrete Fourier Transform
- Sine / Cosine Transformations
|Figure 2.76 .:||Block diagram of the sequence of an arithmetic operation in the Motorola signal processor DSP56001 [Mot90]|
The signal processors are used in the following devices, among others:
- Tone generators
- Telephony (multi-frequency dialing)
- Loudspeaker telephony
- Noise suppression (anti-noise)
- Adaptive Di ﬀ erential Pulse Code Modulation (ADPCM) encoder and decoder
- Data communication
- High speed modems (56k modems)
- Fax machines
- Radio communication
- Mobile telephony
- Tap-proof radio connections
- Radio station
- Array processors
- Graphics accelerator
- Image processing
- Pattern recognition
- OCR (character recognition)
- Image recovery
- Image compression
- Image enhancement
- Image recognition and processing for robots
- Spectral analysis
- Function generators
- Data acquisition
- Audio signal processing
- Digital AM / FM radio transmitters / receivers
- Digital hi-fi preamplifier
- Music synthesizer
- Virtual Dolby Surround processors (with two instead of 5 speakers)
- High speed regulations
- Laser printer
- Hard drives
- Vibration analysis
- High performance electric motors
- Jet engines
- Cat scanner
- X-ray machines with minimal doses
|Figure 2.77 .:||Block diagram of the MAC unit of the Motorola signal processor DSP56001 [Mot90]|
In contrast to a classic microprocessor, a DSP has several data and address buses (Figure 2.75 These buses allow several arithmetic operations to be carried out simultaneously in one clock cycle. The sequence, which is nicely described in the Motorola data books [Mot90], for example, is shown in Figure 2.76. Two registers, X0 and X1, or Y0 and Y1, work on a multiplier. They are connected to the respective data buses (X and Y). The multiplier is followed by the adder, so that in the output registers, for example one cycle A = X0 ∗ Y 0 + A. Shift register and rounding units complete the ALU (Arithmetic Logic Unit)
The multiplication / addition is essentially carried out by a MAC unit (Figure 2.77). The data paths have different widths. a comparison with the equations for IIR filters or FIR filters (Section 2.6.2 shows that the MAC unit can calculate a node of these filter types in one cycle. Table H.1 shows a summary of benchmark results for the DSP 56001 (Clock frequency 27 MHz) from Motorola A comparison with microprocessors like the Intel family shows that these need about five to ten times the clock frequency before they can calculate an FFT as fast as a DSP.
[Next page] [previous page] [previous bottom of page] [top of page] [level up]
© 2002-2017 Ulm University, Othmar Marti, License information
- What acid is identified by barium chloride
- Is the past deterministic or random
- Who pays flat-rate maintenance
- Which app is better than Instagram
- How do we get customers from LinkedIn
- Why don't people show me empathy?
- What if everyone won the lottery?
- Theoretical physicists believe that we are alone
- Is the ethnic affiliation established
- Competitive intelligence is a growing field
- What did Putin do for Russia?
- What does I mean?
- What does chronic pain mean?
- Can medical students join the DRDO
- What is Dokken's most successful song
- What pets are illegal in India
- How did the smoking ban come about
- Japan is smarter than the US
- How to become a Juris Doctor
- Waymo is still owned by Google
- How did Martin Dougiamas develop Moodle
- Who can explain the Eco Cooler model
- What is automatic model optimization
- How does fluconazole work
- Is Jehovah actually a fallen angel?
- How macros can be replaced in C.
- What makes prison successful for society
- Is Ron DeSantis a racist
- Competitive intelligence is a growing field
- What is the Portuguese word for employer
- Who is Richard Ramirez
- Where is Assad now after leaving Syria
- What are the health benefits of simhasana
- Can I do automotive engineering after college?