There are three advantages of FPGA: 1) high speed communication interface design. FPGA can be used for high-speed signal processing. Generally, if the AD sampling rate is high and the data rate is high, FPGA is needed to process the data, such as decimation and filtering the data, reducing the data rate, making the signal easy to process, transmit and store.
2) Digital signal processing. Including image processing, radar signal processing, medical signal processing, etc. The advantage is good real-time, area for speed, much faster than CPU. 3) Greater parallelism. This is mainly achieved by two technologies: concurrency and pipelining. Concurrency refers to the repeated allocation of computing resources, so that multiple modules can calculate independently at the same time.
FPGA concurrency can be performed between different logic functions, not limited to the same function. Pipeline is to segment tasks and execute them at the same time. In fact, this is similar to CPU, except that CPU is inter instruction pipeline and FPGA is inter task pipeline or we can say inter thread pipeline.
Generally speaking, the difference between FPGA and DSP is mainly the difference of data processing rate: DSP is suitable for low sampling rate, low data rate, multi conditional operation, complex multi algorithm tasks, C language programming and floating point system. It is suitable for multi conditional processes, especially complex multi algorithm tasks at low sampling rate.
FPAG is applicable to high-speed sampling rate, high data rate, block diagram programming, fixed or repeated processing tasks, and fixed use points of the system.) It is suitable for high-speed sampling frequency, especially when the task is fixed or repeated, and for trial production of prototype and system development. Now the commonly used software radio platform is to use the structure of FPGA + DSP + arm. FPGA mainly preprocesses the high-speed data, reduces the data rate, and then sends the data to DSP to realize the complex algorithm. Arm is mainly used for display control.