A Digital signal processor also called a DSP chip, is a kind of microprocessor tool especially suitable for the digital signal processing operation. Its host application is to realize various digital signal processing algorithms in real-time and quickly.
Features of Digital Signal Processor
Using Harvard structure, separate program memory, and data memory.
A special instruction set for single instruction stream multiple data stream (SIMD) operations.
Parallel processing is possible, but multitasking is not supported.
When used in a host environment, it can operate as direct memory access (DMA) device.
Obtain data from the analog-to-digital converter (ADC), and the final output is the data converted into an analog signal by the digital-to-analog converter (DAC).
Able to implement one or more multiply and accumulate (MAC) operations in one instruction cycle. Therefore, multiple multiplication and accumulation operation units are integrated into the DSP, which can perform parallel multiplication and accumulation operations.
Able to complete multiple reads of the memory within one instruction cycle. Therefore, multiple on-chip buses and multi-port on-chip memories are integrated with the DSP.
To speed up the operation in the processor, multiple address generation units are integrated into the DSP to support circular addressing and bit flip addressing.
Most of the operations in the processor are repetitive operations. For ease of use, most DSPs support this repetitive operation, without the need to write additional instructions for repetitive operations.
Most DSPs provide multiple serial or parallel I/O interfaces, as well as special I/O interfaces to process special data to reduce costs and improve output/input performance.
Choice of digital signal processor
Based on the introduction of the information, the selection of digital signal processor has the following principles, which are summarized as follows:
1. Algorithm format. The fixed-point algorithm has a small dynamic range. For example, the 16-bit fixed-point algorithm has a dynamic range of only 96dB, which is prone to overflow problems, but it has low cost and low power consumption. So most digital signal processors are fixed-point, accounting for about 67%. Floating-point algorithms have a large dynamic range, such as 32-bit floating-point algorithms, with a dynamic range of 1536dB. The processing speed is much higher than that of fixed-point, and the bus width is wider than that of fixed-point. It is easier to program, but the cost is higher and the power consumption is higher. . Floating-point digital signal processors are mostly used in high-end products.
2. Data width. All floating-point DSPs are 32-bit wide, while fixed-point DSPs are mostly 16-bit wide, and there are also 24-bits, such as Motorola's DSP563xx series; and Zoran's ZR3800 series, which are 20-bits. The data width directly affects the size of the DSP chip, the number of package pins, and the capacity of the peripheral memory, and therefore directly affects the cost of the DSP.
3. Speed. Speed is the most important consideration when choosing DSP. The speed of DSP is usually the time of the instruction cycle, but also refers to the calculation time of the core functions such as FIR or IIR filter. Some DSPs use a very large instruction word group (VLIW) structure, which can execute multiple instructions in one cycle. It is closely related to the operating frequency of the clock.
4. Memory structure. The memory structure, including the bus structure, has a great influence on the performance of the DSP. On the one hand, how to read data and instructions when performing operations, different methods have different speeds. Read one instruction and two pieces of data in one instruction cycle for fast MAC operation. This structure can be a multi-port memory, a separate memory for instructions and data, or an instruction buffer. On the other hand, the memory structure also includes the size of the memory supported on-chip and off-chip. Most fixed-point DSPs are aimed at the embedded system market, so its memory is small. Although some floating-point DSPs have small on-chip memory, they need a large peripheral memory, such as TI's TMS320C30.
5. Power consumption. Many DSPs are used in portable devices, such as mobile phones, PDAs, and portable audio players. Power consumption is a major consideration for these products. Many processor suppliers reduce the operating voltage, such as 3.3V, 2.5V, 1.8V, and increase power supply voltage management functions, such as adding a "sleep mode, which cuts off most power supplies and unused peripheral devices when not in use to reduce energy consumption.
6. Easy to program. The application target of DSP is mainly engineering technicians and engineers. Early digital signal processors used assembly language to program, and later products can be written in C language, but they must be compiled into assembly language source programs by a C compiler and optimized to reduce computing time. Digital signal processor suppliers generally provide development tools. But DSP products of different companies are very different in software programming. So users should choose development tools they are more familiar with. These tools include software tools such as assembly language programs, linkers, simulators, debuggers, compilers, code libraries, real-time operating systems, etc.; hardware tools such as development boards, emulators, etc. Generally speaking, high-level language compilers are more suitable for floating-point processors.
7. Performance-price ratio. Cost is also an important consideration in mass production. Device packaging also has an impact on the cost of the chip. Grid array (PGA) packaging is more expensive than plastic packaging PQFP and TQEP.
8. Whether to support multiple processors. Where a particularly fast calculation speed is required, multiple processors can be used to work in parallel. At this time, the internal connection of each processor may be an important issue. Analog Devices’ ADSP-2106x provides special-purpose hardware. It has a bidirectional address bus and a data bus, and it cooperates with six bidirectional buses. It is easy to connect up to six processors into a system through a common external bus.