Digital Signal Processor: Block Diagram, Types, Architecture, Advantages
Table of Contents
The processor is a straightforward chip or logic circuit that controls the processing unit by responding to both input processes and simple instructions. In electronic devices such as smartphones, embedded systems, laptops, computers, etc., the processor is a crucial component. ALU and the control unit are a processor’s two most important parts. Depending on the need, different types of processors, such as microcontrollers, microprocessors, digital signal processors, embedded processors, etc., are available on the market. Digital signal processors are one of the processor types covered in this article.
What is a Digital Signal Processor?
The definition of a digital signal processor is that it is a particular class of microprocessor made on integrated metal oxide semiconductor circuits. DSPs are widely used in a wide range of industries, including consumer electronics like mobile phones, HDTV (high-definition television) products, disk drives, and telecommunications. They are also used in a wide range of industrial applications, including digital image processing, audio signal processing, speech recognition systems, sonar, and radar.
How Does Digital Signal Processor Work?
The primary methods by which a digital signal processor functions are the digitization and subsequent mathematical manipulation of real-world signals such as audio, voice, temperature, and video. A DSP works quickly to add, subtract, multiply, and divide among other mathematical operations. The main parts of a digital signal processor are input/output, compute engine, program memory, and data memory.
- The programs that process data are kept in program memory.
- The data that needs to be processed is stored in data memory.
- Mathematical operations are carried out by the compute engine, which also accesses data from the data memory and programs from the program memory.
- Different purposes of input and output are to connect to the outside world.
Digital Signal Processor Block Diagram
Below is a block diagram of a digital signal processor.
- A microphone is used as a transducer in the block diagram above, converting the sound signal into an electrical signal.
- After that, an op-amp is used to condition an analog electrical signal that was generated by a microphone.
- An LPF (low pass filter), which is found on an ADC’s input, is used as an anti-aliasing filter. Wideband signals are band-limited using this filter.
- A straightforward ADC converter unit then uses analog signals and outputs binary digit streams.
- The DSP is shown as the system’s nerve center in this block diagram. At the moment, DSPs with high data throughputs, specialized instruction sets, and high speed are made using CMOS ICs.
- The DAC then transforms the digital signal into an analog one. Another LPF used to smooth the output by removing pointless high-frequency components is the smoothing filter.
- The output transducer in this case is a speaker. Therefore, you can use anything else based on your needs.
Features
The features of digital signal processing include the following.
- The majority of digital signal processors have a strong data path and the ability to quickly transfer large amounts of data to memory.
- The primary purpose of digital signal processors is to support repetitive and computationally demanding tasks.
- Digital signal processors have two key characteristics: a data path with multiple-access memory architectures, and quick multiply-accumulate units.
- These processors offer distinctive instruction sets to improve hardware effectiveness.
- The processor’s performance is frequently improved through the use of pipelines. Therefore, pipelining is currently used by the majority of processors, but as performance is improved, pipelining will make programming much more difficult.
Characteristics
The characteristics of a digital signal processor include the following.
- When compared to memory used to store data, memory used to store programs is different.
- DSPs can provide the best performance.
- Modulo addressing and reversed bit addressing both have specific instructions.
- DSPs don’t offer hardware that supports multiple tasks.
- DSPs include specially designed architecture to fetch multiple data.
- In host or supporting roles, this processor can function as a DMA (direct memory access) device.
- Special hardware is used to carry looping at less cost.
- The DSPs typically have architecture to optimize various features, including the ones listed below.
- A unit handles floating numbers within the data flow path directly.
- The multipliers or accumulators that are available are extremely parallel.
- The majority of registers found in modern computers shift the data to the lowest bit in the event of an overflow. Digital signal processors, on the other hand, keep the overflow at the maximum point itself.
- In order to speed up the calculations, fixed point arithmetic is typically used.
Digital Signal Processor Architecture
The architectures of the digital signal processors are;
- Von Neumann Architecture.
- Harvard Architecture.
- Super Harvard Architecture.
Von Neumann Architecture
The central components of Von Neumann’s design for a digital signal processor are a single memory and a single bus for data entry and exit from the CPU (central processing unit). Any two numbers must be multiplied by at least three CLK cycles, with one CLK cycle being used to transfer each of the three numbers via the bus from the memory to the CPU.
We assume that the output will remain inside the central processing unit for additional manipulation, so we don’t calculate the amount of time it will take to transmit it back to memory. When you are content to carry out all necessary tasks in serial, this type of architecture is quite suitable. Currently, Von Neumann architecture is used by the majority of computers, but other architectures are sometimes required for very fast processing.
Harvard Architecture
The work completed at Harvard University in the 1940s under the direction of Howard Aiken is referred to as Harvard Architecture. It has two separate memories for the program instructions and data, as well as separate buses for each, as shown in this design. Data and program instructions can be fetched jointly when the buses operate independently, increasing speed compared to a single bus. DSPs currently use this dual bus architecture.
Super Harvard Architecture
The following diagram represents DSP’s super Harvard architecture. SHARC DSP, which is a shorthand for Super Harvard Architecture, is the name Analog Devices gave to their new ADSP-211xx and ADSP-2106x families of DSPs to describe how they work internally.
Some features were added to this architecture in order to increase throughput. While the super Harvard architecture digital signal processors are optimized in a number of ways, an instruction cache and an I/O controller are important enough to be included.
Types of Digital Signal Processor
There are two types of digital signal processors: fixed-point processors and floating-point processors.
Fixed Point Digital Signal Processor
Every number can be specified in a fixed-point digital signal processor using at least 16 bits, though other lengths are also possible. Different patterns can be used to represent the number.
The term “fixed-point” refers to the assumption that the fractional point position is both fixed and identical for both the operands and the operation’s output.
Because they consume little power and are inexpensive, fixed point processors are used in a variety of flexible embedded applications. The fixed-point digital signal processor are; TI’s TM320C54x, ADI DSP BF53X, TM320C55x, TM320C64x, TM320C62x and Motorola MSC810x.
Floating Point Digital Signal Processor
Floating-point digital signal processors typically store each value using a minimum of 32 bits. The non-uniform spacing of the signified numbers is what makes floating-point DSP unique. Fixed-point numbers, which are necessary to implement counters and signals that are received from the analog to digital converter and transmitted to the digital to analog converter, can easily be processed by floating-point digital signal processors.
The operations of fixed-point and floating-point DSPs can both be performed by SHARC DSPs with the same ease of design, optimization, and execution. The programs of floating-point DSPs are simpler than those of fixed-point DSPs, but they are typically more expensive and use more power. The types of floating-point DSPs are TI’s TMS320c67x and ADI ADSP 2116x/2126x.
Digital Signal Processor Instruction Sets
Below is a discussion of the TMS320F/C24x DSP assembly language instructions. These instruction sets merely support general-purpose applications like high-speed control & multiprocessing as well as operations on signals that require intensive numerical processing. Because code created for the ‘C2x can be recollected to run on the ‘C24x, the ‘C24x instruction set pairs well with the ‘C2x instruction set. Below is a list of the TMS320F/C24x DSP’s instruction set.
- Accumulator, arithmetic & logic instructions.
- Auxiliary register & data page pointer instructions.
- TREG, PREG & multiply instructions.
- Branch instructions.
- Control instructions.
- I/O & memory operations.
It is possible to arrange the instructions alphabetically. Here, it is specified how many words an instruction takes up in program memory as well as how many cycles it must complete. It is assumed that internal data dual-access memory and internal program memory will be used to execute all of these instructions.
DSP Memory Architecture
Traditional DSPs use the Von Neumann architecture for memory management, storing both the data and the program in the same amount of memory. Even though this straightforward architecture uses multiple processor cycles to carry out a single instruction, this is because both program and data are transported on the same bus.
Separate memories were used to store the program and the data in order to increase the operation speed. This architecture is referred to as Harvard Architecture because each memory is given a separate set of address and data buses.
Even though using separate memories for data and instructions will speed up processing, it won’t completely solve the issue. Because many DSP instructions require more than one operand, using a single data memory may result in continuously fetching the operands, increasing processing delay. This problem can be resolved by using two separate data memories to store the operands separately. As a result, both operands can be easily fetched simultaneously during a CLK cycle.
Although the aforementioned architecture increases operation speed, it also necessitates more hardware and interconnections, which increases system complexity and costs. As a result, when selecting the memory architecture for a digital signal processor, speed and cost should be traded off.
Advantages
The advantages of a digital signal processor include the following.
- Possibility of error detection & correction.
- Overall noise is less.
- Digital signals are simple to encrypt.
- Simple data storage.
- In digital processing systems, it is simple to modify a few commands or a few lines of code.
- Transmission of more data is possible.
- In a digital system, the DSP can be cascaded without any loading issues.
- DSP systems work through a broader range of frequencies.
- A complex signal processing algorithm can be easily implemented by employing the DSP method.
- A digital programmable system’s program can be easily changed to change the way the DSP operates.
- DSP systems are upgradeable because they are controlled by software.
- DSPs are lightweight & more compact.
Disadvantages
The disadvantages of a digital signal processor include the following.
- Most of the digital signal processors are expensive.
- Compared to analog communications, digital communications require a high bandwidth to transmit the data.
- When compared to analog signal processors, digital signal processors use more transistors, which draw more power.
- The use of additional components will increase the complexity of the DSP system.
- Each DSP has a unique hardware architecture and set of software instructions, so programming the device required highly qualified engineers.
Applications
The applications of a digital signal processor include the following.
Data compression, digital image processing, audio coding, video coding, image compression, signal processing for control systems, telecommunications, seismology, biomedical engineering, etc. are just a few of the applications for DSP. Other applications include processing of audio and speech, radar, sonar, and other sensor array processing, statistical signal processing, spectral density estimation, data compression, digital image processing, and data compression.