DSP system design and development process
When designing the requirements specification and determining the design goals, we must solve two problems: signal processing and non-signal processing.
Signal processing problems include: analysis of input and output result characteristics, determination of DSP algorithms, and high-level language programming simulation on a general-purpose machine for performance indicators determined as required.
Non-signal processing issues include: application environment, equipment reliability indicators, equipment maintainability, power consumption, volume and weight, cost, performance and price ratio.
Algorithm Research and Simulation This is an important step in the actual system design of DSP applications. This kind of simulation is implemented in high-level language programming on a general-purpose machine. It is best to run it like a DSP processor during programming to achieve better realism.
There are usually several things to note in DSP chip selection:
(1) Accuracy: Table format (fixed or floating point), usually can be solved by fixed-point devices, try to use fixed-point devices, because it is economical, fast, low cost, low power consumption. However, when programming, pay attention to the dynamic range of the signal, and add a scaling operation that limits the dynamic range of the signal in the code.
(2) Choice of word length: Generally, floating-point DSP chips use 32-bit data words, and most fixed-point DSP chips are 16-bit data words. MOTOROLA's fixed-point chips use 24-bit data words to compromise between fixed-point and floating-point precision. The word length is an important factor affecting the cost. It affects the size of the chip, the number of pins, and the size of the memory. When designing, the minimum data word is selected as much as possible.
(3) Memory arrangement: including the size of the memory, the number of on-chip memories, the bus addressing space, and the like. The size of the on-chip memory determines the speed and cost of the chip. For example, TI's same series of DSP chips, different types of chip memory configuration and other hardware resources are different.
(4) Development tools: In the DSP system design, development tools are indispensable. A complex DSP system must be supported by powerful development tools.
Development tools include software and hardware. After the DSP algorithm is determined, the written program code is simulated by the software simulator to determine the necessary performance indicators. Hardware development tools include online hardware simulators and system development boards. The online hardware emulator is usually a JTAG peripheral scanning interface board, which can debug the designed hardware in-line. Before the hardware system is completed, the DSP software of the designed function can be run in real time on different development boards to improve the development efficiency. Even in a small number of products, the development board is directly regarded as the final product.
(5) Power consumption and power management: In some portable and portable consumer electronic products, the power supply power saving is an important issue, so DSP manufacturers are paying more and more attention to this aspect. It usually includes the selection of the supply voltage and the management of the power supply.
The supply voltage is generally lower, and the low-voltage power supply of the chip is implemented. Usually, there are 3.3V, 2.5V, 1.8V, 0.9V, etc. At the same clock frequency, their power consumption will be much lower than that of the 5V supply voltage. .
After the management of the power supply is strengthened, the power consumption is usually saved by using a sleep mode or a standby mode. For example, TI provides detailed application instructions that vary with the type of instruction and processor configuration.
(6) Cost and after-sales service of the manufacturer: Pay special attention to the production and main push products of the DSP chip, so as to implement the product at a low cost. However, low-cost chips must have fewer functions, less on-chip memory, and poorer performance, which brings certain difficulties to programming.
(7) Support for multi-processors: Recently, various types of software in applications of radio products and radars require application systems capable of handling high data rates and large computational volumes. A single processor system has been unable to handle such complex tasks, and thus multiple processors work in parallel. In this case, the connection and communication functions between the processors must be considered as the main factor. In recent years, the newly launched DSP chip series has improved this performance. Pay attention to adding a dedicated interface or DMA channel to support multi-processor DSP operation.
Introduction to DSP processor software and hardware development tools
As the functions of DSP processors continue to strengthen and the system development cycle continues to shrink, designing and debugging DSP systems increasingly rely on DSP development systems and development tools. Figure 2 shows the DSP processor development flow chart.
Although the manufacturers are different, the development and debugging tools provided are roughly the same, generally the following:
â—†C compiler (C Compiler)
In order to develop DSP systems and reduce the difficulty of writing assembler programs, general manufacturers provide high-level language design methods. The development system automatically generates the corresponding assembly language for DSP library functions, header files, and written C programs. This step is called C compilation. The C compiler is generally ANSI C compliant and can be optimized for different levels of programming to produce efficient assembly code; the C compiler also has the ability to configure, allocate, and partially link memory; and should have flexible assembly language Interface and other functions.
The C programming method is easy to learn and use, but the compiled assembler is much longer than the manual assembler, so the efficiency is generally only 20% to 40%. To overcome the inefficiency of the C compiler, the development system also provides a number of efficient library functions for DSP operations, both of which are manually assembled with a high-level language call/return interface.
Generally, in order to get efficient programming, in the system software development, the key DSP operation programs are written by hand in assembly language, and are called by C program according to the specified interface convention, which greatly improves the programming efficiency.
â—†Linker
The main program, library functions, subroutines, etc., are linked together by the object files generated by the assembler to generate an executable module to form the DSP object code.
â—†Hardware Simulator (Emulator)
An online simulation tool that uses a JTAG interface cable to connect the DSP hardware target system with a PC interface board equipped with an emulation software/emulation card, and debugs the actual hardware target system with the PC platform, which can realistically simulate the program in the actual hardware environment. Features.
â—†Assembler
Converts the assembly language original file to a machine language object file based on the common object file format.
â—†Simulator
It is a pure software simulation tool that is out of hardware. After the program code is loaded, in a window working environment, the running program of the DSP can be simulated, and the program can be single-stepped, set a breakpoint, observe and modify the register/memory, and count the execution time of a certain program. Usually after the program is written, it will be debugged on the software simulator to initially determine the operability of the program. The main shortcoming of the software simulator is that the simulation of the external interface is not perfect.
Lamp Holder,Bulb Holder,Light Holder,Lamp Socket
WENZHOU TENGCAI ELECTRIC CO.,LTD , https://www.tengcaielectric.com