A real-time sonar signal processing method based on GPU

Through the GPU-based sonar real-time signal processing method, the high bandwidth and parallel computing power of the GPU are used to solve the problem of efficient and real-time signal processing in traditional DSP under low power consumption, and realizes efficient and low-power sonar signal processing.

CN119781967APending Publication Date: 2025-04-08HAIYING ENTERPRISE GROUP
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411829465.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

Traditional sonar signal processing devices rely on high power consumption and high cost DSP, making it difficult to achieve efficient and real-time signal processing under low power consumption.

Method used

The GPU-based sonar real-time signal processing method is adopted to achieve parallel processing of large-scale data streams through the high bandwidth, dynamic resource allocation and task optimization of the GPU, and improve the speed and efficiency of signal processing.

Benefits of technology

It significantly improves the efficiency of real-time sonar signal processing, reduces the power consumption and cost of the system, and realizes real-time data processing under high sampling rate conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119781967A_ABST
    Figure CN119781967A_ABST
Patent Text Reader

Abstract

The present invention relates to a sonar real-time signal processing method based on GPU. The processing method significantly improves the real-time sonar signal processing efficiency through the high bandwidth, dynamic resource allocation and task optimization of GPU, and includes the following steps: data acquisition and transmission, CPU control scheduling and memory management, GPU operation and processing, data storage and uploading; in the parallel operation process, the GPU implements the task allocation through threads, including beamforming threads, matched filter processing threads, target detection and tracking processing threads and display control interaction threads, so the system will create corresponding threads, and when there are related tasks, the CPU will start the corresponding threads and mobilize the GPU to process. The sonar real-time signal processing method of the present invention effectively breaks through the limitations of real-time and complexity based on the processing architecture of GPU, can realize real-time data processing under high sampling rate conditions, and has significant advantages in sonar real-time signal processing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of underwater acoustic signal data processing, and in particular to a GPU-based sonar real-time signal processing method. Background Art

[0002] Sonar technology is widely used in underwater target detection, positioning, and communication. Due to the large amount of sonar data and high computational complexity, it is difficult for the CPU to complete efficient and real-time signal processing with low power consumption. Traditional sonar signal processing devices mostly rely on DSP for signal processing, but their power consumption and cost are high. How to introduce more efficient and economical computing resources to improve the real-time performance and processing capabilities of sonar signal processing devices has become the current research focus. DSP has a deep accumulation in underwater acoustic signal processing. Compared with DSP, GPU has more computing cores and can process large-scale data streams in parallel. It is also very suitable for matrix operations, convolution operations, spectrum analysis and other tasks in sonar signal processing.

[0003] Therefore, it is necessary to design a GPU-based sonar real-time signal processing method to achieve a solution that can significantly improve the speed and efficiency of signal processing, meet real-time requirements, and reduce the power consumption of the system. Summary of the invention

[0004] To solve the above technical problems, the present invention provides a GPU-based sonar real-time signal processing method, which significantly improves the real-time sonar signal processing efficiency through the high bandwidth, dynamic resource allocation and task optimization of the GPU, and comprises the following steps:

[0005] Step S1: Data collection and transmission. After the external sonar signal is collected by the front end, the network port collects and receives the sonar signal data in real time and transmits it to the computer.

[0006] Step S2: CPU controls scheduling and memory management. The received sonar signal data is preprocessed by the CPU, and the allocation of GPU memory is managed to schedule the task to the GPU for execution.

[0007] Step S3: GPU computing and processing. In the parallel computing process, the GPU uses threads to implement task allocation, including beamforming threads, matched filter processing threads, target detection and tracking processing threads, and display and control interaction threads. Therefore, the system will create corresponding threads. When there are related tasks, the CPU will start the corresponding threads and mobilize the GPU to process them, and then the display and control interaction threads will execute them. That is, the GPU will process the data processed by other threads, integrate the processing results and quickly process them into visual graphics, and finally output the processed graphic data. At the same time, the display and control can be used to adjust parameters and issue instructions to enable the system to perform corresponding operations.

[0008] Step S4: Data storage and upload. After GPU parallel computing, the data will have corresponding storage methods according to different requirements. For data that needs to be temporarily stored, it will be stored in the cache area for immediate response of the system.

[0009] In one embodiment of the present invention, in step S1 and step S2, the sonar signal data needs to be pre-processed and then converted into a data format that meets the subsequent calculation requirements, that is, the data is packaged as necessary during the data transmission process, and batch transmitted in a specified format according to the calculation requirements of the CPU and GPU; wherein the data that needs to be processed by the GPU is transmitted through the PCIe bus, using a low-latency batch transmission method, and is sent to the GPU video memory frame by frame in a time frame sequence, so that each frame of data can directly enter the GPU processing flow while being received.

[0010] In one embodiment of the present invention, the processed sonar signal data is stored in the GPU video memory or the data storage module in the computer for storage, waiting for instructions to call or upload.

[0011] In one embodiment of the present invention, before the processing method is executed and after the system is started, the CPU will initialize each hardware module and perform parameter configuration.

[0012] In one embodiment of the present invention, the beamforming thread is a GPU that performs weighting, phase correction and accumulation processing on data collected by multi-channel sonar to form spatial directivity, calculates the signal strength of each angle in parallel, and finally outputs corresponding data.

[0013] In one embodiment of the present invention, the matched filter processing thread is a GPU that processes beamforming data, performs matched filter processing on the beam data using transmit signal samples, and finally outputs updated matched filter data.

[0014] In one embodiment of the present invention, the target detection and tracking thread is a GPU that processes the data after matched filtering, filters out the real target signal and removes background noise and false signals through constant false alarm detection, obtains target information such as target direction and distance, and then tracks the target through multi-target tracking technology to output the tracking trajectory of the target.

[0015] The above technical solution of the present invention has the following advantages over the prior art: compared with the CPU processing mode, the sonar real-time signal processing method described in the present invention uses a GPU that can simultaneously process multiple data streams through a parallel algorithm when processing massive data, greatly shortening the processing time; the GPU-based processing architecture effectively breaks through the limitations of real-time and complexity, and can achieve real-time data processing under high sampling rate conditions, which has significant advantages in sonar real-time signal processing. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] In order to make the contents of the present invention more clearly understood, the present invention is further described in detail below based on specific embodiments of the present invention in conjunction with the accompanying drawings.

[0017] Figure 1 It is a schematic diagram of a computer hardware platform of the sonar real-time signal processing method of the present invention;

[0018] Figure 2 It is a data processing flow chart of the GPU-based sonar real-time signal processing method of the present invention. DETAILED DESCRIPTION

[0019] like Figure 1 As shown, the GPU-based sonar real-time signal processing method provided in this embodiment is implemented based on a general computer hardware platform, wherein the multi-core parallel computing advantage of the GPU is utilized to transplant a large number of sonar data computing tasks to the GPU for parallel processing, such as FFT operations, beamforming, and matched filtering operations. Moreover, the hardware platform part can be flexibly configured according to actual needs, and the CPU, GPU, etc. are all detachable and replaceable, and are designed with multiple slots, which improves the applicability of the hardware and enables it to meet a wide range of application scenarios.

[0020] The computer consists of a data acquisition module, a data transmission module, a central processing module, a data processing module and a data output module. The central processing module is used for task allocation and system scheduling. When the device collects data, the CPU will handle simple computing tasks, and a large amount of data processing operations will be handed over to the GPU for processing. Finally, the processing results will be stored and uploaded.

[0021] like Figure 2 As shown, this embodiment provides a GPU-based sonar real-time signal processing method, which significantly improves the real-time sonar signal processing efficiency through the high bandwidth, dynamic resource allocation and task optimization of the GPU, and includes the following steps:

[0022] 1. Data collection and transmission

[0023] The sonar signal data is collected and received in real time through the network port, and the data is pre-processed and converted into a data format that meets the requirements of subsequent calculations.

[0024] During the data transmission process, the data is packaged as necessary and transmitted in batches according to the specified format based on the computing requirements of the CPU and GPU. For data that needs to be processed by the GPU, it is transmitted through the PCIe bus, using a low-latency batch transmission method, and sent to the GPU memory frame by frame in the order of time frames, so that each frame of data can directly enter the GPU processing process while being received, thereby improving the overall real-time responsiveness of the system. The processed data is stored in the GPU memory or data storage module for storage, waiting for instructions to call or upload.

[0025] (II) CPU control scheduling and memory management

[0026] It adopts a CPU+GPU structure, where the CPU is mainly responsible for system control and management tasks, while the GPU is responsible for intensive parallel computing tasks. The two are connected through a high-speed data transmission interface (such as PCIe), share memory resources, and use an efficient memory management mechanism to optimize data transmission and computing processes.

[0027] After the system starts, the CPU initializes each hardware module (including data acquisition module, GPU, data output module, etc.) and configures parameters. The CPU is responsible for preliminary preprocessing of sonar data, managing the allocation of GPU memory, and scheduling tasks to the GPU for execution.

[0028] 3. GPU computing and processing

[0029] When the GPU receives the instructions from the CPU, it starts to perform parallel computing tasks. There are multiple computing units inside the GPU. Each computing unit will read the corresponding data frame for calculation as needed. The computing tasks are processed in parallel on multiple cores inside the GPU, which greatly improves the computing speed and real-time performance. The GPU will save the processed data in the video memory, and the data flow between each processing unit can be transferred from one part of the GPU video memory to another. After the task is completed, the GPU will transfer the processed result data to the data output module, and then the GPU will release the relevant memory to provide space for new data processing and wait for the next round of tasks.

[0030] In the specific implementation process, threads are used to allocate tasks. For example, to implement beamforming, matched filter processing, target detection and tracking processing, and display and control interaction, the system will create the following threads. When there are related tasks, the CPU will start the corresponding threads and mobilize the GPU to process them. The following are the corresponding processes performed by the relevant threads and GPU:

[0031] Beamforming thread: The GPU performs weighting, phase correction, and accumulation processing on the data collected by multi-channel sonar to form spatial directivity, calculates the signal strength at each angle in parallel, and finally outputs the corresponding data.

[0032] Matched filter processing thread: The GPU processes the beamforming data, uses the transmit signal samples, performs matched filter processing on the beam data, and finally outputs the updated matched filter data.

[0033] Target detection and tracking thread: The GPU processes the data after matched filtering, filters out the real target signal and removes background noise and false signals through constant false alarm detection, obtains target information such as target direction and distance, and then tracks the target through multi-target tracking technology, outputting the target tracking trajectory.

[0034] Display and control interactive thread: The GPU processes the data processed by other threads, integrates the processing results and quickly processes them into visual graphics, and finally outputs the processed graphic data. At the same time, it can adjust parameters through the display and control to issue instructions to enable the system to perform corresponding operations.

[0035] The comparison of the processing time per frame of the above main threads on the CPU and GPU is shown in the table below. It can be seen that the GPU processing speed is significantly faster than the CPU in the processing of the same thread, which is about 10-12 times the CPU processing speed. This fully demonstrates the advantage of the device in using the GPU in data processing.

[0036] CPU and GPU thread processing speed comparison table

[0037]

[0038] (IV) Data storage and upload

[0039] The data after parallel calculation by GPU will have corresponding storage methods according to different requirements. For data that needs temporary storage, it will be stored in the cache area for immediate response of the system, such as uploading the real-time updated target location and other information to the display control for display; for data that needs long-term storage, it will be transmitted from the GPU to the main storage module such as the hard disk through the data transmission module, so as to facilitate long-term storage and subsequent query analysis.

[0040] The bandwidth optimization in the sonar real-time signal processing method described in this embodiment greatly improves the data stream transmission and throughput capabilities due to the high-bandwidth video memory and high-speed bus interface of the GPU compared to traditional DSP or CPU systems.

[0041] It also has two high-speed mechanisms. One is a high-speed video memory cache mechanism. Data can be directly loaded into the GPU video memory after collection, and efficient caching is achieved through high-bandwidth channels, avoiding access delays to multi-level memories in traditional architectures. The other is an efficient bus transmission mechanism. Data is transmitted between the GPU and main memory through high-speed interfaces such as PCIe. The transmission bandwidth can reach 16GB / s, while traditional systems are usually less than 4GB / s, which greatly reduces the time for data transmission.

[0042] After bandwidth optimization, the real-time data transmission delay is reduced from 10-20ms in the traditional architecture to 5ms. The data throughput is increased from 100MB / s in the traditional architecture to 300MB / s, and the overall performance is improved by 2-3 times.

[0043] Resource usage optimization: GPU can realize dynamic resource allocation based on task complexity, thus achieving significant optimization of hardware resource usage, which is reflected in the following aspects:

[0044] First, the CPU occupancy is optimized. Traditional DSP systems rely on the CPU to co-process complex tasks, while this device transfers the main tasks to the GPU. The CPU is only used for task scheduling, and the occupancy rate is reduced to 20%-30%.

[0045] Second, the video memory usage is optimized. For single-channel data, 10MB of data is processed every second, and only 128MB of video memory is needed for caching. For multi-channel mode, when processing 128-channel data, the video memory usage is also controlled at around 1.5GB. At the same time, a three-level cache design is adopted. The first-level cache is used to store the current task data frame, each frame size is 10-20MB, and supports multi-threaded simultaneous access; the second-level cache is the global video memory cache, which is used to store intermediate results such as beamforming diagrams to support subsequent thread calls; the third-level cache is the main memory, which is used to store the final results. After optimization, the average video memory usage rate is reduced by 30%-40%.

[0046] The third is core utilization optimization. For simple tasks, a small amount of computing resources (20%-30% of cores) is allocated to ensure energy efficiency; for complex tasks, more computing resources (50%-80% of cores) are dynamically allocated to improve processing speed. In sonar real-time signal processing, beamforming tasks use 30%-50% of the total number of GPU cores, target recognition tasks use 60%-70%, and in complex multi-tasking modes such as display control and signal processing in parallel, the overall core utilization can reach 80%-90%, greatly improving hardware utilization.

[0047] Cost and power consumption optimization: In terms of cost, although DSP is very advantageous in terms of computing speed, the cost is also very high. In the traditional DSP-based solution, four DSP boards are required, and the cost is as high as 200W. This device uses GPU for signal processing. Under the premise of ensuring computing speed, the cost is only 20W (reduced by 90%), which greatly reduces the cost.

[0048] In summary, through the high bandwidth, dynamic resource allocation and task optimization of GPU, the processing method described in this embodiment significantly improves the efficiency of real-time sonar signal processing, while greatly reducing resource occupation and power consumption. Compared with traditional DSP systems, this device has significant technical improvements in data throughput, delay control, energy efficiency and hardware utilization, providing a reliable hardware foundation for modern high-performance sonar signal processing.

[0049] Obviously, the above embodiments are merely examples for clear explanation and are not intended to limit the implementation methods. For those skilled in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the implementation methods here. The obvious changes or modifications derived from these are still within the protection scope of the invention.

Claims

1. A GPU-based sonar real-time signal processing method, which significantly improves the real-time sonar signal processing efficiency through the high bandwidth, dynamic resource allocation and task optimization of the GPU, and is characterized in that: The steps include: Step S1: Data collection and transmission. After the external sonar signal is collected by the front end, the network port collects and receives the sonar signal data in real time and transmits it to the computer. Step S2: CPU controls scheduling and memory management. The received sonar signal data is preprocessed by the CPU, and the allocation of GPU memory is managed to schedule the task to the GPU for execution. Step S3: GPU computing and processing. In the parallel computing process, the GPU uses threads to implement task allocation, including beamforming threads, matched filter processing threads, target detection and tracking processing threads, and display and control interaction threads. Therefore, the system will create corresponding threads. When there are related tasks, the CPU will start the corresponding threads and mobilize the GPU to process them, and then the display and control interaction threads will execute them. That is, the GPU will process the data processed by other threads, integrate the processing results and quickly process them into visual graphics, and finally output the processed graphic data. At the same time, the display and control can be used to adjust parameters and issue instructions to enable the system to perform corresponding operations. Step S4: Data storage and upload. After GPU parallel computing, the data will have corresponding storage methods according to different requirements. For data that needs to be temporarily stored, it will be stored in the cache area for immediate response of the system.

2. The sonar real-time signal processing method according to claim 1, characterized in that: In step S1 and step S2, the sonar signal data needs to be pre-processed and converted into a data format that meets the subsequent calculation requirements, that is, the data needs to be packaged during the data transmission process, and batch transmission is performed in a specified format according to the calculation requirements of the CPU and GPU; The data that needs to be processed by the GPU is transmitted through the PCIe bus, using a low-latency batch transmission method, and is sent to the GPU video memory frame by frame in the order of time frames, so that each frame of data can directly enter the GPU processing flow while being received.

3. The sonar real-time signal processing method according to claim 2, characterized in that: The processed sonar signal data is stored in the GPU video memory or the data storage module in the computer for storage, waiting for instructions to call or upload.

4. The sonar real-time signal processing method according to claim 1, characterized in that: Before the processing method is run and after the system is started, the CPU will initialize each hardware module and configure the parameters.

5. The sonar real-time signal processing method according to claim 1, characterized in that: The beamforming thread is a GPU that performs weighting, phase correction and accumulation processing on the data collected by multi-channel sonar to form spatial directivity, calculates the signal strength of each angle in parallel, and finally outputs the corresponding data.

6. The sonar real-time signal processing method according to claim 1, characterized in that: The matched filter processing thread is a GPU that processes beamforming data, performs matched filter processing on the beam data using the transmitted signal samples, and finally outputs updated matched filter data.

7. The sonar real-time signal processing method according to claim 1, characterized in that: The target detection and tracking thread is GPU The data after matched filtering is processed, and the real target signal is filtered out and the background noise and false signals are removed through constant false alarm detection. Obtain target information such as target direction and distance, then track the target through multi-target tracking technology and output the target's tracking trajectory.

Citation Information

Cited By

  • Parallel beam forming system and method based on GPU

    CN121613462A